feat(coding-agent): add automatic theme mode (#5874)

This commit is contained in:
Armin Ronacher
2026-06-18 17:13:47 +02:00
committed by GitHub
parent 908be616f2
commit d0b46764b1
16 changed files with 620 additions and 80 deletions

View File

@@ -5,6 +5,8 @@ import {
detectTerminalBackgroundTheme,
getThemeByName,
getThemeForRgbColor,
parseAutoThemeSetting,
resolveThemeSetting,
} from "../src/modes/interactive/theme/theme.ts";
afterEach(() => {
@@ -119,3 +121,13 @@ describe("theme detection from RGB", () => {
expect(getThemeForRgbColor({ r: 250, g: 250, b: 250 })).toBe("light");
});
});
describe("theme setting helpers", () => {
it("parses and resolves automatic theme settings", () => {
expect(parseAutoThemeSetting("light/dark")).toEqual({ lightTheme: "light", darkTheme: "dark" });
expect(resolveThemeSetting("dark", "light")).toBe("dark");
expect(resolveThemeSetting("light/dark", "light")).toBe("light");
expect(resolveThemeSetting("light/dark", "dark")).toBe("dark");
expect(resolveThemeSetting("light/dark/extra", "dark")).toBeUndefined();
});
});