refactor: replace old SUPPORTED_LANGUAGES config with new EditorLanguageConfig config

This commit is contained in:
cfngc4594 2025-03-05 08:30:58 +08:00
parent 753422ebf4
commit ca82b94b0f

View File

@ -8,8 +8,8 @@ import {
SelectValue, SelectValue,
} from "@/components/ui/select"; } from "@/components/ui/select";
import { Skeleton } from "@/components/ui/skeleton"; import { Skeleton } from "@/components/ui/skeleton";
import { EditorLanguageConfig } from "@/config/editor-language";
import { useCodeEditorStore } from "@/store/useCodeEditorStore"; import { useCodeEditorStore } from "@/store/useCodeEditorStore";
import { SUPPORTED_LANGUAGES } from "@/constants/language";
export default function LanguageSelector() { export default function LanguageSelector() {
const { hydrated, language, setLanguage } = useCodeEditorStore(); const { hydrated, language, setLanguage } = useCodeEditorStore();
@ -24,11 +24,11 @@ export default function LanguageSelector() {
<SelectValue placeholder="Select language" /> <SelectValue placeholder="Select language" />
</SelectTrigger> </SelectTrigger>
<SelectContent className="[&_*[role=option]>span>svg]:shrink-0 [&_*[role=option]>span>svg]:text-muted-foreground/80 [&_*[role=option]>span]:end-2 [&_*[role=option]>span]:start-auto [&_*[role=option]>span]:flex [&_*[role=option]>span]:items-center [&_*[role=option]>span]:gap-2 [&_*[role=option]]:pe-8 [&_*[role=option]]:ps-2"> <SelectContent className="[&_*[role=option]>span>svg]:shrink-0 [&_*[role=option]>span>svg]:text-muted-foreground/80 [&_*[role=option]>span]:end-2 [&_*[role=option]>span]:start-auto [&_*[role=option]>span]:flex [&_*[role=option]>span]:items-center [&_*[role=option]>span]:gap-2 [&_*[role=option]]:pe-8 [&_*[role=option]]:ps-2">
{SUPPORTED_LANGUAGES.map((lang) => ( {Object.values(EditorLanguageConfig).map((langConfig) => (
<SelectItem key={lang.id} value={lang.id}> <SelectItem key={langConfig.id} value={langConfig.id}>
{lang.icon} <langConfig.icon size={16} aria-hidden="true" />
<span className="truncate text-sm font-semibold mr-2"> <span className="truncate text-sm font-semibold mr-2">
{lang.label} {langConfig.label}
</span> </span>
</SelectItem> </SelectItem>
))} ))}