diff --git a/packages/ui/src/theme/default-themes.ts b/packages/ui/src/theme/default-themes.ts index c14198955812..ef1776449e4c 100644 --- a/packages/ui/src/theme/default-themes.ts +++ b/packages/ui/src/theme/default-themes.ts @@ -35,6 +35,7 @@ import synthwave84ThemeJson from "./themes/synthwave84.json" import tokyonightThemeJson from "./themes/tokyonight.json" import vercelThemeJson from "./themes/vercel.json" import vesperThemeJson from "./themes/vesper.json" +import abyssThemeJson from "./themes/abyss.json" import zenburnThemeJson from "./themes/zenburn.json" export const oc2Theme = oc2ThemeJson as DesktopTheme @@ -73,10 +74,12 @@ export const synthwave84Theme = synthwave84ThemeJson as DesktopTheme export const tokyonightTheme = tokyonightThemeJson as DesktopTheme export const vercelTheme = vercelThemeJson as DesktopTheme export const vesperTheme = vesperThemeJson as DesktopTheme +export const abyssTheme = abyssThemeJson as DesktopTheme export const zenburnTheme = zenburnThemeJson as DesktopTheme export const DEFAULT_THEMES: Record = { "oc-2": oc2Theme, + abyss: abyssTheme, amoled: amoledTheme, aura: auraTheme, ayu: ayuTheme, diff --git a/packages/ui/src/theme/themes/abyss.json b/packages/ui/src/theme/themes/abyss.json new file mode 100644 index 000000000000..2831c836f927 --- /dev/null +++ b/packages/ui/src/theme/themes/abyss.json @@ -0,0 +1,104 @@ +{ + "$schema": "https://opencode.ai/desktop-theme.json", + "name": "Abyss", + "id": "abyss", + "light": { + "seeds": { + "primary": "#003366", + "neutral": "#e1e5f2", + "interactive": "#003366", + "success": "#1a7a33", + "warning": "#a67c00", + "error": "#b32424", + "info": "#0055aa", + "diffAdd": "#3d8a5a", + "diffDelete": "#c94040" + }, + "overrides": { + "background-base": "#e1e5f2", + "background-weak": "#d0d7e5", + "background-strong": "#ebf0f7", + "background-stronger": "#f1f4f9", + "surface-base": "#dfebff", + "surface-base-hover": "#a9d0f6", + "surface-base-active": "#b6d0e9", + "surface-inset-base": "#dfebff", + "surface-raised-base": "#e3eeff", + "surface-raised-base-hover": "#a9d0f6", + "surface-raised-strong": "#aec6de", + "surface-raised-stronger": "#004284", + "surface-float-base": "#728191", + "surface-diff-hidden-base": "#71bcff", + "text-base": "#001a33", + "text-weak": "#4d6680", + "text-strong": "#000d1a", + "border-base": "#90a0b9", + "border-hover": "#aec6de", + "border-active": "#004284", + "border-selected": "#036", + "border-disabled": "#f2f5fa", + "border-focus": "#0061bf", + "border-strong-base": "#667fa1", + "diff-add-base": "#47a17a", + "diff-delete-base": "#d05a98", + "syntax-type": "#a67c00", + "syntax-regexp": "#b92536", + "syntax-primitive": "#b32424", + "syntax-property": "#003366", + "syntax-constant": "#0055aa", + "syntax-info": "#0055aa", + "markdown-code": "#1a7a33", + "markdown-block-quote": "#0061bf" + } + }, + "dark": { + "seeds": { + "primary": "#6688cc", + "neutral": "#000c18", + "interactive": "#6688cc", + "success": "#22aa44", + "warning": "#ddbb88", + "error": "#f14c4c", + "info": "#6688cc", + "diffAdd": "#1a7a33", + "diffDelete": "#b32424" + }, + "overrides": { + "background-base": "#000c18", + "background-weak": "#00080f", + "background-strong": "#001221", + "background-stronger": "#001629", + "surface-base": "#132239", + "surface-base-hover": "#0e192a", + "surface-base-active": "#002028", + "surface-inset-base": "#0a0f1f", + "surface-raised-base": "#0a0f1f", + "surface-raised-base-hover": "#172945", + "surface-raised-strong": "#132139", + "surface-raised-stronger": "#698bcd", + "surface-float-base": "#0e192a", + "surface-raised-stronger-non-alpha": "#132039", + "surface-diff-hidden-base": "#80a2d5", + "text-base": "#8ca6d9", + "text-weak": "#7d8dc9", + "text-strong": "#99aabb", + "border-base": "#2b5277", + "border-hover": "#7294d0", + "border-active": "#698bcd", + "border-selected": "#68c", + "border-disabled": "#001b33", + "border-focus": "#89a5d8", + "border-strong-base": "#386a9a", + "diff-add-base": "#209759", + "diff-delete-base": "#d02a85", + "syntax-type": "#7594d1", + "syntax-regexp": "#f4758c", + "syntax-primitive": "#ddbb88", + "syntax-property": "#88a3d7", + "syntax-constant": "#ddbb88", + "syntax-info": "#7594d1", + "markdown-code": "#22aa44", + "markdown-block-quote": "#6c8ece" + } + } +}