* feat: refactored sessions sidebar to be workspaces centric - Add createWorktreeOnly helper and status checks - Add createWorktreeOnly to create a standalone worktree for the active project - Show error toasts when no active project or not a Git repository - Refresh session list and show success toast with created worktree details * feat: show attention indicator and status marker in SessionSidebar - Show unread attention indicator for sessions with pending updates - Display status marker combining streaming and unread indicators in the session row - Introduce attention diamond pulse animation and associated CSS for the new indicator * fix(SessionSidebar): reserve header actions space when repo state is known * chore(doc): add PR status colors to custom themes
184 lines
4.9 KiB
JSON
184 lines
4.9 KiB
JSON
{
|
|
"metadata": {
|
|
"id": "mono-dark",
|
|
"name": "Mono",
|
|
"description": "A pure monochromatic theme - dark variant with shades of grey",
|
|
"version": "1.0.0",
|
|
"variant": "dark",
|
|
"tags": ["dark", "monochrome", "minimal", "grayscale"]
|
|
},
|
|
"colors": {
|
|
"primary": {
|
|
"base": "#FFFFFF",
|
|
"hover": "#E5E5E5",
|
|
"active": "#CCCCCC",
|
|
"foreground": "#000000",
|
|
"muted": "#FFFFFF80",
|
|
"emphasis": "#FFFFFF"
|
|
},
|
|
"surface": {
|
|
"background": "#000000",
|
|
"foreground": "#E5E5E5",
|
|
"muted": "#0A0A0A",
|
|
"mutedForeground": "#808080",
|
|
"elevated": "#141414",
|
|
"elevatedForeground": "#E5E5E5",
|
|
"overlay": "#00000080",
|
|
"subtle": "#1A1A1A"
|
|
},
|
|
"interactive": {
|
|
"border": "#222222",
|
|
"borderHover": "#333333",
|
|
"borderFocus": "#FFFFFF",
|
|
"selection": "#ffffff1f",
|
|
"selectionForeground": "#E5E5E5",
|
|
"focus": "#FFFFFF",
|
|
"focusRing": "#FFFFFF50",
|
|
"cursor": "#E5E5E5",
|
|
"hover": "#ffffff1f",
|
|
"active": "#ffffff1f"
|
|
},
|
|
"status": {
|
|
"error": "#666666",
|
|
"errorForeground": "#000000",
|
|
"errorBackground": "#ffffff10",
|
|
"errorBorder": "#ffffff20",
|
|
"warning": "#999999",
|
|
"warningForeground": "#000000",
|
|
"warningBackground": "#ffffff12",
|
|
"warningBorder": "#ffffff25",
|
|
"success": "#E5E5E5",
|
|
"successForeground": "#000000",
|
|
"successBackground": "#ffffff18",
|
|
"successBorder": "#ffffff30",
|
|
"info": "#A6A6A6",
|
|
"infoForeground": "#000000",
|
|
"infoBackground": "#ffffff14",
|
|
"infoBorder": "#ffffff28"
|
|
},
|
|
"pr": {
|
|
"open": "#E5E5E5",
|
|
"draft": "#B3B3B3",
|
|
"blocked": "#999999",
|
|
"merged": "#CCCCCC",
|
|
"closed": "#666666"
|
|
},
|
|
"syntax": {
|
|
"base": {
|
|
"background": "#0A0A0A",
|
|
"foreground": "#E5E5E5",
|
|
"comment": "#666666",
|
|
"keyword": "#FFFFFF",
|
|
"string": "#B3B3B3",
|
|
"number": "#999999",
|
|
"function": "#E5E5E5",
|
|
"variable": "#CCCCCC",
|
|
"type": "#D9D9D9",
|
|
"operator": "#808080"
|
|
},
|
|
"tokens": {
|
|
"commentDoc": "#595959",
|
|
"stringEscape": "#E5E5E5",
|
|
"keywordImport": "#FFFFFF",
|
|
"storageModifier": "#E5E5E5",
|
|
"functionCall": "#D9D9D9",
|
|
"method": "#CCCCCC",
|
|
"variableProperty": "#B3B3B3",
|
|
"variableOther": "#CCCCCC",
|
|
"variableGlobal": "#999999",
|
|
"variableLocal": "#1A1A1A",
|
|
"parameter": "#CCCCCC",
|
|
"constant": "#E5E5E5",
|
|
"class": "#FFFFFF",
|
|
"className": "#FFFFFF",
|
|
"interface": "#D9D9D9",
|
|
"struct": "#E5E5E5",
|
|
"enum": "#E5E5E5",
|
|
"typeParameter": "#D9D9D9",
|
|
"namespace": "#CCCCCC",
|
|
"module": "#B3B3B3",
|
|
"tag": "#E5E5E5",
|
|
"jsxTag": "#FFFFFF",
|
|
"tagAttribute": "#B3B3B3",
|
|
"tagAttributeValue": "#999999",
|
|
"boolean": "#CCCCCC",
|
|
"decorator": "#999999",
|
|
"label": "#808080",
|
|
"punctuation": "#666666",
|
|
"macro": "#D9D9D9",
|
|
"preprocessor": "#B3B3B3",
|
|
"regex": "#A6A6A6",
|
|
"url": "#CCCCCC",
|
|
"key": "#E5E5E5",
|
|
"exception": "#999999"
|
|
},
|
|
"highlights": {
|
|
"diffAdded": "#E5E5E5",
|
|
"diffAddedBackground": "#ffffff18",
|
|
"diffRemoved": "#666666",
|
|
"diffRemovedBackground": "#ffffff0d",
|
|
"diffModified": "#B3B3B3",
|
|
"diffModifiedBackground": "#ffffff12",
|
|
"lineNumber": "#404040",
|
|
"lineNumberActive": "#E5E5E5"
|
|
}
|
|
},
|
|
"markdown": {
|
|
"heading1": "#FFFFFF",
|
|
"heading2": "#F2F2F2",
|
|
"heading3": "#E5E5E5",
|
|
"heading4": "#D9D9D9",
|
|
"link": "#CCCCCC",
|
|
"linkHover": "#FFFFFF",
|
|
"inlineCode": "#B3B3B3",
|
|
"inlineCodeBackground": "#1A1A1A",
|
|
"blockquote": "#808080",
|
|
"blockquoteBorder": "#333333",
|
|
"listMarker": "#99999999"
|
|
},
|
|
"chat": {
|
|
"userMessage": "#E5E5E5",
|
|
"userMessageBackground": "#1A1A1A",
|
|
"assistantMessage": "#E5E5E5",
|
|
"assistantMessageBackground": "#000000",
|
|
"timestamp": "#808080",
|
|
"divider": "#333333"
|
|
},
|
|
"tools": {
|
|
"background": "#0A0A0A50",
|
|
"border": "#4040409d",
|
|
"headerHover": "#33333350",
|
|
"icon": "#A6A6A6",
|
|
"title": "#E5E5E5",
|
|
"description": "#808080",
|
|
"edit": {
|
|
"added": "#E5E5E5",
|
|
"addedBackground": "#ffffff20",
|
|
"removed": "#666666",
|
|
"removedBackground": "#ffffff10",
|
|
"lineNumber": "#404040"
|
|
}
|
|
}
|
|
},
|
|
"config": {
|
|
"fonts": {
|
|
"sans": "\"IBM Plex Mono\", monospace",
|
|
"mono": "\"IBM Plex Mono\", monospace",
|
|
"heading": "\"IBM Plex Mono\", monospace"
|
|
},
|
|
"radius": {
|
|
"none": "0",
|
|
"sm": "0.125rem",
|
|
"md": "0.375rem",
|
|
"lg": "0.5rem",
|
|
"xl": "0.75rem",
|
|
"full": "9999px"
|
|
},
|
|
"transitions": {
|
|
"fast": "150ms ease",
|
|
"normal": "250ms ease",
|
|
"slow": "350ms ease"
|
|
}
|
|
}
|
|
}
|