refactor(store): rename useCodeEditorState to useCodeEditorStore in imports

This commit is contained in:
cfngc4594 2025-03-03 14:20:25 +08:00
parent 64655d8118
commit aa255fc2e1
9 changed files with 24 additions and 30 deletions

View File

@ -10,11 +10,11 @@ import { cn } from "@/lib/utils";
import { useState } from "react";
import { Check, Copy } from "lucide-react";
import { Button } from "@/components/ui/button";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
export default function CopyButton() {
const [copied, setCopied] = useState(false);
const { editor } = useCodeEditorState();
const { editor } = useCodeEditorStore();
const handleCopy = async () => {
try {

View File

@ -2,7 +2,7 @@
import { cn } from "@/lib/utils";
import { useEffect, useState } from "react";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
interface WorkspaceEditorFooterProps {
className?: string;
@ -12,7 +12,7 @@ export default function WorkspaceEditorFooter({
className,
...props
}: WorkspaceEditorFooterProps) {
const { editor } = useCodeEditorState();
const { editor } = useCodeEditorStore();
const [position, setPosition] = useState<{ lineNumber: number; column: number } | null>(null);
useEffect(() => {

View File

@ -8,10 +8,10 @@ import {
} from "@/components/ui/tooltip";
import { Paintbrush } from "lucide-react";
import { Button } from "@/components/ui/button";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
export default function FormatButton() {
const { editor } = useCodeEditorState();
const { editor } = useCodeEditorStore();
return (
<TooltipProvider delayDuration={0}>

View File

@ -8,13 +8,13 @@ import {
SelectValue,
} from "@/components/ui/select";
import { Skeleton } from "@/components/ui/skeleton";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
import { SUPPORTED_LANGUAGES } from "@/constants/language";
export default function LanguageSelector() {
const { loading, language, setLanguage } = useCodeEditorState();
const { hydrated, language, setLanguage } = useCodeEditorStore();
if (loading) {
if (!hydrated) {
return <Skeleton className="h-6 w-16 rounded-2xl" />;
}

View File

@ -8,10 +8,10 @@ import {
} from "@/components/ui/tooltip";
import { Redo2 } from "lucide-react";
import { Button } from "@/components/ui/button";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
export default function RedoButton() {
const { editor } = useCodeEditorState();
const { editor } = useCodeEditorStore();
return (
<TooltipProvider delayDuration={0}>

View File

@ -2,7 +2,7 @@
import { RotateCcw } from "lucide-react";
import { Button } from "@/components/ui/button";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
import {
Tooltip,
TooltipContent,
@ -12,7 +12,7 @@ import {
import { DEFAULT_EDITOR_VALUE } from "@/config/editor/value";
export default function ResetButton() {
const { editor, language } = useCodeEditorState();
const { editor, language } = useCodeEditorStore();
return (
<TooltipProvider delayDuration={0}>

View File

@ -8,10 +8,11 @@ import {
} from "@/components/ui/tooltip";
import { Undo2 } from "lucide-react";
import { Button } from "@/components/ui/button";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
export default function UndoButton() {
const { editor } = useCodeEditorState();
const { editor } = useCodeEditorStore();
return (
<TooltipProvider delayDuration={0}>
<Tooltip>

View File

@ -17,7 +17,7 @@ import { DEFAULT_EDITOR_PATH } from "@/config/editor/path";
import { DEFAULT_EDITOR_VALUE } from "@/config/editor/value";
import type { MonacoLanguageClient } from "monaco-languageclient";
import { SUPPORTED_LANGUAGE_SERVERS } from "@/config/lsp/language-server";
import { useCodeEditorOption, useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorOptionStore, useCodeEditorStore } from "@/store/useCodeEditorStore";
const Editor = dynamic(
async () => {
@ -52,8 +52,8 @@ export default function CodeEditor() {
socket: null,
controller: new AbortController(),
});
const { fontSize, lineHeight } = useCodeEditorOption();
const { language, setEditor } = useCodeEditorState();
const { fontSize, lineHeight } = useCodeEditorOptionStore();
const { language, setEditor } = useCodeEditorStore();
useEffect(() => {
const currentHandle: ConnectionHandle = {
@ -114,8 +114,7 @@ export default function CodeEditor() {
if (!serverConfig || signal.aborted) return;
// Create WebSocket connection
const lspUrl = `${serverConfig.protocol}://${serverConfig.hostname}${serverConfig.port ? `:${serverConfig.port}` : ""
}${serverConfig.path || ""}`;
const lspUrl = `${serverConfig.protocol}://${serverConfig.hostname}${serverConfig.port ? `:${serverConfig.port}` : ""}${serverConfig.path || ""}`;
const webSocket = new WebSocket(normalizeUrl(lspUrl));
currentHandle.socket = webSocket;
@ -140,9 +139,7 @@ export default function CodeEditor() {
// Initialize Language Client
const { MonacoLanguageClient } = await import("monaco-languageclient");
const { ErrorAction, CloseAction } = await import(
"vscode-languageclient"
);
const { ErrorAction, CloseAction } = await import("vscode-languageclient");
const socket = toSocket(webSocket);
const client = new MonacoLanguageClient({
@ -213,11 +210,7 @@ export default function CodeEditor() {
defaultLanguage={language}
value={editorValue}
path={DEFAULT_EDITOR_PATH[language]}
theme={
resolvedTheme === "light"
? "github-light-default"
: "github-dark-default"
}
theme={resolvedTheme === "light" ? "github-light-default" : "github-dark-default"}
className="h-full"
options={mergeOptions}
beforeMount={(monaco) => {

View File

@ -5,7 +5,7 @@ import { useState } from "react";
import { judge } from "@/app/actions/judge";
import { Button } from "@/components/ui/button";
import { LoaderCircleIcon, PlayIcon } from "lucide-react";
import { useCodeEditorState } from "@/store/useCodeEditor";
import { useCodeEditorStore } from "@/store/useCodeEditorStore";
interface RunCodeProps {
className?: string;
@ -15,7 +15,7 @@ export default function RunCode({
className,
...props
}: RunCodeProps) {
const { language, editor, setResult } = useCodeEditorState();
const { language, editor, setResult } = useCodeEditorStore();
const [isLoading, setIsLoading] = useState<boolean>(false);
const handleJudge = async () => {