Spaces:
Sleeping
Sleeping
| import type { ITheme } from '@xterm/xterm'; | |
| const style = getComputedStyle(document.documentElement); | |
| const cssVar = (token: string) => style.getPropertyValue(token) || undefined; | |
| export function getTerminalTheme(overrides?: ITheme): ITheme { | |
| return { | |
| cursor: cssVar('--bolt-elements-terminal-cursorColor'), | |
| cursorAccent: cssVar('--bolt-elements-terminal-cursorColorAccent'), | |
| foreground: cssVar('--bolt-elements-terminal-textColor'), | |
| background: cssVar('--bolt-elements-terminal-backgroundColor'), | |
| selectionBackground: cssVar('--bolt-elements-terminal-selection-backgroundColor'), | |
| selectionForeground: cssVar('--bolt-elements-terminal-selection-textColor'), | |
| selectionInactiveBackground: cssVar('--bolt-elements-terminal-selection-backgroundColorInactive'), | |
| // ansi escape code colors | |
| black: cssVar('--bolt-elements-terminal-color-black'), | |
| red: cssVar('--bolt-elements-terminal-color-red'), | |
| green: cssVar('--bolt-elements-terminal-color-green'), | |
| yellow: cssVar('--bolt-elements-terminal-color-yellow'), | |
| blue: cssVar('--bolt-elements-terminal-color-blue'), | |
| magenta: cssVar('--bolt-elements-terminal-color-magenta'), | |
| cyan: cssVar('--bolt-elements-terminal-color-cyan'), | |
| white: cssVar('--bolt-elements-terminal-color-white'), | |
| brightBlack: cssVar('--bolt-elements-terminal-color-brightBlack'), | |
| brightRed: cssVar('--bolt-elements-terminal-color-brightRed'), | |
| brightGreen: cssVar('--bolt-elements-terminal-color-brightGreen'), | |
| brightYellow: cssVar('--bolt-elements-terminal-color-brightYellow'), | |
| brightBlue: cssVar('--bolt-elements-terminal-color-brightBlue'), | |
| brightMagenta: cssVar('--bolt-elements-terminal-color-brightMagenta'), | |
| brightCyan: cssVar('--bolt-elements-terminal-color-brightCyan'), | |
| brightWhite: cssVar('--bolt-elements-terminal-color-brightWhite'), | |
| ...overrides, | |
| }; | |
| } | |