claude-code-extensions 0.1.1 → 0.1.2
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/dist/cli-list.d.ts +5 -0
- package/dist/cli-list.js +33 -0
- package/dist/cli-list.js.map +1 -0
- package/dist/cli-reload.d.ts +7 -0
- package/dist/cli-reload.js +24 -0
- package/dist/cli-reload.js.map +1 -0
- package/dist/cli.d.ts +5 -9
- package/dist/cli.js +5 -40
- package/dist/cli.js.map +1 -1
- package/dist/patches/banner.js +46 -1
- package/dist/patches/banner.js.map +1 -1
- package/dist/patches/index.d.ts +0 -2
- package/dist/patches/index.js +0 -2
- package/dist/patches/index.js.map +1 -1
- package/dist/patches/simple-spinner.js +1 -0
- package/dist/patches/simple-spinner.js.map +1 -1
- package/dist/setup.js +2 -2
- package/dist/setup.js.map +1 -1
- package/package.json +5 -2
- package/dist/patches/session-export.d.ts +0 -16
- package/dist/patches/session-export.js +0 -93
- package/dist/patches/session-export.js.map +0 -1
- package/dist/patches/session-timer.d.ts +0 -18
- package/dist/patches/session-timer.js +0 -217
- package/dist/patches/session-timer.js.map +0 -1
package/dist/cli-list.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* cx-list — Show patch status for Claude Code Extensions
|
|
4
|
+
*/
|
|
5
|
+
import { existsSync, readFileSync } from 'fs';
|
|
6
|
+
import { resolve, dirname } from 'path';
|
|
7
|
+
import { fileURLToPath } from 'url';
|
|
8
|
+
import { listPatches } from './transform.js';
|
|
9
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
10
|
+
const CONFIG_PATH = resolve(__dirname, '..', '.cx-patches.json');
|
|
11
|
+
function loadConfig() {
|
|
12
|
+
if (!existsSync(CONFIG_PATH))
|
|
13
|
+
return null;
|
|
14
|
+
try {
|
|
15
|
+
return JSON.parse(readFileSync(CONFIG_PATH, 'utf-8'));
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
const config = loadConfig();
|
|
22
|
+
const all = listPatches();
|
|
23
|
+
for (const p of all) {
|
|
24
|
+
let on;
|
|
25
|
+
if (config?.patches && p.id in config.patches) {
|
|
26
|
+
on = config.patches[p.id] !== false;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
on = p.defaultEnabled !== false;
|
|
30
|
+
}
|
|
31
|
+
process.stdout.write(` ${on ? '\x1b[32m✓\x1b[0m' : '\x1b[90m✗\x1b[0m'} ${p.id} — ${p.description ?? p.name}\n`);
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=cli-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-list.js","sourceRoot":"","sources":["../src/cli-list.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;AAEjE,SAAS,UAAU;IACjB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAa,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AACnG,CAAC;AAED,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;AAC5B,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;AAE1B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IACpB,IAAI,EAAW,CAAC;IAChB,IAAI,MAAM,EAAE,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9C,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,EAAE,GAAG,CAAC,CAAC,cAAc,KAAK,KAAK,CAAC;IAClC,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;AACnH,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* cx-reload — Signal a running cx instance to reload patches
|
|
4
|
+
*
|
|
5
|
+
* Usage: cx-reload (or `! cx-reload` from inside a cx session)
|
|
6
|
+
*/
|
|
7
|
+
import { readFileSync } from 'fs';
|
|
8
|
+
import { resolve, dirname } from 'path';
|
|
9
|
+
import { fileURLToPath } from 'url';
|
|
10
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
11
|
+
const PID_FILE = resolve(__dirname, '..', '.cx-pid');
|
|
12
|
+
try {
|
|
13
|
+
const pid = parseInt(readFileSync(PID_FILE, 'utf-8').trim(), 10);
|
|
14
|
+
process.kill(pid, 'SIGUSR1');
|
|
15
|
+
process.stderr.write('\x1b[2mcx: reload signal sent\x1b[0m\n');
|
|
16
|
+
}
|
|
17
|
+
catch (e) {
|
|
18
|
+
const msg = e.code === 'ENOENT' ? 'no cx instance running'
|
|
19
|
+
: e.code === 'ESRCH' ? 'cx process not running'
|
|
20
|
+
: e.message;
|
|
21
|
+
process.stderr.write(`cx-reload: ${msg}\n`);
|
|
22
|
+
process.exit(1);
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=cli-reload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-reload.js","sourceRoot":"","sources":["../src/cli-reload.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;AAErD,IAAI,CAAC;IACH,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;AACjE,CAAC;AAAC,OAAO,CAAM,EAAE,CAAC;IAChB,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,wBAAwB;QACxD,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,wBAAwB;YAC/C,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
package/dist/cli.d.ts
CHANGED
|
@@ -2,17 +2,13 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* cx — Claude Code Extensions
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Pure drop-in replacement for `claude`. Applies enabled patches at runtime
|
|
6
6
|
* via AST transformation. The original cli.js is never modified.
|
|
7
7
|
* All arguments pass through to claude untouched.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
* cx
|
|
11
|
-
* cx
|
|
12
|
-
* cx
|
|
13
|
-
* cx [args] — run patched Claude (with auto-reload support)
|
|
14
|
-
*
|
|
15
|
-
* Reload: type `! cx reload` inside Claude to restart the session
|
|
16
|
-
* with fresh patches applied. The conversation resumes via --continue.
|
|
9
|
+
* Related commands:
|
|
10
|
+
* cx-setup — interactive patch configurator
|
|
11
|
+
* cx-list — show patch status
|
|
12
|
+
* cx-reload — signal a running cx instance to reload Claude
|
|
17
13
|
*/
|
|
18
14
|
export {};
|
package/dist/cli.js
CHANGED
|
@@ -2,18 +2,14 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* cx — Claude Code Extensions
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Pure drop-in replacement for `claude`. Applies enabled patches at runtime
|
|
6
6
|
* via AST transformation. The original cli.js is never modified.
|
|
7
7
|
* All arguments pass through to claude untouched.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
* cx
|
|
11
|
-
* cx
|
|
12
|
-
* cx
|
|
13
|
-
* cx [args] — run patched Claude (with auto-reload support)
|
|
14
|
-
*
|
|
15
|
-
* Reload: type `! cx reload` inside Claude to restart the session
|
|
16
|
-
* with fresh patches applied. The conversation resumes via --continue.
|
|
9
|
+
* Related commands:
|
|
10
|
+
* cx-setup — interactive patch configurator
|
|
11
|
+
* cx-list — show patch status
|
|
12
|
+
* cx-reload — signal a running cx instance to reload Claude
|
|
17
13
|
*/
|
|
18
14
|
import { existsSync, readFileSync, writeFileSync, statSync, mkdirSync, unlinkSync } from 'fs';
|
|
19
15
|
import { execSync, spawn as nodeSpawn } from 'child_process';
|
|
@@ -27,23 +23,6 @@ const cachedCliPath = resolve(cacheDir, 'cli.mjs');
|
|
|
27
23
|
const metaPath = resolve(cacheDir, 'meta.json');
|
|
28
24
|
const PID_FILE = resolve(__dirname, '..', '.cx-pid');
|
|
29
25
|
const RELOAD_EXIT_CODE = 75;
|
|
30
|
-
// ── Subcommands (fast path, before any heavy work) ───────────────────────
|
|
31
|
-
const sub = process.argv[2];
|
|
32
|
-
if (sub === 'reload') {
|
|
33
|
-
try {
|
|
34
|
-
const pid = parseInt(readFileSync(PID_FILE, 'utf-8').trim(), 10);
|
|
35
|
-
process.kill(pid, 'SIGUSR1');
|
|
36
|
-
process.stderr.write('\x1b[2mcx: reload signal sent\x1b[0m\n');
|
|
37
|
-
}
|
|
38
|
-
catch (e) {
|
|
39
|
-
const msg = e.code === 'ENOENT' ? 'no cx instance running'
|
|
40
|
-
: e.code === 'ESRCH' ? 'cx process not running'
|
|
41
|
-
: e.message;
|
|
42
|
-
process.stderr.write(`cx reload: ${msg}\n`);
|
|
43
|
-
process.exit(1);
|
|
44
|
-
}
|
|
45
|
-
process.exit(0);
|
|
46
|
-
}
|
|
47
26
|
// ── Config ───────────────────────────────────────────────────────────────
|
|
48
27
|
function loadConfig() {
|
|
49
28
|
if (!existsSync(CONFIG_PATH))
|
|
@@ -66,20 +45,6 @@ function getEnabledPatches() {
|
|
|
66
45
|
return p.defaultEnabled !== false;
|
|
67
46
|
}).map(p => p.id);
|
|
68
47
|
}
|
|
69
|
-
if (sub === 'list') {
|
|
70
|
-
const all = listPatches();
|
|
71
|
-
const enabled = getEnabledPatches();
|
|
72
|
-
for (const p of all) {
|
|
73
|
-
const on = enabled.includes(p.id);
|
|
74
|
-
process.stdout.write(` ${on ? '\x1b[32m✓\x1b[0m' : '\x1b[90m✗\x1b[0m'} ${p.id} — ${p.description ?? p.name}\n`);
|
|
75
|
-
}
|
|
76
|
-
process.exit(0);
|
|
77
|
-
}
|
|
78
|
-
if (sub === 'setup') {
|
|
79
|
-
const { default: setup } = await import('./setup.js');
|
|
80
|
-
await setup();
|
|
81
|
-
process.exit(0);
|
|
82
|
-
}
|
|
83
48
|
// ── First run ────────────────────────────────────────────────────────────
|
|
84
49
|
if (!existsSync(CONFIG_PATH)) {
|
|
85
50
|
if (process.stdin.isTTY) {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/patches/banner.js
CHANGED
|
@@ -36,7 +36,52 @@ const patch = {
|
|
|
36
36
|
assert(boldTextCall, 'Could not find createElement(T, {bold}, "Claude Code")');
|
|
37
37
|
const textLiteral = boldTextCall.arguments.find((a) => a.type === 'Literal' && a.value === 'Claude Code');
|
|
38
38
|
editor.replaceRange(textLiteral.start, textLiteral.end, `"Claude Code Extensions (cx) v${version} by x.com/@wormcoffee"`);
|
|
39
|
-
// ──
|
|
39
|
+
// ── Star-the-repo line in the condensed layout ──
|
|
40
|
+
// The column Box has children: I (title), B (model), R (cwd), g, F
|
|
41
|
+
// We find the column Box (flexDirection:"column") that contains the bold title,
|
|
42
|
+
// then inject a dimColor text after the title argument.
|
|
43
|
+
const condensedFn = index.enclosingFunction(boldTextCall);
|
|
44
|
+
assert(condensedFn, 'Could not find enclosing function for condensed logo');
|
|
45
|
+
// Find the column Box: createElement(u, {flexDirection:"column"}, I, B, R, ...)
|
|
46
|
+
const columnBox = find.findFirst(condensedFn, (n) => n.type === 'CallExpression' &&
|
|
47
|
+
n.arguments?.[1]?.type === 'ObjectExpression' &&
|
|
48
|
+
n.arguments[1].properties?.some?.((p) => p.key?.name === 'flexDirection' && p.value?.value === 'column'));
|
|
49
|
+
assert(columnBox, 'Could not find column Box in condensed logo');
|
|
50
|
+
// The first child after the props object is the title element (I).
|
|
51
|
+
// Insert our star text element right after it.
|
|
52
|
+
const columnArgs = columnBox.arguments;
|
|
53
|
+
// args[0] = Box component, args[1] = {flexDirection:"column"}, args[2..] = children
|
|
54
|
+
assert(columnArgs.length >= 3, 'Column Box has no children');
|
|
55
|
+
const titleChild = columnArgs[2]; // I — the title element
|
|
56
|
+
// Get the React namespace, Text and Box components from the createElement calls
|
|
57
|
+
const reactNs = src(boldTextCall.callee.object); // e.g. "qO"
|
|
58
|
+
const textComp = src(boldTextCall.arguments[0]); // e.g. "T"
|
|
59
|
+
const boxComp = src(columnBox.arguments[0]); // e.g. "u"
|
|
60
|
+
const starText = `${reactNs}.createElement(${textComp},{dimColor:!0},"I don\\u0027t ask for money. Just for love!\\nPlease star the repo \\u2B50\\uFE0F https://github.com/magidandrew/cx")`;
|
|
61
|
+
editor.insertAt(titleChild.end, `,${starText}`);
|
|
62
|
+
// ── Boxed (v2) layout: inject star lines at the bottom ──
|
|
63
|
+
// Find the compact boxed container: createElement(u, {borderStyle:"round", borderColor:"claude", borderText:...})
|
|
64
|
+
// and inject star lines after the last child (cwd line).
|
|
65
|
+
const borderTextLiterals = index.allNodes.filter((n) => n.type === 'Property' && n.key?.name === 'borderText');
|
|
66
|
+
for (const prop of borderTextLiterals) {
|
|
67
|
+
const obj = index.parentMap.get(prop);
|
|
68
|
+
if (!obj || obj.type !== 'ObjectExpression')
|
|
69
|
+
continue;
|
|
70
|
+
// Must also have borderColor:"claude"
|
|
71
|
+
const hasClaudeColor = obj.properties.some((p) => p.key?.name === 'borderColor' && p.value?.value === 'claude');
|
|
72
|
+
if (!hasClaudeColor)
|
|
73
|
+
continue;
|
|
74
|
+
// This is the boxed logo. Find the enclosing createElement call.
|
|
75
|
+
const boxCall = index.parentMap.get(obj);
|
|
76
|
+
if (!boxCall || boxCall.type !== 'CallExpression')
|
|
77
|
+
continue;
|
|
78
|
+
// Last argument is the last child — inject after it
|
|
79
|
+
const lastArg = boxCall.arguments[boxCall.arguments.length - 1];
|
|
80
|
+
// Get React namespace from this scope
|
|
81
|
+
const boxReactNs = src(boxCall.callee.object);
|
|
82
|
+
editor.insertAt(lastArg.end, `,${boxReactNs}.createElement(${textComp},{dimColor:!0},"\\nI don\\u0027t ask for money. Just for love!\\nPlease star the repo \\u2B50\\uFE0F https://github.com/magidandrew/cx")`);
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
40
85
|
// ── Boxed layout: b7("claude",o)("Claude Code") ──
|
|
41
86
|
// Find "Claude Code" literal whose parent CallExpression's callee is another call with "claude"
|
|
42
87
|
let titleCall = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../../src/patches/banner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAGpC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,OAAO,GAAG,GAAG,CAAC,OAAiB,CAAC;AAEtC,MAAM,KAAK,GAAU;IACnB,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,kDAAkD;IAE/D,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;QACtD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAE3B,uEAAuE;QACvE,mFAAmF;QAEnF,MAAM,kBAAkB,GAAG,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;YACnD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,eAAe;gBAAE,SAAS;YAChH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAC7C,CAAC,EAAE,IAAI,KAAK,kBAAkB;gBAC9B,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YACxF,IAAI,OAAO,EAAE,CAAC;gBAAC,YAAY,GAAG,IAAI,CAAC;gBAAC,MAAM;YAAC,CAAC;QAC9C,CAAC;QACD,MAAM,CAAC,YAAY,EAAE,wDAAwD,CAAC,CAAC;QAE/E,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CACzD,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,aAAa,CAAC,CAAC;QACrD,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,EACpD,iCAAiC,OAAO,wBAAwB,CAAC,CAAC;QAEpE,
|
|
1
|
+
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../../src/patches/banner.ts"],"names":[],"mappings":"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"}
|
package/dist/patches/index.d.ts
CHANGED
|
@@ -16,6 +16,4 @@ export { default as disableTelemetry } from './disable-telemetry.js';
|
|
|
16
16
|
export { default as noAttribution } from './no-attribution.js';
|
|
17
17
|
export { default as noTips } from './no-tips.js';
|
|
18
18
|
export { default as simpleSpinner } from './simple-spinner.js';
|
|
19
|
-
export { default as sessionTimer } from './session-timer.js';
|
|
20
19
|
export { default as noFeedback } from './no-feedback.js';
|
|
21
|
-
export { default as sessionExport } from './session-export.js';
|
package/dist/patches/index.js
CHANGED
|
@@ -16,7 +16,5 @@ export { default as disableTelemetry } from './disable-telemetry.js';
|
|
|
16
16
|
export { default as noAttribution } from './no-attribution.js';
|
|
17
17
|
export { default as noTips } from './no-tips.js';
|
|
18
18
|
export { default as simpleSpinner } from './simple-spinner.js';
|
|
19
|
-
export { default as sessionTimer } from './session-timer.js';
|
|
20
19
|
export { default as noFeedback } from './no-feedback.js';
|
|
21
|
-
export { default as sessionExport } from './session-export.js';
|
|
22
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/patches/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/patches/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -11,6 +11,7 @@ const patch = {
|
|
|
11
11
|
id: 'simple-spinner',
|
|
12
12
|
name: 'Simple Spinner',
|
|
13
13
|
description: 'Replace spinner verb cycling with static "working" / "worked"',
|
|
14
|
+
defaultEnabled: false,
|
|
14
15
|
apply(ctx) {
|
|
15
16
|
const { ast, editor, query, assert } = ctx;
|
|
16
17
|
const { findArrayWithConsecutiveStrings } = query;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple-spinner.js","sourceRoot":"","sources":["../../src/patches/simple-spinner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,KAAK,GAAU;IACnB,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,+DAA+D;
|
|
1
|
+
{"version":3,"file":"simple-spinner.js","sourceRoot":"","sources":["../../src/patches/simple-spinner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,KAAK,GAAU;IACnB,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,+DAA+D;IAC5E,cAAc,EAAE,KAAK;IAErB,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;QAC3C,MAAM,EAAE,+BAA+B,EAAE,GAAG,KAAK,CAAC;QAElD,uEAAuE;QACvE,iFAAiF;QACjF,MAAM,UAAU,GAAG,+BAA+B,CAAC,GAAG,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;QACtF,MAAM,CAAC,UAAU,EAAE,6EAA6E,CAAC,CAAC;QAClG,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAErE,uEAAuE;QACvE,gFAAgF;QAChF,MAAM,aAAa,GAAG,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9E,MAAM,CAAC,aAAa,EAAE,0EAA0E,CAAC,CAAC;QAClG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC5E,CAAC;CACF,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
package/dist/setup.js
CHANGED
|
@@ -28,7 +28,7 @@ const groups = [
|
|
|
28
28
|
{ label: 'Display', ids: [
|
|
29
29
|
'always-show-thinking', 'disable-paste-collapse',
|
|
30
30
|
'show-file-in-collapsed-read', 'cx-badge',
|
|
31
|
-
'cx-resume-commands', 'random-clawd',
|
|
31
|
+
'cx-resume-commands', 'random-clawd',
|
|
32
32
|
] },
|
|
33
33
|
{ label: 'Input', ids: [
|
|
34
34
|
'queue', 'swap-enter-submit', 'reload',
|
|
@@ -37,7 +37,7 @@ const groups = [
|
|
|
37
37
|
'no-tips', 'simple-spinner',
|
|
38
38
|
] },
|
|
39
39
|
{ label: 'Behavior', ids: [
|
|
40
|
-
'persist-max-effort', 'no-npm-warning', 'no-feedback',
|
|
40
|
+
'persist-max-effort', 'no-npm-warning', 'no-feedback',
|
|
41
41
|
] },
|
|
42
42
|
];
|
|
43
43
|
// ── State ─────────────────────────────────────────────────────────────────
|
package/dist/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-code-extensions",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Modular, opt-in patches for @anthropic-ai/claude-code applied at runtime via AST transformation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"cx": "./dist/cli.js",
|
|
8
|
-
"cx-setup": "./dist/cli-setup.js"
|
|
8
|
+
"cx-setup": "./dist/cli-setup.js",
|
|
9
|
+
"cx-list": "./dist/cli-list.js",
|
|
10
|
+
"cx-reload": "./dist/cli-reload.js"
|
|
9
11
|
},
|
|
10
12
|
"files": [
|
|
11
13
|
"dist/"
|
|
12
14
|
],
|
|
13
15
|
"scripts": {
|
|
14
16
|
"build": "tsc",
|
|
17
|
+
"link": "tsc && npm link",
|
|
15
18
|
"prepublishOnly": "npm run build"
|
|
16
19
|
},
|
|
17
20
|
"dependencies": {
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* /export Command Patch
|
|
3
|
-
*
|
|
4
|
-
* Adds a /export slash command to copy the entire conversation session
|
|
5
|
-
* to the system clipboard as readable markdown.
|
|
6
|
-
*
|
|
7
|
-
* Addresses: https://github.com/magidandrew/cx/issues/2
|
|
8
|
-
*
|
|
9
|
-
* AST strategy: find the COMMANDS array (same approach as cd-command),
|
|
10
|
-
* then inject a new LocalCommand that reads context.messages,
|
|
11
|
-
* formats them as markdown, and copies to clipboard using
|
|
12
|
-
* child_process (pbcopy on macOS, xclip/xsel/wl-copy on Linux).
|
|
13
|
-
*/
|
|
14
|
-
import type { Patch } from '../types.js';
|
|
15
|
-
declare const patch: Patch;
|
|
16
|
-
export default patch;
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* /export Command Patch
|
|
3
|
-
*
|
|
4
|
-
* Adds a /export slash command to copy the entire conversation session
|
|
5
|
-
* to the system clipboard as readable markdown.
|
|
6
|
-
*
|
|
7
|
-
* Addresses: https://github.com/magidandrew/cx/issues/2
|
|
8
|
-
*
|
|
9
|
-
* AST strategy: find the COMMANDS array (same approach as cd-command),
|
|
10
|
-
* then inject a new LocalCommand that reads context.messages,
|
|
11
|
-
* formats them as markdown, and copies to clipboard using
|
|
12
|
-
* child_process (pbcopy on macOS, xclip/xsel/wl-copy on Linux).
|
|
13
|
-
*/
|
|
14
|
-
const patch = {
|
|
15
|
-
id: 'session-export',
|
|
16
|
-
name: '/export Command',
|
|
17
|
-
description: '/export — copy the full session transcript to clipboard as markdown',
|
|
18
|
-
apply(ctx) {
|
|
19
|
-
const { ast, editor, find, query, index, src, assert } = ctx;
|
|
20
|
-
// ── 1. Find the COMMANDS array (same as cd-command) ─────────────
|
|
21
|
-
const compactObj = query.findObjectWithStringProps(ast, [
|
|
22
|
-
['name', 'compact'],
|
|
23
|
-
['type', 'local'],
|
|
24
|
-
]);
|
|
25
|
-
assert(compactObj, 'Could not find compact command definition');
|
|
26
|
-
let assignNode = index.parentMap.get(compactObj);
|
|
27
|
-
while (assignNode && assignNode.type !== 'AssignmentExpression') {
|
|
28
|
-
assignNode = index.parentMap.get(assignNode);
|
|
29
|
-
}
|
|
30
|
-
assert(assignNode?.type === 'AssignmentExpression' &&
|
|
31
|
-
assignNode.left?.type === 'Identifier', 'Could not find compact assignment');
|
|
32
|
-
const localVar = assignNode.left.name;
|
|
33
|
-
const reExport = find.findFirst(ast, (n) => n.type === 'AssignmentExpression' &&
|
|
34
|
-
n.right?.type === 'Identifier' && n.right.name === localVar &&
|
|
35
|
-
n.left?.type === 'Identifier' && n.left.name !== localVar);
|
|
36
|
-
assert(reExport, 'Could not find compact re-export');
|
|
37
|
-
const exportVar = reExport.left.name;
|
|
38
|
-
const commandsArr = find.findFirst(ast, (n) => {
|
|
39
|
-
if (n.type !== 'ArrayExpression')
|
|
40
|
-
return false;
|
|
41
|
-
if (n.elements.length < 20)
|
|
42
|
-
return false;
|
|
43
|
-
return n.elements.some((el) => el?.type === 'Identifier' && el.name === exportVar);
|
|
44
|
-
});
|
|
45
|
-
assert(commandsArr, 'Could not find COMMANDS array');
|
|
46
|
-
// ── 2. Inject /export command ───────────────────────────────────
|
|
47
|
-
const lastEl = commandsArr.elements[commandsArr.elements.length - 1];
|
|
48
|
-
// The call signature for type:"local" is: call(args, context)
|
|
49
|
-
// context.messages is Message[] with shape:
|
|
50
|
-
// { type: "user"|"assistant"|..., message: { role, content } }
|
|
51
|
-
// content is string | Array<{type:"text",text:string}|...>
|
|
52
|
-
//
|
|
53
|
-
// Clipboard: use child_process.execSync to pipe to pbcopy (macOS)
|
|
54
|
-
// or xclip/xsel/wl-copy (Linux). This avoids needing to locate
|
|
55
|
-
// the bundled setClipboard function in the minified AST.
|
|
56
|
-
const exportCmd = `,{type:"local",name:"export",description:"Copy full session transcript to clipboard"` +
|
|
57
|
-
`,supportsNonInteractive:false` +
|
|
58
|
-
`,load:()=>Promise.resolve({call:async(_args,_ctx)=>{` +
|
|
59
|
-
`let msgs=_ctx.messages;` +
|
|
60
|
-
`let parts=[];` +
|
|
61
|
-
`for(let m of msgs){` +
|
|
62
|
-
`if(m.type!=="user"&&m.type!=="assistant")continue;` +
|
|
63
|
-
`if(m.isMeta)continue;` +
|
|
64
|
-
`let role=m.type==="user"?"User":"Assistant";` +
|
|
65
|
-
`let c=m.message&&m.message.content;` +
|
|
66
|
-
`if(!c)continue;` +
|
|
67
|
-
`let txt="";` +
|
|
68
|
-
`if(typeof c==="string"){txt=c}` +
|
|
69
|
-
`else if(Array.isArray(c)){` +
|
|
70
|
-
`txt=c.filter(b=>b.type==="text").map(b=>b.text).join("\\n")` +
|
|
71
|
-
`}` +
|
|
72
|
-
`if(!txt.trim())continue;` +
|
|
73
|
-
`parts.push("## "+role+"\\n\\n"+txt)` +
|
|
74
|
-
`}` +
|
|
75
|
-
`if(!parts.length)return{type:"text",value:"No messages to export."};` +
|
|
76
|
-
`let md=parts.join("\\n\\n---\\n\\n");` +
|
|
77
|
-
`try{` +
|
|
78
|
-
`let cp=require("child_process");` +
|
|
79
|
-
`let cmd=process.platform==="darwin"?"pbcopy"` +
|
|
80
|
-
`:"xclip -selection clipboard";` +
|
|
81
|
-
`cp.execSync(cmd,{input:md,timeout:5000});` +
|
|
82
|
-
`let lines=md.split("\\n").length;` +
|
|
83
|
-
`let chars=md.length;` +
|
|
84
|
-
`return{type:"text",value:"Session exported to clipboard ("+chars+" chars, "+lines+" lines)"}` +
|
|
85
|
-
`}catch(e){` +
|
|
86
|
-
`return{type:"text",value:"Failed to copy to clipboard: "+(e.message||e)}` +
|
|
87
|
-
`}` +
|
|
88
|
-
`}})}`;
|
|
89
|
-
editor.insertAt(lastEl.end, exportCmd);
|
|
90
|
-
},
|
|
91
|
-
};
|
|
92
|
-
export default patch;
|
|
93
|
-
//# sourceMappingURL=session-export.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session-export.js","sourceRoot":"","sources":["../../src/patches/session-export.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Session Timer Patch
|
|
3
|
-
*
|
|
4
|
-
* Displays two timers in the prompt footer:
|
|
5
|
-
* Claude Active: 6m 15s (34%)
|
|
6
|
-
* Session: 18m 42s
|
|
7
|
-
*
|
|
8
|
-
* - "Claude Active" is the hero metric — time Claude was generating
|
|
9
|
-
* responses or running tools (tracked via the isLoading prop).
|
|
10
|
-
* - "Session" is wall-clock time since the component first mounted.
|
|
11
|
-
* - Percentage shows what fraction of the session Claude was active.
|
|
12
|
-
*
|
|
13
|
-
* Hooks into the same ModeIndicator function that cx-badge uses,
|
|
14
|
-
* injecting React state/effect hooks to track and display the timers.
|
|
15
|
-
*/
|
|
16
|
-
import type { Patch } from '../types.js';
|
|
17
|
-
declare const patch: Patch;
|
|
18
|
-
export default patch;
|
|
@@ -1,217 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Session Timer Patch
|
|
3
|
-
*
|
|
4
|
-
* Displays two timers in the prompt footer:
|
|
5
|
-
* Claude Active: 6m 15s (34%)
|
|
6
|
-
* Session: 18m 42s
|
|
7
|
-
*
|
|
8
|
-
* - "Claude Active" is the hero metric — time Claude was generating
|
|
9
|
-
* responses or running tools (tracked via the isLoading prop).
|
|
10
|
-
* - "Session" is wall-clock time since the component first mounted.
|
|
11
|
-
* - Percentage shows what fraction of the session Claude was active.
|
|
12
|
-
*
|
|
13
|
-
* Hooks into the same ModeIndicator function that cx-badge uses,
|
|
14
|
-
* injecting React state/effect hooks to track and display the timers.
|
|
15
|
-
*/
|
|
16
|
-
const patch = {
|
|
17
|
-
id: 'session-timer',
|
|
18
|
-
name: 'Session Timer',
|
|
19
|
-
description: 'Show Claude active time and session duration in the footer',
|
|
20
|
-
defaultEnabled: false,
|
|
21
|
-
apply(ctx) {
|
|
22
|
-
const { ast, editor, find, src, assert } = ctx;
|
|
23
|
-
const { findFirst } = find;
|
|
24
|
-
// ── Find ModeIndicator via "? for shortcuts" marker ──────────────
|
|
25
|
-
const shortcutsHint = findFirst(ast, (n) => n.type === 'Literal' && n.value === '? for shortcuts');
|
|
26
|
-
assert(shortcutsHint, 'Could not find "? for shortcuts" literal');
|
|
27
|
-
const modeIndicatorFn = findFirst(ast, (node) => {
|
|
28
|
-
if (node.type !== 'FunctionDeclaration' && node.type !== 'FunctionExpression')
|
|
29
|
-
return false;
|
|
30
|
-
let found = false;
|
|
31
|
-
const check = (n) => {
|
|
32
|
-
if (n === shortcutsHint) {
|
|
33
|
-
found = true;
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
if (found)
|
|
37
|
-
return;
|
|
38
|
-
for (const key of Object.keys(n)) {
|
|
39
|
-
if (key === 'type' || key === 'start' || key === 'end')
|
|
40
|
-
continue;
|
|
41
|
-
const val = n[key];
|
|
42
|
-
if (val && typeof val === 'object') {
|
|
43
|
-
if (Array.isArray(val)) {
|
|
44
|
-
for (const item of val) {
|
|
45
|
-
if (item && typeof item.type === 'string')
|
|
46
|
-
check(item);
|
|
47
|
-
if (found)
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
else if (typeof val.type === 'string') {
|
|
52
|
-
check(val);
|
|
53
|
-
if (found)
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
check(node);
|
|
60
|
-
return found;
|
|
61
|
-
});
|
|
62
|
-
assert(modeIndicatorFn, 'Could not find ModeIndicator function');
|
|
63
|
-
// ── Find the final <Box height={1} overflow="hidden"> return ─────
|
|
64
|
-
const boxWithHeight1 = findFirst(modeIndicatorFn, (n) => {
|
|
65
|
-
if (n.type !== 'CallExpression')
|
|
66
|
-
return false;
|
|
67
|
-
return n.arguments.some((arg) => {
|
|
68
|
-
if (arg?.type !== 'ObjectExpression')
|
|
69
|
-
return false;
|
|
70
|
-
let hasHeight = false;
|
|
71
|
-
let hasOverflow = false;
|
|
72
|
-
for (const p of arg.properties) {
|
|
73
|
-
if (p.key?.name === 'height' && p.value?.value === 1)
|
|
74
|
-
hasHeight = true;
|
|
75
|
-
if (p.key?.name === 'overflow' && p.value?.value === 'hidden')
|
|
76
|
-
hasOverflow = true;
|
|
77
|
-
}
|
|
78
|
-
return hasHeight && hasOverflow;
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
assert(boxWithHeight1, 'Could not find <Box height={1} overflow="hidden">');
|
|
82
|
-
// ── Extract React namespace, Box, and Text references ────────────
|
|
83
|
-
const callee = boxWithHeight1.callee;
|
|
84
|
-
let R;
|
|
85
|
-
if (callee.type === 'MemberExpression') {
|
|
86
|
-
R = src(callee.object);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
R = src(callee);
|
|
90
|
-
}
|
|
91
|
-
const BoxRef = src(boxWithHeight1.arguments[0]);
|
|
92
|
-
// Find Text component via " · " separator (same approach as cx-badge)
|
|
93
|
-
const separatorCall = findFirst(modeIndicatorFn, (n) => {
|
|
94
|
-
if (n.type !== 'CallExpression')
|
|
95
|
-
return false;
|
|
96
|
-
return n.arguments.some((a) => a?.type === 'Literal' && a.value === ' · ');
|
|
97
|
-
});
|
|
98
|
-
assert(separatorCall, 'Could not find separator " · " createElement');
|
|
99
|
-
const TextRef = src(separatorCall.arguments[0]);
|
|
100
|
-
// ── Find isLoading in the function's props ───────────────────────
|
|
101
|
-
// ModeIndicator receives destructured props: { mode, ..., isLoading, ... }
|
|
102
|
-
// The param is an ObjectPattern; we need the minified local name for isLoading.
|
|
103
|
-
const propsParam = modeIndicatorFn.params[0];
|
|
104
|
-
assert(propsParam, 'ModeIndicator has no params');
|
|
105
|
-
let isLoadingVar = null;
|
|
106
|
-
if (propsParam.type === 'ObjectPattern') {
|
|
107
|
-
for (const prop of propsParam.properties) {
|
|
108
|
-
if (prop.type === 'Property' &&
|
|
109
|
-
((prop.key.type === 'Identifier' && prop.key.name === 'isLoading') ||
|
|
110
|
-
(prop.key.type === 'Literal' && prop.key.value === 'isLoading'))) {
|
|
111
|
-
isLoadingVar = prop.value.type === 'Identifier' ? prop.value.name
|
|
112
|
-
: prop.value.type === 'AssignmentPattern' ? prop.value.left.name
|
|
113
|
-
: null;
|
|
114
|
-
break;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
// If not destructured directly, the props may be accessed as t0.isLoading
|
|
119
|
-
// (the React compiler pattern). In that case we use the param name directly.
|
|
120
|
-
if (!isLoadingVar) {
|
|
121
|
-
if (propsParam.type === 'Identifier') {
|
|
122
|
-
isLoadingVar = `${propsParam.name}.isLoading`;
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
// Search for .isLoading member access in the function body
|
|
126
|
-
const memberAccess = findFirst(modeIndicatorFn, (n) => n.type === 'MemberExpression' &&
|
|
127
|
-
n.property.type === 'Identifier' &&
|
|
128
|
-
n.property.name === 'isLoading');
|
|
129
|
-
assert(memberAccess, 'Could not find isLoading access in ModeIndicator');
|
|
130
|
-
isLoadingVar = src(memberAccess);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
// ── Inject timer hooks at the start of the function body ─────────
|
|
134
|
-
// We inject:
|
|
135
|
-
// 1. A session start ref (persists across re-renders)
|
|
136
|
-
// 2. A state variable for active accumulated ms
|
|
137
|
-
// 3. A ref for tracking the loading-start timestamp
|
|
138
|
-
// 4. A useEffect that reacts to isLoading changes
|
|
139
|
-
// 5. A 1-second interval useEffect to force re-renders for session time
|
|
140
|
-
const body = modeIndicatorFn.body;
|
|
141
|
-
assert(body.type === 'BlockStatement', 'ModeIndicator body is not a block');
|
|
142
|
-
// Insert right after the opening brace
|
|
143
|
-
const insertPos = body.start + 1;
|
|
144
|
-
// Timer formatting function (inline, no external deps)
|
|
145
|
-
// Formats seconds into "Xm Ys" or "Xh Ym" depending on magnitude
|
|
146
|
-
const fmtFn = `function __stFmt(ms){` +
|
|
147
|
-
`var s=Math.floor(ms/1000),m=Math.floor(s/60),h=Math.floor(m/60);` +
|
|
148
|
-
`s=s%60;m=m%60;` +
|
|
149
|
-
`if(h>0)return h+"h "+m+"m";` +
|
|
150
|
-
`if(m>0)return m+"m "+s+"s";` +
|
|
151
|
-
`return s+"s"` +
|
|
152
|
-
`}`;
|
|
153
|
-
// The hooks code. We use a global-ish object on window to persist state
|
|
154
|
-
// across React re-renders without additional hook overhead. The session
|
|
155
|
-
// start is captured once. Active time is accumulated via useEffect on
|
|
156
|
-
// isLoading transitions.
|
|
157
|
-
const hooksCode =
|
|
158
|
-
// Timer state: [activeMs, forceUpdate counter]
|
|
159
|
-
`var __stState=${R}.useState(function(){return{active:0,tick:0}});` +
|
|
160
|
-
`var __stActive=__stState[0].active,__stTick=__stState[0].tick,__stSet=__stState[1];` +
|
|
161
|
-
// Ref to persist session start and loading-start timestamp
|
|
162
|
-
`var __stRef=${R}.useRef(null);` +
|
|
163
|
-
`if(!__stRef.current)__stRef.current={start:Date.now(),loadStart:0};` +
|
|
164
|
-
// Effect: track isLoading transitions
|
|
165
|
-
`${R}.useEffect(function(){` +
|
|
166
|
-
`var r=__stRef.current;` +
|
|
167
|
-
`if(${isLoadingVar}){` +
|
|
168
|
-
`if(!r.loadStart)r.loadStart=Date.now();` +
|
|
169
|
-
`}else{` +
|
|
170
|
-
`if(r.loadStart){` +
|
|
171
|
-
`var elapsed=Date.now()-r.loadStart;` +
|
|
172
|
-
`r.loadStart=0;` +
|
|
173
|
-
`__stSet(function(p){return{active:p.active+elapsed,tick:p.tick}});` +
|
|
174
|
-
`}` +
|
|
175
|
-
`}` +
|
|
176
|
-
`},[${isLoadingVar}]);` +
|
|
177
|
-
// Effect: 1-second interval for live session clock + active clock while loading
|
|
178
|
-
`${R}.useEffect(function(){` +
|
|
179
|
-
`var id=setInterval(function(){` +
|
|
180
|
-
`__stSet(function(p){` +
|
|
181
|
-
`var r=__stRef.current;` +
|
|
182
|
-
`var bonus=(r.loadStart?Date.now()-r.loadStart:0);` +
|
|
183
|
-
`return{active:p.active+bonus,tick:p.tick+1};` +
|
|
184
|
-
`});` +
|
|
185
|
-
// Reset loadStart to now if still loading to avoid double-counting
|
|
186
|
-
`if(__stRef.current.loadStart)__stRef.current.loadStart=Date.now();` +
|
|
187
|
-
`},1000);` +
|
|
188
|
-
`return function(){clearInterval(id)};` +
|
|
189
|
-
`},[]);` +
|
|
190
|
-
// Compute display values
|
|
191
|
-
`var __stNow=Date.now();` +
|
|
192
|
-
`var __stSessionMs=__stNow-(__stRef.current?__stRef.current.start:__stNow);` +
|
|
193
|
-
`var __stActiveMs=__stActive;` +
|
|
194
|
-
`var __stPct=__stSessionMs>0?Math.round(__stActiveMs/__stSessionMs*100):0;` +
|
|
195
|
-
fmtFn;
|
|
196
|
-
editor.insertAt(insertPos, hooksCode);
|
|
197
|
-
// ── Inject timer display in the footer Box ───────────────────────
|
|
198
|
-
// Add timer after the last child of the Box, right-aligned.
|
|
199
|
-
// We add a spacer Box with flexGrow:1 and then the timer text.
|
|
200
|
-
// The Box call ends with ')'. The children are all arguments after the
|
|
201
|
-
// props object. We insert before the closing ')' of createElement.
|
|
202
|
-
const boxEnd = boxWithHeight1.end;
|
|
203
|
-
// Timer element: right-aligned, dimmed session timer with active hero metric
|
|
204
|
-
const timerEl = `,${R}.createElement(${BoxRef},{flexGrow:1})` +
|
|
205
|
-
`,${R}.createElement(${BoxRef},{flexShrink:0},` +
|
|
206
|
-
`${R}.createElement(${TextRef},{dimColor:true},` +
|
|
207
|
-
`"Active: "+__stFmt(__stActiveMs)` +
|
|
208
|
-
`+(__stPct>0?" ("+__stPct+"%)":"")` +
|
|
209
|
-
`+" \u00b7 Session: "+__stFmt(__stSessionMs)` +
|
|
210
|
-
`)` +
|
|
211
|
-
`)`;
|
|
212
|
-
// Insert just before the closing paren of the createElement call
|
|
213
|
-
editor.insertAt(boxEnd - 1, timerEl);
|
|
214
|
-
},
|
|
215
|
-
};
|
|
216
|
-
export default patch;
|
|
217
|
-
//# sourceMappingURL=session-timer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session-timer.js","sourceRoot":"","sources":["../../src/patches/session-timer.ts"],"names":[],"mappings":"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"}
|