feat(theme): add OpenChamber hybrid theme and make it the default

- Add OpenChamber brand theme (dark+light): Vitesse syntax over OpenCode-deep neutrals with Flexoki accents, harmonized in OKLCH

- Add scripts/harmonize-theme.mjs: align accent saturation/lightness and boost syntax chroma via OKLCH

- Set default theme to OpenChamber (was Flexoki)

- Rename fields-of-the-shire off the openchamber-* id; keep it as a normal preset

- Remove OpenCode and OC-2 ports and all disabled theme JSON definitions

- Make panel/header/sidebar borders opaque and theme-driven; global default border now uses --border instead of hardcoded rgba
This commit is contained in:
Bohdan Triapitsyn
2026-07-30 17:43:39 +03:00
parent 74e7fe0707
commit 83a66d0a6d
65 changed files with 727 additions and 8686 deletions
+4 -44
View File
@@ -1,8 +1,6 @@
import type { Theme } from '@/types/theme';
import { withPrColors } from './prColors';
// import amoled_dark_Raw from './amoled-dark.json';
// import amoled_light_Raw from './amoled-light.json';
import aura_dark_Raw from './aura-dark.json';
import aura_light_Raw from './aura-light.json';
import ayu_dark_Raw from './ayu-dark.json';
@@ -11,48 +9,30 @@ import carbonfox_dark_Raw from './carbonfox-dark.json';
import carbonfox_light_Raw from './carbonfox-light.json';
import catppuccin_dark_Raw from './catppuccin-dark.json';
import catppuccin_light_Raw from './catppuccin-light.json';
// import cursor_dark_Raw from './cursor-dark.json';
// import cursor_light_Raw from './cursor-light.json';
import dracula_dark_Raw from './dracula-dark.json';
import dracula_light_Raw from './dracula-light.json';
// import github_dark_Raw from './github-dark.json';
// import github_light_Raw from './github-light.json';
import gruvbox_dark_Raw from './gruvbox-dark.json';
import gruvbox_light_Raw from './gruvbox-light.json';
import jetbrains_dark_Raw from './jetbrains-dark.json';
import jetbrains_light_Raw from './jetbrains-light.json';
import kanagawa_dark_Raw from './kanagawa-dark.json';
import kanagawa_light_Raw from './kanagawa-light.json';
// import lucent_orng_dark_Raw from './lucent-orng-dark.json';
// import lucent_orng_light_Raw from './lucent-orng-light.json';
import monokai_dark_Raw from './monokai-dark.json';
import monokai_light_Raw from './monokai-light.json';
import nightowl_dark_Raw from './nightowl-dark.json';
import nightowl_light_Raw from './nightowl-light.json';
import nord_dark_Raw from './nord-dark.json';
import nord_light_Raw from './nord-light.json';
// import oc_2_dark_Raw from './oc-2-dark.json';
// import oc_2_light_Raw from './oc-2-light.json';
import openchamber_dark_Raw from './fields-of-the-shire-dark.json';
import openchamber_light_Raw from './fields-of-the-shire-light.json';
import fields_of_the_shire_dark_Raw from './fields-of-the-shire-dark.json';
import fields_of_the_shire_light_Raw from './fields-of-the-shire-light.json';
import onedarkpro_dark_Raw from './onedarkpro-dark.json';
import onedarkpro_light_Raw from './onedarkpro-light.json';
// import orng_dark_Raw from './orng-dark.json';
// import orng_light_Raw from './orng-light.json';
// import rosepine_dark_Raw from './rosepine-dark.json';
// import rosepine_light_Raw from './rosepine-light.json';
// import shadesofpurple_dark_Raw from './shadesofpurple-dark.json';
// import shadesofpurple_light_Raw from './shadesofpurple-light.json';
import solarized_dark_Raw from './solarized-dark.json';
import solarized_light_Raw from './solarized-light.json';
import tokyonight_dark_Raw from './tokyonight-dark.json';
import tokyonight_light_Raw from './tokyonight-light.json';
// import vercel_dark_Raw from './vercel-dark.json';
// import vercel_light_Raw from './vercel-light.json';
import vesper_dark_Raw from './vesper-dark.json';
import vesper_light_Raw from './vesper-light.json';
// import zenburn_dark_Raw from './zenburn-dark.json';
// import zenburn_light_Raw from './zenburn-light.json';
import mono_plus_dark_Raw from './mono-plus-dark.json';
import mono_plus_light_Raw from './mono-plus-light.json';
import mono_dark_Raw from './mono-dark.json';
@@ -61,10 +41,8 @@ import vitesse_dark_dark_Raw from './vitesse-dark-dark.json';
import vitesse_light_light_Raw from './vitesse-light-light.json';
export const presetThemes: Theme[] = [
openchamber_dark_Raw as Theme,
openchamber_light_Raw as Theme,
// amoled_dark_Raw as Theme,
// amoled_light_Raw as Theme,
fields_of_the_shire_dark_Raw as Theme,
fields_of_the_shire_light_Raw as Theme,
aura_dark_Raw as Theme,
aura_light_Raw as Theme,
ayu_dark_Raw as Theme,
@@ -73,46 +51,28 @@ export const presetThemes: Theme[] = [
carbonfox_light_Raw as Theme,
catppuccin_dark_Raw as Theme,
catppuccin_light_Raw as Theme,
// cursor_dark_Raw as Theme,
// cursor_light_Raw as Theme,
dracula_dark_Raw as Theme,
dracula_light_Raw as Theme,
// github_dark_Raw as Theme,
// github_light_Raw as Theme,
gruvbox_dark_Raw as Theme,
gruvbox_light_Raw as Theme,
jetbrains_dark_Raw as Theme,
jetbrains_light_Raw as Theme,
kanagawa_dark_Raw as Theme,
kanagawa_light_Raw as Theme,
// lucent_orng_dark_Raw as Theme,
// lucent_orng_light_Raw as Theme,
monokai_dark_Raw as Theme,
monokai_light_Raw as Theme,
nightowl_dark_Raw as Theme,
nightowl_light_Raw as Theme,
nord_dark_Raw as Theme,
nord_light_Raw as Theme,
// oc_2_dark_Raw as Theme,
// oc_2_light_Raw as Theme,
onedarkpro_dark_Raw as Theme,
onedarkpro_light_Raw as Theme,
// orng_dark_Raw as Theme,
// orng_light_Raw as Theme,
// rosepine_dark_Raw as Theme,
// rosepine_light_Raw as Theme,
// shadesofpurple_dark_Raw as Theme,
// shadesofpurple_light_Raw as Theme,
solarized_dark_Raw as Theme,
solarized_light_Raw as Theme,
tokyonight_dark_Raw as Theme,
tokyonight_light_Raw as Theme,
// vercel_dark_Raw as Theme,
// vercel_light_Raw as Theme,
vesper_dark_Raw as Theme,
vesper_light_Raw as Theme,
// zenburn_dark_Raw as Theme,
// zenburn_light_Raw as Theme,
mono_plus_dark_Raw as Theme,
mono_plus_light_Raw as Theme,
mono_dark_Raw as Theme,