@uiw/codemirror-themes 4.13.1 → 4.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -194,6 +194,12 @@ export default App;
194
194
  <img width="436" alt="codemirror-theme-sublime" src="https://user-images.githubusercontent.com/1680273/176572314-cc296f81-0763-485c-8fa2-7d61b24ad09b.png">
195
195
  </a>
196
196
 
197
+ **vscode**
198
+
199
+ <a href="https://uiwjs.github.io/react-codemirror/#/theme/data/vscode/dark">
200
+ <img width="436" alt="codemirror-theme-vscode dark" src="https://user-images.githubusercontent.com/1680273/202343079-7eca1c90-da69-4ef2-a18c-4c9f5ea4e396.png">
201
+ </a>
202
+
197
203
  **xcode**
198
204
 
199
205
  <a href="https://uiwjs.github.io/react-codemirror/#/theme/data/xcode/dark">
package/cjs/index.d.ts CHANGED
@@ -30,6 +30,8 @@ export interface Settings {
30
30
  gutterBackground?: string;
31
31
  /** Text color inside gutter. */
32
32
  gutterForeground?: string;
33
+ /** Text active color inside gutter. */
34
+ gutterActiveForeground?: string;
33
35
  /** Gutter right border color. */
34
36
  gutterBorder?: string;
35
37
  }
package/cjs/index.js CHANGED
@@ -34,14 +34,17 @@ var createTheme = function createTheme(_ref) {
34
34
  borderLeftColor: settings.caret
35
35
  };
36
36
  }
37
+ var activeLineGutterStyle = {};
38
+ if (settings.gutterActiveForeground) {
39
+ activeLineGutterStyle.color = settings.gutterActiveForeground;
40
+ }
37
41
  if (settings.lineHighlight) {
38
42
  themeOptions['.cm-activeLine'] = {
39
43
  backgroundColor: settings.lineHighlight
40
44
  };
41
- themeOptions['.cm-activeLineGutter'] = {
42
- backgroundColor: settings.lineHighlight
43
- };
45
+ activeLineGutterStyle.backgroundColor = settings.lineHighlight;
44
46
  }
