mirror of
https://gitea.toothfairyai.com/ToothFairyAI/tf_code.git
synced 2026-03-29 21:33:54 +00:00
feat: themes
This commit is contained in:
parent
7b81c4db73
commit
2ad192a312
@ -10,6 +10,7 @@ import catppuccinFrappe from "./theme/catppuccin-frappe.json" with { type: "json
|
||||
import catppuccinMacchiato from "./theme/catppuccin-macchiato.json" with { type: "json" }
|
||||
import cobalt2 from "./theme/cobalt2.json" with { type: "json" }
|
||||
import cursor from "./theme/cursor.json" with { type: "json" }
|
||||
import toothfairyai from "./theme/toothfairyai.json" with { type: "json" }
|
||||
import dracula from "./theme/dracula.json" with { type: "json" }
|
||||
import everforest from "./theme/everforest.json" with { type: "json" }
|
||||
import flexoki from "./theme/flexoki.json" with { type: "json" }
|
||||
@ -139,6 +140,7 @@ type ThemeJson = {
|
||||
}
|
||||
|
||||
export const DEFAULT_THEMES: Record<string, ThemeJson> = {
|
||||
toothfairyai,
|
||||
aura,
|
||||
ayu,
|
||||
catppuccin,
|
||||
@ -286,7 +288,7 @@ export const { use: useTheme, provider: ThemeProvider } = createSimpleContext({
|
||||
const [store, setStore] = createStore({
|
||||
themes: DEFAULT_THEMES,
|
||||
mode: kv.get("theme_mode", props.mode),
|
||||
active: (config.theme ?? kv.get("theme", "opencode")) as string,
|
||||
active: (config.theme ?? kv.get("theme", "toothfairyai")) as string,
|
||||
ready: false,
|
||||
})
|
||||
|
||||
@ -306,7 +308,7 @@ export const { use: useTheme, provider: ThemeProvider } = createSimpleContext({
|
||||
)
|
||||
})
|
||||
.catch(() => {
|
||||
setStore("active", "opencode")
|
||||
setStore("active", "toothfairyai")
|
||||
})
|
||||
.finally(() => {
|
||||
if (store.active !== "system") {
|
||||
@ -327,7 +329,7 @@ export const { use: useTheme, provider: ThemeProvider } = createSimpleContext({
|
||||
if (store.active === "system") {
|
||||
setStore(
|
||||
produce((draft) => {
|
||||
draft.active = "opencode"
|
||||
draft.active = "toothfairyai"
|
||||
draft.ready = true
|
||||
}),
|
||||
)
|
||||
@ -362,7 +364,7 @@ export const { use: useTheme, provider: ThemeProvider } = createSimpleContext({
|
||||
})
|
||||
|
||||
const values = createMemo(() => {
|
||||
return resolveTheme(store.themes[store.active] ?? store.themes.opencode, store.mode)
|
||||
return resolveTheme(store.themes[store.active] ?? store.themes.toothfairyai, store.mode)
|
||||
})
|
||||
|
||||
createEffect(() => {
|
||||
|
||||
251
packages/tfcode/src/cli/cmd/tui/context/theme/toothfairyai.json
Normal file
251
packages/tfcode/src/cli/cmd/tui/context/theme/toothfairyai.json
Normal file
@ -0,0 +1,251 @@
|
||||
{
|
||||
"$schema": "https://opencode.ai/theme.json",
|
||||
"defs": {
|
||||
"darkBg": "#181818",
|
||||
"darkPanel": "#141414",
|
||||
"darkElement": "#262626",
|
||||
"darkFg": "#e4e4e4",
|
||||
"darkMuted": "#e4e4e45e",
|
||||
"darkBorder": "#e4e4e413",
|
||||
"darkBorderActive": "#e4e4e426",
|
||||
"darkPrimary": "#1db8c6",
|
||||
"darkPrimaryBright": "#29e8f8",
|
||||
"darkPrimaryDim": "#158a95",
|
||||
"darkBlue": "#81a1c1",
|
||||
"darkGreen": "#3fa266",
|
||||
"darkGreenBright": "#70b489",
|
||||
"darkRed": "#e34671",
|
||||
"darkRedBright": "#fc6b83",
|
||||
"darkYellow": "#f1b467",
|
||||
"darkOrange": "#d2943e",
|
||||
"darkPink": "#E394DC",
|
||||
"darkPurple": "#AAA0FA",
|
||||
"darkTeal": "#1db8c6",
|
||||
"darkSyntaxYellow": "#F8C762",
|
||||
"darkSyntaxOrange": "#EFB080",
|
||||
"darkSyntaxGreen": "#A8CC7C",
|
||||
"darkSyntaxBlue": "#87C3FF",
|
||||
"lightBg": "#fcfcfc",
|
||||
"lightPanel": "#f3f3f3",
|
||||
"lightElement": "#ededed",
|
||||
"lightFg": "#141414",
|
||||
"lightMuted": "#141414ad",
|
||||
"lightBorder": "#14141413",
|
||||
"lightPrimary": "#1db8c6",
|
||||
"lightPrimaryDim": "#158a95",
|
||||
"lightBlue": "#3c7cab",
|
||||
"lightBlueDark": "#206595",
|
||||
"lightGreen": "#1f8a65",
|
||||
"lightGreenBright": "#55a583",
|
||||
"lightRed": "#cf2d56",
|
||||
"lightRedBright": "#e75e78",
|
||||
"lightOrange": "#db704b",
|
||||
"lightYellow": "#c08532",
|
||||
"lightPurple": "#9e94d5",
|
||||
"lightPurpleDark": "#6049b3",
|
||||
"lightPink": "#b8448b",
|
||||
"lightMagenta": "#b3003f"
|
||||
},
|
||||
"theme": {
|
||||
"primary": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightPrimary"
|
||||
},
|
||||
"secondary": {
|
||||
"dark": "darkBlue",
|
||||
"light": "lightBlue"
|
||||
},
|
||||
"accent": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightPrimary"
|
||||
},
|
||||
"error": {
|
||||
"dark": "darkRed",
|
||||
"light": "lightRed"
|
||||
},
|
||||
"warning": {
|
||||
"dark": "darkYellow",
|
||||
"light": "lightOrange"
|
||||
},
|
||||
"success": {
|
||||
"dark": "darkGreen",
|
||||
"light": "lightGreen"
|
||||
},
|
||||
"info": {
|
||||
"dark": "darkBlue",
|
||||
"light": "lightBlue"
|
||||
},
|
||||
"text": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"textMuted": {
|
||||
"dark": "darkMuted",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"background": {
|
||||
"dark": "darkBg",
|
||||
"light": "lightBg"
|
||||
},
|
||||
"backgroundPanel": {
|
||||
"dark": "darkPanel",
|
||||
"light": "lightPanel"
|
||||
},
|
||||
"backgroundElement": {
|
||||
"dark": "darkElement",
|
||||
"light": "lightElement"
|
||||
},
|
||||
"border": {
|
||||
"dark": "darkBorder",
|
||||
"light": "lightBorder"
|
||||
},
|
||||
"borderActive": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightPrimary"
|
||||
},
|
||||
"borderSubtle": {
|
||||
"dark": "#0f0f0f",
|
||||
"light": "#e0e0e0"
|
||||
},
|
||||
"diffAdded": {
|
||||
"dark": "darkGreen",
|
||||
"light": "lightGreen"
|
||||
},
|
||||
"diffRemoved": {
|
||||
"dark": "darkRed",
|
||||
"light": "lightRed"
|
||||
},
|
||||
"diffContext": {
|
||||
"dark": "darkMuted",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"diffHunkHeader": {
|
||||
"dark": "darkMuted",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"diffHighlightAdded": {
|
||||
"dark": "darkGreenBright",
|
||||
"light": "lightGreenBright"
|
||||
},
|
||||
"diffHighlightRemoved": {
|
||||
"dark": "darkRedBright",
|
||||
"light": "lightRedBright"
|
||||
},
|
||||
"diffAddedBg": {
|
||||
"dark": "#3fa26633",
|
||||
"light": "#1f8a651f"
|
||||
},
|
||||
"diffRemovedBg": {
|
||||
"dark": "#b8004933",
|
||||
"light": "#cf2d5614"
|
||||
},
|
||||
"diffContextBg": {
|
||||
"dark": "darkPanel",
|
||||
"light": "lightPanel"
|
||||
},
|
||||
"diffLineNumber": {
|
||||
"dark": "#e4e4e442",
|
||||
"light": "#1414147a"
|
||||
},
|
||||
"diffAddedLineNumberBg": {
|
||||
"dark": "#3fa26633",
|
||||
"light": "#1f8a651f"
|
||||
},
|
||||
"diffRemovedLineNumberBg": {
|
||||
"dark": "#b8004933",
|
||||
"light": "#cf2d5614"
|
||||
},
|
||||
"markdownText": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"markdownHeading": {
|
||||
"dark": "darkPurple",
|
||||
"light": "lightBlueDark"
|
||||
},
|
||||
"markdownLink": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightPrimary"
|
||||
},
|
||||
"markdownLinkText": {
|
||||
"dark": "darkBlue",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"markdownCode": {
|
||||
"dark": "darkPink",
|
||||
"light": "lightGreen"
|
||||
},
|
||||
"markdownBlockQuote": {
|
||||
"dark": "darkMuted",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"markdownEmph": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"markdownStrong": {
|
||||
"dark": "darkSyntaxYellow",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"markdownHorizontalRule": {
|
||||
"dark": "darkMuted",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"markdownListItem": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"markdownListEnumeration": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"markdownImage": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightBlueDark"
|
||||
},
|
||||
"markdownImageText": {
|
||||
"dark": "darkBlue",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"markdownCodeBlock": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"syntaxComment": {
|
||||
"dark": "darkMuted",
|
||||
"light": "lightMuted"
|
||||
},
|
||||
"syntaxKeyword": {
|
||||
"dark": "darkPrimary",
|
||||
"light": "lightMagenta"
|
||||
},
|
||||
"syntaxFunction": {
|
||||
"dark": "darkSyntaxOrange",
|
||||
"light": "lightOrange"
|
||||
},
|
||||
"syntaxVariable": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"syntaxString": {
|
||||
"dark": "darkPink",
|
||||
"light": "lightPurple"
|
||||
},
|
||||
"syntaxNumber": {
|
||||
"dark": "darkSyntaxYellow",
|
||||
"light": "lightPink"
|
||||
},
|
||||
"syntaxType": {
|
||||
"dark": "darkSyntaxOrange",
|
||||
"light": "lightBlueDark"
|
||||
},
|
||||
"syntaxOperator": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
},
|
||||
"syntaxPunctuation": {
|
||||
"dark": "darkFg",
|
||||
"light": "lightFg"
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user