Files
NetMesh/infrastructure/config/terminalThemes.ts
zhaolei 3c72efcb7f
Some checks failed
build-packages / resolve bundled mosh-client (push) Has been cancelled
build-packages / resolve bundled et-client (push) Has been cancelled
build-packages / build-macos (push) Has been cancelled
build-packages / build-windows (push) Has been cancelled
build-packages / build-linux-x64 (push) Has been cancelled
build-packages / build-linux-arm64 (push) Has been cancelled
build-packages / release (push) Has been cancelled
build-packages / update Nix release metadata (push) Has been cancelled
build-packages / bump homebrew tap (push) Has been cancelled
test / lint-and-test (push) Has been cancelled
AI automation / Route event (push) Has been cancelled
AI automation / Hand reopened issue to maintainers (push) Has been cancelled
AI automation / Clean source issue state (push) Has been cancelled
AI automation / Reconcile handoffs (push) Has been cancelled
AI automation / Classify issue (push) Has been cancelled
AI automation / Claude Code smoke (push) Has been cancelled
AI automation / Review issue follow-up (push) Has been cancelled
AI automation / Publish issue follow-up (push) Has been cancelled
AI automation / Implement with Claude Code (push) Has been cancelled
AI automation / Publish implement PR (push) Has been cancelled
AI automation / Continue queued issue comments (push) Has been cancelled
AI automation / Codex review loop (push) Has been cancelled
AI automation / Publish Codex fix (push) Has been cancelled
AI automation / Clear Codex dispatch marker (push) Has been cancelled
AI automation / Own PR re-request Codex (push) Has been cancelled
AI automation / External PR re-request Codex (push) Has been cancelled
AI automation / Poll Codex reaction / retry (push) Has been cancelled
build-et-binaries / build-linux-x64 (push) Has been cancelled
build-et-binaries / build-linux-arm64 (push) Has been cancelled
build-et-binaries / build-macos-universal (push) Has been cancelled
build-et-binaries / build-windows-x64 (push) Has been cancelled
build-et-binaries / release (push) Has been cancelled
[Init] Initial commit - NetMesh terminal manager
2026-09-13 18:24:01 +08:00

49 lines
1.5 KiB
TypeScript

import type { TerminalTheme } from '../../domain/models';
import { classicTerminalThemes } from './terminalThemes/classic';
import { systemPresetTerminalThemes } from './terminalThemes/systemPresets';
import { coreTerminalThemes } from './terminalThemes/core';
import { extraTerminalThemes } from './terminalThemes/extra';
import { modernTerminalThemes } from './terminalThemes/modern';
import { uiMatchTerminalThemes } from './terminalThemes/uiMatch';
// Re-export for convenience
export type TerminalThemeConfig = TerminalTheme;
const UI_MATCH_TERMINAL_THEME_IDS = new Set([
'ui-snow',
'ui-pure-white',
'ui-ivory',
'ui-mist',
'ui-mint',
'ui-sand',
'ui-lavender',
'ui-pure-black',
'ui-midnight',
'ui-deep-blue',
'ui-vscode',
'ui-graphite',
'ui-obsidian',
'ui-forest',
]);
export const TERMINAL_THEMES: TerminalTheme[] = [
...coreTerminalThemes,
...uiMatchTerminalThemes,
...modernTerminalThemes,
...classicTerminalThemes,
...systemPresetTerminalThemes,
...extraTerminalThemes,
];
const TERMINAL_THEME_BY_ID = new Map(TERMINAL_THEMES.map((theme) => [theme.id, theme]));
export const getBuiltinTerminalThemeById = (themeId: string): TerminalTheme | undefined =>
TERMINAL_THEME_BY_ID.get(themeId);
export const isUiMatchTerminalThemeId = (themeId: string): boolean =>
UI_MATCH_TERMINAL_THEME_IDS.has(themeId);
export const USER_VISIBLE_TERMINAL_THEMES: TerminalTheme[] = TERMINAL_THEMES.filter(
(theme) => !isUiMatchTerminalThemeId(theme.id),
);