"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const nls = require("../../../nls.js");
const color = require("../../../base/common/color.js");
const colorRegistry = require("../../../platform/theme/common/colorRegistry.js");
const themeService = require("../../../platform/theme/common/themeService.js");
const editorLineHighlight = colorRegistry.registerColor("editor.lineHighlightBackground", { dark: null, light: null, hc: null }, nls.localize("lineHighlight", "Background color for the highlight of line at the cursor position."));
const editorLineHighlightBorder = colorRegistry.registerColor("editor.lineHighlightBorder", { dark: "#282828", light: "#eeeeee", hc: "#f38518" }, nls.localize("lineHighlightBorderBox", "Background color for the border around the line at the cursor position."));
const editorRangeHighlight = colorRegistry.registerColor("editor.rangeHighlightBackground", { dark: "#ffffff0b", light: "#fdff0033", hc: null }, nls.localize("rangeHighlight", "Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."), true);
const editorRangeHighlightBorder = colorRegistry.registerColor("editor.rangeHighlightBorder", { dark: null, light: null, hc: colorRegistry.activeContrastBorder }, nls.localize("rangeHighlightBorder", "Background color of the border around highlighted ranges."), true);
const editorSymbolHighlight = colorRegistry.registerColor("editor.symbolHighlightBackground", { dark: colorRegistry.editorFindMatchHighlight, light: colorRegistry.editorFindMatchHighlight, hc: null }, nls.localize("symbolHighlight", "Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."), true);
const editorSymbolHighlightBorder = colorRegistry.registerColor("editor.symbolHighlightBorder", { dark: null, light: null, hc: colorRegistry.activeContrastBorder }, nls.localize("symbolHighlightBorder", "Background color of the border around highlighted symbols."), true);
const editorCursorForeground = colorRegistry.registerColor("editorCursor.foreground", { dark: "#AEAFAD", light: color.Color.black, hc: color.Color.white }, nls.localize("caret", "Color of the editor cursor."));
const editorCursorBackground = colorRegistry.registerColor("editorCursor.background", null, nls.localize("editorCursorBackground", "The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor."));
const editorWhitespaces = colorRegistry.registerColor("editorWhitespace.foreground", { dark: "#e3e4e229", light: "#33333333", hc: "#e3e4e229" }, nls.localize("editorWhitespaces", "Color of whitespace characters in the editor."));
const editorIndentGuides = colorRegistry.registerColor("editorIndentGuide.background", { dark: editorWhitespaces, light: editorWhitespaces, hc: editorWhitespaces }, nls.localize("editorIndentGuides", "Color of the editor indentation guides."));
const editorActiveIndentGuides = colorRegistry.registerColor("editorIndentGuide.activeBackground", { dark: editorWhitespaces, light: editorWhitespaces, hc: editorWhitespaces }, nls.localize("editorActiveIndentGuide", "Color of the active editor indentation guides."));
const editorLineNumbers = colorRegistry.registerColor("editorLineNumber.foreground", { dark: "#858585", light: "#237893", hc: color.Color.white }, nls.localize("editorLineNumbers", "Color of editor line numbers."));
const deprecatedEditorActiveLineNumber = colorRegistry.registerColor("editorActiveLineNumber.foreground", { dark: "#c6c6c6", light: "#0B216F", hc: colorRegistry.activeContrastBorder }, nls.localize("editorActiveLineNumber", "Color of editor active line number"), false, nls.localize("deprecatedEditorActiveLineNumber", "Id is deprecated. Use 'editorLineNumber.activeForeground' instead."));
const editorActiveLineNumber = colorRegistry.registerColor("editorLineNumber.activeForeground", { dark: deprecatedEditorActiveLineNumber, light: deprecatedEditorActiveLineNumber, hc: deprecatedEditorActiveLineNumber }, nls.localize("editorActiveLineNumber", "Color of editor active line number"));
const editorRuler = colorRegistry.registerColor("editorRuler.foreground", { dark: "#5A5A5A", light: color.Color.lightgrey, hc: color.Color.white }, nls.localize("editorRuler", "Color of the editor rulers."));
colorRegistry.registerColor("editorCodeLens.foreground", { dark: "#999999", light: "#919191", hc: "#999999" }, nls.localize("editorCodeLensForeground", "Foreground color of editor CodeLens"));
const editorBracketMatchBackground = colorRegistry.registerColor("editorBracketMatch.background", { dark: "#0064001a", light: "#0064001a", hc: "#0064001a" }, nls.localize("editorBracketMatchBackground", "Background color behind matching brackets"));
const editorBracketMatchBorder = colorRegistry.registerColor("editorBracketMatch.border", { dark: "#888", light: "#B9B9B9", hc: colorRegistry.contrastBorder }, nls.localize("editorBracketMatchBorder", "Color for matching brackets boxes"));
const editorOverviewRulerBorder = colorRegistry.registerColor("editorOverviewRuler.border", { dark: "#7f7f7f4d", light: "#7f7f7f4d", hc: "#7f7f7f4d" }, nls.localize("editorOverviewRulerBorder", "Color of the overview ruler border."));
const editorOverviewRulerBackground = colorRegistry.registerColor("editorOverviewRuler.background", null, nls.localize("editorOverviewRulerBackground", "Background color of the editor overview ruler. Only used when the minimap is enabled and placed on the right side of the editor."));
const editorGutter = colorRegistry.registerColor("editorGutter.background", { dark: colorRegistry.editorBackground, light: colorRegistry.editorBackground, hc: colorRegistry.editorBackground }, nls.localize("editorGutter", "Background color of the editor gutter. The gutter contains the glyph margins and the line numbers."));
const editorUnnecessaryCodeBorder = colorRegistry.registerColor("editorUnnecessaryCode.border", { dark: null, light: null, hc: color.Color.fromHex("#fff").transparent(0.8) }, nls.localize("unnecessaryCodeBorder", "Border color of unnecessary (unused) source code in the editor."));
const editorUnnecessaryCodeOpacity = colorRegistry.registerColor("editorUnnecessaryCode.opacity", { dark: color.Color.fromHex("#000a"), light: color.Color.fromHex("#0007"), hc: null }, nls.localize("unnecessaryCodeOpacity", `Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the  'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`));
const ghostTextBorder = colorRegistry.registerColor("editorGhostText.border", { dark: null, light: null, hc: color.Color.fromHex("#fff").transparent(0.8) }, nls.localize("editorGhostTextBorder", "Border color of ghost text in the editor."));
const ghostTextForeground = colorRegistry.registerColor("editorGhostText.foreground", { dark: color.Color.fromHex("#ffffff56"), light: color.Color.fromHex("#0007"), hc: null }, nls.localize("editorGhostTextForeground", "Foreground color of the ghost text in the editor."));
const ghostTextBackground = colorRegistry.registerColor("editorGhostText.background", { dark: null, light: null, hc: null }, nls.localize("editorGhostTextBackground", "Background color of the ghost text in the editor."));
const rulerRangeDefault = new color.Color(new color.RGBA(0, 122, 204, 0.6));
const overviewRulerRangeHighlight = colorRegistry.registerColor("editorOverviewRuler.rangeHighlightForeground", { dark: rulerRangeDefault, light: rulerRangeDefault, hc: rulerRangeDefault }, nls.localize("overviewRulerRangeHighlight", "Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."), true);
const overviewRulerError = colorRegistry.registerColor("editorOverviewRuler.errorForeground", { dark: new color.Color(new color.RGBA(255, 18, 18, 0.7)), light: new color.Color(new color.RGBA(255, 18, 18, 0.7)), hc: new color.Color(new color.RGBA(255, 50, 50, 1)) }, nls.localize("overviewRuleError", "Overview ruler marker color for errors."));
const overviewRulerWarning = colorRegistry.registerColor("editorOverviewRuler.warningForeground", { dark: colorRegistry.editorWarningForeground, light: colorRegistry.editorWarningForeground, hc: colorRegistry.editorWarningBorder }, nls.localize("overviewRuleWarning", "Overview ruler marker color for warnings."));
const overviewRulerInfo = colorRegistry.registerColor("editorOverviewRuler.infoForeground", { dark: colorRegistry.editorInfoForeground, light: colorRegistry.editorInfoForeground, hc: colorRegistry.editorInfoBorder }, nls.localize("overviewRuleInfo", "Overview ruler marker color for infos."));
const editorBracketHighlightingForeground1 = colorRegistry.registerColor("editorBracketHighlight.foreground1", { dark: "#FFD700", light: "#0431FAFF", hc: "#FFD700" }, nls.localize("editorBracketHighlightForeground1", "Foreground color of brackets (1). Requires enabling bracket pair colorization."));
const editorBracketHighlightingForeground2 = colorRegistry.registerColor("editorBracketHighlight.foreground2", { dark: "#DA70D6", light: "#319331FF", hc: "#DA70D6" }, nls.localize("editorBracketHighlightForeground2", "Foreground color of brackets (2). Requires enabling bracket pair colorization."));
const editorBracketHighlightingForeground3 = colorRegistry.registerColor("editorBracketHighlight.foreground3", { dark: "#179FFF", light: "#7B3814FF", hc: "#87CEFA" }, nls.localize("editorBracketHighlightForeground3", "Foreground color of brackets (3). Requires enabling bracket pair colorization."));
const editorBracketHighlightingForeground4 = colorRegistry.registerColor("editorBracketHighlight.foreground4", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketHighlightForeground4", "Foreground color of brackets (4). Requires enabling bracket pair colorization."));
const editorBracketHighlightingForeground5 = colorRegistry.registerColor("editorBracketHighlight.foreground5", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketHighlightForeground5", "Foreground color of brackets (5). Requires enabling bracket pair colorization."));
const editorBracketHighlightingForeground6 = colorRegistry.registerColor("editorBracketHighlight.foreground6", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketHighlightForeground6", "Foreground color of brackets (6). Requires enabling bracket pair colorization."));
const editorBracketHighlightingUnexpectedBracketForeground = colorRegistry.registerColor("editorBracketHighlight.unexpectedBracket.foreground", { dark: new color.Color(new color.RGBA(255, 18, 18, 0.8)), light: new color.Color(new color.RGBA(255, 18, 18, 0.8)), hc: new color.Color(new color.RGBA(255, 50, 50, 1)) }, nls.localize("editorBracketHighlightUnexpectedBracketForeground", "Foreground color of unexpected brackets."));
const editorBracketPairGuideBackground1 = colorRegistry.registerColor("editorBracketPairGuide.background1", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.background1", "Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides."));
const editorBracketPairGuideBackground2 = colorRegistry.registerColor("editorBracketPairGuide.background2", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.background2", "Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides."));
const editorBracketPairGuideBackground3 = colorRegistry.registerColor("editorBracketPairGuide.background3", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.background3", "Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides."));
const editorBracketPairGuideBackground4 = colorRegistry.registerColor("editorBracketPairGuide.background4", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.background4", "Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides."));
const editorBracketPairGuideBackground5 = colorRegistry.registerColor("editorBracketPairGuide.background5", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.background5", "Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides."));
const editorBracketPairGuideBackground6 = colorRegistry.registerColor("editorBracketPairGuide.background6", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.background6", "Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides."));
const editorBracketPairGuideActiveBackground1 = colorRegistry.registerColor("editorBracketPairGuide.activeBackground1", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.activeBackground1", "Background color of active bracket pair guides (1). Requires enabling bracket pair guides."));
const editorBracketPairGuideActiveBackground2 = colorRegistry.registerColor("editorBracketPairGuide.activeBackground2", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.activeBackground2", "Background color of active bracket pair guides (2). Requires enabling bracket pair guides."));
const editorBracketPairGuideActiveBackground3 = colorRegistry.registerColor("editorBracketPairGuide.activeBackground3", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.activeBackground3", "Background color of active bracket pair guides (3). Requires enabling bracket pair guides."));
const editorBracketPairGuideActiveBackground4 = colorRegistry.registerColor("editorBracketPairGuide.activeBackground4", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.activeBackground4", "Background color of active bracket pair guides (4). Requires enabling bracket pair guides."));
const editorBracketPairGuideActiveBackground5 = colorRegistry.registerColor("editorBracketPairGuide.activeBackground5", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.activeBackground5", "Background color of active bracket pair guides (5). Requires enabling bracket pair guides."));
const editorBracketPairGuideActiveBackground6 = colorRegistry.registerColor("editorBracketPairGuide.activeBackground6", { dark: "#00000000", light: "#00000000", hc: "#00000000" }, nls.localize("editorBracketPairGuide.activeBackground6", "Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));
colorRegistry.registerColor("editorUnicodeHighlight.border", { dark: "#BD9B03", light: "#CEA33D", hc: "#ff0000" }, nls.localize("editorUnicodeHighlight.border", "Border color used to highlight unicode characters."));
themeService.registerThemingParticipant((theme, collector) => {
  const background = theme.getColor(colorRegistry.editorBackground);
  if (background) {
    collector.addRule(`.monaco-editor, .monaco-editor-background, .monaco-editor .inputarea.ime-input { background-color: ${background}; }`);
  }
  const foreground = theme.getColor(colorRegistry.editorForeground);
  if (foreground) {
    collector.addRule(`.monaco-editor, .monaco-editor .inputarea.ime-input { color: ${foreground}; }`);
  }
  const gutter = theme.getColor(editorGutter);
  if (gutter) {
    collector.addRule(`.monaco-editor .margin { background-color: ${gutter}; }`);
  }
  const rangeHighlight = theme.getColor(editorRangeHighlight);
  if (rangeHighlight) {
    collector.addRule(`.monaco-editor .rangeHighlight { background-color: ${rangeHighlight}; }`);
  }
  const rangeHighlightBorder = theme.getColor(editorRangeHighlightBorder);
  if (rangeHighlightBorder) {
    collector.addRule(`.monaco-editor .rangeHighlight { border: 1px ${theme.type === "hc" ? "dotted" : "solid"} ${rangeHighlightBorder}; }`);
  }
  const symbolHighlight = theme.getColor(editorSymbolHighlight);
  if (symbolHighlight) {
    collector.addRule(`.monaco-editor .symbolHighlight { background-color: ${symbolHighlight}; }`);
  }
  const symbolHighlightBorder = theme.getColor(editorSymbolHighlightBorder);
  if (symbolHighlightBorder) {
    collector.addRule(`.monaco-editor .symbolHighlight { border: 1px ${theme.type === "hc" ? "dotted" : "solid"} ${symbolHighlightBorder}; }`);
  }
  const invisibles = theme.getColor(editorWhitespaces);
  if (invisibles) {
    collector.addRule(`.monaco-editor .mtkw { color: ${invisibles} !important; }`);
    collector.addRule(`.monaco-editor .mtkz { color: ${invisibles} !important; }`);
  }
});
exports.editorActiveIndentGuides = editorActiveIndentGuides;
exports.editorActiveLineNumber = editorActiveLineNumber;
exports.editorBracketHighlightingForeground1 = editorBracketHighlightingForeground1;
exports.editorBracketHighlightingForeground2 = editorBracketHighlightingForeground2;
exports.editorBracketHighlightingForeground3 = editorBracketHighlightingForeground3;
exports.editorBracketHighlightingForeground4 = editorBracketHighlightingForeground4;
exports.editorBracketHighlightingForeground5 = editorBracketHighlightingForeground5;
exports.editorBracketHighlightingForeground6 = editorBracketHighlightingForeground6;
exports.editorBracketHighlightingUnexpectedBracketForeground = editorBracketHighlightingUnexpectedBracketForeground;
exports.editorBracketMatchBackground = editorBracketMatchBackground;
exports.editorBracketMatchBorder = editorBracketMatchBorder;
exports.editorBracketPairGuideActiveBackground1 = editorBracketPairGuideActiveBackground1;
exports.editorBracketPairGuideActiveBackground2 = editorBracketPairGuideActiveBackground2;
exports.editorBracketPairGuideActiveBackground3 = editorBracketPairGuideActiveBackground3;
exports.editorBracketPairGuideActiveBackground4 = editorBracketPairGuideActiveBackground4;
exports.editorBracketPairGuideActiveBackground5 = editorBracketPairGuideActiveBackground5;
exports.editorBracketPairGuideActiveBackground6 = editorBracketPairGuideActiveBackground6;
exports.editorBracketPairGuideBackground1 = editorBracketPairGuideBackground1;
exports.editorBracketPairGuideBackground2 = editorBracketPairGuideBackground2;
exports.editorBracketPairGuideBackground3 = editorBracketPairGuideBackground3;
exports.editorBracketPairGuideBackground4 = editorBracketPairGuideBackground4;
exports.editorBracketPairGuideBackground5 = editorBracketPairGuideBackground5;
exports.editorBracketPairGuideBackground6 = editorBracketPairGuideBackground6;
exports.editorCursorBackground = editorCursorBackground;
exports.editorCursorForeground = editorCursorForeground;
exports.editorGutter = editorGutter;
exports.editorIndentGuides = editorIndentGuides;
exports.editorLineHighlight = editorLineHighlight;
exports.editorLineHighlightBorder = editorLineHighlightBorder;
exports.editorLineNumbers = editorLineNumbers;
exports.editorOverviewRulerBackground = editorOverviewRulerBackground;
exports.editorOverviewRulerBorder = editorOverviewRulerBorder;
exports.editorRangeHighlight = editorRangeHighlight;
exports.editorRangeHighlightBorder = editorRangeHighlightBorder;
exports.editorRuler = editorRuler;
exports.editorSymbolHighlight = editorSymbolHighlight;
exports.editorSymbolHighlightBorder = editorSymbolHighlightBorder;
exports.editorUnnecessaryCodeBorder = editorUnnecessaryCodeBorder;
exports.editorUnnecessaryCodeOpacity = editorUnnecessaryCodeOpacity;
exports.editorWhitespaces = editorWhitespaces;
exports.ghostTextBackground = ghostTextBackground;
exports.ghostTextBorder = ghostTextBorder;
exports.ghostTextForeground = ghostTextForeground;
exports.overviewRulerError = overviewRulerError;
exports.overviewRulerInfo = overviewRulerInfo;
exports.overviewRulerRangeHighlight = overviewRulerRangeHighlight;
exports.overviewRulerWarning = overviewRulerWarning;