47
+ themeOptions['.cm-activeLineGutter'] = activeLineGutterStyle;
45
48
  if (settings.selection) {
46
49
  themeOptions['&.cm-focused .cm-selectionBackground .cm-selectionBackground, & .cm-selectionLayer .cm-selectionBackground, ::selection'] = {
47
50
  backgroundColor: settings.selection
package/cjs/index.js.map CHANGED
@@ -17,6 +17,8 @@
17
17
  "caret",
18
18
  "caretColor",
19
19
  "borderLeftColor",
20
+ "activeLineGutterStyle",
21
+ "gutterActiveForeground",
20
22
  "lineHighlight",
21
23
  "selection",
22
24
  "selectionMatch",
@@ -33,7 +35,7 @@
33
35
  "../src/index.tsx"
34
36
  ],
35
37
  "sourcesContent": [
36
- "import { EditorView } from '@codemirror/view';\nimport { Extension } from '@codemirror/state';\nimport { HighlightStyle, TagStyle, syntaxHighlighting } from '@codemirror/language';\nimport { StyleSpec } from 'style-mod';\n\nexport interface CreateThemeOptions {\n /**\n * Theme inheritance. Determines which styles CodeMirror will apply by default.\n */\n theme: Theme;\n /**\n * Settings to customize the look of the editor, like background, gutter, selection and others.\n */\n settings: Settings;\n /** Syntax highlighting styles. */\n styles: TagStyle[];\n}\n\ntype Theme = 'light' | 'dark';\n\nexport interface Settings {\n /** Editor background. */\n background: string;\n /** Default text color. */\n foreground: string;\n /** Caret color. */\n caret?: string;\n /** Selection background. */\n selection?: string;\n /** Selection match background. */\n selectionMatch?: string;\n /** Background of highlighted lines. */\n lineHighlight?: string;\n /** Gutter background. */\n gutterBackground?: string;\n /** Text color inside gutter. */\n gutterForeground?: string;\n /** Gutter right border color. */\n gutterBorder?: string;\n}\n\nexport const createTheme = ({ theme, settings, styles }: CreateThemeOptions): Extension => {\n const themeOptions: Record<string, StyleSpec> = {\n '&': {\n backgroundColor: settings.background,\n color: settings.foreground,\n },\n '.cm-gutters': {},\n };\n\n if (settings.gutterBackground) {\n themeOptions['.cm-gutters'].backgroundColor = settings.gutterBackground;\n }\n if (settings.gutterForeground) {\n themeOptions['.cm-gutters'].color = settings.gutterForeground;\n }\n if (settings.gutterBorder) {\n themeOptions['.cm-gutters'].borderRightColor = settings.gutterBorder;\n }\n\n if (settings.caret) {\n themeOptions['.cm-content'] = {\n caretColor: settings.caret,\n };\n themeOptions['.cm-cursor, .cm-dropCursor'] = {\n borderLeftColor: settings.caret,\n };\n }\n\n if (settings.lineHighlight) {\n themeOptions['.cm-activeLine'] = {\n backgroundColor: settings.lineHighlight,\n };\n themeOptions['.cm-activeLineGutter'] = {\n backgroundColor: settings.lineHighlight,\n };\n }\n\n if (settings.selection) {\n themeOptions[\n '&.cm-focused .cm-selectionBackground .cm-selectionBackground, & .cm-selectionLayer .cm-selectionBackground, ::selection'\n ] = {\n backgroundColor: settings.selection,\n };\n }\n if (settings.selectionMatch) {\n themeOptions['& .cm-selectionMatch'] = {\n backgroundColor: settings.selectionMatch,\n };\n }\n const themeExtension = EditorView.theme(themeOptions, {\n dark: theme === 'dark',\n });\n\n const highlightStyle = HighlightStyle.define(styles);\n const extension = [themeExtension, syntaxHighlighting(highlightStyle)];\n\n return extension;\n};\n\nexport default createTheme;\n"
38
+ "import { EditorView } from '@codemirror/view';\nimport { Extension } from '@codemirror/state';\nimport { HighlightStyle, TagStyle, syntaxHighlighting } from '@codemirror/language';\nimport { StyleSpec } from 'style-mod';\n\nexport interface CreateThemeOptions {\n /**\n * Theme inheritance. Determines which styles CodeMirror will apply by default.\n */\n theme: Theme;\n /**\n * Settings to customize the look of the editor, like background, gutter, selection and others.\n */\n settings: Settings;\n /** Syntax highlighting styles. */\n styles: TagStyle[];\n}\n\ntype Theme = 'light' | 'dark';\n\nexport interface Settings {\n /** Editor background. */\n background: string;\n /** Default text color. */\n foreground: string;\n /** Caret color. */\n caret?: string;\n /** Selection background. */\n selection?: string;\n /** Selection match background. */\n selectionMatch?: string;\n /** Background of highlighted lines. */\n lineHighlight?: string;\n /** Gutter background. */\n gutterBackground?: string;\n /** Text color inside gutter. */\n gutterForeground?: string;\n /** Text active color inside gutter. */\n gutterActiveForeground?: string;\n /** Gutter right border color. */\n gutterBorder?: string;\n}\n\nexport const createTheme = ({ theme, settings, styles }: CreateThemeOptions): Extension => {\n const themeOptions: Record<string, StyleSpec> = {\n '&': {\n backgroundColor: settings.background,\n color: settings.foreground,\n },\n '.cm-gutters': {},\n };\n\n if (settings.gutterBackground) {\n themeOptions['.cm-gutters'].backgroundColor = settings.gutterBackground;\n }\n if (settings.gutterForeground) {\n themeOptions['.cm-gutters'].color = settings.gutterForeground;\n }\n if (settings.gutterBorder) {\n themeOptions['.cm-gutters'].borderRightColor = settings.gutterBorder;\n }\n\n if (settings.caret) {\n themeOptions['.cm-content'] = {\n caretColor: settings.caret,\n };\n themeOptions['.cm-cursor, .cm-dropCursor'] = {\n borderLeftColor: settings.caret,\n };\n }\n let activeLineGutterStyle: StyleSpec = {};\n if (settings.gutterActiveForeground) {\n activeLineGutterStyle.color = settings.gutterActiveForeground;\n }\n if (settings.lineHighlight) {\n themeOptions['.cm-activeLine'] = {\n backgroundColor: settings.lineHighlight,\n };\n activeLineGutterStyle.backgroundColor = settings.lineHighlight;\n }\n themeOptions['.cm-activeLineGutter'] = activeLineGutterStyle;\n\n if (settings.selection) {\n themeOptions[\n '&.cm-focused .cm-selectionBackground .cm-selectionBackground, & .cm-selectionLayer .cm-selectionBackground, ::selection'\n ] = {\n backgroundColor: settings.selection,\n };\n }\n if (settings.selectionMatch) {\n themeOptions['& .cm-selectionMatch'] = {\n backgroundColor: settings.selectionMatch,\n };\n }\n const themeExtension = EditorView.theme(themeOptions, {\n dark: theme === 'dark',\n });\n\n const highlightStyle = HighlightStyle.define(styles);\n const extension = [themeExtension, syntaxHighlighting(highlightStyle)];\n\n return extension;\n};\n\nexport default createTheme;\n"
37
39
  ],
38
- "mappings": ";;;;;;AAAA;AAEA;AAuCO,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAAmE;EAAA,IAA7DC,KAAK,QAALA,KAAK;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,MAAM,QAANA,MAAM;EACnD,IAAMC,YAAuC,GAAG;IAC9C,GAAG,EAAE;MACHC,eAAe,EAAEH,QAAQ,CAACI,UAAU;MACpCC,KAAK,EAAEL,QAAQ,CAACM;IAClB,CAAC;IACD,aAAa,EAAE,CAAC;EAClB,CAAC;EAED,IAAIN,QAAQ,CAACO,gBAAgB,EAAE;IAC7BL,YAAY,CAAC,aAAa,CAAC,CAACC,eAAe,GAAGH,QAAQ,CAACO,gBAAgB;EACzE;EACA,IAAIP,QAAQ,CAACQ,gBAAgB,EAAE;IAC7BN,YAAY,CAAC,aAAa,CAAC,CAACG,KAAK,GAAGL,QAAQ,CAACQ,gBAAgB;EAC/D;EACA,IAAIR,QAAQ,CAACS,YAAY,EAAE;IACzBP,YAAY,CAAC,aAAa,CAAC,CAACQ,gBAAgB,GAAGV,QAAQ,CAACS,YAAY;EACtE;EAEA,IAAIT,QAAQ,CAACW,KAAK,EAAE;IAClBT,YAAY,CAAC,aAAa,CAAC,GAAG;MAC5BU,UAAU,EAAEZ,QAAQ,CAACW;IACvB,CAAC;IACDT,YAAY,CAAC,4BAA4B,CAAC,GAAG;MAC3CW,eAAe,EAAEb,QAAQ,CAACW;IAC5B,CAAC;EACH;EAEA,IAAIX,QAAQ,CAACc,aAAa,EAAE;IAC1BZ,YAAY,CAAC,gBAAgB,CAAC,GAAG;MAC/BC,eAAe,EAAEH,QAAQ,CAACc;IAC5B,CAAC;IACDZ,YAAY,CAAC,sBAAsB,CAAC,GAAG;MACrCC,eAAe,EAAEH,QAAQ,CAACc;IAC5B,CAAC;EACH;EAEA,IAAId,QAAQ,CAACe,SAAS,EAAE;IACtBb,YAAY,CACV,yHAAyH,CAC1H,GAAG;MACFC,eAAe,EAAEH,QAAQ,CAACe;IAC5B,CAAC;EACH;EACA,IAAIf,QAAQ,CAACgB,cAAc,EAAE;IAC3Bd,YAAY,CAAC,sBAAsB,CAAC,GAAG;MACrCC,eAAe,EAAEH,QAAQ,CAACgB;IAC5B,CAAC;EACH;EACA,IAAMC,cAAc,GAAGC,gBAAU,CAACnB,KAAK,CAACG,YAAY,EAAE;IACpDiB,IAAI,EAAEpB,KAAK,KAAK;EAClB,CAAC,CAAC;EAEF,IAAMqB,cAAc,GAAGC,wBAAc,CAACC,MAAM,CAACrB,MAAM,CAAC;EACpD,IAAMsB,SAAS,GAAG,CAACN,cAAc,EAAE,IAAAO,4BAAkB,EAACJ,cAAc,CAAC,CAAC;EAEtE,OAAOG,SAAS;AAClB,CAAC;AAAC;AAAA,eAEazB,WAAW;AAAA"
40
+ "mappings": ";;;;;;AAAA;AAEA;AAyCO,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAAmE;EAAA,IAA7DC,KAAK,QAALA,KAAK;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,MAAM,QAANA,MAAM;EACnD,IAAMC,YAAuC,GAAG;IAC9C,GAAG,EAAE;MACHC,eAAe,EAAEH,QAAQ,CAACI,UAAU;MACpCC,KAAK,EAAEL,QAAQ,CAACM;IAClB,CAAC;IACD,aAAa,EAAE,CAAC;EAClB,CAAC;EAED,IAAIN,QAAQ,CAACO,gBAAgB,EAAE;IAC7BL,YAAY,CAAC,aAAa,CAAC,CAACC,eAAe,GAAGH,QAAQ,CAACO,gBAAgB;EACzE;EACA,IAAIP,QAAQ,CAACQ,gBAAgB,EAAE;IAC7BN,YAAY,CAAC,aAAa,CAAC,CAACG,KAAK,GAAGL,QAAQ,CAACQ,gBAAgB;EAC/D;EACA,IAAIR,QAAQ,CAACS,YAAY,EAAE;IACzBP,YAAY,CAAC,aAAa,CAAC,CAACQ,gBAAgB,GAAGV,QAAQ,CAACS,YAAY;EACtE;EAEA,IAAIT,QAAQ,CAACW,KAAK,EAAE;IAClBT,YAAY,CAAC,aAAa,CAAC,GAAG;MAC5BU,UAAU,EAAEZ,QAAQ,CAACW;IACvB,CAAC;IACDT,YAAY,CAAC,4BAA4B,CAAC,GAAG;MAC3CW,eAAe,EAAEb,QAAQ,CAACW;IAC5B,CAAC;EACH;EACA,IAAIG,qBAAgC,GAAG,CAAC,CAAC;EACzC,IAAId,QAAQ,CAACe,sBAAsB,EAAE;IACnCD,qBAAqB,CAACT,KAAK,GAAGL,QAAQ,CAACe,sBAAsB;EAC/D;EACA,IAAIf,QAAQ,CAACgB,aAAa,EAAE;IAC1Bd,YAAY,CAAC,gBAAgB,CAAC,GAAG;MAC/BC,eAAe,EAAEH,QAAQ,CAACgB;IAC5B,CAAC;IACDF,qBAAqB,CAACX,eAAe,GAAGH,QAAQ,CAACgB,aAAa;EAChE;EACAd,YAAY,CAAC,sBAAsB,CAAC,GAAGY,qBAAqB;EAE5D,IAAId,QAAQ,CAACiB,SAAS,EAAE;IACtBf,YAAY,CACV,yHAAyH,CAC1H,GAAG;MACFC,eAAe,EAAEH,QAAQ,CAACiB;IAC5B,CAAC;EACH;EACA,IAAIjB,QAAQ,CAACkB,cAAc,EAAE;IAC3BhB,YAAY,CAAC,sBAAsB,CAAC,GAAG;MACrCC,eAAe,EAAEH,QAAQ,CAACkB;IAC5B,CAAC;EACH;EACA,IAAMC,cAAc,GAAGC,gBAAU,CAACrB,KAAK,CAACG,YAAY,EAAE;IACpDmB,IAAI,EAAEtB,KAAK,KAAK;EAClB,CAAC,CAAC;EAEF,IAAMuB,cAAc,GAAGC,wBAAc,CAACC,MAAM,CAACvB,MAAM,CAAC;EACpD,IAAMwB,SAAS,GAAG,CAACN,cAAc,EAAE,IAAAO,4BAAkB,EAACJ,cAAc,CAAC,CAAC;EAEtE,OAAOG,SAAS;AAClB,CAAC;AAAC;AAAA,eAEa3B,WAAW;AAAA"
39
41
  }
