
import { Color, RGBA } from '../../../../base/common/color.js';
import { localize } from '../../../../nls.js';
import { registerColor, transparent } from '../../../../platform/theme/common/colorUtils.js';
import { focusBorder } from '../../../../platform/theme/common/colors/baseColors.js';
import '../../../../platform/theme/common/colors/chartsColors.js';
import { editorWidgetBorder } from '../../../../platform/theme/common/colors/editorColors.js';
import { selectBackground, selectForeground, selectBorder, checkboxBackground, checkboxForeground, checkboxBorder, inputBackground, inputForeground, inputBorder } from '../../../../platform/theme/common/colors/inputColors.js';
import { listHoverBackground } from '../../../../platform/theme/common/colors/listColors.js';
import '../../../../platform/theme/common/colors/menuColors.js';
import '../../../../platform/theme/common/colors/minimapColors.js';
import '../../../../platform/theme/common/colors/miscColors.js';
import '../../../../platform/theme/common/colors/quickpickColors.js';
import '../../../../platform/theme/common/colors/searchColors.js';
import { PANEL_BORDER } from '../../../common/theme.js';

const settingsHeaderForeground = registerColor("settings.headerForeground", {
    light: "#444444",
    dark: "#e7e7e7",
    hcDark: "#ffffff",
    hcLight: "#292929"
}, ( localize(12705, "The foreground color for a section header or active title.")));
const settingsHeaderHoverForeground = registerColor("settings.settingsHeaderHoverForeground", ( transparent(settingsHeaderForeground, 0.7)), ( localize(12706, "The foreground color for a section header or hovered title.")));
registerColor("settings.modifiedItemIndicator", {
    light: ( new Color(( new RGBA(102, 175, 224)))),
    dark: ( new Color(( new RGBA(12, 125, 157)))),
    hcDark: ( new Color(( new RGBA(0, 73, 122)))),
    hcLight: ( new Color(( new RGBA(102, 175, 224))))
}, ( localize(12707, "The color of the modified setting indicator.")));
const settingsHeaderBorder = registerColor("settings.headerBorder", PANEL_BORDER, ( localize(12708, "The color of the header container border.")));
const settingsSashBorder = registerColor("settings.sashBorder", PANEL_BORDER, ( localize(12709, "The color of the Settings editor splitview sash border.")));
const settingsSelectBackground = registerColor(`settings.dropdownBackground`, selectBackground, ( localize(12710, "Settings editor dropdown background.")));
const settingsSelectForeground = registerColor("settings.dropdownForeground", selectForeground, ( localize(12711, "Settings editor dropdown foreground.")));
const settingsSelectBorder = registerColor("settings.dropdownBorder", selectBorder, ( localize(12712, "Settings editor dropdown border.")));
const settingsSelectListBorder = registerColor("settings.dropdownListBorder", editorWidgetBorder, ( localize(
    12713,
    "Settings editor dropdown list border. This surrounds the options and separates the options from the description."
)));
registerColor("settings.checkboxBackground", checkboxBackground, ( localize(12714, "Settings editor checkbox background.")));
registerColor("settings.checkboxForeground", checkboxForeground, ( localize(12715, "Settings editor checkbox foreground.")));
registerColor("settings.checkboxBorder", checkboxBorder, ( localize(12716, "Settings editor checkbox border.")));
const settingsTextInputBackground = registerColor("settings.textInputBackground", inputBackground, ( localize(12717, "Settings editor text input box background.")));
const settingsTextInputForeground = registerColor("settings.textInputForeground", inputForeground, ( localize(12718, "Settings editor text input box foreground.")));
const settingsTextInputBorder = registerColor("settings.textInputBorder", inputBorder, ( localize(12719, "Settings editor text input box border.")));
const settingsNumberInputBackground = registerColor("settings.numberInputBackground", inputBackground, ( localize(12720, "Settings editor number input box background.")));
const settingsNumberInputForeground = registerColor("settings.numberInputForeground", inputForeground, ( localize(12721, "Settings editor number input box foreground.")));
const settingsNumberInputBorder = registerColor("settings.numberInputBorder", inputBorder, ( localize(12722, "Settings editor number input box border.")));
registerColor("settings.focusedRowBackground", {
    dark: ( transparent(listHoverBackground, .6)),
    light: ( transparent(listHoverBackground, .6)),
    hcDark: null,
    hcLight: null
}, ( localize(12723, "The background color of a settings row when focused.")));
registerColor("settings.rowHoverBackground", {
    dark: ( transparent(listHoverBackground, .3)),
    light: ( transparent(listHoverBackground, .3)),
    hcDark: null,
    hcLight: null
}, ( localize(12724, "The background color of a settings row when hovered.")));
registerColor("settings.focusedRowBorder", focusBorder, ( localize(
    12725,
    "The color of the row's top and bottom border when the row is focused."
)));

export { settingsHeaderBorder, settingsHeaderForeground, settingsHeaderHoverForeground, settingsNumberInputBackground, settingsNumberInputBorder, settingsNumberInputForeground, settingsSashBorder, settingsSelectBackground, settingsSelectBorder, settingsSelectForeground, settingsSelectListBorder, settingsTextInputBackground, settingsTextInputBorder, settingsTextInputForeground };
