@agentdocumentformat/cli 0.7.5 → 0.7.6
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/adf.mjs +3 -3
- package/dist/chunks/{App-ZRQS3U7S.mjs → App-U2XSNHUV.mjs} +4 -4
- package/dist/chunks/chunk-KXEF4F4E.mjs +113 -0
- package/dist/chunks/{chunk-EYX2YLJW.mjs → chunk-PRMGZZM5.mjs} +40 -20
- package/dist/chunks/{chunk-GEKSJHIV.mjs → chunk-QPLEAE6V.mjs} +1 -1
- package/dist/chunks/{cli-JDBN7CBR.mjs → cli-XORTCRZW.mjs} +1 -1
- package/dist/chunks/{daemon-6RA2DIJ2.mjs → daemon-ZT5J445W.mjs} +10 -3
- package/dist/chunks/{open-OTQDGDH5.mjs → open-VAU7PXT6.mjs} +2 -2
- package/dist/chunks/{theme-NORU4J74.mjs → theme-SFE3JMA2.mjs} +1 -1
- package/dist/chunks/{themes-F2FKU7CP.mjs → themes-YLXLOIJF.mjs} +2 -2
- package/dist/chunks/{tui-I5LEARAV.mjs → tui-RVRDCIP4.mjs} +5 -5
- package/package.json +1 -1
- package/dist/chunks/chunk-SLUKGXKH.mjs +0 -68
package/dist/adf.mjs
CHANGED
|
@@ -9,7 +9,7 @@ import "./chunks/chunk-M2RX3S2T.mjs";
|
|
|
9
9
|
|
|
10
10
|
// src/main/cli/bin.ts
|
|
11
11
|
function version() {
|
|
12
|
-
return "0.7.
|
|
12
|
+
return "0.7.6";
|
|
13
13
|
}
|
|
14
14
|
var DAEMON_HELP = `Usage: adf daemon [--port <n>] [--host <h>] [--settings <file>]
|
|
15
15
|
adf daemon start [--port <n>] [--force]
|
|
@@ -140,9 +140,9 @@ async function main(argv) {
|
|
|
140
140
|
let { daemonPaths } = await import("./chunks/daemon-control-HKFVSQTQ.mjs");
|
|
141
141
|
process.env.ADF_DAEMON_PIDFILE = daemonPaths(Number(process.env.ADF_DAEMON_PORT ?? 7385)).pidFile;
|
|
142
142
|
}
|
|
143
|
-
return await import("./chunks/daemon-
|
|
143
|
+
return await import("./chunks/daemon-ZT5J445W.mjs"), -1;
|
|
144
144
|
}
|
|
145
|
-
let [{ runCli, tuiInvocation }, control] = await Promise.all([import("./chunks/cli-
|
|
145
|
+
let [{ runCli, tuiInvocation }, control] = await Promise.all([import("./chunks/cli-XORTCRZW.mjs"), import("./chunks/daemon-control-HKFVSQTQ.mjs")]);
|
|
146
146
|
return tuiInvocation(argv) && process.env.NODE_ENV === void 0 && (process.env.NODE_ENV = "production", process.env.ADF_NODE_ENV_DEFAULTED = "1"), await runCli(argv, {
|
|
147
147
|
fetch: globalThis.fetch.bind(globalThis),
|
|
148
148
|
stdout: (text) => process.stdout.write(text),
|
|
@@ -117,7 +117,7 @@ import {
|
|
|
117
117
|
validateCredentials,
|
|
118
118
|
validateMcpForm,
|
|
119
119
|
validateProvider
|
|
120
|
-
} from "./chunk-
|
|
120
|
+
} from "./chunk-QPLEAE6V.mjs";
|
|
121
121
|
import {
|
|
122
122
|
require_jsx_runtime
|
|
123
123
|
} from "./chunk-7CV2SA3H.mjs";
|
|
@@ -137,7 +137,7 @@ import {
|
|
|
137
137
|
findTheme,
|
|
138
138
|
nextThemeName,
|
|
139
139
|
themeNames
|
|
140
|
-
} from "./chunk-
|
|
140
|
+
} from "./chunk-KXEF4F4E.mjs";
|
|
141
141
|
import {
|
|
142
142
|
DaemonClient
|
|
143
143
|
} from "./chunk-3UCKYP7P.mjs";
|
|
@@ -177,7 +177,7 @@ import {
|
|
|
177
177
|
ThemeContext,
|
|
178
178
|
stateColor,
|
|
179
179
|
useTheme
|
|
180
|
-
} from "./chunk-
|
|
180
|
+
} from "./chunk-PRMGZZM5.mjs";
|
|
181
181
|
import {
|
|
182
182
|
isMouseGarbage,
|
|
183
183
|
lastRawInput,
|
|
@@ -8639,7 +8639,7 @@ var help = {
|
|
|
8639
8639
|
}
|
|
8640
8640
|
}, theme = {
|
|
8641
8641
|
name: "theme",
|
|
8642
|
-
args: "[adf|adf-light|adf-contrast|adf-mono|next]",
|
|
8642
|
+
args: "[adf|adf-light|adf-contrast|parchment|adf-mono|next]",
|
|
8643
8643
|
description: "Pick a color theme (no argument opens the picker)",
|
|
8644
8644
|
complete: (partial) => [...themeNames(), "next", "light", "dark", "mono"].filter((n) => n.startsWith(partial.trim())),
|
|
8645
8645
|
run: (ctx) => {
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { createRequire as __adfCreateRequire } from 'node:module';
|
|
2
|
+
import { fileURLToPath as __adfFileURLToPath } from 'node:url';
|
|
3
|
+
import { dirname as __adfDirname } from 'node:path';
|
|
4
|
+
const require = __adfCreateRequire(import.meta.url);
|
|
5
|
+
const __filename = __adfFileURLToPath(import.meta.url);
|
|
6
|
+
const __dirname = __adfDirname(__filename);
|
|
7
|
+
import {
|
|
8
|
+
createTheme
|
|
9
|
+
} from "./chunk-PRMGZZM5.mjs";
|
|
10
|
+
|
|
11
|
+
// src/main/tui/commands/builtin/themes.ts
|
|
12
|
+
var ADF_DARK = { ...createTheme({ mono: !1, env: {} }).color }, ADF_LIGHT = {
|
|
13
|
+
text: "#111111",
|
|
14
|
+
// ink
|
|
15
|
+
muted: "#474B54",
|
|
16
|
+
// ink-muted
|
|
17
|
+
dim: "#6B707C",
|
|
18
|
+
// ink-faint
|
|
19
|
+
accent: "#2F5BEA",
|
|
20
|
+
// blue
|
|
21
|
+
live: "#1F44BF",
|
|
22
|
+
// blue-strong
|
|
23
|
+
loop: "#6A4A8C",
|
|
24
|
+
// status: experimental
|
|
25
|
+
user: "#2F5BEA",
|
|
26
|
+
// blue
|
|
27
|
+
assistant: "#111111",
|
|
28
|
+
// ink
|
|
29
|
+
thinking: "#6B707C",
|
|
30
|
+
// ink-faint
|
|
31
|
+
tool: "#474B54",
|
|
32
|
+
// ink-muted
|
|
33
|
+
success: "#1F6A52",
|
|
34
|
+
// status: stable
|
|
35
|
+
warn: "#8A5A0B",
|
|
36
|
+
// status: draft
|
|
37
|
+
error: "#A12F29",
|
|
38
|
+
// status: deprecated
|
|
39
|
+
info: "#474B54",
|
|
40
|
+
// ink-muted
|
|
41
|
+
border: "#C9CED8",
|
|
42
|
+
// rule-strong
|
|
43
|
+
borderFocus: "#2F5BEA",
|
|
44
|
+
// blue
|
|
45
|
+
selectionFg: "#FFFFFF",
|
|
46
|
+
// paper (on a blue fill)
|
|
47
|
+
selectionBg: "#2F5BEA",
|
|
48
|
+
// blue
|
|
49
|
+
surface: "#F6F7FA",
|
|
50
|
+
// paper-sunken
|
|
51
|
+
overlay: "#F6F7FA"
|
|
52
|
+
// paper-sunken
|
|
53
|
+
}, ADF_CONTRAST = {
|
|
54
|
+
...ADF_DARK,
|
|
55
|
+
text: "#FFFFFF",
|
|
56
|
+
assistant: "#FFFFFF",
|
|
57
|
+
muted: "#D4D8E1",
|
|
58
|
+
dim: "#B0B5C2",
|
|
59
|
+
thinking: "#B0B5C2",
|
|
60
|
+
tool: "#D4D8E1",
|
|
61
|
+
info: "#D4D8E1",
|
|
62
|
+
border: "#858B99"
|
|
63
|
+
}, PARCHMENT = {
|
|
64
|
+
text: "#D9D4C7",
|
|
65
|
+
muted: "#9A9384",
|
|
66
|
+
dim: "#5F5A50",
|
|
67
|
+
accent: "#E3A857",
|
|
68
|
+
live: "#4DB6AC",
|
|
69
|
+
loop: "#A98BE3",
|
|
70
|
+
user: "#E3A857",
|
|
71
|
+
assistant: "#D9D4C7",
|
|
72
|
+
thinking: "#7F7A6E",
|
|
73
|
+
tool: "#6FA8DC",
|
|
74
|
+
success: "#8CC084",
|
|
75
|
+
warn: "#E0B050",
|
|
76
|
+
error: "#E06C6C",
|
|
77
|
+
info: "#6FA8DC",
|
|
78
|
+
border: "#4A463E",
|
|
79
|
+
borderFocus: "#E3A857",
|
|
80
|
+
selectionFg: "#1B1A17",
|
|
81
|
+
selectionBg: "#E3A857",
|
|
82
|
+
surface: "#23211D",
|
|
83
|
+
overlay: "#2B2823"
|
|
84
|
+
}, THEMES = [
|
|
85
|
+
{ name: "adf", label: "ADF dark", description: "ADF brand colors on a dark terminal (default)", colors: ADF_DARK },
|
|
86
|
+
{ name: "adf-light", label: "ADF light", description: "ADF brand colors on a light terminal", colors: ADF_LIGHT },
|
|
87
|
+
{ name: "adf-contrast", label: "ADF high contrast", description: "Brighter text and borders on dark backgrounds", colors: ADF_CONTRAST },
|
|
88
|
+
{ name: "parchment", label: "Parchment", description: "The earlier warm palette: amber accent on a dark terminal", colors: PARCHMENT },
|
|
89
|
+
{ name: "adf-mono", label: "Mono", description: "No color (like NO_COLOR): bold and inverse carry emphasis", colors: void 0 }
|
|
90
|
+
], ALIASES = { dark: "adf", default: "adf", light: "adf-light", contrast: "adf-contrast", mono: "adf-mono", "no-color": "adf-mono" };
|
|
91
|
+
function findTheme(name) {
|
|
92
|
+
let wanted = name.trim().toLowerCase();
|
|
93
|
+
return THEMES.find((t) => t.name === (ALIASES[wanted] ?? wanted));
|
|
94
|
+
}
|
|
95
|
+
function nextThemeName(current) {
|
|
96
|
+
let at = THEMES.findIndex((t) => t.name === current);
|
|
97
|
+
return THEMES[(at + 1) % THEMES.length].name;
|
|
98
|
+
}
|
|
99
|
+
var MONO_COLORS = Object.fromEntries(Object.keys(ADF_DARK).map((k) => [k, void 0]));
|
|
100
|
+
function applyTheme(theme, choice) {
|
|
101
|
+
theme.name = choice.name, theme.mono = choice.colors === void 0, theme.color = { ...choice.colors ?? MONO_COLORS };
|
|
102
|
+
}
|
|
103
|
+
function themeNames() {
|
|
104
|
+
return THEMES.map((t) => t.name);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export {
|
|
108
|
+
THEMES,
|
|
109
|
+
findTheme,
|
|
110
|
+
nextThemeName,
|
|
111
|
+
applyTheme,
|
|
112
|
+
themeNames
|
|
113
|
+
};
|
|
@@ -13,26 +13,46 @@ import {
|
|
|
13
13
|
|
|
14
14
|
// src/main/tui/app/theme.ts
|
|
15
15
|
var import_react = __toESM(require_react(), 1), ADF_COLORS = {
|
|
16
|
-
text: "#
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
16
|
+
text: "#ECEEF3",
|
|
17
|
+
// ink
|
|
18
|
+
muted: "#B0B5C2",
|
|
19
|
+
// ink-muted
|
|
20
|
+
dim: "#858B99",
|
|
21
|
+
// ink-faint
|
|
22
|
+
accent: "#7F9DFF",
|
|
23
|
+
// blue
|
|
24
|
+
live: "#A9BDFF",
|
|
25
|
+
// blue-strong
|
|
26
|
+
loop: "#C6A8E6",
|
|
27
|
+
// status: experimental
|
|
28
|
+
user: "#7F9DFF",
|
|
29
|
+
// blue
|
|
30
|
+
assistant: "#ECEEF3",
|
|
31
|
+
// ink
|
|
32
|
+
thinking: "#858B99",
|
|
33
|
+
// ink-faint
|
|
34
|
+
tool: "#B0B5C2",
|
|
35
|
+
// ink-muted
|
|
36
|
+
success: "#86CFAE",
|
|
37
|
+
// status: stable
|
|
38
|
+
warn: "#E7BF73",
|
|
39
|
+
// status: draft
|
|
40
|
+
error: "#EE9B92",
|
|
41
|
+
// status: deprecated
|
|
42
|
+
info: "#B0B5C2",
|
|
43
|
+
// ink-muted
|
|
44
|
+
border: "#333A49",
|
|
45
|
+
// rule-strong
|
|
46
|
+
borderFocus: "#7F9DFF",
|
|
47
|
+
// blue
|
|
48
|
+
selectionFg: "#0C0E13",
|
|
49
|
+
// paper (on a blue fill)
|
|
50
|
+
selectionBg: "#7F9DFF",
|
|
51
|
+
// blue
|
|
52
|
+
surface: "#151922",
|
|
53
|
+
// paper-sunken
|
|
54
|
+
overlay: "#151922"
|
|
55
|
+
// paper-sunken
|
|
36
56
|
}, MONO_COLORS = Object.fromEntries(
|
|
37
57
|
Object.keys(ADF_COLORS).map((key) => [key, void 0])
|
|
38
58
|
), UNICODE_GLYPHS = {
|
|
@@ -44,7 +44,7 @@ function tuiInvocation(argv) {
|
|
|
44
44
|
return argv.filter((a) => a !== "--json");
|
|
45
45
|
}
|
|
46
46
|
async function defaultLaunchTui(argv) {
|
|
47
|
-
let { runTui } = await import("./tui-
|
|
47
|
+
let { runTui } = await import("./tui-RVRDCIP4.mjs");
|
|
48
48
|
return await runTui(argv);
|
|
49
49
|
}
|
|
50
50
|
function urlFromArgv(argv) {
|
|
@@ -124318,8 +124318,9 @@ function createSettingsDefaults() {
|
|
|
124318
124318
|
// the one-time `agentTemplateForChildren` migration has already run.
|
|
124319
124319
|
theme: "light",
|
|
124320
124320
|
// Interface typeface preset + free-text family for 'custom'; see
|
|
124321
|
-
// UI_FONT_STACKS in the renderer's app.store.
|
|
124322
|
-
|
|
124321
|
+
// UI_FONT_STACKS in the renderer's app.store. 'inter-tight' is bundled;
|
|
124322
|
+
// older stores on 'system' move to it once (settings-migrations).
|
|
124323
|
+
uiFont: "inter-tight",
|
|
124323
124324
|
uiFontCustom: "",
|
|
124324
124325
|
// Electron zoom factor for the whole window (1 = 100%).
|
|
124325
124326
|
uiScale: 1,
|
|
@@ -124372,7 +124373,13 @@ Your private working memory (\`mind.md\`), snapshotted at the start of each sess
|
|
|
124372
124373
|
{{mind.md}}`;
|
|
124373
124374
|
function applySettingsMigrations(data) {
|
|
124374
124375
|
let changedKeys = /* @__PURE__ */ new Set();
|
|
124375
|
-
|
|
124376
|
+
migrateBuiltInAdapters(data) && changedKeys.add("adapters"), migrateComputeDefaults(data) && changedKeys.add("compute"), migrateToolPrompts(data) && changedKeys.add("toolPrompts"), migrateSkillsPromptPlaceholder(data) && changedKeys.add("toolPrompts"), migrateGlobalSystemPromptSoul(data) && changedKeys.add("globalSystemPrompt"), migrateGlobalSystemPromptMind(data) && changedKeys.add("globalSystemPrompt");
|
|
124377
|
+
for (let key of migrateUiFontBrandDefault(data)) changedKeys.add(key);
|
|
124378
|
+
return { changed: changedKeys.size > 0, changedKeys: [...changedKeys] };
|
|
124379
|
+
}
|
|
124380
|
+
var UI_FONT_BRAND_MIGRATION_KEY = "uiFontBrandDefaultApplied";
|
|
124381
|
+
function migrateUiFontBrandDefault(data) {
|
|
124382
|
+
return data[UI_FONT_BRAND_MIGRATION_KEY] === !0 ? [] : (data[UI_FONT_BRAND_MIGRATION_KEY] = !0, data.uiFont === void 0 || data.uiFont === "system" ? (data.uiFont = "inter-tight", [UI_FONT_BRAND_MIGRATION_KEY, "uiFont"]) : [UI_FONT_BRAND_MIGRATION_KEY]);
|
|
124376
124383
|
}
|
|
124377
124384
|
function mergeSettingsValue(current, key, value) {
|
|
124378
124385
|
return key === "compute" && value && typeof value == "object" && !Array.isArray(value) ? {
|
|
@@ -12,14 +12,14 @@ import {
|
|
|
12
12
|
openProviderAdd,
|
|
13
13
|
openWelcome,
|
|
14
14
|
secretStoreReady
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-QPLEAE6V.mjs";
|
|
16
16
|
import "./chunk-7CV2SA3H.mjs";
|
|
17
17
|
import "./chunk-I3UYSITV.mjs";
|
|
18
18
|
import "./chunk-SGUTYISF.mjs";
|
|
19
19
|
import "./chunk-5QU5VY7N.mjs";
|
|
20
20
|
import "./chunk-VMHTYDH4.mjs";
|
|
21
21
|
import "./chunk-3AT7IIP7.mjs";
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-PRMGZZM5.mjs";
|
|
23
23
|
import "./chunk-6GJ4QHRI.mjs";
|
|
24
24
|
import "./chunk-UYY5M2PB.mjs";
|
|
25
25
|
import "./chunk-ZJKXHM4Q.mjs";
|
|
@@ -10,8 +10,8 @@ import {
|
|
|
10
10
|
findTheme,
|
|
11
11
|
nextThemeName,
|
|
12
12
|
themeNames
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import "./chunk-
|
|
13
|
+
} from "./chunk-KXEF4F4E.mjs";
|
|
14
|
+
import "./chunk-PRMGZZM5.mjs";
|
|
15
15
|
import "./chunk-6GJ4QHRI.mjs";
|
|
16
16
|
import "./chunk-M2RX3S2T.mjs";
|
|
17
17
|
export {
|
|
@@ -43,7 +43,7 @@ Options:
|
|
|
43
43
|
--view <id> Start view: chat | files | loops | inspect | fleet | runtime
|
|
44
44
|
--agent <id|handle> Preselect an agent
|
|
45
45
|
--loop <name> Preselect one of its loops (default main)
|
|
46
|
-
--theme <name> adf (dark) | adf-light | adf-contrast | adf-mono (also ADF_TUI_THEME)
|
|
46
|
+
--theme <name> adf (dark) | adf-light | adf-contrast | parchment | adf-mono (also ADF_TUI_THEME)
|
|
47
47
|
--mono No color (also NO_COLOR=1)
|
|
48
48
|
--ascii ASCII glyphs (also ADF_TUI_ASCII=1)
|
|
49
49
|
--no-alt-screen Render in the main screen buffer (also turns mouse mode off)
|
|
@@ -119,10 +119,10 @@ ${tuiUsage()}
|
|
|
119
119
|
] = await Promise.all([
|
|
120
120
|
import("./react-IUIDQ5LX.mjs"),
|
|
121
121
|
import("./build-QF5W473T.mjs"),
|
|
122
|
-
import("./App-
|
|
123
|
-
import("./themes-
|
|
122
|
+
import("./App-U2XSNHUV.mjs"),
|
|
123
|
+
import("./themes-YLXLOIJF.mjs"),
|
|
124
124
|
import("./store-HUVDJPYN.mjs"),
|
|
125
|
-
import("./theme-
|
|
125
|
+
import("./theme-SFE3JMA2.mjs"),
|
|
126
126
|
import("./terminal-O5WO7C5U.mjs"),
|
|
127
127
|
import("./layout-EPJQNFAI.mjs")
|
|
128
128
|
]), { installScreenMirror } = await import("./screen-54BUTYCW.mjs"), uninstallMirror = options.altScreen ? await installScreenMirror(io.stdout).catch(() => () => {
|
|
@@ -161,7 +161,7 @@ ${tuiUsage()}
|
|
|
161
161
|
store.start().then(async () => {
|
|
162
162
|
let { recordWelcomeLaunch } = await import("./welcome-XHXFV7SH.mjs");
|
|
163
163
|
if (recordWelcomeLaunch()) {
|
|
164
|
-
let { openWelcome } = await import("./open-
|
|
164
|
+
let { openWelcome } = await import("./open-VAU7PXT6.mjs");
|
|
165
165
|
openWelcome(store);
|
|
166
166
|
}
|
|
167
167
|
if (!options.agent) return;
|
package/package.json
CHANGED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { createRequire as __adfCreateRequire } from 'node:module';
|
|
2
|
-
import { fileURLToPath as __adfFileURLToPath } from 'node:url';
|
|
3
|
-
import { dirname as __adfDirname } from 'node:path';
|
|
4
|
-
const require = __adfCreateRequire(import.meta.url);
|
|
5
|
-
const __filename = __adfFileURLToPath(import.meta.url);
|
|
6
|
-
const __dirname = __adfDirname(__filename);
|
|
7
|
-
import {
|
|
8
|
-
createTheme
|
|
9
|
-
} from "./chunk-EYX2YLJW.mjs";
|
|
10
|
-
|
|
11
|
-
// src/main/tui/commands/builtin/themes.ts
|
|
12
|
-
var ADF_DARK = { ...createTheme({ mono: !1, env: {} }).color }, ADF_LIGHT = {
|
|
13
|
-
text: "#2B2925",
|
|
14
|
-
muted: "#6B6456",
|
|
15
|
-
dim: "#A39C8E",
|
|
16
|
-
accent: "#A8641A",
|
|
17
|
-
live: "#1F7A70",
|
|
18
|
-
loop: "#6A4BB0",
|
|
19
|
-
user: "#A8641A",
|
|
20
|
-
assistant: "#2B2925",
|
|
21
|
-
thinking: "#8A8476",
|
|
22
|
-
tool: "#2F6DA8",
|
|
23
|
-
success: "#3F7F3A",
|
|
24
|
-
warn: "#9A6A00",
|
|
25
|
-
error: "#B83232",
|
|
26
|
-
info: "#2F6DA8",
|
|
27
|
-
border: "#C9C2B2",
|
|
28
|
-
borderFocus: "#A8641A",
|
|
29
|
-
selectionFg: "#FFFDF7",
|
|
30
|
-
selectionBg: "#A8641A",
|
|
31
|
-
surface: "#EFEADF",
|
|
32
|
-
overlay: "#F7F3EA"
|
|
33
|
-
}, ADF_CONTRAST = {
|
|
34
|
-
...ADF_DARK,
|
|
35
|
-
text: "#F2EEE4",
|
|
36
|
-
muted: "#C4BDAE",
|
|
37
|
-
dim: "#8C8577",
|
|
38
|
-
border: "#7A7466",
|
|
39
|
-
thinking: "#A8A294"
|
|
40
|
-
}, THEMES = [
|
|
41
|
-
{ name: "adf", label: "ADF dark", description: "Ink & parchment on a dark terminal (default)", colors: ADF_DARK },
|
|
42
|
-
{ name: "adf-light", label: "ADF light", description: "Ink on paper, for light terminal backgrounds", colors: ADF_LIGHT },
|
|
43
|
-
{ name: "adf-contrast", label: "ADF high contrast", description: "Brighter text and borders on dark backgrounds", colors: ADF_CONTRAST },
|
|
44
|
-
{ name: "adf-mono", label: "Mono", description: "No color (like NO_COLOR): bold and inverse carry emphasis", colors: void 0 }
|
|
45
|
-
], ALIASES = { dark: "adf", default: "adf", light: "adf-light", contrast: "adf-contrast", mono: "adf-mono", "no-color": "adf-mono" };
|
|
46
|
-
function findTheme(name) {
|
|
47
|
-
let wanted = name.trim().toLowerCase();
|
|
48
|
-
return THEMES.find((t) => t.name === (ALIASES[wanted] ?? wanted));
|
|
49
|
-
}
|
|
50
|
-
function nextThemeName(current) {
|
|
51
|
-
let at = THEMES.findIndex((t) => t.name === current);
|
|
52
|
-
return THEMES[(at + 1) % THEMES.length].name;
|
|
53
|
-
}
|
|
54
|
-
var MONO_COLORS = Object.fromEntries(Object.keys(ADF_DARK).map((k) => [k, void 0]));
|
|
55
|
-
function applyTheme(theme, choice) {
|
|
56
|
-
theme.name = choice.name, theme.mono = choice.colors === void 0, theme.color = { ...choice.colors ?? MONO_COLORS };
|
|
57
|
-
}
|
|
58
|
-
function themeNames() {
|
|
59
|
-
return THEMES.map((t) => t.name);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export {
|
|
63
|
-
THEMES,
|
|
64
|
-
findTheme,
|
|
65
|
-
nextThemeName,
|
|
66
|
-
applyTheme,
|
|
67
|
-
themeNames
|
|
68
|
-
};
|