namespace AxCopilot.Models;

public static class ChatCategory
{
	public const string General = "일반";

	public const string Management = "경영";

	public const string HR = "인사";

	public const string Finance = "재무";

	public const string RnD = "연구개발";

	public const string Product = "제품분석";

	public const string Yield = "수율분석";

	public const string MfgTech = "제조기술";

	public const string System = "시스템";

	public static readonly (string Key, string Label, string Symbol, string Color)[] All = new(string, string, string, string)[9]
	{
		("일반", "일반", "\ue8bd", "#6B7280"),
		("경영", "경영", "\ue902", "#8B5CF6"),
		("인사", "인사", "\ue716", "#0EA5E9"),
		("재무", "재무", "\ue8c7", "#D97706"),
		("연구개발", "연구개발", "\ue9a8", "#3B82F6"),
		("제품분석", "제품분석", "\ue9d9", "#EC4899"),
		("수율분석", "수율분석", "\ue9f9", "#F59E0B"),
		("제조기술", "제조기술", "\ue90f", "#10B981"),
		("시스템", "시스템", "\ue770", "#EF4444")
	};

	public static string GetSymbol(string? category)
	{
		if (string.IsNullOrEmpty(category))
		{
			return "\ue8bd";
		}
		(string, string, string, string)[] all = All;
		for (int i = 0; i < all.Length; i++)
		{
			var (text, _, result, _) = all[i];
			if (text == category)
			{
				return result;
			}
		}
		return "\ue8bd";
	}

	public static string GetColor(string? category)
	{
		if (string.IsNullOrEmpty(category))
		{
			return "#6B7280";
		}
		(string, string, string, string)[] all = All;
		for (int i = 0; i < all.Length; i++)
		{
			var (text, _, _, result) = all[i];
			if (text == category)
			{
				return result;
			}
		}
		return "#6B7280";
	}
}
