import type { Theme } from '../types.ts';

export const dracula: Theme = {
	name: 'dracula',
	displayName: 'Dracula',
	colors: {
		bg: '#282a36',
		bgDark: '#21222c',
		bgHighlight: '#44475a',
		bgSubtle: '#282a36',

		fg: '#f8f8f2',
		fgBright: '#ffffff',
		fgMuted: '#f8f8f2',
		fgDark: '#6272a4',
		fgDimmed: '#44475a',

		blue: '#8be9fd',
		green: '#50fa7b',
		red: '#ff5555',
		yellow: '#f1fa8c',
		purple: '#bd93f9',
		cyan: '#8be9fd',
		orange: '#ffb86c',
		teal: '#8be9fd',
		magenta: '#ff79c6',

		border: '#44475a',
		borderActive: '#bd93f9',
		borderSubtle: '#282a36',

		toolBg: '#21222c',
		toolFg: '#44475a',
		toolIcon: '#6272a4',
		toolName: '#6272a4',
		toolArgs: '#44475a',

		userBg: '#282a36',
		assistantBg: '#21222c',

		userBadge: '#8be9fd',
		assistantBadge: '#bd93f9',
		systemBadge: '#6272a4',

		streamDot: '#50fa7b',
		errorBg: '#3b1f1f',

		diffAddedBg: '#1a3a1a',
		diffRemovedBg: '#3b1f1f',
		diffContextBg: 'transparent',
		diffAddedSign: '#50fa7b',
		diffRemovedSign: '#ff5555',
		diffLineNumberFg: '#6272a4',
	},
	syntax: {
		keyword: '#ff79c6',
		keywordImport: '#ff79c6',
		keywordOperator: '#ff79c6',
		string: '#f1fa8c',
		comment: '#6272a4',
		number: '#bd93f9',
		boolean: '#bd93f9',
		constant: '#bd93f9',
		function: '#50fa7b',
		functionCall: '#50fa7b',
		functionMethodCall: '#50fa7b',
		type: '#8be9fd',
		constructor: '#8be9fd',
		variable: '#f8f8f2',
		variableMember: '#ffb86c',
		property: '#ffb86c',
		operator: '#ff79c6',
		punctuation: '#f8f8f2',
		punctuationBracket: '#f8f8f2',
		punctuationDelimiter: '#f8f8f2',
		default: '#f8f8f2',
		markupHeading: '#bd93f9',
		markupHeading1: '#50fa7b',
		markupHeading2: '#8be9fd',
		markupBold: '#ffffff',
		markupStrong: '#ffffff',
		markupItalic: '#f1fa8c',
		markupList: '#ff79c6',
		markupQuote: '#6272a4',
		markupRaw: '#f1fa8c',
		markupRawBlock: '#f1fa8c',
		markupLink: '#8be9fd',
		markupLinkUrl: '#8be9fd',
	},
};
