@elaraai/e3-ui-cli 1.0.78 → 1.0.80
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.
- package/README.md +8 -6
- package/dist/app/assets/{engine-DAHqaY4g-B9nTMQVT.js → engine-Bq3Rqc8f-Bi5uj9DS.js} +1 -1
- package/dist/app/assets/{index-CIIzwdrV.js → index-Cn_whZOl.js} +106 -106
- package/dist/app/index.html +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/tui.d.ts +15 -3
- package/dist/commands/tui.d.ts.map +1 -1
- package/dist/commands/tui.js +14 -4
- package/dist/commands/tui.js.map +1 -1
- package/dist/e3-server.d.ts +6 -1
- package/dist/e3-server.d.ts.map +1 -1
- package/dist/e3-server.js +6 -1
- package/dist/e3-server.js.map +1 -1
- package/dist/load-source.d.ts +13 -11
- package/dist/load-source.d.ts.map +1 -1
- package/dist/load-source.js +9 -10
- package/dist/load-source.js.map +1 -1
- package/dist/tui/api.d.ts +15 -1
- package/dist/tui/api.d.ts.map +1 -1
- package/dist/tui/api.js +5 -1
- package/dist/tui/api.js.map +1 -1
- package/dist/tui/app.d.ts.map +1 -1
- package/dist/tui/app.js +19 -1
- package/dist/tui/app.js.map +1 -1
- package/dist/tui/controller.d.ts +3 -1
- package/dist/tui/controller.d.ts.map +1 -1
- package/dist/tui/controller.js +48 -20
- package/dist/tui/controller.js.map +1 -1
- package/dist/tui/data/dataflow.d.ts +1 -2
- package/dist/tui/data/dataflow.d.ts.map +1 -1
- package/dist/tui/data/dataflow.js +1 -3
- package/dist/tui/data/dataflow.js.map +1 -1
- package/dist/tui/data/dataset.d.ts +24 -5
- package/dist/tui/data/dataset.d.ts.map +1 -1
- package/dist/tui/data/dataset.js +100 -25
- package/dist/tui/data/dataset.js.map +1 -1
- package/dist/tui/data/feeds.d.ts +3 -0
- package/dist/tui/data/feeds.d.ts.map +1 -1
- package/dist/tui/data/feeds.js +16 -1
- package/dist/tui/data/feeds.js.map +1 -1
- package/dist/tui/data/records.d.ts +63 -0
- package/dist/tui/data/records.d.ts.map +1 -0
- package/dist/tui/data/records.js +144 -0
- package/dist/tui/data/records.js.map +1 -0
- package/dist/tui/input/commands.d.ts +14 -11
- package/dist/tui/input/commands.d.ts.map +1 -1
- package/dist/tui/input/commands.js +20 -15
- package/dist/tui/input/commands.js.map +1 -1
- package/dist/tui/input/completion.d.ts +10 -4
- package/dist/tui/input/completion.d.ts.map +1 -1
- package/dist/tui/input/completion.js +6 -0
- package/dist/tui/input/completion.js.map +1 -1
- package/dist/tui/model/catalogue.d.ts.map +1 -1
- package/dist/tui/model/catalogue.js +39 -3
- package/dist/tui/model/catalogue.js.map +1 -1
- package/dist/tui/model/help.d.ts.map +1 -1
- package/dist/tui/model/help.js +44 -4
- package/dist/tui/model/help.js.map +1 -1
- package/dist/tui/model/status.d.ts +31 -2
- package/dist/tui/model/status.d.ts.map +1 -1
- package/dist/tui/model/status.js +63 -4
- package/dist/tui/model/status.js.map +1 -1
- package/dist/tui/model/tree.d.ts +36 -1
- package/dist/tui/model/tree.d.ts.map +1 -1
- package/dist/tui/model/tree.js +58 -8
- package/dist/tui/model/tree.js.map +1 -1
- package/dist/tui/render/glyphs.d.ts +2 -0
- package/dist/tui/render/glyphs.d.ts.map +1 -1
- package/dist/tui/render/glyphs.js +2 -0
- package/dist/tui/render/glyphs.js.map +1 -1
- package/dist/tui/render/layout.d.ts +1 -1
- package/dist/tui/render/layout.d.ts.map +1 -1
- package/dist/tui/render/layout.js +36 -5
- package/dist/tui/render/layout.js.map +1 -1
- package/dist/tui/session.d.ts.map +1 -1
- package/dist/tui/session.js +7 -0
- package/dist/tui/session.js.map +1 -1
- package/dist/tui/state/actions.d.ts +64 -5
- package/dist/tui/state/actions.d.ts.map +1 -1
- package/dist/tui/state/actions.js +9 -1
- package/dist/tui/state/actions.js.map +1 -1
- package/dist/tui/state/persist.d.ts +1 -1
- package/dist/tui/state/persist.d.ts.map +1 -1
- package/dist/tui/state/reducer.d.ts.map +1 -1
- package/dist/tui/state/reducer.js +16 -2
- package/dist/tui/state/reducer.js.map +1 -1
- package/dist/tui/ui/App.js +1 -1
- package/dist/tui/ui/App.js.map +1 -1
- package/dist/tui/ui/shell/chrome.d.ts +6 -1
- package/dist/tui/ui/shell/chrome.d.ts.map +1 -1
- package/dist/tui/ui/shell/chrome.js +26 -23
- package/dist/tui/ui/shell/chrome.js.map +1 -1
- package/dist/tui/ui/views/all.d.ts +1 -0
- package/dist/tui/ui/views/all.d.ts.map +1 -1
- package/dist/tui/ui/views/all.js +1 -0
- package/dist/tui/ui/views/all.js.map +1 -1
- package/dist/tui/ui/views/dashboard.d.ts +66 -15
- package/dist/tui/ui/views/dashboard.d.ts.map +1 -1
- package/dist/tui/ui/views/dashboard.js +160 -37
- package/dist/tui/ui/views/dashboard.js.map +1 -1
- package/dist/tui/ui/views/help.js +1 -1
- package/dist/tui/ui/views/record.d.ts +38 -0
- package/dist/tui/ui/views/record.d.ts.map +1 -0
- package/dist/tui/ui/views/record.js +298 -0
- package/dist/tui/ui/views/record.js.map +1 -0
- package/dist/tui/ui/widgets/reads.d.ts +7 -7
- package/dist/tui/ui/widgets/reads.d.ts.map +1 -1
- package/dist/tui/ui/widgets/reads.js +9 -21
- package/dist/tui/ui/widgets/reads.js.map +1 -1
- package/dist/tui/ui/widgets/runs.d.ts +2 -2
- package/dist/tui/ui/widgets/runs.d.ts.map +1 -1
- package/dist/tui/ui/widgets/runs.js +3 -2
- package/dist/tui/ui/widgets/runs.js.map +1 -1
- package/dist/tui/ui/widgets/tree.d.ts +11 -6
- package/dist/tui/ui/widgets/tree.d.ts.map +1 -1
- package/dist/tui/ui/widgets/tree.js +28 -17
- package/dist/tui/ui/widgets/tree.js.map +1 -1
- package/package.json +14 -14
package/dist/tui/model/help.js
CHANGED
|
@@ -10,6 +10,7 @@ export const HELP_TABS = [
|
|
|
10
10
|
{ tab: 'dashboard', label: 'Dashboard' },
|
|
11
11
|
{ tab: 'task', label: 'Task' },
|
|
12
12
|
{ tab: 'input', label: 'Input' },
|
|
13
|
+
{ tab: 'record', label: 'Record' },
|
|
13
14
|
];
|
|
14
15
|
/**
|
|
15
16
|
* The help tab a page opens on.
|
|
@@ -24,6 +25,7 @@ export function helpTabFor(from) {
|
|
|
24
25
|
case 'dashboard': return 'dashboard';
|
|
25
26
|
case 'task': return 'task';
|
|
26
27
|
case 'input': return 'input';
|
|
28
|
+
case 'record': return 'record';
|
|
27
29
|
default: return 'everywhere';
|
|
28
30
|
}
|
|
29
31
|
}
|
|
@@ -42,6 +44,7 @@ export function helpColumns(tab) {
|
|
|
42
44
|
rows: [
|
|
43
45
|
['/task <name>', 'open a task'],
|
|
44
46
|
['/input <name>', 'open an input'],
|
|
47
|
+
['/record <name>', 'open a record'],
|
|
45
48
|
['/dataset <path>', 'open a dataset'],
|
|
46
49
|
['/workspace <name>', 'switch workspace'],
|
|
47
50
|
['/workspaces /repos', 'the lists'],
|
|
@@ -100,9 +103,8 @@ export function helpColumns(tab) {
|
|
|
100
103
|
rows: [
|
|
101
104
|
['/run [--force]', 'run the dataflow'],
|
|
102
105
|
['/run --filter <glob>', 'only matching tasks'],
|
|
103
|
-
['/run --concurrency <n>', ''],
|
|
104
106
|
['/stop', 'cancel the dataflow'],
|
|
105
|
-
['/task /input', 'open a row'],
|
|
107
|
+
['/task /input /record', 'open a row'],
|
|
106
108
|
['/logs <task> [stderr]', 'a task\'s logs'],
|
|
107
109
|
['/runs <task>', 'a task\'s runs'],
|
|
108
110
|
['/workspace <name>', 'switch workspace'],
|
|
@@ -112,14 +114,14 @@ export function helpColumns(tab) {
|
|
|
112
114
|
title: 'KEYS',
|
|
113
115
|
rows: [
|
|
114
116
|
['↑↓ j k', 'move'],
|
|
115
|
-
['⏎ →', 'open the
|
|
117
|
+
['⏎ →', 'open the row'],
|
|
116
118
|
['r', 'prefill /run'],
|
|
117
119
|
['x', 'prefill /stop'],
|
|
118
120
|
['w', 'workspaces'],
|
|
119
121
|
['R', 'refresh now'],
|
|
120
122
|
],
|
|
121
123
|
},
|
|
122
|
-
{ title: 'ROWS', rows: [['tasks', '● up-to-date ◐ waiting ◔ running'], ['', '○ ready ✗ failed'], ['inputs', '● up-to-date ◐ stale ○ unset'], ['execution', '⏎ on a failed row → logs']] },
|
|
124
|
+
{ title: 'ROWS', rows: [['tasks', '● up-to-date ◐ waiting ◔ running'], ['', '○ ready ✗ failed'], ['inputs', '● up-to-date ◐ stale ○ unset'], ['records', 'rows · indexes · last commit'], ['execution', '⏎ on a failed row → logs']] },
|
|
123
125
|
];
|
|
124
126
|
case 'task':
|
|
125
127
|
return [
|
|
@@ -205,6 +207,44 @@ export function helpColumns(tab) {
|
|
|
205
207
|
],
|
|
206
208
|
},
|
|
207
209
|
];
|
|
210
|
+
case 'record':
|
|
211
|
+
return [
|
|
212
|
+
{
|
|
213
|
+
title: 'COMMANDS',
|
|
214
|
+
rows: [
|
|
215
|
+
['/index <name>', 'page by an index'],
|
|
216
|
+
['/index primary', 'back to the rows'],
|
|
217
|
+
['/find <key>', 'a key — an index\'s own'],
|
|
218
|
+
['/goto <row> /goto N%', 'jump'],
|
|
219
|
+
['/save [file]', 'write the rows .beast2'],
|
|
220
|
+
],
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
title: 'KEYS · STATE',
|
|
224
|
+
rows: [
|
|
225
|
+
['↑↓ j k', 'move'],
|
|
226
|
+
['→ l', 'expand'],
|
|
227
|
+
['← h', 'collapse'],
|
|
228
|
+
['⏎ space', 'toggle'],
|
|
229
|
+
['gg G', 'top / bottom'],
|
|
230
|
+
['n N', 'next / prev match'],
|
|
231
|
+
['s', 'save .beast2'],
|
|
232
|
+
['1 2', 'State History'],
|
|
233
|
+
['tab ⇧tab', 'next / prev tab'],
|
|
234
|
+
],
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
title: 'KEYS · HISTORY',
|
|
238
|
+
rows: [
|
|
239
|
+
['↑↓ pgup pgdn', 'move'],
|
|
240
|
+
['gg G', 'newest / oldest read'],
|
|
241
|
+
['', ''],
|
|
242
|
+
['head', 'the newest commit'],
|
|
243
|
+
['$deploy $compact …', 'e3\'s own commits'],
|
|
244
|
+
['', 'older pages read as you go'],
|
|
245
|
+
],
|
|
246
|
+
},
|
|
247
|
+
];
|
|
208
248
|
}
|
|
209
249
|
}
|
|
210
250
|
//# sourceMappingURL=help.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/tui/model/help.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH,4CAA4C;AAC5C,MAAM,CAAC,MAAM,SAAS,GAA+C;IACjE,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;IAC1C,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;IAChC,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;IAC1C,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;IACxC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;IAC9B,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/tui/model/help.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*
|
|
11
11
|
* @packageDocumentation
|
|
12
12
|
*/
|
|
13
|
-
import type { DataflowExecutionState, ExecutionHistoryStatus, ExecutionStatus, TaskStatus, DataflowEvent } from '@elaraai/e3-api-client';
|
|
13
|
+
import type { DataflowBudget, DataflowExecutionState, ExecutionHistoryStatus, ExecutionStatus, TaskStatus, DataflowEvent, SplitProgress, StageUnit, UnitWait } from '@elaraai/e3-api-client';
|
|
14
14
|
import type { Glyphs } from '../render/glyphs.js';
|
|
15
15
|
import type { Tone } from '../render/theme.js';
|
|
16
16
|
import type { ConnectionState } from '../state/poll.js';
|
|
@@ -72,10 +72,39 @@ export declare function connectionCell(connection: ConnectionState, g: Glyphs):
|
|
|
72
72
|
* @returns The duration, or `null` while it is still running
|
|
73
73
|
*/
|
|
74
74
|
export declare function executionDuration(state: DataflowExecutionState): number | null;
|
|
75
|
+
/**
|
|
76
|
+
* A unit of a split task, as the feed names it: `piece 5 of 8`, or
|
|
77
|
+
* `merge 3 of 4 · level 1 of 2`.
|
|
78
|
+
*
|
|
79
|
+
* @param unit - The unit, by its place in its task
|
|
80
|
+
* @param sep - The separator
|
|
81
|
+
* @returns The text
|
|
82
|
+
*/
|
|
83
|
+
export declare function unitPlace(unit: StageUnit, sep?: string): string;
|
|
84
|
+
/**
|
|
85
|
+
* How far a split task has got through its stage, as its start row names it:
|
|
86
|
+
* `3 of 8 pieces`, or `level 1 of 2 · 2 of 4 merges`.
|
|
87
|
+
*
|
|
88
|
+
* @param split - The task's progress
|
|
89
|
+
* @param sep - The separator
|
|
90
|
+
* @returns The text
|
|
91
|
+
*/
|
|
92
|
+
export declare function splitPlace(split: SplitProgress, sep?: string): string;
|
|
93
|
+
/**
|
|
94
|
+
* A task or unit waiting for room in the server's budget, as the feed shows
|
|
95
|
+
* it: what it waits to reserve, and what the budget has free of it.
|
|
96
|
+
*
|
|
97
|
+
* @param wait - The wait
|
|
98
|
+
* @param budget - The server's budget, when it has one
|
|
99
|
+
* @param g - The glyph set
|
|
100
|
+
* @returns The cell
|
|
101
|
+
*/
|
|
102
|
+
export declare function waitCell(wait: UnitWait, budget: DataflowBudget | null, g: Glyphs): StatusCell;
|
|
75
103
|
/**
|
|
76
104
|
* One dataflow event as the feed shows it — the cloud UI's
|
|
77
105
|
* `formatEventMessage` cases: the dot + word, the task, and the detail
|
|
78
|
-
* (duration, exit code, message, reason)
|
|
106
|
+
* (duration and peak, exit code, message, reason); and a unit requeued,
|
|
107
|
+
* with why and the most it was measured using.
|
|
79
108
|
*
|
|
80
109
|
* @param event - The event
|
|
81
110
|
* @param g - The glyph set
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/tui/model/status.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/tui/model/status.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AAEH,OAAO,KAAK,EACR,cAAc,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EACjJ,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,yEAAyE;AACzE,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,6CAA6C;AAC7C,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,SAAQ,GAAG,MAAM,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAiBxE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAMjG;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAO1F;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAS/F;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAOxF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,GAAG,IAAI,CAO9E;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,SAAM,GAAG,MAAM,CAG5D;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,SAAM,GAAG,MAAM,CAGlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAU7F;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAwB3G"}
|
package/dist/tui/model/status.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
3
|
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
4
|
*/
|
|
5
|
-
import { formatDuration } from '../render/text.js';
|
|
5
|
+
import { formatDuration, formatSize } from '../render/text.js';
|
|
6
6
|
/** `● up-to-date`, `✗ failed · exit 2`, … */
|
|
7
7
|
export function statusText(cell, sep = ' · ') {
|
|
8
8
|
return `${cell.glyph} ${cell.word}${cell.detail !== '' ? `${sep}${cell.detail}` : ''}`;
|
|
@@ -74,6 +74,8 @@ export function historyStatusCell(status, g) {
|
|
|
74
74
|
case 'success': return { glyph: g.dot, tone: 'pos', word: 'success', detail: '' };
|
|
75
75
|
case 'failed': return { glyph: g.cross, tone: 'neg', word: 'failed', detail: '' };
|
|
76
76
|
case 'error': return { glyph: g.half, tone: 'warn', word: 'error', detail: '' };
|
|
77
|
+
case 'cancelled': return { glyph: g.square, tone: 'warn', word: 'cancelled', detail: '' };
|
|
78
|
+
case 'interrupted': return { glyph: g.half, tone: 'warn', word: 'interrupted', detail: '' };
|
|
77
79
|
}
|
|
78
80
|
}
|
|
79
81
|
/**
|
|
@@ -109,10 +111,58 @@ export function executionDuration(state) {
|
|
|
109
111
|
}
|
|
110
112
|
return state.summary.type === 'some' ? state.summary.value.duration : null;
|
|
111
113
|
}
|
|
114
|
+
/**
|
|
115
|
+
* A unit of a split task, as the feed names it: `piece 5 of 8`, or
|
|
116
|
+
* `merge 3 of 4 · level 1 of 2`.
|
|
117
|
+
*
|
|
118
|
+
* @param unit - The unit, by its place in its task
|
|
119
|
+
* @param sep - The separator
|
|
120
|
+
* @returns The text
|
|
121
|
+
*/
|
|
122
|
+
export function unitPlace(unit, sep = '·') {
|
|
123
|
+
const of = `${unit.index + 1n} of ${unit.units}`;
|
|
124
|
+
return unit.merge.type === 'none' ? `piece ${of}` : `merge ${of} ${sep} level ${unit.merge.value.level} of ${unit.merge.value.levels}`;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* How far a split task has got through its stage, as its start row names it:
|
|
128
|
+
* `3 of 8 pieces`, or `level 1 of 2 · 2 of 4 merges`.
|
|
129
|
+
*
|
|
130
|
+
* @param split - The task's progress
|
|
131
|
+
* @param sep - The separator
|
|
132
|
+
* @returns The text
|
|
133
|
+
*/
|
|
134
|
+
export function splitPlace(split, sep = '·') {
|
|
135
|
+
const of = `${split.done} of ${split.units}`;
|
|
136
|
+
return split.merge.type === 'none' ? `${of} pieces` : `level ${split.merge.value.level} of ${split.merge.value.levels} ${sep} ${of} merges`;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* A task or unit waiting for room in the server's budget, as the feed shows
|
|
140
|
+
* it: what it waits to reserve, and what the budget has free of it.
|
|
141
|
+
*
|
|
142
|
+
* @param wait - The wait
|
|
143
|
+
* @param budget - The server's budget, when it has one
|
|
144
|
+
* @param g - The glyph set
|
|
145
|
+
* @returns The cell
|
|
146
|
+
*/
|
|
147
|
+
export function waitCell(wait, budget, g) {
|
|
148
|
+
let detail;
|
|
149
|
+
if (wait.needs > 0n) {
|
|
150
|
+
detail = `needs ${formatSize(Number(wait.needs))}`;
|
|
151
|
+
if (budget !== null)
|
|
152
|
+
detail += ` ${g.sep} ${formatSize(Math.max(0, Number(budget.memory - budget.memoryInUse)))} free`;
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
detail = 'needs a core';
|
|
156
|
+
if (budget !== null)
|
|
157
|
+
detail += ` ${g.sep} ${budget.coresInUse} of ${budget.cores} in use`;
|
|
158
|
+
}
|
|
159
|
+
return { glyph: g.half, tone: 'warn', word: 'waiting', detail };
|
|
160
|
+
}
|
|
112
161
|
/**
|
|
113
162
|
* One dataflow event as the feed shows it — the cloud UI's
|
|
114
163
|
* `formatEventMessage` cases: the dot + word, the task, and the detail
|
|
115
|
-
* (duration, exit code, message, reason)
|
|
164
|
+
* (duration and peak, exit code, message, reason); and a unit requeued,
|
|
165
|
+
* with why and the most it was measured using.
|
|
116
166
|
*
|
|
117
167
|
* @param event - The event
|
|
118
168
|
* @param g - The glyph set
|
|
@@ -122,8 +172,10 @@ export function eventCell(event, g) {
|
|
|
122
172
|
switch (event.type) {
|
|
123
173
|
case 'start':
|
|
124
174
|
return { glyph: g.quarter, tone: 'info', word: 'start', detail: '', task: event.value.task, timestamp: event.value.timestamp };
|
|
125
|
-
case 'complete':
|
|
126
|
-
|
|
175
|
+
case 'complete': {
|
|
176
|
+
const peak = event.value.peakBytes.type === 'some' ? ` ${g.sep} peak ${formatSize(Number(event.value.peakBytes.value))}` : '';
|
|
177
|
+
return { glyph: g.dot, tone: 'pos', word: 'complete', detail: `${formatDuration(event.value.duration)}${peak}`, task: event.value.task, timestamp: event.value.timestamp };
|
|
178
|
+
}
|
|
127
179
|
case 'cached':
|
|
128
180
|
return { glyph: g.dot, tone: 'pos', word: 'cached', detail: '', task: event.value.task, timestamp: event.value.timestamp };
|
|
129
181
|
case 'failed':
|
|
@@ -132,6 +184,13 @@ export function eventCell(event, g) {
|
|
|
132
184
|
return { glyph: g.cross, tone: 'neg', word: 'error', detail: event.value.message, task: event.value.task, timestamp: event.value.timestamp };
|
|
133
185
|
case 'input_unavailable':
|
|
134
186
|
return { glyph: g.half, tone: 'warn', word: 'waiting', detail: event.value.reason, task: event.value.task, timestamp: event.value.timestamp };
|
|
187
|
+
case 'requeued': {
|
|
188
|
+
const peak = formatSize(Number(event.value.peak));
|
|
189
|
+
const detail = event.value.reason.type === 'budget' ? `over budget at ${peak}`
|
|
190
|
+
: event.value.reason.type === 'machine' ? `machine low at ${peak}`
|
|
191
|
+
: `outgrew its cap of ${peak}`;
|
|
192
|
+
return { glyph: g.requeue, tone: 'warn', word: 'requeued', detail, task: event.value.task, timestamp: event.value.timestamp };
|
|
193
|
+
}
|
|
135
194
|
}
|
|
136
195
|
}
|
|
137
196
|
//# sourceMappingURL=status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/tui/model/status.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/tui/model/status.ts"],"names":[],"mappings":"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"}
|
package/dist/tui/model/tree.d.ts
CHANGED
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
* global root row plus an offset into its subtree and re-applied after
|
|
13
13
|
* every page change. The model is memoized on what the flatten reads, so
|
|
14
14
|
* a keypress that only moves the selection never re-flattens the value
|
|
15
|
-
* ({@link treeModel}).
|
|
15
|
+
* ({@link treeModel}). A collection of wide rows starts with its rows
|
|
16
|
+
* collapsed ({@link defaultOpenDepth}).
|
|
16
17
|
*
|
|
17
18
|
* @packageDocumentation
|
|
18
19
|
*/
|
|
@@ -37,6 +38,40 @@ export declare function keyTypeOf(type: EastTypeValue): EastTypeValue | null;
|
|
|
37
38
|
* @returns The keys, or null for a non-keyed root
|
|
38
39
|
*/
|
|
39
40
|
export declare function collectionKeys(type: EastTypeValue, decoded: unknown): unknown[] | null;
|
|
41
|
+
/** Fields a collection's rows may have and still open by default: a wider
|
|
42
|
+
* row is one line until it is opened, so a screen of 150-field rows shows
|
|
43
|
+
* a screen of rows, not the first row's fields. */
|
|
44
|
+
export declare const WIDE_ROW_FIELDS = 12;
|
|
45
|
+
/**
|
|
46
|
+
* The depth a tree opens to before anything is expanded or collapsed: the
|
|
47
|
+
* row model's default, except for a collection of wide rows, which starts
|
|
48
|
+
* collapsed — rows that are structs of more than {@link WIDE_ROW_FIELDS}
|
|
49
|
+
* fields, or collections, whose elements have no bound.
|
|
50
|
+
*
|
|
51
|
+
* @param type - The dataset's root type
|
|
52
|
+
* @returns The open depth
|
|
53
|
+
*/
|
|
54
|
+
export declare function defaultOpenDepth(type: EastTypeValue): number;
|
|
55
|
+
/**
|
|
56
|
+
* The dataset source a record view pages: the record's rows at
|
|
57
|
+
* `.records.<name>`, or one of its indexes at `.records.<name>#<index>` —
|
|
58
|
+
* a key no dataset path can take, since a path's segments are identifiers.
|
|
59
|
+
*
|
|
60
|
+
* @param name - The record
|
|
61
|
+
* @param index - The index, or null for the rows
|
|
62
|
+
* @returns The source's key
|
|
63
|
+
*/
|
|
64
|
+
export declare function recordSource(name: string, index: string | null): string;
|
|
65
|
+
/**
|
|
66
|
+
* A dataset source's dataset path and the index it reads through.
|
|
67
|
+
*
|
|
68
|
+
* @param source - The source's key (a dataset path, or {@link recordSource}'s)
|
|
69
|
+
* @returns The path and the index (null for the dataset itself)
|
|
70
|
+
*/
|
|
71
|
+
export declare function splitSource(source: string): {
|
|
72
|
+
path: string;
|
|
73
|
+
index: string | null;
|
|
74
|
+
};
|
|
40
75
|
/** The dataset a view shows, if any. */
|
|
41
76
|
export declare function viewDataset(state: TuiState): {
|
|
42
77
|
ws: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../src/tui/model/tree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../src/tui/model/tree.ts"],"names":[],"mappings":"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"}
|
package/dist/tui/model/tree.js
CHANGED
|
@@ -35,6 +35,51 @@ export function collectionKeys(type, decoded) {
|
|
|
35
35
|
return [...decoded.values()];
|
|
36
36
|
return null;
|
|
37
37
|
}
|
|
38
|
+
/** Fields a collection's rows may have and still open by default: a wider
|
|
39
|
+
* row is one line until it is opened, so a screen of 150-field rows shows
|
|
40
|
+
* a screen of rows, not the first row's fields. */
|
|
41
|
+
export const WIDE_ROW_FIELDS = 12;
|
|
42
|
+
/**
|
|
43
|
+
* The depth a tree opens to before anything is expanded or collapsed: the
|
|
44
|
+
* row model's default, except for a collection of wide rows, which starts
|
|
45
|
+
* collapsed — rows that are structs of more than {@link WIDE_ROW_FIELDS}
|
|
46
|
+
* fields, or collections, whose elements have no bound.
|
|
47
|
+
*
|
|
48
|
+
* @param type - The dataset's root type
|
|
49
|
+
* @returns The open depth
|
|
50
|
+
*/
|
|
51
|
+
export function defaultOpenDepth(type) {
|
|
52
|
+
const row = type.type === 'Array' || type.type === 'Set' ? type.value
|
|
53
|
+
: type.type === 'Dict' ? type.value.value
|
|
54
|
+
: null;
|
|
55
|
+
if (row === null)
|
|
56
|
+
return DEFAULT_OPEN_DEPTH;
|
|
57
|
+
if (row.type === 'Struct')
|
|
58
|
+
return row.value.length > WIDE_ROW_FIELDS ? 0 : DEFAULT_OPEN_DEPTH;
|
|
59
|
+
return isCollectionType(row) ? 0 : DEFAULT_OPEN_DEPTH;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* The dataset source a record view pages: the record's rows at
|
|
63
|
+
* `.records.<name>`, or one of its indexes at `.records.<name>#<index>` —
|
|
64
|
+
* a key no dataset path can take, since a path's segments are identifiers.
|
|
65
|
+
*
|
|
66
|
+
* @param name - The record
|
|
67
|
+
* @param index - The index, or null for the rows
|
|
68
|
+
* @returns The source's key
|
|
69
|
+
*/
|
|
70
|
+
export function recordSource(name, index) {
|
|
71
|
+
return index === null ? `.records.${name}` : `.records.${name}#${index}`;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* A dataset source's dataset path and the index it reads through.
|
|
75
|
+
*
|
|
76
|
+
* @param source - The source's key (a dataset path, or {@link recordSource}'s)
|
|
77
|
+
* @returns The path and the index (null for the dataset itself)
|
|
78
|
+
*/
|
|
79
|
+
export function splitSource(source) {
|
|
80
|
+
const at = source.indexOf('#');
|
|
81
|
+
return at === -1 ? { path: source, index: null } : { path: source.slice(0, at), index: source.slice(at + 1) };
|
|
82
|
+
}
|
|
38
83
|
/** The dataset a view shows, if any. */
|
|
39
84
|
export function viewDataset(state) {
|
|
40
85
|
const v = state.view;
|
|
@@ -42,13 +87,15 @@ export function viewDataset(state) {
|
|
|
42
87
|
return { ws: v.ws, path: `.tasks.${v.task}.output`, editable: false };
|
|
43
88
|
if (v.kind === 'input')
|
|
44
89
|
return { ws: v.ws, path: `.inputs.${v.name}`, editable: true };
|
|
90
|
+
if (v.kind === 'record' && v.tab === 'state')
|
|
91
|
+
return { ws: v.ws, path: recordSource(v.name, v.index), editable: false };
|
|
45
92
|
return null;
|
|
46
93
|
}
|
|
47
94
|
let memo = null;
|
|
48
95
|
let builds = 0;
|
|
49
96
|
function sameKey(a, b) {
|
|
50
97
|
return a.type === b.type && a.kind === b.kind && a.root === b.root && a.pages === b.pages && a.totalRows === b.totalRows
|
|
51
|
-
&& a.open === b.open && a.baseDepth === b.baseDepth && a.editable === b.editable;
|
|
98
|
+
&& a.open === b.open && a.baseDepth === b.baseDepth && a.editable === b.editable && a.index === b.index;
|
|
52
99
|
}
|
|
53
100
|
/**
|
|
54
101
|
* How many times the tree model has been flattened — the memo's misses.
|
|
@@ -60,10 +107,12 @@ function sameKey(a, b) {
|
|
|
60
107
|
export function treeModelBuilds() {
|
|
61
108
|
return builds;
|
|
62
109
|
}
|
|
63
|
-
/** Flattens the content into a model (the memo's miss path).
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
110
|
+
/** Flattens the content into a model (the memo's miss path). An index's
|
|
111
|
+
* entries start one line each, their summaries naming the row and what the
|
|
112
|
+
* index projects, and `/find` takes the index's key. */
|
|
113
|
+
function buildTreeModel(type, mode, tree, editable, index) {
|
|
114
|
+
const openDepth = tree.baseDepth ?? (index !== undefined ? 0 : defaultOpenDepth(type));
|
|
115
|
+
const keyType = index?.keyType ?? keyTypeOf(type);
|
|
67
116
|
if (mode.kind === 'inline') {
|
|
68
117
|
const rows = flattenRows(mode.root, tree.open, openDepth, editable, editable);
|
|
69
118
|
const roots = rows.filter(r => r.depth === 0).length;
|
|
@@ -125,11 +174,12 @@ export function treeModel(data, tree, editable) {
|
|
|
125
174
|
open: tree.open,
|
|
126
175
|
baseDepth: tree.baseDepth,
|
|
127
176
|
editable,
|
|
177
|
+
index: data.index?.name,
|
|
128
178
|
};
|
|
129
179
|
if (memo !== null && sameKey(memo.key, key))
|
|
130
180
|
return memo.model;
|
|
131
181
|
builds += 1;
|
|
132
|
-
const model = buildTreeModel(data.type, mode, tree, editable);
|
|
182
|
+
const model = buildTreeModel(data.type, mode, tree, editable, data.index);
|
|
133
183
|
memo = { key, model };
|
|
134
184
|
return model;
|
|
135
185
|
}
|
|
@@ -145,7 +195,7 @@ export function treeModel(data, tree, editable) {
|
|
|
145
195
|
export function captureAnchor(state, ws, path) {
|
|
146
196
|
const shown = viewDataset(state);
|
|
147
197
|
const v = state.view;
|
|
148
|
-
if (shown === null || shown.ws !== ws || shown.path !== path || (v.kind !== 'task' && v.kind !== 'input'))
|
|
198
|
+
if (shown === null || shown.ws !== ws || shown.path !== path || (v.kind !== 'task' && v.kind !== 'input' && v.kind !== 'record'))
|
|
149
199
|
return null;
|
|
150
200
|
const data = state.data.dataset[ws]?.[path];
|
|
151
201
|
if (data?.mode.kind !== 'paged')
|
|
@@ -183,7 +233,7 @@ export function captureAnchor(state, ws, path) {
|
|
|
183
233
|
export function applyAnchor(state, anchor) {
|
|
184
234
|
const shown = viewDataset(state);
|
|
185
235
|
const v = state.view;
|
|
186
|
-
if (shown === null || shown.ws !== anchor.ws || shown.path !== anchor.path || (v.kind !== 'task' && v.kind !== 'input'))
|
|
236
|
+
if (shown === null || shown.ws !== anchor.ws || shown.path !== anchor.path || (v.kind !== 'task' && v.kind !== 'input' && v.kind !== 'record'))
|
|
187
237
|
return null;
|
|
188
238
|
const data = state.data.dataset[anchor.ws]?.[anchor.path];
|
|
189
239
|
if (data?.mode.kind !== 'paged')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/tui/model/tree.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/tui/model/tree.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
* @property quarter - In progress / running (`◔`)
|
|
22
22
|
* @property empty - Ready / unset / never (`○`)
|
|
23
23
|
* @property cross - Failed / error / offline (`✗`)
|
|
24
|
+
* @property requeue - A unit stopped and run again (`⟲`)
|
|
24
25
|
* @property diamond - Dirty / pending edits (`◆`)
|
|
25
26
|
* @property sel - The selection bar (`▌`)
|
|
26
27
|
* @property tabL - The active tab's left bracket (`▌`)
|
|
@@ -62,6 +63,7 @@ export interface Glyphs {
|
|
|
62
63
|
quarter: string;
|
|
63
64
|
empty: string;
|
|
64
65
|
cross: string;
|
|
66
|
+
requeue: string;
|
|
65
67
|
diamond: string;
|
|
66
68
|
sel: string;
|
|
67
69
|
tabL: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glyphs.d.ts","sourceRoot":"","sources":["../../../src/tui/render/glyphs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;GAMG;AAEH
|
|
1
|
+
{"version":3,"file":"glyphs.d.ts","sourceRoot":"","sources":["../../../src/tui/render/glyphs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,WAAW,MAAM;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,kDAAkD;AAClD,eAAO,MAAM,OAAO,EAAE,MAwCrB,CAAC;AAEF,yFAAyF;AACzF,eAAO,MAAM,KAAK,EAAE,MAwCnB,CAAC;AAEF,0CAA0C;AAC1C,MAAM,WAAW,cAAc;IAC3B,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,+EAA+E;IAC/E,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,cAAc,GAAG,MAAM,CAM9D"}
|
|
@@ -13,6 +13,7 @@ export const UNICODE = {
|
|
|
13
13
|
quarter: '◔',
|
|
14
14
|
empty: '○',
|
|
15
15
|
cross: '✗',
|
|
16
|
+
requeue: '⟲',
|
|
16
17
|
diamond: '◆',
|
|
17
18
|
sel: '▌',
|
|
18
19
|
tabL: '▌',
|
|
@@ -54,6 +55,7 @@ export const ASCII = {
|
|
|
54
55
|
quarter: 'o',
|
|
55
56
|
empty: '.',
|
|
56
57
|
cross: 'x',
|
|
58
|
+
requeue: '~',
|
|
57
59
|
diamond: '+',
|
|
58
60
|
sel: '>',
|
|
59
61
|
tabL: '[',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glyphs.js","sourceRoot":"","sources":["../../../src/tui/render/glyphs.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"glyphs.js","sourceRoot":"","sources":["../../../src/tui/render/glyphs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgGH,kDAAkD;AAClD,MAAM,CAAC,MAAM,OAAO,GAAW;IAC3B,QAAQ,EAAE,GAAG;IACb,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,GAAG;IACZ,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,GAAG;IACT,QAAQ,EAAE,GAAG;IACb,KAAK,EAAE,GAAG;IACV,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAC3D,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,GAAG,EAAE,GAAG;IACR,KAAK,EAAE,GAAG;IACV,EAAE,EAAE,GAAG;IACP,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,KAAK,EAAE,GAAG;IACV,SAAS,EAAE,GAAG;IACd,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAC1B,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,GAAG;CACd,CAAC;AAEF,yFAAyF;AACzF,MAAM,CAAC,MAAM,KAAK,GAAW;IACzB,QAAQ,EAAE,GAAG;IACb,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,GAAG;IACZ,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,GAAG;IACT,QAAQ,EAAE,GAAG;IACb,KAAK,EAAE,GAAG;IACV,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC;IAC9B,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,GAAG,EAAE,GAAG;IACR,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,MAAM;IACjB,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAC1B,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,GAAG;CACd,CAAC;AAUF;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,GAAsB;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IAC/F,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC9E,OAAO,OAAO,KAAK,MAAM,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,SAAyB;IAClD,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACvD,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACpD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/C,OAAO,OAAO,CAAC;AACnB,CAAC"}
|
|
@@ -100,7 +100,7 @@ export interface ColumnSpec {
|
|
|
100
100
|
grow?: number | undefined;
|
|
101
101
|
}
|
|
102
102
|
/** The tables with a per-breakpoint column plan. */
|
|
103
|
-
export type TableKind = 'tasks' | 'inputs' | 'workspaces' | 'repos' | 'runs' | 'completion' | 'jump';
|
|
103
|
+
export type TableKind = 'tasks' | 'inputs' | 'records' | 'workspaces' | 'repos' | 'runs' | 'history' | 'completion' | 'jump';
|
|
104
104
|
/**
|
|
105
105
|
* The column plan of a table at a width class. Widths are the design's
|
|
106
106
|
* (120 columns); the last column takes the remaining width.
|