diff --git a/src/components/features/playground/workspace/editor/components/language-selector.tsx b/src/components/features/playground/workspace/editor/components/language-selector.tsx deleted file mode 100644 index c7f5f98..0000000 --- a/src/components/features/playground/workspace/editor/components/language-selector.tsx +++ /dev/null @@ -1,41 +0,0 @@ -"use client"; - -import { - Select, - SelectContent, - SelectItem, - SelectTrigger, - SelectValue, -} from "@/components/ui/select"; -import { Loading } from "@/components/loading"; -import { useProblem } from "@/hooks/use-problem"; -import { EditorLanguageIcons } from "@/config/editor-language-icons"; - -export function LanguageSelector() { - const { hydrated, currentLang, changeLang, editorLanguageConfigs } = useProblem(); - - if (!hydrated) { - return ; - } - - return ( - - ); -} diff --git a/src/features/problems/code/components/toolbar/controls/language-selector.tsx b/src/features/problems/code/components/toolbar/controls/language-selector.tsx new file mode 100644 index 0000000..bbf7734 --- /dev/null +++ b/src/features/problems/code/components/toolbar/controls/language-selector.tsx @@ -0,0 +1,54 @@ +"use client"; + +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@/components/ui/select"; +import { Language } from "@/generated/client"; +import { LANGUAGES } from "@/config/language"; +import COriginal from "devicons-react/icons/COriginal"; +import { useProblemEditorStore } from "@/stores/problem-editor"; +import CplusplusOriginal from "devicons-react/icons/CplusplusOriginal"; + +const getIconForLanguage = (language: Language) => { + switch (language) { + case Language.c: + return