@elaraai/e3-ui-cli 1.0.79 → 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/README.md
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
[](LICENSE.md)
|
|
6
6
|
[](https://nodejs.org)
|
|
7
7
|
|
|
8
|
-
**e3-ui CLI** is two things in one command. With no subcommand it is a full-screen **terminal UI** over an [e3](https://github.com/elaraai/east-workspace/tree/main/libs/e3) repository — local or remote — showing a workspace's task and dataset status, its dataflow runs (start and cancel them), every task's output as a lazily paged value tree, its logs and run history, and
|
|
8
|
+
**e3-ui CLI** is two things in one command. With no subcommand it is a full-screen **terminal UI** over an [e3](https://github.com/elaraai/east-workspace/tree/main/libs/e3) repository — local or remote — showing a workspace's task and dataset status, its dataflow runs (start and cancel them, and watch the budget they run under), every task's output as a lazily paged value tree, its logs and run history, editable inputs, and its records — their rows, through any of their indexes, and their commits. With `shot` / `shots` it renders [East UI](https://github.com/elaraai/east-workspace/tree/main/libs/east-ui) components — East functions returning a `UIComponentType` — to PNG images using headless Chromium, for automating UI/UX reviews and generating screenshots. The East→React renderer is pre-bundled into the package; the component is injected as data at runtime, so the only runtime dependency of the screenshots is the browser engine, and the terminal UI never needs one.
|
|
9
9
|
|
|
10
10
|
## Features
|
|
11
11
|
|
|
12
|
-
- **Terminal UI** (`e3-ui [repo] [workspace]`): the workspace dashboard, `/run` and `/stop` with a live event feed, task views (a paged value tree with `/find` and `/goto`,
|
|
12
|
+
- **Terminal UI** (`e3-ui [repo] [workspace]`): the workspace dashboard, `/run` and `/stop` with a live event feed and the scheduler (the cores and memory in use, units waiting for room and requeued, each task's peak memory), task views (a paged value tree with `/find` and `/goto`, stdout and stderr with tail-follow, the run history, a `ui()` task's manifest), editable inputs with a commit bar and conflict detection, records (a read-only view of their rows, through any of their indexes, and their commits), a command box with completion, vim-style keys and the mouse, remote repositories over the same credentials as `e3 auth`.
|
|
13
13
|
- **Component screenshots**: render a `.ts`/`.tsx` source (`--from-source`) or serialized `.beast2`/`.json` IR (`--from-ir`) to a PNG.
|
|
14
14
|
- **Live task screenshots**: render a deployed e3 UI task's output with real, already-computed workspace data (`--from-task`).
|
|
15
15
|
- **Self-contained**: the renderer (React + Chakra UI v3 + the full component set) is pre-bundled; no app server or build step at use time.
|
|
@@ -32,15 +32,17 @@ e3-ui ./my-repo main --task forecast # straight to a task (--input <name> fo
|
|
|
32
32
|
e3-ui https://e3.example.com/repos/demo # remote — after: e3-ui auth login https://e3.example.com
|
|
33
33
|
e3-ui https://e3.example.com # a bare origin: the repositories list
|
|
34
34
|
e3-ui --no-mouse --ascii ./my-repo # keyboard only, box-drawing off (also E3_UI_ASCII=1)
|
|
35
|
+
e3-ui -j 8 --memory 16G ./my-repo # the embedded server's budget, as for e3 dataflow run
|
|
35
36
|
```
|
|
36
37
|
|
|
37
|
-
A local repository is served by an embedded `@elaraai/e3-api-server` for the session; a remote one is reached with the token `e3-ui auth login` saved (the same device flow and `~/.e3/credentials.json` store as `e3 auth`, so either login serves both). Everything is one screen at a time — repositories, workspaces, a workspace's dashboard, a task (`1 Output · 2 Stdout · 3 Stderr · 4 Runs`, plus `5 Reads` for a `ui()` task), an input — with a **command box** along the bottom:
|
|
38
|
+
A local repository is served by an embedded `@elaraai/e3-api-server` for the session, whose runs go under the budget `-j` / `--memory` set (default: `E3_JOBS` / `E3_MEMORY`, else the machine's); a remote one is reached with the token `e3-ui auth login` saved (the same device flow and `~/.e3/credentials.json` store as `e3 auth`, so either login serves both). Everything is one screen at a time — repositories, workspaces, a workspace's dashboard, a task (`1 Output · 2 Stdout · 3 Stderr · 4 Runs`, plus `5 Reads` for a `ui()` task), an input, a record (`1 State · 2 History`) — with a **command box** along the bottom:
|
|
38
39
|
|
|
39
40
|
| Type | Effect |
|
|
40
41
|
|---|---|
|
|
41
|
-
| `/task <name>` · `/input <name>` · `/workspace <name>` · `/repo <path\|url>` | open things; plain text without `/` fuzzy-jumps to any of them |
|
|
42
|
-
| `/run [--force] [--filter <glob>]
|
|
42
|
+
| `/task <name>` · `/input <name>` · `/record <name>` · `/workspace <name>` · `/repo <path\|url>` | open things; plain text without `/` fuzzy-jumps to any of them |
|
|
43
|
+
| `/run [--force] [--filter <glob>]` · `/stop` | start / cancel the dataflow (`r` / `x` prefill them); the header pill and the execution panel follow it live, with the cores and memory the server's budget holds |
|
|
43
44
|
| `/find <key>` · `/goto <row\|N%>` · `/save [file]` | in a value tree: exact `"key"`, prefix, or struct-key fields `a\|b`; jump; write the `.beast2` bytes |
|
|
45
|
+
| `/index <name>` · `/index primary` | in a record: page through one of its indexes (`/find` then searches the index's key), or its rows again |
|
|
44
46
|
| `e` `a` `x` `t` · `⏎ APPLY` · `esc DISCARD` | in an input: edit a leaf, add, remove, tag / set; the commit bar sums the pending changes |
|
|
45
47
|
| `?` | help for the page you are on; `q` quits, `esc` goes back |
|
|
46
48
|
|
|
@@ -160,7 +162,7 @@ Dual-licensed under AGPL-3.0 and a commercial license. See [LICENSE.md](LICENSE.
|
|
|
160
162
|
- [@elaraai/e3](https://www.npmjs.com/package/@elaraai/e3): SDK for authoring e3 packages with typed tasks and pipelines
|
|
161
163
|
- [@elaraai/e3-core](https://www.npmjs.com/package/@elaraai/e3-core): Object store, dataflow orchestrator, execution state
|
|
162
164
|
- [@elaraai/e3-types](https://www.npmjs.com/package/@elaraai/e3-types): Shared type definitions for e3 packages
|
|
163
|
-
- [@elaraai/e3-cli](https://www.npmjs.com/package/@elaraai/e3-cli): `e3 repo`, `e3 package`, `e3 workspace`, `e3
|
|
165
|
+
- [@elaraai/e3-cli](https://www.npmjs.com/package/@elaraai/e3-cli): `e3 repo`, `e3 package`, `e3 workspace`, `e3 dataflow run`, `e3 watch`, `e3 task logs` commands
|
|
164
166
|
- [@elaraai/e3-api-client](https://www.npmjs.com/package/@elaraai/e3-api-client): HTTP client for remote e3 repositories
|
|
165
167
|
- [@elaraai/e3-api-server](https://www.npmjs.com/package/@elaraai/e3-api-server): REST API server for e3 repositories
|
|
166
168
|
- [@elaraai/e3-api-tests](https://www.npmjs.com/package/@elaraai/e3-api-tests): Shared API compliance test suites
|