package/esm/index.d.ts CHANGED
@@ -30,6 +30,8 @@ export interface Settings {
30
30
  gutterBackground?: string;
31
31
  /** Text color inside gutter. */
32
32
  gutterForeground?: string;
33
+ /** Text active color inside gutter. */
34
+ gutterActiveForeground?: string;
33
35
  /** Gutter right border color. */
34
36
  gutterBorder?: string;
35
37
  }
package/esm/index.js CHANGED
@@ -30,14 +30,17 @@ export var createTheme = _ref => {
30
30
  borderLeftColor: settings.caret
31
31
  };
32
32
  }
33
+ var activeLineGutterStyle = {};
34
+ if (settings.gutterActiveForeground) {
35
+ activeLineGutterStyle.color = settings.gutterActiveForeground;
36
+ }
33
37
  if (settings.lineHighlight) {
34
38
  themeOptions['.cm-activeLine'] = {
35
39
  backgroundColor: settings.lineHighlight
36
40
  };
37
- themeOptions['.cm-activeLineGutter'] = {
38
- backgroundColor: settings.lineHighlight
39
- };
41
+ activeLineGutterStyle.backgroundColor = settings.lineHighlight;
40
42
  }
43
+ themeOptions['.cm-activeLineGutter'] = activeLineGutterStyle;
41
44
  if (settings.selection) {
42
45
  themeOptions['&.cm-focused .cm-selectionBackground .cm-selectionBackground, & .cm-selectionLayer .cm-selectionBackground, ::selection'] = {
43
46
  backgroundColor: settings.selection
package/esm/index.js.map CHANGED
@@ -20,6 +20,8 @@
20
20
  "caret",
21
21
  "caretColor",
22
22
  "borderLeftColor",
23
+ "activeLineGutterStyle",
24
+ "gutterActiveForeground",
23
25
  "lineHighlight",
24
26
  "selection",
25
27
  "selectionMatch",
@@ -33,7 +35,7 @@
33
35
  "../src/index.tsx"
34
36
  ],
35
37
  "sourcesContent": [
36
- "import { EditorView } from '@codemirror/view';\nimport { Extension } from '@codemirror/state';\nimport { HighlightStyle, TagStyle, syntaxHighlighting } from '@codemirror/language';\nimport { StyleSpec } from 'style-mod';\n\nexport interface CreateThemeOptions {\n /**\n * Theme inheritance. Determines which styles CodeMirror will apply by default.\n */\n theme: Theme;\n /**\n * Settings to customize the look of the editor, like background, gutter, selection and others.\n */\n settings: Settings;\n /** Syntax highlighting styles. */\n styles: TagStyle[];\n}\n\ntype Theme = 'light' | 'dark';\n\nexport interface Settings {\n /** Editor background. */\n background: string;\n /** Default text color. */\n foreground: string;\n /** Caret color. */\n caret?: string;\n /** Selection background. */\n selection?: string;\n /** Selection match background. */\n selectionMatch?: string;\n /** Background of highlighted lines. */\n lineHighlight?: string;\n /** Gutter background. */\n gutterBackground?: string;\n /** Text color inside gutter. */\n gutterForeground?: string;\n /** Gutter right border color. */\n gutterBorder?: string;\n}\n\nexport const createTheme = ({ theme, settings, styles }: CreateThemeOptions): Extension => {\n const themeOptions: Record<string, StyleSpec> = {\n '&': {\n backgroundColor: settings.background,\n color: settings.foreground,\n },\n '.cm-gutters': {},\n };\n\n if (settings.gutterBackground) {\n themeOptions['.cm-gutters'].backgroundColor = settings.gutterBackground;\n }\n if (settings.gutterForeground) {\n themeOptions['.cm-gutters'].color = settings.gutterForeground;\n }\n if (settings.gutterBorder) {\n themeOptions['.cm-gutters'].borderRightColor = settings.gutterBorder;\n }\n\n if (settings.caret) {\n themeOptions['.cm-content'] = {\n caretColor: settings.caret,\n };\n themeOptions['.cm-cursor, .cm-dropCursor'] = {\n borderLeftColor: settings.caret,\n };\n }\n\n if (settings.lineHighlight) {\n themeOptions['.cm-activeLine'] = {\n backgroundColor: settings.lineHighlight,\n };\n themeOptions['.cm-activeLineGutter'] = {\n backgroundColor: settings.lineHighlight,\n };\n }\n\n if (settings.selection) {\n themeOptions[\n '&.cm-focused .cm-selectionBackground .cm-selectionBackground, & .cm-selectionLayer .cm-selectionBackground, ::selection'\n ] = {\n backgroundColor: settings.selection,\n };\n }\n if (settings.selectionMatch) {\n themeOptions['& .cm-selectionMatch'] = {\n backgroundColor: settings.selectionMatch,\n };\n }\n const themeExtension = EditorView.theme(themeOptions, {\n dark: theme === 'dark',\n });\n\n const highlightStyle = HighlightStyle.define(styles);\n const extension = [themeExtension, syntaxHighlighting(highlightStyle)];\n\n return extension;\n};\n\nexport default createTheme;\n"
38
+ "import { EditorView } from '@codemirror/view';\nimport { Extension } from '@codemirror/state';\nimport { HighlightStyle, TagStyle, syntaxHighlighting } from '@codemirror/language';\nimport { StyleSpec } from 'style-mod';\n\nexport interface CreateThemeOptions {\n /**\n * Theme inheritance. Determines which styles CodeMirror will apply by default.\n */\n theme: Theme;\n /**\n * Settings to customize the look of the editor, like background, gutter, selection and others.\n */\n settings: Settings;\n /** Syntax highlighting styles. */\n styles: TagStyle[];\n}\n\ntype Theme = 'light' | 'dark';\n\nexport interface Settings {\n /** Editor background. */\n background: string;\n /** Default text color. */\n foreground: string;\n /** Caret color. */\n caret?: string;\n /** Selection background. */\n selection?: string;\n /** Selection match background. */\n selectionMatch?: string;\n /** Background of highlighted lines. */\n lineHighlight?: string;\n /** Gutter background. */\n gutterBackground?: string;\n /** Text color inside gutter. */\n gutterForeground?: string;\n /** Text active color inside gutter. */\n gutterActiveForeground?: string;\n /** Gutter right border color. */\n gutterBorder?: string;\n}\n\nexport const createTheme = ({ theme, settings, styles }: CreateThemeOptions): Extension => {\n const themeOptions: Record<string, StyleSpec> = {\n '&': {\n backgroundColor: settings.background,\n color: settings.foreground,\n },\n '.cm-gutters': {},\n };\n\n if (settings.gutterBackground) {\n themeOptions['.cm-gutters'].backgroundColor = settings.gutterBackground;\n }\n if (settings.gutterForeground) {\n themeOptions['.cm-gutters'].color = settings.gutterForeground;\n }\n if (settings.gutterBorder) {\n themeOptions['.cm-gutters'].borderRightColor = settings.gutterBorder;\n }\n\n if (settings.caret) {\n themeOptions['.cm-content'] = {\n caretColor: settings.caret,\n };\n themeOptions['.cm-cursor, .cm-dropCursor'] = {\n borderLeftColor: settings.caret,\n };\n }\n let activeLineGutterStyle: StyleSpec = {};\n if (settings.gutterActiveForeground) {\n activeLineGutterStyle.color = settings.gutterActiveForeground;\n }\n if (settings.lineHighlight) {\n themeOptions['.cm-activeLine'] = {\n backgroundColor: settings.lineHighlight,\n };\n activeLineGutterStyle.backgroundColor = settings.lineHighlight;\n }\n themeOptions['.cm-activeLineGutter'] = activeLineGutterStyle;\n\n if (settings.selection) {\n themeOptions[\n '&.cm-focused .cm-selectionBackground .cm-selectionBackground, & .cm-selectionLayer .cm-selectionBackground, ::selection'\n ] = {\n backgroundColor: settings.selection,\n };\n }\n if (settings.selectionMatch) {\n themeOptions['& .cm-selectionMatch'] = {\n backgroundColor: settings.selectionMatch,\n };\n }\n const themeExtension = EditorView.theme(themeOptions, {\n dark: theme === 'dark',\n });\n\n const highlightStyle = HighlightStyle.define(styles);\n const extension = [themeExtension, syntaxHighlighting(highlightStyle)];\n\n return extension;\n};\n\nexport default createTheme;\n"
37
39
  ],
38
- "mappings": "AAAA,SAASA,UAAU,QAAQ,kBAAkB;AAE7C,SAASC,cAAc,EAAYC,kBAAkB,QAAQ,sBAAsB;AAuCnF,OAAO,IAAMC,WAAW,GAAG,QAAgE;EAAA,IAA/D;IAAEC,KAAK;IAAEC,QAAQ;IAAEC;EAA2B,CAAC;EACzE,IAAMC,YAAuC,GAAG;IAC9C,GAAG,EAAE;MACHC,eAAe,EAAEH,QAAQ,CAACI,UAAU;MACpCC,KAAK,EAAEL,QAAQ,CAACM;IAClB,CAAC;IACD,aAAa,EAAE,CAAC;EAClB,CAAC;EAED,IAAIN,QAAQ,CAACO,gBAAgB,EAAE;IAC7BL,YAAY,CAAC,aAAa,CAAC,CAACC,eAAe,GAAGH,QAAQ,CAACO,gBAAgB;EACzE;EACA,IAAIP,QAAQ,CAACQ,gBAAgB,EAAE;IAC7BN,YAAY,CAAC,aAAa,CAAC,CAACG,KAAK,GAAGL,QAAQ,CAACQ,gBAAgB;EAC/D;EACA,IAAIR,QAAQ,CAACS,YAAY,EAAE;IACzBP,YAAY,CAAC,aAAa,CAAC,CAACQ,gBAAgB,GAAGV,QAAQ,CAACS,YAAY;EACtE;EAEA,IAAIT,QAAQ,CAACW,KAAK,EAAE;IAClBT,YAAY,CAAC,aAAa,CAAC,GAAG;MAC5BU,UAAU,EAAEZ,QAAQ,CAACW;IACvB,CAAC;IACDT,YAAY,CAAC,4BAA4B,CAAC,GAAG;MAC3CW,eAAe,EAAEb,QAAQ,CAACW;IAC5B,CAAC;EACH;EAEA,IAAIX,QAAQ,CAACc,aAAa,EAAE;IAC1BZ,YAAY,CAAC,gBAAgB,CAAC,GAAG;MAC/BC,eAAe,EAAEH,QAAQ,CAACc;IAC5B,CAAC;IACDZ,YAAY,CAAC,sBAAsB,CAAC,GAAG;MACrCC,eAAe,EAAEH,QAAQ,CAACc;IAC5B,CAAC;EACH;EAEA,IAAId,QAAQ,CAACe,SAAS,EAAE;IACtBb,YAAY,CACV,yHAAyH,CAC1H,GAAG;MACFC,eAAe,EAAEH,QAAQ,CAACe;IAC5B,CAAC;EACH;EACA,IAAIf,QAAQ,CAACgB,cAAc,EAAE;IAC3Bd,YAAY,CAAC,sBAAsB,CAAC,GAAG;MACrCC,eAAe,EAAEH,QAAQ,CAACgB;IAC5B,CAAC;EACH;EACA,IAAMC,cAAc,GAAGtB,UAAU,CAACI,KAAK,CAACG,YAAY,EAAE;IACpDgB,IAAI,EAAEnB,KAAK,KAAK;EAClB,CAAC,CAAC;EAEF,IAAMoB,cAAc,GAAGvB,cAAc,CAACwB,MAAM,CAACnB,MAAM,CAAC;EACpD,IAAMoB,SAAS,GAAG,CAACJ,cAAc,EAAEpB,kBAAkB,CAACsB,cAAc,CAAC,CAAC;EAEtE,OAAOE,SAAS;AAClB,CAAC;AAED,eAAevB,WAAW"
40
+ "mappings": "AAAA,SAASA,UAAU,QAAQ,kBAAkB;AAE7C,SAASC,cAAc,EAAYC,kBAAkB,QAAQ,sBAAsB;AAyCnF,OAAO,IAAMC,WAAW,GAAG,QAAgE;EAAA,IAA/D;IAAEC,KAAK;IAAEC,QAAQ;IAAEC;EAA2B,CAAC;EACzE,IAAMC,YAAuC,GAAG;IAC9C,GAAG,EAAE;MACHC,eAAe,EAAEH,QAAQ,CAACI,UAAU;MACpCC,KAAK,EAAEL,QAAQ,CAACM;IAClB,CAAC;IACD,aAAa,EAAE,CAAC;EAClB,CAAC;EAED,IAAIN,QAAQ,CAACO,gBAAgB,EAAE;IAC7BL,YAAY,CAAC,aAAa,CAAC,CAACC,eAAe,GAAGH,QAAQ,CAACO,gBAAgB;EACzE;EACA,IAAIP,QAAQ,CAACQ,gBAAgB,EAAE;IAC7BN,YAAY,CAAC,aAAa,CAAC,CAACG,KAAK,GAAGL,QAAQ,CAACQ,gBAAgB;EAC/D;EACA,IAAIR,QAAQ,CAACS,YAAY,EAAE;IACzBP,YAAY,CAAC,aAAa,CAAC,CAACQ,gBAAgB,GAAGV,QAAQ,CAACS,YAAY;EACtE;EAEA,IAAIT,QAAQ,CAACW,KAAK,EAAE;IAClBT,YAAY,CAAC,aAAa,CAAC,GAAG;MAC5BU,UAAU,EAAEZ,QAAQ,CAACW;IACvB,CAAC;IACDT,YAAY,CAAC,4BAA4B,CAAC,GAAG;MAC3CW,eAAe,EAAEb,QAAQ,CAACW;IAC5B,CAAC;EACH;EACA,IAAIG,qBAAgC,GAAG,CAAC,CAAC;EACzC,IAAId,QAAQ,CAACe,sBAAsB,EAAE;IACnCD,qBAAqB,CAACT,KAAK,GAAGL,QAAQ,CAACe,sBAAsB;EAC/D;EACA,IAAIf,QAAQ,CAACgB,aAAa,EAAE;IAC1Bd,YAAY,CAAC,gBAAgB,CAAC,GAAG;MAC/BC,eAAe,EAAEH,QAAQ,CAACgB;IAC5B,CAAC;IACDF,qBAAqB,CAACX,eAAe,GAAGH,QAAQ,CAACgB,aAAa;EAChE;EACAd,YAAY,CAAC,sBAAsB,CAAC,GAAGY,qBAAqB;EAE5D,IAAId,QAAQ,CAACiB,SAAS,EAAE;IACtBf,YAAY,CACV,yHAAyH,CAC1H,GAAG;MACFC,eAAe,EAAEH,QAAQ,CAACiB;IAC5B,CAAC;EACH;EACA,IAAIjB,QAAQ,CAACkB,cAAc,EAAE;IAC3BhB,YAAY,CAAC,sBAAsB,CAAC,GAAG;MACrCC,eAAe,EAAEH,QAAQ,CAACkB;IAC5B,CAAC;EACH;EACA,IAAMC,cAAc,GAAGxB,UAAU,CAACI,KAAK,CAACG,YAAY,EAAE;IACpDkB,IAAI,EAAErB,KAAK,KAAK;EAClB,CAAC,CAAC;EAEF,IAAMsB,cAAc,GAAGzB,cAAc,CAAC0B,MAAM,CAACrB,MAAM,CAAC;EACpD,IAAMsB,SAAS,GAAG,CAACJ,cAAc,EAAEtB,kBAAkB,CAACwB,cAAc,CAAC,CAAC;EAEtE,OAAOE,SAAS;AAClB,CAAC;AAED,eAAezB,WAAW"
39
41
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uiw/codemirror-themes",
3
- "version": "4.13.1",
3
+ "version": "4.14.0",
4
4
  "description": "Themes for CodeMirror.",
5
5
  "homepage": "https://uiwjs.github.io/react-codemirror/#/theme/doc",
6
6
  "author": "kenny wong <wowohoo@qq.com>",
package/src/index.tsx CHANGED
@@ -35,6 +35,8 @@ export interface Settings {
35
35
  gutterBackground?: string;
36
36
  /** Text color inside gutter. */
37
37
  gutterForeground?: string;
38
+ /** Text active color inside gutter. */
39
+ gutterActiveForeground?: string;
38
40
  /** Gutter right border color. */
39
41
  gutterBorder?: string;
40
42
  }
@@ -66,15 +68,17 @@ export const createTheme = ({ theme, settings, styles }: CreateThemeOptions): Ex
66
68
  borderLeftColor: settings.caret,
67
69
  };
68
70
  }
69
-
71
+ let activeLineGutterStyle: StyleSpec = {};
72
+ if (settings.gutterActiveForeground) {
73
+ activeLineGutterStyle.color = settings.gutterActiveForeground;
74
+ }
70
75
  if (settings.lineHighlight) {
71
76
  themeOptions['.cm-activeLine'] = {
72
77
  backgroundColor: settings.lineHighlight,
73
78
  };
74
- themeOptions['.cm-activeLineGutter'] = {
75
- backgroundColor: settings.lineHighlight,
76
- };
79
+ activeLineGutterStyle.backgroundColor = settings.lineHighlight;
77
80
  }
81
+ themeOptions['.cm-activeLineGutter'] = activeLineGutterStyle;
78
82
 
79
83
  if (settings.selection) {
80
84
  themeOptions[