Browse Source

feat: init base theme for codemirror

liyasthomas 4 years ago
parent
commit
be6c802745

+ 2 - 0
packages/hoppscotch-app/helpers/editor/codemirror.ts

@@ -48,6 +48,7 @@ import * as O from "fp-ts/Option"
 import { isJSONContentType } from "../utils/contenttypes"
 import { Completer } from "./completion"
 import { LinterDefinition } from "./linting/linter"
+import baseTheme from "./themes/baseTheme"
 
 type CodeMirrorOptions = {
   extendedEditorConfig: Omit<CodeMirror.EditorConfiguration, "value">
@@ -341,6 +342,7 @@ export function useNewCodemirror(
     doc: value.value,
     extensions: [
       basicSetup,
+      baseTheme,
       ViewPlugin.fromClass(
         class {
           update(update: ViewUpdate) {

+ 22 - 0
packages/hoppscotch-app/helpers/editor/themes/baseTheme.ts

@@ -0,0 +1,22 @@
+import { EditorView } from "@codemirror/view"
+
+const baseTheme = EditorView.theme({
+  "&": {
+    fontSize: "var(--body-font-size)",
+  },
+  ".cm-content": {
+    fontFamily: "var(--font-mono)",
+    backgroundColor: "var(--primary-color)",
+  },
+  ".cm-gutters": {
+    fontFamily: "var(--font-mono)",
+    backgroundColor: "var(--primary-color)",
+    borderColor: "var(--divider-light-color)",
+  },
+  ".cm-lineNumbers": {
+    minWidth: "3em",
+    color: "var(--secondary-light-color)",
+  },
+})
+
+export default baseTheme