mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-02-01 08:13:37 +00:00
feat: enhance terminal functionality and settings
- Added new endpoints for terminal settings: GET and PUT /settings to retrieve and update terminal configurations. - Implemented session limit checks during session creation, returning a 429 status when the limit is reached. - Introduced a new TerminalSection in settings view for customizing terminal appearance and behavior, including font family, default font size, line height, and screen reader mode. - Added support for new terminal features such as search functionality and improved error handling with a TerminalErrorBoundary component. - Updated terminal layout persistence to include session IDs for reconnection and enhanced terminal state management. - Introduced new keyboard shortcuts for terminal actions, including creating new terminal tabs. - Enhanced UI with scrollbar theming for terminal components.
This commit is contained in:
@@ -30,6 +30,30 @@ export interface TerminalTheme {
|
||||
brightWhite: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Terminal font options for user selection
|
||||
* These are monospace fonts commonly available on different platforms
|
||||
*/
|
||||
export interface TerminalFontOption {
|
||||
value: string;
|
||||
label: string;
|
||||
}
|
||||
|
||||
export const TERMINAL_FONT_OPTIONS: TerminalFontOption[] = [
|
||||
{ value: "Menlo, Monaco, 'Courier New', monospace", label: "Menlo / Monaco" },
|
||||
{ value: "'SF Mono', Menlo, Monaco, monospace", label: "SF Mono" },
|
||||
{ value: "'JetBrains Mono', monospace", label: "JetBrains Mono" },
|
||||
{ value: "'Fira Code', monospace", label: "Fira Code" },
|
||||
{ value: "'Source Code Pro', monospace", label: "Source Code Pro" },
|
||||
{ value: "Consolas, 'Courier New', monospace", label: "Consolas" },
|
||||
{ value: "'Ubuntu Mono', monospace", label: "Ubuntu Mono" },
|
||||
];
|
||||
|
||||
/**
|
||||
* Default terminal font family (first option)
|
||||
*/
|
||||
export const DEFAULT_TERMINAL_FONT = TERMINAL_FONT_OPTIONS[0].value;
|
||||
|
||||
// Dark theme (default)
|
||||
const darkTheme: TerminalTheme = {
|
||||
background: "#0a0a0a",
|
||||
@@ -206,11 +230,11 @@ const tokyonightTheme: TerminalTheme = {
|
||||
brightWhite: "#c0caf5",
|
||||
};
|
||||
|
||||
// Solarized Dark theme
|
||||
// Solarized Dark theme (improved contrast for WCAG compliance)
|
||||
const solarizedTheme: TerminalTheme = {
|
||||
background: "#002b36",
|
||||
foreground: "#839496",
|
||||
cursor: "#839496",
|
||||
foreground: "#93a1a1", // Changed from #839496 (base0) to #93a1a1 (base1) for better contrast
|
||||
cursor: "#93a1a1",
|
||||
cursorAccent: "#002b36",
|
||||
selectionBackground: "#073642",
|
||||
black: "#073642",
|
||||
|
||||
Reference in New Issue
Block a user