summaryrefslogtreecommitdiffhomepage
path: root/packages/desktop/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/desktop/src')
-rw-r--r--packages/desktop/src/components/theme.json558
-rw-r--r--packages/desktop/src/index.tsx36
2 files changed, 17 insertions, 577 deletions
diff --git a/packages/desktop/src/components/theme.json b/packages/desktop/src/components/theme.json
deleted file mode 100644
index 36a4d020d..000000000
--- a/packages/desktop/src/components/theme.json
+++ /dev/null
@@ -1,558 +0,0 @@
-{
- "colors": {
- "actionBar.toggledBackground": "var(--surface-raised-base)",
- "activityBarBadge.background": "var(--surface-brand-base)",
- "checkbox.border": "var(--border-base)",
- "editor.background": "transparent",
- "editor.foreground": "var(--text-base)",
- "editor.inactiveSelectionBackground": "var(--surface-raised-base)",
- "editor.selectionHighlightBackground": "var(--border-active)",
- "editorIndentGuide.activeBackground1": "var(--border-weak-base)",
- "editorIndentGuide.background1": "var(--border-weak-base)",
- "input.placeholderForeground": "var(--text-weak)",
- "list.activeSelectionIconForeground": "var(--text-base)",
- "list.dropBackground": "var(--surface-raised-base)",
- "menu.background": "var(--surface-base)",
- "menu.border": "var(--border-base)",
- "menu.foreground": "var(--text-base)",
- "menu.selectionBackground": "var(--surface-interactive-base)",
- "menu.separatorBackground": "var(--border-base)",
- "ports.iconRunningProcessForeground": "var(--icon-success-base)",
- "sideBarSectionHeader.background": "transparent",
- "sideBarSectionHeader.border": "var(--border-weak-base)",
- "sideBarTitle.foreground": "var(--text-weak)",
- "statusBarItem.remoteBackground": "var(--surface-success-base)",
- "statusBarItem.remoteForeground": "var(--text-base)",
- "tab.lastPinnedBorder": "var(--border-weak-base)",
- "tab.selectedBackground": "var(--surface-raised-base)",
- "tab.selectedForeground": "var(--text-weak)",
- "terminal.inactiveSelectionBackground": "var(--surface-raised-base)",
- "widget.border": "var(--border-base)"
- },
- "displayName": "opencode",
- "name": "opencode",
- "semanticHighlighting": true,
- "semanticTokenColors": {
- "customLiteral": "var(--syntax-function)",
- "newOperator": "var(--syntax-operator)",
- "numberLiteral": "var(--syntax-number)",
- "stringLiteral": "var(--syntax-string)"
- },
- "tokenColors": [
- {
- "scope": [
- "meta.embedded",
- "source.groovy.embedded",
- "string meta.image.inline.markdown",
- "variable.legacy.builtin.python"
- ],
- "settings": {
- "foreground": "var(--text-base)"
- }
- },
- {
- "scope": "emphasis",
- "settings": {
- "fontStyle": "italic"
- }
- },
- {
- "scope": "strong",
- "settings": {
- "fontStyle": "bold"
- }
- },
- {
- "scope": "header",
- "settings": {
- "foreground": "var(--markdown-heading)"
- }
- },
- {
- "scope": "comment",
- "settings": {
- "foreground": "var(--syntax-comment)"
- }
- },
- {
- "scope": "constant.language",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": [
- "constant.numeric",
- "variable.other.enummember",
- "keyword.operator.plus.exponent",
- "keyword.operator.minus.exponent"
- ],
- "settings": {
- "foreground": "var(--syntax-number)"
- }
- },
- {
- "scope": "constant.regexp",
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": "entity.name.tag",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": ["entity.name.tag.css", "entity.name.tag.less"],
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": "entity.other.attribute-name",
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": [
- "entity.other.attribute-name.class.css",
- "source.css entity.other.attribute-name.class",
- "entity.other.attribute-name.id.css",
- "entity.other.attribute-name.parent-selector.css",
- "entity.other.attribute-name.parent.less",
- "source.css entity.other.attribute-name.pseudo-class",
- "entity.other.attribute-name.pseudo-element.css",
- "source.css.less entity.other.attribute-name.id",
- "entity.other.attribute-name.scss"
- ],
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": "invalid",
- "settings": {
- "foreground": "var(--syntax-critical)"
- }
- },
- {
- "scope": "markup.underline",
- "settings": {
- "fontStyle": "underline"
- }
- },
- {
- "scope": "markup.bold",
- "settings": {
- "fontStyle": "bold",
- "foreground": "var(--markdown-strong)"
- }
- },
- {
- "scope": "markup.heading",
- "settings": {
- "fontStyle": "bold",
- "foreground": "var(--theme-markdown-heading)"
- }
- },
- {
- "scope": "markup.italic",
- "settings": {
- "fontStyle": "italic"
- }
- },
- {
- "scope": "markup.strikethrough",
- "settings": {
- "fontStyle": "strikethrough"
- }
- },
- {
- "scope": "markup.inserted",
- "settings": {
- "foreground": "var(--text-diff-add-base)"
- }
- },
- {
- "scope": "markup.deleted",
- "settings": {
- "foreground": "var(--text-diff-delete-base)"
- }
- },
- {
- "scope": "markup.changed",
- "settings": {
- "foreground": "var(--text-base)"
- }
- },
- {
- "scope": "punctuation.definition.quote.begin.markdown",
- "settings": {
- "foreground": "var(--markdown-block-quote)"
- }
- },
- {
- "scope": "punctuation.definition.list.begin.markdown",
- "settings": {
- "foreground": "var(--markdown-list-enumeration)"
- }
- },
- {
- "scope": "markup.inline.raw",
- "settings": {
- "foreground": "var(--markdown-code)"
- }
- },
- {
- "scope": "punctuation.definition.tag",
- "settings": {
- "foreground": "var(--syntax-punctuation)"
- }
- },
- {
- "scope": ["meta.preprocessor", "entity.name.function.preprocessor"],
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "meta.preprocessor.string",
- "settings": {
- "foreground": "var(--syntax-string)"
- }
- },
- {
- "scope": "meta.preprocessor.numeric",
- "settings": {
- "foreground": "var(--syntax-number)"
- }
- },
- {
- "scope": "meta.structure.dictionary.key.python",
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": "meta.diff.header",
- "settings": {
- "foreground": "var(--text-weak)"
- }
- },
- {
- "scope": "storage",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "storage.type",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": ["storage.modifier", "keyword.operator.noexcept"],
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": ["string", "meta.embedded.assembly"],
- "settings": {
- "foreground": "var(--syntax-string)"
- }
- },
- {
- "scope": "string.tag",
- "settings": {
- "foreground": "var(--syntax-string)"
- }
- },
- {
- "scope": "string.value",
- "settings": {
- "foreground": "var(--syntax-string)"
- }
- },
- {
- "scope": "string.regexp",
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": [
- "punctuation.definition.template-expression.begin",
- "punctuation.definition.template-expression.end",
- "punctuation.section.embedded"
- ],
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": ["meta.template.expression"],
- "settings": {
- "foreground": "var(--text-base)"
- }
- },
- {
- "scope": [
- "support.type.vendored.property-name",
- "support.type.property-name",
- "source.css variable",
- "source.coffee.embedded"
- ],
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": "keyword",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "keyword.control",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "keyword.operator",
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": [
- "keyword.operator.new",
- "keyword.operator.expression",
- "keyword.operator.cast",
- "keyword.operator.sizeof",
- "keyword.operator.alignof",
- "keyword.operator.typeid",
- "keyword.operator.alignas",
- "keyword.operator.instanceof",
- "keyword.operator.logical.python",
- "keyword.operator.wordlike"
- ],
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "keyword.other.unit",
- "settings": {
- "foreground": "var(--syntax-number)"
- }
- },
- {
- "scope": ["punctuation.section.embedded.begin.php", "punctuation.section.embedded.end.php"],
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "support.function.git-rebase",
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": "constant.sha.git-rebase",
- "settings": {
- "foreground": "var(--syntax-number)"
- }
- },
- {
- "scope": ["storage.modifier.import.java", "variable.language.wildcard.java", "storage.modifier.package.java"],
- "settings": {
- "foreground": "var(--text-base)"
- }
- },
- {
- "scope": "variable.language",
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": [
- "entity.name.function",
- "support.function",
- "support.constant.handlebars",
- "source.powershell variable.other.member",
- "entity.name.operator.custom-literal"
- ],
- "settings": {
- "foreground": "var(--syntax-function)"
- }
- },
- {
- "scope": [
- "support.class",
- "support.type",
- "entity.name.type",
- "entity.name.namespace",
- "entity.other.attribute",
- "entity.name.scope-resolution",
- "entity.name.class",
- "storage.type.numeric.go",
- "storage.type.byte.go",
- "storage.type.boolean.go",
- "storage.type.string.go",
- "storage.type.uintptr.go",
- "storage.type.error.go",
- "storage.type.rune.go",
- "storage.type.cs",
- "storage.type.generic.cs",
- "storage.type.modifier.cs",
- "storage.type.variable.cs",
- "storage.type.annotation.java",
- "storage.type.generic.java",
- "storage.type.java",
- "storage.type.object.array.java",
- "storage.type.primitive.array.java",
- "storage.type.primitive.java",
- "storage.type.token.java",
- "storage.type.groovy",
- "storage.type.annotation.groovy",
- "storage.type.parameters.groovy",
- "storage.type.generic.groovy",
- "storage.type.object.array.groovy",
- "storage.type.primitive.array.groovy",
- "storage.type.primitive.groovy"
- ],
- "settings": {
- "foreground": "var(--syntax-type)"
- }
- },
- {
- "scope": [
- "meta.type.cast.expr",
- "meta.type.new.expr",
- "support.constant.math",
- "support.constant.dom",
- "support.constant.json",
- "entity.other.inherited-class",
- "punctuation.separator.namespace.ruby"
- ],
- "settings": {
- "foreground": "var(--syntax-type)"
- }
- },
- {
- "scope": [
- "keyword.control",
- "source.cpp keyword.operator.new",
- "keyword.operator.delete",
- "keyword.other.using",
- "keyword.other.directive.using",
- "keyword.other.operator",
- "entity.name.operator"
- ],
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": [
- "variable",
- "meta.definition.variable.name",
- "support.variable",
- "entity.name.variable",
- "constant.other.placeholder"
- ],
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": ["variable.other.constant", "variable.other.enummember"],
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": ["meta.object-literal.key"],
- "settings": {
- "foreground": "var(--syntax-variable)"
- }
- },
- {
- "scope": [
- "support.constant.property-value",
- "support.constant.font-name",
- "support.constant.media-type",
- "support.constant.media",
- "constant.other.color.rgb-value",
- "constant.other.rgb-value",
- "support.constant.color"
- ],
- "settings": {
- "foreground": "var(--syntax-string)"
- }
- },
- {
- "scope": [
- "punctuation.definition.group.regexp",
- "punctuation.definition.group.assertion.regexp",
- "punctuation.definition.character-class.regexp",
- "punctuation.character.set.begin.regexp",
- "punctuation.character.set.end.regexp",
- "keyword.operator.negation.regexp",
- "support.other.parenthesis.regexp"
- ],
- "settings": {
- "foreground": "var(--syntax-string)"
- }
- },
- {
- "scope": [
- "constant.character.character-class.regexp",
- "constant.other.character-class.set.regexp",
- "constant.other.character-class.regexp",
- "constant.character.set.regexp"
- ],
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": ["keyword.operator.or.regexp", "keyword.control.anchor.regexp"],
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": "keyword.operator.quantifier.regexp",
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": ["constant.character", "constant.other.option"],
- "settings": {
- "foreground": "var(--syntax-keyword)"
- }
- },
- {
- "scope": "constant.character.escape",
- "settings": {
- "foreground": "var(--syntax-operator)"
- }
- },
- {
- "scope": "entity.name.label",
- "settings": {
- "foreground": "var(--text-weak)"
- }
- }
- ],
- "type": "dark"
-}
diff --git a/packages/desktop/src/index.tsx b/packages/desktop/src/index.tsx
index 9d402138d..63d96ae84 100644
--- a/packages/desktop/src/index.tsx
+++ b/packages/desktop/src/index.tsx
@@ -3,7 +3,7 @@ import "@/index.css"
import { render } from "solid-js/web"
import { Router, Route } from "@solidjs/router"
import { MetaProvider } from "@solidjs/meta"
-import { Fonts, ShikiProvider, MarkedProvider } from "@opencode-ai/ui"
+import { Fonts, MarkedProvider } from "@opencode-ai/ui"
import { SDKProvider } from "./context/sdk"
import { SyncProvider } from "./context/sync"
import { LocalProvider } from "./context/local"
@@ -29,24 +29,22 @@ if (import.meta.env.DEV && !(root instanceof HTMLElement)) {
render(
() => (
- <ShikiProvider>
- <MarkedProvider>
- <SDKProvider url={url}>
- <SyncProvider>
- <LocalProvider>
- <MetaProvider>
- <Fonts />
- <Router root={Layout}>
- <Route path={["/", "/session"]} component={SessionLayout}>
- <Route path="/:id?" component={Session} />
- </Route>
- </Router>
- </MetaProvider>
- </LocalProvider>
- </SyncProvider>
- </SDKProvider>
- </MarkedProvider>
- </ShikiProvider>
+ <MarkedProvider>
+ <SDKProvider url={url}>
+ <SyncProvider>
+ <LocalProvider>
+ <MetaProvider>
+ <Fonts />
+ <Router root={Layout}>
+ <Route path={["/", "/session"]} component={SessionLayout}>
+ <Route path="/:id?" component={Session} />
+ </Route>
+ </Router>
+ </MetaProvider>
+ </LocalProvider>
+ </SyncProvider>
+ </SDKProvider>
+ </MarkedProvider>
),
root!,
)