完成Work组件的界面和一些小修改
> 1. 修改优化路由守卫
> 2. 去除拦截器中的调试信息
> 3. 修改头部导航条下拉菜单的样式增加图标。
> 4. work组件现在使用mock数据

Change-Id: Ic602a35bb02e645a0d5253c5cbd12a68d70bfb33
diff --git a/src/feature/work/hooks.ts b/src/feature/work/hooks.ts
new file mode 100644
index 0000000..f07189e
--- /dev/null
+++ b/src/feature/work/hooks.ts
@@ -0,0 +1,34 @@
+import { useCallback, useState } from "react";
+import { useNavigate } from "react-router";
+import type { 
+    WorkFormData, 
+    BasicInfo, 
+    CoverInfo, 
+    VersionFormData,
+    ArtworkCategory
+} from './types';
+
+// ==================== Hook ====================
+export const useCreateWorkForm = () => {
+    const navigate = useNavigate();
+    const [currentStep, setCurrentStep] = useState<number>(0);
+    const [formData, setFormData] = useState<WorkFormData>({
+        basicInfo: { 
+            artworkName: '', 
+            artworkCategory: '概念设计' as ArtworkCategory, 
+            artworkDescription: '' 
+        },
+        coverInfo: {},
+        versions: [],
+    });
+
+    const handleUpdateFormData = useCallback((field: keyof WorkFormData, value: BasicInfo | CoverInfo | VersionFormData[]) => {
+        setFormData(prev => ({ ...prev, [field]: value }));
+    }, []);
+
+    const handleNext = useCallback(() => setCurrentStep(prev => Math.min(prev + 1, 3)), []);
+    const handlePrev = useCallback(() => setCurrentStep(prev => Math.max(prev - 1, 0)), []);
+    const handlePublish = useCallback(() => navigate('/work/new-work-id'), [navigate]);
+
+    return { currentStep, formData, handleUpdateFormData, handleNext, handlePrev, handlePublish };
+};
\ No newline at end of file