@g3nomaly/mods 0.1.6 → 0.1.7
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 +3 -1
- package/dist/cli/commands/add.d.ts +2 -2
- package/dist/cli/commands/add.d.ts.map +1 -1
- package/dist/cli/commands/add.js +5 -2
- package/dist/cli/commands/add.js.map +1 -1
- package/dist/cli/commands/remove.d.ts.map +1 -1
- package/dist/cli/commands/remove.js +5 -1
- package/dist/cli/commands/remove.js.map +1 -1
- package/dist/cli/commands/update.d.ts +2 -2
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +4 -2
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/views.d.ts +9 -0
- package/dist/cli/views.d.ts.map +1 -0
- package/dist/cli/views.js +18 -0
- package/dist/cli/views.js.map +1 -0
- package/dist/relay/protocol.d.ts +8 -0
- package/dist/relay/protocol.d.ts.map +1 -1
- package/dist/relay/protocol.js +14 -1
- package/dist/relay/protocol.js.map +1 -1
- package/dist/relay/relay.js +2 -2
- package/dist/relay/relay.js.map +1 -1
- package/dist/viewer/index.d.ts +2 -0
- package/dist/viewer/index.d.ts.map +1 -1
- package/dist/viewer/index.js +1 -0
- package/dist/viewer/index.js.map +1 -1
- package/dist/viewer/views.d.ts +35 -0
- package/dist/viewer/views.d.ts.map +1 -0
- package/dist/viewer/views.js +46 -0
- package/dist/viewer/views.js.map +1 -0
- package/dist/vscode/g3n-mods-viewer.vsix +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ To install into one project instead, leave out `--user` and run the commands fro
|
|
|
29
29
|
| Mod | What it does | Command |
|
|
30
30
|
|---|---|---|
|
|
31
31
|
| `context-bar` | One bar of context-window use split by source, with the total and where compaction starts | `/context-bar` |
|
|
32
|
-
| `tool-timeline` |
|
|
32
|
+
| `tool-timeline` | The last ten tool calls, one line each, with their durations, in a pane that keeps one height. Click a call to see it in full in the box under them. A denied call is struck through, next to the call that replaced it | `/tool-timeline` |
|
|
33
33
|
| `delete-guard` | Off by default; switched on, it holds `rm -rf` and other permanent deletes on a card until you press Delete or Cancel | `/delete-guard on \| off` |
|
|
34
34
|
| `agents-panel` | The agents in `.claude/agents` with their model and a run button | `/agents-panel` |
|
|
35
35
|
| `focus-mode` | A timed focus block in which Claude asks you nothing: no questions, no permission prompts | `/focus-mode [minutes] \| end` |
|
|
@@ -55,6 +55,8 @@ The viewer shows every pane that is open in the session it is showing. Pick anot
|
|
|
55
55
|
|
|
56
56
|
If another tool already set a process wrapper, `init` leaves it and says so. Run `init --replace-wrapper` to use the relay instead. If the `code` command is not found, `init` prints the path of the `.vsix` to install by hand.
|
|
57
57
|
|
|
58
|
+
A mod can also draw itself in the viewer with its own HTML and CSS: a `view/view.ts` and `view/view.css` beside its hooks, which `add` and `update` bundle into `view/view.js`. The viewer mounts the view in a shadow root and hands it the data the mod's hook draws for the `vscode` surface. See *Drawing a mod with HTML and CSS* in the `@g3nomaly/g3n-mods` README.
|
|
59
|
+
|
|
58
60
|
`hide-personal-data` and `you-should-know` change how replies are drawn. The extension draws replies itself, so these two only work in the terminal.
|
|
59
61
|
|
|
60
62
|
## Keep mods up to date
|
|
@@ -14,8 +14,8 @@ export interface AddOptions extends InstallOptions {
|
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
16
|
* @brief Installs mods, or every mod of a source, from the registered sources into
|
|
17
|
-
* the scope's `.claude/skills/`, records them in `mods.json`,
|
|
18
|
-
* viewer and has the running sessions that load the scope reload their
|
|
17
|
+
* the scope's `.claude/skills/`, records them in `mods.json`, bundles their
|
|
18
|
+
* views, sets up the viewer and has the running sessions that load the scope reload their
|
|
19
19
|
* plugins. A name more than one source offers is picked as `<name>@<source>`;
|
|
20
20
|
* with no names the user picks from what the sources provide, unless `all`
|
|
21
21
|
* takes every mod. A mod already installed is written again only when its
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAKrD;;;;;;GAMG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD,KAAK,CAAC,EAAG,KAAK,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAK,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,UAAe,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAejH"}
|
package/dist/cli/commands/add.js
CHANGED
|
@@ -4,10 +4,11 @@ import { offers } from "@g3nomaly/core/installer";
|
|
|
4
4
|
import { MOD_CONTEXT, installedMods, openModProject, openModRegistry } from "../project";
|
|
5
5
|
import { reloadRunningSessions } from "../reload";
|
|
6
6
|
import { setUpViewer } from "../viewer";
|
|
7
|
+
import { buildInstalledViews } from "../views";
|
|
7
8
|
/**
|
|
8
9
|
* @brief Installs mods, or every mod of a source, from the registered sources into
|
|
9
|
-
* the scope's `.claude/skills/`, records them in `mods.json`,
|
|
10
|
-
* viewer and has the running sessions that load the scope reload their
|
|
10
|
+
* the scope's `.claude/skills/`, records them in `mods.json`, bundles their
|
|
11
|
+
* views, sets up the viewer and has the running sessions that load the scope reload their
|
|
11
12
|
* plugins. A name more than one source offers is picked as `<name>@<source>`;
|
|
12
13
|
* with no names the user picks from what the sources provide, unless `all`
|
|
13
14
|
* takes every mod. A mod already installed is written again only when its
|
|
@@ -27,6 +28,8 @@ export async function addCommand(names, options = {}, deps = {}) {
|
|
|
27
28
|
finally {
|
|
28
29
|
registry.dispose();
|
|
29
30
|
}
|
|
31
|
+
if (options.dryRun !== true)
|
|
32
|
+
await buildInstalledViews(project);
|
|
30
33
|
if (Object.keys(installedMods(project)).length > 0) {
|
|
31
34
|
await setUpViewer(project);
|
|
32
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAe/C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAe,EAAE,OAAO,GAAe,EAAE,EAAE,IAAI,GAAgB,EAAE;IAChG,MAAM,OAAO,GAAI,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,EAAE,IAAI,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3H,MAAM,cAAc,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACjF,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;QAAE,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAChE,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;QAAE,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AAGzE,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AAGzE,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAIrD;;;;GAIG;AACH,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAuBD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,aAAkB,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvH"}
|
|
@@ -5,10 +5,12 @@ import { removeFromTargets } from "@g3nomaly/core/cli";
|
|
|
5
5
|
import { createInstallerIO, pruneEmptyDirs } from "@g3nomaly/core/installer";
|
|
6
6
|
import { MOD_CONTEXT, openModProject } from "../project";
|
|
7
7
|
import { reloadRunningSessions } from "../reload";
|
|
8
|
+
import { removeViewBundle } from "../../viewer";
|
|
8
9
|
/** Folder Claude Code writes the mod API's declarations into when it loads a mod; never recorded in `mods.json`. */
|
|
9
10
|
const ENGINE_TYPES_DIR = path.join(".claude-plugin", "types");
|
|
10
11
|
/**
|
|
11
|
-
* Deletes
|
|
12
|
+
* Deletes what was made beside removed mods and never recorded in `mods.json`, the
|
|
13
|
+
* declarations Claude Code wrote and the bundled views, then their emptied folders.
|
|
12
14
|
*
|
|
13
15
|
* @param target - Install destination the mods were removed from.
|
|
14
16
|
* @param removed - Folder names of the removed mods.
|
|
@@ -16,6 +18,8 @@ const ENGINE_TYPES_DIR = path.join(".claude-plugin", "types");
|
|
|
16
18
|
function removeEngineTypes(target, removed) {
|
|
17
19
|
const io = createInstallerIO();
|
|
18
20
|
for (const key of removed) {
|
|
21
|
+
removeViewBundle(target.installDir, key);
|
|
22
|
+
pruneEmptyDirs(path.join(target.installDir, key, "view"), target.installDir, io);
|
|
19
23
|
const typesDir = path.join(target.installDir, key, ENGINE_TYPES_DIR);
|
|
20
24
|
if (fs.existsSync(typesDir))
|
|
21
25
|
fs.rmSync(typesDir, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAWhD,oHAAoH;AACpH,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAE9D;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,MAAsB,EAAE,OAAiB;IAClE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACzC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QACrE,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAChE,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAe,EAAE,OAAO,GAAkB,EAAE,EAAE,IAAI,GAAgB,EAAE;IACtG,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,MAAM,iBAAiB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAC1F,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;QAAE,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -11,8 +11,8 @@ export interface UpdateOptions extends InstallOptions {
|
|
|
11
11
|
/**
|
|
12
12
|
* @brief Re-installs installed mods from the source each one was installed from,
|
|
13
13
|
* at that source's current revision; with no names, everything installed.
|
|
14
|
-
* Files the user changed since install are kept unless overwritten. The
|
|
15
|
-
* relay and the viewer extension are brought up to this package's version,
|
|
14
|
+
* Files the user changed since install are kept unless overwritten. The mods'
|
|
15
|
+
* views are bundled again, and the relay and the viewer extension are brought up to this package's version,
|
|
16
16
|
* and the running sessions that load the scope then reload their plugins.
|
|
17
17
|
*
|
|
18
18
|
* @param names - Mods to update; empty for everything installed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAKrD;;;;GAIG;AACH,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,aAAkB,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAOvH"}
|
|
@@ -3,11 +3,12 @@ import { updateFromSources } from "@g3nomaly/core/cli";
|
|
|
3
3
|
import { MOD_CONTEXT, openModProject, openModRegistry } from "../project";
|
|
4
4
|
import { reloadRunningSessions } from "../reload";
|
|
5
5
|
import { setUpViewer } from "../viewer";
|
|
6
|
+
import { buildInstalledViews } from "../views";
|
|
6
7
|
/**
|
|
7
8
|
* @brief Re-installs installed mods from the source each one was installed from,
|
|
8
9
|
* at that source's current revision; with no names, everything installed.
|
|
9
|
-
* Files the user changed since install are kept unless overwritten. The
|
|
10
|
-
* relay and the viewer extension are brought up to this package's version,
|
|
10
|
+
* Files the user changed since install are kept unless overwritten. The mods'
|
|
11
|
+
* views are bundled again, and the relay and the viewer extension are brought up to this package's version,
|
|
11
12
|
* and the running sessions that load the scope then reload their plugins.
|
|
12
13
|
*
|
|
13
14
|
* @param names - Mods to update; empty for everything installed.
|
|
@@ -19,6 +20,7 @@ export async function updateCommand(names, options = {}, deps = {}) {
|
|
|
19
20
|
await updateFromSources([project.target], names, () => openModRegistry(project), options, MOD_CONTEXT);
|
|
20
21
|
if (options.dryRun === true)
|
|
21
22
|
return;
|
|
23
|
+
await buildInstalledViews(project);
|
|
22
24
|
await setUpViewer(project);
|
|
23
25
|
await reloadRunningSessions(project);
|
|
24
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAW/C;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAe,EAAE,OAAO,GAAkB,EAAE,EAAE,IAAI,GAAgB,EAAE;IACtG,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,MAAM,iBAAiB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACvG,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO;IACpC,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3B,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ModProject } from "./project";
|
|
2
|
+
/**
|
|
3
|
+
* @brief Bundles the views of the scope's installed mods, the HTML and CSS the
|
|
4
|
+
* viewer draws them with, and prints the ones that failed.
|
|
5
|
+
*
|
|
6
|
+
* @param project - Scope whose installed mods to look at.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildInstalledViews(project: ModProject): Promise<void>;
|
|
9
|
+
//# sourceMappingURL=views.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/cli/views.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5E"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// packages/mods/src/cli/views.ts
|
|
2
|
+
import { c, lineError } from "@g3nomaly/core/cli";
|
|
3
|
+
import { buildViews } from "../viewer";
|
|
4
|
+
import { installedMods } from "./project";
|
|
5
|
+
/**
|
|
6
|
+
* @brief Bundles the views of the scope's installed mods, the HTML and CSS the
|
|
7
|
+
* viewer draws them with, and prints the ones that failed.
|
|
8
|
+
*
|
|
9
|
+
* @param project - Scope whose installed mods to look at.
|
|
10
|
+
*/
|
|
11
|
+
export async function buildInstalledViews(project) {
|
|
12
|
+
const builds = await buildViews(project.target.installDir, Object.keys(installedMods(project)));
|
|
13
|
+
for (const build of builds) {
|
|
14
|
+
if (build.reason !== undefined)
|
|
15
|
+
console.log(lineError(`Could not build the view of ${c.file(build.key)}: ${build.reason}`));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=views.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/cli/views.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAmB;IAC3D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9H,CAAC;AACH,CAAC"}
|
package/dist/relay/protocol.d.ts
CHANGED
|
@@ -5,6 +5,12 @@ export declare const VIEWER_SURFACE = "vscode";
|
|
|
5
5
|
export declare const VIEWER_CLIENT_ID = "g3n-viewer";
|
|
6
6
|
/** Prefix of the request ids the relay gives the control requests it sends for a viewer. */
|
|
7
7
|
export declare const RELAY_REQUEST_PREFIX = "g3nv:";
|
|
8
|
+
/** The viewport the relay attaches the viewer with, before the viewer has measured itself. */
|
|
9
|
+
export declare const ATTACH_VIEWPORT: {
|
|
10
|
+
readonly columns: 160;
|
|
11
|
+
readonly rows: 50;
|
|
12
|
+
readonly isFullscreen: true;
|
|
13
|
+
};
|
|
8
14
|
/**
|
|
9
15
|
* The requests a relay client may send: the engine's UI requests a viewer
|
|
10
16
|
* draws with, and `reload_plugins`, which the CLI sends after it changed the
|
|
@@ -18,6 +24,7 @@ export declare const ViewerRequestSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
18
24
|
viewport: z.ZodOptional<z.ZodObject<{
|
|
19
25
|
columns: z.ZodNumber;
|
|
20
26
|
rows: z.ZodNumber;
|
|
27
|
+
isFullscreen: z.ZodOptional<z.ZodBoolean>;
|
|
21
28
|
}, z.core.$strip>>;
|
|
22
29
|
}, z.core.$strip>, z.ZodObject<{
|
|
23
30
|
subtype: z.ZodLiteral<"ui_press">;
|
|
@@ -67,6 +74,7 @@ export declare const ViewerMessageSchema: z.ZodObject<{
|
|
|
67
74
|
viewport: z.ZodOptional<z.ZodObject<{
|
|
68
75
|
columns: z.ZodNumber;
|
|
69
76
|
rows: z.ZodNumber;
|
|
77
|
+
isFullscreen: z.ZodOptional<z.ZodBoolean>;
|
|
70
78
|
}, z.core.$strip>>;
|
|
71
79
|
}, z.core.$strip>, z.ZodObject<{
|
|
72
80
|
subtype: z.ZodLiteral<"ui_press">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/relay/protocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,4EAA4E;AAC5E,eAAO,MAAM,cAAc,WAAa,CAAC;AACzC,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAE7C,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/relay/protocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,4EAA4E;AAC5E,eAAO,MAAM,cAAc,WAAa,CAAC;AACzC,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAE7C,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAc5C,8FAA8F;AAC9F,eAAO,MAAM,eAAe;aAAK,OAAO,EAAE,GAAG;aAAE,IAAI,EAAE,EAAE;aAAE,YAAY;CAAiB,CAAC;AAEvF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAqC9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,gHAAgH;AAChH,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAE3D;AAED,yEAAyE;AACzE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,yCAAyC;AACzC,MAAM,MAAM,YAAY;AACtB,yEAAyE;AACvE;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE;AAC3C,gEAAgE;GAC9D;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;AACtE,gGAAgG;GAC9F;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAEpD,mFAAmF;AACnF,eAAO,MAAM,cAAc,aAAyC,CAAC;AAErE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAchF"}
|
package/dist/relay/protocol.js
CHANGED
|
@@ -5,6 +5,19 @@ export const VIEWER_SURFACE = "vscode";
|
|
|
5
5
|
export const VIEWER_CLIENT_ID = "g3n-viewer";
|
|
6
6
|
/** Prefix of the request ids the relay gives the control requests it sends for a viewer. */
|
|
7
7
|
export const RELAY_REQUEST_PREFIX = "g3nv:";
|
|
8
|
+
/**
|
|
9
|
+
* What a viewer measured to draw into. `isFullscreen` set (either way) makes
|
|
10
|
+
* the engine count the viewer as a surface that places panes: without it a
|
|
11
|
+
* sized client holds every pane opened after it attached unplaced, so the
|
|
12
|
+
* viewer never sees them.
|
|
13
|
+
*/
|
|
14
|
+
const ViewportSchema = z.object({
|
|
15
|
+
columns: z.number().int().positive(),
|
|
16
|
+
rows: z.number().int().positive(),
|
|
17
|
+
isFullscreen: z.boolean().optional(),
|
|
18
|
+
});
|
|
19
|
+
/** The viewport the relay attaches the viewer with, before the viewer has measured itself. */
|
|
20
|
+
export const ATTACH_VIEWPORT = { columns: 160, rows: 50, isFullscreen: true };
|
|
8
21
|
/**
|
|
9
22
|
* The requests a relay client may send: the engine's UI requests a viewer
|
|
10
23
|
* draws with, and `reload_plugins`, which the CLI sends after it changed the
|
|
@@ -16,7 +29,7 @@ export const ViewerRequestSchema = z.discriminatedUnion("subtype", [
|
|
|
16
29
|
component: z.string().min(1),
|
|
17
30
|
instance_id: z.string().min(1),
|
|
18
31
|
props: z.record(z.string(), z.unknown()),
|
|
19
|
-
viewport:
|
|
32
|
+
viewport: ViewportSchema.optional(),
|
|
20
33
|
}),
|
|
21
34
|
z.object({
|
|
22
35
|
subtype: z.literal("ui_press"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/relay/protocol.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,4EAA4E;AAC5E,MAAM,CAAC,MAAM,cAAc,GAAK,QAAQ,CAAC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,CAAC;AAE7C,4FAA4F;AAC5F,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/relay/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/relay/relay.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import fs from "node:fs";
|
|
3
3
|
import net from "node:net";
|
|
4
4
|
import { LineSplitter } from "./lines";
|
|
5
|
-
import { RELAYED_PUSHES, RELAY_REQUEST_PREFIX, VIEWER_CLIENT_ID, VIEWER_SURFACE, ViewerMessageSchema, isUiRequest, toControlRequest, } from "./protocol";
|
|
5
|
+
import { ATTACH_VIEWPORT, RELAYED_PUSHES, RELAY_REQUEST_PREFIX, VIEWER_CLIENT_ID, VIEWER_SURFACE, ViewerMessageSchema, isUiRequest, toControlRequest, } from "./protocol";
|
|
6
6
|
import { removeSession, sessionsDir, socketPath, writeSessionInfo } from "./sessions";
|
|
7
7
|
/** Writes one relay message to a viewer as a JSON line; a closed socket is skipped. */
|
|
8
8
|
function send(socket, message) {
|
|
@@ -118,7 +118,7 @@ export async function runRelay(claudePath, args) {
|
|
|
118
118
|
if (isUiRequest(parsed.data.request) && !attached.has(socket)) {
|
|
119
119
|
attached.add(socket);
|
|
120
120
|
if (attached.size === 1)
|
|
121
|
-
inject(`${RELAY_REQUEST_PREFIX}attach`, { subtype: "ui_attach", surface: VIEWER_SURFACE, client_id: VIEWER_CLIENT_ID });
|
|
121
|
+
inject(`${RELAY_REQUEST_PREFIX}attach`, { subtype: "ui_attach", surface: VIEWER_SURFACE, client_id: VIEWER_CLIENT_ID, viewport: ATTACH_VIEWPORT });
|
|
122
122
|
}
|
|
123
123
|
const requestId = `${RELAY_REQUEST_PREFIX}${connection}:${parsed.data.id}`;
|
|
124
124
|
pending.set(requestId, { socket, id: parsed.data.id });
|
package/dist/relay/relay.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay.js","sourceRoot":"","sources":["../../src/relay/relay.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EACL,cAAc,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"relay.js","sourceRoot":"","sources":["../../src/relay/relay.ts"],"names":[],"mappings":"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"}
|
package/dist/viewer/index.d.ts
CHANGED
|
@@ -7,5 +7,7 @@ export type { RelayInstallResult } from "./relay";
|
|
|
7
7
|
export { machineSettingsPath, setProcessWrapper } from "./machine";
|
|
8
8
|
export type { WrapperResult } from "./machine";
|
|
9
9
|
export { VIEWER_EXTENSION_ID, installViewer, viewerPackagePath } from "./viewerExtension";
|
|
10
|
+
export { VIEW_BUNDLE, VIEW_SOURCE, VIEW_STYLE, buildViews, removeViewBundle } from "./views";
|
|
11
|
+
export type { ViewBuild } from "./views";
|
|
10
12
|
export type { ViewerInstallResult } from "./viewerExtension";
|
|
11
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/viewer/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvF,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC1F,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/viewer/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvF,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC7F,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/viewer/index.js
CHANGED
|
@@ -4,4 +4,5 @@ export { ViewerLocationSchema, configureViewer } from "./settings";
|
|
|
4
4
|
export { installRelay, relayBinaryPath } from "./relay";
|
|
5
5
|
export { machineSettingsPath, setProcessWrapper } from "./machine";
|
|
6
6
|
export { VIEWER_EXTENSION_ID, installViewer, viewerPackagePath } from "./viewerExtension";
|
|
7
|
+
export { VIEW_BUNDLE, VIEW_SOURCE, VIEW_STYLE, buildViews, removeViewBundle } from "./views";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
package/dist/viewer/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/viewer/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvF,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/viewer/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvF,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** A mod's view, written in TypeScript: real DOM and CSS the viewer mounts in place of the mod's element tree. */
|
|
2
|
+
export declare const VIEW_SOURCE: string;
|
|
3
|
+
/** The view bundled for the browser at install time, beside its source; never part of a mod's source. */
|
|
4
|
+
export declare const VIEW_BUNDLE: string;
|
|
5
|
+
/** The view's stylesheet, copied as it is. */
|
|
6
|
+
export declare const VIEW_STYLE: string;
|
|
7
|
+
/**
|
|
8
|
+
* What `buildViews` did for one mod with a view.
|
|
9
|
+
*
|
|
10
|
+
* @property key - The mod's folder name, e.g. `custom-crab-agents`.
|
|
11
|
+
* @property reason - Why its bundle could not be built; absent when it was.
|
|
12
|
+
*/
|
|
13
|
+
export interface ViewBuild {
|
|
14
|
+
key: string;
|
|
15
|
+
reason?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @brief Bundles the view of every installed mod that has one, `view/view.ts`
|
|
19
|
+
* into `view/view.js`, for the viewer to load. A mod's source holds no
|
|
20
|
+
* JavaScript, so the bundle is made where the mod is installed, after each
|
|
21
|
+
* install or update.
|
|
22
|
+
*
|
|
23
|
+
* @param installDir - Absolute folder the mods are installed in, e.g. `~/.claude/skills`.
|
|
24
|
+
* @param keys - Folder names of the installed mods to look at.
|
|
25
|
+
* @returns One entry per mod that has a view, with the reason when its bundle failed.
|
|
26
|
+
*/
|
|
27
|
+
export declare function buildViews(installDir: string, keys: readonly string[]): Promise<ViewBuild[]>;
|
|
28
|
+
/**
|
|
29
|
+
* Deletes the view bundle `buildViews` made for a mod, which `mods.json` does not record.
|
|
30
|
+
*
|
|
31
|
+
* @param installDir - Absolute folder the mod was installed in.
|
|
32
|
+
* @param key - The mod's folder name.
|
|
33
|
+
*/
|
|
34
|
+
export declare function removeViewBundle(installDir: string, key: string): void;
|
|
35
|
+
//# sourceMappingURL=views.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/viewer/views.ts"],"names":[],"mappings":"AAIA,kHAAkH;AAClH,eAAO,MAAM,WAAW,QAA+B,CAAC;AAExD,yGAAyG;AACzG,eAAO,MAAM,WAAW,QAA+B,CAAC;AAExD,8CAA8C;AAC9C,eAAO,MAAM,UAAU,QAAgC,CAAC;AAExD;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAM,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAelG;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// packages/mods/src/viewer/views.ts
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
/** A mod's view, written in TypeScript: real DOM and CSS the viewer mounts in place of the mod's element tree. */
|
|
5
|
+
export const VIEW_SOURCE = path.join("view", "view.ts");
|
|
6
|
+
/** The view bundled for the browser at install time, beside its source; never part of a mod's source. */
|
|
7
|
+
export const VIEW_BUNDLE = path.join("view", "view.js");
|
|
8
|
+
/** The view's stylesheet, copied as it is. */
|
|
9
|
+
export const VIEW_STYLE = path.join("view", "view.css");
|
|
10
|
+
/**
|
|
11
|
+
* @brief Bundles the view of every installed mod that has one, `view/view.ts`
|
|
12
|
+
* into `view/view.js`, for the viewer to load. A mod's source holds no
|
|
13
|
+
* JavaScript, so the bundle is made where the mod is installed, after each
|
|
14
|
+
* install or update.
|
|
15
|
+
*
|
|
16
|
+
* @param installDir - Absolute folder the mods are installed in, e.g. `~/.claude/skills`.
|
|
17
|
+
* @param keys - Folder names of the installed mods to look at.
|
|
18
|
+
* @returns One entry per mod that has a view, with the reason when its bundle failed.
|
|
19
|
+
*/
|
|
20
|
+
export async function buildViews(installDir, keys) {
|
|
21
|
+
const builds = [];
|
|
22
|
+
for (const key of keys) {
|
|
23
|
+
const source = path.join(installDir, key, VIEW_SOURCE);
|
|
24
|
+
if (!fs.existsSync(source))
|
|
25
|
+
continue;
|
|
26
|
+
const result = await Bun.build({ entrypoints: [source], target: "browser", format: "esm", minify: false, sourcemap: "none" });
|
|
27
|
+
const [output] = result.outputs;
|
|
28
|
+
if (!result.success || output === undefined) {
|
|
29
|
+
builds.push({ key, reason: result.logs.map((log) => String(log)).join("; ") || "the bundle produced no output" });
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
await Bun.write(path.join(installDir, key, VIEW_BUNDLE), output);
|
|
33
|
+
builds.push({ key });
|
|
34
|
+
}
|
|
35
|
+
return builds;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Deletes the view bundle `buildViews` made for a mod, which `mods.json` does not record.
|
|
39
|
+
*
|
|
40
|
+
* @param installDir - Absolute folder the mod was installed in.
|
|
41
|
+
* @param key - The mod's folder name.
|
|
42
|
+
*/
|
|
43
|
+
export function removeViewBundle(installDir, key) {
|
|
44
|
+
fs.rmSync(path.join(installDir, key, VIEW_BUNDLE), { force: true });
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=views.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/viewer/views.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,kHAAkH;AAClH,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAExD,yGAAyG;AACzG,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAExD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAaxD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAkB,EAAE,IAAuB;IAC1E,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QACrC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9H,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,+BAA+B,EAAE,CAAC,CAAC;YAClH,SAAS;QACX,CAAC;QACD,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,GAAW;IAC9D,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACtE,CAAC"}
|
|
Binary file
|