diff --git a/.eslintrc.js b/.eslintrc.js index 556809bf81..9ba0e1550f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -22,6 +22,14 @@ config.rules['unicorn/prefer-query-selector'] = 0; config.rules['unicorn/no-array-callback-reference'] = 0; // FIXME: Linting error in src/app/[variants]/(main)/chat/features/Migration/DBReader.ts, the fundamental solution should be upgrading typescript-eslint config.rules['@typescript-eslint/no-useless-constructor'] = 0; +config.rules['@typescript-eslint/consistent-type-imports'] = [ + 'error', + { + disallowTypeAnnotations: false, + fixStyle: 'inline-type-imports', + prefer: 'type-imports', + }, +]; config.overrides = [ { @@ -38,6 +46,26 @@ config.overrides = [ }, }, + // Desktop app enables `emitDecoratorMetadata`, so some "type-only" references may be required at runtime + // for metadata reflection. Avoid auto-converting imports to `import type` in this scope. + { + files: ['apps/desktop/**/*.{ts,tsx,cts,mts}'], + parserOptions: { + project: ['./apps/desktop/tsconfig.json'], + tsconfigRootDir: __dirname, + }, + rules: { + '@typescript-eslint/consistent-type-imports': [ + 'error', + { + disallowTypeAnnotations: false, + fixStyle: 'inline-type-imports', + prefer: 'no-type-imports', + }, + ], + }, + }, + { files: ['src/store/image/**/*', 'src/types/generation/**/*'], rules: { diff --git a/package.json b/package.json index 6b8fc45b3a..a071e81af3 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,15 @@ "tts", "stt" ], + "workspaces": [ + "packages/*", + "packages/business/*", + "e2e", + "apps/desktop/src/main" + ], + "overrides": { + "stylelint-config-clean-order": "7.0.0" + }, "homepage": "https://github.com/lobehub/lobe-chat", "bugs": { "url": "https://github.com/lobehub/lobe-chat/issues/new/choose" @@ -25,12 +34,6 @@ "license": "MIT", "author": "LobeHub ", "sideEffects": false, - "workspaces": [ - "packages/*", - "packages/business/*", - "e2e", - "apps/desktop/src/main" - ], "scripts": { "prebuild": "tsx scripts/prebuild.mts && npm run lint", "build": "cross-env NODE_OPTIONS=--max-old-space-size=6144 next build --webpack", @@ -131,9 +134,6 @@ "eslint --fix" ] }, - "overrides": { - "stylelint-config-clean-order": "7.0.0" - }, "dependencies": { "@ant-design/icons": "^6.1.0", "@ant-design/pro-components": "^2.8.10", @@ -450,14 +450,5 @@ "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" - }, - "pnpm": { - "onlyBuiltDependencies": [ - "@vercel/speed-insights" - ], - "overrides": { - "jose": "^6.1.3", - "stylelint-config-clean-order": "7.0.0" - } } -} +} \ No newline at end of file diff --git a/packages/model-bank/src/modelProviders/ai21.ts b/packages/model-bank/src/modelProviders/ai21.ts index 79f56c4592..4f3b5778b3 100644 --- a/packages/model-bank/src/modelProviders/ai21.ts +++ b/packages/model-bank/src/modelProviders/ai21.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref https://docs.ai21.com/reference/jamba-15-api-ref const Ai21: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/ai302.ts b/packages/model-bank/src/modelProviders/ai302.ts index f738d14c90..ff94e4381f 100644 --- a/packages/model-bank/src/modelProviders/ai302.ts +++ b/packages/model-bank/src/modelProviders/ai302.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://302.ai/pricing/ const Ai302: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/ai360.ts b/packages/model-bank/src/modelProviders/ai360.ts index 22f7586cc0..cf9ce1f798 100644 --- a/packages/model-bank/src/modelProviders/ai360.ts +++ b/packages/model-bank/src/modelProviders/ai360.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://ai.360.cn/platform/docs/overview const Ai360: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/aihubmix.ts b/packages/model-bank/src/modelProviders/aihubmix.ts index 95f33d87f7..ab2278148f 100644 --- a/packages/model-bank/src/modelProviders/aihubmix.ts +++ b/packages/model-bank/src/modelProviders/aihubmix.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const AiHubMix: ModelProviderCard = { apiKeyUrl: 'https://lobe.li/9mZhb4T', diff --git a/packages/model-bank/src/modelProviders/akashchat.ts b/packages/model-bank/src/modelProviders/akashchat.ts index 29ba2aead5..11ea43edb3 100644 --- a/packages/model-bank/src/modelProviders/akashchat.ts +++ b/packages/model-bank/src/modelProviders/akashchat.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const AkashChat: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/anthropic.ts b/packages/model-bank/src/modelProviders/anthropic.ts index da551a9708..ff9fff3162 100644 --- a/packages/model-bank/src/modelProviders/anthropic.ts +++ b/packages/model-bank/src/modelProviders/anthropic.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Anthropic: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/azure.ts b/packages/model-bank/src/modelProviders/azure.ts index abc3a0c448..d92e93af29 100644 --- a/packages/model-bank/src/modelProviders/azure.ts +++ b/packages/model-bank/src/modelProviders/azure.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://learn.microsoft.com/azure/ai-services/openai/concepts/models const Azure: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/azureai.ts b/packages/model-bank/src/modelProviders/azureai.ts index dbbad4aa04..ddb4402dc8 100644 --- a/packages/model-bank/src/modelProviders/azureai.ts +++ b/packages/model-bank/src/modelProviders/azureai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://learn.microsoft.com/azure/ai-services/openai/concepts/models const Azure: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/baichuan.ts b/packages/model-bank/src/modelProviders/baichuan.ts index 3d8afa6eba..7d871c843a 100644 --- a/packages/model-bank/src/modelProviders/baichuan.ts +++ b/packages/model-bank/src/modelProviders/baichuan.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://platform.baichuan-ai.com/price const Baichuan: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/bedrock.ts b/packages/model-bank/src/modelProviders/bedrock.ts index b61c2de294..fe3c6bb0ac 100644 --- a/packages/model-bank/src/modelProviders/bedrock.ts +++ b/packages/model-bank/src/modelProviders/bedrock.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref :https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html // ref :https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/models diff --git a/packages/model-bank/src/modelProviders/bfl.ts b/packages/model-bank/src/modelProviders/bfl.ts index 2e9f6c19ff..00e6f40002 100644 --- a/packages/model-bank/src/modelProviders/bfl.ts +++ b/packages/model-bank/src/modelProviders/bfl.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; /** * @see https://docs.bfl.ai/ diff --git a/packages/model-bank/src/modelProviders/cerebras.ts b/packages/model-bank/src/modelProviders/cerebras.ts index 7489ab1630..f32d9a9d5e 100644 --- a/packages/model-bank/src/modelProviders/cerebras.ts +++ b/packages/model-bank/src/modelProviders/cerebras.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Cerebras: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/cloudflare.ts b/packages/model-bank/src/modelProviders/cloudflare.ts index 713327213f..110dbcf2cc 100644 --- a/packages/model-bank/src/modelProviders/cloudflare.ts +++ b/packages/model-bank/src/modelProviders/cloudflare.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref https://developers.cloudflare.com/workers-ai/models/#text-generation // api https://developers.cloudflare.com/workers-ai/configuration/open-ai-compatibility diff --git a/packages/model-bank/src/modelProviders/cohere.ts b/packages/model-bank/src/modelProviders/cohere.ts index 9516eb8d45..8dfd17d354 100644 --- a/packages/model-bank/src/modelProviders/cohere.ts +++ b/packages/model-bank/src/modelProviders/cohere.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Cohere: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/cometapi.ts b/packages/model-bank/src/modelProviders/cometapi.ts index 7bdbe53638..4cf6a0df80 100644 --- a/packages/model-bank/src/modelProviders/cometapi.ts +++ b/packages/model-bank/src/modelProviders/cometapi.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://api.cometapi.com/pricing const CometAPI: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/comfyui.ts b/packages/model-bank/src/modelProviders/comfyui.ts index 1e08ff2094..8ac2bc97f8 100644 --- a/packages/model-bank/src/modelProviders/comfyui.ts +++ b/packages/model-bank/src/modelProviders/comfyui.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; /** * ComfyUI Provider Configuration diff --git a/packages/model-bank/src/modelProviders/deepseek.ts b/packages/model-bank/src/modelProviders/deepseek.ts index e8bec197fe..1d3ed97dbe 100644 --- a/packages/model-bank/src/modelProviders/deepseek.ts +++ b/packages/model-bank/src/modelProviders/deepseek.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const DeepSeek: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/fal.ts b/packages/model-bank/src/modelProviders/fal.ts index 3d0fe810fb..7015b7da8c 100644 --- a/packages/model-bank/src/modelProviders/fal.ts +++ b/packages/model-bank/src/modelProviders/fal.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; /** * @see https://fal.ai/models/fal-ai/flux/schnell diff --git a/packages/model-bank/src/modelProviders/fireworksai.ts b/packages/model-bank/src/modelProviders/fireworksai.ts index bf5a6dea53..aa2891e65c 100644 --- a/packages/model-bank/src/modelProviders/fireworksai.ts +++ b/packages/model-bank/src/modelProviders/fireworksai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://fireworks.ai/models?show=Serverless // ref: https://fireworks.ai/pricing diff --git a/packages/model-bank/src/modelProviders/giteeai.ts b/packages/model-bank/src/modelProviders/giteeai.ts index 3a8458b818..444771f7ad 100644 --- a/packages/model-bank/src/modelProviders/giteeai.ts +++ b/packages/model-bank/src/modelProviders/giteeai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://ai.gitee.com/serverless-api/packages/1910 const GiteeAI: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/github.ts b/packages/model-bank/src/modelProviders/github.ts index 8e5f7b937d..e2cfe4f7e4 100644 --- a/packages/model-bank/src/modelProviders/github.ts +++ b/packages/model-bank/src/modelProviders/github.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://github.com/marketplace/models const Github: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/google.ts b/packages/model-bank/src/modelProviders/google.ts index 54de2a10e2..6b2b8260dd 100644 --- a/packages/model-bank/src/modelProviders/google.ts +++ b/packages/model-bank/src/modelProviders/google.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://ai.google.dev/gemini-api/docs/models/gemini const Google: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/groq.ts b/packages/model-bank/src/modelProviders/groq.ts index 1e2b12c93f..e2e1f0ce0a 100644 --- a/packages/model-bank/src/modelProviders/groq.ts +++ b/packages/model-bank/src/modelProviders/groq.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref https://console.groq.com/docs/tool-use const Groq: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/higress.ts b/packages/model-bank/src/modelProviders/higress.ts index 0db6aed1ea..dedfaaf549 100644 --- a/packages/model-bank/src/modelProviders/higress.ts +++ b/packages/model-bank/src/modelProviders/higress.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Higress: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/huggingface.ts b/packages/model-bank/src/modelProviders/huggingface.ts index 25f6851560..e022c07d5a 100644 --- a/packages/model-bank/src/modelProviders/huggingface.ts +++ b/packages/model-bank/src/modelProviders/huggingface.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const HuggingFace: ModelProviderCard = { apiKeyUrl: 'https://huggingface.co/settings/tokens', diff --git a/packages/model-bank/src/modelProviders/hunyuan.ts b/packages/model-bank/src/modelProviders/hunyuan.ts index f7398e325a..08d2a88351 100644 --- a/packages/model-bank/src/modelProviders/hunyuan.ts +++ b/packages/model-bank/src/modelProviders/hunyuan.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref https://cloud.tencent.com/document/product/1729/104753 const Hunyuan: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/index.ts b/packages/model-bank/src/modelProviders/index.ts index 7399f895c7..4634aa015c 100644 --- a/packages/model-bank/src/modelProviders/index.ts +++ b/packages/model-bank/src/modelProviders/index.ts @@ -1,6 +1,6 @@ import { ENABLE_BUSINESS_FEATURES } from '@lobechat/business-const'; -import { ChatModelCard, ModelProviderCard } from '@/types/llm'; +import { type ChatModelCard, type ModelProviderCard } from '@/types/llm'; import Ai21Provider from './ai21'; import Ai302Provider from './ai302'; diff --git a/packages/model-bank/src/modelProviders/infiniai.ts b/packages/model-bank/src/modelProviders/infiniai.ts index f1d792db53..d47a286e40 100644 --- a/packages/model-bank/src/modelProviders/infiniai.ts +++ b/packages/model-bank/src/modelProviders/infiniai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // https://cloud.infini-ai.com/genstudio/model // All models are currently free diff --git a/packages/model-bank/src/modelProviders/internlm.ts b/packages/model-bank/src/modelProviders/internlm.ts index e962c19552..49dbd54b36 100644 --- a/packages/model-bank/src/modelProviders/internlm.ts +++ b/packages/model-bank/src/modelProviders/internlm.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const InternLM: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/jina.ts b/packages/model-bank/src/modelProviders/jina.ts index bb90750d1e..39c0205889 100644 --- a/packages/model-bank/src/modelProviders/jina.ts +++ b/packages/model-bank/src/modelProviders/jina.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Jina: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/lmstudio.ts b/packages/model-bank/src/modelProviders/lmstudio.ts index 60f6383adc..b8e9621516 100644 --- a/packages/model-bank/src/modelProviders/lmstudio.ts +++ b/packages/model-bank/src/modelProviders/lmstudio.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://ollama.com/library const LMStudio: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/lobehub.ts b/packages/model-bank/src/modelProviders/lobehub.ts index 396599553f..2e404be8ee 100644 --- a/packages/model-bank/src/modelProviders/lobehub.ts +++ b/packages/model-bank/src/modelProviders/lobehub.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const LobeHub: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/minimax.ts b/packages/model-bank/src/modelProviders/minimax.ts index 7277a9b242..470f9f6849 100644 --- a/packages/model-bank/src/modelProviders/minimax.ts +++ b/packages/model-bank/src/modelProviders/minimax.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://platform.minimaxi.com/document/Models const Minimax: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/mistral.ts b/packages/model-bank/src/modelProviders/mistral.ts index 92555ad756..cb87c4e110 100644 --- a/packages/model-bank/src/modelProviders/mistral.ts +++ b/packages/model-bank/src/modelProviders/mistral.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://docs.mistral.ai/getting-started/models/ // ref: https://docs.mistral.ai/capabilities/function_calling/ diff --git a/packages/model-bank/src/modelProviders/modelscope.ts b/packages/model-bank/src/modelProviders/modelscope.ts index b098ac06e4..b381fce742 100644 --- a/packages/model-bank/src/modelProviders/modelscope.ts +++ b/packages/model-bank/src/modelProviders/modelscope.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://modelscope.cn/docs/model-service/API-Inference/intro const ModelScope: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/moonshot.ts b/packages/model-bank/src/modelProviders/moonshot.ts index 15e9fba417..a78ebe768f 100644 --- a/packages/model-bank/src/modelProviders/moonshot.ts +++ b/packages/model-bank/src/modelProviders/moonshot.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://platform.moonshot.cn/docs/intro#模型列表 const Moonshot: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/nebius.ts b/packages/model-bank/src/modelProviders/nebius.ts index 68e8a52649..2e759d487b 100644 --- a/packages/model-bank/src/modelProviders/nebius.ts +++ b/packages/model-bank/src/modelProviders/nebius.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Nebius: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/newapi.ts b/packages/model-bank/src/modelProviders/newapi.ts index a1dd83a3b5..f759699cbf 100644 --- a/packages/model-bank/src/modelProviders/newapi.ts +++ b/packages/model-bank/src/modelProviders/newapi.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const NewAPI: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/novita.ts b/packages/model-bank/src/modelProviders/novita.ts index f4115b7cb9..0f41ea6ada 100644 --- a/packages/model-bank/src/modelProviders/novita.ts +++ b/packages/model-bank/src/modelProviders/novita.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://novita.ai/model-api/product/llm-api const Novita: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/nvidia.ts b/packages/model-bank/src/modelProviders/nvidia.ts index 6666d99c22..475eb26a83 100644 --- a/packages/model-bank/src/modelProviders/nvidia.ts +++ b/packages/model-bank/src/modelProviders/nvidia.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Nvidia: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/ollama.ts b/packages/model-bank/src/modelProviders/ollama.ts index d1e6dc45f7..bd6a04ad48 100644 --- a/packages/model-bank/src/modelProviders/ollama.ts +++ b/packages/model-bank/src/modelProviders/ollama.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Ollama: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/ollamacloud.ts b/packages/model-bank/src/modelProviders/ollamacloud.ts index e3e2f81915..98bcf43a64 100644 --- a/packages/model-bank/src/modelProviders/ollamacloud.ts +++ b/packages/model-bank/src/modelProviders/ollamacloud.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const OllamaCloud: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/openai.ts b/packages/model-bank/src/modelProviders/openai.ts index b4a84500a9..b9ebf34f50 100644 --- a/packages/model-bank/src/modelProviders/openai.ts +++ b/packages/model-bank/src/modelProviders/openai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://platform.openai.com/docs/deprecations const OpenAI: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/openrouter.ts b/packages/model-bank/src/modelProviders/openrouter.ts index 989f4044ac..7dbb75fc54 100644 --- a/packages/model-bank/src/modelProviders/openrouter.ts +++ b/packages/model-bank/src/modelProviders/openrouter.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref :https://openrouter.ai/docs#models const OpenRouter: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/perplexity.ts b/packages/model-bank/src/modelProviders/perplexity.ts index 95c738fd12..c60923fe30 100644 --- a/packages/model-bank/src/modelProviders/perplexity.ts +++ b/packages/model-bank/src/modelProviders/perplexity.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref :https://docs.perplexity.ai/docs/model-cards const Perplexity: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/ppio.ts b/packages/model-bank/src/modelProviders/ppio.ts index f2543d0a0b..4321022860 100644 --- a/packages/model-bank/src/modelProviders/ppio.ts +++ b/packages/model-bank/src/modelProviders/ppio.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const PPIO: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/qiniu.ts b/packages/model-bank/src/modelProviders/qiniu.ts index c5267d8616..dd223a83a4 100644 --- a/packages/model-bank/src/modelProviders/qiniu.ts +++ b/packages/model-bank/src/modelProviders/qiniu.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://developer.qiniu.com/aitokenapi const Qiniu: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/qwen.ts b/packages/model-bank/src/modelProviders/qwen.ts index 4e5a2abe93..0baa578014 100644 --- a/packages/model-bank/src/modelProviders/qwen.ts +++ b/packages/model-bank/src/modelProviders/qwen.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://help.aliyun.com/zh/model-studio/getting-started/models const Qwen: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/replicate.ts b/packages/model-bank/src/modelProviders/replicate.ts index 84a092b829..44f67c0693 100644 --- a/packages/model-bank/src/modelProviders/replicate.ts +++ b/packages/model-bank/src/modelProviders/replicate.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // Ref: https://replicate.com/docs const Replicate: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/sambanova.ts b/packages/model-bank/src/modelProviders/sambanova.ts index f7d4597622..54f2fc52c7 100644 --- a/packages/model-bank/src/modelProviders/sambanova.ts +++ b/packages/model-bank/src/modelProviders/sambanova.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const SambaNova: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/search1api.ts b/packages/model-bank/src/modelProviders/search1api.ts index dba81f01c6..6a62f136ff 100644 --- a/packages/model-bank/src/modelProviders/search1api.ts +++ b/packages/model-bank/src/modelProviders/search1api.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Search1API: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/sensenova.ts b/packages/model-bank/src/modelProviders/sensenova.ts index 5ec744b5b3..f5f44eeec2 100644 --- a/packages/model-bank/src/modelProviders/sensenova.ts +++ b/packages/model-bank/src/modelProviders/sensenova.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref https://platform.sensenova.cn/pricing // ref https://platform.sensenova.cn/release?path=/release-202409.md diff --git a/packages/model-bank/src/modelProviders/siliconcloud.ts b/packages/model-bank/src/modelProviders/siliconcloud.ts index aca777af06..75241cd6d2 100644 --- a/packages/model-bank/src/modelProviders/siliconcloud.ts +++ b/packages/model-bank/src/modelProviders/siliconcloud.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://siliconflow.cn/zh-cn/pricing const SiliconCloud: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/spark.ts b/packages/model-bank/src/modelProviders/spark.ts index 4b3a5e45cd..f17058bb20 100644 --- a/packages/model-bank/src/modelProviders/spark.ts +++ b/packages/model-bank/src/modelProviders/spark.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://www.xfyun.cn/doc/spark/HTTP%E8%B0%83%E7%94%A8%E6%96%87%E6%A1%A3.html#_3-%E8%AF%B7%E6%B1%82%E8%AF%B4%E6%98%8E // ref: https://www.xfyun.cn/doc/spark/Web.html#_1-%E6%8E%A5%E5%8F%A3%E8%AF%B4%E6%98%8E diff --git a/packages/model-bank/src/modelProviders/stepfun.ts b/packages/model-bank/src/modelProviders/stepfun.ts index 244ca655a5..bfd37f2d7c 100644 --- a/packages/model-bank/src/modelProviders/stepfun.ts +++ b/packages/model-bank/src/modelProviders/stepfun.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://platform.stepfun.com/docs/llm/text // 根据文档,阶级星辰大模型的上下文长度,其 k 的含义均为 1000 diff --git a/packages/model-bank/src/modelProviders/taichu.ts b/packages/model-bank/src/modelProviders/taichu.ts index 861a44a761..5ffbb36011 100644 --- a/packages/model-bank/src/modelProviders/taichu.ts +++ b/packages/model-bank/src/modelProviders/taichu.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref :https://ai-maas.wair.ac.cn/#/doc const Taichu: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/tencentcloud.ts b/packages/model-bank/src/modelProviders/tencentcloud.ts index b5ed74e6ac..35b2adb52f 100644 --- a/packages/model-bank/src/modelProviders/tencentcloud.ts +++ b/packages/model-bank/src/modelProviders/tencentcloud.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const TencentCloud: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/togetherai.ts b/packages/model-bank/src/modelProviders/togetherai.ts index 91c1dda803..2bf054683f 100644 --- a/packages/model-bank/src/modelProviders/togetherai.ts +++ b/packages/model-bank/src/modelProviders/togetherai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://docs.together.ai/docs/chat-models // ref: https://www.together.ai/pricing diff --git a/packages/model-bank/src/modelProviders/upstage.ts b/packages/model-bank/src/modelProviders/upstage.ts index 4fb473abe8..9ae6c91062 100644 --- a/packages/model-bank/src/modelProviders/upstage.ts +++ b/packages/model-bank/src/modelProviders/upstage.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref :https://developers.upstage.ai/docs/getting-started/models const Upstage: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/v0.ts b/packages/model-bank/src/modelProviders/v0.ts index 01f9a0ca9b..e1790aaa1c 100644 --- a/packages/model-bank/src/modelProviders/v0.ts +++ b/packages/model-bank/src/modelProviders/v0.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const V0: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/vercelaigateway.ts b/packages/model-bank/src/modelProviders/vercelaigateway.ts index ee08bdaa56..521100484f 100644 --- a/packages/model-bank/src/modelProviders/vercelaigateway.ts +++ b/packages/model-bank/src/modelProviders/vercelaigateway.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const VercelAIGateway: ModelProviderCard = { apiKeyUrl: 'https://vercel.com/dashboard/ai-gateway', diff --git a/packages/model-bank/src/modelProviders/vertexai.ts b/packages/model-bank/src/modelProviders/vertexai.ts index 95fe23f8b1..77409b74aa 100644 --- a/packages/model-bank/src/modelProviders/vertexai.ts +++ b/packages/model-bank/src/modelProviders/vertexai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://ai.google.dev/gemini-api/docs/models/gemini const VertexAI: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/vllm.ts b/packages/model-bank/src/modelProviders/vllm.ts index 1ebd820d83..e9990cddae 100644 --- a/packages/model-bank/src/modelProviders/vllm.ts +++ b/packages/model-bank/src/modelProviders/vllm.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const VLLM: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/volcengine.ts b/packages/model-bank/src/modelProviders/volcengine.ts index a169c5c18a..7fddcf0e9d 100644 --- a/packages/model-bank/src/modelProviders/volcengine.ts +++ b/packages/model-bank/src/modelProviders/volcengine.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref https://www.volcengine.com/docs/82379/1330310 const Doubao: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/wenxin.ts b/packages/model-bank/src/modelProviders/wenxin.ts index 1750f1ebad..ba8b40be55 100644 --- a/packages/model-bank/src/modelProviders/wenxin.ts +++ b/packages/model-bank/src/modelProviders/wenxin.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const BaiduWenxin: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/xai.ts b/packages/model-bank/src/modelProviders/xai.ts index 15291456ca..2658f4cd11 100644 --- a/packages/model-bank/src/modelProviders/xai.ts +++ b/packages/model-bank/src/modelProviders/xai.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://x.ai/about const XAI: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/xinference.ts b/packages/model-bank/src/modelProviders/xinference.ts index 7d635d1589..73f785a889 100644 --- a/packages/model-bank/src/modelProviders/xinference.ts +++ b/packages/model-bank/src/modelProviders/xinference.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const Xinference: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/zenmux.ts b/packages/model-bank/src/modelProviders/zenmux.ts index 7cfa5ad828..4a4d081e81 100644 --- a/packages/model-bank/src/modelProviders/zenmux.ts +++ b/packages/model-bank/src/modelProviders/zenmux.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const ZenMux: ModelProviderCard = { chatModels: [], diff --git a/packages/model-bank/src/modelProviders/zeroone.ts b/packages/model-bank/src/modelProviders/zeroone.ts index 97f9b09009..afbcf1cc51 100644 --- a/packages/model-bank/src/modelProviders/zeroone.ts +++ b/packages/model-bank/src/modelProviders/zeroone.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; // ref: https://platform.lingyiwanwu.com/docs#%E6%A8%A1%E5%9E%8B%E4%B8%8E%E8%AE%A1%E8%B4%B9 const ZeroOne: ModelProviderCard = { diff --git a/packages/model-bank/src/modelProviders/zhipu.ts b/packages/model-bank/src/modelProviders/zhipu.ts index 53d2fb5081..4f042dfe7d 100644 --- a/packages/model-bank/src/modelProviders/zhipu.ts +++ b/packages/model-bank/src/modelProviders/zhipu.ts @@ -1,4 +1,4 @@ -import { ModelProviderCard } from '@/types/llm'; +import { type ModelProviderCard } from '@/types/llm'; const ZhiPu: ModelProviderCard = { chatModels: [], diff --git a/patches/@swagger-api__apidom-reference.patch b/patches/@swagger-api__apidom-reference.patch new file mode 100644 index 0000000000..ed6d2c95e9 --- /dev/null +++ b/patches/@swagger-api__apidom-reference.patch @@ -0,0 +1,26 @@ +diff --git a/node_modules/.cache/logger/umi.log b/node_modules/.cache/logger/umi.log +new file mode 100644 +index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 +diff --git a/src/parse/parsers/binary/index-node.cjs b/src/parse/parsers/binary/index-node.cjs +index a88ba4d8a0ddff6f4b545ed9368739d94f893eb2..b9b78a29e3c228e7d78e0861b38d734bdef2c854 100644 +--- a/src/parse/parsers/binary/index-node.cjs ++++ b/src/parse/parsers/binary/index-node.cjs +@@ -3,7 +3,7 @@ + var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default; + exports.__esModule = true; + exports.default = void 0; +-var _buffer = require("#buffer"); ++var _buffer = require("buffer"); + var _apidomCore = require("@swagger-api/apidom-core"); + var _ParserError = _interopRequireDefault(require("../../../errors/ParserError.cjs")); + var _Parser = _interopRequireDefault(require("../Parser.cjs")); +diff --git a/src/parse/parsers/binary/index-node.mjs b/src/parse/parsers/binary/index-node.mjs +index 3abce8c52fd5eb7b92f33b66fccf6896ccbc89fe..4a3f957cf127a71c7f2b4dfa56512271b6f785ab 100644 +--- a/src/parse/parsers/binary/index-node.mjs ++++ b/src/parse/parsers/binary/index-node.mjs +@@ -1,4 +1,4 @@ +-import { Buffer } from '#buffer'; // eslint-disable-line import/order ++import { Buffer } from 'buffer'; // eslint-disable-line import/order + import { ParseResultElement, StringElement } from '@swagger-api/apidom-core'; + import ParserError from "../../../errors/ParserError.mjs"; + import Parser from "../Parser.mjs"; diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 89da05d749..13656da796 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -3,3 +3,15 @@ packages: - '.' - 'e2e' - 'apps/desktop/src/main' + +overrides: + jose: ^6.1.3 + stylelint-config-clean-order: 7.0.0 + '@lobehub/chat-plugin-sdk>swagger-client': 3.36.0 + '@swagger-api/apidom-reference': 1.1.0 + +patchedDependencies: + '@swagger-api/apidom-reference': patches/@swagger-api__apidom-reference.patch + +onlyBuiltDependencies: + - '@vercel/speed-insights' diff --git a/src/app/(backend)/_deprecated/createBizOpenAI/createAzureOpenai.ts b/src/app/(backend)/_deprecated/createBizOpenAI/createAzureOpenai.ts index 01fc48073a..80f58900c4 100644 --- a/src/app/(backend)/_deprecated/createBizOpenAI/createAzureOpenai.ts +++ b/src/app/(backend)/_deprecated/createBizOpenAI/createAzureOpenai.ts @@ -1,5 +1,5 @@ import { ChatErrorType } from '@lobechat/types'; -import OpenAI, { ClientOptions } from 'openai'; +import OpenAI, { type ClientOptions } from 'openai'; import urlJoin from 'url-join'; import { getLLMConfig } from '@/envs/llm'; diff --git a/src/app/(backend)/_deprecated/createBizOpenAI/index.ts b/src/app/(backend)/_deprecated/createBizOpenAI/index.ts index 3a99388449..19d6db1568 100644 --- a/src/app/(backend)/_deprecated/createBizOpenAI/index.ts +++ b/src/app/(backend)/_deprecated/createBizOpenAI/index.ts @@ -1,5 +1,5 @@ -import { ChatErrorType, ErrorType } from '@lobechat/types'; -import OpenAI from 'openai'; +import { ChatErrorType, type ErrorType } from '@lobechat/types'; +import type OpenAI from 'openai'; import { getOpenAIAuthFromRequest } from '@/const/fetch'; import { createErrorResponse } from '@/utils/errorResponse'; diff --git a/src/app/(backend)/api/agent/route.ts b/src/app/(backend)/api/agent/route.ts index fd20a08de3..3424f194be 100644 --- a/src/app/(backend)/api/agent/route.ts +++ b/src/app/(backend)/api/agent/route.ts @@ -1,5 +1,5 @@ import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { getServerDB } from '@/database/core/db-adaptor'; import { AiAgentService } from '@/server/services/aiAgent'; diff --git a/src/app/(backend)/api/agent/run/route.ts b/src/app/(backend)/api/agent/run/route.ts index d07cdb600f..098f5d815f 100644 --- a/src/app/(backend)/api/agent/run/route.ts +++ b/src/app/(backend)/api/agent/run/route.ts @@ -1,5 +1,5 @@ import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { getServerDB } from '@/database/core/db-adaptor'; import { AgentRuntimeCoordinator } from '@/server/modules/AgentRuntime'; diff --git a/src/app/(backend)/api/agent/stream/route.ts b/src/app/(backend)/api/agent/stream/route.ts index 8c414bc12d..ecac99330a 100644 --- a/src/app/(backend)/api/agent/stream/route.ts +++ b/src/app/(backend)/api/agent/stream/route.ts @@ -1,6 +1,6 @@ import { createSSEHeaders, createSSEWriter } from '@lobechat/utils/server'; import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { StreamEventManager } from '@/server/modules/AgentRuntime'; diff --git a/src/app/(backend)/api/auth/adapter/route.ts b/src/app/(backend)/api/auth/adapter/route.ts index 15a5e09bdb..70d6d16364 100644 --- a/src/app/(backend)/api/auth/adapter/route.ts +++ b/src/app/(backend)/api/auth/adapter/route.ts @@ -1,5 +1,5 @@ import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { serverDBEnv } from '@/config/db'; import { serverDB } from '@/database/server'; diff --git a/src/app/(backend)/api/auth/check-user/route.ts b/src/app/(backend)/api/auth/check-user/route.ts index 941821e860..f5b30ec215 100644 --- a/src/app/(backend)/api/auth/check-user/route.ts +++ b/src/app/(backend)/api/auth/check-user/route.ts @@ -1,5 +1,5 @@ import { and, eq } from 'drizzle-orm'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { account } from '@/database/schemas/betterAuth'; import { users } from '@/database/schemas/user'; diff --git a/src/app/(backend)/api/auth/resolve-username/route.ts b/src/app/(backend)/api/auth/resolve-username/route.ts index 8159fcd0ef..c622f475e7 100644 --- a/src/app/(backend)/api/auth/resolve-username/route.ts +++ b/src/app/(backend)/api/auth/resolve-username/route.ts @@ -1,5 +1,5 @@ import { eq } from 'drizzle-orm'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { users } from '@/database/schemas/user'; import { serverDB } from '@/database/server'; diff --git a/src/app/(backend)/api/webhooks/clerk/validateRequest.ts b/src/app/(backend)/api/webhooks/clerk/validateRequest.ts index 9d2a25e37b..e1739188b6 100644 --- a/src/app/(backend)/api/webhooks/clerk/validateRequest.ts +++ b/src/app/(backend)/api/webhooks/clerk/validateRequest.ts @@ -1,4 +1,4 @@ -import { WebhookEvent } from '@clerk/nextjs/server'; +import { type WebhookEvent } from '@clerk/nextjs/server'; import { headers } from 'next/headers'; import { Webhook } from 'svix'; diff --git a/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-user-topics/route.ts b/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-user-topics/route.ts index 444e0058c5..096be76ad9 100644 --- a/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-user-topics/route.ts +++ b/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-user-topics/route.ts @@ -4,7 +4,7 @@ import { chunk } from 'es-toolkit/compat'; import type { ListTopicsForMemoryExtractorCursor } from '@/database/models/topic'; import { MemoryExtractionExecutor, - MemoryExtractionPayloadInput, + type MemoryExtractionPayloadInput, MemoryExtractionWorkflowService, buildWorkflowPayloadInput, normalizeMemoryExtractionPayload, diff --git a/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-users/route.ts b/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-users/route.ts index 1bd596ccac..7ea67520fd 100644 --- a/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-users/route.ts +++ b/src/app/(backend)/api/workflows/memory-user-memory/pipelines/chat-topic/process-users/route.ts @@ -3,7 +3,7 @@ import { chunk } from 'es-toolkit/compat'; import { MemoryExtractionExecutor, - MemoryExtractionPayloadInput, + type MemoryExtractionPayloadInput, MemoryExtractionWorkflowService, buildWorkflowPayloadInput, normalizeMemoryExtractionPayload, diff --git a/src/app/(backend)/market/agent/[[...segments]]/route.ts b/src/app/(backend)/market/agent/[[...segments]]/route.ts index 0e91992fab..a5e65b7d3a 100644 --- a/src/app/(backend)/market/agent/[[...segments]]/route.ts +++ b/src/app/(backend)/market/agent/[[...segments]]/route.ts @@ -1,5 +1,5 @@ import { MarketSDK } from '@lobehub/market-sdk'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; type RouteContext = { params: Promise<{ diff --git a/src/app/(backend)/market/oidc/[[...segments]]/route.ts b/src/app/(backend)/market/oidc/[[...segments]]/route.ts index 046bda5f2b..e2eea28fbf 100644 --- a/src/app/(backend)/market/oidc/[[...segments]]/route.ts +++ b/src/app/(backend)/market/oidc/[[...segments]]/route.ts @@ -1,5 +1,5 @@ import { MarketSDK } from '@lobehub/market-sdk'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; type RouteContext = { params: Promise<{ diff --git a/src/app/(backend)/market/social/[[...segments]]/route.ts b/src/app/(backend)/market/social/[[...segments]]/route.ts index e0f089d65b..6530373d19 100644 --- a/src/app/(backend)/market/social/[[...segments]]/route.ts +++ b/src/app/(backend)/market/social/[[...segments]]/route.ts @@ -1,5 +1,5 @@ import { MarketSDK } from '@lobehub/market-sdk'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; type RouteContext = { params: Promise<{ diff --git a/src/app/(backend)/market/user/[username]/route.ts b/src/app/(backend)/market/user/[username]/route.ts index b944595059..1915c00bbd 100644 --- a/src/app/(backend)/market/user/[username]/route.ts +++ b/src/app/(backend)/market/user/[username]/route.ts @@ -1,5 +1,5 @@ import { MarketSDK } from '@lobehub/market-sdk'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; type RouteContext = { params: Promise<{ diff --git a/src/app/(backend)/market/user/me/route.ts b/src/app/(backend)/market/user/me/route.ts index ee9bb7effb..a921a20332 100644 --- a/src/app/(backend)/market/user/me/route.ts +++ b/src/app/(backend)/market/user/me/route.ts @@ -1,5 +1,5 @@ import { MarketSDK } from '@lobehub/market-sdk'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; const MARKET_BASE_URL = process.env.NEXT_PUBLIC_MARKET_BASE_URL || 'https://market.lobehub.com'; diff --git a/src/app/(backend)/middleware/auth/index.ts b/src/app/(backend)/middleware/auth/index.ts index 41230c70f0..54df6fb84b 100644 --- a/src/app/(backend)/middleware/auth/index.ts +++ b/src/app/(backend)/middleware/auth/index.ts @@ -1,12 +1,12 @@ -import { AuthObject } from '@clerk/backend'; +import { type AuthObject } from '@clerk/backend'; import { AgentRuntimeError, - ChatCompletionErrorPayload, - ModelRuntime, + type ChatCompletionErrorPayload, + type ModelRuntime, } from '@lobechat/model-runtime'; -import { ChatErrorType, ClientSecretPayload } from '@lobechat/types'; +import { ChatErrorType, type ClientSecretPayload } from '@lobechat/types'; import { getXorPayload } from '@lobechat/utils/server'; -import { NextRequest } from 'next/server'; +import { type NextRequest } from 'next/server'; import { LOBE_CHAT_AUTH_HEADER, diff --git a/src/app/(backend)/oidc/[...oidc]/route.ts b/src/app/(backend)/oidc/[...oidc]/route.ts index 6a2d55d74c..4b641f3e25 100644 --- a/src/app/(backend)/oidc/[...oidc]/route.ts +++ b/src/app/(backend)/oidc/[...oidc]/route.ts @@ -1,5 +1,5 @@ import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { URL } from 'node:url'; import { oidcEnv } from '@/envs/oidc'; diff --git a/src/app/(backend)/oidc/callback/desktop/route.ts b/src/app/(backend)/oidc/callback/desktop/route.ts index 38a287bae8..133078d517 100644 --- a/src/app/(backend)/oidc/callback/desktop/route.ts +++ b/src/app/(backend)/oidc/callback/desktop/route.ts @@ -1,5 +1,5 @@ import debug from 'debug'; -import { NextRequest, NextResponse, after } from 'next/server'; +import { type NextRequest, NextResponse, after } from 'next/server'; import { OAuthHandoffModel } from '@/database/models/oauthHandoff'; import { serverDB } from '@/database/server'; diff --git a/src/app/(backend)/oidc/consent/route.ts b/src/app/(backend)/oidc/consent/route.ts index be8e3bfe84..123eb32970 100644 --- a/src/app/(backend)/oidc/consent/route.ts +++ b/src/app/(backend)/oidc/consent/route.ts @@ -1,6 +1,6 @@ import { correctOIDCUrl, getUserAuth } from '@lobechat/utils/server'; import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { OIDCService } from '@/server/services/oidc'; diff --git a/src/app/(backend)/oidc/handoff/route.ts b/src/app/(backend)/oidc/handoff/route.ts index ecfc243148..cb42e77b06 100644 --- a/src/app/(backend)/oidc/handoff/route.ts +++ b/src/app/(backend)/oidc/handoff/route.ts @@ -1,5 +1,5 @@ import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { OAuthHandoffModel } from '@/database/models/oauthHandoff'; import { serverDB } from '@/database/server'; diff --git a/src/app/(backend)/webapi/chat/[provider]/route.ts b/src/app/(backend)/webapi/chat/[provider]/route.ts index cc712705b8..5675219a19 100644 --- a/src/app/(backend)/webapi/chat/[provider]/route.ts +++ b/src/app/(backend)/webapi/chat/[provider]/route.ts @@ -1,13 +1,13 @@ import { AGENT_RUNTIME_ERROR_SET, - ChatCompletionErrorPayload, - ModelRuntime, + type ChatCompletionErrorPayload, + type ModelRuntime, } from '@lobechat/model-runtime'; import { ChatErrorType } from '@lobechat/types'; import { checkAuth } from '@/app/(backend)/middleware/auth'; import { createTraceOptions, initModelRuntimeWithUserPayload } from '@/server/modules/ModelRuntime'; -import { ChatStreamPayload } from '@/types/openai/chat'; +import { type ChatStreamPayload } from '@/types/openai/chat'; import { createErrorResponse } from '@/utils/errorResponse'; import { getTracePayload } from '@/utils/trace'; diff --git a/src/app/(backend)/webapi/models/[provider]/pull/route.ts b/src/app/(backend)/webapi/models/[provider]/pull/route.ts index 7395c27f1c..96c3b6abd6 100644 --- a/src/app/(backend)/webapi/models/[provider]/pull/route.ts +++ b/src/app/(backend)/webapi/models/[provider]/pull/route.ts @@ -1,4 +1,4 @@ -import { ChatCompletionErrorPayload, PullModelParams } from '@lobechat/model-runtime'; +import { type ChatCompletionErrorPayload, type PullModelParams } from '@lobechat/model-runtime'; import { ChatErrorType } from '@lobechat/types'; import { checkAuth } from '@/app/(backend)/middleware/auth'; diff --git a/src/app/(backend)/webapi/models/[provider]/route.ts b/src/app/(backend)/webapi/models/[provider]/route.ts index 3502e3eff9..b5088f9e8d 100644 --- a/src/app/(backend)/webapi/models/[provider]/route.ts +++ b/src/app/(backend)/webapi/models/[provider]/route.ts @@ -1,4 +1,4 @@ -import { ChatCompletionErrorPayload } from '@lobechat/model-runtime'; +import { type ChatCompletionErrorPayload } from '@lobechat/model-runtime'; import { ChatErrorType } from '@lobechat/types'; import { ModelProvider } from 'model-bank'; import { NextResponse } from 'next/server'; diff --git a/src/app/(backend)/webapi/plugin/gateway/route.ts b/src/app/(backend)/webapi/plugin/gateway/route.ts index 2bbc354a2d..eec618ed3b 100644 --- a/src/app/(backend)/webapi/plugin/gateway/route.ts +++ b/src/app/(backend)/webapi/plugin/gateway/route.ts @@ -1,5 +1,5 @@ import { AgentRuntimeError } from '@lobechat/model-runtime'; -import { ChatErrorType, ErrorType, TraceNameMap } from '@lobechat/types'; +import { ChatErrorType, type ErrorType, TraceNameMap } from '@lobechat/types'; import { getXorPayload } from '@lobechat/utils/server'; import type { PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; import { createGatewayOnEdgeRuntime } from '@lobehub/chat-plugins-gateway'; diff --git a/src/app/(backend)/webapi/revalidate/route.ts b/src/app/(backend)/webapi/revalidate/route.ts index 73f609dcce..55094c75a2 100644 --- a/src/app/(backend)/webapi/revalidate/route.ts +++ b/src/app/(backend)/webapi/revalidate/route.ts @@ -1,5 +1,5 @@ import { revalidateTag } from 'next/cache'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; export const GET = async (request: NextRequest) => { if (!process.env.REVALIDATE_SECRET) { diff --git a/src/app/(backend)/webapi/stt/openai/route.ts b/src/app/(backend)/webapi/stt/openai/route.ts index ea088b98c6..9f70f2ef8d 100644 --- a/src/app/(backend)/webapi/stt/openai/route.ts +++ b/src/app/(backend)/webapi/stt/openai/route.ts @@ -1,4 +1,4 @@ -import { OpenAISTTPayload } from '@lobehub/tts'; +import { type OpenAISTTPayload } from '@lobehub/tts'; import { createOpenaiAudioTranscriptions } from '@lobehub/tts/server'; import { createBizOpenAI } from '@/app/(backend)/_deprecated/createBizOpenAI'; diff --git a/src/app/(backend)/webapi/text-to-image/[provider]/route.ts b/src/app/(backend)/webapi/text-to-image/[provider]/route.ts index 4b96604ce7..93ee50144f 100644 --- a/src/app/(backend)/webapi/text-to-image/[provider]/route.ts +++ b/src/app/(backend)/webapi/text-to-image/[provider]/route.ts @@ -1,4 +1,4 @@ -import { ChatCompletionErrorPayload, TextToImagePayload } from '@lobechat/model-runtime'; +import { type ChatCompletionErrorPayload, type TextToImagePayload } from '@lobechat/model-runtime'; import { ChatErrorType } from '@lobechat/types'; import { NextResponse } from 'next/server'; diff --git a/src/app/(backend)/webapi/trace/route.ts b/src/app/(backend)/webapi/trace/route.ts index 1acae04599..c2f8bb540f 100644 --- a/src/app/(backend)/webapi/trace/route.ts +++ b/src/app/(backend)/webapi/trace/route.ts @@ -2,7 +2,7 @@ import { TraceEventType } from '@lobechat/types'; import { after } from 'next/server'; import { TraceClient } from '@/libs/traces'; -import { TraceEventBasePayload, TraceEventPayloads } from '@/types/trace'; +import { type TraceEventBasePayload, type TraceEventPayloads } from '@/types/trace'; export const POST = async (req: Request) => { type RequestData = TraceEventPayloads & TraceEventBasePayload; diff --git a/src/app/(backend)/webapi/tts/edge/route.ts b/src/app/(backend)/webapi/tts/edge/route.ts index 84016b4734..3b5bece47f 100644 --- a/src/app/(backend)/webapi/tts/edge/route.ts +++ b/src/app/(backend)/webapi/tts/edge/route.ts @@ -1,4 +1,4 @@ -import { EdgeSpeechPayload, EdgeSpeechTTS } from '@lobehub/tts'; +import { type EdgeSpeechPayload, EdgeSpeechTTS } from '@lobehub/tts'; import { createSpeechResponse } from '@/server/utils/createSpeechResponse'; diff --git a/src/app/(backend)/webapi/tts/microsoft/route.ts b/src/app/(backend)/webapi/tts/microsoft/route.ts index b14d6e29bb..80fe5ff6e9 100644 --- a/src/app/(backend)/webapi/tts/microsoft/route.ts +++ b/src/app/(backend)/webapi/tts/microsoft/route.ts @@ -1,4 +1,4 @@ -import { MicrosoftSpeechPayload, MicrosoftSpeechTTS } from '@lobehub/tts'; +import { type MicrosoftSpeechPayload, MicrosoftSpeechTTS } from '@lobehub/tts'; import { createSpeechResponse } from '@/server/utils/createSpeechResponse'; diff --git a/src/app/(backend)/webapi/tts/openai/route.ts b/src/app/(backend)/webapi/tts/openai/route.ts index 52d0b5e3f5..93e0d96e9b 100644 --- a/src/app/(backend)/webapi/tts/openai/route.ts +++ b/src/app/(backend)/webapi/tts/openai/route.ts @@ -1,4 +1,4 @@ -import { OpenAITTSPayload } from '@lobehub/tts'; +import { type OpenAITTSPayload } from '@lobehub/tts'; import { createOpenaiAudioSpeech } from '@lobehub/tts/server'; import { createBizOpenAI } from '@/app/(backend)/_deprecated/createBizOpenAI'; diff --git a/src/app/[variants]/(auth)/_layout/index.tsx b/src/app/[variants]/(auth)/_layout/index.tsx index 924df3c520..62098ec0d9 100644 --- a/src/app/[variants]/(auth)/_layout/index.tsx +++ b/src/app/[variants]/(auth)/_layout/index.tsx @@ -3,7 +3,7 @@ import { Center, Flexbox, Text } from '@lobehub/ui'; import { Divider } from 'antd'; import { useTheme } from 'antd-style'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { ProductLogo } from '@/components/Branding'; import LangButton from '@/features/User/UserPanel/LangButton'; diff --git a/src/app/[variants]/(auth)/layout.tsx b/src/app/[variants]/(auth)/layout.tsx index 95a9b16f13..05cf6d2106 100644 --- a/src/app/[variants]/(auth)/layout.tsx +++ b/src/app/[variants]/(auth)/layout.tsx @@ -1,5 +1,5 @@ import { NuqsAdapter } from 'nuqs/adapters/next/app'; -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; import AuthContainer from './_layout'; diff --git a/src/app/[variants]/(auth)/login/[[...login]]/page.tsx b/src/app/[variants]/(auth)/login/[[...login]]/page.tsx index ffc6133fd8..51569da6ba 100644 --- a/src/app/[variants]/(auth)/login/[[...login]]/page.tsx +++ b/src/app/[variants]/(auth)/login/[[...login]]/page.tsx @@ -5,7 +5,7 @@ import { notFound } from 'next/navigation'; import { enableClerk } from '@/const/auth'; import { metadataModule } from '@/server/metadata'; import { translation } from '@/server/translation'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from '@/utils/server/routeVariants'; export const generateMetadata = async (props: DynamicLayoutProps) => { diff --git a/src/app/[variants]/(auth)/reset-password/layout.tsx b/src/app/[variants]/(auth)/reset-password/layout.tsx index bfe28ec565..63a9a2e6f0 100644 --- a/src/app/[variants]/(auth)/reset-password/layout.tsx +++ b/src/app/[variants]/(auth)/reset-password/layout.tsx @@ -1,5 +1,5 @@ import { notFound } from 'next/navigation'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { enableBetterAuth } from '@/const/auth'; diff --git a/src/app/[variants]/(auth)/signin/layout.tsx b/src/app/[variants]/(auth)/signin/layout.tsx index bfe28ec565..63a9a2e6f0 100644 --- a/src/app/[variants]/(auth)/signin/layout.tsx +++ b/src/app/[variants]/(auth)/signin/layout.tsx @@ -1,5 +1,5 @@ import { notFound } from 'next/navigation'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { enableBetterAuth } from '@/const/auth'; diff --git a/src/app/[variants]/(auth)/signup/[[...signup]]/BetterAuthSignUpForm.tsx b/src/app/[variants]/(auth)/signup/[[...signup]]/BetterAuthSignUpForm.tsx index 373a860e9b..fd9326037f 100644 --- a/src/app/[variants]/(auth)/signup/[[...signup]]/BetterAuthSignUpForm.tsx +++ b/src/app/[variants]/(auth)/signup/[[...signup]]/BetterAuthSignUpForm.tsx @@ -9,7 +9,7 @@ import { useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { AuthCard } from '../../../../../features/AuthCard'; -import { SignUpFormValues, useSignUp } from './useSignUp'; +import { type SignUpFormValues, useSignUp } from './useSignUp'; const BetterAuthSignUpForm = () => { const [form] = Form.useForm(); diff --git a/src/app/[variants]/(auth)/signup/[[...signup]]/page.tsx b/src/app/[variants]/(auth)/signup/[[...signup]]/page.tsx index acd6d3c367..ea504e1ee5 100644 --- a/src/app/[variants]/(auth)/signup/[[...signup]]/page.tsx +++ b/src/app/[variants]/(auth)/signup/[[...signup]]/page.tsx @@ -4,7 +4,7 @@ import { notFound } from 'next/navigation'; import { enableBetterAuth, enableClerk } from '@/const/auth'; import { metadataModule } from '@/server/metadata'; import { translation } from '@/server/translation'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from '@/utils/server/routeVariants'; import BetterAuthSignUpForm from './BetterAuthSignUpForm'; diff --git a/src/app/[variants]/(auth)/verify-email/layout.tsx b/src/app/[variants]/(auth)/verify-email/layout.tsx index bfe28ec565..63a9a2e6f0 100644 --- a/src/app/[variants]/(auth)/verify-email/layout.tsx +++ b/src/app/[variants]/(auth)/verify-email/layout.tsx @@ -1,5 +1,5 @@ import { notFound } from 'next/navigation'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { enableBetterAuth } from '@/const/auth'; diff --git a/src/app/[variants]/(main)/_layout/DesktopLayoutContainer.tsx b/src/app/[variants]/(main)/_layout/DesktopLayoutContainer.tsx index b2fbbe6327..308f4ad5ed 100644 --- a/src/app/[variants]/(main)/_layout/DesktopLayoutContainer.tsx +++ b/src/app/[variants]/(main)/_layout/DesktopLayoutContainer.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; import { isDesktop } from '@/const/version'; import { useGlobalStore } from '@/store/global'; diff --git a/src/app/[variants]/(main)/_layout/index.tsx b/src/app/[variants]/(main)/_layout/index.tsx index 7c7644eda0..84e0ffc582 100644 --- a/src/app/[variants]/(main)/_layout/index.tsx +++ b/src/app/[variants]/(main)/_layout/index.tsx @@ -3,7 +3,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import dynamic from 'next/dynamic'; -import { FC, Suspense } from 'react'; +import { type FC, Suspense } from 'react'; import { HotkeysProvider } from 'react-hotkeys-hook'; import { Outlet } from 'react-router-dom'; diff --git a/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/SwitchPanel.tsx b/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/SwitchPanel.tsx index 92b62687d6..2ca610314c 100644 --- a/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/SwitchPanel.tsx +++ b/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/SwitchPanel.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { Popover } from 'antd'; -import React, { PropsWithChildren, Suspense, memo } from 'react'; +import React, { type PropsWithChildren, Suspense, memo } from 'react'; import { useNavigate } from 'react-router-dom'; import List from '@/app/[variants]/(main)/home/_layout/Body/Agent/List'; diff --git a/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/index.tsx b/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/index.tsx index 8a432aa063..83d8d81161 100644 --- a/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/index.tsx +++ b/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/Agent/index.tsx @@ -2,7 +2,7 @@ import { ActionIcon, Avatar, Block, Text } from '@lobehub/ui'; import { ChevronsUpDownIcon } from 'lucide-react'; -import React, { PropsWithChildren, memo } from 'react'; +import React, { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { DEFAULT_AVATAR, DEFAULT_INBOX_AVATAR } from '@/const/meta'; diff --git a/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/index.tsx b/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/index.tsx index b32ab421c3..6a0f066772 100644 --- a/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/index.tsx +++ b/src/app/[variants]/(main)/chat/_layout/Sidebar/Header/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import SideBarHeaderLayout from '@/features/NavPanel/SideBarHeaderLayout'; diff --git a/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx b/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx index 67f129e6f1..7a42b10e5a 100644 --- a/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx +++ b/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx @@ -3,7 +3,7 @@ import { Flexbox } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { memo, useCallback, useEffect, useRef } from 'react'; -import { VList, VListHandle } from 'virtua'; +import { VList, type VListHandle } from 'virtua'; import SkeletonList from '@/features/NavPanel/components/SkeletonList'; import TopicEmpty from '@/features/TopicEmpty'; diff --git a/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx b/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx index 5003b3519b..7a49c4b522 100644 --- a/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx +++ b/src/app/[variants]/(main)/chat/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx @@ -4,7 +4,7 @@ import { HashIcon } from 'lucide-react'; import React, { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { GroupedTopic } from '@/types/topic'; +import { type GroupedTopic } from '@/types/topic'; import TopicItem from '../../List/Item'; diff --git a/src/app/[variants]/(main)/chat/_layout/index.tsx b/src/app/[variants]/(main)/chat/_layout/index.tsx index 42d23b6c59..ff4dea27b1 100644 --- a/src/app/[variants]/(main)/chat/_layout/index.tsx +++ b/src/app/[variants]/(main)/chat/_layout/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import AgentIdSync from '@/app/[variants]/(main)/chat/_layout/AgentIdSync'; diff --git a/src/app/[variants]/(main)/chat/features/Conversation/AgentWelcome/ToolAuthAlert.tsx b/src/app/[variants]/(main)/chat/features/Conversation/AgentWelcome/ToolAuthAlert.tsx index e6cd299a98..b9055c4da4 100644 --- a/src/app/[variants]/(main)/chat/features/Conversation/AgentWelcome/ToolAuthAlert.tsx +++ b/src/app/[variants]/(main)/chat/features/Conversation/AgentWelcome/ToolAuthAlert.tsx @@ -1,6 +1,6 @@ 'use client'; -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; import { Alert, Avatar, Button, Flexbox, Icon, Text } from '@lobehub/ui'; import { Divider } from 'antd'; import { useTheme } from 'antd-style'; @@ -14,7 +14,7 @@ import { useAgentStore } from '@/store/agent'; import { agentSelectors } from '@/store/agent/selectors'; import { useToolStore } from '@/store/tool'; import { - KlavisServer, + type KlavisServer, KlavisServerStatus, klavisStoreSelectors, } from '@/store/tool/slices/klavisStore'; diff --git a/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/KnowledgeTag.tsx b/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/KnowledgeTag.tsx index 9055431bd0..2e6465d9e7 100644 --- a/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/KnowledgeTag.tsx +++ b/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/KnowledgeTag.tsx @@ -7,7 +7,7 @@ import { memo } from 'react'; import KnowledgeIcon from '@/components/KnowledgeIcon'; import { oneLineEllipsis } from '@/styles'; -import { KnowledgeItem } from '@/types/knowledgeBase'; +import { type KnowledgeItem } from '@/types/knowledgeBase'; export interface PluginTagProps { data: KnowledgeItem[]; diff --git a/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/MemberCountTag.tsx b/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/MemberCountTag.tsx index df0087165b..f4a0ad5b44 100644 --- a/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/MemberCountTag.tsx +++ b/src/app/[variants]/(main)/chat/features/Conversation/Header/Tags/MemberCountTag.tsx @@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'; import { useSessionStore } from '@/store/session'; import { sessionSelectors } from '@/store/session/selectors'; -import { LobeGroupSession } from '@/types/session'; +import { type LobeGroupSession } from '@/types/session'; const MemberCountTag = memo(() => { const { t } = useTranslation('chat'); diff --git a/src/app/[variants]/(main)/chat/features/Conversation/useAgentContext.ts b/src/app/[variants]/(main)/chat/features/Conversation/useAgentContext.ts index f5e73eefc0..0952833d60 100644 --- a/src/app/[variants]/(main)/chat/features/Conversation/useAgentContext.ts +++ b/src/app/[variants]/(main)/chat/features/Conversation/useAgentContext.ts @@ -1,6 +1,6 @@ 'use client'; -import { ConversationContext } from '@lobechat/types'; +import { type ConversationContext } from '@lobechat/types'; import { useChatStore } from '@/store/chat'; diff --git a/src/app/[variants]/(main)/chat/features/Portal/_layout/Mobile.tsx b/src/app/[variants]/(main)/chat/features/Portal/_layout/Mobile.tsx index 112d469e99..3427309b0c 100644 --- a/src/app/[variants]/(main)/chat/features/Portal/_layout/Mobile.tsx +++ b/src/app/[variants]/(main)/chat/features/Portal/_layout/Mobile.tsx @@ -2,7 +2,7 @@ import { Flexbox, Modal } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode } from 'react'; +import { type ReactNode } from 'react'; import { useTranslation } from 'react-i18next'; import { PortalContent } from '@/features/Portal/router'; diff --git a/src/app/[variants]/(main)/chat/features/Portal/features/Body.tsx b/src/app/[variants]/(main)/chat/features/Portal/features/Body.tsx index 993176eb41..a46080d035 100644 --- a/src/app/[variants]/(main)/chat/features/Portal/features/Body.tsx +++ b/src/app/[variants]/(main)/chat/features/Portal/features/Body.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { css, cx } from 'antd-style'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; const body = css` :has(.portal-artifact) { diff --git a/src/app/[variants]/(main)/chat/features/Portal/features/Portal.tsx b/src/app/[variants]/(main)/chat/features/Portal/features/Portal.tsx index 4a2a6c0088..897a208987 100644 --- a/src/app/[variants]/(main)/chat/features/Portal/features/Portal.tsx +++ b/src/app/[variants]/(main)/chat/features/Portal/features/Portal.tsx @@ -4,7 +4,7 @@ import { DraggablePanel, DraggablePanelContainer, type DraggablePanelProps } fro import { Flexbox } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { PropsWithChildren, memo, useState } from 'react'; +import { type PropsWithChildren, memo, useState } from 'react'; import { CHAT_PORTAL_MAX_WIDTH, diff --git a/src/app/[variants]/(main)/chat/profile/features/EditorCanvas/useSlashItems.tsx b/src/app/[variants]/(main)/chat/profile/features/EditorCanvas/useSlashItems.tsx index ec0e15d4a3..9d9a25cd74 100644 --- a/src/app/[variants]/(main)/chat/profile/features/EditorCanvas/useSlashItems.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/EditorCanvas/useSlashItems.tsx @@ -6,7 +6,7 @@ import { INSERT_ORDERED_LIST_COMMAND, INSERT_TABLE_COMMAND, INSERT_UNORDERED_LIST_COMMAND, - SlashOptions, + type SlashOptions, } from '@lobehub/editor'; import { Text } from '@lobehub/ui'; import { diff --git a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/AgentTool.tsx b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/AgentTool.tsx index 0772dcc2f0..cbc51d5d5c 100644 --- a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/AgentTool.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/AgentTool.tsx @@ -1,7 +1,7 @@ 'use client'; -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; -import { Avatar, Button, Flexbox, Icon, ItemType, Segmented } from '@lobehub/ui'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; +import { Avatar, Button, Flexbox, Icon, type ItemType, Segmented } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { ArrowRight, PlusIcon, Store, ToyBrick } from 'lucide-react'; diff --git a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx index 6572a38399..9a6d9f02e3 100644 --- a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx @@ -1,9 +1,9 @@ -import { MenuRenderProps } from '@lobehub/editor/es/plugins/slash/react/type'; +import { type MenuRenderProps } from '@lobehub/editor/es/plugins/slash/react/type'; import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { ReactNode, memo, useEffect, useLayoutEffect, useRef, useState } from 'react'; +import { type ReactNode, memo, useEffect, useLayoutEffect, useRef, useState } from 'react'; -import { MentionListOption } from './types'; +import { type MentionListOption } from './types'; /** * Get cursor position from browser selection API diff --git a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/useMentionItems.tsx b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/useMentionItems.tsx index 425b40d6c5..edecd1f6d9 100644 --- a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/useMentionItems.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/MentionList/useMentionItems.tsx @@ -1,8 +1,8 @@ -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; import { ToolNameResolver } from '@lobechat/context-engine'; import { type API, apiPrompt, toolPrompt } from '@lobechat/prompts'; -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; -import { IEditor, INSERT_MENTION_COMMAND } from '@lobehub/editor'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type IEditor, INSERT_MENTION_COMMAND } from '@lobehub/editor'; import { Icon, Image } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; @@ -16,7 +16,7 @@ import { globalAgentContextManager } from '@/utils/client/GlobalAgentContextMana import { hydrationPrompt } from '@/utils/promptTemplate'; import MentionDropdown from './MentionDropdown'; -import { MentionListOption, MentionMetadata } from './types'; +import { type MentionListOption, type MentionMetadata } from './types'; // 根据 identifier 获取 Klavis 服务器类型配置 const getKlavisServerType = (identifier: string) => diff --git a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/PluginTag.tsx b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/PluginTag.tsx index b3bae8b373..16e756bb9f 100644 --- a/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/PluginTag.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/ProfileEditor/PluginTag.tsx @@ -1,6 +1,6 @@ 'use client'; -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; import { Avatar, Icon, Tag } from '@lobehub/ui'; import { createStyles, useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; diff --git a/src/app/[variants]/(main)/chat/profile/features/ProfileProvider.tsx b/src/app/[variants]/(main)/chat/profile/features/ProfileProvider.tsx index b25465bb0e..41f4afc4d1 100644 --- a/src/app/[variants]/(main)/chat/profile/features/ProfileProvider.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/ProfileProvider.tsx @@ -1,7 +1,7 @@ 'use client'; import { useEditor } from '@lobehub/editor/react'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import StoreUpdater from './StoreUpdater'; import { Provider, createStore } from './store'; diff --git a/src/app/[variants]/(main)/chat/profile/features/StoreUpdater.tsx b/src/app/[variants]/(main)/chat/profile/features/StoreUpdater.tsx index c9019f543b..1601fe870d 100644 --- a/src/app/[variants]/(main)/chat/profile/features/StoreUpdater.tsx +++ b/src/app/[variants]/(main)/chat/profile/features/StoreUpdater.tsx @@ -3,7 +3,7 @@ import { useEditorState } from '@lobehub/editor/react'; import { memo, useEffect } from 'react'; -import { PublicState, useProfileStore, useStoreApi } from './store'; +import { type PublicState, useProfileStore, useStoreApi } from './store'; export type StoreUpdaterProps = Partial; diff --git a/src/app/[variants]/(main)/chat/profile/features/store/action.ts b/src/app/[variants]/(main)/chat/profile/features/store/action.ts index de377a93f2..9b71816672 100644 --- a/src/app/[variants]/(main)/chat/profile/features/store/action.ts +++ b/src/app/[variants]/(main)/chat/profile/features/store/action.ts @@ -1,8 +1,8 @@ import { EDITOR_DEBOUNCE_TIME, EDITOR_MAX_WAIT } from '@lobechat/const'; import { debounce } from 'es-toolkit/compat'; -import { StateCreator } from 'zustand'; +import { type StateCreator } from 'zustand'; -import { State, initialState } from './initialState'; +import { type State, initialState } from './initialState'; type SaveConfigPayload = { editorData: Record; diff --git a/src/app/[variants]/(main)/chat/profile/features/store/index.ts b/src/app/[variants]/(main)/chat/profile/features/store/index.ts index de5b6ed351..3dc03cf683 100644 --- a/src/app/[variants]/(main)/chat/profile/features/store/index.ts +++ b/src/app/[variants]/(main)/chat/profile/features/store/index.ts @@ -1,13 +1,13 @@ 'use client'; -import { StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApiWithSelector } from '@lobechat/types'; import { createContext } from 'zustand-utils'; import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { Store, store } from './action'; -import { State } from './initialState'; +import { type Store, store } from './action'; +import { type State } from './initialState'; export type { PublicState, State } from './initialState'; diff --git a/src/app/[variants]/(main)/chat/profile/features/store/initialState.ts b/src/app/[variants]/(main)/chat/profile/features/store/initialState.ts index 746e57c59c..68618b13be 100644 --- a/src/app/[variants]/(main)/chat/profile/features/store/initialState.ts +++ b/src/app/[variants]/(main)/chat/profile/features/store/initialState.ts @@ -1,5 +1,5 @@ -import { IEditor } from '@lobehub/editor'; -import { EditorState } from '@lobehub/editor/react'; +import { type IEditor } from '@lobehub/editor'; +import { type EditorState } from '@lobehub/editor/react'; // eslint-disable-next-line @typescript-eslint/no-empty-interface export interface PublicState {} diff --git a/src/app/[variants]/(main)/chat/profile/features/store/selectors.ts b/src/app/[variants]/(main)/chat/profile/features/store/selectors.ts index 4f792ee946..28114a63a6 100644 --- a/src/app/[variants]/(main)/chat/profile/features/store/selectors.ts +++ b/src/app/[variants]/(main)/chat/profile/features/store/selectors.ts @@ -1,4 +1,4 @@ -import { Store } from './action'; +import { type Store } from './action'; export const selectors = { editor: (s: Store) => s.editor, diff --git a/src/app/[variants]/(main)/chat/profile/index.tsx b/src/app/[variants]/(main)/chat/profile/index.tsx index e7c509f8b3..a72fac4449 100644 --- a/src/app/[variants]/(main)/chat/profile/index.tsx +++ b/src/app/[variants]/(main)/chat/profile/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox } from '@lobehub/ui'; -import { FC, Suspense, memo } from 'react'; +import { type FC, Suspense, memo } from 'react'; import Loading from '@/components/Loading/BrandTextLoading'; import AgentBuilder from '@/features/AgentBuilder'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/DetailProvider.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/DetailProvider.tsx index e18c8f02c3..cbab527204 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/DetailProvider.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/DetailProvider.tsx @@ -2,7 +2,7 @@ import { type ReactNode, createContext, memo, use } from 'react'; -import { DiscoverAssistantDetail } from '@/types/discover'; +import { type DiscoverAssistantDetail } from '@/types/discover'; export type DetailContextConfig = Partial; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/Block.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/Block.tsx index 3cc89ec25d..bb8e480d97 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/Block.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/Block.tsx @@ -1,5 +1,5 @@ import { Flexbox, Tag } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import Title from '../../../../../features/Title'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/PluginItem.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/PluginItem.tsx index 0819027350..9f78e5d138 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/PluginItem.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Capabilities/PluginItem.tsx @@ -1,5 +1,5 @@ -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; -import { DiscoverPluginDetail, PluginSource } from '@lobechat/types'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; +import { type DiscoverPluginDetail, type PluginSource } from '@lobechat/types'; import { Avatar, Block, Flexbox, Icon, Image, Skeleton, Tag, Text } from '@lobehub/ui'; import { createStyles, useTheme } from 'antd-style'; import { memo, useMemo } from 'react'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Overview/TagList.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Overview/TagList.tsx index aa93e6d323..c33e0bb842 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Overview/TagList.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Overview/TagList.tsx @@ -7,7 +7,7 @@ import { memo } from 'react'; import { Link } from 'react-router-dom'; import { useQuery } from '@/hooks/useQuery'; -import { AssistantMarketSource } from '@/types/discover'; +import { type AssistantMarketSource } from '@/types/discover'; const useStyles = createStyles(({ token, css }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Related/index.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Related/index.tsx index 156d46b446..edbda98d1b 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Related/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Related/index.tsx @@ -4,7 +4,7 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useQuery } from '@/hooks/useQuery'; -import { AssistantMarketSource } from '@/types/discover'; +import { type AssistantMarketSource } from '@/types/discover'; import McpList from '../../../../../(list)/assistant/features/List'; import Title from '../../../../../features/Title'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/SystemRole/TagList.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/SystemRole/TagList.tsx index aa93e6d323..c33e0bb842 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/SystemRole/TagList.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/SystemRole/TagList.tsx @@ -7,7 +7,7 @@ import { memo } from 'react'; import { Link } from 'react-router-dom'; import { useQuery } from '@/hooks/useQuery'; -import { AssistantMarketSource } from '@/types/discover'; +import { type AssistantMarketSource } from '@/types/discover'; const useStyles = createStyles(({ token, css }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Versions/index.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Versions/index.tsx index e6e0c7d340..4b66d13391 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Versions/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Details/Versions/index.tsx @@ -10,7 +10,7 @@ import { usePathname } from '@/app/[variants]/(main)/hooks/usePathname'; import { useQuery } from '@/app/[variants]/(main)/hooks/useQuery'; import InlineTable from '@/components/InlineTable'; import PublishedTime from '@/components/PublishedTime'; -import { AssistantMarketSource, AssistantNavKey } from '@/types/discover'; +import { type AssistantMarketSource, AssistantNavKey } from '@/types/discover'; import Title from '../../../../../features/Title'; import { useDetailContext } from '../../DetailProvider'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/Item.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/Item.tsx index 86d7ca09f4..97632ccce3 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/Item.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/Item.tsx @@ -2,7 +2,7 @@ import { Avatar, Block, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; -import { DiscoverAssistantItem } from '@/types/discover'; +import { type DiscoverAssistantItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/index.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/index.tsx index 8fa2230c30..3978564f24 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/Related/index.tsx @@ -6,7 +6,7 @@ import { Link } from 'react-router-dom'; import urlJoin from 'url-join'; import { useQuery } from '@/hooks/useQuery'; -import { AssistantMarketSource } from '@/types/discover'; +import { type AssistantMarketSource } from '@/types/discover'; import Title from '../../../../../features/Title'; import { useDetailContext } from '../../DetailProvider'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/TocList/index.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/TocList/index.tsx index a514d00014..a8d2e47312 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/TocList/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/features/Sidebar/TocList/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox } from '@lobehub/ui'; -import { AnchorProps } from 'antd'; +import { type AnchorProps } from 'antd'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/(detail)/assistant/index.tsx b/src/app/[variants]/(main)/community/(detail)/assistant/index.tsx index 24babdd6c9..e1abc862bd 100644 --- a/src/app/[variants]/(main)/community/(detail)/assistant/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/assistant/index.tsx @@ -6,7 +6,7 @@ import { useParams } from 'react-router-dom'; import { useQuery } from '@/hooks/useQuery'; import { useDiscoverStore } from '@/store/discover'; -import { AssistantMarketSource } from '@/types/discover'; +import { type AssistantMarketSource } from '@/types/discover'; import NotFound from '../components/NotFound'; import { TocProvider } from '../features/Toc/useToc'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/Back.tsx b/src/app/[variants]/(main)/community/(detail)/features/Back.tsx index ed5c9f123e..0e81656166 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/Back.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/Back.tsx @@ -3,7 +3,7 @@ import { Flexbox, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ArrowLeft } from 'lucide-react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/Block.tsx b/src/app/[variants]/(main)/community/(detail)/features/Block.tsx index 5a5f4427de..fe6685b491 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/Block.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/Block.tsx @@ -1,4 +1,4 @@ -import { Button, Flexbox, FlexboxProps, Icon } from '@lobehub/ui'; +import { Button, Flexbox, type FlexboxProps, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronRight } from 'lucide-react'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/DetailLayout.tsx b/src/app/[variants]/(main)/community/(detail)/features/DetailLayout.tsx index ec2ac9b19b..1474776ce9 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/DetailLayout.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/DetailLayout.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useResponsive } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import Footer from '@/features/Setting/Footer'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/HighlightBlock.tsx b/src/app/[variants]/(main)/community/(detail)/features/HighlightBlock.tsx index 422dd2b761..e5dd614c00 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/HighlightBlock.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/HighlightBlock.tsx @@ -1,10 +1,10 @@ 'use client'; -import { Flexbox, FlexboxProps, Icon } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { LucideIcon } from 'lucide-react'; +import { type LucideIcon } from 'lucide-react'; import { rgba } from 'polished'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useServerConfigStore } from '@/store/serverConfig'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/MakedownRender.tsx b/src/app/[variants]/(main)/community/(detail)/features/MakedownRender.tsx index 05b2a30bb1..59f5120124 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/MakedownRender.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/MakedownRender.tsx @@ -3,7 +3,7 @@ import { Center, Empty, Markdown } from '@lobehub/ui'; import { FileText } from 'lucide-react'; import Link from 'next/link'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { H1, H2, H3, H4, H5 } from './Toc/Heading'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/ShareButton.tsx b/src/app/[variants]/(main)/community/(detail)/features/ShareButton.tsx index a679d1ffb8..663ba99dff 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/ShareButton.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/ShareButton.tsx @@ -2,7 +2,7 @@ import { ActionIcon, Avatar, Button, - ButtonProps, + type ButtonProps, Center, CopyButton, Flexbox, @@ -16,7 +16,7 @@ import { createStyles } from 'antd-style'; import { startCase } from 'es-toolkit/compat'; import { LinkIcon, Share2Icon } from 'lucide-react'; import Link from 'next/link'; -import { ReactNode, memo, useState } from 'react'; +import { type ReactNode, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useShare } from '@/hooks/useShare'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/SidebarContainer.tsx b/src/app/[variants]/(main)/community/(detail)/features/SidebarContainer.tsx index f016ef6a7f..28f2c87f24 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/SidebarContainer.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/SidebarContainer.tsx @@ -1,5 +1,5 @@ -import { Flexbox, FlexboxProps } from '@lobehub/ui'; -import { FC } from 'react'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; +import { type FC } from 'react'; const SidebarContainer: FC = ({ children, style, ...rest }) => { return ( diff --git a/src/app/[variants]/(main)/community/(detail)/features/Toc/Heading.tsx b/src/app/[variants]/(main)/community/(detail)/features/Toc/Heading.tsx index f3bd085ba8..bde4792beb 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/Toc/Heading.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/Toc/Heading.tsx @@ -5,7 +5,7 @@ import { createStyles, useTheme } from 'antd-style'; import { kebabCase } from 'es-toolkit/compat'; import { Heading2, Heading3, Heading4, Heading5 } from 'lucide-react'; import Link from 'next/link'; -import { Children, ComponentProps, FC, ReactNode, isValidElement, useEffect, useMemo } from 'react'; +import { Children, type ComponentProps, type FC, type ReactNode, isValidElement, useEffect, useMemo } from 'react'; import { useToc } from './useToc'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/Toc/index.tsx b/src/app/[variants]/(main)/community/(detail)/features/Toc/index.tsx index fca718aad6..f050acb32e 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/Toc/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/Toc/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Anchor, AnchorProps } from 'antd'; +import { Anchor, type AnchorProps } from 'antd'; import { createStyles } from 'antd-style'; import { memo, useMemo } from 'react'; diff --git a/src/app/[variants]/(main)/community/(detail)/features/Toc/useToc.tsx b/src/app/[variants]/(main)/community/(detail)/features/Toc/useToc.tsx index 7eaf9f9823..3ebab4480f 100644 --- a/src/app/[variants]/(main)/community/(detail)/features/Toc/useToc.tsx +++ b/src/app/[variants]/(main)/community/(detail)/features/Toc/useToc.tsx @@ -1,8 +1,8 @@ 'use client'; -import { AnchorProps } from 'antd'; +import { type AnchorProps } from 'antd'; import { unionBy } from 'es-toolkit/compat'; -import { FC, PropsWithChildren, createContext, useContext, useState } from 'react'; +import { type FC, type PropsWithChildren, createContext, useContext, useState } from 'react'; interface TocState { isLoading: boolean; diff --git a/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/Related/Item.tsx b/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/Related/Item.tsx index c42e617629..c323419b0a 100644 --- a/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/Related/Item.tsx +++ b/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/Related/Item.tsx @@ -2,7 +2,7 @@ import { Avatar, Block, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; -import { DiscoverMcpItem } from '@/types/discover'; +import { type DiscoverMcpItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/TocList/index.tsx b/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/TocList/index.tsx index d8437f0849..8b1d8644be 100644 --- a/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/TocList/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/mcp/features/Sidebar/TocList/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox } from '@lobehub/ui'; -import { AnchorProps } from 'antd'; +import { type AnchorProps } from 'antd'; import { startCase } from 'es-toolkit/compat'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/(detail)/model/features/DetailProvider.tsx b/src/app/[variants]/(main)/community/(detail)/model/features/DetailProvider.tsx index e54d7cc6da..d9f5c3d433 100644 --- a/src/app/[variants]/(main)/community/(detail)/model/features/DetailProvider.tsx +++ b/src/app/[variants]/(main)/community/(detail)/model/features/DetailProvider.tsx @@ -2,7 +2,7 @@ import { type ReactNode, createContext, memo, use } from 'react'; -import { DiscoverModelDetail } from '@/types/discover'; +import { type DiscoverModelDetail } from '@/types/discover'; export type DetailContextConfig = Partial; diff --git a/src/app/[variants]/(main)/community/(detail)/model/features/Details/Parameter/index.tsx b/src/app/[variants]/(main)/community/(detail)/model/features/Details/Parameter/index.tsx index 02655968d7..4bd0be28b6 100644 --- a/src/app/[variants]/(main)/community/(detail)/model/features/Details/Parameter/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/model/features/Details/Parameter/index.tsx @@ -5,7 +5,7 @@ import { ChartColumnBig, Delete, FileMinus, - LucideIcon, + type LucideIcon, MessageSquareText, Pickaxe, Thermometer, diff --git a/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/Related/Item.tsx b/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/Related/Item.tsx index 029fd126b6..5f4dec84ab 100644 --- a/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/Related/Item.tsx +++ b/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/Related/Item.tsx @@ -4,7 +4,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { DiscoverModelItem } from '@/types/discover'; +import { type DiscoverModelItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/RelatedProviders/Item.tsx b/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/RelatedProviders/Item.tsx index 727ff0a8df..3bbfaab990 100644 --- a/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/RelatedProviders/Item.tsx +++ b/src/app/[variants]/(main)/community/(detail)/model/features/Sidebar/RelatedProviders/Item.tsx @@ -4,7 +4,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { DiscoverModelDetailProviderItem } from '@/types/discover'; +import { type DiscoverModelDetailProviderItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/provider/features/DetailProvider.tsx b/src/app/[variants]/(main)/community/(detail)/provider/features/DetailProvider.tsx index 8ed7020981..aa09703aac 100644 --- a/src/app/[variants]/(main)/community/(detail)/provider/features/DetailProvider.tsx +++ b/src/app/[variants]/(main)/community/(detail)/provider/features/DetailProvider.tsx @@ -2,7 +2,7 @@ import { type ReactNode, createContext, memo, use } from 'react'; -import { DiscoverProviderDetail } from '@/types/discover'; +import { type DiscoverProviderDetail } from '@/types/discover'; export type DetailContextConfig = Partial; diff --git a/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/Related/Item.tsx b/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/Related/Item.tsx index c7885ae1ee..b151ae0f70 100644 --- a/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/Related/Item.tsx +++ b/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/Related/Item.tsx @@ -4,7 +4,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { DiscoverProviderItem } from '@/types/discover'; +import { type DiscoverProviderItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/RelatedModels/Item.tsx b/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/RelatedModels/Item.tsx index 24f1323c03..810eaaf7b4 100644 --- a/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/RelatedModels/Item.tsx +++ b/src/app/[variants]/(main)/community/(detail)/provider/features/Sidebar/RelatedModels/Item.tsx @@ -4,7 +4,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { DiscoverProviderDetailModelItem } from '@/types/discover'; +import { type DiscoverProviderDetailModelItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(detail)/user/features/DetailProvider.tsx b/src/app/[variants]/(main)/community/(detail)/user/features/DetailProvider.tsx index 913a618b9d..d23a45fc17 100644 --- a/src/app/[variants]/(main)/community/(detail)/user/features/DetailProvider.tsx +++ b/src/app/[variants]/(main)/community/(detail)/user/features/DetailProvider.tsx @@ -2,8 +2,8 @@ import { type ReactNode, createContext, memo, use } from 'react'; -import { MarketUserProfile } from '@/layout/AuthProvider/MarketAuth/types'; -import { DiscoverAssistantItem, DiscoverUserInfo } from '@/types/discover'; +import { type MarketUserProfile } from '@/layout/AuthProvider/MarketAuth/types'; +import { type DiscoverAssistantItem, type DiscoverUserInfo } from '@/types/discover'; export interface UserDetailContextConfig { agentCount: number; diff --git a/src/app/[variants]/(main)/community/(detail)/user/features/UserAgentCard.tsx b/src/app/[variants]/(main)/community/(detail)/user/features/UserAgentCard.tsx index 2dab6ff008..0b0e0c0acc 100644 --- a/src/app/[variants]/(main)/community/(detail)/user/features/UserAgentCard.tsx +++ b/src/app/[variants]/(main)/community/(detail)/user/features/UserAgentCard.tsx @@ -35,7 +35,7 @@ import { agentService } from '@/services/agent'; import { discoverService } from '@/services/discover'; import { useAgentStore } from '@/store/agent'; import { useHomeStore } from '@/store/home'; -import { AgentStatus, DiscoverAssistantItem } from '@/types/discover'; +import { type AgentStatus, type DiscoverAssistantItem } from '@/types/discover'; import { formatIntergerNumber } from '@/utils/format'; import { useUserDetailContext } from './DetailProvider'; diff --git a/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoriteAgents.tsx b/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoriteAgents.tsx index 1ba187c185..87adc300a3 100644 --- a/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoriteAgents.tsx +++ b/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoriteAgents.tsx @@ -12,7 +12,7 @@ import urlJoin from 'url-join'; import PublishedTime from '@/components/PublishedTime'; import { useMarketAuth } from '@/layout/AuthProvider/MarketAuth'; -import { FavoriteAgentItem, socialService } from '@/services/social'; +import { type FavoriteAgentItem, socialService } from '@/services/social'; import { useDiscoverStore } from '@/store/discover'; import { formatIntergerNumber } from '@/utils/format'; diff --git a/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoritePlugins.tsx b/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoritePlugins.tsx index 3c7f5f332c..57dcdae066 100644 --- a/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoritePlugins.tsx +++ b/src/app/[variants]/(main)/community/(detail)/user/features/UserFavoritePlugins.tsx @@ -12,7 +12,7 @@ import urlJoin from 'url-join'; import PublishedTime from '@/components/PublishedTime'; import { useMarketAuth } from '@/layout/AuthProvider/MarketAuth'; -import { FavoritePluginItem, socialService } from '@/services/social'; +import { type FavoritePluginItem, socialService } from '@/services/social'; import { useDiscoverStore } from '@/store/discover'; import { useUserDetailContext } from './DetailProvider'; diff --git a/src/app/[variants]/(main)/community/(detail)/user/index.tsx b/src/app/[variants]/(main)/community/(detail)/user/index.tsx index 3d6eee3877..c553aa8225 100644 --- a/src/app/[variants]/(main)/community/(detail)/user/index.tsx +++ b/src/app/[variants]/(main)/community/(detail)/user/index.tsx @@ -4,7 +4,7 @@ import { memo, useCallback, useMemo } from 'react'; import { useNavigate, useParams } from 'react-router-dom'; import { useMarketAuth, useMarketUserProfile } from '@/layout/AuthProvider/MarketAuth'; -import { MarketUserProfile } from '@/layout/AuthProvider/MarketAuth/types'; +import { type MarketUserProfile } from '@/layout/AuthProvider/MarketAuth/types'; import { useDiscoverStore } from '@/store/discover'; import NotFound from '../components/NotFound'; diff --git a/src/app/[variants]/(main)/community/(list)/assistant/Client.tsx b/src/app/[variants]/(main)/community/(list)/assistant/Client.tsx index 148767b3ec..0e79741f28 100644 --- a/src/app/[variants]/(main)/community/(list)/assistant/Client.tsx +++ b/src/app/[variants]/(main)/community/(list)/assistant/Client.tsx @@ -6,7 +6,7 @@ import { memo } from 'react'; import { withSuspense } from '@/components/withSuspense'; import { useQuery } from '@/hooks/useQuery'; import { useDiscoverStore } from '@/store/discover'; -import { AssistantMarketSource, AssistantQueryParams, DiscoverTab } from '@/types/discover'; +import { type AssistantMarketSource, type AssistantQueryParams, DiscoverTab } from '@/types/discover'; import Pagination from '../features/Pagination'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/community/(list)/assistant/features/List/Item.tsx b/src/app/[variants]/(main)/community/(list)/assistant/features/List/Item.tsx index 3a01642688..9038a7bfb0 100644 --- a/src/app/[variants]/(main)/community/(list)/assistant/features/List/Item.tsx +++ b/src/app/[variants]/(main)/community/(list)/assistant/features/List/Item.tsx @@ -9,7 +9,7 @@ import urlJoin from 'url-join'; import PublishedTime from '@/components/PublishedTime'; import { useQuery } from '@/hooks/useQuery'; -import { AssistantMarketSource, DiscoverAssistantItem } from '@/types/discover'; +import { type AssistantMarketSource, type DiscoverAssistantItem } from '@/types/discover'; import TokenTag from './TokenTag'; diff --git a/src/app/[variants]/(main)/community/(list)/assistant/features/List/index.tsx b/src/app/[variants]/(main)/community/(list)/assistant/features/List/index.tsx index 4463e1d3ed..0d21390793 100644 --- a/src/app/[variants]/(main)/community/(list)/assistant/features/List/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/assistant/features/List/index.tsx @@ -3,7 +3,7 @@ import { Grid } from '@lobehub/ui'; import { memo } from 'react'; -import { DiscoverAssistantItem } from '@/types/discover'; +import { type DiscoverAssistantItem } from '@/types/discover'; import AssistantEmpty from '../../../../features/AssistantEmpty'; import Item from './Item'; diff --git a/src/app/[variants]/(main)/community/(list)/assistant/features/MarketSourceSwitch.tsx b/src/app/[variants]/(main)/community/(list)/assistant/features/MarketSourceSwitch.tsx index fb38704259..29a1d00686 100644 --- a/src/app/[variants]/(main)/community/(list)/assistant/features/MarketSourceSwitch.tsx +++ b/src/app/[variants]/(main)/community/(list)/assistant/features/MarketSourceSwitch.tsx @@ -1,13 +1,13 @@ 'use client'; -import { Dropdown, DropdownMenuItemType, Icon , Button } from '@lobehub/ui'; +import { Dropdown, type DropdownMenuItemType, Icon , Button } from '@lobehub/ui'; import { ChevronDown, Store } from 'lucide-react'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useQuery } from '@/hooks/useQuery'; import { useQueryRoute } from '@/hooks/useQueryRoute'; -import { AssistantMarketSource } from '@/types/discover'; +import { type AssistantMarketSource } from '@/types/discover'; const MarketSourceSwitch = memo(() => { const { t } = useTranslation('discover'); diff --git a/src/app/[variants]/(main)/community/(list)/assistant/index.tsx b/src/app/[variants]/(main)/community/(list)/assistant/index.tsx index 94a5889851..4c643a82d7 100644 --- a/src/app/[variants]/(main)/community/(list)/assistant/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/assistant/index.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { useQuery } from '@/hooks/useQuery'; import { useDiscoverStore } from '@/store/discover'; -import { AssistantQueryParams, DiscoverTab } from '@/types/discover'; +import { type AssistantQueryParams, DiscoverTab } from '@/types/discover'; import Pagination from '../features/Pagination'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/community/(list)/features/Pagination.tsx b/src/app/[variants]/(main)/community/(list)/features/Pagination.tsx index 068b53d20d..7f02569ae7 100644 --- a/src/app/[variants]/(main)/community/(list)/features/Pagination.tsx +++ b/src/app/[variants]/(main)/community/(list)/features/Pagination.tsx @@ -7,7 +7,7 @@ import { useLocation, useNavigate } from 'react-router-dom'; import { SCROLL_PARENT_ID } from '@/app/[variants]/(main)/community/features/const'; import { useQuery } from '@/hooks/useQuery'; -import { DiscoverTab } from '@/types/discover'; +import { type DiscoverTab } from '@/types/discover'; const SCROLL_CONTAINER_ID = 'lobe-mobile-scroll-container'; diff --git a/src/app/[variants]/(main)/community/(list)/features/SortButton/index.tsx b/src/app/[variants]/(main)/community/(list)/features/SortButton/index.tsx index d1ef8bbf56..be28b93252 100644 --- a/src/app/[variants]/(main)/community/(list)/features/SortButton/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/features/SortButton/index.tsx @@ -1,4 +1,4 @@ -import { Dropdown, DropdownMenuItemType, Icon , Button } from '@lobehub/ui'; +import { Dropdown, type DropdownMenuItemType, Icon , Button } from '@lobehub/ui'; import { ArrowDownWideNarrow, ChevronDown } from 'lucide-react'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/(list)/mcp/features/List/Item.tsx b/src/app/[variants]/(main)/community/(list)/mcp/features/List/Item.tsx index c34d5990cc..6f1aeb4938 100644 --- a/src/app/[variants]/(main)/community/(list)/mcp/features/List/Item.tsx +++ b/src/app/[variants]/(main)/community/(list)/mcp/features/List/Item.tsx @@ -14,7 +14,7 @@ import InstallationIcon from '@/components/MCPDepsIcon'; import OfficialIcon from '@/components/OfficialIcon'; import PublishedTime from '@/components/PublishedTime'; import Scores from '@/features/MCP/Scores'; -import { DiscoverMcpItem } from '@/types/discover'; +import { type DiscoverMcpItem } from '@/types/discover'; import ConnectionTypeTag from './ConnectionTypeTag'; import MetaInfo from './MetaInfo'; diff --git a/src/app/[variants]/(main)/community/(list)/mcp/features/List/MetaInfo.tsx b/src/app/[variants]/(main)/community/(list)/mcp/features/List/MetaInfo.tsx index 9d9a9f2742..37ead200f3 100644 --- a/src/app/[variants]/(main)/community/(list)/mcp/features/List/MetaInfo.tsx +++ b/src/app/[variants]/(main)/community/(list)/mcp/features/List/MetaInfo.tsx @@ -1,8 +1,8 @@ import { Flexbox, Icon } from '@lobehub/ui'; import { DownloadIcon, StarIcon } from 'lucide-react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; -import { DiscoverMcpItem } from '@/types/discover'; +import { type DiscoverMcpItem } from '@/types/discover'; interface MetaInfoProps { className?: string; diff --git a/src/app/[variants]/(main)/community/(list)/mcp/features/List/index.tsx b/src/app/[variants]/(main)/community/(list)/mcp/features/List/index.tsx index 8e696153c1..ad81d0424f 100644 --- a/src/app/[variants]/(main)/community/(list)/mcp/features/List/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/mcp/features/List/index.tsx @@ -3,7 +3,7 @@ import { Grid } from '@lobehub/ui'; import { memo } from 'react'; -import { DiscoverMcpItem } from '@/types/discover'; +import { type DiscoverMcpItem } from '@/types/discover'; import McpEmpty from '../../../../features/McpEmpty'; import Item from './Item'; diff --git a/src/app/[variants]/(main)/community/(list)/mcp/index.tsx b/src/app/[variants]/(main)/community/(list)/mcp/index.tsx index 175ba3263e..594419a184 100644 --- a/src/app/[variants]/(main)/community/(list)/mcp/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/mcp/index.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { useQuery } from '@/hooks/useQuery'; import { useDiscoverStore } from '@/store/discover'; -import { DiscoverTab, McpQueryParams } from '@/types/discover'; +import { DiscoverTab, type McpQueryParams } from '@/types/discover'; import Pagination from '../features/Pagination'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/community/(list)/model/features/List/Item.tsx b/src/app/[variants]/(main)/community/(list)/model/features/List/Item.tsx index f30d429b76..5d74be0bac 100644 --- a/src/app/[variants]/(main)/community/(list)/model/features/List/Item.tsx +++ b/src/app/[variants]/(main)/community/(list)/model/features/List/Item.tsx @@ -12,7 +12,7 @@ import { Link, useNavigate } from 'react-router-dom'; import urlJoin from 'url-join'; import { ModelInfoTags } from '@/components/ModelSelect'; -import { DiscoverModelItem } from '@/types/discover'; +import { type DiscoverModelItem } from '@/types/discover'; import PublishedTime from '../../../../../../../../components/PublishedTime'; import ModelTypeIcon from './ModelTypeIcon'; diff --git a/src/app/[variants]/(main)/community/(list)/model/features/List/ModelTypeIcon.tsx b/src/app/[variants]/(main)/community/(list)/model/features/List/ModelTypeIcon.tsx index 6d8595eb50..e8d6daa3e9 100644 --- a/src/app/[variants]/(main)/community/(list)/model/features/List/ModelTypeIcon.tsx +++ b/src/app/[variants]/(main)/community/(list)/model/features/List/ModelTypeIcon.tsx @@ -5,14 +5,14 @@ import { AudioLines, BoltIcon, ImageIcon, - LucideIcon, + type LucideIcon, MessageSquareTextIcon, MicIcon, MusicIcon, PhoneIcon, VideoIcon, } from 'lucide-react'; -import { AiModelType } from 'model-bank'; +import { type AiModelType } from 'model-bank'; import { memo } from 'react'; const icons: Record = { diff --git a/src/app/[variants]/(main)/community/(list)/model/features/List/index.tsx b/src/app/[variants]/(main)/community/(list)/model/features/List/index.tsx index e4dfa3337a..24bfc00a11 100644 --- a/src/app/[variants]/(main)/community/(list)/model/features/List/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/model/features/List/index.tsx @@ -3,7 +3,7 @@ import { Grid } from '@lobehub/ui'; import { memo } from 'react'; -import { DiscoverModelItem } from '@/types/discover'; +import { type DiscoverModelItem } from '@/types/discover'; import ModelEmpty from '../../../../features/ModelEmpty'; import Item from './Item'; diff --git a/src/app/[variants]/(main)/community/(list)/model/index.tsx b/src/app/[variants]/(main)/community/(list)/model/index.tsx index 626b048554..61214ec201 100644 --- a/src/app/[variants]/(main)/community/(list)/model/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/model/index.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { useQuery } from '@/hooks/useQuery'; import { useDiscoverStore } from '@/store/discover'; -import { DiscoverTab, ModelQueryParams } from '@/types/discover'; +import { DiscoverTab, type ModelQueryParams } from '@/types/discover'; import Pagination from '../features/Pagination'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/community/(list)/provider/features/List/Item.tsx b/src/app/[variants]/(main)/community/(list)/provider/features/List/Item.tsx index b6952d0bdb..aee320aa10 100644 --- a/src/app/[variants]/(main)/community/(list)/provider/features/List/Item.tsx +++ b/src/app/[variants]/(main)/community/(list)/provider/features/List/Item.tsx @@ -7,7 +7,7 @@ import { useTranslation } from 'react-i18next'; import { Link, useNavigate } from 'react-router-dom'; import urlJoin from 'url-join'; -import { DiscoverProviderItem } from '@/types/discover'; +import { type DiscoverProviderItem } from '@/types/discover'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/app/[variants]/(main)/community/(list)/provider/features/List/index.tsx b/src/app/[variants]/(main)/community/(list)/provider/features/List/index.tsx index 381cf17de8..1eeae8666b 100644 --- a/src/app/[variants]/(main)/community/(list)/provider/features/List/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/provider/features/List/index.tsx @@ -3,7 +3,7 @@ import { Grid } from '@lobehub/ui'; import { memo } from 'react'; -import { DiscoverProviderItem } from '@/types/discover'; +import { type DiscoverProviderItem } from '@/types/discover'; import ProviderEmpty from '../../../../features/ProviderEmpty'; import Item from './Item'; diff --git a/src/app/[variants]/(main)/community/(list)/provider/index.tsx b/src/app/[variants]/(main)/community/(list)/provider/index.tsx index 090d5b7818..8c917f0f99 100644 --- a/src/app/[variants]/(main)/community/(list)/provider/index.tsx +++ b/src/app/[variants]/(main)/community/(list)/provider/index.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { useQuery } from '@/hooks/useQuery'; import { useDiscoverStore } from '@/store/discover'; -import { DiscoverTab, ProviderQueryParams } from '@/types/discover'; +import { DiscoverTab, type ProviderQueryParams } from '@/types/discover'; import Pagination from '../features/Pagination'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/community/_layout/Sidebar/Header/Nav.tsx b/src/app/[variants]/(main)/community/_layout/Sidebar/Header/Nav.tsx index fd6f91bf98..eafbce0f2f 100644 --- a/src/app/[variants]/(main)/community/_layout/Sidebar/Header/Nav.tsx +++ b/src/app/[variants]/(main)/community/_layout/Sidebar/Header/Nav.tsx @@ -8,7 +8,7 @@ import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { Link, useNavigate } from 'react-router-dom'; -import NavItem, { NavItemProps } from '@/features/NavPanel/components/NavItem'; +import NavItem, { type NavItemProps } from '@/features/NavPanel/components/NavItem'; import { DiscoverTab } from '@/types/discover'; interface Item { diff --git a/src/app/[variants]/(main)/community/_layout/Sidebar/Header/index.tsx b/src/app/[variants]/(main)/community/_layout/Sidebar/Header/index.tsx index 0e87e668e7..b84218f387 100644 --- a/src/app/[variants]/(main)/community/_layout/Sidebar/Header/index.tsx +++ b/src/app/[variants]/(main)/community/_layout/Sidebar/Header/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import SideBarHeaderLayout from '@/features/NavPanel/SideBarHeaderLayout'; diff --git a/src/app/[variants]/(main)/community/_layout/index.tsx b/src/app/[variants]/(main)/community/_layout/index.tsx index ef03ecdcf8..a95a6c1393 100644 --- a/src/app/[variants]/(main)/community/_layout/index.tsx +++ b/src/app/[variants]/(main)/community/_layout/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import Sidebar from './Sidebar'; diff --git a/src/app/[variants]/(main)/community/components/CardBanner.tsx b/src/app/[variants]/(main)/community/components/CardBanner.tsx index 1153ffebbf..80ef013564 100644 --- a/src/app/[variants]/(main)/community/components/CardBanner.tsx +++ b/src/app/[variants]/(main)/community/components/CardBanner.tsx @@ -1,6 +1,6 @@ -import { Avatar, DivProps, Flexbox } from '@lobehub/ui'; +import { Avatar, type DivProps, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; export const useStyles = createStyles(({ css, token }) => ({ banner: css` diff --git a/src/app/[variants]/(main)/community/components/CategoryContainer.tsx b/src/app/[variants]/(main)/community/components/CategoryContainer.tsx index c1be764e1d..dab792640e 100644 --- a/src/app/[variants]/(main)/community/components/CategoryContainer.tsx +++ b/src/app/[variants]/(main)/community/components/CategoryContainer.tsx @@ -1,5 +1,5 @@ import { ScrollShadow } from '@lobehub/ui'; -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; const CategoryContainer: FC> = ({ children, top = 16 }) => { return ( diff --git a/src/app/[variants]/(main)/community/components/CategoryMenu.tsx b/src/app/[variants]/(main)/community/components/CategoryMenu.tsx index 2dac592435..ff6d3ba3b9 100644 --- a/src/app/[variants]/(main)/community/components/CategoryMenu.tsx +++ b/src/app/[variants]/(main)/community/components/CategoryMenu.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Menu, MenuProps } from '@lobehub/ui'; +import { Menu, type MenuProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/community/components/Statistic.tsx b/src/app/[variants]/(main)/community/components/Statistic.tsx index 0c159ffe00..c894b8c3e9 100644 --- a/src/app/[variants]/(main)/community/components/Statistic.tsx +++ b/src/app/[variants]/(main)/community/components/Statistic.tsx @@ -1,7 +1,7 @@ -import { Flexbox, FlexboxProps, Icon, Text, Tooltip } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Icon, Text, Tooltip } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { HelpCircleIcon } from 'lucide-react'; -import { CSSProperties, ReactNode, memo } from 'react'; +import { type CSSProperties, type ReactNode, memo } from 'react'; export const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/app/[variants]/(main)/community/components/Title.tsx b/src/app/[variants]/(main)/community/components/Title.tsx index dfa239fad8..58fbd5efd9 100644 --- a/src/app/[variants]/(main)/community/components/Title.tsx +++ b/src/app/[variants]/(main)/community/components/Title.tsx @@ -1,9 +1,9 @@ 'use client'; -import { Button, Flexbox, FlexboxProps, Icon, Tag } from '@lobehub/ui'; +import { Button, Flexbox, type FlexboxProps, Icon, Tag } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import { ChevronRight } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { Link } from 'react-router-dom'; import { SCROLL_PARENT_ID } from '../features/const'; diff --git a/src/app/[variants]/(main)/community/components/VirtuosoGridList/index.tsx b/src/app/[variants]/(main)/community/components/VirtuosoGridList/index.tsx index e33d3d0963..33f03caa94 100644 --- a/src/app/[variants]/(main)/community/components/VirtuosoGridList/index.tsx +++ b/src/app/[variants]/(main)/community/components/VirtuosoGridList/index.tsx @@ -1,6 +1,6 @@ -import { DivProps, Flexbox, Grid } from '@lobehub/ui'; +import { type DivProps, Flexbox, Grid } from '@lobehub/ui'; import { forwardRef, memo } from 'react'; -import { VirtuosoGrid, VirtuosoGridProps } from 'react-virtuoso'; +import { VirtuosoGrid, type VirtuosoGridProps } from 'react-virtuoso'; import { useScrollParent } from './useScrollParent'; diff --git a/src/app/[variants]/(main)/community/features/AssistantEmpty.tsx b/src/app/[variants]/(main)/community/features/AssistantEmpty.tsx index 8b6211fdd8..263bf9970e 100644 --- a/src/app/[variants]/(main)/community/features/AssistantEmpty.tsx +++ b/src/app/[variants]/(main)/community/features/AssistantEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { Bot } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/features/McpEmpty.tsx b/src/app/[variants]/(main)/community/features/McpEmpty.tsx index 0f3954c0e1..951d453b13 100644 --- a/src/app/[variants]/(main)/community/features/McpEmpty.tsx +++ b/src/app/[variants]/(main)/community/features/McpEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { Boxes } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/features/ModelEmpty.tsx b/src/app/[variants]/(main)/community/features/ModelEmpty.tsx index d1377a5c42..067b2051f9 100644 --- a/src/app/[variants]/(main)/community/features/ModelEmpty.tsx +++ b/src/app/[variants]/(main)/community/features/ModelEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { Cpu } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/features/ProviderEmpty.tsx b/src/app/[variants]/(main)/community/features/ProviderEmpty.tsx index 9821c5a3d0..9549098e08 100644 --- a/src/app/[variants]/(main)/community/features/ProviderEmpty.tsx +++ b/src/app/[variants]/(main)/community/features/ProviderEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { Cloud } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/features/Search.tsx b/src/app/[variants]/(main)/community/features/Search.tsx index a2da0aa661..a123838a16 100644 --- a/src/app/[variants]/(main)/community/features/Search.tsx +++ b/src/app/[variants]/(main)/community/features/Search.tsx @@ -1,6 +1,6 @@ 'use client'; -import { SearchBar, SearchBarProps } from '@lobehub/ui'; +import { SearchBar, type SearchBarProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/community/features/Title.tsx b/src/app/[variants]/(main)/community/features/Title.tsx index 68c571170d..10787c79a5 100644 --- a/src/app/[variants]/(main)/community/features/Title.tsx +++ b/src/app/[variants]/(main)/community/features/Title.tsx @@ -1,10 +1,10 @@ 'use client'; -import { Flexbox, FlexboxProps, Icon } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronRight } from 'lucide-react'; import NextLink from 'next/link'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { Link as RouterLink } from 'react-router-dom'; const useStyles = createStyles(({ css, token }) => ({ diff --git a/src/app/[variants]/(main)/community/features/useNav.tsx b/src/app/[variants]/(main)/community/features/useNav.tsx index 581f4d63ae..aafa245416 100644 --- a/src/app/[variants]/(main)/community/features/useNav.tsx +++ b/src/app/[variants]/(main)/community/features/useNav.tsx @@ -1,7 +1,7 @@ import { MCP } from '@lobehub/icons'; import { Icon } from '@lobehub/ui'; import { Bot, Brain, BrainCircuit, House } from 'lucide-react'; -import { ReactNode, useMemo } from 'react'; +import { type ReactNode, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useLocation } from 'react-router-dom'; diff --git a/src/app/[variants]/(main)/components/Link.tsx b/src/app/[variants]/(main)/components/Link.tsx index 3467bb351d..48cf299596 100644 --- a/src/app/[variants]/(main)/components/Link.tsx +++ b/src/app/[variants]/(main)/components/Link.tsx @@ -1,5 +1,5 @@ import React, { memo } from 'react'; -import { Link as ReactRouterLink, LinkProps as ReactRouterLinkProps } from 'react-router-dom'; +import { Link as ReactRouterLink, type LinkProps as ReactRouterLinkProps } from 'react-router-dom'; interface LinkProps extends Omit { children?: React.ReactNode; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/AgentProfilePopup.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/AgentProfilePopup.tsx index f4d9bd5f65..bf577693ba 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/AgentProfilePopup.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/AgentProfilePopup.tsx @@ -4,7 +4,7 @@ import type { AgentItem } from '@lobechat/types'; import { Avatar, Center, Flexbox, Text, Tooltip } from '@lobehub/ui'; import { Popover } from 'antd'; import { createStyles } from 'antd-style'; -import { PropsWithChildren, memo, useState } from 'react'; +import { type PropsWithChildren, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { DEFAULT_AVATAR } from '@/const/meta'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupMemberItem.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupMemberItem.tsx index e8bec5ac17..e8ca47b324 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupMemberItem.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupMemberItem.tsx @@ -1,7 +1,7 @@ 'use client'; import { Avatar } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { DEFAULT_AVATAR } from '@/const/meta'; import NavItem from '@/features/NavPanel/components/NavItem'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupRole.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupRole.tsx index fc6e44de78..f3ca220b56 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupRole.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/GroupConfig/GroupRole.tsx @@ -2,13 +2,13 @@ import { Flexbox } from '@lobehub/ui'; import { EditableMessage } from '@lobehub/ui/chat'; -import { MouseEvent, memo } from 'react'; +import { type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import GroupInfo from '@/features/GroupInfo'; import { useAgentGroupStore } from '@/store/agentGroup'; import { agentGroupSelectors } from '@/store/agentGroup/selectors'; -import { LobeSession } from '@/types/session'; +import { type LobeSession } from '@/types/session'; import { useStyles } from './style'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/SwitchPanel.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/SwitchPanel.tsx index 92b62687d6..2ca610314c 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/SwitchPanel.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/SwitchPanel.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { Popover } from 'antd'; -import React, { PropsWithChildren, Suspense, memo } from 'react'; +import React, { type PropsWithChildren, Suspense, memo } from 'react'; import { useNavigate } from 'react-router-dom'; import List from '@/app/[variants]/(main)/home/_layout/Body/Agent/List'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/index.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/index.tsx index b08611898b..fab38605ff 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/index.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/Header/Agent/index.tsx @@ -2,7 +2,7 @@ import { ActionIcon, Block, GroupAvatar, Text } from '@lobehub/ui'; import { ChevronsUpDownIcon } from 'lucide-react'; -import React, { PropsWithChildren, memo } from 'react'; +import React, { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { DEFAULT_AVATAR } from '@/const/meta'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/Header/index.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/Header/index.tsx index b32ab421c3..6a0f066772 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/Header/index.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/Header/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import SideBarHeaderLayout from '@/features/NavPanel/SideBarHeaderLayout'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/Members/index.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/Members/index.tsx index a151a5322f..5a3aeaa9e8 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/Members/index.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/Members/index.tsx @@ -2,7 +2,7 @@ import { AccordionItem, ActionIcon, Flexbox, Text } from '@lobehub/ui'; import { Loader2Icon, UserPlus } from 'lucide-react'; -import { MouseEvent, memo, useState } from 'react'; +import { type MouseEvent, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useInitGroupConfig } from '@/hooks/useInitGroupConfig'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx index 67f129e6f1..7a42b10e5a 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/AllTopicsDrawer/Content.tsx @@ -3,7 +3,7 @@ import { Flexbox } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { memo, useCallback, useEffect, useRef } from 'react'; -import { VList, VListHandle } from 'virtua'; +import { VList, type VListHandle } from 'virtua'; import SkeletonList from '@/features/NavPanel/components/SkeletonList'; import TopicEmpty from '@/features/TopicEmpty'; diff --git a/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx b/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx index 5003b3519b..7a49c4b522 100644 --- a/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx +++ b/src/app/[variants]/(main)/group/_layout/Sidebar/Topic/TopicListContent/ByTimeMode/GroupItem.tsx @@ -4,7 +4,7 @@ import { HashIcon } from 'lucide-react'; import React, { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { GroupedTopic } from '@/types/topic'; +import { type GroupedTopic } from '@/types/topic'; import TopicItem from '../../List/Item'; diff --git a/src/app/[variants]/(main)/group/_layout/index.tsx b/src/app/[variants]/(main)/group/_layout/index.tsx index 3b4324cd54..108ddf646c 100644 --- a/src/app/[variants]/(main)/group/_layout/index.tsx +++ b/src/app/[variants]/(main)/group/_layout/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import { isDesktop } from '@/const/version'; diff --git a/src/app/[variants]/(main)/group/features/Conversation/ChatItem/Thread.tsx b/src/app/[variants]/(main)/group/features/Conversation/ChatItem/Thread.tsx index d9bce31e96..ee6cdadc74 100644 --- a/src/app/[variants]/(main)/group/features/Conversation/ChatItem/Thread.tsx +++ b/src/app/[variants]/(main)/group/features/Conversation/ChatItem/Thread.tsx @@ -1,7 +1,7 @@ import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useChatStore } from '@/store/chat'; diff --git a/src/app/[variants]/(main)/group/features/Conversation/ChatItem/ThreadItem.tsx b/src/app/[variants]/(main)/group/features/Conversation/ChatItem/ThreadItem.tsx index e1b3901734..6ddb5a8eb9 100644 --- a/src/app/[variants]/(main)/group/features/Conversation/ChatItem/ThreadItem.tsx +++ b/src/app/[variants]/(main)/group/features/Conversation/ChatItem/ThreadItem.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { useIsMobile } from '@/hooks/useIsMobile'; import { useChatStore } from '@/store/chat'; import { chatSelectors } from '@/store/chat/selectors'; -import { ThreadItem } from '@/types/topic'; +import { type ThreadItem } from '@/types/topic'; const useStyles = createStyles(({ css, token }) => ({ active: css` diff --git a/src/app/[variants]/(main)/group/features/Conversation/Header/Tags/KnowledgeTag.tsx b/src/app/[variants]/(main)/group/features/Conversation/Header/Tags/KnowledgeTag.tsx index 9055431bd0..2e6465d9e7 100644 --- a/src/app/[variants]/(main)/group/features/Conversation/Header/Tags/KnowledgeTag.tsx +++ b/src/app/[variants]/(main)/group/features/Conversation/Header/Tags/KnowledgeTag.tsx @@ -7,7 +7,7 @@ import { memo } from 'react'; import KnowledgeIcon from '@/components/KnowledgeIcon'; import { oneLineEllipsis } from '@/styles'; -import { KnowledgeItem } from '@/types/knowledgeBase'; +import { type KnowledgeItem } from '@/types/knowledgeBase'; export interface PluginTagProps { data: KnowledgeItem[]; diff --git a/src/app/[variants]/(main)/group/features/Conversation/MainChatInput/GroupChat.tsx b/src/app/[variants]/(main)/group/features/Conversation/MainChatInput/GroupChat.tsx index a3b8470af0..58a6282ee9 100644 --- a/src/app/[variants]/(main)/group/features/Conversation/MainChatInput/GroupChat.tsx +++ b/src/app/[variants]/(main)/group/features/Conversation/MainChatInput/GroupChat.tsx @@ -1,6 +1,6 @@ 'use client'; -import { SlashOptions } from '@lobehub/editor'; +import { type SlashOptions } from '@lobehub/editor'; import { Alert, Avatar, Flexbox, GroupAvatar } from '@lobehub/ui'; import { isEqual } from 'es-toolkit/compat'; import { Suspense, memo, useMemo } from 'react'; diff --git a/src/app/[variants]/(main)/group/features/Conversation/useGroupContext.ts b/src/app/[variants]/(main)/group/features/Conversation/useGroupContext.ts index d5aa030e40..2881dd2118 100644 --- a/src/app/[variants]/(main)/group/features/Conversation/useGroupContext.ts +++ b/src/app/[variants]/(main)/group/features/Conversation/useGroupContext.ts @@ -1,6 +1,6 @@ 'use client'; -import { ConversationContext } from '@lobechat/types'; +import { type ConversationContext } from '@lobechat/types'; import { useAgentGroupStore } from '@/store/agentGroup'; import { agentGroupSelectors } from '@/store/agentGroup/selectors'; diff --git a/src/app/[variants]/(main)/group/features/Conversation/useGroupHooks.ts b/src/app/[variants]/(main)/group/features/Conversation/useGroupHooks.ts index f0ef27f6c1..0334f87c44 100644 --- a/src/app/[variants]/(main)/group/features/Conversation/useGroupHooks.ts +++ b/src/app/[variants]/(main)/group/features/Conversation/useGroupHooks.ts @@ -1,9 +1,9 @@ 'use client'; -import { ConversationContext, SendMessageParams } from '@lobechat/types'; +import { type ConversationContext, type SendMessageParams } from '@lobechat/types'; import { useMemo } from 'react'; -import { ConversationHooks } from '@/features/Conversation'; +import { type ConversationHooks } from '@/features/Conversation'; import { useChatStore } from '@/store/chat'; /** diff --git a/src/app/[variants]/(main)/group/features/Portal/_layout/Mobile.tsx b/src/app/[variants]/(main)/group/features/Portal/_layout/Mobile.tsx index 112d469e99..3427309b0c 100644 --- a/src/app/[variants]/(main)/group/features/Portal/_layout/Mobile.tsx +++ b/src/app/[variants]/(main)/group/features/Portal/_layout/Mobile.tsx @@ -2,7 +2,7 @@ import { Flexbox, Modal } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode } from 'react'; +import { type ReactNode } from 'react'; import { useTranslation } from 'react-i18next'; import { PortalContent } from '@/features/Portal/router'; diff --git a/src/app/[variants]/(main)/group/features/Portal/features/Body.tsx b/src/app/[variants]/(main)/group/features/Portal/features/Body.tsx index 993176eb41..a46080d035 100644 --- a/src/app/[variants]/(main)/group/features/Portal/features/Body.tsx +++ b/src/app/[variants]/(main)/group/features/Portal/features/Body.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { css, cx } from 'antd-style'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; const body = css` :has(.portal-artifact) { diff --git a/src/app/[variants]/(main)/group/features/Portal/features/Portal.tsx b/src/app/[variants]/(main)/group/features/Portal/features/Portal.tsx index 4a2a6c0088..897a208987 100644 --- a/src/app/[variants]/(main)/group/features/Portal/features/Portal.tsx +++ b/src/app/[variants]/(main)/group/features/Portal/features/Portal.tsx @@ -4,7 +4,7 @@ import { DraggablePanel, DraggablePanelContainer, type DraggablePanelProps } fro import { Flexbox } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { PropsWithChildren, memo, useState } from 'react'; +import { type PropsWithChildren, memo, useState } from 'react'; import { CHAT_PORTAL_MAX_WIDTH, diff --git a/src/app/[variants]/(main)/group/profile/features/AgentBuilder/AgentBuilderProvider.tsx b/src/app/[variants]/(main)/group/profile/features/AgentBuilder/AgentBuilderProvider.tsx index 7d20a28b30..ede0354aca 100644 --- a/src/app/[variants]/(main)/group/profile/features/AgentBuilder/AgentBuilderProvider.tsx +++ b/src/app/[variants]/(main)/group/profile/features/AgentBuilder/AgentBuilderProvider.tsx @@ -1,9 +1,9 @@ -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { ConversationProvider } from '@/features/Conversation'; import { useOperationState } from '@/hooks/useOperationState'; import { useChatStore } from '@/store/chat'; -import { MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; +import { type MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; interface AgentBuilderProviderProps { agentId: string; diff --git a/src/app/[variants]/(main)/group/profile/features/EditorCanvas/useSlashItems.tsx b/src/app/[variants]/(main)/group/profile/features/EditorCanvas/useSlashItems.tsx index 17c94aee71..5f857f19f4 100644 --- a/src/app/[variants]/(main)/group/profile/features/EditorCanvas/useSlashItems.tsx +++ b/src/app/[variants]/(main)/group/profile/features/EditorCanvas/useSlashItems.tsx @@ -6,7 +6,7 @@ import { INSERT_ORDERED_LIST_COMMAND, INSERT_TABLE_COMMAND, INSERT_UNORDERED_LIST_COMMAND, - SlashOptions, + type SlashOptions, } from '@lobehub/editor'; import { Text } from '@lobehub/ui'; import { diff --git a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/AgentTool.tsx b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/AgentTool.tsx index 5c64f41e18..623922da8d 100644 --- a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/AgentTool.tsx +++ b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/AgentTool.tsx @@ -1,7 +1,7 @@ 'use client'; -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; -import { Avatar, Button, Flexbox, Icon, ItemType, Segmented } from '@lobehub/ui'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; +import { Avatar, Button, Flexbox, Icon, type ItemType, Segmented } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { ArrowRight, PlusIcon, Store, ToyBrick } from 'lucide-react'; diff --git a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx index 6572a38399..9a6d9f02e3 100644 --- a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx +++ b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/MentionDropdown.tsx @@ -1,9 +1,9 @@ -import { MenuRenderProps } from '@lobehub/editor/es/plugins/slash/react/type'; +import { type MenuRenderProps } from '@lobehub/editor/es/plugins/slash/react/type'; import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { ReactNode, memo, useEffect, useLayoutEffect, useRef, useState } from 'react'; +import { type ReactNode, memo, useEffect, useLayoutEffect, useRef, useState } from 'react'; -import { MentionListOption } from './types'; +import { type MentionListOption } from './types'; /** * Get cursor position from browser selection API diff --git a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/useMentionItems.tsx b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/useMentionItems.tsx index 425b40d6c5..edecd1f6d9 100644 --- a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/useMentionItems.tsx +++ b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/MentionList/useMentionItems.tsx @@ -1,8 +1,8 @@ -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; import { ToolNameResolver } from '@lobechat/context-engine'; import { type API, apiPrompt, toolPrompt } from '@lobechat/prompts'; -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; -import { IEditor, INSERT_MENTION_COMMAND } from '@lobehub/editor'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type IEditor, INSERT_MENTION_COMMAND } from '@lobehub/editor'; import { Icon, Image } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; @@ -16,7 +16,7 @@ import { globalAgentContextManager } from '@/utils/client/GlobalAgentContextMana import { hydrationPrompt } from '@/utils/promptTemplate'; import MentionDropdown from './MentionDropdown'; -import { MentionListOption, MentionMetadata } from './types'; +import { type MentionListOption, type MentionMetadata } from './types'; // 根据 identifier 获取 Klavis 服务器类型配置 const getKlavisServerType = (identifier: string) => diff --git a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/PluginTag.tsx b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/PluginTag.tsx index b3bae8b373..16e756bb9f 100644 --- a/src/app/[variants]/(main)/group/profile/features/ProfileEditor/PluginTag.tsx +++ b/src/app/[variants]/(main)/group/profile/features/ProfileEditor/PluginTag.tsx @@ -1,6 +1,6 @@ 'use client'; -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; import { Avatar, Icon, Tag } from '@lobehub/ui'; import { createStyles, useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; diff --git a/src/app/[variants]/(main)/group/profile/features/ProfileProvider.tsx b/src/app/[variants]/(main)/group/profile/features/ProfileProvider.tsx index b25465bb0e..41f4afc4d1 100644 --- a/src/app/[variants]/(main)/group/profile/features/ProfileProvider.tsx +++ b/src/app/[variants]/(main)/group/profile/features/ProfileProvider.tsx @@ -1,7 +1,7 @@ 'use client'; import { useEditor } from '@lobehub/editor/react'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import StoreUpdater from './StoreUpdater'; import { Provider, createStore } from './store'; diff --git a/src/app/[variants]/(main)/group/profile/features/StoreUpdater.tsx b/src/app/[variants]/(main)/group/profile/features/StoreUpdater.tsx index c9019f543b..1601fe870d 100644 --- a/src/app/[variants]/(main)/group/profile/features/StoreUpdater.tsx +++ b/src/app/[variants]/(main)/group/profile/features/StoreUpdater.tsx @@ -3,7 +3,7 @@ import { useEditorState } from '@lobehub/editor/react'; import { memo, useEffect } from 'react'; -import { PublicState, useProfileStore, useStoreApi } from './store'; +import { type PublicState, useProfileStore, useStoreApi } from './store'; export type StoreUpdaterProps = Partial; diff --git a/src/app/[variants]/(main)/group/profile/features/store/action.ts b/src/app/[variants]/(main)/group/profile/features/store/action.ts index 49180cc2cc..b5f3bf994e 100644 --- a/src/app/[variants]/(main)/group/profile/features/store/action.ts +++ b/src/app/[variants]/(main)/group/profile/features/store/action.ts @@ -1,8 +1,8 @@ import { EDITOR_DEBOUNCE_TIME, EDITOR_MAX_WAIT } from '@lobechat/const'; import { debounce } from 'es-toolkit/compat'; -import { StateCreator } from 'zustand'; +import { type StateCreator } from 'zustand'; -import { State, initialState } from './initialState'; +import { type State, initialState } from './initialState'; type SaveConfigPayload = { editorData: Record; diff --git a/src/app/[variants]/(main)/group/profile/features/store/index.ts b/src/app/[variants]/(main)/group/profile/features/store/index.ts index de5b6ed351..3dc03cf683 100644 --- a/src/app/[variants]/(main)/group/profile/features/store/index.ts +++ b/src/app/[variants]/(main)/group/profile/features/store/index.ts @@ -1,13 +1,13 @@ 'use client'; -import { StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApiWithSelector } from '@lobechat/types'; import { createContext } from 'zustand-utils'; import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { Store, store } from './action'; -import { State } from './initialState'; +import { type Store, store } from './action'; +import { type State } from './initialState'; export type { PublicState, State } from './initialState'; diff --git a/src/app/[variants]/(main)/group/profile/features/store/initialState.ts b/src/app/[variants]/(main)/group/profile/features/store/initialState.ts index ab6a56af08..c9486598d3 100644 --- a/src/app/[variants]/(main)/group/profile/features/store/initialState.ts +++ b/src/app/[variants]/(main)/group/profile/features/store/initialState.ts @@ -1,4 +1,4 @@ -import { IEditor } from '@lobehub/editor'; +import { type IEditor } from '@lobehub/editor'; // eslint-disable-next-line @typescript-eslint/no-empty-interface export interface PublicState {} diff --git a/src/app/[variants]/(main)/group/profile/features/store/selectors.ts b/src/app/[variants]/(main)/group/profile/features/store/selectors.ts index 23ce47726c..7333b25a0c 100644 --- a/src/app/[variants]/(main)/group/profile/features/store/selectors.ts +++ b/src/app/[variants]/(main)/group/profile/features/store/selectors.ts @@ -1,4 +1,4 @@ -import { Store } from './action'; +import { type Store } from './action'; export const selectors = { chatPanelExpanded: (s: Store) => s.chatPanelExpanded, diff --git a/src/app/[variants]/(main)/group/profile/index.tsx b/src/app/[variants]/(main)/group/profile/index.tsx index e4a358e79b..6c230efec5 100644 --- a/src/app/[variants]/(main)/group/profile/index.tsx +++ b/src/app/[variants]/(main)/group/profile/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox } from '@lobehub/ui'; -import { FC, Suspense, memo } from 'react'; +import { type FC, Suspense, memo } from 'react'; import Loading from '@/components/Loading/BrandTextLoading'; import WideScreenContainer from '@/features/WideScreenContainer'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentGroupItem/index.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentGroupItem/index.tsx index 554b1eb099..a46ed2cda1 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentGroupItem/index.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentGroupItem/index.tsx @@ -3,7 +3,7 @@ import type { SidebarAgentItem } from '@lobechat/types'; import { ActionIcon, Dropdown, Icon, type MenuProps } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { Loader2, PinIcon } from 'lucide-react'; -import { CSSProperties, DragEvent, memo, useCallback, useMemo } from 'react'; +import { type CSSProperties, type DragEvent, memo, useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentItem/index.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentItem/index.tsx index b19668c997..994491b155 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentItem/index.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/AgentItem/index.tsx @@ -3,7 +3,7 @@ import type { SidebarAgentItem } from '@lobechat/types'; import { ActionIcon, Dropdown, Icon, type MenuProps } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { Loader2, PinIcon } from 'lucide-react'; -import { CSSProperties, DragEvent, memo, useCallback, useMemo } from 'react'; +import { type CSSProperties, type DragEvent, memo, useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/InboxItem.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/InboxItem.tsx index bd4a9330f4..2eb61e73fc 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/InboxItem.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/InboxItem.tsx @@ -2,7 +2,7 @@ import { DEFAULT_INBOX_AVATAR, SESSION_CHAT_URL } from '@lobechat/const'; import { Avatar } from '@lobehub/ui'; -import { CSSProperties, memo, useCallback } from 'react'; +import { type CSSProperties, memo, useCallback } from 'react'; import { useNavigate } from 'react-router-dom'; import NavItem from '@/features/NavPanel/components/NavItem'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/List.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/List.tsx index fb7c349d3c..fc22caef9e 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/List/List.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/List/List.tsx @@ -1,7 +1,7 @@ import type { SidebarAgentItem } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { MoreHorizontal } from 'lucide-react'; -import { CSSProperties, memo, useMemo } from 'react'; +import { type CSSProperties, memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import NavItem from '@/features/NavPanel/components/NavItem'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/ModalProvider.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/ModalProvider.tsx index 00ef3818dd..6a04d9fcb7 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/ModalProvider.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/ModalProvider.tsx @@ -1,6 +1,6 @@ 'use client'; -import { ReactNode, createContext, memo, useContext, useMemo, useState } from 'react'; +import { type ReactNode, createContext, memo, useContext, useMemo, useState } from 'react'; import { ChatGroupWizard } from '@/components/ChatGroupWizard'; import { MemberSelectionModal } from '@/components/MemberSelectionModal'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/GroupItem.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/GroupItem.tsx index 0f81373f29..299547103c 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/GroupItem.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/GroupItem.tsx @@ -6,7 +6,7 @@ import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useHomeStore } from '@/store/home'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; const useStyles = createStyles(({ css }) => ({ content: css` diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/index.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/index.tsx index 67744d2f1d..f283f6c3fa 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/index.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/ConfigGroupModal/index.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { useHomeStore } from '@/store/home'; import { homeAgentListSelectors } from '@/store/home/selectors'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; import GroupItem from './GroupItem'; diff --git a/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/CreateGroupModal.tsx b/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/CreateGroupModal.tsx index 60a72fac54..eb1aad6bb8 100644 --- a/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/CreateGroupModal.tsx +++ b/src/app/[variants]/(main)/home/_layout/Body/Agent/Modals/CreateGroupModal.tsx @@ -1,7 +1,7 @@ import { Input, Modal, type ModalProps } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; import { App } from 'antd'; -import { MouseEvent, memo, useState } from 'react'; +import { type MouseEvent, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useGlobalStore } from '@/store/global'; diff --git a/src/app/[variants]/(main)/home/_layout/Header/components/AddButton.tsx b/src/app/[variants]/(main)/home/_layout/Header/components/AddButton.tsx index 769fc9bc34..858de17436 100644 --- a/src/app/[variants]/(main)/home/_layout/Header/components/AddButton.tsx +++ b/src/app/[variants]/(main)/home/_layout/Header/components/AddButton.tsx @@ -3,8 +3,7 @@ import { CreateBotIcon } from '@lobehub/ui/icons'; import { Dropdown } from 'antd'; import { useTheme } from 'antd-style'; import { ChevronDownIcon } from 'lucide-react'; -import type React from 'react'; -import { memo, useCallback, useMemo } from 'react'; +import React, { memo, useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { DESKTOP_HEADER_ICON_SIZE } from '@/const/layoutTokens'; diff --git a/src/app/[variants]/(main)/home/_layout/Header/components/Nav.tsx b/src/app/[variants]/(main)/home/_layout/Header/components/Nav.tsx index fc13ae9147..89d977e028 100644 --- a/src/app/[variants]/(main)/home/_layout/Header/components/Nav.tsx +++ b/src/app/[variants]/(main)/home/_layout/Header/components/Nav.tsx @@ -11,7 +11,7 @@ import { useGlobalStore } from '@/store/global'; import { SidebarTabKey } from '@/store/global/initialState'; import { featureFlagsSelectors, useServerConfigStore } from '@/store/serverConfig'; -import NavItem, { NavItemProps } from '../../../../../../../features/NavPanel/components/NavItem'; +import NavItem, { type NavItemProps } from '../../../../../../../features/NavPanel/components/NavItem'; interface Item { hidden?: boolean | undefined; diff --git a/src/app/[variants]/(main)/home/_layout/hooks/useCreateMenuItems.tsx b/src/app/[variants]/(main)/home/_layout/hooks/useCreateMenuItems.tsx index ec06ad9088..8d1e3bf98e 100644 --- a/src/app/[variants]/(main)/home/_layout/hooks/useCreateMenuItems.tsx +++ b/src/app/[variants]/(main)/home/_layout/hooks/useCreateMenuItems.tsx @@ -1,7 +1,7 @@ import { Icon } from '@lobehub/ui'; import { GroupBotSquareIcon } from '@lobehub/ui/icons'; import { App } from 'antd'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import { BotIcon, FileTextIcon, FolderCogIcon, FolderPlus } from 'lucide-react'; import { useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; @@ -10,7 +10,7 @@ import { useNavigate } from 'react-router-dom'; import { useGroupTemplates } from '@/components/ChatGroupWizard/templates'; import { DEFAULT_CHAT_GROUP_CHAT_CONFIG } from '@/const/settings'; import { useActionSWR } from '@/libs/swr'; -import { GroupMemberConfig, chatGroupService } from '@/services/chatGroup'; +import { type GroupMemberConfig, chatGroupService } from '@/services/chatGroup'; import { useAgentStore } from '@/store/agent'; import { useAgentGroupStore } from '@/store/agentGroup'; import { useFileStore } from '@/store/file'; diff --git a/src/app/[variants]/(main)/home/_layout/hooks/useProjectMenuItems.tsx b/src/app/[variants]/(main)/home/_layout/hooks/useProjectMenuItems.tsx index a534405b6e..0b9e970246 100644 --- a/src/app/[variants]/(main)/home/_layout/hooks/useProjectMenuItems.tsx +++ b/src/app/[variants]/(main)/home/_layout/hooks/useProjectMenuItems.tsx @@ -1,5 +1,5 @@ import { Icon } from '@lobehub/ui'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import { BoxIcon } from 'lucide-react'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/home/_layout/hooks/useSessionGroupMenuItems.tsx b/src/app/[variants]/(main)/home/_layout/hooks/useSessionGroupMenuItems.tsx index bdce87533a..cfaa6c8d0b 100644 --- a/src/app/[variants]/(main)/home/_layout/hooks/useSessionGroupMenuItems.tsx +++ b/src/app/[variants]/(main)/home/_layout/hooks/useSessionGroupMenuItems.tsx @@ -1,7 +1,7 @@ import { Icon } from '@lobehub/ui'; import { App } from 'antd'; import { createStyles } from 'antd-style'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import { FolderCogIcon, FolderPenIcon, Trash } from 'lucide-react'; import { useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/home/_layout/hooks/useSessionItemMenuItems.tsx b/src/app/[variants]/(main)/home/_layout/hooks/useSessionItemMenuItems.tsx index 5a2c350be6..11d5651c9f 100644 --- a/src/app/[variants]/(main)/home/_layout/hooks/useSessionItemMenuItems.tsx +++ b/src/app/[variants]/(main)/home/_layout/hooks/useSessionItemMenuItems.tsx @@ -2,7 +2,7 @@ import { SessionDefaultGroup } from '@lobechat/types'; import { Icon } from '@lobehub/ui'; import { App } from 'antd'; import { createStyles } from 'antd-style'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import isEqual from 'fast-deep-equal'; import { Check, diff --git a/src/app/[variants]/(main)/home/_layout/index.tsx b/src/app/[variants]/(main)/home/_layout/index.tsx index bd35356335..2c7fa0febd 100644 --- a/src/app/[variants]/(main)/home/_layout/index.tsx +++ b/src/app/[variants]/(main)/home/_layout/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { Activity, FC, ReactNode, useEffect, useState } from 'react'; +import { Activity, type FC, type ReactNode, useEffect, useState } from 'react'; import { Outlet, useLocation, useNavigate } from 'react-router-dom'; import { useHomeStore } from '@/store/home'; diff --git a/src/app/[variants]/(main)/home/features/CommunityAgents/Item.tsx b/src/app/[variants]/(main)/home/features/CommunityAgents/Item.tsx index 41d9ddf24a..024691c0c5 100644 --- a/src/app/[variants]/(main)/home/features/CommunityAgents/Item.tsx +++ b/src/app/[variants]/(main)/home/features/CommunityAgents/Item.tsx @@ -4,7 +4,7 @@ import { memo } from 'react'; import { RECENT_BLOCK_SIZE } from '@/app/[variants]/(main)/home/features/const'; import { DEFAULT_AVATAR } from '@/const/meta'; -import { DiscoverAssistantItem } from '@/types/discover'; +import { type DiscoverAssistantItem } from '@/types/discover'; const CommunityAgentItem = memo( ({ title, avatar, backgroundColor, author, description }) => { diff --git a/src/app/[variants]/(main)/home/features/FeaturedPlugins/Item.tsx b/src/app/[variants]/(main)/home/features/FeaturedPlugins/Item.tsx index 416829510b..c2f43ad6a1 100644 --- a/src/app/[variants]/(main)/home/features/FeaturedPlugins/Item.tsx +++ b/src/app/[variants]/(main)/home/features/FeaturedPlugins/Item.tsx @@ -4,7 +4,7 @@ import { memo } from 'react'; import MetaInfo from '@/app/[variants]/(main)/community/(list)/mcp/features/List/MetaInfo'; import { RECENT_BLOCK_SIZE } from '@/app/[variants]/(main)/home/features/const'; -import { DiscoverMcpItem } from '@/types/discover'; +import { type DiscoverMcpItem } from '@/types/discover'; const FeaturedPluginItem = memo(({ name, icon, github, installCount }) => { const theme = useTheme(); diff --git a/src/app/[variants]/(main)/home/features/InputArea/StarterList.tsx b/src/app/[variants]/(main)/home/features/InputArea/StarterList.tsx index a7337588ea..4e042fce79 100644 --- a/src/app/[variants]/(main)/home/features/InputArea/StarterList.tsx +++ b/src/app/[variants]/(main)/home/features/InputArea/StarterList.tsx @@ -1,5 +1,5 @@ import { BUILTIN_AGENT_SLUGS } from '@lobechat/builtin-agents'; -import { Button, ButtonProps, Center, Tooltip } from '@lobehub/ui'; +import { Button, type ButtonProps, Center, Tooltip } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { BotIcon, ImageIcon, MicroscopeIcon, PenLineIcon, UsersIcon } from 'lucide-react'; import { memo, useCallback, useMemo } from 'react'; diff --git a/src/app/[variants]/(main)/home/features/RecentPage/Item.tsx b/src/app/[variants]/(main)/home/features/RecentPage/Item.tsx index fe826a8a19..45d993edc2 100644 --- a/src/app/[variants]/(main)/home/features/RecentPage/Item.tsx +++ b/src/app/[variants]/(main)/home/features/RecentPage/Item.tsx @@ -8,7 +8,7 @@ import { memo } from 'react'; import Time from '@/app/[variants]/(main)/home/features/components/Time'; import { RECENT_BLOCK_SIZE } from '@/app/[variants]/(main)/home/features/const'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; // Helper to extract title from markdown content const extractTitle = (content: string): string | null => { diff --git a/src/app/[variants]/(main)/home/features/RecentResource/Item.tsx b/src/app/[variants]/(main)/home/features/RecentResource/Item.tsx index a034167fc5..78eaa0bd72 100644 --- a/src/app/[variants]/(main)/home/features/RecentResource/Item.tsx +++ b/src/app/[variants]/(main)/home/features/RecentResource/Item.tsx @@ -7,7 +7,7 @@ import { memo } from 'react'; import Time from '@/app/[variants]/(main)/home/features/components/Time'; import { RECENT_BLOCK_SIZE } from '@/app/[variants]/(main)/home/features/const'; import FileIcon from '@/components/FileIcon'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; import { formatSize } from '@/utils/format'; const IMAGE_FILE_TYPES = new Set([ diff --git a/src/app/[variants]/(main)/home/features/RecentTopic/Item.tsx b/src/app/[variants]/(main)/home/features/RecentTopic/Item.tsx index f62bde02f6..5b71dc4605 100644 --- a/src/app/[variants]/(main)/home/features/RecentTopic/Item.tsx +++ b/src/app/[variants]/(main)/home/features/RecentTopic/Item.tsx @@ -5,7 +5,7 @@ import { memo, useMemo } from 'react'; import Time from '@/app/[variants]/(main)/home/features/components/Time'; import { RECENT_BLOCK_SIZE } from '@/app/[variants]/(main)/home/features/const'; import { DEFAULT_AVATAR } from '@/const/meta'; -import { RecentTopic } from '@/types/topic'; +import { type RecentTopic } from '@/types/topic'; const ReactTopicItem = memo(({ title, updatedAt, agent, group, type }) => { const theme = useTheme(); diff --git a/src/app/[variants]/(main)/home/features/components/GroupBlock/index.tsx b/src/app/[variants]/(main)/home/features/components/GroupBlock/index.tsx index 7dfb5a340a..8ff024752a 100644 --- a/src/app/[variants]/(main)/home/features/components/GroupBlock/index.tsx +++ b/src/app/[variants]/(main)/home/features/components/GroupBlock/index.tsx @@ -1,6 +1,6 @@ -import { Flexbox, FlexboxProps, Icon, IconProps, Text } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Icon, type IconProps, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, Suspense, memo, useState } from 'react'; +import { type ReactNode, Suspense, memo, useState } from 'react'; interface GroupBlockProps extends Omit { action?: ReactNode; diff --git a/src/app/[variants]/(main)/home/features/components/ScrollShadowWithButton/index.tsx b/src/app/[variants]/(main)/home/features/components/ScrollShadowWithButton/index.tsx index 3990917df7..ebc9be0998 100644 --- a/src/app/[variants]/(main)/home/features/components/ScrollShadowWithButton/index.tsx +++ b/src/app/[variants]/(main)/home/features/components/ScrollShadowWithButton/index.tsx @@ -1,4 +1,4 @@ -import { Button, Flexbox, FlexboxProps, ScrollShadow } from '@lobehub/ui'; +import { Button, Flexbox, type FlexboxProps, ScrollShadow } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronLeft, ChevronRight } from 'lucide-react'; import { memo, useCallback, useEffect, useRef, useState } from 'react'; diff --git a/src/app/[variants]/(main)/home/index.tsx b/src/app/[variants]/(main)/home/index.tsx index 499f828a2c..898b12e552 100644 --- a/src/app/[variants]/(main)/home/index.tsx +++ b/src/app/[variants]/(main)/home/index.tsx @@ -1,5 +1,5 @@ import { Flexbox } from '@lobehub/ui'; -import { FC } from 'react'; +import { type FC } from 'react'; import { useLocation } from 'react-router-dom'; import PageTitle from '@/components/PageTitle'; diff --git a/src/app/[variants]/(main)/hooks/useActiveTabKey.ts b/src/app/[variants]/(main)/hooks/useActiveTabKey.ts index 193d61e183..db14654d01 100644 --- a/src/app/[variants]/(main)/hooks/useActiveTabKey.ts +++ b/src/app/[variants]/(main)/hooks/useActiveTabKey.ts @@ -1,6 +1,6 @@ import { useLocation, useSearchParams } from 'react-router-dom'; -import { ProfileTabs, SettingsTabs, SidebarTabKey } from '@/store/global/initialState'; +import { ProfileTabs, SettingsTabs, type SidebarTabKey } from '@/store/global/initialState'; /** * Returns the active tab key (chat/discover/settings/...) diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/AspectRatioSelect/index.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/AspectRatioSelect/index.tsx index 75ac602851..c40de0193a 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/AspectRatioSelect/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/AspectRatioSelect/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Block, Center, Grid, GridProps, Text } from '@lobehub/ui'; +import { Block, Center, Grid, type GridProps, Text } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { memo } from 'react'; import useMergeState from 'use-merge-value'; diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ImageUpload.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ImageUpload.tsx index 6a70101b66..fd83a278c3 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ImageUpload.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ImageUpload.tsx @@ -12,7 +12,7 @@ import { useDragAndDrop } from '@/app/[variants]/(main)/image/_layout/ConfigPane import { useUploadFilesValidation } from '@/app/[variants]/(main)/image/_layout/ConfigPanel/hooks/useUploadFilesValidation'; import { useConfigPanelStyles } from '@/app/[variants]/(main)/image/_layout/ConfigPanel/style'; import { useFileStore } from '@/store/file'; -import { FileUploadStatus } from '@/types/files/upload'; +import { type FileUploadStatus } from '@/types/files/upload'; // ======== Business Types ======== // diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/InputNumber/index.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/InputNumber/index.tsx index c2a6af4d56..428a7da217 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/InputNumber/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/InputNumber/index.tsx @@ -3,7 +3,7 @@ import { Button, Flexbox, InputNumber, Tooltip } from '@lobehub/ui'; import { Dices } from 'lucide-react'; import { MAX_SEED } from 'model-bank'; -import { CSSProperties, memo, useCallback } from 'react'; +import { type CSSProperties, memo, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { generateUniqueSeeds } from '@/utils/number'; diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/ImageModelItem.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/ImageModelItem.tsx index 2cbc8559d0..46cab94e4e 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/ImageModelItem.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/ImageModelItem.tsx @@ -2,7 +2,7 @@ import { ModelIcon } from '@lobehub/icons'; import { Flexbox, Text } from '@lobehub/ui'; import { Popover } from 'antd'; import { createStyles } from 'antd-style'; -import { AiModelForSelect } from 'model-bank'; +import { type AiModelForSelect } from 'model-bank'; import numeral from 'numeral'; import { memo, useMemo } from 'react'; diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/index.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/index.tsx index a828f6ded0..c41038a493 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/ModelSelect/index.tsx @@ -11,7 +11,7 @@ import { useAiInfraStore } from '@/store/aiInfra'; import { aiProviderSelectors } from '@/store/aiInfra/slices/aiProvider/selectors'; import { useImageStore } from '@/store/image'; import { imageGenerationConfigSelectors } from '@/store/image/selectors'; -import { EnabledProviderWithModels } from '@/types/index'; +import { type EnabledProviderWithModels } from '@/types/index'; import ImageModelItem from './ImageModelItem'; diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/MultiImagesUpload/index.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/MultiImagesUpload/index.tsx index c17087ecce..e084e600a8 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/MultiImagesUpload/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/MultiImagesUpload/index.tsx @@ -13,7 +13,7 @@ import { useDragAndDrop } from '@/app/[variants]/(main)/image/_layout/ConfigPane import { useUploadFilesValidation } from '@/app/[variants]/(main)/image/_layout/ConfigPanel/hooks/useUploadFilesValidation'; import { useConfigPanelStyles } from '@/app/[variants]/(main)/image/_layout/ConfigPanel/style'; import { useFileStore } from '@/store/file'; -import { FileUploadStatus } from '@/types/files/upload'; +import { type FileUploadStatus } from '@/types/files/upload'; import ImageManageModal, { type ImageItem } from './ImageManageModal'; diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/Select/index.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/Select/index.tsx index a40b81f143..e65e666c12 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/Select/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/components/Select/index.tsx @@ -1,8 +1,8 @@ 'use client'; -import { Block, Center, Grid, GridProps, Select, Text } from '@lobehub/ui'; +import { Block, Center, Grid, type GridProps, Select, Text } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import useMergeState from 'use-merge-value'; export interface SizeSelectProps extends Omit { diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/hooks/useDragAndDrop.ts b/src/app/[variants]/(main)/image/_layout/ConfigPanel/hooks/useDragAndDrop.ts index 04af6eb187..7df166dbcf 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/hooks/useDragAndDrop.ts +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/hooks/useDragAndDrop.ts @@ -1,4 +1,5 @@ -import React, { useRef, useState } from 'react'; +import type React from 'react'; +import { useRef, useState } from 'react'; interface UseDragAndDropOptions { accept?: string; // MIME type filter, e.g., 'image/*' diff --git a/src/app/[variants]/(main)/image/_layout/ConfigPanel/index.tsx b/src/app/[variants]/(main)/image/_layout/ConfigPanel/index.tsx index 4c6839a0cb..b9dc744c99 100644 --- a/src/app/[variants]/(main)/image/_layout/ConfigPanel/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/ConfigPanel/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox, Text } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useFetchAiImageConfig } from '@/hooks/useFetchAiImageConfig'; diff --git a/src/app/[variants]/(main)/image/_layout/Header.tsx b/src/app/[variants]/(main)/image/_layout/Header.tsx index 7ea8f9afdf..28c858529e 100644 --- a/src/app/[variants]/(main)/image/_layout/Header.tsx +++ b/src/app/[variants]/(main)/image/_layout/Header.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import SideBarHeaderLayout from '@/features/NavPanel/SideBarHeaderLayout'; diff --git a/src/app/[variants]/(main)/image/_layout/Topics/TopicItem.tsx b/src/app/[variants]/(main)/image/_layout/Topics/TopicItem.tsx index d1999b4948..3f4048c88e 100644 --- a/src/app/[variants]/(main)/image/_layout/Topics/TopicItem.tsx +++ b/src/app/[variants]/(main)/image/_layout/Topics/TopicItem.tsx @@ -11,7 +11,7 @@ import { useGlobalStore } from '@/store/global'; import { globalGeneralSelectors } from '@/store/global/selectors'; import { useImageStore } from '@/store/image'; import { generationTopicSelectors } from '@/store/image/slices/generationTopic/selectors'; -import { ImageGenerationTopic } from '@/types/generation'; +import { type ImageGenerationTopic } from '@/types/generation'; const formatTime = (date: Date, locale: string) => { return new Intl.DateTimeFormat(locale, { diff --git a/src/app/[variants]/(main)/image/_layout/index.tsx b/src/app/[variants]/(main)/image/_layout/index.tsx index f8255756e1..0279d9fe0e 100644 --- a/src/app/[variants]/(main)/image/_layout/index.tsx +++ b/src/app/[variants]/(main)/image/_layout/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import RegisterHotkeys from './RegisterHotkeys'; diff --git a/src/app/[variants]/(main)/image/_layout/type.ts b/src/app/[variants]/(main)/image/_layout/type.ts index f20ff2c126..56afe6afe0 100644 --- a/src/app/[variants]/(main)/image/_layout/type.ts +++ b/src/app/[variants]/(main)/image/_layout/type.ts @@ -1,4 +1,4 @@ -import { ReactNode } from 'react'; +import { type ReactNode } from 'react'; export interface LayoutProps { children: ReactNode; diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/BatchItem.tsx b/src/app/[variants]/(main)/image/features/GenerationFeed/BatchItem.tsx index cef5e4e29a..df689b6aa5 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/BatchItem.tsx +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/BatchItem.tsx @@ -9,14 +9,14 @@ import dayjs from 'dayjs'; import relativeTime from 'dayjs/plugin/relativeTime'; import { omit } from 'es-toolkit/compat'; import { CopyIcon, RotateCcwSquareIcon, Trash2 } from 'lucide-react'; -import { RuntimeImageGenParams } from 'model-bank'; +import { type RuntimeImageGenParams } from 'model-bank'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import APIKeyForm from '@/components/InvalidAPIKey'; import { useImageStore } from '@/store/image'; import { AsyncTaskErrorType } from '@/types/asyncTask'; -import { GenerationBatch } from '@/types/generation'; +import { type GenerationBatch } from '@/types/generation'; import { GenerationItem } from './GenerationItem'; import { DEFAULT_MAX_ITEM_WIDTH } from './GenerationItem/utils'; diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ActionButtons.tsx b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ActionButtons.tsx index 1fc0e4571d..6ea4a65940 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ActionButtons.tsx +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ActionButtons.tsx @@ -1,12 +1,12 @@ 'use client'; -import { ActionIconGroup, ActionIconGroupProps, type ActionIconProps } from '@lobehub/ui'; +import { ActionIconGroup, type ActionIconGroupProps, type ActionIconProps } from '@lobehub/ui'; import { Dices, Download, Trash2 } from 'lucide-react'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useStyles } from './styles'; -import { ActionButtonsProps } from './types'; +import { type ActionButtonsProps } from './types'; const actionIconProps: Partial> = { tooltipProps: { placement: 'left' }, diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ErrorState.tsx b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ErrorState.tsx index 4bb435a4c2..ad1d604bb3 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ErrorState.tsx +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/ErrorState.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { ActionButtons } from './ActionButtons'; import { useStyles } from './styles'; -import { ErrorStateProps } from './types'; +import { type ErrorStateProps } from './types'; import { getThumbnailMaxWidth } from './utils'; // 错误状态组件 diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/LoadingState.tsx b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/LoadingState.tsx index fe096f65f2..60007b4f32 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/LoadingState.tsx +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/LoadingState.tsx @@ -10,7 +10,7 @@ import { AsyncTaskStatus } from '@/types/asyncTask'; import { ActionButtons } from './ActionButtons'; import { ElapsedTime } from './ElapsedTime'; import { useStyles } from './styles'; -import { LoadingStateProps } from './types'; +import { type LoadingStateProps } from './types'; import { getThumbnailMaxWidth } from './utils'; // 加载状态组件 diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/SuccessState.tsx b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/SuccessState.tsx index 16fd0ca0fc..e8e9725676 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/SuccessState.tsx +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/SuccessState.tsx @@ -7,7 +7,7 @@ import ImageItem from '@/components/ImageItem'; import { ActionButtons } from './ActionButtons'; import { useStyles } from './styles'; -import { SuccessStateProps } from './types'; +import { type SuccessStateProps } from './types'; import { getThumbnailMaxWidth } from './utils'; // 成功状态组件 diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/index.tsx b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/index.tsx index 9a86bda756..33debac894 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/index.tsx +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/index.tsx @@ -14,7 +14,7 @@ import { inferFileExtensionFromImageUrl } from '@/utils/url'; import { ErrorState } from './ErrorState'; import { LoadingState } from './LoadingState'; import { SuccessState } from './SuccessState'; -import { GenerationItemProps } from './types'; +import { type GenerationItemProps } from './types'; import { getAspectRatio } from './utils'; const isSupportedParamSelector = imageGenerationConfigSelectors.isSupportedParam; diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/types.ts b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/types.ts index 1d9c391f18..2f8e61991e 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/types.ts +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/types.ts @@ -1,4 +1,4 @@ -import { Generation, GenerationBatch } from '@/types/generation'; +import { type Generation, type GenerationBatch } from '@/types/generation'; export interface GenerationItemProps { generation: Generation; diff --git a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/utils.ts b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/utils.ts index b1161cc946..74569ecb37 100644 --- a/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/utils.ts +++ b/src/app/[variants]/(main)/image/features/GenerationFeed/GenerationItem/utils.ts @@ -1,4 +1,4 @@ -import { Generation, GenerationBatch } from '@/types/generation'; +import { type Generation, type GenerationBatch } from '@/types/generation'; // Default maximum width for image items export const DEFAULT_MAX_ITEM_WIDTH = 200; diff --git a/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/TagCloudCanvas.tsx b/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/TagCloudCanvas.tsx index e8bda09e70..2da9d573b0 100644 --- a/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/TagCloudCanvas.tsx +++ b/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/TagCloudCanvas.tsx @@ -4,7 +4,7 @@ import { useTheme } from 'antd-style'; import { Suspense, memo, useEffect, useMemo, useRef, useState } from 'react'; import * as THREE from 'three'; -import { QueryTagsResult } from '@/database/models/userMemory'; +import { type QueryTagsResult } from '@/database/models/userMemory'; import UserAvatar from '@/features/User/UserAvatar'; // 配置常量 diff --git a/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/index.tsx b/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/index.tsx index c63a21d930..22de2e73b0 100644 --- a/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/index.tsx +++ b/src/app/[variants]/(main)/memory/(home)/features/RoleTagCloud/index.tsx @@ -6,7 +6,7 @@ import { memo, useEffect, useState } from 'react'; import Loading from '@/components/Loading/BrandTextLoading'; import { DESKTOP_HEADER_ICON_SIZE } from '@/const/layoutTokens'; -import { QueryTagsResult } from '@/database/models/userMemory'; +import { type QueryTagsResult } from '@/database/models/userMemory'; const TagCloudCanvas = dynamic(() => import('./TagCloudCanvas'), { loading: () => , diff --git a/src/app/[variants]/(main)/memory/(home)/index.tsx b/src/app/[variants]/(main)/memory/(home)/index.tsx index 32369d040b..3086143e36 100644 --- a/src/app/[variants]/(main)/memory/(home)/index.tsx +++ b/src/app/[variants]/(main)/memory/(home)/index.tsx @@ -1,5 +1,5 @@ import { Flexbox } from '@lobehub/ui'; -import { FC } from 'react'; +import { type FC } from 'react'; import MemoryEmpty from '@/app/[variants]/(main)/memory/features/MemoryEmpty'; import { SCROLL_PARENT_ID } from '@/app/[variants]/(main)/memory/features/TimeLineView/useScrollParent'; diff --git a/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/Nav.tsx b/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/Nav.tsx index be13d022a3..95b38c706a 100644 --- a/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/Nav.tsx +++ b/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/Nav.tsx @@ -14,7 +14,7 @@ import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { Link, useNavigate } from 'react-router-dom'; -import NavItem, { NavItemProps } from '@/features/NavPanel/components/NavItem'; +import NavItem, { type NavItemProps } from '@/features/NavPanel/components/NavItem'; import { useGlobalStore } from '@/store/global'; interface Item { diff --git a/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/index.tsx b/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/index.tsx index 5a668b50a7..95332badb0 100644 --- a/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/index.tsx +++ b/src/app/[variants]/(main)/memory/_layout/Sidebar/Header/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import SideBarHeaderLayout from '@/features/NavPanel/SideBarHeaderLayout'; diff --git a/src/app/[variants]/(main)/memory/_layout/index.tsx b/src/app/[variants]/(main)/memory/_layout/index.tsx index 606bf87463..511f1b8766 100644 --- a/src/app/[variants]/(main)/memory/_layout/index.tsx +++ b/src/app/[variants]/(main)/memory/_layout/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import Sidebar from './Sidebar'; diff --git a/src/app/[variants]/(main)/memory/contexts/features/ContextDropdown.tsx b/src/app/[variants]/(main)/memory/contexts/features/ContextDropdown.tsx index 0f16d2b97b..2ea02e0974 100644 --- a/src/app/[variants]/(main)/memory/contexts/features/ContextDropdown.tsx +++ b/src/app/[variants]/(main)/memory/contexts/features/ContextDropdown.tsx @@ -1,7 +1,7 @@ -import { ActionIcon, ActionIconProps, Dropdown } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps, Dropdown } from '@lobehub/ui'; import { App } from 'antd'; import { MoreHorizontal, Pencil, Trash2 } from 'lucide-react'; -import { KeyboardEvent, MouseEvent, memo } from 'react'; +import { type KeyboardEvent, type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useUserMemoryStore } from '@/store/userMemory'; diff --git a/src/app/[variants]/(main)/memory/contexts/features/List/GridView/ContextCard.tsx b/src/app/[variants]/(main)/memory/contexts/features/List/GridView/ContextCard.tsx index b907b04cf4..5e2c22050b 100644 --- a/src/app/[variants]/(main)/memory/contexts/features/List/GridView/ContextCard.tsx +++ b/src/app/[variants]/(main)/memory/contexts/features/List/GridView/ContextCard.tsx @@ -4,7 +4,7 @@ import { useTranslation } from 'react-i18next'; import GridCard from '@/app/[variants]/(main)/memory/features/GridView/GridCard'; import ProgressIcon from '@/app/[variants]/(main)/memory/features/ProgressIcon'; -import { DisplayContextMemory } from '@/database/repositories/userMemory'; +import { type DisplayContextMemory } from '@/database/repositories/userMemory'; import ContextDropdown from '../../ContextDropdown'; diff --git a/src/app/[variants]/(main)/memory/contexts/features/List/GridView/index.tsx b/src/app/[variants]/(main)/memory/contexts/features/List/GridView/index.tsx index 8a3566fcfe..f38c549534 100644 --- a/src/app/[variants]/(main)/memory/contexts/features/List/GridView/index.tsx +++ b/src/app/[variants]/(main)/memory/contexts/features/List/GridView/index.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { DisplayContextMemory } from '@/database/repositories/userMemory'; +import { type DisplayContextMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { GridView } from '../../../../features/GridView'; diff --git a/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/ContextCard.tsx b/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/ContextCard.tsx index 9a993dcc6b..608c3aa63c 100644 --- a/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/ContextCard.tsx +++ b/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/ContextCard.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import TimeLineCard from '@/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard'; -import { DisplayContextMemory } from '@/database/repositories/userMemory'; +import { type DisplayContextMemory } from '@/database/repositories/userMemory'; import ContextDropdown from '../../ContextDropdown'; diff --git a/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/index.tsx b/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/index.tsx index 97d65a55b0..8c84995461 100644 --- a/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/index.tsx +++ b/src/app/[variants]/(main)/memory/contexts/features/List/TimelineView/index.tsx @@ -2,7 +2,7 @@ import { memo } from 'react'; -import { DisplayContextMemory } from '@/database/repositories/userMemory'; +import { type DisplayContextMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { TimelineView as GenericTimelineView } from '../../../../features/TimeLineView'; diff --git a/src/app/[variants]/(main)/memory/contexts/features/List/index.tsx b/src/app/[variants]/(main)/memory/contexts/features/List/index.tsx index 686aa7890a..a285b711e7 100644 --- a/src/app/[variants]/(main)/memory/contexts/features/List/index.tsx +++ b/src/app/[variants]/(main)/memory/contexts/features/List/index.tsx @@ -6,7 +6,7 @@ import { useQueryState } from '@/hooks/useQueryParam'; import { useGlobalStore } from '@/store/global'; import { useUserMemoryStore } from '@/store/userMemory'; -import { ViewMode } from '../../../features/ViewModeSwitcher'; +import { type ViewMode } from '../../../features/ViewModeSwitcher'; import GridView from './GridView'; import TimelineView from './TimelineView'; diff --git a/src/app/[variants]/(main)/memory/contexts/index.tsx b/src/app/[variants]/(main)/memory/contexts/index.tsx index 09cbd0ecda..2e6f4cf147 100644 --- a/src/app/[variants]/(main)/memory/contexts/index.tsx +++ b/src/app/[variants]/(main)/memory/contexts/index.tsx @@ -1,6 +1,6 @@ import { Flexbox, Icon, Tag } from '@lobehub/ui'; import { BrainCircuitIcon } from 'lucide-react'; -import { FC, memo, useCallback, useEffect, useState } from 'react'; +import { type FC, memo, useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { SCROLL_PARENT_ID } from '@/app/[variants]/(main)/memory/features/TimeLineView/useScrollParent'; @@ -13,7 +13,7 @@ import { useUserMemoryStore } from '@/store/userMemory'; import EditableModal from '../features/EditableModal'; import FilterBar from '../features/FilterBar'; import Loading from '../features/Loading'; -import ViewModeSwitcher, { ViewMode } from '../features/ViewModeSwitcher'; +import ViewModeSwitcher, { type ViewMode } from '../features/ViewModeSwitcher'; import ContextRightPanel from './features/ContextRightPanel'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/memory/experiences/features/ExperienceDropdown.tsx b/src/app/[variants]/(main)/memory/experiences/features/ExperienceDropdown.tsx index 3733d17368..1f55244d36 100644 --- a/src/app/[variants]/(main)/memory/experiences/features/ExperienceDropdown.tsx +++ b/src/app/[variants]/(main)/memory/experiences/features/ExperienceDropdown.tsx @@ -1,7 +1,7 @@ -import { ActionIcon, ActionIconProps, Dropdown } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps, Dropdown } from '@lobehub/ui'; import { App } from 'antd'; import { MoreHorizontal, Pencil, Trash2 } from 'lucide-react'; -import { KeyboardEvent, MouseEvent, memo } from 'react'; +import { type KeyboardEvent, type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useUserMemoryStore } from '@/store/userMemory'; diff --git a/src/app/[variants]/(main)/memory/experiences/features/List/GridView/ExperienceCard.tsx b/src/app/[variants]/(main)/memory/experiences/features/List/GridView/ExperienceCard.tsx index 9d31b1af01..8df52c8598 100644 --- a/src/app/[variants]/(main)/memory/experiences/features/List/GridView/ExperienceCard.tsx +++ b/src/app/[variants]/(main)/memory/experiences/features/List/GridView/ExperienceCard.tsx @@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'; import GridCard from '@/app/[variants]/(main)/memory/features/GridView/GridCard'; import ProgressIcon from '@/app/[variants]/(main)/memory/features/ProgressIcon'; -import { DisplayExperienceMemory } from '@/database/repositories/userMemory'; +import { type DisplayExperienceMemory } from '@/database/repositories/userMemory'; import ExperienceDropdown from '../../ExperienceDropdown'; diff --git a/src/app/[variants]/(main)/memory/experiences/features/List/GridView/index.tsx b/src/app/[variants]/(main)/memory/experiences/features/List/GridView/index.tsx index 2b55e94290..820c3975ab 100644 --- a/src/app/[variants]/(main)/memory/experiences/features/List/GridView/index.tsx +++ b/src/app/[variants]/(main)/memory/experiences/features/List/GridView/index.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { DisplayExperienceMemory } from '@/database/repositories/userMemory'; +import { type DisplayExperienceMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { GridView } from '../../../../features/GridView'; diff --git a/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/ExperienceCard.tsx b/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/ExperienceCard.tsx index ab9e00b1a3..f0ffc727f9 100644 --- a/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/ExperienceCard.tsx +++ b/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/ExperienceCard.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import TimeLineCard from '@/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard'; -import { DisplayExperienceMemory } from '@/database/repositories/userMemory'; +import { type DisplayExperienceMemory } from '@/database/repositories/userMemory'; import ExperienceDropdown from '../../ExperienceDropdown'; diff --git a/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/index.tsx b/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/index.tsx index f3db78f9bc..de019fd60c 100644 --- a/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/index.tsx +++ b/src/app/[variants]/(main)/memory/experiences/features/List/TimelineView/index.tsx @@ -2,7 +2,7 @@ import { memo } from 'react'; -import { DisplayExperienceMemory } from '@/database/repositories/userMemory'; +import { type DisplayExperienceMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { TimelineView as GenericTimelineView } from '../../../../features/TimeLineView'; diff --git a/src/app/[variants]/(main)/memory/experiences/features/List/index.tsx b/src/app/[variants]/(main)/memory/experiences/features/List/index.tsx index e3915258ff..b658ddd707 100644 --- a/src/app/[variants]/(main)/memory/experiences/features/List/index.tsx +++ b/src/app/[variants]/(main)/memory/experiences/features/List/index.tsx @@ -6,7 +6,7 @@ import { useQueryState } from '@/hooks/useQueryParam'; import { useGlobalStore } from '@/store/global'; import { useUserMemoryStore } from '@/store/userMemory'; -import { ViewMode } from '../../../features/ViewModeSwitcher'; +import { type ViewMode } from '../../../features/ViewModeSwitcher'; import GridView from './GridView'; import TimelineView from './TimelineView'; diff --git a/src/app/[variants]/(main)/memory/experiences/index.tsx b/src/app/[variants]/(main)/memory/experiences/index.tsx index 6cbc3a9a42..6cd9485ad4 100644 --- a/src/app/[variants]/(main)/memory/experiences/index.tsx +++ b/src/app/[variants]/(main)/memory/experiences/index.tsx @@ -1,6 +1,6 @@ import { Flexbox, Icon, Tag } from '@lobehub/ui'; import { BrainCircuitIcon } from 'lucide-react'; -import { FC, memo, useCallback, useEffect, useState } from 'react'; +import { type FC, memo, useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { SCROLL_PARENT_ID } from '@/app/[variants]/(main)/memory/features/TimeLineView/useScrollParent'; @@ -13,7 +13,7 @@ import { useUserMemoryStore } from '@/store/userMemory'; import EditableModal from '../features/EditableModal'; import FilterBar from '../features/FilterBar'; import Loading from '../features/Loading'; -import ViewModeSwitcher, { ViewMode } from '../features/ViewModeSwitcher'; +import ViewModeSwitcher, { type ViewMode } from '../features/ViewModeSwitcher'; import ExperienceRightPanel from './features/ExperienceRightPanel'; import List from './features/List'; diff --git a/src/app/[variants]/(main)/memory/features/DetailPanel.tsx b/src/app/[variants]/(main)/memory/features/DetailPanel.tsx index 7b6ced6d4d..1ae8777c99 100644 --- a/src/app/[variants]/(main)/memory/features/DetailPanel.tsx +++ b/src/app/[variants]/(main)/memory/features/DetailPanel.tsx @@ -1,7 +1,7 @@ -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; import { memo } from 'react'; -import NavHeader, { NavHeaderProps } from '@/features/NavHeader'; +import NavHeader, { type NavHeaderProps } from '@/features/NavHeader'; import RightPanel from '@/features/RightPanel'; import ToggleRightPanelButton from '@/features/RightPanel/ToggleRightPanelButton'; diff --git a/src/app/[variants]/(main)/memory/features/EditableModal/Typobar.tsx b/src/app/[variants]/(main)/memory/features/EditableModal/Typobar.tsx index cb6500bcf8..2898a332a8 100644 --- a/src/app/[variants]/(main)/memory/features/EditableModal/Typobar.tsx +++ b/src/app/[variants]/(main)/memory/features/EditableModal/Typobar.tsx @@ -1,4 +1,4 @@ -import { HotkeyEnum, IEditor, getHotkeyById } from '@lobehub/editor'; +import { HotkeyEnum, type IEditor, getHotkeyById } from '@lobehub/editor'; import { useEditorState } from '@lobehub/editor/react'; import { ChatInputActionBar, diff --git a/src/app/[variants]/(main)/memory/features/GridView/GridCard.tsx b/src/app/[variants]/(main)/memory/features/GridView/GridCard.tsx index 207e4a4f62..bf9fe29681 100644 --- a/src/app/[variants]/(main)/memory/features/GridView/GridCard.tsx +++ b/src/app/[variants]/(main)/memory/features/GridView/GridCard.tsx @@ -1,6 +1,6 @@ import { Block, Center, Flexbox, Tag, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import HashTags from '../HashTags'; import Time from '../Time'; diff --git a/src/app/[variants]/(main)/memory/features/GridView/index.tsx b/src/app/[variants]/(main)/memory/features/GridView/index.tsx index 8249cc6387..c1cab4b166 100644 --- a/src/app/[variants]/(main)/memory/features/GridView/index.tsx +++ b/src/app/[variants]/(main)/memory/features/GridView/index.tsx @@ -1,5 +1,5 @@ -import { DivProps, Grid } from '@lobehub/ui'; -import { ReactNode, forwardRef, memo } from 'react'; +import { type DivProps, Grid } from '@lobehub/ui'; +import { type ReactNode, forwardRef, memo } from 'react'; import { VirtuosoGrid } from 'react-virtuoso'; import Loading from '@/app/[variants]/(main)/memory/features/Loading'; diff --git a/src/app/[variants]/(main)/memory/features/Loading.tsx b/src/app/[variants]/(main)/memory/features/Loading.tsx index 40b48ae321..48559cc703 100644 --- a/src/app/[variants]/(main)/memory/features/Loading.tsx +++ b/src/app/[variants]/(main)/memory/features/Loading.tsx @@ -2,7 +2,7 @@ import { Flexbox, Grid, Skeleton } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; -import { ViewMode } from './ViewModeSwitcher'; +import { type ViewMode } from './ViewModeSwitcher'; const useStyles = createStyles(({ css, token }) => ({ card: css` diff --git a/src/app/[variants]/(main)/memory/features/MemoryEmpty.tsx b/src/app/[variants]/(main)/memory/features/MemoryEmpty.tsx index 2ec78e12fe..f283fa3d26 100644 --- a/src/app/[variants]/(main)/memory/features/MemoryEmpty.tsx +++ b/src/app/[variants]/(main)/memory/features/MemoryEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { BrainCircuitIcon } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/memory/features/ProgressIcon.tsx b/src/app/[variants]/(main)/memory/features/ProgressIcon.tsx index 57d1a0d4e3..3bad6e9014 100644 --- a/src/app/[variants]/(main)/memory/features/ProgressIcon.tsx +++ b/src/app/[variants]/(main)/memory/features/ProgressIcon.tsx @@ -1,5 +1,5 @@ import { Flexbox, Text, Tooltip } from '@lobehub/ui'; -import { Progress, ProgressProps } from 'antd'; +import { Progress, type ProgressProps } from 'antd'; import { useTheme } from 'antd-style'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/memory/features/SourceLink.tsx b/src/app/[variants]/(main)/memory/features/SourceLink.tsx index 7fd6ab24c3..01562943b8 100644 --- a/src/app/[variants]/(main)/memory/features/SourceLink.tsx +++ b/src/app/[variants]/(main)/memory/features/SourceLink.tsx @@ -5,7 +5,7 @@ import Link from 'next/link'; import { memo } from 'react'; import { useNavigate } from 'react-router-dom'; -import { MemorySource } from '@/database/repositories/userMemory'; +import { type MemorySource } from '@/database/repositories/userMemory'; const SourceLink = memo<{ source?: MemorySource | null }>(({ source }) => { const theme = useTheme(); diff --git a/src/app/[variants]/(main)/memory/features/TimeLineView/PeriodGroup.tsx b/src/app/[variants]/(main)/memory/features/TimeLineView/PeriodGroup.tsx index 3e3ed437cc..ff81b6837b 100644 --- a/src/app/[variants]/(main)/memory/features/TimeLineView/PeriodGroup.tsx +++ b/src/app/[variants]/(main)/memory/features/TimeLineView/PeriodGroup.tsx @@ -3,9 +3,9 @@ import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import dayjs from 'dayjs'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; -import { GroupBy } from './index'; +import { type GroupBy } from './index'; const useStyles = createStyles(({ css, token }) => ({ itemWrapper: css` diff --git a/src/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard.tsx b/src/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard.tsx index 1f6b4beb77..d52ff72118 100644 --- a/src/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard.tsx +++ b/src/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard.tsx @@ -1,7 +1,7 @@ import { Block, Flexbox, Icon, Tag, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Link2 } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import CateTag from '../CateTag'; import HashTags from '../HashTags'; diff --git a/src/app/[variants]/(main)/memory/features/TimeLineView/index.tsx b/src/app/[variants]/(main)/memory/features/TimeLineView/index.tsx index 92ebfe4847..d6e5e9c42a 100644 --- a/src/app/[variants]/(main)/memory/features/TimeLineView/index.tsx +++ b/src/app/[variants]/(main)/memory/features/TimeLineView/index.tsx @@ -2,7 +2,7 @@ import { createStyles } from 'antd-style'; import dayjs from 'dayjs'; -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { GroupedVirtuoso } from 'react-virtuoso'; import Loading from '@/app/[variants]/(main)/memory/features/Loading'; diff --git a/src/app/[variants]/(main)/memory/identities/features/IdentityDropdown.tsx b/src/app/[variants]/(main)/memory/identities/features/IdentityDropdown.tsx index 26f1b0517d..b745d79112 100644 --- a/src/app/[variants]/(main)/memory/identities/features/IdentityDropdown.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/IdentityDropdown.tsx @@ -1,7 +1,7 @@ -import { ActionIcon, ActionIconProps, Dropdown } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps, Dropdown } from '@lobehub/ui'; import { App } from 'antd'; import { MoreHorizontal, Pencil, Trash2 } from 'lucide-react'; -import { KeyboardEvent, MouseEvent, memo } from 'react'; +import { type KeyboardEvent, type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useUserMemoryStore } from '@/store/userMemory'; diff --git a/src/app/[variants]/(main)/memory/identities/features/List/GridView/IdentityCard.tsx b/src/app/[variants]/(main)/memory/identities/features/List/GridView/IdentityCard.tsx index 5a5fe4a18e..744cfb25c7 100644 --- a/src/app/[variants]/(main)/memory/identities/features/List/GridView/IdentityCard.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/List/GridView/IdentityCard.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import GridCard from '@/app/[variants]/(main)/memory/features/GridView/GridCard'; -import { DisplayIdentityMemory } from '@/database/repositories/userMemory'; +import { type DisplayIdentityMemory } from '@/database/repositories/userMemory'; import IdentityDropdown from '../../IdentityDropdown'; diff --git a/src/app/[variants]/(main)/memory/identities/features/List/GridView/index.tsx b/src/app/[variants]/(main)/memory/identities/features/List/GridView/index.tsx index 191529e691..90968720cb 100644 --- a/src/app/[variants]/(main)/memory/identities/features/List/GridView/index.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/List/GridView/index.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { DisplayIdentityMemory } from '@/database/repositories/userMemory'; +import { type DisplayIdentityMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { GridView } from '../../../../features/GridView'; diff --git a/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/IdentityCard.tsx b/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/IdentityCard.tsx index a071fb5f15..bb2702d3b4 100644 --- a/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/IdentityCard.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/IdentityCard.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import TimeLineCard from '@/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard'; -import { DisplayIdentityMemory } from '@/database/repositories/userMemory'; +import { type DisplayIdentityMemory } from '@/database/repositories/userMemory'; import IdentityDropdown from '../../IdentityDropdown'; diff --git a/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/index.tsx b/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/index.tsx index 24d85ab266..e53651fbd1 100644 --- a/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/index.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/List/TimelineView/index.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { DisplayIdentityMemory } from '@/database/repositories/userMemory'; +import { type DisplayIdentityMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { TimelineView as GenericTimelineView } from '../../../../features/TimeLineView'; diff --git a/src/app/[variants]/(main)/memory/identities/features/List/index.tsx b/src/app/[variants]/(main)/memory/identities/features/List/index.tsx index a3c5003738..80b25edcd0 100644 --- a/src/app/[variants]/(main)/memory/identities/features/List/index.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/List/index.tsx @@ -6,7 +6,7 @@ import { useGlobalStore } from '@/store/global'; import { useUserMemoryStore } from '@/store/userMemory'; import MemoryEmpty from '../../../features/MemoryEmpty'; -import { ViewMode } from '../../../features/ViewModeSwitcher'; +import { type ViewMode } from '../../../features/ViewModeSwitcher'; import GridView from './GridView'; import TimelineView from './TimelineView'; diff --git a/src/app/[variants]/(main)/memory/identities/features/SegmentedBar.tsx b/src/app/[variants]/(main)/memory/identities/features/SegmentedBar.tsx index 8a3db6c7d8..850534cc51 100644 --- a/src/app/[variants]/(main)/memory/identities/features/SegmentedBar.tsx +++ b/src/app/[variants]/(main)/memory/identities/features/SegmentedBar.tsx @@ -2,7 +2,7 @@ import { Segmented } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { IdentityType } from './List'; +import { type IdentityType } from './List'; interface SegmentedBarProps { onTypeChange: (type: IdentityType) => void; diff --git a/src/app/[variants]/(main)/memory/identities/index.tsx b/src/app/[variants]/(main)/memory/identities/index.tsx index b3225fc461..81453598d3 100644 --- a/src/app/[variants]/(main)/memory/identities/index.tsx +++ b/src/app/[variants]/(main)/memory/identities/index.tsx @@ -1,6 +1,6 @@ import { Flexbox, Icon, Tag } from '@lobehub/ui'; import { BrainCircuitIcon } from 'lucide-react'; -import { FC, memo, useCallback, useEffect, useState } from 'react'; +import { type FC, memo, useCallback, useEffect, useState } from 'react'; import CommonFilterBar from '@/app/[variants]/(main)/memory/features/FilterBar'; import NavHeader from '@/features/NavHeader'; @@ -8,14 +8,14 @@ import WideScreenContainer from '@/features/WideScreenContainer'; import WideScreenButton from '@/features/WideScreenContainer/WideScreenButton'; import { useQueryState } from '@/hooks/useQueryParam'; import { useUserMemoryStore } from '@/store/userMemory'; -import { TypesEnum } from '@/types/userMemory'; +import { type TypesEnum } from '@/types/userMemory'; import EditableModal from '../features/EditableModal'; import Loading from '../features/Loading'; import { SCROLL_PARENT_ID } from '../features/TimeLineView/useScrollParent'; -import ViewModeSwitcher, { ViewMode } from '../features/ViewModeSwitcher'; +import ViewModeSwitcher, { type ViewMode } from '../features/ViewModeSwitcher'; import IdentityRightPanel from './features/IdentityRightPanel'; -import List, { IdentityType } from './features/List'; +import List, { type IdentityType } from './features/List'; import SegmentedBar from './features/SegmentedBar'; const IdentitiesArea = memo(() => { diff --git a/src/app/[variants]/(main)/memory/preferences/features/List/GridView/PreferenceCard.tsx b/src/app/[variants]/(main)/memory/preferences/features/List/GridView/PreferenceCard.tsx index 2819d44a83..16b78ab1db 100644 --- a/src/app/[variants]/(main)/memory/preferences/features/List/GridView/PreferenceCard.tsx +++ b/src/app/[variants]/(main)/memory/preferences/features/List/GridView/PreferenceCard.tsx @@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'; import GridCard from '@/app/[variants]/(main)/memory/features/GridView/GridCard'; import ProgressIcon from '@/app/[variants]/(main)/memory/features/ProgressIcon'; -import { DisplayPreferenceMemory } from '@/database/repositories/userMemory'; +import { type DisplayPreferenceMemory } from '@/database/repositories/userMemory'; import PreferenceDropdown from '../../PreferenceDropdown'; diff --git a/src/app/[variants]/(main)/memory/preferences/features/List/GridView/index.tsx b/src/app/[variants]/(main)/memory/preferences/features/List/GridView/index.tsx index 8f8abe1ac4..7c7e637124 100644 --- a/src/app/[variants]/(main)/memory/preferences/features/List/GridView/index.tsx +++ b/src/app/[variants]/(main)/memory/preferences/features/List/GridView/index.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { DisplayPreferenceMemory } from '@/database/repositories/userMemory'; +import { type DisplayPreferenceMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { GridView } from '../../../../features/GridView'; diff --git a/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/PreferenceCard.tsx b/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/PreferenceCard.tsx index 0757f326ed..30c0369b16 100644 --- a/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/PreferenceCard.tsx +++ b/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/PreferenceCard.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import TimeLineCard from '@/app/[variants]/(main)/memory/features/TimeLineView/TimeLineCard'; -import { DisplayPreferenceMemory } from '@/database/repositories/userMemory'; +import { type DisplayPreferenceMemory } from '@/database/repositories/userMemory'; import PreferenceDropdown from '../../PreferenceDropdown'; diff --git a/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/index.tsx b/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/index.tsx index 98141b7d4b..abca7a37c8 100644 --- a/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/index.tsx +++ b/src/app/[variants]/(main)/memory/preferences/features/List/TimelineView/index.tsx @@ -2,7 +2,7 @@ import { memo } from 'react'; -import { DisplayPreferenceMemory } from '@/database/repositories/userMemory'; +import { type DisplayPreferenceMemory } from '@/database/repositories/userMemory'; import { useUserMemoryStore } from '@/store/userMemory'; import { TimelineView as GenericTimelineView } from '../../../../features/TimeLineView'; diff --git a/src/app/[variants]/(main)/memory/preferences/features/List/index.tsx b/src/app/[variants]/(main)/memory/preferences/features/List/index.tsx index 173514ba94..26d47d0ce2 100644 --- a/src/app/[variants]/(main)/memory/preferences/features/List/index.tsx +++ b/src/app/[variants]/(main)/memory/preferences/features/List/index.tsx @@ -6,7 +6,7 @@ import { useQueryState } from '@/hooks/useQueryParam'; import { useGlobalStore } from '@/store/global'; import { useUserMemoryStore } from '@/store/userMemory'; -import { ViewMode } from '../../../features/ViewModeSwitcher'; +import { type ViewMode } from '../../../features/ViewModeSwitcher'; import GridView from './GridView'; import TimelineView from './TimelineView'; diff --git a/src/app/[variants]/(main)/memory/preferences/features/PreferenceDropdown.tsx b/src/app/[variants]/(main)/memory/preferences/features/PreferenceDropdown.tsx index 7b676dc660..3ac522ca45 100644 --- a/src/app/[variants]/(main)/memory/preferences/features/PreferenceDropdown.tsx +++ b/src/app/[variants]/(main)/memory/preferences/features/PreferenceDropdown.tsx @@ -1,7 +1,7 @@ -import { ActionIcon, ActionIconProps, Dropdown } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps, Dropdown } from '@lobehub/ui'; import { App } from 'antd'; import { MoreHorizontal, Pencil, Trash2 } from 'lucide-react'; -import { KeyboardEvent, MouseEvent, memo } from 'react'; +import { type KeyboardEvent, type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useUserMemoryStore } from '@/store/userMemory'; diff --git a/src/app/[variants]/(main)/memory/preferences/index.tsx b/src/app/[variants]/(main)/memory/preferences/index.tsx index cb1d9d5e5a..4b3892f818 100644 --- a/src/app/[variants]/(main)/memory/preferences/index.tsx +++ b/src/app/[variants]/(main)/memory/preferences/index.tsx @@ -1,6 +1,6 @@ import { Flexbox, Icon, Tag } from '@lobehub/ui'; import { BrainCircuitIcon } from 'lucide-react'; -import { FC, memo, useCallback, useEffect, useState } from 'react'; +import { type FC, memo, useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { SCROLL_PARENT_ID } from '@/app/[variants]/(main)/memory/features/TimeLineView/useScrollParent'; @@ -13,7 +13,7 @@ import { useUserMemoryStore } from '@/store/userMemory'; import EditableModal from '../features/EditableModal'; import FilterBar from '../features/FilterBar'; import Loading from '../features/Loading'; -import ViewModeSwitcher, { ViewMode } from '../features/ViewModeSwitcher'; +import ViewModeSwitcher, { type ViewMode } from '../features/ViewModeSwitcher'; import List from './features/List'; import PreferenceRightPanel from './features/PreferenceRightPanel'; diff --git a/src/app/[variants]/(main)/page/_layout/Body/AllPagesDrawer/Content.tsx b/src/app/[variants]/(main)/page/_layout/Body/AllPagesDrawer/Content.tsx index 3e555c84c3..ec0386bff8 100644 --- a/src/app/[variants]/(main)/page/_layout/Body/AllPagesDrawer/Content.tsx +++ b/src/app/[variants]/(main)/page/_layout/Body/AllPagesDrawer/Content.tsx @@ -2,12 +2,12 @@ import { Flexbox } from '@lobehub/ui'; import { memo, useCallback, useMemo, useRef } from 'react'; -import { VList, VListHandle } from 'virtua'; +import { VList, type VListHandle } from 'virtua'; import SkeletonList from '@/features/NavPanel/components/SkeletonList'; import PageEmpty from '@/features/PageEmpty'; import { documentSelectors, useFileStore } from '@/store/file'; -import { LobeDocument } from '@/types/document'; +import { type LobeDocument } from '@/types/document'; import Item from '../List/Item'; diff --git a/src/app/[variants]/(main)/page/_layout/Body/List/Item/index.tsx b/src/app/[variants]/(main)/page/_layout/Body/List/Item/index.tsx index 9410b13689..a3d77b30b8 100644 --- a/src/app/[variants]/(main)/page/_layout/Body/List/Item/index.tsx +++ b/src/app/[variants]/(main)/page/_layout/Body/List/Item/index.tsx @@ -1,7 +1,7 @@ import { Avatar, type MenuProps } from '@lobehub/ui'; import { Dropdown } from '@lobehub/ui'; import { FileTextIcon } from 'lucide-react'; -import { CSSProperties, memo, useCallback, useMemo } from 'react'; +import { type CSSProperties, memo, useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import NavItem from '@/features/NavPanel/components/NavItem'; diff --git a/src/app/[variants]/(main)/page/_layout/index.tsx b/src/app/[variants]/(main)/page/_layout/index.tsx index 4017dfe71f..87f9dd9e77 100644 --- a/src/app/[variants]/(main)/page/_layout/index.tsx +++ b/src/app/[variants]/(main)/page/_layout/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import Sidebar from './Sidebar'; diff --git a/src/app/[variants]/(main)/resource/(home)/_layout/Body/LibraryList/List/Item/index.tsx b/src/app/[variants]/(main)/resource/(home)/_layout/Body/LibraryList/List/Item/index.tsx index f44f3c9b96..3efe458e74 100644 --- a/src/app/[variants]/(main)/resource/(home)/_layout/Body/LibraryList/List/Item/index.tsx +++ b/src/app/[variants]/(main)/resource/(home)/_layout/Body/LibraryList/List/Item/index.tsx @@ -2,7 +2,7 @@ import { Icon, type MenuProps } from '@lobehub/ui'; import { Dropdown } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { Loader2Icon } from 'lucide-react'; -import React, { CSSProperties, memo, useCallback, useMemo } from 'react'; +import React, { type CSSProperties, memo, useCallback, useMemo } from 'react'; import { useNavigate } from 'react-router-dom'; import { useResourceManagerStore } from '@/app/[variants]/(main)/resource/features/store'; diff --git a/src/app/[variants]/(main)/resource/(home)/_layout/index.tsx b/src/app/[variants]/(main)/resource/(home)/_layout/index.tsx index 2606af5f99..ded7cdb5d3 100644 --- a/src/app/[variants]/(main)/resource/(home)/_layout/index.tsx +++ b/src/app/[variants]/(main)/resource/(home)/_layout/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import Sidebar from './Sidebar'; diff --git a/src/app/[variants]/(main)/resource/_layout/index.tsx b/src/app/[variants]/(main)/resource/_layout/index.tsx index c1b2e9dafb..fc9dec1bfb 100644 --- a/src/app/[variants]/(main)/resource/_layout/index.tsx +++ b/src/app/[variants]/(main)/resource/_layout/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import RegisterHotkeys from './RegisterHotkeys'; diff --git a/src/app/[variants]/(main)/resource/features/DndContextWrapper.tsx b/src/app/[variants]/(main)/resource/features/DndContextWrapper.tsx index 7ae6e3ce95..aae3006cb8 100644 --- a/src/app/[variants]/(main)/resource/features/DndContextWrapper.tsx +++ b/src/app/[variants]/(main)/resource/features/DndContextWrapper.tsx @@ -5,7 +5,7 @@ import { App } from 'antd'; import { useTheme } from 'antd-style'; import { FileText, FolderIcon } from 'lucide-react'; import { - PropsWithChildren, + type PropsWithChildren, createContext, memo, useContext, diff --git a/src/app/[variants]/(main)/resource/features/FileDetail.tsx b/src/app/[variants]/(main)/resource/features/FileDetail.tsx index 6a3a224769..db238ab177 100644 --- a/src/app/[variants]/(main)/resource/features/FileDetail.tsx +++ b/src/app/[variants]/(main)/resource/features/FileDetail.tsx @@ -8,7 +8,7 @@ import { BoltIcon, DownloadIcon } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; import { downloadFile } from '@/utils/client/downloadFile'; import { formatSize } from '@/utils/format'; diff --git a/src/app/[variants]/(main)/resource/features/modal/FullscreenModal.tsx b/src/app/[variants]/(main)/resource/features/modal/FullscreenModal.tsx index f9147c074f..80e93f13c1 100644 --- a/src/app/[variants]/(main)/resource/features/modal/FullscreenModal.tsx +++ b/src/app/[variants]/(main)/resource/features/modal/FullscreenModal.tsx @@ -3,7 +3,7 @@ import { Modal } from '@lobehub/ui'; import { ConfigProvider } from 'antd'; import { createStyles } from 'antd-style'; -import { ReactNode, useCallback, useState } from 'react'; +import { type ReactNode, useCallback, useState } from 'react'; import { DETAIL_PANEL_WIDTH } from '../FileDetail'; diff --git a/src/app/[variants]/(main)/resource/features/store/action.ts b/src/app/[variants]/(main)/resource/features/store/action.ts index 3110fbe8af..fafe9fc32b 100644 --- a/src/app/[variants]/(main)/resource/features/store/action.ts +++ b/src/app/[variants]/(main)/resource/features/store/action.ts @@ -1,9 +1,9 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ResouceManagerMode } from '@/features/ResourceManager'; -import { FilesTabs } from '@/types/files'; +import { type ResouceManagerMode } from '@/features/ResourceManager'; +import { type FilesTabs } from '@/types/files'; -import { State, ViewMode, initialState } from './initialState'; +import { type State, type ViewMode, initialState } from './initialState'; export interface Action { /** diff --git a/src/app/[variants]/(main)/resource/features/store/initialState.ts b/src/app/[variants]/(main)/resource/features/store/initialState.ts index 69ba0d848d..fce450330c 100644 --- a/src/app/[variants]/(main)/resource/features/store/initialState.ts +++ b/src/app/[variants]/(main)/resource/features/store/initialState.ts @@ -1,4 +1,4 @@ -import { ResouceManagerMode } from '@/features/ResourceManager'; +import { type ResouceManagerMode } from '@/features/ResourceManager'; import { FilesTabs } from '@/types/files'; export type ViewMode = 'list' | 'masonry'; diff --git a/src/app/[variants]/(main)/resource/features/store/selectors.ts b/src/app/[variants]/(main)/resource/features/store/selectors.ts index efe353232b..610e247523 100644 --- a/src/app/[variants]/(main)/resource/features/store/selectors.ts +++ b/src/app/[variants]/(main)/resource/features/store/selectors.ts @@ -1,4 +1,4 @@ -import { State } from './initialState'; +import { type State } from './initialState'; export const selectors = { category: (s: State) => s.category, diff --git a/src/app/[variants]/(main)/resource/library/_layout/index.tsx b/src/app/[variants]/(main)/resource/library/_layout/index.tsx index 9afd323285..e38f3adb21 100644 --- a/src/app/[variants]/(main)/resource/library/_layout/index.tsx +++ b/src/app/[variants]/(main)/resource/library/_layout/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import RegisterHotkeys from '@/app/[variants]/(main)/resource/library/features/RegisterHotkeys'; diff --git a/src/app/[variants]/(main)/resource/library/features/Container.tsx b/src/app/[variants]/(main)/resource/library/features/Container.tsx index c22f65a00d..e1e3766d0d 100644 --- a/src/app/[variants]/(main)/resource/library/features/Container.tsx +++ b/src/app/[variants]/(main)/resource/library/features/Container.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; const Container: FC = ({ children }) => { const theme = useTheme(); diff --git a/src/app/[variants]/(main)/resource/store/action.ts b/src/app/[variants]/(main)/resource/store/action.ts index 55db5bc948..9228535d02 100644 --- a/src/app/[variants]/(main)/resource/store/action.ts +++ b/src/app/[variants]/(main)/resource/store/action.ts @@ -1,8 +1,8 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ResouceManagerMode } from '@/features/ResourceManager'; +import { type ResouceManagerMode } from '@/features/ResourceManager'; -import { State, initialState } from './initialState'; +import { type State, initialState } from './initialState'; export interface Action { /** diff --git a/src/app/[variants]/(main)/resource/store/initialState.ts b/src/app/[variants]/(main)/resource/store/initialState.ts index 0d9642870e..a2498dfdf6 100644 --- a/src/app/[variants]/(main)/resource/store/initialState.ts +++ b/src/app/[variants]/(main)/resource/store/initialState.ts @@ -1,4 +1,4 @@ -import { ResouceManagerMode } from '@/features/ResourceManager'; +import { type ResouceManagerMode } from '@/features/ResourceManager'; export interface State { currentViewItemId?: string; diff --git a/src/app/[variants]/(main)/settings/_layout/Header.tsx b/src/app/[variants]/(main)/settings/_layout/Header.tsx index 9f21bf7db9..5d4134c777 100644 --- a/src/app/[variants]/(main)/settings/_layout/Header.tsx +++ b/src/app/[variants]/(main)/settings/_layout/Header.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import SideBarHeaderLayout from '@/features/NavPanel/SideBarHeaderLayout'; diff --git a/src/app/[variants]/(main)/settings/_layout/index.tsx b/src/app/[variants]/(main)/settings/_layout/index.tsx index 87458dc8ad..559c932029 100644 --- a/src/app/[variants]/(main)/settings/_layout/index.tsx +++ b/src/app/[variants]/(main)/settings/_layout/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import SideBar from '@/app/[variants]/(main)/settings/_layout/SideBar'; diff --git a/src/app/[variants]/(main)/settings/_layout/type.ts b/src/app/[variants]/(main)/settings/_layout/type.ts index 4251fd658a..fcd20e2c37 100644 --- a/src/app/[variants]/(main)/settings/_layout/type.ts +++ b/src/app/[variants]/(main)/settings/_layout/type.ts @@ -1,4 +1,4 @@ -import { ReactNode } from 'react'; +import { type ReactNode } from 'react'; export interface LayoutProps { children?: ReactNode; diff --git a/src/app/[variants]/(main)/settings/about/features/AboutList.tsx b/src/app/[variants]/(main)/settings/about/features/AboutList.tsx index 8e02a3ea3e..6974233271 100644 --- a/src/app/[variants]/(main)/settings/about/features/AboutList.tsx +++ b/src/app/[variants]/(main)/settings/about/features/AboutList.tsx @@ -1,9 +1,9 @@ 'use client'; import { Flexbox, Grid } from '@lobehub/ui'; -import { FC, memo } from 'react'; +import { type FC, memo } from 'react'; -import { ItemCardProps } from './ItemCard'; +import { type ItemCardProps } from './ItemCard'; interface AboutListProps { ItemRender: FC; diff --git a/src/app/[variants]/(main)/settings/about/features/ItemCard.tsx b/src/app/[variants]/(main)/settings/about/features/ItemCard.tsx index 3fbc965def..1219cdffca 100644 --- a/src/app/[variants]/(main)/settings/about/features/ItemCard.tsx +++ b/src/app/[variants]/(main)/settings/about/features/ItemCard.tsx @@ -1,6 +1,6 @@ import { Block, Icon } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { LucideIcon } from 'lucide-react'; +import { type LucideIcon } from 'lucide-react'; import Link from 'next/link'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/settings/about/features/ItemLink.tsx b/src/app/[variants]/(main)/settings/about/features/ItemLink.tsx index 059d487ca0..2591b16cfc 100644 --- a/src/app/[variants]/(main)/settings/about/features/ItemLink.tsx +++ b/src/app/[variants]/(main)/settings/about/features/ItemLink.tsx @@ -1,6 +1,6 @@ import { Flexbox, Icon } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { LucideIcon, SquareArrowOutUpRight } from 'lucide-react'; +import { type LucideIcon, SquareArrowOutUpRight } from 'lucide-react'; import Link from 'next/link'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/settings/agent/features/useSync.ts b/src/app/[variants]/(main)/settings/agent/features/useSync.ts index e10f920cf4..2537379aeb 100644 --- a/src/app/[variants]/(main)/settings/agent/features/useSync.ts +++ b/src/app/[variants]/(main)/settings/agent/features/useSync.ts @@ -1,4 +1,4 @@ -import { FormInstance } from 'antd'; +import { type FormInstance } from 'antd'; import { useLayoutEffect } from 'react'; import { useUserStore } from '@/store/user'; diff --git a/src/app/[variants]/(main)/settings/apikey/Client.tsx b/src/app/[variants]/(main)/settings/apikey/Client.tsx index c325ac1398..fa2c8df011 100644 --- a/src/app/[variants]/(main)/settings/apikey/Client.tsx +++ b/src/app/[variants]/(main)/settings/apikey/Client.tsx @@ -1,16 +1,16 @@ 'use client'; -import { ActionType, ProColumns, ProTable } from '@ant-design/pro-components'; +import { type ActionType, type ProColumns, ProTable } from '@ant-design/pro-components'; import { Button } from '@lobehub/ui'; import { useMutation } from '@tanstack/react-query'; import { Popconfirm, Switch } from 'antd'; import { createStyles } from 'antd-style'; import { Trash } from 'lucide-react'; -import { FC, useRef, useState } from 'react'; +import { type FC, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { lambdaClient } from '@/libs/trpc/client'; -import { ApiKeyItem, CreateApiKeyParams, UpdateApiKeyParams } from '@/types/apiKey'; +import { type ApiKeyItem, type CreateApiKeyParams, type UpdateApiKeyParams } from '@/types/apiKey'; import { ApiKeyDisplay, ApiKeyModal, EditableCell } from './features'; diff --git a/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDatePicker/index.tsx b/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDatePicker/index.tsx index c5125ee360..61d8076e5e 100644 --- a/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDatePicker/index.tsx +++ b/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDatePicker/index.tsx @@ -1,7 +1,7 @@ import { DatePicker } from '@lobehub/ui'; -import { DatePickerProps, Flex } from 'antd'; -import dayjs, { Dayjs } from 'dayjs'; -import { FC } from 'react'; +import { type DatePickerProps, Flex } from 'antd'; +import dayjs, { type Dayjs } from 'dayjs'; +import { type FC } from 'react'; import { useTranslation } from 'react-i18next'; interface ApiKeyDatePickerProps extends Omit { diff --git a/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDisplay/index.tsx b/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDisplay/index.tsx index d1ea916f8e..340e59b646 100644 --- a/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDisplay/index.tsx +++ b/src/app/[variants]/(main)/settings/apikey/features/ApiKeyDisplay/index.tsx @@ -1,7 +1,7 @@ import { CopyOutlined, EyeInvisibleOutlined, EyeOutlined } from '@ant-design/icons'; import { Button } from '@lobehub/ui'; import { App, Flex } from 'antd'; -import { FC, useState } from 'react'; +import { type FC, useState } from 'react'; import { useTranslation } from 'react-i18next'; interface ApiKeyDisplayProps { diff --git a/src/app/[variants]/(main)/settings/apikey/features/ApiKeyModal/index.tsx b/src/app/[variants]/(main)/settings/apikey/features/ApiKeyModal/index.tsx index 2a75fdec88..ace44bd461 100644 --- a/src/app/[variants]/(main)/settings/apikey/features/ApiKeyModal/index.tsx +++ b/src/app/[variants]/(main)/settings/apikey/features/ApiKeyModal/index.tsx @@ -1,9 +1,9 @@ import { FormModal, Input } from '@lobehub/ui'; -import { Dayjs } from 'dayjs'; -import { FC } from 'react'; +import { type Dayjs } from 'dayjs'; +import { type FC } from 'react'; import { useTranslation } from 'react-i18next'; -import { CreateApiKeyParams } from '@/types/apiKey'; +import { type CreateApiKeyParams } from '@/types/apiKey'; import ApiKeyDatePicker from '../ApiKeyDatePicker'; diff --git a/src/app/[variants]/(main)/settings/apikey/features/EditableCell/index.tsx b/src/app/[variants]/(main)/settings/apikey/features/EditableCell/index.tsx index 3172b433fb..b405bf58e5 100644 --- a/src/app/[variants]/(main)/settings/apikey/features/EditableCell/index.tsx +++ b/src/app/[variants]/(main)/settings/apikey/features/EditableCell/index.tsx @@ -1,9 +1,9 @@ 'use client'; import { ActionIcon, Input } from '@lobehub/ui'; -import { App, InputRef } from 'antd'; +import { App, type InputRef } from 'antd'; import { createStyles } from 'antd-style'; -import dayjs, { Dayjs } from 'dayjs'; +import dayjs, { type Dayjs } from 'dayjs'; import { Check, Edit, X } from 'lucide-react'; import React, { memo, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesNeutral.tsx b/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesNeutral.tsx index 4f4938c6e5..3e00dd230c 100644 --- a/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesNeutral.tsx +++ b/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesNeutral.tsx @@ -1,4 +1,4 @@ -import { ColorSwatches, NeutralColors, findCustomThemeName, neutralColors } from '@lobehub/ui'; +import { ColorSwatches, type NeutralColors, findCustomThemeName, neutralColors } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesPrimary.tsx b/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesPrimary.tsx index 4e61173860..19c14320c8 100644 --- a/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesPrimary.tsx +++ b/src/app/[variants]/(main)/settings/common/features/Appearance/ThemeSwatches/ThemeSwatchesPrimary.tsx @@ -1,4 +1,4 @@ -import { ColorSwatches, PrimaryColors, findCustomThemeName, primaryColors } from '@lobehub/ui'; +import { ColorSwatches, type PrimaryColors, findCustomThemeName, primaryColors } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatPreview.tsx b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatPreview.tsx index 1e455fd4fd..e4ce8abca0 100644 --- a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatPreview.tsx +++ b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatPreview.tsx @@ -1,5 +1,5 @@ import { BRANDING_NAME } from '@lobechat/business-const'; -import { Block, MarkdownProps } from '@lobehub/ui'; +import { Block, type MarkdownProps } from '@lobehub/ui'; import { ChatItem } from '@lobehub/ui/chat'; import { useTheme } from 'antd-style'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatTransitionPreview.tsx b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatTransitionPreview.tsx index ee25d480ac..c7871fbcbc 100644 --- a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatTransitionPreview.tsx +++ b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/ChatTransitionPreview.tsx @@ -6,7 +6,7 @@ import { memo, useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { DEFAULT_INBOX_AVATAR } from '@/const/meta'; -import { UserGeneralConfig } from '@/types/user/settings'; +import { type UserGeneralConfig } from '@/types/user/settings'; const data = ` ### Features diff --git a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/HighlighterPreview.tsx b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/HighlighterPreview.tsx index fa3e3aeed7..8ba33d5178 100644 --- a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/HighlighterPreview.tsx +++ b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/HighlighterPreview.tsx @@ -1,4 +1,4 @@ -import { Block, HighlighterProps } from '@lobehub/ui'; +import { Block, type HighlighterProps } from '@lobehub/ui'; import { ChatItem } from '@lobehub/ui/chat'; import { useTheme } from 'antd-style'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/MermaidPreview.tsx b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/MermaidPreview.tsx index b805dceace..8386dcfc16 100644 --- a/src/app/[variants]/(main)/settings/common/features/ChatAppearance/MermaidPreview.tsx +++ b/src/app/[variants]/(main)/settings/common/features/ChatAppearance/MermaidPreview.tsx @@ -1,4 +1,4 @@ -import { Block, MermaidProps } from '@lobehub/ui'; +import { Block, type MermaidProps } from '@lobehub/ui'; import { ChatItem } from '@lobehub/ui/chat'; import { useTheme } from 'antd-style'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/settings/common/features/Common/Common.tsx b/src/app/[variants]/(main)/settings/common/features/Common/Common.tsx index dde1fb7e0e..6100fbe3ef 100644 --- a/src/app/[variants]/(main)/settings/common/features/Common/Common.tsx +++ b/src/app/[variants]/(main)/settings/common/features/Common/Common.tsx @@ -18,7 +18,7 @@ import { useServerConfigStore } from '@/store/serverConfig'; import { serverConfigSelectors } from '@/store/serverConfig/selectors'; import { useUserStore } from '@/store/user'; import { settingsSelectors } from '@/store/user/selectors'; -import { LocaleMode } from '@/types/locale'; +import { type LocaleMode } from '@/types/locale'; const Common = memo(() => { const { t } = useTranslation('setting'); diff --git a/src/app/[variants]/(main)/settings/hooks/useSyncSettings.ts b/src/app/[variants]/(main)/settings/hooks/useSyncSettings.ts index 8dac778ef4..adcd59847a 100644 --- a/src/app/[variants]/(main)/settings/hooks/useSyncSettings.ts +++ b/src/app/[variants]/(main)/settings/hooks/useSyncSettings.ts @@ -1,4 +1,4 @@ -import { FormInstance } from 'antd/es/form/hooks/useForm'; +import { type FormInstance } from 'antd/es/form/hooks/useForm'; import { useLayoutEffect } from 'react'; import { useUserStore } from '@/store/user'; diff --git a/src/app/[variants]/(main)/settings/hotkey/features/Conversation.tsx b/src/app/[variants]/(main)/settings/hotkey/features/Conversation.tsx index 2f9352f58f..cfa09f398c 100644 --- a/src/app/[variants]/(main)/settings/hotkey/features/Conversation.tsx +++ b/src/app/[variants]/(main)/settings/hotkey/features/Conversation.tsx @@ -12,7 +12,7 @@ import { FORM_STYLE } from '@/const/layoutTokens'; import hotkeyMeta from '@/locales/default/hotkey'; import { useUserStore } from '@/store/user'; import { settingsSelectors } from '@/store/user/selectors'; -import { HotkeyGroupEnum, HotkeyItem } from '@/types/hotkey'; +import { HotkeyGroupEnum, type HotkeyItem } from '@/types/hotkey'; const HotkeySetting = memo(() => { const { t } = useTranslation(['setting', 'hotkey']); diff --git a/src/app/[variants]/(main)/settings/hotkey/features/Desktop.tsx b/src/app/[variants]/(main)/settings/hotkey/features/Desktop.tsx index 1015292019..0d32e540c2 100644 --- a/src/app/[variants]/(main)/settings/hotkey/features/Desktop.tsx +++ b/src/app/[variants]/(main)/settings/hotkey/features/Desktop.tsx @@ -13,7 +13,7 @@ import { FORM_STYLE } from '@/const/layoutTokens'; import hotkeyMeta from '@/locales/default/hotkey'; import { useElectronStore } from '@/store/electron'; import { desktopHotkeysSelectors } from '@/store/electron/selectors'; -import { DesktopHotkeyItem } from '@/types/hotkey'; +import { type DesktopHotkeyItem } from '@/types/hotkey'; const HotkeySetting = memo(() => { const { t } = useTranslation(['setting', 'hotkey']); diff --git a/src/app/[variants]/(main)/settings/hotkey/features/Essential.tsx b/src/app/[variants]/(main)/settings/hotkey/features/Essential.tsx index 3ede52789e..a65450f468 100644 --- a/src/app/[variants]/(main)/settings/hotkey/features/Essential.tsx +++ b/src/app/[variants]/(main)/settings/hotkey/features/Essential.tsx @@ -12,7 +12,7 @@ import { FORM_STYLE } from '@/const/layoutTokens'; import hotkeyMeta from '@/locales/default/hotkey'; import { useUserStore } from '@/store/user'; import { settingsSelectors } from '@/store/user/selectors'; -import { HotkeyGroupEnum, HotkeyItem } from '@/types/hotkey'; +import { HotkeyGroupEnum, type HotkeyItem } from '@/types/hotkey'; const HotkeySetting = memo(() => { const { t } = useTranslation(['setting', 'hotkey']); diff --git a/src/app/[variants]/(main)/settings/image/index.tsx b/src/app/[variants]/(main)/settings/image/index.tsx index 3041924bb0..ccb6085dcd 100644 --- a/src/app/[variants]/(main)/settings/image/index.tsx +++ b/src/app/[variants]/(main)/settings/image/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { UserImageConfig } from '@lobechat/types'; +import { type UserImageConfig } from '@lobechat/types'; import { Form, type FormGroupItemType, Icon } from '@lobehub/ui'; import { Skeleton } from '@lobehub/ui'; import { Loader2Icon } from 'lucide-react'; diff --git a/src/app/[variants]/(main)/settings/index.tsx b/src/app/[variants]/(main)/settings/index.tsx index 4f0bae6141..77e07f7901 100644 --- a/src/app/[variants]/(main)/settings/index.tsx +++ b/src/app/[variants]/(main)/settings/index.tsx @@ -5,7 +5,7 @@ import { useParams } from 'react-router-dom'; import { SettingsTabs } from '@/store/global/initialState'; -import { LayoutProps } from './_layout/type'; +import { type LayoutProps } from './_layout/type'; import SettingsContent from './features/SettingsContent'; const Layout = memo(() => { diff --git a/src/app/[variants]/(main)/settings/profile/Client.tsx b/src/app/[variants]/(main)/settings/profile/Client.tsx index 1fb2a286b2..769e1f659c 100644 --- a/src/app/[variants]/(main)/settings/profile/Client.tsx +++ b/src/app/[variants]/(main)/settings/profile/Client.tsx @@ -8,9 +8,9 @@ import { useTheme } from 'antd-style'; import { BriefcaseIcon } from 'lucide-react'; import { AnimatePresence, m as motion } from 'motion/react'; import { - CSSProperties, - ChangeEvent, - ReactNode, + type CSSProperties, + type ChangeEvent, + type ReactNode, memo, useCallback, useEffect, diff --git a/src/app/[variants]/(main)/settings/profile/features/KlavisAuthorizationList/index.tsx b/src/app/[variants]/(main)/settings/profile/features/KlavisAuthorizationList/index.tsx index b004a2fc47..2ecfd01b5e 100644 --- a/src/app/[variants]/(main)/settings/profile/features/KlavisAuthorizationList/index.tsx +++ b/src/app/[variants]/(main)/settings/profile/features/KlavisAuthorizationList/index.tsx @@ -7,8 +7,8 @@ import { modal } from '@/components/AntdStaticMethods'; import { useServerConfigStore } from '@/store/serverConfig'; import { serverConfigSelectors } from '@/store/serverConfig/selectors'; import { useToolStore } from '@/store/tool'; -import { KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; -import { ToolStore } from '@/store/tool/store'; +import { type KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; +import { type ToolStore } from '@/store/tool/store'; interface KlavisAuthItemProps { server: KlavisServer; diff --git a/src/app/[variants]/(main)/settings/profile/features/SSOProvidersList/index.tsx b/src/app/[variants]/(main)/settings/profile/features/SSOProvidersList/index.tsx index 0363282a9b..b70db2e2c9 100644 --- a/src/app/[variants]/(main)/settings/profile/features/SSOProvidersList/index.tsx +++ b/src/app/[variants]/(main)/settings/profile/features/SSOProvidersList/index.tsx @@ -1,7 +1,7 @@ import { isDesktop } from '@lobechat/const'; import { ActionIcon, Dropdown, Flexbox, type MenuProps, Text } from '@lobehub/ui'; import { ArrowRight, Plus, Unlink } from 'lucide-react'; -import { CSSProperties, memo, useMemo } from 'react'; +import { type CSSProperties, memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { modal, notification } from '@/components/AntdStaticMethods'; diff --git a/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/Card.tsx b/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/Card.tsx index 7a58cc1e76..09d1ea861b 100644 --- a/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/Card.tsx +++ b/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/Card.tsx @@ -4,7 +4,7 @@ import { Divider } from 'antd'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { AiProviderListItem } from '@/types/aiProvider'; +import { type AiProviderListItem } from '@/types/aiProvider'; import EnableSwitch from './EnableSwitch'; import { useStyles } from './style'; diff --git a/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/EnableSwitch.tsx b/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/EnableSwitch.tsx index ddf14aae81..524fafb2e6 100644 --- a/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/EnableSwitch.tsx +++ b/src/app/[variants]/(main)/settings/provider/(list)/ProviderGrid/EnableSwitch.tsx @@ -1,4 +1,4 @@ -import { FC } from 'react'; +import { type FC } from 'react'; import InstantSwitch from '@/components/InstantSwitch'; import { useAiInfraStore } from '@/store/aiInfra'; diff --git a/src/app/[variants]/(main)/settings/provider/ProviderMenu/Item.tsx b/src/app/[variants]/(main)/settings/provider/ProviderMenu/Item.tsx index d767d4421c..a00fdeb912 100644 --- a/src/app/[variants]/(main)/settings/provider/ProviderMenu/Item.tsx +++ b/src/app/[variants]/(main)/settings/provider/ProviderMenu/Item.tsx @@ -5,7 +5,7 @@ import { memo, useMemo } from 'react'; import { useLocation } from 'react-router-dom'; import NavItem from '@/features/NavPanel/components/NavItem'; -import { AiProviderListItem, AiProviderSourceEnum } from '@/types/aiProvider'; +import { type AiProviderListItem, AiProviderSourceEnum } from '@/types/aiProvider'; interface ProviderItemProps extends AiProviderListItem { onClick: (id: string) => void; diff --git a/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/GroupItem.tsx b/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/GroupItem.tsx index 70dcd1a5fd..1058986243 100644 --- a/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/GroupItem.tsx +++ b/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/GroupItem.tsx @@ -2,7 +2,7 @@ import { ProviderIcon } from '@lobehub/icons'; import { Avatar, Flexbox, SortableList } from '@lobehub/ui'; import { memo } from 'react'; -import { AiProviderListItem } from '@/types/aiProvider'; +import { type AiProviderListItem } from '@/types/aiProvider'; const GroupItem = memo(({ id, name, source, logo }) => { return ( diff --git a/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/index.tsx b/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/index.tsx index db53584c94..64d329df03 100644 --- a/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/ProviderMenu/SortProviderModal/index.tsx @@ -5,7 +5,7 @@ import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useAiInfraStore } from '@/store/aiInfra'; -import { AiProviderListItem } from '@/types/aiProvider'; +import { type AiProviderListItem } from '@/types/aiProvider'; import GroupItem from './GroupItem'; diff --git a/src/app/[variants]/(main)/settings/provider/ProviderMenu/index.tsx b/src/app/[variants]/(main)/settings/provider/ProviderMenu/index.tsx index 43720f753c..7a3ca0b814 100644 --- a/src/app/[variants]/(main)/settings/provider/ProviderMenu/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/ProviderMenu/index.tsx @@ -3,7 +3,7 @@ import { Flexbox, Icon, SearchBar } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { SearchIcon } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useTranslation } from 'react-i18next'; import SkeletonList from '@/features/NavPanel/components/SkeletonList'; diff --git a/src/app/[variants]/(main)/settings/provider/_layout/Desktop/Container.tsx b/src/app/[variants]/(main)/settings/provider/_layout/Desktop/Container.tsx index 52c33cde62..fe3756bb8c 100644 --- a/src/app/[variants]/(main)/settings/provider/_layout/Desktop/Container.tsx +++ b/src/app/[variants]/(main)/settings/provider/_layout/Desktop/Container.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox } from '@lobehub/ui'; -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; import NavHeader from '@/features/NavHeader'; import SettingContainer from '@/features/Setting/SettingContainer'; diff --git a/src/app/[variants]/(main)/settings/provider/_layout/Desktop/index.tsx b/src/app/[variants]/(main)/settings/provider/_layout/Desktop/index.tsx index 33902e1d32..b3d767eb32 100644 --- a/src/app/[variants]/(main)/settings/provider/_layout/Desktop/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/_layout/Desktop/index.tsx @@ -1,5 +1,5 @@ import { Flexbox } from '@lobehub/ui'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import ProviderMenu from '../../ProviderMenu'; import Container from './Container'; diff --git a/src/app/[variants]/(main)/settings/provider/_layout/Mobile.tsx b/src/app/[variants]/(main)/settings/provider/_layout/Mobile.tsx index 79f7532478..1788ad4066 100644 --- a/src/app/[variants]/(main)/settings/provider/_layout/Mobile.tsx +++ b/src/app/[variants]/(main)/settings/provider/_layout/Mobile.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { useSearchParams } from 'react-router-dom'; import ProviderMenu from '../ProviderMenu'; diff --git a/src/app/[variants]/(main)/settings/provider/detail/azure/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/azure/index.tsx index 9fe4ae3c84..5f0c585789 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/azure/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/azure/index.tsx @@ -11,7 +11,7 @@ import { SkeletonInput } from '@/components/Skeleton'; import { aiModelSelectors, aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; import { KeyVaultsConfigKey, LLMProviderApiTokenKey, LLMProviderBaseUrlKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const useStyles = createStyles(({ css, token }) => ({ diff --git a/src/app/[variants]/(main)/settings/provider/detail/azureai/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/azureai/index.tsx index 2e4d3aa14b..c28fd332da 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/azureai/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/azureai/index.tsx @@ -9,7 +9,7 @@ import { SkeletonInput } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; import { KeyVaultsConfigKey, LLMProviderApiTokenKey, LLMProviderBaseUrlKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const providerKey = ModelProvider.AzureAI; diff --git a/src/app/[variants]/(main)/settings/provider/detail/bedrock/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/bedrock/index.tsx index 3dcfe095e9..6ddfab26e0 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/bedrock/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/bedrock/index.tsx @@ -7,10 +7,10 @@ import { useTranslation } from 'react-i18next'; import { FormPassword } from '@/components/FormInput'; import { SkeletonInput } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import { KeyVaultsConfigKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const providerKey: GlobalLLMProviderKey = 'bedrock'; diff --git a/src/app/[variants]/(main)/settings/provider/detail/cloudflare/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/cloudflare/index.tsx index 948ea53312..314b6b3f47 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/cloudflare/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/cloudflare/index.tsx @@ -6,10 +6,10 @@ import { useTranslation } from 'react-i18next'; import { FormInput, FormPassword } from '@/components/FormInput'; import { SkeletonInput } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import { KeyVaultsConfigKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const providerKey: GlobalLLMProviderKey = 'cloudflare'; diff --git a/src/app/[variants]/(main)/settings/provider/detail/comfyui/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/comfyui/index.tsx index 55ba0021b4..2f9666a263 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/comfyui/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/comfyui/index.tsx @@ -8,10 +8,10 @@ import { FormInput, FormPassword } from '@/components/FormInput'; import KeyValueEditor from '@/components/KeyValueEditor'; import { SkeletonInput } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import { KeyVaultsConfigKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const providerKey: GlobalLLMProviderKey = 'comfyui'; diff --git a/src/app/[variants]/(main)/settings/provider/detail/default/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/default/index.tsx index 5a053bdce3..fa9fd959de 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/default/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/default/index.tsx @@ -7,7 +7,7 @@ import { useAiInfraStore } from '@/store/aiInfra'; import { useServerConfigStore } from '@/store/serverConfig'; import ModelList from '../../features/ModelList'; -import ProviderConfig, { ProviderConfigProps } from '../../features/ProviderConfig'; +import ProviderConfig, { type ProviderConfigProps } from '../../features/ProviderConfig'; interface ProviderDetailProps extends ProviderConfigProps { showConfig?: boolean; diff --git a/src/app/[variants]/(main)/settings/provider/detail/github/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/github/index.tsx index fbc59a9e77..de382e8f9d 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/github/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/github/index.tsx @@ -8,10 +8,10 @@ import { useTranslation } from 'react-i18next'; import { FormPassword } from '@/components/FormInput'; import { SkeletonInput } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import { KeyVaultsConfigKey, LLMProviderApiTokenKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const useStyles = createStyles(({ css, token }) => ({ diff --git a/src/app/[variants]/(main)/settings/provider/detail/ollama/CheckError.tsx b/src/app/[variants]/(main)/settings/provider/detail/ollama/CheckError.tsx index de4ee478be..7a4f02b8a6 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/ollama/CheckError.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/ollama/CheckError.tsx @@ -1,7 +1,7 @@ -import { ChatMessageError } from '@lobechat/types'; +import { type ChatMessageError } from '@lobechat/types'; import { Skeleton } from '@lobehub/ui'; import dynamic from 'next/dynamic'; -import { ReactNode } from 'react'; +import { type ReactNode } from 'react'; import Container from './Container'; diff --git a/src/app/[variants]/(main)/settings/provider/detail/ollama/Container.tsx b/src/app/[variants]/(main)/settings/provider/detail/ollama/Container.tsx index aea5fef7b0..cc4e638a6c 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/ollama/Container.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/ollama/Container.tsx @@ -1,7 +1,7 @@ import { ActionIcon, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { XIcon } from 'lucide-react'; -import { ReactNode, useState } from 'react'; +import { type ReactNode, useState } from 'react'; const useStyles = createStyles(({ css, token, responsive }) => ({ close: css` diff --git a/src/app/[variants]/(main)/settings/provider/detail/vertexai/index.tsx b/src/app/[variants]/(main)/settings/provider/detail/vertexai/index.tsx index b509d255c5..ed5258b9de 100644 --- a/src/app/[variants]/(main)/settings/provider/detail/vertexai/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/detail/vertexai/index.tsx @@ -8,10 +8,10 @@ import { useTranslation } from 'react-i18next'; import { FormPassword } from '@/components/FormInput'; import { SkeletonInput } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import { KeyVaultsConfigKey, LLMProviderApiTokenKey } from '../../const'; -import { ProviderItem } from '../../type'; +import { type ProviderItem } from '../../type'; import ProviderDetail from '../default'; const useStyles = createStyles(({ css, token }) => ({ diff --git a/src/app/[variants]/(main)/settings/provider/features/CreateNewProvider/index.tsx b/src/app/[variants]/(main)/settings/provider/features/CreateNewProvider/index.tsx index 5389ab8acb..26514ddf7e 100644 --- a/src/app/[variants]/(main)/settings/provider/features/CreateNewProvider/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/CreateNewProvider/index.tsx @@ -16,7 +16,7 @@ import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; import { useAiInfraStore } from '@/store/aiInfra/store'; -import { CreateAiProviderParams } from '@/types/aiProvider'; +import { type CreateAiProviderParams } from '@/types/aiProvider'; import { KeyVaultsConfigKey, LLMProviderApiTokenKey, LLMProviderBaseUrlKey } from '../../const'; import { CUSTOM_PROVIDER_SDK_OPTIONS } from '../customProviderSdkOptions'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/Form.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/Form.tsx index 6dfebd9c08..2f2380376f 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/Form.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/Form.tsx @@ -1,12 +1,12 @@ import { Input } from '@lobehub/ui'; -import { Checkbox, Form, FormInstance, Select } from 'antd'; -import { AiModelType } from 'model-bank'; +import { Checkbox, Form, type FormInstance, Select } from 'antd'; +import { type AiModelType } from 'model-bank'; import { memo, useEffect, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import MaxTokenSlider from '@/components/MaxTokenSlider'; import { useIsMobile } from '@/hooks/useIsMobile'; -import { ChatModelCard } from '@/types/llm'; +import { type ChatModelCard } from '@/types/llm'; interface ModelConfigFormProps { idEditable?: boolean; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/index.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/index.tsx index 05feb8b72a..6cbaaf504b 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/CreateNewModelModal/index.tsx @@ -1,5 +1,5 @@ import { Button, Modal } from '@lobehub/ui'; -import { FormInstance } from 'antd'; +import { type FormInstance } from 'antd'; import { memo, use, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelConfigModal/index.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelConfigModal/index.tsx index 2aa1702d51..c3c89f6abf 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelConfigModal/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelConfigModal/index.tsx @@ -1,5 +1,5 @@ import { Button, Modal } from '@lobehub/ui'; -import { FormInstance } from 'antd'; +import { type FormInstance } from 'antd'; import isEqual from 'fast-deep-equal'; import { memo, use, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelItem.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelItem.tsx index 14fd693894..5b53127599 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelItem.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelItem.tsx @@ -3,7 +3,7 @@ import { ActionIcon, Flexbox, Tag, Text, copyToClipboard } from '@lobehub/ui'; import { App, Switch } from 'antd'; import { createStyles, useTheme } from 'antd-style'; import { LucidePencil, TrashIcon } from 'lucide-react'; -import { AiModelSourceEnum, AiProviderModelListItem } from 'model-bank'; +import { AiModelSourceEnum, type AiProviderModelListItem } from 'model-bank'; import React, { memo, use, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelTitle/Search.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelTitle/Search.tsx index af35ea874d..897ed3bc79 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelTitle/Search.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/ModelTitle/Search.tsx @@ -1,4 +1,4 @@ -import { InputProps, SearchBar } from '@lobehub/ui'; +import { type InputProps, SearchBar } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/ListItem.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/ListItem.tsx index d697b56859..bd9e9de486 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/ListItem.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/ListItem.tsx @@ -1,6 +1,6 @@ import { ModelIcon } from '@lobehub/icons'; import { Flexbox, SortableList } from '@lobehub/ui'; -import { AiProviderModelListItem } from 'model-bank'; +import { type AiProviderModelListItem } from 'model-bank'; import { memo } from 'react'; const ListItem = memo(({ id, displayName }) => { diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/index.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/index.tsx index 7b6faba520..d9179552e4 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/SortModelModal/index.tsx @@ -1,7 +1,7 @@ import { Button, Flexbox, Modal, SortableList } from '@lobehub/ui'; import { App } from 'antd'; import { createStyles } from 'antd-style'; -import { AiProviderModelListItem } from 'model-bank'; +import { type AiProviderModelListItem } from 'model-bank'; import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ModelList/index.tsx b/src/app/[variants]/(main)/settings/provider/features/ModelList/index.tsx index 848af0e7d9..cb3103d57e 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ModelList/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ModelList/index.tsx @@ -21,7 +21,7 @@ import DisabledModels from './DisabledModels'; import EmptyModels from './EmptyModels'; import EnabledModelList from './EnabledModelList'; import ModelTitle from './ModelTitle'; -import { ProviderSettingsContext, ProviderSettingsContextValue } from './ProviderSettingsContext'; +import { ProviderSettingsContext, type ProviderSettingsContextValue } from './ProviderSettingsContext'; import SearchResult from './SearchResult'; import SkeletonList from './SkeletonList'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/Checker.tsx b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/Checker.tsx index 7351becf7e..c8a4c88241 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/Checker.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/Checker.tsx @@ -1,12 +1,12 @@ 'use client'; import { CheckCircleFilled } from '@ant-design/icons'; -import { ChatMessageError, TraceNameMap } from '@lobechat/types'; +import { type ChatMessageError, TraceNameMap } from '@lobechat/types'; import { ModelIcon } from '@lobehub/icons'; import { Alert, Button, Flexbox, Highlighter, Icon, Select } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { Loader2Icon } from 'lucide-react'; -import { ReactNode, memo, useState } from 'react'; +import { type ReactNode, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useProviderName } from '@/hooks/useProviderName'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/EnableSwitch.tsx b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/EnableSwitch.tsx index 9e32c9344b..a48000a16c 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/EnableSwitch.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/EnableSwitch.tsx @@ -1,6 +1,6 @@ import { Skeleton } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { FC } from 'react'; +import { type FC } from 'react'; import InstantSwitch from '@/components/InstantSwitch'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/UpdateProviderInfo/SettingModal.tsx b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/UpdateProviderInfo/SettingModal.tsx index ae5207636a..5572031c39 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/UpdateProviderInfo/SettingModal.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/UpdateProviderInfo/SettingModal.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; import { useAiInfraStore } from '@/store/aiInfra/store'; -import { AiProviderDetailItem, UpdateAiProviderParams } from '@/types/aiProvider'; +import { type AiProviderDetailItem, type UpdateAiProviderParams } from '@/types/aiProvider'; import { CUSTOM_PROVIDER_SDK_OPTIONS } from '../../customProviderSdkOptions'; diff --git a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/index.tsx b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/index.tsx index 647e68b71e..9ba331dbc0 100644 --- a/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/index.tsx +++ b/src/app/[variants]/(main)/settings/provider/features/ProviderConfig/index.tsx @@ -16,7 +16,7 @@ import { Switch } from 'antd'; import { createStyles } from 'antd-style'; import { Loader2Icon, LockIcon } from 'lucide-react'; import Link from 'next/link'; -import { ReactNode, memo, useCallback, useLayoutEffect, useRef } from 'react'; +import { type ReactNode, memo, useCallback, useLayoutEffect, useRef } from 'react'; import { Trans, useTranslation } from 'react-i18next'; import urlJoin from 'url-join'; import { z } from 'zod'; @@ -25,13 +25,13 @@ import { FormInput, FormPassword } from '@/components/FormInput'; import { SkeletonInput, SkeletonSwitch } from '@/components/Skeleton'; import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; import { - AiProviderDetailItem, + type AiProviderDetailItem, AiProviderSourceEnum, - AiProviderSourceType, + type AiProviderSourceType, } from '@/types/aiProvider'; import { KeyVaultsConfigKey, LLMProviderApiTokenKey, LLMProviderBaseUrlKey } from '../../const'; -import Checker, { CheckErrorRender } from './Checker'; +import Checker, { type CheckErrorRender } from './Checker'; import EnableSwitch from './EnableSwitch'; import UpdateProviderInfo from './UpdateProviderInfo'; diff --git a/src/app/[variants]/(main)/settings/provider/type.ts b/src/app/[variants]/(main)/settings/provider/type.ts index abefe47729..209cb4e107 100644 --- a/src/app/[variants]/(main)/settings/provider/type.ts +++ b/src/app/[variants]/(main)/settings/provider/type.ts @@ -1,4 +1,4 @@ -import { ProviderConfigProps } from './features/ProviderConfig'; +import { type ProviderConfigProps } from './features/ProviderConfig'; export interface ProviderItem extends Omit { id: string; diff --git a/src/app/[variants]/(main)/settings/proxy/features/ProxyForm.tsx b/src/app/[variants]/(main)/settings/proxy/features/ProxyForm.tsx index 1fe2b3e448..97e0a4bb23 100644 --- a/src/app/[variants]/(main)/settings/proxy/features/ProxyForm.tsx +++ b/src/app/[variants]/(main)/settings/proxy/features/ProxyForm.tsx @@ -1,6 +1,6 @@ 'use client'; -import { NetworkProxySettings } from '@lobechat/electron-client-ipc'; +import { type NetworkProxySettings } from '@lobechat/electron-client-ipc'; import { Alert, Block, Flexbox, Skeleton, Text , Button } from '@lobehub/ui'; import { App, Divider, Form, Input, Radio, Space, Switch } from 'antd'; import isEqual from 'fast-deep-equal'; diff --git a/src/app/[variants]/(main)/settings/security/features/ClerkProfile.tsx b/src/app/[variants]/(main)/settings/security/features/ClerkProfile.tsx index 89d696e5f1..8c4ab8c26f 100644 --- a/src/app/[variants]/(main)/settings/security/features/ClerkProfile.tsx +++ b/src/app/[variants]/(main)/settings/security/features/ClerkProfile.tsx @@ -1,7 +1,7 @@ 'use client'; import { UserProfile } from '@clerk/nextjs'; -import { ElementsConfig } from '@clerk/types'; +import { type ElementsConfig } from '@clerk/types'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/app/[variants]/(main)/settings/stats/features/AiHeatmaps.tsx b/src/app/[variants]/(main)/settings/stats/features/AiHeatmaps.tsx index cb1aa7a620..1ff114b806 100644 --- a/src/app/[variants]/(main)/settings/stats/features/AiHeatmaps.tsx +++ b/src/app/[variants]/(main)/settings/stats/features/AiHeatmaps.tsx @@ -1,4 +1,4 @@ -import { Heatmaps, HeatmapsProps } from '@lobehub/charts'; +import { Heatmaps, type HeatmapsProps } from '@lobehub/charts'; import { Flexbox, FormGroup, Icon, Tag } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { FlameIcon } from 'lucide-react'; diff --git a/src/app/[variants]/(main)/settings/stats/features/AssistantsRank.tsx b/src/app/[variants]/(main)/settings/stats/features/AssistantsRank.tsx index 360c3f8708..0e0ace06ff 100644 --- a/src/app/[variants]/(main)/settings/stats/features/AssistantsRank.tsx +++ b/src/app/[variants]/(main)/settings/stats/features/AssistantsRank.tsx @@ -12,7 +12,7 @@ import { DEFAULT_AVATAR } from '@/const/meta'; import { INBOX_SESSION_ID } from '@/const/session'; import { useClientDataSWR } from '@/libs/swr'; import { sessionService } from '@/services/session'; -import { SessionRankItem } from '@/types/session'; +import { type SessionRankItem } from '@/types/session'; export const AssistantsRank = memo<{ mobile?: boolean }>(({ mobile }) => { const [open, setOpen] = useState(false); diff --git a/src/app/[variants]/(main)/settings/stats/features/ModelsRank.tsx b/src/app/[variants]/(main)/settings/stats/features/ModelsRank.tsx index 999bf8bd91..983d75cf0e 100644 --- a/src/app/[variants]/(main)/settings/stats/features/ModelsRank.tsx +++ b/src/app/[variants]/(main)/settings/stats/features/ModelsRank.tsx @@ -1,4 +1,4 @@ -import { ModelRankItem } from '@lobechat/types'; +import { type ModelRankItem } from '@lobechat/types'; import { BarList } from '@lobehub/charts'; import { ModelIcon } from '@lobehub/icons'; import { ActionIcon, Flexbox, FormGroup, Modal } from '@lobehub/ui'; diff --git a/src/app/[variants]/(main)/settings/stats/features/ShareButton/ShareModal.tsx b/src/app/[variants]/(main)/settings/stats/features/ShareButton/ShareModal.tsx index 2bf9bc8fe0..92cc358d8b 100644 --- a/src/app/[variants]/(main)/settings/stats/features/ShareButton/ShareModal.tsx +++ b/src/app/[variants]/(main)/settings/stats/features/ShareButton/ShareModal.tsx @@ -1,6 +1,6 @@ 'use client'; -import { type FormItemProps, FormModal, FormModalProps, Segmented } from '@lobehub/ui'; +import { type FormItemProps, FormModal, type FormModalProps, Segmented } from '@lobehub/ui'; import { Skeleton } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import dynamic from 'next/dynamic'; diff --git a/src/app/[variants]/(main)/settings/stats/features/TimeLabel.tsx b/src/app/[variants]/(main)/settings/stats/features/TimeLabel.tsx index c6206aea41..e9ce7eebee 100644 --- a/src/app/[variants]/(main)/settings/stats/features/TimeLabel.tsx +++ b/src/app/[variants]/(main)/settings/stats/features/TimeLabel.tsx @@ -1,6 +1,6 @@ import { Flexbox, Icon } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { Loader2, LucideIcon } from 'lucide-react'; +import { Loader2, type LucideIcon } from 'lucide-react'; import { memo } from 'react'; const TimeLabel = memo<{ diff --git a/src/app/[variants]/(main)/settings/stats/features/TopicsRank.tsx b/src/app/[variants]/(main)/settings/stats/features/TopicsRank.tsx index 630a19f9b2..c734442c67 100644 --- a/src/app/[variants]/(main)/settings/stats/features/TopicsRank.tsx +++ b/src/app/[variants]/(main)/settings/stats/features/TopicsRank.tsx @@ -12,7 +12,7 @@ import { FORM_STYLE } from '@/const/layoutTokens'; import { INBOX_SESSION_ID } from '@/const/session'; import { useClientDataSWR } from '@/libs/swr'; import { topicService } from '@/services/topic'; -import { TopicRankItem } from '@/types/topic'; +import { type TopicRankItem } from '@/types/topic'; export const TopicsRank = memo<{ mobile?: boolean }>(({ mobile }) => { const [open, setOpen] = useState(false); diff --git a/src/app/[variants]/(main)/settings/usage/Client.tsx b/src/app/[variants]/(main)/settings/usage/Client.tsx index 1132ba7c86..cd4791149e 100644 --- a/src/app/[variants]/(main)/settings/usage/Client.tsx +++ b/src/app/[variants]/(main)/settings/usage/Client.tsx @@ -1,7 +1,7 @@ 'use client'; import { Flexbox, Icon, Segmented } from '@lobehub/ui'; -import { Col, DatePicker, DatePickerProps, Row } from 'antd'; +import { Col, DatePicker, type DatePickerProps, Row } from 'antd'; import dayjs from 'dayjs'; import { Brain, Codesandbox } from 'lucide-react'; import { memo, useEffect, useState } from 'react'; @@ -9,7 +9,7 @@ import { useTranslation } from 'react-i18next'; import { useClientDataSWR } from '@/libs/swr'; import { usageService } from '@/services/usage'; -import { UsageLog } from '@/types/usage/usageRecord'; +import { type UsageLog } from '@/types/usage/usageRecord'; import Welcome from '../stats/features/Welcome'; import UsageCards from './features/UsageCards'; diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/ModelTable.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/ModelTable.tsx index 13d174d5e3..a4a0a375f6 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/ModelTable.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/ModelTable.tsx @@ -6,10 +6,10 @@ import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import InlineTable from '@/components/InlineTable'; -import { UsageLog } from '@/types/usage/usageRecord'; +import { type UsageLog } from '@/types/usage/usageRecord'; import { formatPrice } from '@/utils/format'; -import { GroupBy, UsageChartProps } from '../../../Client'; +import { GroupBy, type UsageChartProps } from '../../../Client'; interface WeightGroup { id: string; diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/index.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/index.tsx index 0c39119dd2..6c2dcf9c73 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/index.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageCards/ActiveModels/index.tsx @@ -7,10 +7,10 @@ import { useTranslation } from 'react-i18next'; import StatisticCard from '@/components/StatisticCard'; import TitleWithPercentage from '@/components/StatisticCard/TitleWithPercentage'; -import { UsageLog } from '@/types/usage/usageRecord'; +import { type UsageLog } from '@/types/usage/usageRecord'; import { formatNumber } from '@/utils/format'; -import { GroupBy, UsageChartProps } from '../../../Client'; +import { GroupBy, type UsageChartProps } from '../../../Client'; import ModelTable from './ModelTable'; const computeList = (data: UsageLog[], groupBy: GroupBy): string[] => { diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageCards/MonthSpend.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageCards/MonthSpend.tsx index 9c0f1cefdd..b578f4888f 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageCards/MonthSpend.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageCards/MonthSpend.tsx @@ -7,10 +7,10 @@ import { useTranslation } from 'react-i18next'; import Statistic from '@/components/Statistic'; import StatisticCard from '@/components/StatisticCard'; import TitleWithPercentage from '@/components/StatisticCard/TitleWithPercentage'; -import { UsageLog } from '@/types/usage/usageRecord'; +import { type UsageLog } from '@/types/usage/usageRecord'; import { formatNumber } from '@/utils/format'; -import { UsageChartProps } from '../../Client'; +import { type UsageChartProps } from '../../Client'; const computeMonth = ( data: UsageLog[], diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageCards/TodaySpend.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageCards/TodaySpend.tsx index e5f8c87e21..d9766e0778 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageCards/TodaySpend.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageCards/TodaySpend.tsx @@ -11,10 +11,10 @@ import { useTranslation } from 'react-i18next'; import Statistic from '@/components/Statistic'; import StatisticCard from '@/components/StatisticCard'; import TitleWithPercentage from '@/components/StatisticCard/TitleWithPercentage'; -import { UsageLog } from '@/types/usage/usageRecord'; +import { type UsageLog } from '@/types/usage/usageRecord'; import { formatNumber } from '@/utils/format'; -import { UsageChartProps } from '../../Client'; +import { type UsageChartProps } from '../../Client'; dayjs.extend(utc); dayjs.extend(isToday); diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageCards/index.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageCards/index.tsx index bb7657a4d6..51ac19b358 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageCards/index.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageCards/index.tsx @@ -1,7 +1,7 @@ import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; -import { UsageChartProps } from '../../Client'; +import { type UsageChartProps } from '../../Client'; import ActiveModels from './ActiveModels'; import MonthSpend from './MonthSpend'; import TodaySpend from './TodaySpend'; diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageTable.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageTable.tsx index 802c25919c..d3ab766d5d 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageTable.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageTable.tsx @@ -1,6 +1,6 @@ import { ProviderIcon } from '@lobehub/icons'; import { Flexbox, Tag, Text } from '@lobehub/ui'; -import { Table, TableColumnType } from 'antd'; +import { Table, type TableColumnType } from 'antd'; import { useTheme } from 'antd-style'; import { memo, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; @@ -10,7 +10,7 @@ import { useClientDataSWR } from '@/libs/swr'; import { usageService } from '@/services/usage'; import { formatDate, formatNumber } from '@/utils/format'; -import { UsageChartProps } from '../Client'; +import { type UsageChartProps } from '../Client'; const UsageTable = memo(({ dateStrings }) => { const theme = useTheme(); diff --git a/src/app/[variants]/(main)/settings/usage/features/UsageTrends.tsx b/src/app/[variants]/(main)/settings/usage/features/UsageTrends.tsx index 9fb62fd587..dcfca8dd8f 100644 --- a/src/app/[variants]/(main)/settings/usage/features/UsageTrends.tsx +++ b/src/app/[variants]/(main)/settings/usage/features/UsageTrends.tsx @@ -4,10 +4,10 @@ import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import StatisticCard from '@/components/StatisticCard'; -import { UsageLog } from '@/types/usage/usageRecord'; +import { type UsageLog } from '@/types/usage/usageRecord'; import { formatNumber } from '@/utils/format'; -import { GroupBy, UsageChartProps } from '../Client'; +import { GroupBy, type UsageChartProps } from '../Client'; import { UsageBarChart } from './components/UsageBarChart'; const groupByType = ( diff --git a/src/app/[variants]/(mobile)/(home)/_layout/MobileLayout.tsx b/src/app/[variants]/(mobile)/(home)/_layout/MobileLayout.tsx index d7c487718b..349cbf0e45 100644 --- a/src/app/[variants]/(mobile)/(home)/_layout/MobileLayout.tsx +++ b/src/app/[variants]/(mobile)/(home)/_layout/MobileLayout.tsx @@ -1,4 +1,4 @@ -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import MobileContentLayout from '@/components/server/MobileNavLayout'; diff --git a/src/app/[variants]/(mobile)/(home)/_layout/index.tsx b/src/app/[variants]/(mobile)/(home)/_layout/index.tsx index c61914ddfa..6c13ed6031 100644 --- a/src/app/[variants]/(mobile)/(home)/_layout/index.tsx +++ b/src/app/[variants]/(mobile)/(home)/_layout/index.tsx @@ -1,4 +1,4 @@ -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import MobileLayout from '@/app/[variants]/(mobile)/(home)/_layout/MobileLayout'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/CollapseGroup/index.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/CollapseGroup/index.tsx index 73a7557983..ade7660651 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/CollapseGroup/index.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/CollapseGroup/index.tsx @@ -1,5 +1,5 @@ import { Icon } from '@lobehub/ui'; -import { Collapse, CollapseProps } from 'antd'; +import { Collapse, type CollapseProps } from 'antd'; import { createStyles } from 'antd-style'; import { ChevronDown } from 'lucide-react'; import { memo } from 'react'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/DefaultMode.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/DefaultMode.tsx index 969df655a5..4bf740765e 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/DefaultMode.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/DefaultMode.tsx @@ -1,4 +1,4 @@ -import { CollapseProps } from 'antd'; +import { type CollapseProps } from 'antd'; import isEqual from 'fast-deep-equal'; import { memo, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; @@ -11,9 +11,9 @@ import { serverConfigSelectors } from '@/store/serverConfig/selectors'; import { useSessionStore } from '@/store/session'; import { sessionSelectors } from '@/store/session/selectors'; import { - LobeAgentSession, + type LobeAgentSession, LobeSessionType, - LobeSessions, + type LobeSessions, SessionDefaultGroup, } from '@/types/session'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/Actions.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/Actions.tsx index d485651865..c355b63c47 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/Actions.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/Actions.tsx @@ -1,7 +1,7 @@ import { ActionIcon, Dropdown, Icon } from '@lobehub/ui'; import { App } from 'antd'; import { createStyles } from 'antd-style'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import isEqual from 'fast-deep-equal'; import { Check, diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/index.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/index.tsx index eca0220ae4..e891639fd0 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/index.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/Item/index.tsx @@ -14,7 +14,7 @@ import { sessionHelpers } from '@/store/session/helpers'; import { sessionMetaSelectors, sessionSelectors } from '@/store/session/selectors'; import { useUserStore } from '@/store/user'; import { userProfileSelectors } from '@/store/user/selectors'; -import { LobeGroupSession } from '@/types/session'; +import { type LobeGroupSession } from '@/types/session'; import ListItem from '../../ListItem'; import CreateGroupModal from '../../Modals/CreateGroupModal'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/index.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/index.tsx index f68cc564f7..ec7d1df1ec 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/index.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/List/index.tsx @@ -11,7 +11,7 @@ import { getSessionStoreState, useSessionStore } from '@/store/session'; import { sessionGroupSelectors, sessionSelectors } from '@/store/session/selectors'; import { getUserStoreState } from '@/store/user'; import { userProfileSelectors } from '@/store/user/selectors'; -import { LobeSessions } from '@/types/session'; +import { type LobeSessions } from '@/types/session'; import SkeletonList from '../../SkeletonList'; import AddButton from './AddButton'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/GroupItem.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/GroupItem.tsx index 26c3ba685d..58d4c9e22a 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/GroupItem.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/GroupItem.tsx @@ -6,7 +6,7 @@ import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useSessionStore } from '@/store/session'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; const useStyles = createStyles(({ css }) => ({ content: css` diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/index.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/index.tsx index fadcd8b709..34c3aaf7da 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/index.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/ConfigGroupModal/index.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { useSessionStore } from '@/store/session'; import { sessionGroupSelectors } from '@/store/session/selectors'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; import GroupItem from './GroupItem'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/CreateGroupModal.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/CreateGroupModal.tsx index 00832b0899..e24140a058 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/CreateGroupModal.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/Modals/CreateGroupModal.tsx @@ -1,7 +1,7 @@ import { Input, Modal, type ModalProps } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; import { App } from 'antd'; -import { MouseEvent, memo, useState } from 'react'; +import { type MouseEvent, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useGlobalStore } from '@/store/global'; diff --git a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/SearchMode.tsx b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/SearchMode.tsx index 763e37b52a..c45fabb6e5 100644 --- a/src/app/[variants]/(mobile)/(home)/features/SessionListContent/SearchMode.tsx +++ b/src/app/[variants]/(mobile)/(home)/features/SessionListContent/SearchMode.tsx @@ -3,7 +3,7 @@ import { memo, useMemo } from 'react'; import { useServerConfigStore } from '@/store/serverConfig'; import { serverConfigSelectors } from '@/store/serverConfig/selectors'; import { useSessionStore } from '@/store/session'; -import { LobeAgentSession, LobeSessionType, LobeSessions } from '@/types/session'; +import { type LobeAgentSession, LobeSessionType, type LobeSessions } from '@/types/session'; import SkeletonList from '../SkeletonList'; import SessionList from './List'; diff --git a/src/app/[variants]/(mobile)/_layout/index.tsx b/src/app/[variants]/(mobile)/_layout/index.tsx index ec9f13f4ca..808e9df9b6 100644 --- a/src/app/[variants]/(mobile)/_layout/index.tsx +++ b/src/app/[variants]/(mobile)/_layout/index.tsx @@ -1,7 +1,7 @@ 'use client'; import dynamic from 'next/dynamic'; -import { FC, Suspense } from 'react'; +import { type FC, Suspense } from 'react'; import { Outlet, useLocation } from 'react-router-dom'; import Loading from '@/components/Loading/BrandTextLoading'; diff --git a/src/app/[variants]/(mobile)/chat/_layout/index.tsx b/src/app/[variants]/(mobile)/chat/_layout/index.tsx index 5af8fde65d..e6ec8079a6 100644 --- a/src/app/[variants]/(mobile)/chat/_layout/index.tsx +++ b/src/app/[variants]/(mobile)/chat/_layout/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { FC } from 'react'; +import { type FC } from 'react'; import { Outlet } from 'react-router-dom'; import AgentIdSync from '@/app/[variants]/(main)/chat/_layout/AgentIdSync'; diff --git a/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/SystemRole.tsx b/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/SystemRole.tsx index 30228a7608..ed972cd090 100644 --- a/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/SystemRole.tsx +++ b/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/SystemRole.tsx @@ -3,7 +3,7 @@ import { Flexbox, Skeleton } from '@lobehub/ui'; import { EditableMessage } from '@lobehub/ui/chat'; import { createStyles } from 'antd-style'; -import { MouseEvent, memo } from 'react'; +import { type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import AgentInfo from '@/features/AgentInfo'; diff --git a/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/index.tsx b/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/index.tsx index 13b822e528..08c8a41324 100644 --- a/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/index.tsx +++ b/src/app/[variants]/(mobile)/chat/features/Topic/features/AgentConfig/index.tsx @@ -2,7 +2,7 @@ import { ActionIcon } from '@lobehub/ui'; import { Edit } from 'lucide-react'; -import { MouseEvent, memo, useState } from 'react'; +import { type MouseEvent, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import useMergeState from 'use-merge-value'; diff --git a/src/app/[variants]/(mobile)/chat/features/Topic/features/ConfigLayout.tsx b/src/app/[variants]/(mobile)/chat/features/Topic/features/ConfigLayout.tsx index f59b5b37d0..83e101b502 100644 --- a/src/app/[variants]/(mobile)/chat/features/Topic/features/ConfigLayout.tsx +++ b/src/app/[variants]/(mobile)/chat/features/Topic/features/ConfigLayout.tsx @@ -3,7 +3,7 @@ import { ActionIcon, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronRight } from 'lucide-react'; -import { CSSProperties, ReactNode, memo } from 'react'; +import { type CSSProperties, type ReactNode, memo } from 'react'; import SidebarHeader from '@/components/SidebarHeader'; import { useGlobalStore } from '@/store/global'; diff --git a/src/app/[variants]/(mobile)/chat/features/Topic/features/TopicModal.tsx b/src/app/[variants]/(mobile)/chat/features/Topic/features/TopicModal.tsx index fcbd8a3f1a..cb9ecd394a 100644 --- a/src/app/[variants]/(mobile)/chat/features/Topic/features/TopicModal.tsx +++ b/src/app/[variants]/(mobile)/chat/features/Topic/features/TopicModal.tsx @@ -1,7 +1,7 @@ 'use client'; import { Modal } from '@lobehub/ui'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useFetchTopics } from '@/hooks/useFetchTopics'; diff --git a/src/app/[variants]/(mobile)/chat/settings/_layout/index.tsx b/src/app/[variants]/(mobile)/chat/settings/_layout/index.tsx index 291b79985b..cde2227eea 100644 --- a/src/app/[variants]/(mobile)/chat/settings/_layout/index.tsx +++ b/src/app/[variants]/(mobile)/chat/settings/_layout/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import MobileContentLayout from '@/components/server/MobileNavLayout'; import Footer from '@/features/Setting/Footer'; diff --git a/src/app/[variants]/(mobile)/chat/settings/features/AgentInfoDescription/index.tsx b/src/app/[variants]/(mobile)/chat/settings/features/AgentInfoDescription/index.tsx index ca08dda8d7..e1bc6ba657 100644 --- a/src/app/[variants]/(mobile)/chat/settings/features/AgentInfoDescription/index.tsx +++ b/src/app/[variants]/(mobile)/chat/settings/features/AgentInfoDescription/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { ProDescriptions } from '@ant-design/pro-components'; -import { AgentItemDetail } from '@lobehub/market-sdk'; +import { type AgentItemDetail } from '@lobehub/market-sdk'; import { Flexbox, Tag } from '@lobehub/ui'; import Image from 'next/image'; import { memo } from 'react'; diff --git a/src/app/[variants]/(mobile)/me/(home)/features/useCategory.tsx b/src/app/[variants]/(mobile)/me/(home)/features/useCategory.tsx index bc68a61b5d..29330cbed0 100644 --- a/src/app/[variants]/(mobile)/me/(home)/features/useCategory.tsx +++ b/src/app/[variants]/(mobile)/me/(home)/features/useCategory.tsx @@ -12,7 +12,7 @@ import { import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; -import { CellProps } from '@/components/Cell'; +import { type CellProps } from '@/components/Cell'; import { DOCUMENTS, FEEDBACK } from '@/const/index'; import { usePWAInstall } from '@/hooks/usePWAInstall'; import { featureFlagsSelectors, useServerConfigStore } from '@/store/serverConfig'; diff --git a/src/app/[variants]/(mobile)/me/profile/features/Category.tsx b/src/app/[variants]/(mobile)/me/profile/features/Category.tsx index bdefd8dd1f..1fba680dd6 100644 --- a/src/app/[variants]/(mobile)/me/profile/features/Category.tsx +++ b/src/app/[variants]/(mobile)/me/profile/features/Category.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; -import Cell, { CellProps } from '@/components/Cell'; +import Cell, { type CellProps } from '@/components/Cell'; import { ProfileTabs } from '@/store/global/initialState'; import { useUserStore } from '@/store/user'; import { authSelectors } from '@/store/user/selectors'; diff --git a/src/app/[variants]/(mobile)/me/settings/features/useCategory.tsx b/src/app/[variants]/(mobile)/me/settings/features/useCategory.tsx index ec4a554a4d..0c2f02c41d 100644 --- a/src/app/[variants]/(mobile)/me/settings/features/useCategory.tsx +++ b/src/app/[variants]/(mobile)/me/settings/features/useCategory.tsx @@ -2,7 +2,7 @@ import { Brain, BrainCircuit, Info, Mic2, Settings2, Sparkles } from 'lucide-rea import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; -import { CellProps } from '@/components/Cell'; +import { type CellProps } from '@/components/Cell'; import { SettingsTabs } from '@/store/global/initialState'; export const useCategory = () => { diff --git a/src/app/[variants]/(mobile)/settings/_layout/Header.tsx b/src/app/[variants]/(mobile)/settings/_layout/Header.tsx index 59c9b61f82..e0431465b8 100644 --- a/src/app/[variants]/(mobile)/settings/_layout/Header.tsx +++ b/src/app/[variants]/(mobile)/settings/_layout/Header.tsx @@ -9,7 +9,7 @@ import { useNavigate } from 'react-router-dom'; import { enableAuth } from '@/const/auth'; import { useQueryState } from '@/hooks/useQueryParam'; import { useShowMobileWorkspace } from '@/hooks/useShowMobileWorkspace'; -import { SettingsTabs } from '@/store/global/initialState'; +import { type SettingsTabs } from '@/store/global/initialState'; import { useSessionStore } from '@/store/session'; import { mobileHeaderSticky } from '@/styles/mobileHeader'; diff --git a/src/app/[variants]/layout.tsx b/src/app/[variants]/layout.tsx index 3dbe50bf1d..6b06898cbf 100644 --- a/src/app/[variants]/layout.tsx +++ b/src/app/[variants]/layout.tsx @@ -1,8 +1,8 @@ import { SpeedInsights } from '@vercel/speed-insights/next'; -import { ThemeAppearance } from 'antd-style'; -import { ResolvingViewport } from 'next'; +import { type ThemeAppearance } from 'antd-style'; +import { type ResolvingViewport } from 'next'; import Script from 'next/script'; -import { ReactNode, Suspense } from 'react'; +import { type ReactNode, Suspense } from 'react'; import { isRtlLang } from 'rtl-detect'; import Analytics from '@/components/Analytics'; @@ -11,8 +11,8 @@ import { isDesktop } from '@/const/version'; import PWAInstall from '@/features/PWAInstall'; import AuthProvider from '@/layout/AuthProvider'; import GlobalProvider from '@/layout/GlobalProvider'; -import { Locales } from '@/locales/resources'; -import { DynamicLayoutProps } from '@/types/next'; +import { type Locales } from '@/locales/resources'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from '@/utils/server/routeVariants'; const inVercel = process.env.VERCEL === '1'; diff --git a/src/app/[variants]/metadata.ts b/src/app/[variants]/metadata.ts index 1885be3505..afe29323a1 100644 --- a/src/app/[variants]/metadata.ts +++ b/src/app/[variants]/metadata.ts @@ -5,7 +5,7 @@ import { DEFAULT_LANG } from '@/const/locale'; import { OFFICIAL_URL } from '@/const/url'; import { isCustomBranding, isCustomORG } from '@/const/version'; import { translation } from '@/server/translation'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from '@/utils/server/routeVariants'; const isDev = process.env.NODE_ENV === 'development'; diff --git a/src/app/[variants]/onboarding/_layout/index.tsx b/src/app/[variants]/onboarding/_layout/index.tsx index da60b14179..eb2b561d86 100644 --- a/src/app/[variants]/onboarding/_layout/index.tsx +++ b/src/app/[variants]/onboarding/_layout/index.tsx @@ -3,7 +3,7 @@ import { Center, Flexbox, Text } from '@lobehub/ui'; import { Divider } from 'antd'; import { useTheme } from 'antd-style'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import LangButton from '@/features/User/UserPanel/LangButton'; import ThemeButton from '@/features/User/UserPanel/ThemeButton'; diff --git a/src/app/[variants]/onboarding/components/KlavisServerList/components/KlavisServerItem.tsx b/src/app/[variants]/onboarding/components/KlavisServerList/components/KlavisServerItem.tsx index 7f684a1337..dd30c82978 100644 --- a/src/app/[variants]/onboarding/components/KlavisServerList/components/KlavisServerItem.tsx +++ b/src/app/[variants]/onboarding/components/KlavisServerList/components/KlavisServerItem.tsx @@ -4,8 +4,8 @@ import { Block, Flexbox, Text } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { memo } from 'react'; -import { KlavisServerType } from '@/const/index'; -import { KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; +import { type KlavisServerType } from '@/const/index'; +import { type KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; import { useKlavisOAuth } from '../hooks/useKlavisOAuth'; import { useKlavisServerActions } from '../hooks/useKlavisServerActions'; diff --git a/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerIcon.tsx b/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerIcon.tsx index d547e77975..5b7beab360 100644 --- a/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerIcon.tsx +++ b/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerIcon.tsx @@ -1,6 +1,6 @@ import { Avatar, Icon } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { LucideIcon } from 'lucide-react'; +import { type LucideIcon } from 'lucide-react'; import { memo } from 'react'; interface ServerIconProps { diff --git a/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerStatusControl.tsx b/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerStatusControl.tsx index 6eeac6a080..14b751fbbf 100644 --- a/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerStatusControl.tsx +++ b/src/app/[variants]/onboarding/components/KlavisServerList/components/ServerStatusControl.tsx @@ -4,7 +4,7 @@ import { CheckIcon, CircleX, Loader2 } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; +import { type KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; interface ServerStatusControlProps { isConnecting: boolean; diff --git a/src/app/[variants]/onboarding/components/KlavisServerList/hooks/useKlavisServerActions.ts b/src/app/[variants]/onboarding/components/KlavisServerList/hooks/useKlavisServerActions.ts index a1757da218..f26df1eb10 100644 --- a/src/app/[variants]/onboarding/components/KlavisServerList/hooks/useKlavisServerActions.ts +++ b/src/app/[variants]/onboarding/components/KlavisServerList/hooks/useKlavisServerActions.ts @@ -1,7 +1,7 @@ import { useState } from 'react'; import { useToolStore } from '@/store/tool'; -import { KlavisServer } from '@/store/tool/slices/klavisStore'; +import { type KlavisServer } from '@/store/tool/slices/klavisStore'; import { useUserStore } from '@/store/user'; import { userProfileSelectors } from '@/store/user/selectors'; diff --git a/src/app/[variants]/onboarding/components/LobeMessage.tsx b/src/app/[variants]/onboarding/components/LobeMessage.tsx index 2d9d9abd7d..b74d3eac63 100644 --- a/src/app/[variants]/onboarding/components/LobeMessage.tsx +++ b/src/app/[variants]/onboarding/components/LobeMessage.tsx @@ -1,5 +1,5 @@ -import { Flexbox, FlexboxProps, Text } from '@lobehub/ui'; -import { TypewriterEffect, TypewriterEffectProps } from '@lobehub/ui/awesome'; +import { Flexbox, type FlexboxProps, Text } from '@lobehub/ui'; +import { TypewriterEffect, type TypewriterEffectProps } from '@lobehub/ui/awesome'; import { LoadingDots } from '@lobehub/ui/chat'; import { memo } from 'react'; diff --git a/src/app/[variants]/onboarding/features/ResponseLanguageStep.tsx b/src/app/[variants]/onboarding/features/ResponseLanguageStep.tsx index b4a9916fdf..315697b318 100644 --- a/src/app/[variants]/onboarding/features/ResponseLanguageStep.tsx +++ b/src/app/[variants]/onboarding/features/ResponseLanguageStep.tsx @@ -7,7 +7,7 @@ import { Undo2Icon } from 'lucide-react'; import { memo, useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { Locales, localeOptions, normalizeLocale } from '@/locales/resources'; +import { type Locales, localeOptions, normalizeLocale } from '@/locales/resources'; import { useGlobalStore } from '@/store/global'; import { useUserStore } from '@/store/user'; diff --git a/src/app/[variants]/onboarding/features/TelemetryStep.tsx b/src/app/[variants]/onboarding/features/TelemetryStep.tsx index 82703c201f..6c80fd83ab 100644 --- a/src/app/[variants]/onboarding/features/TelemetryStep.tsx +++ b/src/app/[variants]/onboarding/features/TelemetryStep.tsx @@ -1,7 +1,7 @@ 'use client'; import { BRANDING_NAME } from '@lobechat/business-const'; -import { Block, Button, Flexbox, Icon, IconProps, Text } from '@lobehub/ui'; +import { Block, Button, Flexbox, Icon, type IconProps, Text } from '@lobehub/ui'; import { TypewriterEffect } from '@lobehub/ui/awesome'; import { LoadingDots } from '@lobehub/ui/chat'; import { Steps, Switch } from 'antd'; diff --git a/src/app/[variants]/page.tsx b/src/app/[variants]/page.tsx index b4777293b5..03d109bc6d 100644 --- a/src/app/[variants]/page.tsx +++ b/src/app/[variants]/page.tsx @@ -1,7 +1,7 @@ import dynamic from 'next/dynamic'; import Loading from '@/components/Loading/BrandTextLoading'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from '@/utils/server/routeVariants'; import DesktopRouter from './router'; diff --git a/src/app/robots.tsx b/src/app/robots.tsx index 50bdafa2dd..31161a831c 100644 --- a/src/app/robots.tsx +++ b/src/app/robots.tsx @@ -1,4 +1,4 @@ -import { MetadataRoute } from 'next'; +import { type MetadataRoute } from 'next'; import { Sitemap } from '@/server/sitemap'; import { getCanonicalUrl } from '@/server/utils/url'; diff --git a/src/app/sitemap.tsx b/src/app/sitemap.tsx index 2a491ee779..e167f7ad4a 100644 --- a/src/app/sitemap.tsx +++ b/src/app/sitemap.tsx @@ -1,4 +1,4 @@ -import { MetadataRoute } from 'next'; +import { type MetadataRoute } from 'next'; import { LAST_MODIFIED, Sitemap, SitemapType } from '@/server/sitemap'; diff --git a/src/components/Analytics/LobeAnalyticsProvider.tsx b/src/components/Analytics/LobeAnalyticsProvider.tsx index dbee1f6f3e..ca28179b52 100644 --- a/src/components/Analytics/LobeAnalyticsProvider.tsx +++ b/src/components/Analytics/LobeAnalyticsProvider.tsx @@ -1,12 +1,12 @@ 'use client'; import { - GoogleAnalyticsProviderConfig, - PostHogProviderAnalyticsConfig, + type GoogleAnalyticsProviderConfig, + type PostHogProviderAnalyticsConfig, createSingletonAnalytics, } from '@lobehub/analytics'; import { AnalyticsProvider } from '@lobehub/analytics/react'; -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { BUSINESS_LINE } from '@/const/analytics'; import { isDesktop } from '@/const/version'; diff --git a/src/components/Analytics/LobeAnalyticsProviderWrapper.tsx b/src/components/Analytics/LobeAnalyticsProviderWrapper.tsx index b8fc3c3f76..d2014fce70 100644 --- a/src/components/Analytics/LobeAnalyticsProviderWrapper.tsx +++ b/src/components/Analytics/LobeAnalyticsProviderWrapper.tsx @@ -1,4 +1,4 @@ -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { LobeAnalyticsProvider } from '@/components/Analytics/LobeAnalyticsProvider'; import { analyticsEnv } from '@/envs/analytics'; diff --git a/src/components/AnimatedCollapsed/index.tsx b/src/components/AnimatedCollapsed/index.tsx index cce4d167c7..e6f3e3aaf9 100644 --- a/src/components/AnimatedCollapsed/index.tsx +++ b/src/components/AnimatedCollapsed/index.tsx @@ -1,5 +1,5 @@ import { AnimatePresence, m as motion } from 'motion/react'; -import { CSSProperties, ReactNode, memo } from 'react'; +import { type CSSProperties, type ReactNode, memo } from 'react'; interface AnimatedCollapsedProps { children: ReactNode; diff --git a/src/components/BootErrorBoundary/index.tsx b/src/components/BootErrorBoundary/index.tsx index e73370c68b..cb86f3b682 100644 --- a/src/components/BootErrorBoundary/index.tsx +++ b/src/components/BootErrorBoundary/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Component, ErrorInfo, ReactNode } from 'react'; +import { Component, type ErrorInfo, type ReactNode } from 'react'; interface BootErrorBoundaryProps { children: ReactNode; diff --git a/src/components/BrandWatermark/index.tsx b/src/components/BrandWatermark/index.tsx index c2c64bdd33..71685ded85 100644 --- a/src/components/BrandWatermark/index.tsx +++ b/src/components/BrandWatermark/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { ORG_NAME, UTM_SOURCE } from '@lobechat/business-const'; -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; import { LobeHub } from '@lobehub/ui/brand'; import { createStyles } from 'antd-style'; import Link from 'next/link'; diff --git a/src/components/Branding/ProductLogo/Custom.tsx b/src/components/Branding/ProductLogo/Custom.tsx index 8424d903fd..12dac78662 100644 --- a/src/components/Branding/ProductLogo/Custom.tsx +++ b/src/components/Branding/ProductLogo/Custom.tsx @@ -1,10 +1,10 @@ import { BRANDING_LOGO_URL, BRANDING_NAME } from '@lobechat/business-const'; import type { IconType } from '@lobehub/icons'; -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; import type { LobeChatProps } from '@lobehub/ui/brand'; import { createStyles, useTheme } from 'antd-style'; -import Image, { ImageProps } from 'next/image'; -import { ReactNode, forwardRef, memo } from 'react'; +import Image, { type ImageProps } from 'next/image'; +import { type ReactNode, forwardRef, memo } from 'react'; const useStyles = createStyles(({ css }) => { return { diff --git a/src/components/Branding/ProductLogo/index.tsx b/src/components/Branding/ProductLogo/index.tsx index 05a4c2c783..70e62bd65a 100644 --- a/src/components/Branding/ProductLogo/index.tsx +++ b/src/components/Branding/ProductLogo/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { LobeHub, LobeHubProps } from '@lobehub/ui/brand'; +import { LobeHub, type LobeHubProps } from '@lobehub/ui/brand'; import { memo } from 'react'; import { isCustomBranding } from '@/const/version'; diff --git a/src/components/BrowserIcon/types.ts b/src/components/BrowserIcon/types.ts index ed08f2b332..7fde65ae3b 100644 --- a/src/components/BrowserIcon/types.ts +++ b/src/components/BrowserIcon/types.ts @@ -1,4 +1,4 @@ -import { CSSProperties } from 'react'; +import { type CSSProperties } from 'react'; export interface SVGComponent { className?: string; diff --git a/src/components/Cell/index.tsx b/src/components/Cell/index.tsx index 7772482a3a..e12c6c9c89 100644 --- a/src/components/Cell/index.tsx +++ b/src/components/Cell/index.tsx @@ -1,7 +1,7 @@ -import { Flexbox, Icon, IconProps } from '@lobehub/ui'; +import { Flexbox, Icon, type IconProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronRight } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import Divider from './Divider'; diff --git a/src/components/ChatGroupWizard/ChatGroupWizard.tsx b/src/components/ChatGroupWizard/ChatGroupWizard.tsx index 746a9ed1e4..b70ef7624f 100644 --- a/src/components/ChatGroupWizard/ChatGroupWizard.tsx +++ b/src/components/ChatGroupWizard/ChatGroupWizard.tsx @@ -16,16 +16,16 @@ import { Checkbox, Switch } from 'antd'; import { createStyles, useTheme } from 'antd-style'; import { omit } from 'es-toolkit/compat'; import { Users } from 'lucide-react'; -import { ChangeEvent, memo, useCallback, useEffect, useMemo, useRef, useState } from 'react'; +import { type ChangeEvent, memo, useCallback, useEffect, useMemo, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { DEFAULT_AVATAR } from '@/const/meta'; import ModelSelect from '@/features/ModelSelect'; import { useEnabledChatModels } from '@/hooks/useEnabledChatModels'; import { useSessionStore } from '@/store/session'; -import { LobeAgentSession, LobeSessionType } from '@/types/session'; +import { type LobeAgentSession, LobeSessionType } from '@/types/session'; -import { GroupTemplate, useGroupTemplates } from './templates'; +import { type GroupTemplate, useGroupTemplates } from './templates'; const TemplateItem = memo<{ cx: (..._args: any[]) => string; diff --git a/src/components/CopyableLabel/index.tsx b/src/components/CopyableLabel/index.tsx index 0a5f76c3da..1667f1109e 100644 --- a/src/components/CopyableLabel/index.tsx +++ b/src/components/CopyableLabel/index.tsx @@ -1,5 +1,5 @@ import { CopyButton, Flexbox, Text } from '@lobehub/ui'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; interface CopyableLabelProps { className?: string; diff --git a/src/components/DataStyleModal/index.tsx b/src/components/DataStyleModal/index.tsx index 526e50985c..9919209d8a 100644 --- a/src/components/DataStyleModal/index.tsx +++ b/src/components/DataStyleModal/index.tsx @@ -1,8 +1,8 @@ import { Flexbox, Icon, Modal } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { LucideIcon } from 'lucide-react'; +import { type LucideIcon } from 'lucide-react'; import { rgba } from 'polished'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; const useStyles = createStyles(({ css, token, prefixCls, isDarkMode }) => ({ modalTitle: css` diff --git a/src/components/Descriptions/index.tsx b/src/components/Descriptions/index.tsx index 7f0ad3a683..6c72881161 100644 --- a/src/components/Descriptions/index.tsx +++ b/src/components/Descriptions/index.tsx @@ -1,7 +1,7 @@ -import { Grid, type GridProps, Icon, IconProps, Text } from '@lobehub/ui'; +import { Grid, type GridProps, Icon, type IconProps, Text } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { CSSProperties, ReactNode, memo } from 'react'; +import { type CSSProperties, type ReactNode, memo } from 'react'; import CopyableLabel from '../CopyableLabel'; diff --git a/src/components/Editor/AutoSaveHint.tsx b/src/components/Editor/AutoSaveHint.tsx index fda14a72b5..c4e8bb1a4e 100644 --- a/src/components/Editor/AutoSaveHint.tsx +++ b/src/components/Editor/AutoSaveHint.tsx @@ -4,7 +4,7 @@ import { Icon, Tag } from '@lobehub/ui'; import dayjs from 'dayjs'; import relativeTime from 'dayjs/plugin/relativeTime'; import { CloudIcon, Loader2Icon } from 'lucide-react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { useTranslation } from 'react-i18next'; dayjs.extend(relativeTime); diff --git a/src/components/EmojiPicker/index.tsx b/src/components/EmojiPicker/index.tsx index 210b740e49..b542ae0c93 100644 --- a/src/components/EmojiPicker/index.tsx +++ b/src/components/EmojiPicker/index.tsx @@ -1,4 +1,4 @@ -import { EmojiPickerProps, EmojiPicker as LobeEmojiPicker } from '@lobehub/ui'; +import { type EmojiPickerProps, EmojiPicker as LobeEmojiPicker } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/components/FeatureList/index.tsx b/src/components/FeatureList/index.tsx index 790092d3cb..adbb5c97f7 100644 --- a/src/components/FeatureList/index.tsx +++ b/src/components/FeatureList/index.tsx @@ -1,6 +1,6 @@ import { Center, Flexbox, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { LucideIcon } from 'lucide-react'; +import { type LucideIcon } from 'lucide-react'; import { memo } from 'react'; const useStyles = createStyles(({ css, token, isDarkMode, responsive }) => ({ diff --git a/src/components/FileParsingStatus/EmbeddingStatus.tsx b/src/components/FileParsingStatus/EmbeddingStatus.tsx index 9ab648199b..d6220d3b1e 100644 --- a/src/components/FileParsingStatus/EmbeddingStatus.tsx +++ b/src/components/FileParsingStatus/EmbeddingStatus.tsx @@ -5,7 +5,7 @@ import { darken, lighten } from 'polished'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { AsyncTaskStatus, FileParsingTask } from '@/types/asyncTask'; +import { AsyncTaskStatus, type FileParsingTask } from '@/types/asyncTask'; const useStyles = createStyles(({ css, token, isDarkMode }) => ({ errorReason: css` diff --git a/src/components/FileParsingStatus/index.tsx b/src/components/FileParsingStatus/index.tsx index 289274073f..b4fcba735f 100644 --- a/src/components/FileParsingStatus/index.tsx +++ b/src/components/FileParsingStatus/index.tsx @@ -6,7 +6,7 @@ import { darken, lighten } from 'polished'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { AsyncTaskStatus, FileParsingTask } from '@/types/asyncTask'; +import { AsyncTaskStatus, type FileParsingTask } from '@/types/asyncTask'; import EmbeddingStatus from './EmbeddingStatus'; diff --git a/src/components/FormAction/index.tsx b/src/components/FormAction/index.tsx index 7b0d8cefa9..f422c9418e 100644 --- a/src/components/FormAction/index.tsx +++ b/src/components/FormAction/index.tsx @@ -1,6 +1,6 @@ -import { Avatar, Center, CenterProps, Flexbox } from '@lobehub/ui'; +import { Avatar, Center, type CenterProps, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; export const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/components/FormInput/FormInput.tsx b/src/components/FormInput/FormInput.tsx index 56688f5b0e..a24deb4d07 100644 --- a/src/components/FormInput/FormInput.tsx +++ b/src/components/FormInput/FormInput.tsx @@ -1,5 +1,5 @@ -import { Input, InputProps as Props } from '@lobehub/ui'; -import { InputRef } from 'antd/es/input/Input'; +import { Input, type InputProps as Props } from '@lobehub/ui'; +import { type InputRef } from 'antd/es/input/Input'; import { memo, useEffect, useRef, useState } from 'react'; interface FormInputProps extends Omit { diff --git a/src/components/FormInput/FormPassword.tsx b/src/components/FormInput/FormPassword.tsx index cee32ac62f..eceeeee58c 100644 --- a/src/components/FormInput/FormPassword.tsx +++ b/src/components/FormInput/FormPassword.tsx @@ -1,5 +1,5 @@ -import { InputPassword, InputProps as Props } from '@lobehub/ui'; -import { InputRef } from 'antd/es/input/Input'; +import { InputPassword, type InputProps as Props } from '@lobehub/ui'; +import { type InputRef } from 'antd/es/input/Input'; import { memo, useEffect, useRef, useState } from 'react'; interface FormPasswordProps extends Omit { diff --git a/src/components/FormInput/FormSliderWithInput.tsx b/src/components/FormInput/FormSliderWithInput.tsx index 956ff6eab4..79d47802b7 100644 --- a/src/components/FormInput/FormSliderWithInput.tsx +++ b/src/components/FormInput/FormSliderWithInput.tsx @@ -1,4 +1,4 @@ -import { SliderWithInput, SliderWithInputProps } from '@lobehub/ui'; +import { SliderWithInput, type SliderWithInputProps } from '@lobehub/ui'; import { memo, useEffect, useState } from 'react'; interface FormSliderWithInputProps extends Omit { diff --git a/src/components/FunctionModal/createModalHooks.ts b/src/components/FunctionModal/createModalHooks.ts index edde071d7e..c9ee579b7c 100644 --- a/src/components/FunctionModal/createModalHooks.ts +++ b/src/components/FunctionModal/createModalHooks.ts @@ -1,6 +1,6 @@ import { App } from 'antd'; -import { ModalFuncProps } from 'antd/es/modal/interface'; -import { MutableRefObject, ReactNode, RefObject, useRef } from 'react'; +import { type ModalFuncProps } from 'antd/es/modal/interface'; +import { type MutableRefObject, type ReactNode, type RefObject, useRef } from 'react'; import { closeIcon, useStyles } from './style'; diff --git a/src/components/GalleyGrid/Grid.tsx b/src/components/GalleyGrid/Grid.tsx index f76d994fe6..4cc7358c6a 100644 --- a/src/components/GalleyGrid/Grid.tsx +++ b/src/components/GalleyGrid/Grid.tsx @@ -1,5 +1,5 @@ import { Flexbox } from '@lobehub/ui'; -import { CSSProperties, ReactNode, memo } from 'react'; +import { type CSSProperties, type ReactNode, memo } from 'react'; import { MAX_SIZE_DESKTOP, MIN_IMAGE_SIZE, useStyles } from './style'; diff --git a/src/components/GalleyGrid/index.tsx b/src/components/GalleyGrid/index.tsx index 27d6e1dab2..045a2f2d95 100644 --- a/src/components/GalleyGrid/index.tsx +++ b/src/components/GalleyGrid/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useResponsive } from 'antd-style'; -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import Grid from './Grid'; import { MAX_SIZE_DESKTOP, MAX_SIZE_MOBILE } from './style'; diff --git a/src/components/GroupIcon/index.tsx b/src/components/GroupIcon/index.tsx index 7bf53737bc..66d42d295c 100644 --- a/src/components/GroupIcon/index.tsx +++ b/src/components/GroupIcon/index.tsx @@ -1,6 +1,6 @@ import { Center, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { LucideIcon } from 'lucide-react'; +import { type LucideIcon } from 'lucide-react'; import { memo } from 'react'; const useStyles = createStyles(({ css, token }) => ({ diff --git a/src/components/GuideModal/index.tsx b/src/components/GuideModal/index.tsx index 49c12fceae..2062fee5be 100644 --- a/src/components/GuideModal/index.tsx +++ b/src/components/GuideModal/index.tsx @@ -4,7 +4,7 @@ import { Flexbox } from '@lobehub/ui'; import { ConfigProvider, Modal, type ModalProps } from 'antd'; import { createStyles } from 'antd-style'; import { lighten } from 'polished'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; const useStyles = createStyles(({ css, token, prefixCls }) => { return { diff --git a/src/components/ImageItem/index.tsx b/src/components/ImageItem/index.tsx index 61c66d0a3f..91f0129372 100644 --- a/src/components/ImageItem/index.tsx +++ b/src/components/ImageItem/index.tsx @@ -1,7 +1,7 @@ -import { ActionIcon, Image, ImageProps } from '@lobehub/ui'; +import { ActionIcon, Image, type ImageProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Trash } from 'lucide-react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { usePlatform } from '@/hooks/usePlatform'; diff --git a/src/components/IndexCard/index.tsx b/src/components/IndexCard/index.tsx index 980b2aa9f7..0401c70e7d 100644 --- a/src/components/IndexCard/index.tsx +++ b/src/components/IndexCard/index.tsx @@ -1,7 +1,7 @@ -import { ActionIcon, Center, Flexbox, FlexboxProps } from '@lobehub/ui'; +import { ActionIcon, Center, Flexbox, type FlexboxProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronDown, ChevronRight } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; const useStyles = createStyles(({ css, token, responsive }) => ({ card: css` diff --git a/src/components/InfoTooltip/index.tsx b/src/components/InfoTooltip/index.tsx index 0e69a42982..11d71a6181 100644 --- a/src/components/InfoTooltip/index.tsx +++ b/src/components/InfoTooltip/index.tsx @@ -1,7 +1,7 @@ -import { Icon, type IconSize, Tooltip, TooltipProps } from '@lobehub/ui'; +import { Icon, type IconSize, Tooltip, type TooltipProps } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { CircleHelp } from 'lucide-react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; interface InfoTooltipProps extends Omit { iconStyle?: CSSProperties; diff --git a/src/components/InitProgress/index.tsx b/src/components/InitProgress/index.tsx index 30e593e6d0..8a6354ce38 100644 --- a/src/components/InitProgress/index.tsx +++ b/src/components/InitProgress/index.tsx @@ -2,7 +2,7 @@ import { Center, Flexbox, Icon, Text } from '@lobehub/ui'; import { Progress } from 'antd'; import { useTheme } from 'antd-style'; import { Loader2 } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; export interface StageObjectItem { icon?: ReactNode; diff --git a/src/components/InlineTable/index.tsx b/src/components/InlineTable/index.tsx index 0cff342deb..c6cc017590 100644 --- a/src/components/InlineTable/index.tsx +++ b/src/components/InlineTable/index.tsx @@ -1,4 +1,4 @@ -import { ConfigProvider, Table, TableProps } from 'antd'; +import { ConfigProvider, Table, type TableProps } from 'antd'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/components/InstantSwitch/index.tsx b/src/components/InstantSwitch/index.tsx index 3f3951dc0f..5d18b50331 100644 --- a/src/components/InstantSwitch/index.tsx +++ b/src/components/InstantSwitch/index.tsx @@ -1,4 +1,4 @@ -import { Switch, SwitchProps } from 'antd'; +import { Switch, type SwitchProps } from 'antd'; import { memo, useState } from 'react'; interface InstantSwitchProps { diff --git a/src/components/InvalidAPIKey/ComfyUIForm.tsx b/src/components/InvalidAPIKey/ComfyUIForm.tsx index 73918c9a88..7c27c663f5 100644 --- a/src/components/InvalidAPIKey/ComfyUIForm.tsx +++ b/src/components/InvalidAPIKey/ComfyUIForm.tsx @@ -11,7 +11,7 @@ import { FormInput, FormPassword } from '@/components/FormInput'; import KeyValueEditor from '@/components/KeyValueEditor'; import { FormAction } from '@/features/Conversation/Error/style'; import { useAiInfraStore } from '@/store/aiInfra'; -import { ComfyUIKeyVault } from '@/types/user/settings'; +import { type ComfyUIKeyVault } from '@/types/user/settings'; import { LoadingContext } from './LoadingContext'; diff --git a/src/components/InvalidAPIKey/ProviderApiKeyForm.tsx b/src/components/InvalidAPIKey/ProviderApiKeyForm.tsx index 224c2f2842..30599dcc6e 100644 --- a/src/components/InvalidAPIKey/ProviderApiKeyForm.tsx +++ b/src/components/InvalidAPIKey/ProviderApiKeyForm.tsx @@ -1,13 +1,13 @@ import { Button, Icon } from '@lobehub/ui'; import { Loader2Icon, Network } from 'lucide-react'; -import { ReactNode, memo, useContext, useState } from 'react'; +import { type ReactNode, memo, useContext, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { FormInput, FormPassword } from '@/components/FormInput'; import { FormAction } from '@/features/Conversation/Error/style'; import { useProviderName } from '@/hooks/useProviderName'; import { featureFlagsSelectors, useServerConfigStore } from '@/store/serverConfig'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import { LoadingContext } from './LoadingContext'; import { useApiKey } from './useApiKey'; diff --git a/src/components/InvalidAPIKey/index.tsx b/src/components/InvalidAPIKey/index.tsx index b4dfbb748b..32228e83a3 100644 --- a/src/components/InvalidAPIKey/index.tsx +++ b/src/components/InvalidAPIKey/index.tsx @@ -4,7 +4,7 @@ import { ModelProvider } from 'model-bank'; import { memo, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; import BedrockForm from './Bedrock'; import ComfyUIForm from './ComfyUIForm'; diff --git a/src/components/JSONSchemaConfig/ItemRender.tsx b/src/components/JSONSchemaConfig/ItemRender.tsx index 35b25c0b7f..907367587f 100644 --- a/src/components/JSONSchemaConfig/ItemRender.tsx +++ b/src/components/JSONSchemaConfig/ItemRender.tsx @@ -1,6 +1,6 @@ import { Input, InputNumber, InputPassword, Select } from '@lobehub/ui'; import { Slider, Switch } from 'antd'; -import { JSONSchema7Type } from 'json-schema'; +import { type JSONSchema7Type } from 'json-schema'; import { memo } from 'react'; interface JSONSchemaItemRenderProps { diff --git a/src/components/KeyValueEditor/index.tsx b/src/components/KeyValueEditor/index.tsx index 209c9acebc..bdc1fba739 100644 --- a/src/components/KeyValueEditor/index.tsx +++ b/src/components/KeyValueEditor/index.tsx @@ -2,13 +2,13 @@ import { ActionIcon, Flexbox, Icon , Button } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import fastDeepEqual from 'fast-deep-equal'; import { LucidePlus, LucideTrash } from 'lucide-react'; -import { CSSProperties, memo, useEffect, useRef, useState } from 'react'; +import { type CSSProperties, memo, useEffect, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { v4 as uuidv4 } from 'uuid'; import { FormInput } from '@/components/FormInput'; -import { KeyValueItem, localListToRecord, recordToLocalList } from './utils'; +import { type KeyValueItem, localListToRecord, recordToLocalList } from './utils'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/components/LabsModal/LabCard.tsx b/src/components/LabsModal/LabCard.tsx index 2db7f9530e..f25b99307e 100644 --- a/src/components/LabsModal/LabCard.tsx +++ b/src/components/LabsModal/LabCard.tsx @@ -4,7 +4,7 @@ import { Flexbox } from '@lobehub/ui'; import { Switch } from 'antd'; import { createStyles } from 'antd-style'; import Image from 'next/image'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { SkeletonSwitch } from '@/components/Skeleton'; diff --git a/src/components/Link.tsx b/src/components/Link.tsx index 46fbb72e7b..e373be28c2 100644 --- a/src/components/Link.tsx +++ b/src/components/Link.tsx @@ -1,4 +1,4 @@ -import NextLink, { LinkProps as NextLinkProps } from 'next/link'; +import NextLink, { type LinkProps as NextLinkProps } from 'next/link'; import React, { memo } from 'react'; interface LinkProps extends NextLinkProps { diff --git a/src/components/Loading/FullscreenLoading/index.tsx b/src/components/Loading/FullscreenLoading/index.tsx index fce4b91cc7..266f844ce4 100644 --- a/src/components/Loading/FullscreenLoading/index.tsx +++ b/src/components/Loading/FullscreenLoading/index.tsx @@ -1,8 +1,8 @@ import { Center, Flexbox } from '@lobehub/ui'; -import React, { ReactNode, memo } from 'react'; +import React, { type ReactNode, memo } from 'react'; import { ProductLogo } from '@/components/Branding'; -import InitProgress, { StageItem } from '@/components/InitProgress'; +import InitProgress, { type StageItem } from '@/components/InitProgress'; interface FullscreenLoadingProps { activeStage: number; diff --git a/src/components/Loading/SkeletonLoading/index.tsx b/src/components/Loading/SkeletonLoading/index.tsx index 69cef908c1..c22585f508 100644 --- a/src/components/Loading/SkeletonLoading/index.tsx +++ b/src/components/Loading/SkeletonLoading/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { Skeleton } from '@lobehub/ui'; -import { SkeletonProps } from 'antd'; +import { type SkeletonProps } from 'antd'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/components/Loading/UpdateLoading/index.tsx b/src/components/Loading/UpdateLoading/index.tsx index 08290dbe14..e4df14dcb9 100644 --- a/src/components/Loading/UpdateLoading/index.tsx +++ b/src/components/Loading/UpdateLoading/index.tsx @@ -1,6 +1,6 @@ -import { Icon, IconSize } from '@lobehub/ui'; +import { Icon, type IconSize } from '@lobehub/ui'; import { Loader2 } from 'lucide-react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; interface UpdateLoadingProps { size?: IconSize; diff --git a/src/components/MCPStdioCommandInput/index.tsx b/src/components/MCPStdioCommandInput/index.tsx index 38b67a219a..1702565e17 100644 --- a/src/components/MCPStdioCommandInput/index.tsx +++ b/src/components/MCPStdioCommandInput/index.tsx @@ -8,7 +8,7 @@ import { } from '@icons-pack/react-simple-icons'; import { AutoComplete, type AutoCompleteProps } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; -import { FC, memo } from 'react'; +import { type FC, memo } from 'react'; // 定义预设的命令选项 const STDIO_COMMAND_OPTIONS: { diff --git a/src/components/ManifestPreviewer/index.tsx b/src/components/ManifestPreviewer/index.tsx index 49c78ee037..cd601db0fa 100644 --- a/src/components/ManifestPreviewer/index.tsx +++ b/src/components/ManifestPreviewer/index.tsx @@ -1,6 +1,6 @@ import { Highlighter } from '@lobehub/ui'; import { Popover } from 'antd'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; interface PluginManifestPreviewerProps { children?: ReactNode; diff --git a/src/components/MemberSelectionModal/MemberSelectionModal.tsx b/src/components/MemberSelectionModal/MemberSelectionModal.tsx index 78400981fb..b3d14a8a20 100644 --- a/src/components/MemberSelectionModal/MemberSelectionModal.tsx +++ b/src/components/MemberSelectionModal/MemberSelectionModal.tsx @@ -23,7 +23,7 @@ import AgentSelectionEmpty from '@/features/AgentSelectionEmpty'; import ModelSelect from '@/features/ModelSelect'; import { useEnabledChatModels } from '@/hooks/useEnabledChatModels'; import { useSessionStore } from '@/store/session'; -import { LobeAgentSession, LobeSessionType } from '@/types/session'; +import { type LobeAgentSession, LobeSessionType } from '@/types/session'; const AvailableAgentItem = memo<{ agent: LobeAgentSession; diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx index 8f7cefad38..f093907ac9 100644 --- a/src/components/Menu/index.tsx +++ b/src/components/Menu/index.tsx @@ -1,4 +1,4 @@ -import { Menu as AntdMenu, MenuProps as AntdMenuProps, ConfigProvider } from 'antd'; +import { Menu as AntdMenu, type MenuProps as AntdMenuProps, ConfigProvider } from 'antd'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/components/ModelSelect/index.tsx b/src/components/ModelSelect/index.tsx index ec20d613d0..9d9421b035 100644 --- a/src/components/ModelSelect/index.tsx +++ b/src/components/ModelSelect/index.tsx @@ -1,5 +1,5 @@ -import { ChatModelCard } from '@lobechat/types'; -import { IconAvatarProps, ModelIcon, ProviderIcon } from '@lobehub/icons'; +import { type ChatModelCard } from '@lobechat/types'; +import { type IconAvatarProps, ModelIcon, ProviderIcon } from '@lobehub/icons'; import { Avatar, Flexbox, Icon, Tag, Text, Tooltip } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import { @@ -12,12 +12,12 @@ import { ToyBrick, Video, } from 'lucide-react'; -import { ModelAbilities } from 'model-bank'; +import { type ModelAbilities } from 'model-bank'; import numeral from 'numeral'; -import { type ComponentProps, FC, memo, useState } from 'react'; +import { type ComponentProps, type FC, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { AiProviderSourceType } from '@/types/aiProvider'; +import { type AiProviderSourceType } from '@/types/aiProvider'; import { formatTokenNumber } from '@/utils/format'; import NewModelBadgeI18n, { NewModelBadge as NewModelBadgeCore } from './NewModelBadge'; diff --git a/src/components/Notification/index.tsx b/src/components/Notification/index.tsx index 4ef1444e1c..1dc2f4dc2c 100644 --- a/src/components/Notification/index.tsx +++ b/src/components/Notification/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { ActionIcon, Flexbox, FlexboxProps } from '@lobehub/ui'; +import { ActionIcon, Flexbox, type FlexboxProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { XIcon } from 'lucide-react'; import { rgba } from 'polished'; diff --git a/src/components/PanelTitle/index.tsx b/src/components/PanelTitle/index.tsx index 8aa45761fa..c9f10d3d33 100644 --- a/src/components/PanelTitle/index.tsx +++ b/src/components/PanelTitle/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; const useStyles = createStyles(({ token, css }) => ({ desc: css` diff --git a/src/components/Plugins/PluginAvatar.tsx b/src/components/Plugins/PluginAvatar.tsx index 42c5501cff..ed8da52275 100644 --- a/src/components/Plugins/PluginAvatar.tsx +++ b/src/components/Plugins/PluginAvatar.tsx @@ -1,7 +1,7 @@ import { MCP } from '@lobehub/icons'; import { Avatar } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; interface PluginAvatarProps { alt?: string; diff --git a/src/components/ProgressItem/index.tsx b/src/components/ProgressItem/index.tsx index d327bbf184..6436596dff 100644 --- a/src/components/ProgressItem/index.tsx +++ b/src/components/ProgressItem/index.tsx @@ -1,7 +1,7 @@ import { Flexbox } from '@lobehub/ui'; import { Progress } from 'antd'; import { createStyles, useResponsive } from 'antd-style'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; const useStyles = createStyles(({ css, token }) => ({ desc: css` diff --git a/src/components/PublishedTime.tsx b/src/components/PublishedTime.tsx index 88b110d1cb..fbee6f9986 100644 --- a/src/components/PublishedTime.tsx +++ b/src/components/PublishedTime.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import dayjs from 'dayjs'; import 'dayjs/locale/zh.js'; -import { CSSProperties, FC } from 'react'; +import { type CSSProperties, type FC } from 'react'; import { useTranslation } from 'react-i18next'; const LAST_MODIFIED = new Date().toISOString(); diff --git a/src/components/SidebarHeader/index.tsx b/src/components/SidebarHeader/index.tsx index 6a46c2b65b..5727953a44 100644 --- a/src/components/SidebarHeader/index.tsx +++ b/src/components/SidebarHeader/index.tsx @@ -1,4 +1,4 @@ -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { type ReactNode, memo } from 'react'; diff --git a/src/components/Statistic/index.tsx b/src/components/Statistic/index.tsx index 7fb30dfc3a..b1a5b0a305 100644 --- a/src/components/Statistic/index.tsx +++ b/src/components/Statistic/index.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; const Statistic = memo<{ title: ReactNode; value: ReactNode }>(({ value, title }) => { const theme = useTheme(); diff --git a/src/components/StatisticCard/TitleWithPercentage.tsx b/src/components/StatisticCard/TitleWithPercentage.tsx index 161bd00bf6..8513762fcb 100644 --- a/src/components/StatisticCard/TitleWithPercentage.tsx +++ b/src/components/StatisticCard/TitleWithPercentage.tsx @@ -1,6 +1,6 @@ import { Flexbox, Tag, Text } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { calcGrowthPercentage } from './growthPercentage'; diff --git a/src/components/StatisticCard/index.tsx b/src/components/StatisticCard/index.tsx index 79869aee7d..c02bb0e48c 100644 --- a/src/components/StatisticCard/index.tsx +++ b/src/components/StatisticCard/index.tsx @@ -1,6 +1,6 @@ import { StatisticCard as AntdStatisticCard, - StatisticCardProps as AntdStatisticCardProps, + type StatisticCardProps as AntdStatisticCardProps, } from '@ant-design/pro-components'; import { Text } from '@lobehub/ui'; import { Spin } from 'antd'; diff --git a/src/components/StructuredData/index.tsx b/src/components/StructuredData/index.tsx index f8a5dc5545..bdac5befb4 100644 --- a/src/components/StructuredData/index.tsx +++ b/src/components/StructuredData/index.tsx @@ -1,4 +1,4 @@ -import { FC } from 'react'; +import { type FC } from 'react'; const StructuredData: FC<{ ld: any }> = ({ ld }) => { return ( diff --git a/src/components/TextArea/index.tsx b/src/components/TextArea/index.tsx index 2ed14c3ad0..46495e0637 100644 --- a/src/components/TextArea/index.tsx +++ b/src/components/TextArea/index.tsx @@ -1,5 +1,5 @@ -import { TextArea as LobeTextArea, TextAreaProps as Props } from '@lobehub/ui'; -import { TextAreaRef } from 'antd/es/input/TextArea'; +import { TextArea as LobeTextArea, type TextAreaProps as Props } from '@lobehub/ui'; +import { type TextAreaRef } from 'antd/es/input/TextArea'; import { memo, useRef, useState } from 'react'; interface TextAreaProps extends Omit { diff --git a/src/components/TipGuide/index.tsx b/src/components/TipGuide/index.tsx index bbb267bac3..565f814e36 100644 --- a/src/components/TipGuide/index.tsx +++ b/src/components/TipGuide/index.tsx @@ -1,8 +1,8 @@ import { ActionIcon, Flexbox } from '@lobehub/ui'; -import { ConfigProvider, Popover, TooltipProps } from 'antd'; +import { ConfigProvider, Popover, type TooltipProps } from 'antd'; import { createStyles, useTheme } from 'antd-style'; import { XIcon } from 'lucide-react'; -import { CSSProperties, type FC, type ReactNode } from 'react'; +import { type CSSProperties, type FC, type ReactNode } from 'react'; const useStyle = createStyles(({ css }) => { return { diff --git a/src/components/client/ClientResponsiveContent/index.tsx b/src/components/client/ClientResponsiveContent/index.tsx index 5dedef0e7f..f61ac48098 100644 --- a/src/components/client/ClientResponsiveContent/index.tsx +++ b/src/components/client/ClientResponsiveContent/index.tsx @@ -1,8 +1,8 @@ 'use client'; -import { Loader } from 'next/dist/shared/lib/dynamic'; +import { type Loader } from 'next/dist/shared/lib/dynamic'; import dynamic from 'next/dynamic'; -import { FC, memo } from 'react'; +import { type FC, memo } from 'react'; import MobileSwitchLoading from '@/features/MobileSwitchLoading'; import { useIsMobile } from '@/hooks/useIsMobile'; diff --git a/src/components/client/ClientResponsiveLayout.tsx b/src/components/client/ClientResponsiveLayout.tsx index b11b1823b8..b92ba877cf 100644 --- a/src/components/client/ClientResponsiveLayout.tsx +++ b/src/components/client/ClientResponsiveLayout.tsx @@ -1,8 +1,8 @@ 'use client'; -import { Loader } from 'next/dist/shared/lib/dynamic'; +import { type Loader } from 'next/dist/shared/lib/dynamic'; import dynamic from 'next/dynamic'; -import { FC, PropsWithChildren, memo } from 'react'; +import { type FC, type PropsWithChildren, memo } from 'react'; import MobileSwitchLoading from '@/features/MobileSwitchLoading'; import { useIsMobile } from '@/hooks/useIsMobile'; diff --git a/src/components/mdx/CodeBlock.tsx b/src/components/mdx/CodeBlock.tsx index fa92e1e3f7..1e0283c3fa 100644 --- a/src/components/mdx/CodeBlock.tsx +++ b/src/components/mdx/CodeBlock.tsx @@ -1,7 +1,7 @@ 'use client'; import { Pre, PreSingleLine } from '@lobehub/ui/mdx'; -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; const countLines = (str: string): number => { const regex = /\n/g; diff --git a/src/components/mdx/Image.tsx b/src/components/mdx/Image.tsx index dbf939180e..03a7cf2452 100644 --- a/src/components/mdx/Image.tsx +++ b/src/components/mdx/Image.tsx @@ -3,7 +3,7 @@ import { Image } from '@lobehub/ui/mdx'; import Img from 'next/image'; import { getPlaiceholder } from 'plaiceholder'; -import { FC } from 'react'; +import { type FC } from 'react'; const DEFAULT_WIDTH = 800; diff --git a/src/components/mdx/Link.tsx b/src/components/mdx/Link.tsx index e19852fb61..47b5be2d02 100644 --- a/src/components/mdx/Link.tsx +++ b/src/components/mdx/Link.tsx @@ -1,7 +1,7 @@ 'use client'; -import Link, { LinkProps } from 'next/link'; -import { FC } from 'react'; +import Link, { type LinkProps } from 'next/link'; +import { type FC } from 'react'; const EXTERNAL_HREF_REGEX = /https?:\/\//; diff --git a/src/components/mdx/index.tsx b/src/components/mdx/index.tsx index 1e83333315..bcd6f110ac 100644 --- a/src/components/mdx/index.tsx +++ b/src/components/mdx/index.tsx @@ -1,7 +1,7 @@ -import { Typography as Typo, TypographyProps } from '@lobehub/ui'; +import { Typography as Typo, type TypographyProps } from '@lobehub/ui'; import { mdxComponents } from '@lobehub/ui/mdx'; import { MDXRemote, type MDXRemoteProps } from 'next-mdx-remote/rsc'; -import { FC } from 'react'; +import { type FC } from 'react'; import remarkGfm from 'remark-gfm'; import CodeBlock from './CodeBlock'; diff --git a/src/components/server/MobileNavLayout.tsx b/src/components/server/MobileNavLayout.tsx index 438fbbdfb7..fa8a225333 100644 --- a/src/components/server/MobileNavLayout.tsx +++ b/src/components/server/MobileNavLayout.tsx @@ -1,5 +1,5 @@ import { Flexbox, type FlexboxProps } from '@lobehub/ui'; -import { ReactNode } from 'react'; +import { type ReactNode } from 'react'; interface MobileContentLayoutProps extends FlexboxProps { header?: ReactNode; diff --git a/src/components/server/ServerLayout.tsx b/src/components/server/ServerLayout.tsx index 3bb66e79a8..0231d9b1e1 100644 --- a/src/components/server/ServerLayout.tsx +++ b/src/components/server/ServerLayout.tsx @@ -1,6 +1,6 @@ -import { FC, PropsWithChildren, ReactNode } from 'react'; +import { type FC, type PropsWithChildren, type ReactNode } from 'react'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from '@/utils/server/routeVariants'; interface ServerLayoutProps { diff --git a/src/components/withSuspense.tsx b/src/components/withSuspense.tsx index ef0a3a4d22..753eaaa2dd 100644 --- a/src/components/withSuspense.tsx +++ b/src/components/withSuspense.tsx @@ -1,4 +1,4 @@ -import { ComponentType, Suspense } from 'react'; +import { type ComponentType, Suspense } from 'react'; // @ts-ignore export const withSuspense: (Comp: T) => T = (Component: ComponentType) => (props: any) => ( diff --git a/src/config/featureFlags/utils/parser.ts b/src/config/featureFlags/utils/parser.ts index 48f1a2af3b..a7acb0b05b 100644 --- a/src/config/featureFlags/utils/parser.ts +++ b/src/config/featureFlags/utils/parser.ts @@ -1,4 +1,4 @@ -import { FeatureFlagsSchema, IFeatureFlags } from '../schema'; +import { FeatureFlagsSchema, type IFeatureFlags } from '../schema'; /** * 解析环境变量中的特性标志字符串。 diff --git a/src/features/AgentBuilder/AgentBuilderProvider.tsx b/src/features/AgentBuilder/AgentBuilderProvider.tsx index 6353cddb3c..32578dce16 100644 --- a/src/features/AgentBuilder/AgentBuilderProvider.tsx +++ b/src/features/AgentBuilder/AgentBuilderProvider.tsx @@ -1,9 +1,9 @@ -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { ConversationProvider } from '@/features/Conversation'; import { useOperationState } from '@/hooks/useOperationState'; import { useChatStore } from '@/store/chat'; -import { MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; +import { type MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; interface AgentBuilderProviderProps { agentId: string; diff --git a/src/features/AgentInfo/index.tsx b/src/features/AgentInfo/index.tsx index 51a0a1a692..b2aa6f0933 100644 --- a/src/features/AgentInfo/index.tsx +++ b/src/features/AgentInfo/index.tsx @@ -2,9 +2,9 @@ import { Avatar, Center, Markdown, Tag } from '@lobehub/ui'; import { Divider } from 'antd'; import { createStyles } from 'antd-style'; import { startCase } from 'es-toolkit/compat'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; -import { MetaData } from '@/types/meta'; +import { type MetaData } from '@/types/meta'; const useStyles = createStyles(({ css, token }) => ({ avatar: css` diff --git a/src/features/AgentSelectionEmpty.tsx b/src/features/AgentSelectionEmpty.tsx index 5bcae1edd0..edd132b972 100644 --- a/src/features/AgentSelectionEmpty.tsx +++ b/src/features/AgentSelectionEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { Users } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/AgentSetting/AgentCategory/index.tsx b/src/features/AgentSetting/AgentCategory/index.tsx index 1433f6265a..9d508e34aa 100644 --- a/src/features/AgentSetting/AgentCategory/index.tsx +++ b/src/features/AgentSetting/AgentCategory/index.tsx @@ -3,7 +3,7 @@ import { memo } from 'react'; import Menu from '@/components/Menu'; -import { ChatSettingsTabs } from '@/store/global/initialState'; +import { type ChatSettingsTabs } from '@/store/global/initialState'; import { useCategory } from './useCategory'; diff --git a/src/features/AgentSetting/AgentCategory/useCategory.tsx b/src/features/AgentSetting/AgentCategory/useCategory.tsx index d9947dba0c..95bd084399 100644 --- a/src/features/AgentSetting/AgentCategory/useCategory.tsx +++ b/src/features/AgentSetting/AgentCategory/useCategory.tsx @@ -1,5 +1,5 @@ import { Icon } from '@lobehub/ui'; -import { MenuItemType } from 'antd/es/menu/interface'; +import { type MenuItemType } from 'antd/es/menu/interface'; import { Bot, BrainCog, Handshake, MessagesSquare, Mic2, UserCircle } from 'lucide-react'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/AgentSetting/AgentMeta/AutoGenerateInput.tsx b/src/features/AgentSetting/AgentMeta/AutoGenerateInput.tsx index 9ef443f5bb..3826b33340 100644 --- a/src/features/AgentSetting/AgentMeta/AutoGenerateInput.tsx +++ b/src/features/AgentSetting/AgentMeta/AutoGenerateInput.tsx @@ -1,4 +1,4 @@ -import { ActionIcon, Input, InputProps } from '@lobehub/ui'; +import { ActionIcon, Input, type InputProps } from '@lobehub/ui'; import { Wand2 } from 'lucide-react'; import { memo, useCallback, useEffect, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/AgentSetting/AgentMeta/BackgroundSwatches.tsx b/src/features/AgentSetting/AgentMeta/BackgroundSwatches.tsx index d9173912aa..55ed96a427 100644 --- a/src/features/AgentSetting/AgentMeta/BackgroundSwatches.tsx +++ b/src/features/AgentSetting/AgentMeta/BackgroundSwatches.tsx @@ -1,4 +1,4 @@ -import { ColorSwatches, ColorSwatchesProps, primaryColors } from '@lobehub/ui'; +import { ColorSwatches, type ColorSwatchesProps, primaryColors } from '@lobehub/ui'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/AgentSetting/AgentSettings.tsx b/src/features/AgentSetting/AgentSettings.tsx index 3b093014cc..81b2bb8229 100644 --- a/src/features/AgentSetting/AgentSettings.tsx +++ b/src/features/AgentSetting/AgentSettings.tsx @@ -6,7 +6,7 @@ import { useServerConfigStore } from '@/store/serverConfig'; import AgentSettingsContent from './AgentSettingsContent'; import { AgentSettingsProvider } from './AgentSettingsProvider'; -import { StoreUpdaterProps } from './StoreUpdater'; +import { type StoreUpdaterProps } from './StoreUpdater'; export interface AgentSettingsProps extends StoreUpdaterProps { tab: ChatSettingsTabs; diff --git a/src/features/AgentSetting/AgentSettingsContent.tsx b/src/features/AgentSetting/AgentSettingsContent.tsx index be22b28b40..c02bfc581c 100644 --- a/src/features/AgentSetting/AgentSettingsContent.tsx +++ b/src/features/AgentSetting/AgentSettingsContent.tsx @@ -1,4 +1,4 @@ -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useAgentStore } from '@/store/agent'; import { agentSelectors } from '@/store/agent/selectors'; diff --git a/src/features/AgentSetting/AgentSettingsProvider.tsx b/src/features/AgentSetting/AgentSettingsProvider.tsx index 475a863f4c..e9f137b148 100644 --- a/src/features/AgentSetting/AgentSettingsProvider.tsx +++ b/src/features/AgentSetting/AgentSettingsProvider.tsx @@ -1,6 +1,6 @@ -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; -import StoreUpdater, { StoreUpdaterProps } from './StoreUpdater'; +import StoreUpdater, { type StoreUpdaterProps } from './StoreUpdater'; import { Provider, createStore } from './store'; interface AgentSettingsProps extends StoreUpdaterProps { diff --git a/src/features/AgentSetting/AgentTTS/SelectWithTTSPreview.tsx b/src/features/AgentSetting/AgentTTS/SelectWithTTSPreview.tsx index 691b6ec7a1..bb271c09fe 100644 --- a/src/features/AgentSetting/AgentTTS/SelectWithTTSPreview.tsx +++ b/src/features/AgentSetting/AgentTTS/SelectWithTTSPreview.tsx @@ -1,14 +1,14 @@ import { getMessageError } from '@lobechat/fetch-sse'; -import { ChatMessageError } from '@lobechat/types'; +import { type ChatMessageError } from '@lobechat/types'; import { AudioPlayer } from '@lobehub/tts/react'; -import { Alert, Button, Flexbox, Highlighter, Select, SelectProps } from '@lobehub/ui'; -import { RefSelectProps } from 'antd'; +import { Alert, Button, Flexbox, Highlighter, Select, type SelectProps } from '@lobehub/ui'; +import { type RefSelectProps } from 'antd'; import { useTheme } from 'antd-style'; import { forwardRef, useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useTTS } from '@/hooks/useTTS'; -import { TTSServer } from '@/types/agent'; +import { type TTSServer } from '@/types/agent'; interface SelectWithTTSPreviewProps extends SelectProps { server: TTSServer; diff --git a/src/features/AgentSetting/StoreUpdater.tsx b/src/features/AgentSetting/StoreUpdater.tsx index ee2c79f8e9..fa890b6a07 100644 --- a/src/features/AgentSetting/StoreUpdater.tsx +++ b/src/features/AgentSetting/StoreUpdater.tsx @@ -1,10 +1,10 @@ 'use client'; -import { ForwardedRef, memo, useImperativeHandle } from 'react'; +import { type ForwardedRef, memo, useImperativeHandle } from 'react'; import { createStoreUpdater } from 'zustand-utils'; -import { AgentSettingsInstance, useAgentSettings } from './hooks/useAgentSettings'; -import { State, useStoreApi } from './store'; +import { type AgentSettingsInstance, useAgentSettings } from './hooks/useAgentSettings'; +import { type State, useStoreApi } from './store'; export interface StoreUpdaterProps extends Partial< diff --git a/src/features/AgentSetting/hooks/useAgentSettings.ts b/src/features/AgentSetting/hooks/useAgentSettings.ts index e52eef8f2a..c103dfe26a 100644 --- a/src/features/AgentSetting/hooks/useAgentSettings.ts +++ b/src/features/AgentSetting/hooks/useAgentSettings.ts @@ -1,7 +1,7 @@ import { useMemo } from 'react'; import { useStoreApi } from '../store'; -import { PublicAction } from '../store/action'; +import { type PublicAction } from '../store/action'; export type AgentSettingsInstance = PublicAction; diff --git a/src/features/AgentSetting/store/action.ts b/src/features/AgentSetting/store/action.ts index 75bdee45ee..9413cfe53a 100644 --- a/src/features/AgentSetting/store/action.ts +++ b/src/features/AgentSetting/store/action.ts @@ -1,29 +1,29 @@ -import { MessageTextChunk } from '@lobechat/fetch-sse'; +import { type MessageTextChunk } from '@lobechat/fetch-sse'; import { chainPickEmoji, chainSummaryAgentName, chainSummaryDescription, chainSummaryTags, } from '@lobechat/prompts'; -import { TraceNameMap, TracePayload, TraceTopicType } from '@lobechat/types'; +import { TraceNameMap, type TracePayload, TraceTopicType } from '@lobechat/types'; import { getSingletonAnalyticsOptional } from '@lobehub/analytics'; import type { PartialDeep } from 'type-fest'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { chatService } from '@/services/chat'; import { globalHelpers } from '@/store/global/helpers'; import { useUserStore } from '@/store/user'; import { systemAgentSelectors } from '@/store/user/slices/settings/selectors'; -import { LobeAgentChatConfig, LobeAgentConfig } from '@/types/agent'; -import { MetaData } from '@/types/meta'; -import { SystemAgentItem } from '@/types/user/settings'; +import { type LobeAgentChatConfig, type LobeAgentConfig } from '@/types/agent'; +import { type MetaData } from '@/types/meta'; +import { type SystemAgentItem } from '@/types/user/settings'; import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; -import { LoadingState, SaveStatus } from '../store/initialState'; -import { State, initialState } from './initialState'; -import { ConfigDispatch, configReducer } from './reducers/config'; -import { MetaDataDispatch, metaDataReducer } from './reducers/meta'; +import { type LoadingState, type SaveStatus } from '../store/initialState'; +import { type State, initialState } from './initialState'; +import { type ConfigDispatch, configReducer } from './reducers/config'; +import { type MetaDataDispatch, metaDataReducer } from './reducers/meta'; export interface PublicAction { /** diff --git a/src/features/AgentSetting/store/index.ts b/src/features/AgentSetting/store/index.ts index 7d72daa0cf..7651757bbd 100644 --- a/src/features/AgentSetting/store/index.ts +++ b/src/features/AgentSetting/store/index.ts @@ -1,12 +1,12 @@ 'use client'; -import { StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApiWithSelector } from '@lobechat/types'; import { createContext } from 'zustand-utils'; import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { Store, store } from './action'; +import { type Store, store } from './action'; export type { State } from './initialState'; diff --git a/src/features/AgentSetting/store/initialState.ts b/src/features/AgentSetting/store/initialState.ts index 9c9b98b38a..3900a32d0e 100644 --- a/src/features/AgentSetting/store/initialState.ts +++ b/src/features/AgentSetting/store/initialState.ts @@ -1,7 +1,7 @@ import { DEFAULT_AGENT_META } from '@/const/meta'; import { DEFAULT_AGENT_CONFIG } from '@/const/settings'; -import { LobeAgentConfig } from '@/types/agent'; -import { MetaData } from '@/types/meta'; +import { type LobeAgentConfig } from '@/types/agent'; +import { type MetaData } from '@/types/meta'; export type LoadingState = Record | string, boolean>; export type SaveStatus = 'idle' | 'saving' | 'saved'; diff --git a/src/features/AgentSetting/store/reducers/config.ts b/src/features/AgentSetting/store/reducers/config.ts index 508eb61ffb..d60057d7a0 100644 --- a/src/features/AgentSetting/store/reducers/config.ts +++ b/src/features/AgentSetting/store/reducers/config.ts @@ -1,7 +1,7 @@ import { produce } from 'immer'; import { DEFAULT_AGENT_CONFIG } from '@/const/settings'; -import { LobeAgentConfig } from '@/types/agent'; +import { type LobeAgentConfig } from '@/types/agent'; import { merge } from '@/utils/merge'; export type ConfigDispatch = diff --git a/src/features/AgentSetting/store/reducers/meta.ts b/src/features/AgentSetting/store/reducers/meta.ts index 66f73bfdde..72e73ca2e6 100644 --- a/src/features/AgentSetting/store/reducers/meta.ts +++ b/src/features/AgentSetting/store/reducers/meta.ts @@ -1,7 +1,7 @@ import { produce } from 'immer'; import { DEFAULT_AGENT_META } from '@/const/meta'; -import { MetaData } from '@/types/meta'; +import { type MetaData } from '@/types/meta'; import { merge } from '@/utils/merge'; export type MetaDataDispatch = { type: 'update'; value: Partial } | { type: 'reset' }; diff --git a/src/features/AgentSetting/store/selectors.ts b/src/features/AgentSetting/store/selectors.ts index faab8958be..1d55264f6b 100644 --- a/src/features/AgentSetting/store/selectors.ts +++ b/src/features/AgentSetting/store/selectors.ts @@ -4,10 +4,10 @@ import { DEFAULT_AGENT_CONFIG, DEFAUTT_AGENT_TTS_CONFIG, } from '@/const/settings'; -import { LobeAgentChatConfig } from '@/types/agent'; +import { type LobeAgentChatConfig } from '@/types/agent'; import { merge } from '@/utils/merge'; -import { Store } from './action'; +import { type Store } from './action'; const chatConfig = (s: Store): LobeAgentChatConfig => s.config.chatConfig || DEFAULT_AGENT_CHAT_CONFIG; diff --git a/src/features/AuthCard/index.tsx b/src/features/AuthCard/index.tsx index 767118f558..02e4dfb687 100644 --- a/src/features/AuthCard/index.tsx +++ b/src/features/AuthCard/index.tsx @@ -1,7 +1,7 @@ 'use client'; -import { Flexbox, FlexboxProps, Text } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { Flexbox, type FlexboxProps, Text } from '@lobehub/ui'; +import { type ReactNode, memo } from 'react'; export interface AuthCardProps extends Omit { footer?: ReactNode; diff --git a/src/features/ChatInput/ActionBar/Knowledge/useControls.tsx b/src/features/ChatInput/ActionBar/Knowledge/useControls.tsx index b223749800..f2f4b01b60 100644 --- a/src/features/ChatInput/ActionBar/Knowledge/useControls.tsx +++ b/src/features/ChatInput/ActionBar/Knowledge/useControls.tsx @@ -1,4 +1,4 @@ -import { Icon, ItemType } from '@lobehub/ui'; +import { Icon, type ItemType } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { ArrowRight, LibraryBig } from 'lucide-react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/ChatInput/ActionBar/STT/browser.tsx b/src/features/ChatInput/ActionBar/STT/browser.tsx index dca6c65a9e..4798609112 100644 --- a/src/features/ChatInput/ActionBar/STT/browser.tsx +++ b/src/features/ChatInput/ActionBar/STT/browser.tsx @@ -1,10 +1,10 @@ import { getMessageError } from '@lobechat/fetch-sse'; -import { ChatMessageError } from '@lobechat/types'; -import { SpeechRecognitionOptions, useSpeechRecognition } from '@lobehub/tts/react'; +import { type ChatMessageError } from '@lobechat/types'; +import { type SpeechRecognitionOptions, useSpeechRecognition } from '@lobehub/tts/react'; import isEqual from 'fast-deep-equal'; import { memo, useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { SWRConfiguration } from 'swr'; +import { type SWRConfiguration } from 'swr'; import { useAgentStore } from '@/store/agent'; import { agentByIdSelectors } from '@/store/agent/selectors'; diff --git a/src/features/ChatInput/ActionBar/STT/common.tsx b/src/features/ChatInput/ActionBar/STT/common.tsx index 5744b138f5..b4cfcf88ef 100644 --- a/src/features/ChatInput/ActionBar/STT/common.tsx +++ b/src/features/ChatInput/ActionBar/STT/common.tsx @@ -1,4 +1,4 @@ -import { ChatMessageError } from '@lobechat/types'; +import { type ChatMessageError } from '@lobechat/types'; import { Alert, Button, Flexbox, Highlighter } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Mic, MicOff } from 'lucide-react'; diff --git a/src/features/ChatInput/ActionBar/STT/openai.tsx b/src/features/ChatInput/ActionBar/STT/openai.tsx index 1ddbbf5215..a109977f0a 100644 --- a/src/features/ChatInput/ActionBar/STT/openai.tsx +++ b/src/features/ChatInput/ActionBar/STT/openai.tsx @@ -1,11 +1,11 @@ import { getMessageError } from '@lobechat/fetch-sse'; -import { ChatMessageError } from '@lobechat/types'; +import { type ChatMessageError } from '@lobechat/types'; import { getRecordMineType } from '@lobehub/tts'; -import { OpenAISTTOptions, useOpenAISTT } from '@lobehub/tts/react'; +import { type OpenAISTTOptions, useOpenAISTT } from '@lobehub/tts/react'; import isEqual from 'fast-deep-equal'; import { memo, useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { SWRConfiguration } from 'swr'; +import { type SWRConfiguration } from 'swr'; import { createHeaderWithOpenAI } from '@/services/_header'; import { API_ENDPOINTS } from '@/services/_url'; diff --git a/src/features/ChatInput/ActionBar/Search/Controls.tsx b/src/features/ChatInput/ActionBar/Search/Controls.tsx index c9cb451560..70c00b8152 100644 --- a/src/features/ChatInput/ActionBar/Search/Controls.tsx +++ b/src/features/ChatInput/ActionBar/Search/Controls.tsx @@ -2,14 +2,14 @@ import { Center, Flexbox, Icon } from '@lobehub/ui'; import { GlobeOffIcon } from '@lobehub/ui/icons'; import { Divider } from 'antd'; import { createStyles } from 'antd-style'; -import { LucideIcon, SparkleIcon } from 'lucide-react'; +import { type LucideIcon, SparkleIcon } from 'lucide-react'; import { memo, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { useAgentStore } from '@/store/agent'; import { agentByIdSelectors, chatConfigByIdSelectors } from '@/store/agent/selectors'; import { aiModelSelectors, aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra'; -import { SearchMode } from '@/types/search'; +import { type SearchMode } from '@/types/search'; import { useAgentId } from '../../hooks/useAgentId'; import { useUpdateAgentConfig } from '../../hooks/useUpdateAgentConfig'; diff --git a/src/features/ChatInput/ActionBar/Search/FunctionCallingModelSelect/index.tsx b/src/features/ChatInput/ActionBar/Search/FunctionCallingModelSelect/index.tsx index f4bb32cf32..a04cba4e3b 100644 --- a/src/features/ChatInput/ActionBar/Search/FunctionCallingModelSelect/index.tsx +++ b/src/features/ChatInput/ActionBar/Search/FunctionCallingModelSelect/index.tsx @@ -1,11 +1,11 @@ -import { Select, SelectProps, TooltipGroup } from '@lobehub/ui'; +import { Select, type SelectProps, TooltipGroup } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo, useMemo } from 'react'; import { ModelItemRender, ProviderItemRender } from '@/components/ModelSelect'; import { useEnabledChatModels } from '@/hooks/useEnabledChatModels'; -import { WorkingModel } from '@/types/agent'; -import { EnabledProviderWithModels } from '@/types/aiProvider'; +import { type WorkingModel } from '@/types/agent'; +import { type EnabledProviderWithModels } from '@/types/aiProvider'; const useStyles = createStyles(({ css, prefixCls }) => ({ select: css` diff --git a/src/features/ChatInput/ActionBar/Token/TokenTagForGroupChat.tsx b/src/features/ChatInput/ActionBar/Token/TokenTagForGroupChat.tsx index 5d9bb3ac64..e6c856e659 100644 --- a/src/features/ChatInput/ActionBar/Token/TokenTagForGroupChat.tsx +++ b/src/features/ChatInput/ActionBar/Token/TokenTagForGroupChat.tsx @@ -1,4 +1,4 @@ -import { GroupMemberInfo, groupChatPrompts, groupSupervisorPrompts } from '@lobechat/prompts'; +import { type GroupMemberInfo, groupChatPrompts, groupSupervisorPrompts } from '@lobechat/prompts'; import { Center, Flexbox, Tooltip } from '@lobehub/ui'; import { TokenTag } from '@lobehub/ui/chat'; import { useTheme } from 'antd-style'; diff --git a/src/features/ChatInput/ActionBar/Token/index.tsx b/src/features/ChatInput/ActionBar/Token/index.tsx index 19ad6fe0a0..c0f46e0426 100644 --- a/src/features/ChatInput/ActionBar/Token/index.tsx +++ b/src/features/ChatInput/ActionBar/Token/index.tsx @@ -1,5 +1,5 @@ import dynamic from 'next/dynamic'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useModelHasContextWindowToken } from '@/hooks/useModelHasContextWindowToken'; import { useChatStore } from '@/store/chat'; diff --git a/src/features/ChatInput/ActionBar/Tools/KlavisServerItem.tsx b/src/features/ChatInput/ActionBar/Tools/KlavisServerItem.tsx index 074adb32fb..2dc0600b2c 100644 --- a/src/features/ChatInput/ActionBar/Tools/KlavisServerItem.tsx +++ b/src/features/ChatInput/ActionBar/Tools/KlavisServerItem.tsx @@ -7,7 +7,7 @@ import { useTranslation } from 'react-i18next'; import { useAgentStore } from '@/store/agent'; import { agentSelectors } from '@/store/agent/selectors'; import { useToolStore } from '@/store/tool'; -import { KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; +import { type KlavisServer, KlavisServerStatus } from '@/store/tool/slices/klavisStore'; import { useUserStore } from '@/store/user'; import { userProfileSelectors } from '@/store/user/selectors'; diff --git a/src/features/ChatInput/ActionBar/Tools/ToolItem.tsx b/src/features/ChatInput/ActionBar/Tools/ToolItem.tsx index 6c06f7f14e..0cd0535d1f 100644 --- a/src/features/ChatInput/ActionBar/Tools/ToolItem.tsx +++ b/src/features/ChatInput/ActionBar/Tools/ToolItem.tsx @@ -5,7 +5,7 @@ import PluginTag from '@/components/Plugins/PluginTag'; import { useToolStore } from '@/store/tool'; import { customPluginSelectors } from '@/store/tool/selectors'; -import CheckboxItem, { CheckboxItemProps } from '../components/CheckbokWithLoading'; +import CheckboxItem, { type CheckboxItemProps } from '../components/CheckbokWithLoading'; const ToolItem = memo(({ id, onUpdate, label, checked }) => { const isCustom = useToolStore((s) => customPluginSelectors.isCustomPlugin(id)(s)); diff --git a/src/features/ChatInput/ActionBar/Tools/useControls.tsx b/src/features/ChatInput/ActionBar/Tools/useControls.tsx index 4dea8cffde..0f91373fb2 100644 --- a/src/features/ChatInput/ActionBar/Tools/useControls.tsx +++ b/src/features/ChatInput/ActionBar/Tools/useControls.tsx @@ -1,5 +1,5 @@ -import { KLAVIS_SERVER_TYPES, KlavisServerType } from '@lobechat/const'; -import { Avatar, Flexbox, Icon, Image, ItemType } from '@lobehub/ui'; +import { KLAVIS_SERVER_TYPES, type KlavisServerType } from '@lobechat/const'; +import { Avatar, Flexbox, Icon, Image, type ItemType } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { ArrowRight, Store, ToyBrick } from 'lucide-react'; diff --git a/src/features/ChatInput/ActionBar/Upload/ServerMode.tsx b/src/features/ChatInput/ActionBar/Upload/ServerMode.tsx index 4eaca9760c..7070d1c38d 100644 --- a/src/features/ChatInput/ActionBar/Upload/ServerMode.tsx +++ b/src/features/ChatInput/ActionBar/Upload/ServerMode.tsx @@ -1,5 +1,5 @@ import { validateVideoFileSize } from '@lobechat/utils/client'; -import { MenuProps, Tooltip } from '@lobehub/ui'; +import { type MenuProps, Tooltip } from '@lobehub/ui'; import { Upload } from 'antd'; import { css, cx } from 'antd-style'; import { FileUp, FolderUp, ImageUp, Paperclip } from 'lucide-react'; diff --git a/src/features/ChatInput/ActionBar/components/Action.tsx b/src/features/ChatInput/ActionBar/components/Action.tsx index 05d02f4cd2..f1e053cdb4 100644 --- a/src/features/ChatInput/ActionBar/components/Action.tsx +++ b/src/features/ChatInput/ActionBar/components/Action.tsx @@ -8,8 +8,8 @@ import useMergeState from 'use-merge-value'; import { useServerConfigStore } from '@/store/serverConfig'; import { useActionBarContext } from '../context'; -import ActionDropdown, { ActionDropdownProps } from './ActionDropdown'; -import ActionPopover, { ActionPopoverProps } from './ActionPopover'; +import ActionDropdown, { type ActionDropdownProps } from './ActionDropdown'; +import ActionPopover, { type ActionPopoverProps } from './ActionPopover'; interface ActionProps extends Omit { dropdown?: ActionDropdownProps; diff --git a/src/features/ChatInput/ActionBar/components/ActionDropdown.tsx b/src/features/ChatInput/ActionBar/components/ActionDropdown.tsx index 8d2f905edb..0ab238ddef 100644 --- a/src/features/ChatInput/ActionBar/components/ActionDropdown.tsx +++ b/src/features/ChatInput/ActionBar/components/ActionDropdown.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Dropdown, DropdownProps } from '@lobehub/ui'; +import { Dropdown, type DropdownProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/features/ChatInput/ActionBar/components/ActionPopover.tsx b/src/features/ChatInput/ActionBar/components/ActionPopover.tsx index bc72cb7316..0427cccdeb 100644 --- a/src/features/ChatInput/ActionBar/components/ActionPopover.tsx +++ b/src/features/ChatInput/ActionBar/components/ActionPopover.tsx @@ -1,9 +1,9 @@ 'use client'; import { Flexbox } from '@lobehub/ui'; -import { Popover, PopoverProps } from 'antd'; +import { Popover, type PopoverProps } from 'antd'; import { createStyles } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import UpdateLoading from '@/components/Loading/UpdateLoading'; import { useIsMobile } from '@/hooks/useIsMobile'; diff --git a/src/features/ChatInput/ActionBar/components/CheckbokWithLoading.tsx b/src/features/ChatInput/ActionBar/components/CheckbokWithLoading.tsx index 7e6c04f6e3..a6bf57aac3 100644 --- a/src/features/ChatInput/ActionBar/components/CheckbokWithLoading.tsx +++ b/src/features/ChatInput/ActionBar/components/CheckbokWithLoading.tsx @@ -1,7 +1,7 @@ import { Center, Flexbox, Icon } from '@lobehub/ui'; import { Checkbox } from 'antd'; import { Loader2 } from 'lucide-react'; -import { ReactNode, memo, useState } from 'react'; +import { type ReactNode, memo, useState } from 'react'; export interface CheckboxItemProps { checked?: boolean; diff --git a/src/features/ChatInput/ActionBar/index.tsx b/src/features/ChatInput/ActionBar/index.tsx index e967460cb6..252c066b4c 100644 --- a/src/features/ChatInput/ActionBar/index.tsx +++ b/src/features/ChatInput/ActionBar/index.tsx @@ -6,7 +6,7 @@ import { systemStatusSelectors } from '@/store/global/selectors'; import { useUserStore } from '@/store/user'; import { labPreferSelectors } from '@/store/user/slices/preference/selectors'; -import { ActionKeys, actionMap } from '../ActionBar/config'; +import { type ActionKeys, actionMap } from '../ActionBar/config'; import { useChatInputStore } from '../store'; import { ActionBarContext, type DropdownPlacement } from './context'; diff --git a/src/features/ChatInput/ChatInputProvider.tsx b/src/features/ChatInput/ChatInputProvider.tsx index a0eee10524..b038ddb837 100644 --- a/src/features/ChatInput/ChatInputProvider.tsx +++ b/src/features/ChatInput/ChatInputProvider.tsx @@ -1,7 +1,7 @@ import { useEditor } from '@lobehub/editor/react'; -import { ReactNode, memo, useRef } from 'react'; +import { type ReactNode, memo, useRef } from 'react'; -import StoreUpdater, { StoreUpdaterProps } from './StoreUpdater'; +import StoreUpdater, { type StoreUpdaterProps } from './StoreUpdater'; import { Provider, createStore } from './store'; interface ChatInputProviderProps extends StoreUpdaterProps { diff --git a/src/features/ChatInput/Desktop/ContextContainer/ContextItem/Content.tsx b/src/features/ChatInput/Desktop/ContextContainer/ContextItem/Content.tsx index 6a210cfd8d..0d1cf75cf6 100644 --- a/src/features/ChatInput/Desktop/ContextContainer/ContextItem/Content.tsx +++ b/src/features/ChatInput/Desktop/ContextContainer/ContextItem/Content.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import FileIcon from '@/components/FileIcon'; -import { UploadFileItem } from '@/types/files/upload'; +import { type UploadFileItem } from '@/types/files/upload'; const useStyles = createStyles(({ css }) => ({ image: css` diff --git a/src/features/ChatInput/Desktop/ContextContainer/ContextItem/index.tsx b/src/features/ChatInput/Desktop/ContextContainer/ContextItem/index.tsx index eea1208b19..2af4e9e969 100644 --- a/src/features/ChatInput/Desktop/ContextContainer/ContextItem/index.tsx +++ b/src/features/ChatInput/Desktop/ContextContainer/ContextItem/index.tsx @@ -4,7 +4,7 @@ import { createStyles } from 'antd-style'; import { memo, useState } from 'react'; import { useFileStore } from '@/store/file'; -import { UPLOAD_STATUS_SET, UploadFileItem } from '@/types/files/upload'; +import { UPLOAD_STATUS_SET, type UploadFileItem } from '@/types/files/upload'; import Content from './Content'; import FilePreviewModal from './FilePreviewModal'; diff --git a/src/features/ChatInput/Desktop/ContextContainer/SelectionItem.tsx b/src/features/ChatInput/Desktop/ContextContainer/SelectionItem.tsx index f710d91f97..e855dadd03 100644 --- a/src/features/ChatInput/Desktop/ContextContainer/SelectionItem.tsx +++ b/src/features/ChatInput/Desktop/ContextContainer/SelectionItem.tsx @@ -1,4 +1,4 @@ -import { ChatContextContent } from '@lobechat/types'; +import { type ChatContextContent } from '@lobechat/types'; import { Tag, Tooltip } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { TextIcon } from 'lucide-react'; diff --git a/src/features/ChatInput/Desktop/FilePreview/FileItem/Content.tsx b/src/features/ChatInput/Desktop/FilePreview/FileItem/Content.tsx index f1f8c0143b..507ffbadf4 100644 --- a/src/features/ChatInput/Desktop/FilePreview/FileItem/Content.tsx +++ b/src/features/ChatInput/Desktop/FilePreview/FileItem/Content.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import FileIcon from '@/components/FileIcon'; -import { UploadFileItem } from '@/types/files/upload'; +import { type UploadFileItem } from '@/types/files/upload'; const useStyles = createStyles(({ css }) => ({ image: css` diff --git a/src/features/ChatInput/Desktop/FilePreview/FileItem/index.tsx b/src/features/ChatInput/Desktop/FilePreview/FileItem/index.tsx index 7892b9ab7f..e27b24e269 100644 --- a/src/features/ChatInput/Desktop/FilePreview/FileItem/index.tsx +++ b/src/features/ChatInput/Desktop/FilePreview/FileItem/index.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useFileStore } from '@/store/file'; -import { UploadFileItem } from '@/types/files/upload'; +import { type UploadFileItem } from '@/types/files/upload'; import UploadDetail from '../../../components/UploadDetail'; import Content from './Content'; diff --git a/src/features/ChatInput/Desktop/index.tsx b/src/features/ChatInput/Desktop/index.tsx index 62082afacf..395b1fa6f6 100644 --- a/src/features/ChatInput/Desktop/index.tsx +++ b/src/features/ChatInput/Desktop/index.tsx @@ -1,9 +1,9 @@ 'use client'; -import { ChatInput, ChatInputActionBar, ChatInputProps } from '@lobehub/editor/react'; +import { ChatInput, ChatInputActionBar, type ChatInputProps } from '@lobehub/editor/react'; import { Center, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo, useEffect } from 'react'; +import { type ReactNode, memo, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { useChatInputStore } from '@/features/ChatInput/store'; diff --git a/src/features/ChatInput/InputEditor/useSlashItems.tsx b/src/features/ChatInput/InputEditor/useSlashItems.tsx index afcbc85a97..0189606c18 100644 --- a/src/features/ChatInput/InputEditor/useSlashItems.tsx +++ b/src/features/ChatInput/InputEditor/useSlashItems.tsx @@ -3,7 +3,7 @@ import { INSERT_HORIZONTAL_RULE_COMMAND, INSERT_MATH_COMMAND, INSERT_TABLE_COMMAND, - SlashOptions, + type SlashOptions, } from '@lobehub/editor'; import { Text } from '@lobehub/ui'; import { diff --git a/src/features/ChatInput/Mobile/FilePreview/FileItem/File.tsx b/src/features/ChatInput/Mobile/FilePreview/FileItem/File.tsx index 5cf0de16c1..221446a600 100644 --- a/src/features/ChatInput/Mobile/FilePreview/FileItem/File.tsx +++ b/src/features/ChatInput/Mobile/FilePreview/FileItem/File.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import FileIcon from '@/components/FileIcon'; import UploadDetail from '@/features/ChatInput/components/UploadDetail'; -import { UploadFileItem } from '@/types/files'; +import { type UploadFileItem } from '@/types/files'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/features/ChatInput/Mobile/FilePreview/FileItem/index.tsx b/src/features/ChatInput/Mobile/FilePreview/FileItem/index.tsx index e70a952ba3..1d6410e71e 100644 --- a/src/features/ChatInput/Mobile/FilePreview/FileItem/index.tsx +++ b/src/features/ChatInput/Mobile/FilePreview/FileItem/index.tsx @@ -1,7 +1,7 @@ -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { useFileStore } from '@/store/file'; -import { UploadFileItem } from '@/types/files'; +import { type UploadFileItem } from '@/types/files'; import File from './File'; import Image from './Image'; diff --git a/src/features/ChatInput/SendArea/index.tsx b/src/features/ChatInput/SendArea/index.tsx index a4bbc29bf0..fa438285ce 100644 --- a/src/features/ChatInput/SendArea/index.tsx +++ b/src/features/ChatInput/SendArea/index.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { memo, useMemo } from 'react'; -import { ActionKey, actionMap } from '../ActionBar/config'; +import { type ActionKey, actionMap } from '../ActionBar/config'; import { useChatInputStore } from '../store'; import ExpandButton from './ExpandButton'; import SendButton from './SendButton'; diff --git a/src/features/ChatInput/StoreUpdater.tsx b/src/features/ChatInput/StoreUpdater.tsx index 5aae13a2aa..7bdbdfb7d8 100644 --- a/src/features/ChatInput/StoreUpdater.tsx +++ b/src/features/ChatInput/StoreUpdater.tsx @@ -1,10 +1,10 @@ 'use client'; -import { ForwardedRef, memo, useImperativeHandle } from 'react'; +import { type ForwardedRef, memo, useImperativeHandle } from 'react'; import { createStoreUpdater } from 'zustand-utils'; -import { ChatInputEditor, useChatInputEditor } from './hooks/useChatInputEditor'; -import { PublicState, useStoreApi } from './store'; +import { type ChatInputEditor, useChatInputEditor } from './hooks/useChatInputEditor'; +import { type PublicState, useStoreApi } from './store'; export interface StoreUpdaterProps extends Partial { chatInputEditorRef?: ForwardedRef; diff --git a/src/features/ChatInput/components/UploadDetail/UploadStatus.tsx b/src/features/ChatInput/components/UploadDetail/UploadStatus.tsx index 09a4408e94..319372238e 100644 --- a/src/features/ChatInput/components/UploadDetail/UploadStatus.tsx +++ b/src/features/ChatInput/components/UploadDetail/UploadStatus.tsx @@ -6,7 +6,7 @@ import { Loader2Icon } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { FileUploadState, FileUploadStatus } from '@/types/files/upload'; +import { type FileUploadState, type FileUploadStatus } from '@/types/files/upload'; import { formatSize } from '@/utils/format'; interface UploadStateProps { diff --git a/src/features/ChatInput/components/UploadDetail/index.tsx b/src/features/ChatInput/components/UploadDetail/index.tsx index 1b2d9fd5d5..436c95e0bb 100644 --- a/src/features/ChatInput/components/UploadDetail/index.tsx +++ b/src/features/ChatInput/components/UploadDetail/index.tsx @@ -4,8 +4,8 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import FileParsingStatus from '@/components/FileParsingStatus'; -import { FileParsingTask } from '@/types/asyncTask'; -import { FileUploadState, FileUploadStatus } from '@/types/files'; +import { type FileParsingTask } from '@/types/asyncTask'; +import { type FileUploadState, type FileUploadStatus } from '@/types/files'; import UploadStatus from './UploadStatus'; diff --git a/src/features/ChatInput/hooks/useChatInputEditor.ts b/src/features/ChatInput/hooks/useChatInputEditor.ts index 9ba25d7dea..0f28e70814 100644 --- a/src/features/ChatInput/hooks/useChatInputEditor.ts +++ b/src/features/ChatInput/hooks/useChatInputEditor.ts @@ -1,4 +1,4 @@ -import { IEditor } from '@lobehub/editor'; +import { type IEditor } from '@lobehub/editor'; import { useMemo } from 'react'; import { useChatInputStore } from '@/features/ChatInput/store'; diff --git a/src/features/ChatInput/hooks/useUpdateAgentConfig.ts b/src/features/ChatInput/hooks/useUpdateAgentConfig.ts index 486001bbb8..cf09258c27 100644 --- a/src/features/ChatInput/hooks/useUpdateAgentConfig.ts +++ b/src/features/ChatInput/hooks/useUpdateAgentConfig.ts @@ -4,7 +4,7 @@ import { useCallback } from 'react'; import type { PartialDeep } from 'type-fest'; import { useAgentStore } from '@/store/agent'; -import { LobeAgentChatConfig, LobeAgentConfig } from '@/types/agent'; +import { type LobeAgentChatConfig, type LobeAgentConfig } from '@/types/agent'; import { useAgentId } from './useAgentId'; diff --git a/src/features/ChatInput/store/action.ts b/src/features/ChatInput/store/action.ts index 7c86b5bf47..d410cf4fa2 100644 --- a/src/features/ChatInput/store/action.ts +++ b/src/features/ChatInput/store/action.ts @@ -1,6 +1,6 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { PublicState, State, initialState } from './initialState'; +import { type PublicState, type State, initialState } from './initialState'; export interface Action { getJSONState: () => any; diff --git a/src/features/ChatInput/store/index.ts b/src/features/ChatInput/store/index.ts index bb36e75169..033887e1cf 100644 --- a/src/features/ChatInput/store/index.ts +++ b/src/features/ChatInput/store/index.ts @@ -1,13 +1,13 @@ 'use client'; -import { StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApiWithSelector } from '@lobechat/types'; import { createContext } from 'zustand-utils'; import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { Store, store } from './action'; -import { State } from './initialState'; +import { type Store, store } from './action'; +import { type State } from './initialState'; export type { PublicState, State } from './initialState'; diff --git a/src/features/ChatInput/store/initialState.ts b/src/features/ChatInput/store/initialState.ts index 1c701c85c5..010a54e82e 100644 --- a/src/features/ChatInput/store/initialState.ts +++ b/src/features/ChatInput/store/initialState.ts @@ -1,8 +1,8 @@ -import { IEditor, SlashOptions } from '@lobehub/editor'; +import { type IEditor, type SlashOptions } from '@lobehub/editor'; import type { ChatInputProps } from '@lobehub/editor/react'; import type { MenuProps } from '@lobehub/ui'; -import { ActionKeys } from '@/features/ChatInput'; +import { type ActionKeys } from '@/features/ChatInput'; export type SendButtonHandler = (params: { clearContent: () => void; diff --git a/src/features/ChatInput/store/selectors.ts b/src/features/ChatInput/store/selectors.ts index c7cd30c122..076a978e75 100644 --- a/src/features/ChatInput/store/selectors.ts +++ b/src/features/ChatInput/store/selectors.ts @@ -1,4 +1,4 @@ -import { SendButtonProps, State, initialSendButtonState } from './initialState'; +import { type SendButtonProps, type State, initialSendButtonState } from './initialState'; export const selectors = { sendButtonProps: (s: State): SendButtonProps => s.sendButtonProps || initialSendButtonState, diff --git a/src/features/CommandMenu/CommandMenuContext.tsx b/src/features/CommandMenu/CommandMenuContext.tsx index 9ea6eed679..6f370534d0 100644 --- a/src/features/CommandMenu/CommandMenuContext.tsx +++ b/src/features/CommandMenu/CommandMenuContext.tsx @@ -3,7 +3,7 @@ import { type Dispatch, type ReactNode, type SetStateAction, createContext, useContext, useEffect, useState } from 'react'; import type { ValidSearchType } from './utils/queryParser'; -import { MenuContext, PageType } from './types'; +import { type MenuContext, type PageType } from './types'; import { detectContext } from './utils/context'; interface CommandMenuContextValue { diff --git a/src/features/Conversation/ChatItem/ChatItem.tsx b/src/features/Conversation/ChatItem/ChatItem.tsx index 5814fa4340..4f4684f852 100644 --- a/src/features/Conversation/ChatItem/ChatItem.tsx +++ b/src/features/Conversation/ChatItem/ChatItem.tsx @@ -9,7 +9,7 @@ import ErrorContent from './components/ErrorContent'; import MessageContent from './components/MessageContent'; import Title from './components/Title'; import { useStyles } from './style'; -import { ChatItemProps } from './type'; +import { type ChatItemProps } from './type'; const ChatItem = memo( ({ diff --git a/src/features/Conversation/ChatItem/components/Actions.tsx b/src/features/Conversation/ChatItem/components/Actions.tsx index 1544ff3781..f422c9d22b 100644 --- a/src/features/Conversation/ChatItem/components/Actions.tsx +++ b/src/features/Conversation/ChatItem/components/Actions.tsx @@ -1,7 +1,7 @@ import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; -import { ChatItemProps } from '../type'; +import { type ChatItemProps } from '../type'; export interface ActionsProps { actions: ChatItemProps['actions']; diff --git a/src/features/Conversation/ChatItem/components/ErrorContent.tsx b/src/features/Conversation/ChatItem/components/ErrorContent.tsx index c34e7ccfa5..b83f7e6ee7 100644 --- a/src/features/Conversation/ChatItem/components/ErrorContent.tsx +++ b/src/features/Conversation/ChatItem/components/ErrorContent.tsx @@ -3,7 +3,7 @@ import { Suspense, memo } from 'react'; import { useConversationStore } from '@/features/Conversation'; -import { ChatItemProps } from '../type'; +import { type ChatItemProps } from '../type'; export interface ErrorContentProps { customErrorRender?: ChatItemProps['customErrorRender']; diff --git a/src/features/Conversation/ChatItem/components/MessageContent/Typobar.tsx b/src/features/Conversation/ChatItem/components/MessageContent/Typobar.tsx index cb6500bcf8..2898a332a8 100644 --- a/src/features/Conversation/ChatItem/components/MessageContent/Typobar.tsx +++ b/src/features/Conversation/ChatItem/components/MessageContent/Typobar.tsx @@ -1,4 +1,4 @@ -import { HotkeyEnum, IEditor, getHotkeyById } from '@lobehub/editor'; +import { HotkeyEnum, type IEditor, getHotkeyById } from '@lobehub/editor'; import { useEditorState } from '@lobehub/editor/react'; import { ChatInputActionBar, diff --git a/src/features/Conversation/ChatItem/components/MessageContent/index.tsx b/src/features/Conversation/ChatItem/components/MessageContent/index.tsx index 3305e57e90..e5503fb9b5 100644 --- a/src/features/Conversation/ChatItem/components/MessageContent/index.tsx +++ b/src/features/Conversation/ChatItem/components/MessageContent/index.tsx @@ -5,7 +5,7 @@ import { type ReactNode, Suspense, memo, useCallback } from 'react'; import { useConversationStore } from '@/features/Conversation/store'; -import { ChatItemProps } from '../../type'; +import { type ChatItemProps } from '../../type'; const EditableModal = dynamic(() => import('./EditableModal'), { ssr: false }); diff --git a/src/features/Conversation/ChatItem/components/Title.tsx b/src/features/Conversation/ChatItem/components/Title.tsx index 5ee33d9923..34aa262a69 100644 --- a/src/features/Conversation/ChatItem/components/Title.tsx +++ b/src/features/Conversation/ChatItem/components/Title.tsx @@ -2,7 +2,7 @@ import { Text } from '@lobehub/ui'; import dayjs from 'dayjs'; import { memo } from 'react'; -import { ChatItemProps } from '../type'; +import { type ChatItemProps } from '../type'; export interface TitleProps { avatar: ChatItemProps['avatar']; diff --git a/src/features/Conversation/ChatItem/type.ts b/src/features/Conversation/ChatItem/type.ts index 35e34d0992..d7c7a200f7 100644 --- a/src/features/Conversation/ChatItem/type.ts +++ b/src/features/Conversation/ChatItem/type.ts @@ -1,6 +1,6 @@ -import { AlertProps, AvatarProps, DivProps, FlexboxProps } from '@lobehub/ui'; -import { EditableMessageProps, MetaData } from '@lobehub/ui/chat'; -import { ReactNode } from 'react'; +import { type AlertProps, type AvatarProps, type DivProps, type FlexboxProps } from '@lobehub/ui'; +import { type EditableMessageProps, type MetaData } from '@lobehub/ui/chat'; +import { type ReactNode } from 'react'; export interface ChatItemProps extends Omit { aboveMessage?: ReactNode; diff --git a/src/features/Conversation/ChatList/components/VirtualizedList.tsx b/src/features/Conversation/ChatList/components/VirtualizedList.tsx index c79477d431..c051323c62 100644 --- a/src/features/Conversation/ChatList/components/VirtualizedList.tsx +++ b/src/features/Conversation/ChatList/components/VirtualizedList.tsx @@ -1,8 +1,8 @@ 'use client'; import isEqual from 'fast-deep-equal'; -import { ReactElement, type ReactNode, memo, useCallback, useEffect, useRef } from 'react'; -import { VList, VListHandle } from 'virtua'; +import { type ReactElement, type ReactNode, memo, useCallback, useEffect, useRef } from 'react'; +import { VList, type VListHandle } from 'virtua'; import WideScreenContainer from '../../../WideScreenContainer'; import { useConversationStore, virtuaListSelectors } from '../../store'; diff --git a/src/features/Conversation/Error/BaseErrorForm.tsx b/src/features/Conversation/Error/BaseErrorForm.tsx index 06bb132e5f..20ae6f2983 100644 --- a/src/features/Conversation/Error/BaseErrorForm.tsx +++ b/src/features/Conversation/Error/BaseErrorForm.tsx @@ -1,5 +1,5 @@ import { Block, Flexbox, Text } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; interface BaseErrorFormProps { action?: ReactNode; diff --git a/src/features/Conversation/Error/ChatInvalidApiKey.tsx b/src/features/Conversation/Error/ChatInvalidApiKey.tsx index 36e55485e4..1ab338a082 100644 --- a/src/features/Conversation/Error/ChatInvalidApiKey.tsx +++ b/src/features/Conversation/Error/ChatInvalidApiKey.tsx @@ -7,7 +7,7 @@ import { useNavigate } from 'react-router-dom'; import urlJoin from 'url-join'; import { useProviderName } from '@/hooks/useProviderName'; -import { GlobalLLMProviderKey } from '@/types/user/settings/modelProvider'; +import { type GlobalLLMProviderKey } from '@/types/user/settings/modelProvider'; import { useConversationStore } from '../store'; import BaseErrorForm from './BaseErrorForm'; diff --git a/src/features/Conversation/Error/OllamaBizError/index.tsx b/src/features/Conversation/Error/OllamaBizError/index.tsx index c662776259..1ad4857ef8 100644 --- a/src/features/Conversation/Error/OllamaBizError/index.tsx +++ b/src/features/Conversation/Error/OllamaBizError/index.tsx @@ -1,5 +1,5 @@ -import { ChatMessageError } from '@lobechat/types'; -import { AlertProps , Skeleton } from '@lobehub/ui'; +import { type ChatMessageError } from '@lobechat/types'; +import { type AlertProps , Skeleton } from '@lobehub/ui'; import dynamic from 'next/dynamic'; import { memo } from 'react'; diff --git a/src/features/Conversation/Error/index.tsx b/src/features/Conversation/Error/index.tsx index b4c634ff60..c4e917285e 100644 --- a/src/features/Conversation/Error/index.tsx +++ b/src/features/Conversation/Error/index.tsx @@ -1,7 +1,7 @@ -import { AgentRuntimeErrorType, ILobeAgentRuntimeErrorType } from '@lobechat/model-runtime'; -import { ChatErrorType, ChatMessageError, ErrorType } from '@lobechat/types'; -import { IPluginErrorType } from '@lobehub/chat-plugin-sdk'; -import { AlertProps, Block, Highlighter, Skeleton } from '@lobehub/ui'; +import { AgentRuntimeErrorType, type ILobeAgentRuntimeErrorType } from '@lobechat/model-runtime'; +import { ChatErrorType, type ChatMessageError, type ErrorType } from '@lobechat/types'; +import { type IPluginErrorType } from '@lobehub/chat-plugin-sdk'; +import { type AlertProps, Block, Highlighter, Skeleton } from '@lobehub/ui'; import dynamic from 'next/dynamic'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/Conversation/Error/style.tsx b/src/features/Conversation/Error/style.tsx index c72a2563b6..429aac5e4b 100644 --- a/src/features/Conversation/Error/style.tsx +++ b/src/features/Conversation/Error/style.tsx @@ -1,6 +1,6 @@ -import { Avatar, Center, CenterProps, Flexbox } from '@lobehub/ui'; +import { Avatar, Center, type CenterProps, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; export const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/features/Conversation/Markdown/index.tsx b/src/features/Conversation/Markdown/index.tsx index 3c52e66eaa..44dc99a02d 100644 --- a/src/features/Conversation/Markdown/index.tsx +++ b/src/features/Conversation/Markdown/index.tsx @@ -1,4 +1,4 @@ -import { Markdown, MarkdownProps } from '@lobehub/ui'; +import { Markdown, type MarkdownProps } from '@lobehub/ui'; import { memo } from 'react'; import { useUserStore } from '@/store/user'; diff --git a/src/features/Conversation/Markdown/plugins/LobeArtifact/Render/index.tsx b/src/features/Conversation/Markdown/plugins/LobeArtifact/Render/index.tsx index 482e54f4a6..43a527e04f 100644 --- a/src/features/Conversation/Markdown/plugins/LobeArtifact/Render/index.tsx +++ b/src/features/Conversation/Markdown/plugins/LobeArtifact/Render/index.tsx @@ -8,7 +8,7 @@ import { useChatStore } from '@/store/chat'; import { chatPortalSelectors, messageStateSelectors } from '@/store/chat/selectors'; import { dotLoading } from '@/styles/loading'; -import { MarkdownElementProps } from '../../type'; +import { type MarkdownElementProps } from '../../type'; import ArtifactIcon from './Icon'; const useStyles = createStyles(({ css, token, isDarkMode }) => ({ diff --git a/src/features/Conversation/Markdown/plugins/LobeArtifact/index.ts b/src/features/Conversation/Markdown/plugins/LobeArtifact/index.ts index 5adbcaa4d6..1f06fb5301 100644 --- a/src/features/Conversation/Markdown/plugins/LobeArtifact/index.ts +++ b/src/features/Conversation/Markdown/plugins/LobeArtifact/index.ts @@ -1,8 +1,8 @@ -import { FC } from 'react'; +import { type FC } from 'react'; import { ARTIFACT_TAG } from '@/const/plugin'; -import { MarkdownElement, MarkdownElementProps } from '../type'; +import { type MarkdownElement, type MarkdownElementProps } from '../type'; import Component from './Render'; import rehypePlugin from './rehypePlugin'; diff --git a/src/features/Conversation/Markdown/plugins/LobeThinking/Render.tsx b/src/features/Conversation/Markdown/plugins/LobeThinking/Render.tsx index d173e13f1b..78e1627db5 100644 --- a/src/features/Conversation/Markdown/plugins/LobeThinking/Render.tsx +++ b/src/features/Conversation/Markdown/plugins/LobeThinking/Render.tsx @@ -6,7 +6,7 @@ import { useUserStore } from '@/store/user'; import { userGeneralSettingsSelectors } from '@/store/user/selectors'; import { dataSelectors, useConversationStore } from '../../../store'; -import { MarkdownElementProps } from '../type'; +import { type MarkdownElementProps } from '../type'; import { isTagClosed } from '../utils'; const Render = memo(({ children, id }) => { diff --git a/src/features/Conversation/Markdown/plugins/LobeThinking/index.ts b/src/features/Conversation/Markdown/plugins/LobeThinking/index.ts index 7ff7a7a786..95eb9006a4 100644 --- a/src/features/Conversation/Markdown/plugins/LobeThinking/index.ts +++ b/src/features/Conversation/Markdown/plugins/LobeThinking/index.ts @@ -1,7 +1,7 @@ import { ARTIFACT_THINKING_TAG } from '@/const/plugin'; import { createRemarkCustomTagPlugin } from '../remarkPlugins/createRemarkCustomTagPlugin'; -import { MarkdownElement } from '../type'; +import { type MarkdownElement } from '../type'; import Component from './Render'; const LobeThinkingElement: MarkdownElement = { diff --git a/src/features/Conversation/Markdown/plugins/LocalFile/Render/index.tsx b/src/features/Conversation/Markdown/plugins/LocalFile/Render/index.tsx index 48916b3783..79eadb91ad 100644 --- a/src/features/Conversation/Markdown/plugins/LocalFile/Render/index.tsx +++ b/src/features/Conversation/Markdown/plugins/LocalFile/Render/index.tsx @@ -3,7 +3,7 @@ import React, { memo } from 'react'; import { LocalFile } from '@/features/LocalFile'; -import { MarkdownElementProps } from '../../type'; +import { type MarkdownElementProps } from '../../type'; interface LocalFileProps { isDirectory: boolean; diff --git a/src/features/Conversation/Markdown/plugins/LocalFile/index.ts b/src/features/Conversation/Markdown/plugins/LocalFile/index.ts index cd3f9075f5..deb4f4137c 100644 --- a/src/features/Conversation/Markdown/plugins/LocalFile/index.ts +++ b/src/features/Conversation/Markdown/plugins/LocalFile/index.ts @@ -1,9 +1,9 @@ -import { FC } from 'react'; +import { type FC } from 'react'; import { LOCAL_FILE_TAG } from '@/const/plugin'; import { createRemarkSelfClosingTagPlugin } from '../remarkPlugins/createRemarkSelfClosingTagPlugin'; -import { MarkdownElement, MarkdownElementProps } from '../type'; +import { type MarkdownElement, type MarkdownElementProps } from '../type'; import RenderComponent from './Render'; // 定义此元素的标签名 diff --git a/src/features/Conversation/Markdown/plugins/Mention/Render.tsx b/src/features/Conversation/Markdown/plugins/Mention/Render.tsx index 9c3e277152..4238fdac0f 100644 --- a/src/features/Conversation/Markdown/plugins/Mention/Render.tsx +++ b/src/features/Conversation/Markdown/plugins/Mention/Render.tsx @@ -11,7 +11,7 @@ import { DEFAULT_AVATAR } from '@/const/index'; import { useSessionStore } from '@/store/session'; import { sessionSelectors } from '@/store/session/selectors'; -import { MarkdownElementProps } from '../type'; +import { type MarkdownElementProps } from '../type'; const useStyles = createStyles(({ css, token }) => ({ mention: css` diff --git a/src/features/Conversation/Markdown/plugins/Mention/index.ts b/src/features/Conversation/Markdown/plugins/Mention/index.ts index 706f177610..2ee6d4f6e3 100644 --- a/src/features/Conversation/Markdown/plugins/Mention/index.ts +++ b/src/features/Conversation/Markdown/plugins/Mention/index.ts @@ -1,7 +1,7 @@ import { MENTION_TAG } from '@/const/plugin'; import { createRemarkSelfClosingTagPlugin } from '../remarkPlugins/createRemarkSelfClosingTagPlugin'; -import { MarkdownElement } from '../type'; +import { type MarkdownElement } from '../type'; import Component from './Render'; const Mention: MarkdownElement = { diff --git a/src/features/Conversation/Markdown/plugins/Thinking/Render.tsx b/src/features/Conversation/Markdown/plugins/Thinking/Render.tsx index 23ae3a0b79..2284e8f9ad 100644 --- a/src/features/Conversation/Markdown/plugins/Thinking/Render.tsx +++ b/src/features/Conversation/Markdown/plugins/Thinking/Render.tsx @@ -5,7 +5,7 @@ import { useUserStore } from '@/store/user'; import { userGeneralSettingsSelectors } from '@/store/user/selectors'; import { dataSelectors, useConversationStore } from '../../../store'; -import { MarkdownElementProps } from '../type'; +import { type MarkdownElementProps } from '../type'; const isThinkingClosed = (input: string = '') => { const openTag = ``; diff --git a/src/features/Conversation/Markdown/plugins/Thinking/index.ts b/src/features/Conversation/Markdown/plugins/Thinking/index.ts index 408f9a5e20..730765bd12 100644 --- a/src/features/Conversation/Markdown/plugins/Thinking/index.ts +++ b/src/features/Conversation/Markdown/plugins/Thinking/index.ts @@ -1,7 +1,7 @@ import { THINKING_TAG } from '@/const/plugin'; import { createRemarkCustomTagPlugin } from '../remarkPlugins/createRemarkCustomTagPlugin'; -import { MarkdownElement } from '../type'; +import { type MarkdownElement } from '../type'; import Component from './Render'; const ThinkingElement: MarkdownElement = { diff --git a/src/features/Conversation/Markdown/plugins/index.ts b/src/features/Conversation/Markdown/plugins/index.ts index b9325368e7..e3c62b93ff 100644 --- a/src/features/Conversation/Markdown/plugins/index.ts +++ b/src/features/Conversation/Markdown/plugins/index.ts @@ -3,7 +3,7 @@ import LobeThinking from './LobeThinking'; import LocalFile from './LocalFile'; import Mention from './Mention'; import Thinking from './Thinking'; -import { MarkdownElement } from './type'; +import { type MarkdownElement } from './type'; export type { MarkdownElement } from './type'; diff --git a/src/features/Conversation/Markdown/plugins/remarkPlugins/getNodeContent.ts b/src/features/Conversation/Markdown/plugins/remarkPlugins/getNodeContent.ts index ce14a0777f..d7e030af9c 100644 --- a/src/features/Conversation/Markdown/plugins/remarkPlugins/getNodeContent.ts +++ b/src/features/Conversation/Markdown/plugins/remarkPlugins/getNodeContent.ts @@ -1,5 +1,5 @@ import { toMarkdown } from 'mdast-util-to-markdown'; -import { Parent } from 'unist'; +import { type Parent } from 'unist'; const processNode = (node: any): string => { // 处理数学公式节点 diff --git a/src/features/Conversation/Markdown/plugins/type.ts b/src/features/Conversation/Markdown/plugins/type.ts index d198faaa4e..4201b346c2 100644 --- a/src/features/Conversation/Markdown/plugins/type.ts +++ b/src/features/Conversation/Markdown/plugins/type.ts @@ -1,4 +1,4 @@ -import { FC, ReactNode } from 'react'; +import { type FC, type ReactNode } from 'react'; export interface MarkdownElementProps { children: ReactNode; diff --git a/src/features/Conversation/Messages/AgentCouncil/components/AutoScrollShadow.tsx b/src/features/Conversation/Messages/AgentCouncil/components/AutoScrollShadow.tsx index 662b035553..74c6175ba8 100644 --- a/src/features/Conversation/Messages/AgentCouncil/components/AutoScrollShadow.tsx +++ b/src/features/Conversation/Messages/AgentCouncil/components/AutoScrollShadow.tsx @@ -1,5 +1,5 @@ import { ScrollShadow } from '@lobehub/ui'; -import { PropsWithChildren, RefObject, memo, useEffect, useRef } from 'react'; +import { type PropsWithChildren, type RefObject, memo, useEffect, useRef } from 'react'; const AutoScrollShadow = memo(({ children }) => { const contentRef = useRef(null); diff --git a/src/features/Conversation/Messages/AgentCouncil/components/CouncilList.tsx b/src/features/Conversation/Messages/AgentCouncil/components/CouncilList.tsx index a21b427125..ca58e8e7ee 100644 --- a/src/features/Conversation/Messages/AgentCouncil/components/CouncilList.tsx +++ b/src/features/Conversation/Messages/AgentCouncil/components/CouncilList.tsx @@ -1,6 +1,6 @@ 'use client'; -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { Divider } from 'antd'; import isEqual from 'fast-deep-equal'; diff --git a/src/features/Conversation/Messages/AgentCouncil/components/ScrollShadowWithButton.tsx b/src/features/Conversation/Messages/AgentCouncil/components/ScrollShadowWithButton.tsx index dbf89fc656..7b60ce31b0 100644 --- a/src/features/Conversation/Messages/AgentCouncil/components/ScrollShadowWithButton.tsx +++ b/src/features/Conversation/Messages/AgentCouncil/components/ScrollShadowWithButton.tsx @@ -1,4 +1,4 @@ -import { Button, Flexbox, FlexboxProps, ScrollShadow } from '@lobehub/ui'; +import { Button, Flexbox, type FlexboxProps, ScrollShadow } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronLeft, ChevronRight } from 'lucide-react'; import { memo, useCallback, useEffect, useRef, useState } from 'react'; diff --git a/src/features/Conversation/Messages/AgentCouncil/index.tsx b/src/features/Conversation/Messages/AgentCouncil/index.tsx index 1eff87e4c3..bfb79054ad 100644 --- a/src/features/Conversation/Messages/AgentCouncil/index.tsx +++ b/src/features/Conversation/Messages/AgentCouncil/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Flexbox, Icon } from '@lobehub/ui'; import { Segmented } from 'antd'; import isEqual from 'fast-deep-equal'; diff --git a/src/features/Conversation/Messages/Assistant/Actions/index.tsx b/src/features/Conversation/Messages/Assistant/Actions/index.tsx index b8aafc94e8..e38efdde13 100644 --- a/src/features/Conversation/Messages/Assistant/Actions/index.tsx +++ b/src/features/Conversation/Messages/Assistant/Actions/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { ActionIconGroup } from '@lobehub/ui'; import type { ActionIconGroupEvent, ActionIconGroupItemType } from '@lobehub/ui'; import { memo, useCallback, useMemo, useState } from 'react'; diff --git a/src/features/Conversation/Messages/Assistant/Actions/useAssistantActions.ts b/src/features/Conversation/Messages/Assistant/Actions/useAssistantActions.ts index 3e6ecf5c4f..917223800e 100644 --- a/src/features/Conversation/Messages/Assistant/Actions/useAssistantActions.ts +++ b/src/features/Conversation/Messages/Assistant/Actions/useAssistantActions.ts @@ -18,7 +18,7 @@ import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { localeOptions } from '@/locales/resources'; -import { UIChatMessage } from '@/types/index'; +import { type UIChatMessage } from '@/types/index'; import { messageStateSelectors, useConversationStore } from '../../../store'; diff --git a/src/features/Conversation/Messages/Assistant/Extra/index.tsx b/src/features/Conversation/Messages/Assistant/Extra/index.tsx index 2dcc56c665..8c8221b71b 100644 --- a/src/features/Conversation/Messages/Assistant/Extra/index.tsx +++ b/src/features/Conversation/Messages/Assistant/Extra/index.tsx @@ -1,5 +1,5 @@ import { LOADING_FLAT } from '@lobechat/const'; -import { ModelPerformance, ModelUsage } from '@lobechat/types'; +import { type ModelPerformance, type ModelUsage } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/Assistant/components/MessageContent.tsx b/src/features/Conversation/Messages/Assistant/components/MessageContent.tsx index 5817bac6ae..9e058f4769 100644 --- a/src/features/Conversation/Messages/Assistant/components/MessageContent.tsx +++ b/src/features/Conversation/Messages/Assistant/components/MessageContent.tsx @@ -1,5 +1,5 @@ import { LOADING_FLAT } from '@lobechat/const'; -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/Assistant/useMarkdown.tsx b/src/features/Conversation/Messages/Assistant/useMarkdown.tsx index fdd5048980..325162b6d4 100644 --- a/src/features/Conversation/Messages/Assistant/useMarkdown.tsx +++ b/src/features/Conversation/Messages/Assistant/useMarkdown.tsx @@ -1,6 +1,6 @@ 'use client'; -import { MarkdownProps } from '@lobehub/ui'; +import { type MarkdownProps } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { useMemo } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Actions/index.tsx b/src/features/Conversation/Messages/AssistantGroup/Actions/index.tsx index 88809863de..3db8b2a995 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Actions/index.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Actions/index.tsx @@ -1,4 +1,4 @@ -import { AssistantContentBlock, UIChatMessage } from '@lobechat/types'; +import { type AssistantContentBlock, type UIChatMessage } from '@lobechat/types'; import { ActionIconGroup } from '@lobehub/ui'; import type { ActionIconGroupEvent, ActionIconGroupItemType } from '@lobehub/ui'; import { memo, useCallback, useMemo, useState } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Actions/useGroupActions.ts b/src/features/Conversation/Messages/AssistantGroup/Actions/useGroupActions.ts index 5dd9c1dc49..d59eeeba01 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Actions/useGroupActions.ts +++ b/src/features/Conversation/Messages/AssistantGroup/Actions/useGroupActions.ts @@ -17,7 +17,7 @@ import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { localeOptions } from '@/locales/resources'; -import { AssistantContentBlock, UIChatMessage } from '@/types/index'; +import { type AssistantContentBlock, type UIChatMessage } from '@/types/index'; import { dataSelectors, messageStateSelectors, useConversationStore } from '../../../store'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Debug/index.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Debug/index.tsx index 6500b39e47..544fc1ba4b 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Debug/index.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Debug/index.tsx @@ -1,5 +1,5 @@ -import { ToolIntervention } from '@lobechat/types'; -import { Block, Highlighter, Icon, Tabs, TabsProps } from '@lobehub/ui'; +import { type ToolIntervention } from '@lobechat/types'; +import { Block, Highlighter, Icon, Tabs, type TabsProps } from '@lobehub/ui'; import { BracesIcon, FunctionSquareIcon, diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/StatusIndicator.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/StatusIndicator.tsx index e7b86b2ead..947d7b4275 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/StatusIndicator.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/StatusIndicator.tsx @@ -1,4 +1,4 @@ -import { ToolIntervention } from '@lobechat/types'; +import { type ToolIntervention } from '@lobechat/types'; import { Block, Icon, Tooltip } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/index.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/index.tsx index 08cc088907..ba7fe57184 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/index.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/index.tsx @@ -1,4 +1,4 @@ -import { ToolIntervention } from '@lobechat/types'; +import { type ToolIntervention } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Arguments/index.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Arguments/index.tsx index edebcd3806..48c0555f92 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Arguments/index.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Arguments/index.tsx @@ -3,10 +3,10 @@ import { Divider } from 'antd'; import { createStyles } from 'antd-style'; import { parse } from 'partial-json'; import { rgba } from 'polished'; -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import Descriptions, { DescriptionItem } from '@/components/Descriptions'; +import Descriptions, { type DescriptionItem } from '@/components/Descriptions'; import { useYamlArguments } from '@/hooks/useYamlArguments'; import { shinyTextStylish } from '@/styles/loading'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/CustomRender.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/CustomRender.tsx index 8aeff0d873..92664701b7 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/CustomRender.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/CustomRender.tsx @@ -1,4 +1,4 @@ -import { ChatPluginPayload } from '@lobechat/types'; +import { type ChatPluginPayload } from '@lobechat/types'; import { Block, Flexbox, Highlighter } from '@lobehub/ui'; import { Divider } from 'antd'; import { memo, useEffect, useMemo } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/ErrorResponse.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/ErrorResponse.tsx index 075c6613ad..7060c60453 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/ErrorResponse.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/ErrorResponse.tsx @@ -1,4 +1,4 @@ -import { ChatMessageError, ChatPluginPayload } from '@lobechat/types'; +import { type ChatMessageError, type ChatPluginPayload } from '@lobechat/types'; import { Alert, Flexbox, Highlighter } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ApprovalActions.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ApprovalActions.tsx index 1f609fd9e5..f635714431 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ApprovalActions.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ApprovalActions.tsx @@ -8,7 +8,7 @@ import { useUserStore } from '@/store/user'; import { useConversationStore } from '../../../../../store'; import { useGroupMessage } from '../../../components/GroupContext'; -import { ApprovalMode } from './index'; +import { type ApprovalMode } from './index'; interface ApprovalActionsProps { apiName: string; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/KeyValueEditor.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/KeyValueEditor.tsx index 9449067c86..d2520355d9 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/KeyValueEditor.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/KeyValueEditor.tsx @@ -1,5 +1,5 @@ import { ActionIcon, Button, Flexbox, Icon, Input } from '@lobehub/ui'; -import { App, Form, FormInstance } from 'antd'; +import { App, Form, type FormInstance } from 'antd'; import { createStyles } from 'antd-style'; import { LucidePlus, LucideTrash } from 'lucide-react'; import { memo, useEffect, useRef, useState } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ModeSelector.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ModeSelector.tsx index 67e85fd959..320b98dd8a 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ModeSelector.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/Intervention/ModeSelector.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { useUserStore } from '@/store/user'; import { toolInterventionSelectors } from '@/store/user/selectors'; -import { ApprovalMode } from './index'; +import { type ApprovalMode } from './index'; const useStyles = createStyles(({ css, token }) => ({ icon: css` diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/PluginSettings.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/PluginSettings.tsx index aea6b22eb3..72854a87f5 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/PluginSettings.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/PluginSettings.tsx @@ -1,4 +1,4 @@ -import { ChatPluginPayload } from '@lobechat/types'; +import { type ChatPluginPayload } from '@lobechat/types'; import { Avatar, Button, Center, Flexbox } from '@lobehub/ui'; import { Divider } from 'antd'; import { useTheme } from 'antd-style'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/index.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/index.tsx index 987fa0120f..3dbb74b5c5 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/Render/index.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/Render/index.tsx @@ -1,5 +1,5 @@ import { LOADING_FLAT } from '@lobechat/const'; -import { ChatToolResult, ToolIntervention } from '@lobechat/types'; +import { type ChatToolResult, type ToolIntervention } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { Suspense, memo } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tool/index.tsx b/src/features/Conversation/Messages/AssistantGroup/Tool/index.tsx index fc30278977..9d05c2c3fa 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tool/index.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tool/index.tsx @@ -1,4 +1,4 @@ -import { ChatToolResult, ToolIntervention } from '@lobechat/types'; +import { type ChatToolResult, type ToolIntervention } from '@lobechat/types'; import { AccordionItem, Flexbox, Skeleton } from '@lobehub/ui'; import { Divider } from 'antd'; import dynamic from 'next/dynamic'; diff --git a/src/features/Conversation/Messages/AssistantGroup/Tools.tsx b/src/features/Conversation/Messages/AssistantGroup/Tools.tsx index 7d163059e3..3dd28b7b56 100644 --- a/src/features/Conversation/Messages/AssistantGroup/Tools.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/Tools.tsx @@ -1,4 +1,4 @@ -import { ChatToolPayloadWithResult } from '@lobechat/types'; +import { type ChatToolPayloadWithResult } from '@lobechat/types'; import { Accordion } from '@lobehub/ui'; import { type Key, memo, useCallback, useRef, useState } from 'react'; diff --git a/src/features/Conversation/Messages/AssistantGroup/components/ContentBlock.tsx b/src/features/Conversation/Messages/AssistantGroup/components/ContentBlock.tsx index 007a8a044b..76bd68c3a5 100644 --- a/src/features/Conversation/Messages/AssistantGroup/components/ContentBlock.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/components/ContentBlock.tsx @@ -3,7 +3,7 @@ import { memo } from 'react'; import { LOADING_FLAT } from '@/const/message'; import { useErrorContent } from '@/features/Conversation/Error'; -import { AssistantContentBlock } from '@/types/index'; +import { type AssistantContentBlock } from '@/types/index'; import ErrorContent from '../../../ChatItem/components/ErrorContent'; import { messageStateSelectors, useConversationStore } from '../../../store'; diff --git a/src/features/Conversation/Messages/AssistantGroup/components/Group.tsx b/src/features/Conversation/Messages/AssistantGroup/components/Group.tsx index 69203a2a6c..6733a37781 100644 --- a/src/features/Conversation/Messages/AssistantGroup/components/Group.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/components/Group.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { memo, useMemo } from 'react'; -import { AssistantContentBlock } from '@/types/index'; +import { type AssistantContentBlock } from '@/types/index'; import { messageStateSelectors, useConversationStore } from '../../../store'; import { CollapsedMessage } from './CollapsedMessage'; diff --git a/src/features/Conversation/Messages/AssistantGroup/components/GroupItem.tsx b/src/features/Conversation/Messages/AssistantGroup/components/GroupItem.tsx index a3232c1197..8e3e8ddfdd 100644 --- a/src/features/Conversation/Messages/AssistantGroup/components/GroupItem.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/components/GroupItem.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { memo } from 'react'; -import { AssistantContentBlock } from '@/types/index'; +import { type AssistantContentBlock } from '@/types/index'; import { useConversationStore } from '../../../store'; import ContentBlock from './ContentBlock'; diff --git a/src/features/Conversation/Messages/AssistantGroup/useMarkdown.tsx b/src/features/Conversation/Messages/AssistantGroup/useMarkdown.tsx index 0280a4a08e..6a70b3fb05 100644 --- a/src/features/Conversation/Messages/AssistantGroup/useMarkdown.tsx +++ b/src/features/Conversation/Messages/AssistantGroup/useMarkdown.tsx @@ -1,10 +1,10 @@ -import { MarkdownProps } from '@lobehub/ui'; +import { type MarkdownProps } from '@lobehub/ui'; import { useMemo } from 'react'; import { useUserStore } from '@/store/user'; import { userGeneralSettingsSelectors } from '@/store/user/selectors'; -import { MarkdownElement, markdownElements } from '../../Markdown/plugins'; +import { type MarkdownElement, markdownElements } from '../../Markdown/plugins'; import { messageStateSelectors, useConversationStore } from '../../store'; const rehypePlugins = markdownElements diff --git a/src/features/Conversation/Messages/Contexts/MessageActionProvider.tsx b/src/features/Conversation/Messages/Contexts/MessageActionProvider.tsx index ecd955befa..628fa365ee 100644 --- a/src/features/Conversation/Messages/Contexts/MessageActionProvider.tsx +++ b/src/features/Conversation/Messages/Contexts/MessageActionProvider.tsx @@ -1,5 +1,5 @@ import { isEqual } from 'es-toolkit/compat'; -import { FC, type PropsWithChildren, memo, useEffect, useRef, useState } from 'react'; +import { type FC, type PropsWithChildren, memo, useEffect, useRef, useState } from 'react'; import { createPortal } from 'react-dom'; import { MESSAGE_ACTION_BAR_PORTAL_SELECTORS } from '@/const/messageActionPortal'; @@ -9,7 +9,7 @@ import { AssistantActionsBar } from '../Assistant/Actions'; import { GroupActionsBar } from '../AssistantGroup/Actions'; import { UserActionsBar } from '../User/Actions'; import { - MessageActionType, + type MessageActionType, MessageItemActionElementPortialContext, MessageItemActionTypeContext, SetMessageItemActionElementPortialContext, diff --git a/src/features/Conversation/Messages/Task/Actions/index.tsx b/src/features/Conversation/Messages/Task/Actions/index.tsx index 1bcee27b68..80b598b13b 100644 --- a/src/features/Conversation/Messages/Task/Actions/index.tsx +++ b/src/features/Conversation/Messages/Task/Actions/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { ActionIconGroup } from '@lobehub/ui'; import type { ActionIconGroupEvent, ActionIconGroupItemType } from '@lobehub/ui'; import { memo, useCallback, useMemo, useState } from 'react'; diff --git a/src/features/Conversation/Messages/Task/Actions/useAssistantActions.ts b/src/features/Conversation/Messages/Task/Actions/useAssistantActions.ts index bb17b2f9b1..b7aa97788d 100644 --- a/src/features/Conversation/Messages/Task/Actions/useAssistantActions.ts +++ b/src/features/Conversation/Messages/Task/Actions/useAssistantActions.ts @@ -13,7 +13,7 @@ import { import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { UIChatMessage } from '@/types/index'; +import { type UIChatMessage } from '@/types/index'; import { messageStateSelectors, useConversationStore } from '../../../store'; diff --git a/src/features/Conversation/Messages/Task/TaskDetailPanel/CompletedState.tsx b/src/features/Conversation/Messages/Task/TaskDetailPanel/CompletedState.tsx index 9d57c55929..68646730a8 100644 --- a/src/features/Conversation/Messages/Task/TaskDetailPanel/CompletedState.tsx +++ b/src/features/Conversation/Messages/Task/TaskDetailPanel/CompletedState.tsx @@ -6,7 +6,7 @@ import { Check, Footprints, Timer, Wrench } from 'lucide-react'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { TaskDetail } from '@/types/index'; +import { type TaskDetail } from '@/types/index'; const useStyles = createStyles(({ css, token }) => ({ content: css` diff --git a/src/features/Conversation/Messages/Task/TaskDetailPanel/ErrorState.tsx b/src/features/Conversation/Messages/Task/TaskDetailPanel/ErrorState.tsx index 78ec56fb53..44704285ca 100644 --- a/src/features/Conversation/Messages/Task/TaskDetailPanel/ErrorState.tsx +++ b/src/features/Conversation/Messages/Task/TaskDetailPanel/ErrorState.tsx @@ -6,7 +6,7 @@ import { CircleX, MessageSquare, Timer, Wrench } from 'lucide-react'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { TaskDetail, ThreadStatus } from '@/types/index'; +import { type TaskDetail, ThreadStatus } from '@/types/index'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/features/Conversation/Messages/Task/TaskDetailPanel/ProcessingState.tsx b/src/features/Conversation/Messages/Task/TaskDetailPanel/ProcessingState.tsx index 46a8c5a8b6..5cf7d0d46d 100644 --- a/src/features/Conversation/Messages/Task/TaskDetailPanel/ProcessingState.tsx +++ b/src/features/Conversation/Messages/Task/TaskDetailPanel/ProcessingState.tsx @@ -1,6 +1,6 @@ 'use client'; -import { TaskCurrentActivity, TaskDetail } from '@lobechat/types'; +import { type TaskCurrentActivity, type TaskDetail } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Footprints, Loader2, Timer, Wrench } from 'lucide-react'; diff --git a/src/features/Conversation/Messages/Task/TaskDetailPanel/StatusContent.tsx b/src/features/Conversation/Messages/Task/TaskDetailPanel/StatusContent.tsx index a6258fcbb6..669b175fa9 100644 --- a/src/features/Conversation/Messages/Task/TaskDetailPanel/StatusContent.tsx +++ b/src/features/Conversation/Messages/Task/TaskDetailPanel/StatusContent.tsx @@ -2,7 +2,7 @@ import { memo } from 'react'; -import { TaskDetail, ThreadStatus } from '@/types/index'; +import { type TaskDetail, ThreadStatus } from '@/types/index'; import CompletedState from './CompletedState'; import ErrorState from './ErrorState'; diff --git a/src/features/Conversation/Messages/Task/TaskDetailPanel/index.tsx b/src/features/Conversation/Messages/Task/TaskDetailPanel/index.tsx index ed2be8c644..8350143f44 100644 --- a/src/features/Conversation/Messages/Task/TaskDetailPanel/index.tsx +++ b/src/features/Conversation/Messages/Task/TaskDetailPanel/index.tsx @@ -4,7 +4,7 @@ import { Block, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; -import { TaskDetail } from '@/types/index'; +import { type TaskDetail } from '@/types/index'; import StatusContent from './StatusContent'; diff --git a/src/features/Conversation/Messages/Task/components/MessageContent.tsx b/src/features/Conversation/Messages/Task/components/MessageContent.tsx index d88768cd0a..c14cb69c80 100644 --- a/src/features/Conversation/Messages/Task/components/MessageContent.tsx +++ b/src/features/Conversation/Messages/Task/components/MessageContent.tsx @@ -1,5 +1,5 @@ import { LOADING_FLAT } from '@lobechat/const'; -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/Tool/ErrorBoundary/ErrorResult.tsx b/src/features/Conversation/Messages/Tool/ErrorBoundary/ErrorResult.tsx index f6e9e279b4..1dfe19cee3 100644 --- a/src/features/Conversation/Messages/Tool/ErrorBoundary/ErrorResult.tsx +++ b/src/features/Conversation/Messages/Tool/ErrorBoundary/ErrorResult.tsx @@ -1,7 +1,7 @@ 'use client'; import { Alert, Highlighter } from '@lobehub/ui'; -import { ErrorInfo, memo } from 'react'; +import { type ErrorInfo, memo } from 'react'; interface ErrorDisplayProps { apiName?: string; diff --git a/src/features/Conversation/Messages/Tool/ErrorBoundary/index.tsx b/src/features/Conversation/Messages/Tool/ErrorBoundary/index.tsx index 855d616aa9..a4969431de 100644 --- a/src/features/Conversation/Messages/Tool/ErrorBoundary/index.tsx +++ b/src/features/Conversation/Messages/Tool/ErrorBoundary/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Component, ErrorInfo, ReactNode } from 'react'; +import { Component, type ErrorInfo, type ReactNode } from 'react'; import { ErrorDisplay } from './ErrorResult'; diff --git a/src/features/Conversation/Messages/Tool/Tool/index.tsx b/src/features/Conversation/Messages/Tool/Tool/index.tsx index 2d0abdff16..d8a40efed1 100644 --- a/src/features/Conversation/Messages/Tool/Tool/index.tsx +++ b/src/features/Conversation/Messages/Tool/Tool/index.tsx @@ -1,6 +1,6 @@ import { Accordion, AccordionItem, Flexbox, Skeleton } from '@lobehub/ui'; import dynamic from 'next/dynamic'; -import { CSSProperties, memo, useState } from 'react'; +import { type CSSProperties, memo, useState } from 'react'; import Actions from '@/features/Conversation/Messages/AssistantGroup/Tool/Actions'; diff --git a/src/features/Conversation/Messages/Tool/index.tsx b/src/features/Conversation/Messages/Tool/index.tsx index 2e050c7288..0bddc341af 100644 --- a/src/features/Conversation/Messages/Tool/index.tsx +++ b/src/features/Conversation/Messages/Tool/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Alert, Button, Flexbox } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { memo, useState } from 'react'; diff --git a/src/features/Conversation/Messages/User/Actions/index.tsx b/src/features/Conversation/Messages/User/Actions/index.tsx index dd68e1818c..07756d8af1 100644 --- a/src/features/Conversation/Messages/User/Actions/index.tsx +++ b/src/features/Conversation/Messages/User/Actions/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { ActionIconGroup, Flexbox } from '@lobehub/ui'; import type { ActionIconGroupEvent, ActionIconGroupItemType } from '@lobehub/ui'; import { memo, useCallback, useMemo } from 'react'; diff --git a/src/features/Conversation/Messages/User/Actions/useUserActions.ts b/src/features/Conversation/Messages/User/Actions/useUserActions.ts index ac6d63d35f..c05097b5be 100644 --- a/src/features/Conversation/Messages/User/Actions/useUserActions.ts +++ b/src/features/Conversation/Messages/User/Actions/useUserActions.ts @@ -6,7 +6,7 @@ import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { localeOptions } from '@/locales/resources'; -import { UIChatMessage } from '@/types/index'; +import { type UIChatMessage } from '@/types/index'; import { messageStateSelectors, useConversationStore } from '../../../store'; diff --git a/src/features/Conversation/Messages/User/components/FileListViewer/Item.tsx b/src/features/Conversation/Messages/User/components/FileListViewer/Item.tsx index a839519ad5..0d97e98f0a 100644 --- a/src/features/Conversation/Messages/User/components/FileListViewer/Item.tsx +++ b/src/features/Conversation/Messages/User/components/FileListViewer/Item.tsx @@ -3,7 +3,7 @@ import { memo } from 'react'; import FileIcon from '@/components/FileIcon'; import { useChatStore } from '@/store/chat'; -import { ChatFileItem } from '@/types/index'; +import { type ChatFileItem } from '@/types/index'; import { formatSize } from '@/utils/format'; const FileItem = memo(({ id, fileType, size, name }) => { diff --git a/src/features/Conversation/Messages/User/components/FileListViewer/index.tsx b/src/features/Conversation/Messages/User/components/FileListViewer/index.tsx index 8d3dd4ec3c..59826580c3 100644 --- a/src/features/Conversation/Messages/User/components/FileListViewer/index.tsx +++ b/src/features/Conversation/Messages/User/components/FileListViewer/index.tsx @@ -1,7 +1,7 @@ import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; -import { ChatFileItem } from '@/types/index'; +import { type ChatFileItem } from '@/types/index'; import FileItem from './Item'; diff --git a/src/features/Conversation/Messages/User/components/MessageContent.tsx b/src/features/Conversation/Messages/User/components/MessageContent.tsx index 674d441a99..351c5984b6 100644 --- a/src/features/Conversation/Messages/User/components/MessageContent.tsx +++ b/src/features/Conversation/Messages/User/components/MessageContent.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; import MarkdownMessage from '@/features/Conversation/Markdown'; -import { UIChatMessage } from '@/types/index'; +import { type UIChatMessage } from '@/types/index'; import { useMarkdown } from '../useMarkdown'; import FileListViewer from './FileListViewer'; diff --git a/src/features/Conversation/Messages/User/components/VideoFileListViewer.tsx b/src/features/Conversation/Messages/User/components/VideoFileListViewer.tsx index a776ad3b2d..9b124dea9c 100644 --- a/src/features/Conversation/Messages/User/components/VideoFileListViewer.tsx +++ b/src/features/Conversation/Messages/User/components/VideoFileListViewer.tsx @@ -1,7 +1,7 @@ import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; -import { ChatVideoItem } from '@/types/index'; +import { type ChatVideoItem } from '@/types/index'; interface VideoFileListViewerProps { items: ChatVideoItem[]; diff --git a/src/features/Conversation/Messages/User/useMarkdown.tsx b/src/features/Conversation/Messages/User/useMarkdown.tsx index cb3dd094b0..995dee66d2 100644 --- a/src/features/Conversation/Messages/User/useMarkdown.tsx +++ b/src/features/Conversation/Messages/User/useMarkdown.tsx @@ -1,5 +1,5 @@ -import { MarkdownProps } from '@lobehub/ui'; -import { ReactNode, useMemo } from 'react'; +import { type MarkdownProps } from '@lobehub/ui'; +import { type ReactNode, useMemo } from 'react'; import { markdownElements } from '../../Markdown/plugins'; import ContentPreview from './components/ContentPreview'; diff --git a/src/features/Conversation/Messages/components/DisplayContent.tsx b/src/features/Conversation/Messages/components/DisplayContent.tsx index c6681c8093..68d21f0403 100644 --- a/src/features/Conversation/Messages/components/DisplayContent.tsx +++ b/src/features/Conversation/Messages/components/DisplayContent.tsx @@ -1,5 +1,5 @@ import { deserializeParts } from '@lobechat/utils'; -import { MarkdownProps } from '@lobehub/ui'; +import { type MarkdownProps } from '@lobehub/ui'; import { memo } from 'react'; import BubblesLoading from '@/components/BubblesLoading'; diff --git a/src/features/Conversation/Messages/components/Extras/ExtraContainer.tsx b/src/features/Conversation/Messages/components/Extras/ExtraContainer.tsx index 4456282720..89f528a142 100644 --- a/src/features/Conversation/Messages/components/Extras/ExtraContainer.tsx +++ b/src/features/Conversation/Messages/components/Extras/ExtraContainer.tsx @@ -1,5 +1,5 @@ import { Divider } from 'antd'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; const ExtraContainer = memo(({ children }) => { return ( diff --git a/src/features/Conversation/Messages/components/Extras/TTS/FilePlayer.tsx b/src/features/Conversation/Messages/components/Extras/TTS/FilePlayer.tsx index 99b791399b..8080b073d3 100644 --- a/src/features/Conversation/Messages/components/Extras/TTS/FilePlayer.tsx +++ b/src/features/Conversation/Messages/components/Extras/TTS/FilePlayer.tsx @@ -4,7 +4,7 @@ import { memo, useCallback } from 'react'; import { useFileStore } from '@/store/file'; import { useConversationStore } from '../../../../store'; -import { TTSProps } from './InitPlayer'; +import { type TTSProps } from './InitPlayer'; import Player from './Player'; const FilePlayer = memo(({ file, id }) => { diff --git a/src/features/Conversation/Messages/components/Extras/TTS/InitPlayer.tsx b/src/features/Conversation/Messages/components/Extras/TTS/InitPlayer.tsx index 07582915a4..5ab2db1c42 100644 --- a/src/features/Conversation/Messages/components/Extras/TTS/InitPlayer.tsx +++ b/src/features/Conversation/Messages/components/Extras/TTS/InitPlayer.tsx @@ -1,5 +1,5 @@ import { getMessageError } from '@lobechat/fetch-sse'; -import { ChatMessageError, ChatTTS } from '@lobechat/types'; +import { type ChatMessageError, type ChatTTS } from '@lobechat/types'; import { memo, useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/Conversation/Messages/components/Extras/TTS/Player.tsx b/src/features/Conversation/Messages/components/Extras/TTS/Player.tsx index d906c09c74..50241b1142 100644 --- a/src/features/Conversation/Messages/components/Extras/TTS/Player.tsx +++ b/src/features/Conversation/Messages/components/Extras/TTS/Player.tsx @@ -1,5 +1,5 @@ -import { ChatMessageError } from '@lobechat/types'; -import { AudioPlayer, AudioPlayerProps } from '@lobehub/tts/react'; +import { type ChatMessageError } from '@lobechat/types'; +import { AudioPlayer, type AudioPlayerProps } from '@lobehub/tts/react'; import { ActionIcon, Alert, Button, Flexbox, Highlighter } from '@lobehub/ui'; import { TrashIcon } from 'lucide-react'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/components/Extras/TTS/index.tsx b/src/features/Conversation/Messages/components/Extras/TTS/index.tsx index dc0e5d4e32..33445e4a7b 100644 --- a/src/features/Conversation/Messages/components/Extras/TTS/index.tsx +++ b/src/features/Conversation/Messages/components/Extras/TTS/index.tsx @@ -7,7 +7,7 @@ import { useGlobalStore } from '@/store/global'; import { globalGeneralSelectors } from '@/store/global/selectors'; import FilePlayer from './FilePlayer'; -import InitPlayer, { TTSProps } from './InitPlayer'; +import InitPlayer, { type TTSProps } from './InitPlayer'; const TTS = memo( (props) => { diff --git a/src/features/Conversation/Messages/components/Extras/Translate.tsx b/src/features/Conversation/Messages/components/Extras/Translate.tsx index a7d6bc0f52..896af4cea0 100644 --- a/src/features/Conversation/Messages/components/Extras/Translate.tsx +++ b/src/features/Conversation/Messages/components/Extras/Translate.tsx @@ -1,4 +1,4 @@ -import { ChatTranslate } from '@lobechat/types'; +import { type ChatTranslate } from '@lobechat/types'; import { ActionIcon, Flexbox, Icon, Markdown, Tag, copyToClipboard } from '@lobehub/ui'; import { App } from 'antd'; import { useTheme } from 'antd-style'; diff --git a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/ModelCard.tsx b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/ModelCard.tsx index 509a5d4c4e..e50c717d61 100644 --- a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/ModelCard.tsx +++ b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/ModelCard.tsx @@ -3,7 +3,7 @@ import { ModelIcon } from '@lobehub/icons'; import { Flexbox, Icon, Segmented, Tooltip } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ArrowDownToDot, ArrowUpFromDot, BookUp2Icon, CircleFadingArrowUp } from 'lucide-react'; -import { LobeDefaultAiModelListItem } from 'model-bank'; +import { type LobeDefaultAiModelListItem } from 'model-bank'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/index.tsx b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/index.tsx index 22276521c1..985ce5eb31 100644 --- a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/index.tsx +++ b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/index.tsx @@ -1,4 +1,4 @@ -import { ModelPerformance, ModelUsage } from '@lobechat/types'; +import { type ModelPerformance, type ModelUsage } from '@lobechat/types'; import { Center, Flexbox, Icon } from '@lobehub/ui'; import { Divider, Popover } from 'antd'; import { useTheme } from 'antd-style'; @@ -14,7 +14,7 @@ import { formatNumber, formatShortenNumber } from '@/utils/format'; import AnimatedNumber from './AnimatedNumber'; import ModelCard from './ModelCard'; -import TokenProgress, { TokenProgressItem } from './TokenProgress'; +import TokenProgress, { type TokenProgressItem } from './TokenProgress'; import { getDetailsToken } from './tokens'; interface TokenDetailProps { diff --git a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/pricing.ts b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/pricing.ts index 77a0d2e706..fbafca8143 100644 --- a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/pricing.ts +++ b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/pricing.ts @@ -1,4 +1,4 @@ -import { ModelPriceCurrency, Pricing } from 'model-bank'; +import { type ModelPriceCurrency, type Pricing } from 'model-bank'; import { formatPriceByCurrency, diff --git a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/tokens.ts b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/tokens.ts index 869aa9c81a..e2e0f20895 100644 --- a/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/tokens.ts +++ b/src/features/Conversation/Messages/components/Extras/Usage/UsageDetail/tokens.ts @@ -1,5 +1,5 @@ -import { ModelUsage } from '@lobechat/types'; -import { LobeDefaultAiModelListItem } from 'model-bank'; +import { type ModelUsage } from '@lobechat/types'; +import { type LobeDefaultAiModelListItem } from 'model-bank'; import { getAudioInputUnitRate, getAudioOutputUnitRate } from '@/utils/pricing'; diff --git a/src/features/Conversation/Messages/components/Extras/Usage/index.tsx b/src/features/Conversation/Messages/components/Extras/Usage/index.tsx index 9a2f1e8f0c..baa82b4304 100644 --- a/src/features/Conversation/Messages/components/Extras/Usage/index.tsx +++ b/src/features/Conversation/Messages/components/Extras/Usage/index.tsx @@ -1,4 +1,4 @@ -import { ModelPerformance, ModelUsage } from '@lobechat/types'; +import { type ModelPerformance, type ModelUsage } from '@lobechat/types'; import { ModelIcon } from '@lobehub/icons'; import { Center, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; diff --git a/src/features/Conversation/Messages/components/FileChunks/ChunkItem.tsx b/src/features/Conversation/Messages/components/FileChunks/ChunkItem.tsx index bc7254201e..2e7f548bc1 100644 --- a/src/features/Conversation/Messages/components/FileChunks/ChunkItem.tsx +++ b/src/features/Conversation/Messages/components/FileChunks/ChunkItem.tsx @@ -1,4 +1,4 @@ -import { ChatFileChunk } from '@lobechat/types'; +import { type ChatFileChunk } from '@lobechat/types'; import { Center, Flexbox, Text, Tooltip } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/components/FileChunks/index.tsx b/src/features/Conversation/Messages/components/FileChunks/index.tsx index 882fc1cfbd..9d6f25d34e 100644 --- a/src/features/Conversation/Messages/components/FileChunks/index.tsx +++ b/src/features/Conversation/Messages/components/FileChunks/index.tsx @@ -1,4 +1,4 @@ -import { ChatFileChunk } from '@lobechat/types'; +import { type ChatFileChunk } from '@lobechat/types'; import { Flexbox, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { BookOpenTextIcon, ChevronDown, ChevronRight } from 'lucide-react'; diff --git a/src/features/Conversation/Messages/components/Reasoning.tsx b/src/features/Conversation/Messages/components/Reasoning.tsx index 46a0f9a491..b29f718353 100644 --- a/src/features/Conversation/Messages/components/Reasoning.tsx +++ b/src/features/Conversation/Messages/components/Reasoning.tsx @@ -1,4 +1,4 @@ -import { MessageContentPart } from '@lobechat/types'; +import { type MessageContentPart } from '@lobechat/types'; import { deserializeParts } from '@lobechat/utils'; import { memo } from 'react'; diff --git a/src/features/Conversation/Messages/components/RichContentRenderer.tsx b/src/features/Conversation/Messages/components/RichContentRenderer.tsx index 9669ccada7..bbe25fb704 100644 --- a/src/features/Conversation/Messages/components/RichContentRenderer.tsx +++ b/src/features/Conversation/Messages/components/RichContentRenderer.tsx @@ -1,7 +1,7 @@ import { Flexbox, Image, Markdown } from '@lobehub/ui'; import { memo } from 'react'; -import { MessageContentPart } from '@/types/index'; +import { type MessageContentPart } from '@/types/index'; interface RichContentRendererProps { parts: MessageContentPart[]; diff --git a/src/features/Conversation/Messages/components/SearchGrounding.tsx b/src/features/Conversation/Messages/components/SearchGrounding.tsx index bf9f0a43d2..7a22278dc0 100644 --- a/src/features/Conversation/Messages/components/SearchGrounding.tsx +++ b/src/features/Conversation/Messages/components/SearchGrounding.tsx @@ -7,7 +7,7 @@ import { rgba } from 'polished'; import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { GroundingSearch } from '@/types/search'; +import { type GroundingSearch } from '@/types/search'; const useStyles = createStyles(({ css, token, isDarkMode }) => ({ container: css` diff --git a/src/features/Conversation/Messages/index.tsx b/src/features/Conversation/Messages/index.tsx index 5831862fc3..706eea1546 100644 --- a/src/features/Conversation/Messages/index.tsx +++ b/src/features/Conversation/Messages/index.tsx @@ -5,9 +5,9 @@ import { Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { - MouseEvent, - ReactNode, - RefObject, + type MouseEvent, + type ReactNode, + type RefObject, Suspense, memo, useCallback, diff --git a/src/features/Conversation/components/ContextMenu.tsx b/src/features/Conversation/components/ContextMenu.tsx index 8ca53d9a74..24ca8e9e6c 100644 --- a/src/features/Conversation/components/ContextMenu.tsx +++ b/src/features/Conversation/components/ContextMenu.tsx @@ -1,6 +1,6 @@ 'use client'; -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { ActionIcon } from '@lobehub/ui'; import type { ActionIconGroupEvent, ActionIconGroupItemType } from '@lobehub/ui'; import { Dropdown, type MenuProps } from 'antd'; @@ -8,8 +8,8 @@ import { App } from 'antd'; import { createStyles } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { - ComponentType, - ReactNode, + type ComponentType, + type ReactNode, type RefObject, isValidElement, memo, diff --git a/src/features/Conversation/components/ShareMessageModal/ShareImage/Preview.tsx b/src/features/Conversation/components/ShareMessageModal/ShareImage/Preview.tsx index 725e7233df..86d4783d50 100644 --- a/src/features/Conversation/components/ShareMessageModal/ShareImage/Preview.tsx +++ b/src/features/Conversation/components/ShareMessageModal/ShareImage/Preview.tsx @@ -1,5 +1,5 @@ import { OFFICIAL_DOMAIN } from '@lobechat/const'; -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { ModelTag } from '@lobehub/icons'; import { Avatar, Flexbox } from '@lobehub/ui'; import { ChatHeaderTitle } from '@lobehub/ui/chat'; @@ -15,7 +15,7 @@ import { agentSelectors } from '@/store/agent/selectors'; import { useAgentMeta, useIsBuiltinAgent } from '../../../hooks'; import { useContainerStyles } from '../style'; import { useStyles } from './style'; -import { FieldType } from './type'; +import { type FieldType } from './type'; interface PreviewProps extends FieldType { message: UIChatMessage; diff --git a/src/features/Conversation/components/ShareMessageModal/ShareImage/index.tsx b/src/features/Conversation/components/ShareMessageModal/ShareImage/index.tsx index 7e3f6eb89c..1d28aa0e0d 100644 --- a/src/features/Conversation/components/ShareMessageModal/ShareImage/index.tsx +++ b/src/features/Conversation/components/ShareMessageModal/ShareImage/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Button, Form, type FormItemProps, Segmented } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; import { Switch } from 'antd'; @@ -15,7 +15,7 @@ import { agentSelectors } from '@/store/agent/selectors'; import { useStyles } from '../style'; import Preview from './Preview'; -import { FieldType } from './type'; +import { type FieldType } from './type'; const DEFAULT_FIELD_VALUE: FieldType = { imageType: ImageType.JPG, diff --git a/src/features/Conversation/components/ShareMessageModal/ShareImage/type.ts b/src/features/Conversation/components/ShareMessageModal/ShareImage/type.ts index 737ad2d401..17660e7272 100644 --- a/src/features/Conversation/components/ShareMessageModal/ShareImage/type.ts +++ b/src/features/Conversation/components/ShareMessageModal/ShareImage/type.ts @@ -1,4 +1,4 @@ -import { ImageType } from '@/hooks/useScreenshot'; +import { type ImageType } from '@/hooks/useScreenshot'; export type FieldType = { imageType: ImageType; diff --git a/src/features/Conversation/components/ShareMessageModal/ShareText/index.tsx b/src/features/Conversation/components/ShareMessageModal/ShareText/index.tsx index bb6a76fe5e..9cb43db934 100644 --- a/src/features/Conversation/components/ShareMessageModal/ShareText/index.tsx +++ b/src/features/Conversation/components/ShareMessageModal/ShareText/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Button, Flexbox, copyToClipboard } from '@lobehub/ui'; import { App } from 'antd'; import isEqual from 'fast-deep-equal'; diff --git a/src/features/Conversation/components/ShareMessageModal/ShareText/template.ts b/src/features/Conversation/components/ShareMessageModal/ShareText/template.ts index 64ff6cd57a..d7da1c7fca 100644 --- a/src/features/Conversation/components/ShareMessageModal/ShareText/template.ts +++ b/src/features/Conversation/components/ShareMessageModal/ShareText/template.ts @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { template } from 'es-toolkit/compat'; import { LOADING_FLAT } from '@/const/message'; diff --git a/src/features/Conversation/components/ShareMessageModal/index.tsx b/src/features/Conversation/components/ShareMessageModal/index.tsx index fd0af02fb1..031d4ff385 100644 --- a/src/features/Conversation/components/ShareMessageModal/index.tsx +++ b/src/features/Conversation/components/ShareMessageModal/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Flexbox, Modal, Segmented, Tabs } from '@lobehub/ui'; import { memo, useId, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/Conversation/components/Thinking/index.tsx b/src/features/Conversation/components/Thinking/index.tsx index 3e34f7b99a..c3befcc6ca 100644 --- a/src/features/Conversation/components/Thinking/index.tsx +++ b/src/features/Conversation/components/Thinking/index.tsx @@ -1,9 +1,9 @@ import { Accordion, AccordionItem, ScrollShadow } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { CSSProperties, ReactNode, RefObject, memo, useEffect, useRef, useState } from 'react'; +import { type CSSProperties, type ReactNode, type RefObject, memo, useEffect, useRef, useState } from 'react'; import MarkdownMessage from '@/features/Conversation/Markdown'; -import { ChatCitationItem } from '@/types/index'; +import { type ChatCitationItem } from '@/types/index'; import Title from './Title'; diff --git a/src/features/Conversation/hooks/useAgentMeta.ts b/src/features/Conversation/hooks/useAgentMeta.ts index e891e5fc2a..9819d1c4c5 100644 --- a/src/features/Conversation/hooks/useAgentMeta.ts +++ b/src/features/Conversation/hooks/useAgentMeta.ts @@ -1,4 +1,4 @@ -import { MetaData } from '@lobechat/types'; +import { type MetaData } from '@lobechat/types'; import { useMemo } from 'react'; import { useAgentStore } from '@/store/agent'; diff --git a/src/features/Conversation/hooks/useChatItemContextMenu.tsx b/src/features/Conversation/hooks/useChatItemContextMenu.tsx index ca5ea3add5..44d2af31ee 100644 --- a/src/features/Conversation/hooks/useChatItemContextMenu.tsx +++ b/src/features/Conversation/hooks/useChatItemContextMenu.tsx @@ -1,5 +1,6 @@ import { type ActionIconGroupEvent } from '@lobehub/ui'; -import React, { useCallback, useEffect, useRef, useState } from 'react'; +import type React from 'react'; +import { useCallback, useEffect, useRef, useState } from 'react'; import { MSG_CONTENT_CLASSNAME } from '@/features/Conversation/ChatItem/components/MessageContent'; import { useUserStore } from '@/store/user'; diff --git a/src/features/Conversation/hooks/useDoubleClickEdit.ts b/src/features/Conversation/hooks/useDoubleClickEdit.ts index 08f959134d..bbbc11befd 100644 --- a/src/features/Conversation/hooks/useDoubleClickEdit.ts +++ b/src/features/Conversation/hooks/useDoubleClickEdit.ts @@ -1,4 +1,4 @@ -import { MouseEventHandler, useCallback } from 'react'; +import { type MouseEventHandler, useCallback } from 'react'; import { useConversationStore } from '../store'; diff --git a/src/features/Conversation/store/index.ts b/src/features/Conversation/store/index.ts index a5742b4db8..64d948f2a0 100644 --- a/src/features/Conversation/store/index.ts +++ b/src/features/Conversation/store/index.ts @@ -7,7 +7,7 @@ import { createWithEqualityFn } from 'zustand/traditional'; import { createDevtools } from '@/store/middleware/createDevtools'; -import { CreateStoreParams, type Store, createStoreAction } from './action'; +import { type CreateStoreParams, type Store, createStoreAction } from './action'; export type { Store as ConversationStore, ConversationStore as Store } from './action'; export type { State } from './initialState'; diff --git a/src/features/Conversation/types/context.ts b/src/features/Conversation/types/context.ts index 825bf35347..58a8d1dde3 100644 --- a/src/features/Conversation/types/context.ts +++ b/src/features/Conversation/types/context.ts @@ -1,4 +1,4 @@ -import { ConversationContext as BaseConversationContext } from '@lobechat/types'; +import { type ConversationContext as BaseConversationContext } from '@lobechat/types'; /** * Extended Conversation Context diff --git a/src/features/Conversation/types/ui.ts b/src/features/Conversation/types/ui.ts index b8b227c98c..3a5c3830c7 100644 --- a/src/features/Conversation/types/ui.ts +++ b/src/features/Conversation/types/ui.ts @@ -1,7 +1,7 @@ -import { LLMRoleType, UIChatMessage } from '@lobechat/types'; -import { ActionIconGroupItemType } from '@lobehub/ui'; +import { type LLMRoleType, type UIChatMessage } from '@lobechat/types'; +import { type ActionIconGroupItemType } from '@lobehub/ui'; import { type ChatItemProps } from '@lobehub/ui/chat'; -import { FC, ReactNode } from 'react'; +import { type FC, type ReactNode } from 'react'; export type RenderRole = LLMRoleType | 'default' | 'history' | string; export type RenderMessage = FC; diff --git a/src/features/DataImporter/Error.tsx b/src/features/DataImporter/Error.tsx index c5e09430b2..f98318e969 100644 --- a/src/features/DataImporter/Error.tsx +++ b/src/features/DataImporter/Error.tsx @@ -8,7 +8,7 @@ import Balancer from 'react-wrap-balancer'; import { GITHUB_ISSUES } from '@/const/url'; import { githubService } from '@/services/github'; -import { ErrorShape } from '@/types/importer'; +import { type ErrorShape } from '@/types/importer'; interface ErrorProps { error?: ErrorShape; diff --git a/src/features/DataImporter/ImportDetail.tsx b/src/features/DataImporter/ImportDetail.tsx index 1e8df29131..46c60e91b6 100644 --- a/src/features/DataImporter/ImportDetail.tsx +++ b/src/features/DataImporter/ImportDetail.tsx @@ -7,7 +7,7 @@ import { Info } from 'lucide-react'; import { useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { ImportPgDataStructure } from '@/types/export'; +import { type ImportPgDataStructure } from '@/types/export'; const getNonEmptyTables = (data: ImportPgDataStructure) => { const result = []; diff --git a/src/features/DataImporter/config.ts b/src/features/DataImporter/config.ts index 882b8d0367..f6518aab5b 100644 --- a/src/features/DataImporter/config.ts +++ b/src/features/DataImporter/config.ts @@ -1,7 +1,7 @@ import { t } from 'i18next'; import { notification } from '@/components/AntdStaticMethods'; -import { ImportPgDataStructure } from '@/types/export'; +import { type ImportPgDataStructure } from '@/types/export'; export const parseConfigFile = async (file: File): Promise => { const text = await file.text(); diff --git a/src/features/DataImporter/index.tsx b/src/features/DataImporter/index.tsx index a1298b5992..a944f9ce7e 100644 --- a/src/features/DataImporter/index.tsx +++ b/src/features/DataImporter/index.tsx @@ -1,18 +1,18 @@ 'use client'; -import { ErrorShape, ImportFileUploadState, ImportStage } from '@lobechat/types'; +import { type ErrorShape, type ImportFileUploadState, ImportStage } from '@lobechat/types'; import { Center } from '@lobehub/ui'; import { Upload } from 'antd'; import { createStyles } from 'antd-style'; import { ImportIcon } from 'lucide-react'; -import React, { ReactNode, memo, useMemo, useState } from 'react'; +import React, { type ReactNode, memo, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import DataStyleModal from '@/components/DataStyleModal'; import { importService } from '@/services/import'; import { useChatStore } from '@/store/chat'; import { useHomeStore } from '@/store/home'; -import { ImportPgDataStructure } from '@/types/export'; +import { type ImportPgDataStructure } from '@/types/export'; import ImportError from './Error'; import { FileUploading } from './FileUploading'; diff --git a/src/features/DevPanel/CacheViewer/cacheProvider.tsx b/src/features/DevPanel/CacheViewer/cacheProvider.tsx index ddb4047ab7..f077fb25a1 100644 --- a/src/features/DevPanel/CacheViewer/cacheProvider.tsx +++ b/src/features/DevPanel/CacheViewer/cacheProvider.tsx @@ -2,7 +2,7 @@ import { usePathname } from 'next/navigation'; import { - PropsWithChildren, + type PropsWithChildren, createContext, useContext, useEffect, diff --git a/src/features/DevPanel/features/FloatPanel.tsx b/src/features/DevPanel/features/FloatPanel.tsx index c33f6bf9f9..485c038922 100644 --- a/src/features/DevPanel/features/FloatPanel.tsx +++ b/src/features/DevPanel/features/FloatPanel.tsx @@ -6,7 +6,7 @@ import { FloatButton } from 'antd'; import { createStyles } from 'antd-style'; import { BugIcon, BugOff, XIcon } from 'lucide-react'; import { usePathname } from 'next/navigation'; -import { ReactNode, memo, useEffect, useState } from 'react'; +import { type ReactNode, memo, useEffect, useState } from 'react'; import { Rnd } from 'react-rnd'; import { isDesktop } from '@/const/version'; diff --git a/src/features/DevPanel/features/Header.tsx b/src/features/DevPanel/features/Header.tsx index aeb96e4776..5ad1e1fcdc 100644 --- a/src/features/DevPanel/features/Header.tsx +++ b/src/features/DevPanel/features/Header.tsx @@ -1,7 +1,6 @@ -import { ActionIcon, type ActionIconProps } from '@lobehub/ui'; -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps , Flexbox, type FlexboxProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import React, { ReactNode } from 'react'; +import React, { type ReactNode } from 'react'; const useStyles = createStyles(({ token, css }) => ({ header: css` diff --git a/src/features/DevPanel/features/Table/TooltipContent.tsx b/src/features/DevPanel/features/Table/TooltipContent.tsx index ccb704ebac..585964ba54 100644 --- a/src/features/DevPanel/features/Table/TooltipContent.tsx +++ b/src/features/DevPanel/features/Table/TooltipContent.tsx @@ -1,7 +1,7 @@ import { Flexbox, Highlighter } from '@lobehub/ui'; import Image from 'next/image'; import Link from 'next/link'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; const TooltipContent = memo<{ children: ReactNode }>(({ children }) => { if (typeof children !== 'string') return children; diff --git a/src/features/ElectronTitlebar/Connection/ConnectionMode.tsx b/src/features/ElectronTitlebar/Connection/ConnectionMode.tsx index a9a1a997e3..dd4423ed73 100644 --- a/src/features/ElectronTitlebar/Connection/ConnectionMode.tsx +++ b/src/features/ElectronTitlebar/Connection/ConnectionMode.tsx @@ -1,4 +1,4 @@ -import { StorageMode, StorageModeEnum } from '@lobechat/electron-client-ipc'; +import { type StorageMode, StorageModeEnum } from '@lobechat/electron-client-ipc'; import { Button, Center, Flexbox, Input } from '@lobehub/ui'; import { LobeHub } from '@lobehub/ui/brand'; import { createStyles } from 'antd-style'; diff --git a/src/features/ElectronTitlebar/Connection/Option.tsx b/src/features/ElectronTitlebar/Connection/Option.tsx index 8756fa6cbf..6ce4834e1e 100644 --- a/src/features/ElectronTitlebar/Connection/Option.tsx +++ b/src/features/ElectronTitlebar/Connection/Option.tsx @@ -1,8 +1,8 @@ import { CheckCircleFilled } from '@ant-design/icons'; -import { StorageModeEnum } from '@lobechat/electron-client-ipc'; +import { type StorageModeEnum } from '@lobechat/electron-client-ipc'; import { Center, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ComponentType, ReactNode } from 'react'; +import { type ComponentType, type ReactNode } from 'react'; const useStyles = createStyles(({ token, css }) => ({ checked: css` diff --git a/src/features/ElectronTitlebar/UpdateModal.tsx b/src/features/ElectronTitlebar/UpdateModal.tsx index 7de43bd47a..3fb45cc68b 100644 --- a/src/features/ElectronTitlebar/UpdateModal.tsx +++ b/src/features/ElectronTitlebar/UpdateModal.tsx @@ -1,4 +1,4 @@ -import { ProgressInfo, UpdateInfo, useWatchBroadcast } from '@lobechat/electron-client-ipc'; +import { type ProgressInfo, type UpdateInfo, useWatchBroadcast } from '@lobechat/electron-client-ipc'; import { Button } from '@lobehub/ui'; import { App, Modal, Progress, Spin } from 'antd'; import React, { memo, useRef, useState } from 'react'; diff --git a/src/features/ElectronTitlebar/UpdateNotification.tsx b/src/features/ElectronTitlebar/UpdateNotification.tsx index 193d337c10..9d027ed978 100644 --- a/src/features/ElectronTitlebar/UpdateNotification.tsx +++ b/src/features/ElectronTitlebar/UpdateNotification.tsx @@ -1,4 +1,4 @@ -import { UpdateInfo, useWatchBroadcast } from '@lobechat/electron-client-ipc'; +import { type UpdateInfo, useWatchBroadcast } from '@lobechat/electron-client-ipc'; import { Button, Flexbox, Icon } from '@lobehub/ui'; import { Modal, theme } from 'antd'; import { createStyles } from 'antd-style'; diff --git a/src/features/FileSidePanel/index.tsx b/src/features/FileSidePanel/index.tsx index 712493a077..00a7f790ae 100644 --- a/src/features/FileSidePanel/index.tsx +++ b/src/features/FileSidePanel/index.tsx @@ -3,7 +3,7 @@ import { DraggablePanel, DraggablePanelContainer, type DraggablePanelProps } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { PropsWithChildren, memo, useEffect, useState } from 'react'; +import { type PropsWithChildren, memo, useEffect, useState } from 'react'; import { FOLDER_WIDTH } from '@/const/layoutTokens'; import { useGlobalStore } from '@/store/global'; diff --git a/src/features/FileViewer/NotSupport/index.tsx b/src/features/FileViewer/NotSupport/index.tsx index bb7402e3cb..8833206699 100644 --- a/src/features/FileViewer/NotSupport/index.tsx +++ b/src/features/FileViewer/NotSupport/index.tsx @@ -1,7 +1,7 @@ import { Button, Center, Flexbox, FluentEmoji } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import Link from 'next/link'; -import { CSSProperties, ComponentType, useState } from 'react'; +import { type CSSProperties, type ComponentType, useState } from 'react'; import { Trans, useTranslation } from 'react-i18next'; import { MORE_FILE_PREVIEW_REQUEST_URL } from '@/const/url'; diff --git a/src/features/FileViewer/Renderer/PDF/HighlightLayer.tsx b/src/features/FileViewer/Renderer/PDF/HighlightLayer.tsx index 3aef54dd63..ba29321cae 100644 --- a/src/features/FileViewer/Renderer/PDF/HighlightLayer.tsx +++ b/src/features/FileViewer/Renderer/PDF/HighlightLayer.tsx @@ -1,7 +1,7 @@ -import { FC, memo } from 'react'; +import { type FC, memo } from 'react'; import { useFileStore } from '@/store/file'; -import { ChunkMetadata, Coordinates, FileChunk } from '@/types/chunk'; +import { type ChunkMetadata, type Coordinates, type FileChunk } from '@/types/chunk'; interface HighlightRectProps { coordinates: Coordinates; diff --git a/src/features/FileViewer/index.tsx b/src/features/FileViewer/index.tsx index e30b4c22be..e257308809 100644 --- a/src/features/FileViewer/index.tsx +++ b/src/features/FileViewer/index.tsx @@ -1,8 +1,8 @@ 'use client'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; import NotSupport from './NotSupport'; import ImageViewer from './Renderer/Image'; diff --git a/src/features/GroupChatSettings/AgentCard.tsx b/src/features/GroupChatSettings/AgentCard.tsx index 552bea67d7..b273f82ad0 100644 --- a/src/features/GroupChatSettings/AgentCard.tsx +++ b/src/features/GroupChatSettings/AgentCard.tsx @@ -8,7 +8,7 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { DEFAULT_AVATAR } from '@/const/meta'; -import { LobeAgentSession } from '@/types/session'; +import { type LobeAgentSession } from '@/types/session'; const useStyles = createStyles(({ css, token, isDarkMode }) => ({ container: css` diff --git a/src/features/GroupChatSettings/AgentTeamMembersSettings.tsx b/src/features/GroupChatSettings/AgentTeamMembersSettings.tsx index 754e137387..49f2ad518e 100644 --- a/src/features/GroupChatSettings/AgentTeamMembersSettings.tsx +++ b/src/features/GroupChatSettings/AgentTeamMembersSettings.tsx @@ -11,7 +11,7 @@ import { useAgentGroupStore } from '@/store/agentGroup'; import { agentGroupSelectors } from '@/store/agentGroup/selectors'; import { useSessionStore } from '@/store/session'; import { sessionSelectors } from '@/store/session/selectors'; -import { LobeAgentSession, LobeGroupSession, LobeSessionType } from '@/types/session'; +import { type LobeAgentSession, type LobeGroupSession, LobeSessionType } from '@/types/session'; import AgentCard from './AgentCard'; import HostMemberCard from './HostMemberCard'; diff --git a/src/features/GroupChatSettings/AgentTeamSettings.tsx b/src/features/GroupChatSettings/AgentTeamSettings.tsx index 4d34e15477..0dcba200df 100644 --- a/src/features/GroupChatSettings/AgentTeamSettings.tsx +++ b/src/features/GroupChatSettings/AgentTeamSettings.tsx @@ -1,5 +1,5 @@ import { Skeleton } from '@lobehub/ui'; -import { ReactNode, Suspense, memo } from 'react'; +import { type ReactNode, Suspense, memo } from 'react'; import { GroupSettingsTabs } from '@/store/global/initialState'; import { useServerConfigStore } from '@/store/serverConfig'; @@ -8,7 +8,7 @@ import AgentTeamChatSettings from './AgentTeamChatSettings'; import AgentTeamMembersSettings from './AgentTeamMembersSettings'; import AgentTeamMetaSettings from './AgentTeamMetaSettings'; import { GroupChatSettingsProvider } from './GroupChatSettingsProvider'; -import { StoreUpdaterProps } from './StoreUpdater'; +import { type StoreUpdaterProps } from './StoreUpdater'; export interface AgentTeamSettingsProps extends StoreUpdaterProps { tab?: GroupSettingsTabs; diff --git a/src/features/GroupChatSettings/GroupCategory/index.tsx b/src/features/GroupChatSettings/GroupCategory/index.tsx index 448a7b6c03..aaa5d91671 100644 --- a/src/features/GroupChatSettings/GroupCategory/index.tsx +++ b/src/features/GroupChatSettings/GroupCategory/index.tsx @@ -3,7 +3,7 @@ import { memo } from 'react'; import Menu from '@/components/Menu'; -import { GroupSettingsTabs } from '@/store/global/initialState'; +import { type GroupSettingsTabs } from '@/store/global/initialState'; import { useChatGroupSettingsCategory } from './useGroupCategory'; diff --git a/src/features/GroupChatSettings/GroupChatSettingsProvider.tsx b/src/features/GroupChatSettings/GroupChatSettingsProvider.tsx index 87f596c206..4b33a44cab 100644 --- a/src/features/GroupChatSettings/GroupChatSettingsProvider.tsx +++ b/src/features/GroupChatSettings/GroupChatSettingsProvider.tsx @@ -1,6 +1,6 @@ -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; -import StoreUpdater, { StoreUpdaterProps } from './StoreUpdater'; +import StoreUpdater, { type StoreUpdaterProps } from './StoreUpdater'; import { Provider, createStore } from './store'; interface GroupChatSettingsProviderProps extends StoreUpdaterProps { diff --git a/src/features/GroupChatSettings/StoreUpdater.tsx b/src/features/GroupChatSettings/StoreUpdater.tsx index 71ca0680fb..4e0632cd86 100644 --- a/src/features/GroupChatSettings/StoreUpdater.tsx +++ b/src/features/GroupChatSettings/StoreUpdater.tsx @@ -1,10 +1,10 @@ 'use client'; -import { ForwardedRef, memo, useImperativeHandle } from 'react'; +import { type ForwardedRef, memo, useImperativeHandle } from 'react'; import { createStoreUpdater } from 'zustand-utils'; -import { GroupChatSettingsInstance, useGroupChatSettings } from './hooks/useGroupChatSettings'; -import { State, useStoreApi } from './store'; +import { type GroupChatSettingsInstance, useGroupChatSettings } from './hooks/useGroupChatSettings'; +import { type State, useStoreApi } from './store'; export interface StoreUpdaterProps extends Partial< diff --git a/src/features/GroupChatSettings/hooks/useGroupChatSettings.ts b/src/features/GroupChatSettings/hooks/useGroupChatSettings.ts index e52e02a263..eee5fb9089 100644 --- a/src/features/GroupChatSettings/hooks/useGroupChatSettings.ts +++ b/src/features/GroupChatSettings/hooks/useGroupChatSettings.ts @@ -3,7 +3,7 @@ import { useMemo } from 'react'; import { useStoreApi } from '../store'; -import { PublicAction } from '../store/action'; +import { type PublicAction } from '../store/action'; export type GroupChatSettingsInstance = PublicAction; diff --git a/src/features/GroupChatSettings/store/action.ts b/src/features/GroupChatSettings/store/action.ts index dd88fb043f..4e214ad126 100644 --- a/src/features/GroupChatSettings/store/action.ts +++ b/src/features/GroupChatSettings/store/action.ts @@ -1,11 +1,11 @@ import type { PartialDeep } from 'type-fest'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { DEFAULT_CHAT_GROUP_CHAT_CONFIG, DEFAULT_CHAT_GROUP_META_CONFIG } from '@/const/settings'; -import { LobeChatGroupConfig, LobeChatGroupMetaConfig } from '@/types/agentGroup'; +import { type LobeChatGroupConfig, type LobeChatGroupMetaConfig } from '@/types/agentGroup'; import { setNamespace } from '@/utils/storeDebug'; -import { LoadingState, State, initialState } from './initialState'; +import { type LoadingState, type State, initialState } from './initialState'; export interface PublicAction { /** diff --git a/src/features/GroupChatSettings/store/index.ts b/src/features/GroupChatSettings/store/index.ts index bf5b9d5a35..b8ca876c2e 100644 --- a/src/features/GroupChatSettings/store/index.ts +++ b/src/features/GroupChatSettings/store/index.ts @@ -5,9 +5,9 @@ import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StoreApiWithSelector } from '@/types/zustand'; +import { type StoreApiWithSelector } from '@/types/zustand'; -import { Store, store } from './action'; +import { type Store, store } from './action'; export type { State } from './initialState'; diff --git a/src/features/GroupChatSettings/store/initialState.ts b/src/features/GroupChatSettings/store/initialState.ts index bdeb4e4241..71b3d9bf49 100644 --- a/src/features/GroupChatSettings/store/initialState.ts +++ b/src/features/GroupChatSettings/store/initialState.ts @@ -1,5 +1,5 @@ import { DEFAULT_CHAT_GROUP_CHAT_CONFIG, DEFAULT_CHAT_GROUP_META_CONFIG } from '@/const/settings'; -import { LobeChatGroupConfig, LobeChatGroupMetaConfig } from '@/types/agentGroup'; +import { type LobeChatGroupConfig, type LobeChatGroupMetaConfig } from '@/types/agentGroup'; export type LoadingState = Record; diff --git a/src/features/GroupChatSettings/store/selectors.ts b/src/features/GroupChatSettings/store/selectors.ts index dbd4be4f9d..fb13bf4f1b 100644 --- a/src/features/GroupChatSettings/store/selectors.ts +++ b/src/features/GroupChatSettings/store/selectors.ts @@ -1,7 +1,7 @@ import { DEFAULT_CHAT_GROUP_CHAT_CONFIG, DEFAULT_CHAT_GROUP_META_CONFIG } from '@/const/settings'; import { merge } from '@/utils/merge'; -import { State } from './initialState'; +import { type State } from './initialState'; const currentChatConfig = (s: State) => merge(DEFAULT_CHAT_GROUP_CHAT_CONFIG, s.config); diff --git a/src/features/GroupInfo/index.tsx b/src/features/GroupInfo/index.tsx index d51273caf0..a1bb31eb30 100644 --- a/src/features/GroupInfo/index.tsx +++ b/src/features/GroupInfo/index.tsx @@ -1,9 +1,9 @@ import { Avatar, Center, Tag } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { startCase } from 'es-toolkit/compat'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; -import { MetaData } from '@/types/meta'; +import { type MetaData } from '@/types/meta'; const useStyles = createStyles(({ css, token }) => ({ avatar: css` diff --git a/src/features/HotkeyHelperPanel/HotkeyContent.tsx b/src/features/HotkeyHelperPanel/HotkeyContent.tsx index 31e182f374..da96833de2 100644 --- a/src/features/HotkeyHelperPanel/HotkeyContent.tsx +++ b/src/features/HotkeyHelperPanel/HotkeyContent.tsx @@ -8,7 +8,7 @@ import { HOTKEYS_REGISTRATION } from '@/const/hotkeys'; import hotkeyMeta from '@/locales/default/hotkey'; import { useUserStore } from '@/store/user'; import { settingsSelectors } from '@/store/user/slices/settings/selectors'; -import { HotkeyGroupId } from '@/types/hotkey'; +import { type HotkeyGroupId } from '@/types/hotkey'; const useStyle = createStyles(({ css, token }) => ({ desc: css` diff --git a/src/features/HotkeyHelperPanel/index.tsx b/src/features/HotkeyHelperPanel/index.tsx index b4b6c8fdbd..ce5b4122cd 100644 --- a/src/features/HotkeyHelperPanel/index.tsx +++ b/src/features/HotkeyHelperPanel/index.tsx @@ -6,7 +6,7 @@ import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useGlobalStore } from '@/store/global'; -import { HotkeyGroupEnum, HotkeyGroupId } from '@/types/hotkey'; +import { HotkeyGroupEnum, type HotkeyGroupId } from '@/types/hotkey'; import HotkeyContent from './HotkeyContent'; diff --git a/src/features/ImageSidePanel/index.tsx b/src/features/ImageSidePanel/index.tsx index 4296a4abc8..adf0c5f8d2 100644 --- a/src/features/ImageSidePanel/index.tsx +++ b/src/features/ImageSidePanel/index.tsx @@ -3,7 +3,7 @@ import { DraggablePanel, DraggablePanelContainer, type DraggablePanelProps } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { PropsWithChildren, memo, useEffect, useState } from 'react'; +import { type PropsWithChildren, memo, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import PanelTitle from '@/components/PanelTitle'; diff --git a/src/features/ImageTopicPanel/index.tsx b/src/features/ImageTopicPanel/index.tsx index b6a07fec7c..1f2ac9c0f7 100644 --- a/src/features/ImageTopicPanel/index.tsx +++ b/src/features/ImageTopicPanel/index.tsx @@ -3,7 +3,7 @@ import { DraggablePanel, DraggablePanelContainer, type DraggablePanelProps } from '@lobehub/ui'; import { createStyles, useResponsive } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { PropsWithChildren, memo, useEffect, useState } from 'react'; +import { type PropsWithChildren, memo, useEffect, useState } from 'react'; import { useGlobalStore } from '@/store/global'; import { systemStatusSelectors } from '@/store/global/selectors'; diff --git a/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItem.tsx b/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItem.tsx index 7a48263222..be41d36b6d 100644 --- a/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItem.tsx +++ b/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItem.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import KnowledgeIcon from '@/components/KnowledgeIcon'; -import { KnowledgeItem } from '@/types/knowledgeBase'; +import { type KnowledgeItem } from '@/types/knowledgeBase'; import Actions from './Action'; diff --git a/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItemWrapper.tsx b/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItemWrapper.tsx index 8501d067aa..4423164912 100644 --- a/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItemWrapper.tsx +++ b/src/features/LibraryModal/AssignKnowledgeBase/Item/MasonryItemWrapper.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { KnowledgeItem } from '@/types/knowledgeBase'; +import { type KnowledgeItem } from '@/types/knowledgeBase'; import MasonryItem from './MasonryItem'; diff --git a/src/features/LibraryModal/AssignKnowledgeBase/Item/PluginTag.tsx b/src/features/LibraryModal/AssignKnowledgeBase/Item/PluginTag.tsx index 10924978c2..12fa6b131c 100644 --- a/src/features/LibraryModal/AssignKnowledgeBase/Item/PluginTag.tsx +++ b/src/features/LibraryModal/AssignKnowledgeBase/Item/PluginTag.tsx @@ -5,7 +5,7 @@ import { rgba } from 'polished'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { InstallPluginMeta } from '@/types/tool/plugin'; +import { type InstallPluginMeta } from '@/types/tool/plugin'; const useStyles = createStyles(({ css, token }) => ({ community: css` diff --git a/src/features/LibraryModal/AssignKnowledgeBase/Item/index.tsx b/src/features/LibraryModal/AssignKnowledgeBase/Item/index.tsx index d3a2dec08d..7beafc11ae 100644 --- a/src/features/LibraryModal/AssignKnowledgeBase/Item/index.tsx +++ b/src/features/LibraryModal/AssignKnowledgeBase/Item/index.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import KnowledgeIcon from '@/components/KnowledgeIcon'; -import { KnowledgeItem } from '@/types/knowledgeBase'; +import { type KnowledgeItem } from '@/types/knowledgeBase'; import Actions from './Action'; diff --git a/src/features/LibraryModal/AssignKnowledgeBase/List.tsx b/src/features/LibraryModal/AssignKnowledgeBase/List.tsx index 20203fddae..7ef691e969 100644 --- a/src/features/LibraryModal/AssignKnowledgeBase/List.tsx +++ b/src/features/LibraryModal/AssignKnowledgeBase/List.tsx @@ -12,7 +12,7 @@ import Item from './Item'; import MasonryItemWrapper from './Item/MasonryItemWrapper'; import Loading from './Loading'; import MasonrySkeleton from './MasonrySkeleton'; -import ViewSwitcher, { ViewMode } from './ViewSwitcher'; +import ViewSwitcher, { type ViewMode } from './ViewSwitcher'; export const List = memo(() => { const { t } = useTranslation('file'); diff --git a/src/features/LibraryModal/CreateNew/CreateForm.tsx b/src/features/LibraryModal/CreateNew/CreateForm.tsx index 3cbd16bbda..24f3bf3baa 100644 --- a/src/features/LibraryModal/CreateNew/CreateForm.tsx +++ b/src/features/LibraryModal/CreateNew/CreateForm.tsx @@ -3,7 +3,7 @@ import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useKnowledgeBaseStore } from '@/store/knowledgeBase'; -import { CreateKnowledgeBaseParams } from '@/types/knowledgeBase'; +import { type CreateKnowledgeBaseParams } from '@/types/knowledgeBase'; interface CreateFormProps { onClose?: () => void; diff --git a/src/features/MCP/MCPInstallProgress/InstallError/ErrorDetails.tsx b/src/features/MCP/MCPInstallProgress/InstallError/ErrorDetails.tsx index a61dd5ccf8..9a8214995f 100644 --- a/src/features/MCP/MCPInstallProgress/InstallError/ErrorDetails.tsx +++ b/src/features/MCP/MCPInstallProgress/InstallError/ErrorDetails.tsx @@ -5,7 +5,7 @@ import * as motion from 'motion/react-m'; import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { MCPErrorInfoMetadata } from '@/types/plugins'; +import { type MCPErrorInfoMetadata } from '@/types/plugins'; const ErrorDetails = memo<{ errorInfo: MCPErrorInfoMetadata; diff --git a/src/features/MCP/MCPInstallProgress/InstallError/index.tsx b/src/features/MCP/MCPInstallProgress/InstallError/index.tsx index 36d601fb54..6006b96161 100644 --- a/src/features/MCP/MCPInstallProgress/InstallError/index.tsx +++ b/src/features/MCP/MCPInstallProgress/InstallError/index.tsx @@ -3,7 +3,7 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useToolStore } from '@/store/tool'; -import { MCPErrorInfo } from '@/types/plugins'; +import { type MCPErrorInfo } from '@/types/plugins'; import ErrorDetails from './ErrorDetails'; diff --git a/src/features/MCP/MCPInstallProgress/MCPDependenciesGuide.tsx b/src/features/MCP/MCPInstallProgress/MCPDependenciesGuide.tsx index 88157d456e..32d7745243 100644 --- a/src/features/MCP/MCPInstallProgress/MCPDependenciesGuide.tsx +++ b/src/features/MCP/MCPInstallProgress/MCPDependenciesGuide.tsx @@ -7,7 +7,7 @@ import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useToolStore } from '@/store/tool'; -import { SystemDependencyCheckResult } from '@/types/plugins'; +import { type SystemDependencyCheckResult } from '@/types/plugins'; interface MCPDependenciesGuideProps { identifier: string; diff --git a/src/features/MCP/calculateScore.ts b/src/features/MCP/calculateScore.ts index 0f497a843e..cb91ab2de2 100644 --- a/src/features/MCP/calculateScore.ts +++ b/src/features/MCP/calculateScore.ts @@ -1,6 +1,6 @@ -import { DeploymentOption } from '@lobehub/market-types'; +import { type DeploymentOption } from '@lobehub/market-types'; -import { DiscoverMcpDetail } from '@/types/discover'; +import { type DiscoverMcpDetail } from '@/types/discover'; export interface ScoreItem { check: boolean; diff --git a/src/features/MCP/useScoreList.ts b/src/features/MCP/useScoreList.ts index 328d8d5cfb..38b5bf52c7 100644 --- a/src/features/MCP/useScoreList.ts +++ b/src/features/MCP/useScoreList.ts @@ -2,7 +2,7 @@ import { useTranslation } from 'react-i18next'; import { useDetailContext } from '@/features/MCPPluginDetail/DetailProvider'; -import { DEFAULT_WEIGHTS, ScoreListItem, calculateScoreFlags } from './calculateScore'; +import { DEFAULT_WEIGHTS, type ScoreListItem, calculateScoreFlags } from './calculateScore'; /** * Hook for creating score list items with translations diff --git a/src/features/MCP/utils.ts b/src/features/MCP/utils.ts index 986f909f11..dcc02acf14 100644 --- a/src/features/MCP/utils.ts +++ b/src/features/MCP/utils.ts @@ -1,4 +1,4 @@ -import { ConnectionConfig, DeploymentOption } from '@lobehub/market-types'; +import { type ConnectionConfig, type DeploymentOption } from '@lobehub/market-types'; export const genServerConfig = (identifier?: string, connection?: ConnectionConfig) => { // 检查是否为 HTTP 类型 diff --git a/src/features/MCPPluginDetail/CollapseDesc.tsx b/src/features/MCPPluginDetail/CollapseDesc.tsx index cc2fc74b10..1689d1cf36 100644 --- a/src/features/MCPPluginDetail/CollapseDesc.tsx +++ b/src/features/MCPPluginDetail/CollapseDesc.tsx @@ -1,6 +1,6 @@ import { Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; const useStyles = createStyles(({ css, token }) => { return { diff --git a/src/features/MCPPluginDetail/CollapseLayout.tsx b/src/features/MCPPluginDetail/CollapseLayout.tsx index 17847ebee1..ba98c5123f 100644 --- a/src/features/MCPPluginDetail/CollapseLayout.tsx +++ b/src/features/MCPPluginDetail/CollapseLayout.tsx @@ -1,7 +1,7 @@ import { Flexbox } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; -import Title, { TitleProps } from '../../app/[variants]/(main)/community/features/Title'; +import Title, { type TitleProps } from '../../app/[variants]/(main)/community/features/Title'; export type CollapseItemType = { children: ReactNode; diff --git a/src/features/MCPPluginDetail/Deployment/Platform/index.tsx b/src/features/MCPPluginDetail/Deployment/Platform/index.tsx index e0880abb24..c00e2d8dca 100644 --- a/src/features/MCPPluginDetail/Deployment/Platform/index.tsx +++ b/src/features/MCPPluginDetail/Deployment/Platform/index.tsx @@ -1,4 +1,4 @@ -import { ConnectionConfig } from '@lobehub/market-types'; +import { type ConnectionConfig } from '@lobehub/market-types'; import { Block, Highlighter } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/features/MCPPluginDetail/DetailProvider.tsx b/src/features/MCPPluginDetail/DetailProvider.tsx index f52beb4429..8362890b80 100644 --- a/src/features/MCPPluginDetail/DetailProvider.tsx +++ b/src/features/MCPPluginDetail/DetailProvider.tsx @@ -2,7 +2,7 @@ import { type ReactNode, createContext, memo, use } from 'react'; -import { DiscoverMcpDetail } from '@/types/discover'; +import { type DiscoverMcpDetail } from '@/types/discover'; export type DetailContextConfig = Partial; diff --git a/src/features/MCPPluginDetail/Nav.tsx b/src/features/MCPPluginDetail/Nav.tsx index f1a39e2b5e..26928bdee0 100644 --- a/src/features/MCPPluginDetail/Nav.tsx +++ b/src/features/MCPPluginDetail/Nav.tsx @@ -1,7 +1,7 @@ 'use client'; import { SOCIAL_URL } from '@lobechat/business-const'; -import { Flexbox, Icon, Tabs, TabsProps, Tag } from '@lobehub/ui'; +import { Flexbox, Icon, Tabs, type TabsProps, Tag } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { BookOpenIcon, diff --git a/src/features/MCPPluginDetail/Schema/Block.tsx b/src/features/MCPPluginDetail/Schema/Block.tsx index 335ffba48e..d9e9ad9fae 100644 --- a/src/features/MCPPluginDetail/Schema/Block.tsx +++ b/src/features/MCPPluginDetail/Schema/Block.tsx @@ -1,5 +1,5 @@ import { Flexbox, Segmented, Tag } from '@lobehub/ui'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useTranslation } from 'react-i18next'; import Title from '../../../app/[variants]/(main)/community/features/Title'; diff --git a/src/features/MCPPluginDetail/Score/ScoreItem.tsx b/src/features/MCPPluginDetail/Score/ScoreItem.tsx index 7ca669d210..599f95654c 100644 --- a/src/features/MCPPluginDetail/Score/ScoreItem.tsx +++ b/src/features/MCPPluginDetail/Score/ScoreItem.tsx @@ -1,7 +1,7 @@ import { Flexbox, Icon } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { BanIcon, CircleCheckBigIcon, CircleDashedIcon } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import Title from '../../../app/[variants]/(main)/community/features/Title'; diff --git a/src/features/MCPPluginDetail/Score/ScoreList.tsx b/src/features/MCPPluginDetail/Score/ScoreList.tsx index 638bcf50bd..d4175a6b81 100644 --- a/src/features/MCPPluginDetail/Score/ScoreList.tsx +++ b/src/features/MCPPluginDetail/Score/ScoreList.tsx @@ -2,7 +2,7 @@ import { Flexbox } from '@lobehub/ui'; import { Divider } from 'antd'; import { Fragment, memo } from 'react'; -import ScoreItem, { ScoreItemProps } from './ScoreItem'; +import ScoreItem, { type ScoreItemProps } from './ScoreItem'; interface ScoreListProps { items: ScoreItemProps[]; diff --git a/src/features/MCPPluginDetail/Score/TotalScore.tsx b/src/features/MCPPluginDetail/Score/TotalScore.tsx index a9a8657acb..499e884603 100644 --- a/src/features/MCPPluginDetail/Score/TotalScore.tsx +++ b/src/features/MCPPluginDetail/Score/TotalScore.tsx @@ -4,7 +4,7 @@ import { createStyles } from 'antd-style'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; -import { ScoreResult, getGradeColor, sortItemsByPriority } from '../../MCP/calculateScore'; +import { type ScoreResult, getGradeColor, sortItemsByPriority } from '../../MCP/calculateScore'; const useStyles = createStyles(({ css, token }) => ({ colorDot: css` diff --git a/src/features/MobileSwitchLoading/index.tsx b/src/features/MobileSwitchLoading/index.tsx index 27a11a923d..1b3c07ac7f 100644 --- a/src/features/MobileSwitchLoading/index.tsx +++ b/src/features/MobileSwitchLoading/index.tsx @@ -1,6 +1,6 @@ import { Center, Flexbox, Icon } from '@lobehub/ui'; import { Loader2 } from 'lucide-react'; -import { DynamicOptions } from 'next/dist/shared/lib/dynamic'; +import { type DynamicOptions } from 'next/dist/shared/lib/dynamic'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/ModelSelect/index.tsx b/src/features/ModelSelect/index.tsx index 4f22dbe7c8..c2d9b56989 100644 --- a/src/features/ModelSelect/index.tsx +++ b/src/features/ModelSelect/index.tsx @@ -1,10 +1,10 @@ -import { Select, SelectProps, TooltipGroup } from '@lobehub/ui'; +import { Select, type SelectProps, TooltipGroup } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo, useMemo } from 'react'; import { ModelItemRender, ProviderItemRender, TAG_CLASSNAME } from '@/components/ModelSelect'; import { useEnabledChatModels } from '@/hooks/useEnabledChatModels'; -import { EnabledProviderWithModels } from '@/types/aiProvider'; +import { type EnabledProviderWithModels } from '@/types/aiProvider'; const useStyles = createStyles(({ css, prefixCls }) => ({ popup: css` diff --git a/src/features/ModelSwitchPanel/index.tsx b/src/features/ModelSwitchPanel/index.tsx index 50771e3fdf..e35af36e68 100644 --- a/src/features/ModelSwitchPanel/index.tsx +++ b/src/features/ModelSwitchPanel/index.tsx @@ -2,7 +2,7 @@ import { ActionIcon, Flexbox, Icon, TooltipGroup } from '@lobehub/ui'; import { Dropdown } from 'antd'; import { createStyles } from 'antd-style'; import { LucideArrowRight, LucideBolt } from 'lucide-react'; -import { AiModelForSelect } from 'model-bank'; +import { type AiModelForSelect } from 'model-bank'; import { type ReactNode, memo, useCallback, useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { Rnd } from 'react-rnd'; @@ -13,7 +13,7 @@ import { ModelItemRender, ProviderItemRender } from '@/components/ModelSelect'; import { useEnabledChatModels } from '@/hooks/useEnabledChatModels'; import { useAgentStore } from '@/store/agent'; import { agentSelectors } from '@/store/agent/selectors'; -import { EnabledProviderWithModels } from '@/types/aiProvider'; +import { type EnabledProviderWithModels } from '@/types/aiProvider'; const STORAGE_KEY = 'MODEL_SWITCH_PANEL_WIDTH'; const DEFAULT_WIDTH = 320; diff --git a/src/features/NavHeader/index.tsx b/src/features/NavHeader/index.tsx index a82a9ca802..0d742f4794 100644 --- a/src/features/NavHeader/index.tsx +++ b/src/features/NavHeader/index.tsx @@ -1,5 +1,5 @@ -import { Flexbox, FlexboxProps } from '@lobehub/ui'; -import { CSSProperties, ReactNode, memo } from 'react'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; +import { type CSSProperties, type ReactNode, memo } from 'react'; import ToggleLeftPanelButton from '@/features/NavPanel/ToggleLeftPanelButton'; import { useNavPanel } from '@/features/NavPanel/hooks/useNavPanel'; diff --git a/src/features/NavPanel/SideBarDrawer.tsx b/src/features/NavPanel/SideBarDrawer.tsx index 720b392447..dd88c36308 100644 --- a/src/features/NavPanel/SideBarDrawer.tsx +++ b/src/features/NavPanel/SideBarDrawer.tsx @@ -4,7 +4,7 @@ import { ActionIcon, Flexbox, Text } from '@lobehub/ui'; import { Drawer } from 'antd'; import { useTheme } from 'antd-style'; import { XIcon } from 'lucide-react'; -import { ReactNode, Suspense, memo } from 'react'; +import { type ReactNode, Suspense, memo } from 'react'; import { DESKTOP_HEADER_ICON_SIZE } from '@/const/layoutTokens'; diff --git a/src/features/NavPanel/SideBarHeaderLayout.tsx b/src/features/NavPanel/SideBarHeaderLayout.tsx index 08a848174c..f5ad52ae10 100644 --- a/src/features/NavPanel/SideBarHeaderLayout.tsx +++ b/src/features/NavPanel/SideBarHeaderLayout.tsx @@ -1,10 +1,10 @@ 'use client'; import { Flexbox, Icon, Text } from '@lobehub/ui'; -import { Breadcrumb, BreadcrumbProps } from 'antd'; +import { Breadcrumb, type BreadcrumbProps } from 'antd'; import { createStyles } from 'antd-style'; import { ChevronRightIcon, HomeIcon } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { flushSync } from 'react-dom'; import { useNavigate } from 'react-router-dom'; diff --git a/src/features/NavPanel/SideBarLayout.tsx b/src/features/NavPanel/SideBarLayout.tsx index a23bf5dc19..75995cf162 100644 --- a/src/features/NavPanel/SideBarLayout.tsx +++ b/src/features/NavPanel/SideBarLayout.tsx @@ -1,5 +1,5 @@ import { Flexbox, ScrollShadow } from '@lobehub/ui'; -import { ReactNode, Suspense, memo } from 'react'; +import { type ReactNode, Suspense, memo } from 'react'; import Footer from '@/app/[variants]/(main)/home/_layout/Footer'; import SkeletonList, { SkeletonItem } from '@/features/NavPanel/components/SkeletonList'; diff --git a/src/features/NavPanel/ToggleLeftPanelButton.tsx b/src/features/NavPanel/ToggleLeftPanelButton.tsx index 38a9a08b31..6f9a1c1b7b 100644 --- a/src/features/NavPanel/ToggleLeftPanelButton.tsx +++ b/src/features/NavPanel/ToggleLeftPanelButton.tsx @@ -1,8 +1,8 @@ 'use client'; -import { ActionIcon, ActionIconProps } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps } from '@lobehub/ui'; import { PanelLeftClose, PanelLeftOpen } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { DESKTOP_HEADER_ICON_SIZE } from '@/const/layoutTokens'; diff --git a/src/features/NavPanel/components/BackButton.tsx b/src/features/NavPanel/components/BackButton.tsx index 9181e1a7da..2770184543 100644 --- a/src/features/NavPanel/components/BackButton.tsx +++ b/src/features/NavPanel/components/BackButton.tsx @@ -1,4 +1,4 @@ -import { ActionIcon, ActionIconProps } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps } from '@lobehub/ui'; import { ChevronLeftIcon } from 'lucide-react'; import { memo } from 'react'; import { useNavigate } from 'react-router-dom'; diff --git a/src/features/NavPanel/components/BackNav.tsx b/src/features/NavPanel/components/BackNav.tsx index 4296d16dde..608856aa35 100644 --- a/src/features/NavPanel/components/BackNav.tsx +++ b/src/features/NavPanel/components/BackNav.tsx @@ -1,7 +1,7 @@ import { ActionIcon, Button, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronLeftIcon } from 'lucide-react'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; diff --git a/src/features/NavPanel/components/NavItem.tsx b/src/features/NavPanel/components/NavItem.tsx index 8111534c79..cf03aee31f 100644 --- a/src/features/NavPanel/components/NavItem.tsx +++ b/src/features/NavPanel/components/NavItem.tsx @@ -1,9 +1,9 @@ 'use client'; -import { Block, BlockProps, Center, Flexbox, Icon, IconProps, Text } from '@lobehub/ui'; +import { Block, type BlockProps, Center, Flexbox, Icon, type IconProps, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Loader2Icon } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; const ACTION_CLASS_NAME = 'nav-item-actions'; diff --git a/src/features/NavPanel/components/SkeletonList.tsx b/src/features/NavPanel/components/SkeletonList.tsx index d23cbe924a..b396cc736d 100644 --- a/src/features/NavPanel/components/SkeletonList.tsx +++ b/src/features/NavPanel/components/SkeletonList.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Flexbox, FlexboxProps, Skeleton } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Skeleton } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { memo } from 'react'; diff --git a/src/features/NavPanel/index.tsx b/src/features/NavPanel/index.tsx index 7f6557be0b..3cb64f3e81 100644 --- a/src/features/NavPanel/index.tsx +++ b/src/features/NavPanel/index.tsx @@ -3,7 +3,7 @@ import { DraggablePanel } from '@lobehub/ui'; import { createStyles, useTheme } from 'antd-style'; import { AnimatePresence, motion } from 'motion/react'; -import { PropsWithChildren, ReactNode, memo, useLayoutEffect, useSyncExternalStore } from 'react'; +import { type PropsWithChildren, type ReactNode, memo, useLayoutEffect, useSyncExternalStore } from 'react'; import { USER_DROPDOWN_ICON_ID } from '@/app/[variants]/(main)/home/_layout/Header/components/User'; import { isDesktop } from '@/const/version'; diff --git a/src/features/OllamaModelDownloader/index.tsx b/src/features/OllamaModelDownloader/index.tsx index 16c9cdd4d7..e74abbad96 100644 --- a/src/features/OllamaModelDownloader/index.tsx +++ b/src/features/OllamaModelDownloader/index.tsx @@ -2,12 +2,12 @@ import { Ollama } from '@lobehub/icons'; import { Alert, Button, Center, Flexbox, Input } from '@lobehub/ui'; import { Progress } from 'antd'; import { useTheme } from 'antd-style'; -import { ReactNode, memo, useCallback, useMemo, useState } from 'react'; +import { type ReactNode, memo, useCallback, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import FormAction from '@/components/FormAction'; import { useActionSWR } from '@/libs/swr'; -import { ModelProgressInfo, modelsService } from '@/services/models'; +import { type ModelProgressInfo, modelsService } from '@/services/models'; import { formatSize } from '@/utils/format'; import { useDownloadMonitor } from './useDownloadMonitor'; diff --git a/src/features/PageEditor/Copilot/AgentSelector/AgentItem.tsx b/src/features/PageEditor/Copilot/AgentSelector/AgentItem.tsx index 188253f1bb..f07756e2e4 100644 --- a/src/features/PageEditor/Copilot/AgentSelector/AgentItem.tsx +++ b/src/features/PageEditor/Copilot/AgentSelector/AgentItem.tsx @@ -1,4 +1,4 @@ -import { GroupMemberAvatar } from '@lobechat/types'; +import { type GroupMemberAvatar } from '@lobechat/types'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PageEditor/EditorCanvas/index.tsx b/src/features/PageEditor/EditorCanvas/index.tsx index 32f8ca6910..62b86b8288 100644 --- a/src/features/PageEditor/EditorCanvas/index.tsx +++ b/src/features/PageEditor/EditorCanvas/index.tsx @@ -13,7 +13,7 @@ import { ReactToolbarPlugin, } from '@lobehub/editor'; import { Editor } from '@lobehub/editor/react'; -import { CSSProperties, memo } from 'react'; +import { type CSSProperties, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { usePageEditorStore } from '../store'; diff --git a/src/features/PageEditor/EditorCanvas/useSlashItems.tsx b/src/features/PageEditor/EditorCanvas/useSlashItems.tsx index a1463e9af5..1b6ea71917 100644 --- a/src/features/PageEditor/EditorCanvas/useSlashItems.tsx +++ b/src/features/PageEditor/EditorCanvas/useSlashItems.tsx @@ -1,5 +1,5 @@ import { - IEditor, + type IEditor, INSERT_CHECK_LIST_COMMAND, INSERT_HEADING_COMMAND, INSERT_HORIZONTAL_RULE_COMMAND, @@ -8,7 +8,7 @@ import { INSERT_ORDERED_LIST_COMMAND, INSERT_TABLE_COMMAND, INSERT_UNORDERED_LIST_COMMAND, - SlashOptions, + type SlashOptions, } from '@lobehub/editor'; import { Text } from '@lobehub/ui'; import { diff --git a/src/features/PageEditor/PageAgentProvider.tsx b/src/features/PageEditor/PageAgentProvider.tsx index b0aaea2379..6fe8dcfae6 100644 --- a/src/features/PageEditor/PageAgentProvider.tsx +++ b/src/features/PageEditor/PageAgentProvider.tsx @@ -1,9 +1,9 @@ -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { ConversationProvider } from '@/features/Conversation'; import { useOperationState } from '@/hooks/useOperationState'; import { useChatStore } from '@/store/chat'; -import { MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; +import { type MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; interface PageAgentProviderProps { children: ReactNode; diff --git a/src/features/PageEditor/PageEditorProvider.tsx b/src/features/PageEditor/PageEditorProvider.tsx index 7aaa099a4b..2fdd1274c7 100644 --- a/src/features/PageEditor/PageEditorProvider.tsx +++ b/src/features/PageEditor/PageEditorProvider.tsx @@ -1,9 +1,9 @@ 'use client'; import { useEditor } from '@lobehub/editor/react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; -import StoreUpdater, { StoreUpdaterProps } from './StoreUpdater'; +import StoreUpdater, { type StoreUpdaterProps } from './StoreUpdater'; import { Provider, createStore } from './store'; interface PageEditorProviderProps extends StoreUpdaterProps { diff --git a/src/features/PageEditor/StoreUpdater.tsx b/src/features/PageEditor/StoreUpdater.tsx index 4ddc4f95f6..2267a14883 100644 --- a/src/features/PageEditor/StoreUpdater.tsx +++ b/src/features/PageEditor/StoreUpdater.tsx @@ -9,7 +9,7 @@ import { pageAgentRuntime } from '@/store/chat/slices/builtinTool/actions/pageAg import { useFileStore } from '@/store/file'; import { documentSelectors } from '@/store/file/slices/document/selectors'; -import { PublicState, usePageEditorStore, useStoreApi } from './store'; +import { type PublicState, usePageEditorStore, useStoreApi } from './store'; const log = debug('page:store-updater'); diff --git a/src/features/PageEditor/store/action.ts b/src/features/PageEditor/store/action.ts index 4dbb86add2..2acd95b8e6 100644 --- a/src/features/PageEditor/store/action.ts +++ b/src/features/PageEditor/store/action.ts @@ -1,14 +1,14 @@ import { EDITOR_DEBOUNCE_TIME, EDITOR_MAX_WAIT } from '@lobechat/const'; import debug from 'debug'; import { debounce } from 'es-toolkit/compat'; -import { StateCreator } from 'zustand'; +import { type StateCreator } from 'zustand'; import { documentService } from '@/services/document'; import { pageAgentRuntime } from '@/store/chat/slices/builtinTool/actions/pageAgent'; import { useFileStore } from '@/store/file'; -import { DocumentSourceType, LobeDocument } from '@/types/document'; +import { DocumentSourceType, type LobeDocument } from '@/types/document'; -import { State, initialState } from './initialState'; +import { type State, initialState } from './initialState'; const log = debug('page:editor'); diff --git a/src/features/PageEditor/store/index.ts b/src/features/PageEditor/store/index.ts index eafe280622..6a8a28f158 100644 --- a/src/features/PageEditor/store/index.ts +++ b/src/features/PageEditor/store/index.ts @@ -1,13 +1,13 @@ 'use client'; -import { StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApiWithSelector } from '@lobechat/types'; import { createContext } from 'zustand-utils'; import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { Store, store } from './action'; -import { State } from './initialState'; +import { type Store, store } from './action'; +import { type State } from './initialState'; export type { PublicState, State } from './initialState'; diff --git a/src/features/PageEditor/store/initialState.ts b/src/features/PageEditor/store/initialState.ts index 52959aedc5..decd95e597 100644 --- a/src/features/PageEditor/store/initialState.ts +++ b/src/features/PageEditor/store/initialState.ts @@ -1,4 +1,4 @@ -import { IEditor } from '@lobehub/editor'; +import { type IEditor } from '@lobehub/editor'; export interface PublicState { autoSave?: boolean; diff --git a/src/features/PageEditor/store/selectors.ts b/src/features/PageEditor/store/selectors.ts index bf1bc942fa..bb2009ade5 100644 --- a/src/features/PageEditor/store/selectors.ts +++ b/src/features/PageEditor/store/selectors.ts @@ -1,4 +1,4 @@ -import { Store } from './action'; +import { type Store } from './action'; export const selectors = { currentDocId: (s: Store) => s.currentDocId, diff --git a/src/features/PageEmpty.tsx b/src/features/PageEmpty.tsx index cfe5e9d1bc..380e91b2b4 100644 --- a/src/features/PageEmpty.tsx +++ b/src/features/PageEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { FileText } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PlanIcon/index.tsx b/src/features/PlanIcon/index.tsx index 1e9fe1fd35..bac5afdec9 100644 --- a/src/features/PlanIcon/index.tsx +++ b/src/features/PlanIcon/index.tsx @@ -1,7 +1,7 @@ import { Center, Flexbox, Icon , Tag } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Atom, Box, CircleSlash, Sparkle, Zap } from 'lucide-react'; -import { CSSProperties, MouseEvent, memo } from 'react'; +import { type CSSProperties, type MouseEvent, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { Plans } from '@/types/subscription'; diff --git a/src/features/PluginDetailModal/index.tsx b/src/features/PluginDetailModal/index.tsx index 406210f2ce..fbef8e939a 100644 --- a/src/features/PluginDetailModal/index.tsx +++ b/src/features/PluginDetailModal/index.tsx @@ -1,4 +1,4 @@ -import { Modal, Segmented, SegmentedProps } from '@lobehub/ui'; +import { Modal, Segmented, type SegmentedProps } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import useMergeState from 'use-merge-value'; diff --git a/src/features/PluginDevModal/LocalForm.tsx b/src/features/PluginDevModal/LocalForm.tsx index 6bceb96e25..92a962ce3c 100644 --- a/src/features/PluginDevModal/LocalForm.tsx +++ b/src/features/PluginDevModal/LocalForm.tsx @@ -1,5 +1,5 @@ -import { Form, FormItemProps, Input, TextArea } from '@lobehub/ui'; -import { FormInstance } from 'antd'; +import { Form, type FormItemProps, Input, TextArea } from '@lobehub/ui'; +import { type FormInstance } from 'antd'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PluginDevModal/MCPManifestForm/CollapsibleSection.tsx b/src/features/PluginDevModal/MCPManifestForm/CollapsibleSection.tsx index 6e76d492a9..c57959422b 100644 --- a/src/features/PluginDevModal/MCPManifestForm/CollapsibleSection.tsx +++ b/src/features/PluginDevModal/MCPManifestForm/CollapsibleSection.tsx @@ -1,6 +1,6 @@ import { createStyles } from 'antd-style'; import { ChevronDown, ChevronRight } from 'lucide-react'; -import { ReactNode, useState } from 'react'; +import { type ReactNode, useState } from 'react'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/features/PluginDevModal/MCPManifestForm/QuickImportSection.tsx b/src/features/PluginDevModal/MCPManifestForm/QuickImportSection.tsx index 709fa43cd4..5d00568c76 100644 --- a/src/features/PluginDevModal/MCPManifestForm/QuickImportSection.tsx +++ b/src/features/PluginDevModal/MCPManifestForm/QuickImportSection.tsx @@ -1,5 +1,5 @@ import { Alert, Flexbox, TextArea , Button } from '@lobehub/ui'; -import { FormInstance } from 'antd'; +import { type FormInstance } from 'antd'; import { useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PluginDevModal/MCPManifestForm/index.tsx b/src/features/PluginDevModal/MCPManifestForm/index.tsx index 8d4fdcd208..881fbf7435 100644 --- a/src/features/PluginDevModal/MCPManifestForm/index.tsx +++ b/src/features/PluginDevModal/MCPManifestForm/index.tsx @@ -1,5 +1,5 @@ import { Alert, Flexbox, FormItem, Input, InputPassword , Button } from '@lobehub/ui'; -import { Divider, Form, FormInstance, Radio } from 'antd'; +import { Divider, Form, type FormInstance, Radio } from 'antd'; import isEqual from 'fast-deep-equal'; import { useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PluginDevModal/MCPManifestForm/utils.ts b/src/features/PluginDevModal/MCPManifestForm/utils.ts index 743a378a31..9e2d541fd7 100644 --- a/src/features/PluginDevModal/MCPManifestForm/utils.ts +++ b/src/features/PluginDevModal/MCPManifestForm/utils.ts @@ -1,4 +1,4 @@ -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { safeParseJSON } from '@/utils/safeParseJSON'; diff --git a/src/features/PluginDevModal/PluginPreview/index.tsx b/src/features/PluginDevModal/PluginPreview/index.tsx index 74c0a2bbc6..b1371a5822 100644 --- a/src/features/PluginDevModal/PluginPreview/index.tsx +++ b/src/features/PluginDevModal/PluginPreview/index.tsx @@ -1,6 +1,6 @@ -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { Block, Flexbox, Icon, Text , Button } from '@lobehub/ui'; -import { Form as AForm, FormInstance } from 'antd'; +import { Form as AForm, type FormInstance } from 'antd'; import { useTheme } from 'antd-style'; import { FileCode } from 'lucide-react'; import { memo } from 'react'; diff --git a/src/features/PluginDevModal/UrlManifestForm.tsx b/src/features/PluginDevModal/UrlManifestForm.tsx index 1a3177d91f..5421a8d379 100644 --- a/src/features/PluginDevModal/UrlManifestForm.tsx +++ b/src/features/PluginDevModal/UrlManifestForm.tsx @@ -1,7 +1,7 @@ import { BRANDING_NAME } from '@lobechat/business-const'; -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { ActionIcon, Flexbox, FormItem, Input } from '@lobehub/ui'; -import { Checkbox, Form, FormInstance } from 'antd'; +import { Checkbox, Form, type FormInstance } from 'antd'; import { FileCode, RotateCwIcon } from 'lucide-react'; import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; @@ -10,7 +10,7 @@ import ManifestPreviewer from '@/components/ManifestPreviewer'; import { toolService } from '@/services/tool'; import { useToolStore } from '@/store/tool'; import { pluginSelectors } from '@/store/tool/selectors'; -import { PluginInstallError } from '@/types/tool/plugin'; +import { type PluginInstallError } from '@/types/tool/plugin'; interface ProxyCheckerProps { onChange?: (value: boolean) => void; diff --git a/src/features/PluginDevModal/index.tsx b/src/features/PluginDevModal/index.tsx index 6f7ead1bb4..f6b46f6fa1 100644 --- a/src/features/PluginDevModal/index.tsx +++ b/src/features/PluginDevModal/index.tsx @@ -8,7 +8,7 @@ import { Trans, useTranslation } from 'react-i18next'; import { WIKI_PLUGIN_GUIDE } from '@/const/url'; import { isDesktop } from '@/const/version'; import { TITLE_BAR_HEIGHT } from '@/features/ElectronTitlebar'; -import { LobeToolCustomPlugin } from '@/types/tool/plugin'; +import { type LobeToolCustomPlugin } from '@/types/tool/plugin'; import MCPManifestForm from './MCPManifestForm'; import PluginPreview from './PluginPreview'; diff --git a/src/features/PluginSettings/index.tsx b/src/features/PluginSettings/index.tsx index 8b3be05fa6..38ef4b96f4 100644 --- a/src/features/PluginSettings/index.tsx +++ b/src/features/PluginSettings/index.tsx @@ -1,4 +1,4 @@ -import { PluginSchema } from '@lobehub/chat-plugin-sdk'; +import { type PluginSchema } from '@lobehub/chat-plugin-sdk'; import { Form, Markdown } from '@lobehub/ui'; import { Form as AForm } from 'antd'; import { createStyles } from 'antd-style'; diff --git a/src/features/PluginStore/Content.tsx b/src/features/PluginStore/Content.tsx index 9ca44788de..a65ef9b150 100644 --- a/src/features/PluginStore/Content.tsx +++ b/src/features/PluginStore/Content.tsx @@ -1,5 +1,5 @@ import { Flexbox, Segmented } from '@lobehub/ui'; -import { SegmentedOptions } from 'antd/es/segmented'; +import { type SegmentedOptions } from 'antd/es/segmented'; import { memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PluginStore/InstalledList/EditCustomPlugin.tsx b/src/features/PluginStore/InstalledList/EditCustomPlugin.tsx index 3c7378bbd5..e78d3a6046 100644 --- a/src/features/PluginStore/InstalledList/EditCustomPlugin.tsx +++ b/src/features/PluginStore/InstalledList/EditCustomPlugin.tsx @@ -1,5 +1,5 @@ import isEqual from 'fast-deep-equal'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import DevModal from '@/features/PluginDevModal'; import { useToolStore } from '@/store/tool'; diff --git a/src/features/PluginStore/InstalledList/List/Item/Action.tsx b/src/features/PluginStore/InstalledList/List/Item/Action.tsx index da0f2c4f8c..27ddf7075b 100644 --- a/src/features/PluginStore/InstalledList/List/Item/Action.tsx +++ b/src/features/PluginStore/InstalledList/List/Item/Action.tsx @@ -10,7 +10,7 @@ import { agentSelectors } from '@/store/agent/selectors'; import { useServerConfigStore } from '@/store/serverConfig'; import { pluginHelpers, useToolStore } from '@/store/tool'; import { pluginSelectors, pluginStoreSelectors } from '@/store/tool/selectors'; -import { LobeToolType } from '@/types/tool/tool'; +import { type LobeToolType } from '@/types/tool/tool'; import EditCustomPlugin from '../../EditCustomPlugin'; diff --git a/src/features/PluginStore/InstalledList/List/Item/index.tsx b/src/features/PluginStore/InstalledList/List/Item/index.tsx index 43bdadabe9..11ad524e92 100644 --- a/src/features/PluginStore/InstalledList/List/Item/index.tsx +++ b/src/features/PluginStore/InstalledList/List/Item/index.tsx @@ -3,8 +3,8 @@ import { memo } from 'react'; import PluginAvatar from '@/components/Plugins/PluginAvatar'; import PluginTag from '@/components/Plugins/PluginTag'; -import { DiscoverPluginItem } from '@/types/discover'; -import { LobeToolType } from '@/types/tool/tool'; +import { type DiscoverPluginItem } from '@/types/discover'; +import { type LobeToolType } from '@/types/tool/tool'; import Actions from './Action'; diff --git a/src/features/PluginStore/InstalledList/List/index.tsx b/src/features/PluginStore/InstalledList/List/index.tsx index cde5197e28..d638f6e537 100644 --- a/src/features/PluginStore/InstalledList/List/index.tsx +++ b/src/features/PluginStore/InstalledList/List/index.tsx @@ -5,7 +5,7 @@ import { Virtuoso } from 'react-virtuoso'; import { useToolStore } from '@/store/tool'; import { pluginSelectors } from '@/store/tool/selectors'; -import { LobeToolType } from '@/types/tool/tool'; +import { type LobeToolType } from '@/types/tool/tool'; import PluginEmpty from '../../PluginEmpty'; import PluginItem from './Item'; diff --git a/src/features/PluginStore/InstalledList/index.tsx b/src/features/PluginStore/InstalledList/index.tsx index 0cddec2b2d..c1f5e56cb3 100644 --- a/src/features/PluginStore/InstalledList/index.tsx +++ b/src/features/PluginStore/InstalledList/index.tsx @@ -6,7 +6,7 @@ import { useTranslation } from 'react-i18next'; import { useToolStore } from '@/store/tool'; import { pluginSelectors } from '@/store/tool/selectors'; -import { LobeToolType } from '@/types/tool/tool'; +import { type LobeToolType } from '@/types/tool/tool'; import PluginEmpty from '../PluginEmpty'; import Detail from './Detail'; diff --git a/src/features/PluginStore/McpList/List/Item.tsx b/src/features/PluginStore/McpList/List/Item.tsx index 694dd1850e..540d919f23 100644 --- a/src/features/PluginStore/McpList/List/Item.tsx +++ b/src/features/PluginStore/McpList/List/Item.tsx @@ -6,9 +6,9 @@ import PluginAvatar from '@/components/Plugins/PluginAvatar'; import MCPInstallProgress from '@/features/MCP/MCPInstallProgress'; import { useToolStore } from '@/store/tool'; import { mcpStoreSelectors } from '@/store/tool/selectors'; -import { DiscoverMcpItem } from '@/types/discover'; +import { type DiscoverMcpItem } from '@/types/discover'; import { MCPInstallStep } from '@/types/plugins'; -import { LobeToolType } from '@/types/tool/tool'; +import { type LobeToolType } from '@/types/tool/tool'; import Actions from './Action'; diff --git a/src/features/PluginStore/PluginEmpty.tsx b/src/features/PluginStore/PluginEmpty.tsx index 326c5d8bbc..ad3c41406b 100644 --- a/src/features/PluginStore/PluginEmpty.tsx +++ b/src/features/PluginStore/PluginEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { Plug2 } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/PluginStore/PluginList/Detail/DetailProvider.tsx b/src/features/PluginStore/PluginList/Detail/DetailProvider.tsx index f740e8a492..a0cd61484b 100644 --- a/src/features/PluginStore/PluginList/Detail/DetailProvider.tsx +++ b/src/features/PluginStore/PluginList/Detail/DetailProvider.tsx @@ -2,7 +2,7 @@ import { type ReactNode, createContext, memo, use } from 'react'; -import { DiscoverPluginDetail } from '@/types/discover'; +import { type DiscoverPluginDetail } from '@/types/discover'; export type DetailContextConfig = Partial; diff --git a/src/features/PluginStore/PluginList/Detail/InstallDetail/Nav.tsx b/src/features/PluginStore/PluginList/Detail/InstallDetail/Nav.tsx index 4991389caf..eaadaa2858 100644 --- a/src/features/PluginStore/PluginList/Detail/InstallDetail/Nav.tsx +++ b/src/features/PluginStore/PluginList/Detail/InstallDetail/Nav.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Flexbox, Icon, Tabs, TabsProps } from '@lobehub/ui'; +import { Flexbox, Icon, Tabs, type TabsProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { BookOpenIcon, HammerIcon } from 'lucide-react'; import { memo } from 'react'; diff --git a/src/features/PluginStore/PluginList/List/Item.tsx b/src/features/PluginStore/PluginList/List/Item.tsx index 03b13f77e0..9a8ec1908c 100644 --- a/src/features/PluginStore/PluginList/List/Item.tsx +++ b/src/features/PluginStore/PluginList/List/Item.tsx @@ -10,8 +10,8 @@ import PluginTag from '@/components/Plugins/PluginTag'; import { useToolStore } from '@/store/tool'; import { pluginStoreSelectors } from '@/store/tool/selectors'; import { PluginInstallStep } from '@/store/tool/slices/oldStore/initialState'; -import { DiscoverPluginItem } from '@/types/discover'; -import { LobeToolType } from '@/types/tool/tool'; +import { type DiscoverPluginItem } from '@/types/discover'; +import { type LobeToolType } from '@/types/tool/tool'; import Actions from './Action'; diff --git a/src/features/PluginsUI/Render/DefaultType/IFrameRender/index.tsx b/src/features/PluginsUI/Render/DefaultType/IFrameRender/index.tsx index f8e0ed2aa7..3b41499438 100644 --- a/src/features/PluginsUI/Render/DefaultType/IFrameRender/index.tsx +++ b/src/features/PluginsUI/Render/DefaultType/IFrameRender/index.tsx @@ -1,4 +1,4 @@ -import { PluginRenderProps } from '@lobehub/chat-plugin-sdk/client'; +import { type PluginRenderProps } from '@lobehub/chat-plugin-sdk/client'; import { Skeleton } from '@lobehub/ui'; import { memo, useRef, useState } from 'react'; diff --git a/src/features/PluginsUI/Render/DefaultType/SystemJsRender/index.tsx b/src/features/PluginsUI/Render/DefaultType/SystemJsRender/index.tsx index e4179aee84..bd6be24722 100644 --- a/src/features/PluginsUI/Render/DefaultType/SystemJsRender/index.tsx +++ b/src/features/PluginsUI/Render/DefaultType/SystemJsRender/index.tsx @@ -1,4 +1,4 @@ -import { PluginRender, PluginRenderProps } from '@lobehub/chat-plugin-sdk/client'; +import { type PluginRender, type PluginRenderProps } from '@lobehub/chat-plugin-sdk/client'; import { Skeleton } from '@lobehub/ui'; import { memo, useEffect, useState } from 'react'; diff --git a/src/features/PluginsUI/Render/MCPType/index.tsx b/src/features/PluginsUI/Render/MCPType/index.tsx index fbc5227bf2..59697f2b28 100644 --- a/src/features/PluginsUI/Render/MCPType/index.tsx +++ b/src/features/PluginsUI/Render/MCPType/index.tsx @@ -2,7 +2,7 @@ import { Flexbox, Image, Markdown } from '@lobehub/ui'; import { memo } from 'react'; import Arguments from '@/features/Conversation/Messages/AssistantGroup/Tool/Render/Arguments'; -import { ToolCallResult } from '@/libs/mcp'; +import { type ToolCallResult } from '@/libs/mcp'; export interface MCPTypeProps { apiName?: string; diff --git a/src/features/PluginsUI/Render/StandaloneType/Iframe.tsx b/src/features/PluginsUI/Render/StandaloneType/Iframe.tsx index a78a883f01..8253afda57 100644 --- a/src/features/PluginsUI/Render/StandaloneType/Iframe.tsx +++ b/src/features/PluginsUI/Render/StandaloneType/Iframe.tsx @@ -1,4 +1,4 @@ -import { PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; +import { type PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; import { Skeleton } from '@lobehub/ui'; import { memo, useRef, useState } from 'react'; diff --git a/src/features/PluginsUI/Render/StandaloneType/index.tsx b/src/features/PluginsUI/Render/StandaloneType/index.tsx index e7e78e4242..c005af1818 100644 --- a/src/features/PluginsUI/Render/StandaloneType/index.tsx +++ b/src/features/PluginsUI/Render/StandaloneType/index.tsx @@ -1,4 +1,4 @@ -import { PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; +import { type PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; import { memo } from 'react'; import { useToolStore } from '@/store/tool'; diff --git a/src/features/PluginsUI/Render/index.tsx b/src/features/PluginsUI/Render/index.tsx index ac5b7e1a70..ba4184189c 100644 --- a/src/features/PluginsUI/Render/index.tsx +++ b/src/features/PluginsUI/Render/index.tsx @@ -1,5 +1,5 @@ -import { LobeToolRenderType } from '@lobechat/types'; -import { PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; +import { type LobeToolRenderType } from '@lobechat/types'; +import { type PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; import { memo } from 'react'; import { ToolErrorBoundary } from '@/features/Conversation/Messages/Tool/ErrorBoundary'; diff --git a/src/features/Portal/Artifacts/index.ts b/src/features/Portal/Artifacts/index.ts index bc6f3d5fc5..b2cc416400 100644 --- a/src/features/Portal/Artifacts/index.ts +++ b/src/features/Portal/Artifacts/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Header from './Header'; import { useEnable } from './useEnable'; diff --git a/src/features/Portal/Document/DocumentEditorProvider.tsx b/src/features/Portal/Document/DocumentEditorProvider.tsx index 3574b88f9e..22cae5449a 100644 --- a/src/features/Portal/Document/DocumentEditorProvider.tsx +++ b/src/features/Portal/Document/DocumentEditorProvider.tsx @@ -1,7 +1,7 @@ 'use client'; import { useEditor } from '@lobehub/editor/react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import StoreUpdater from './StoreUpdater'; import { DocumentEditorProvider as Provider, createStore } from './store'; diff --git a/src/features/Portal/Document/Wrapper.tsx b/src/features/Portal/Document/Wrapper.tsx index dc411caa76..24b4e8aeeb 100644 --- a/src/features/Portal/Document/Wrapper.tsx +++ b/src/features/Portal/Document/Wrapper.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useChatStore } from '@/store/chat'; import { chatPortalSelectors } from '@/store/chat/selectors'; diff --git a/src/features/Portal/Document/index.ts b/src/features/Portal/Document/index.ts index d4d02f1470..38b2a4d229 100644 --- a/src/features/Portal/Document/index.ts +++ b/src/features/Portal/Document/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Header from './Header'; import { useEnable } from './useEnable'; diff --git a/src/features/Portal/Document/store/action.ts b/src/features/Portal/Document/store/action.ts index ff878bfc54..d00a161dd0 100644 --- a/src/features/Portal/Document/store/action.ts +++ b/src/features/Portal/Document/store/action.ts @@ -3,11 +3,11 @@ import { EDITOR_DEBOUNCE_TIME, EDITOR_MAX_WAIT } from '@lobechat/const'; import debug from 'debug'; import { debounce } from 'es-toolkit/compat'; -import { StateCreator } from 'zustand'; +import { type StateCreator } from 'zustand'; import { useNotebookStore } from '@/store/notebook'; -import { DocumentEditorState, initialDocumentEditorState } from './initialState'; +import { type DocumentEditorState, initialDocumentEditorState } from './initialState'; const log = debug('portal:document-editor'); diff --git a/src/features/Portal/Document/store/index.ts b/src/features/Portal/Document/store/index.ts index 5ec47aa16f..6213a7b5f1 100644 --- a/src/features/Portal/Document/store/index.ts +++ b/src/features/Portal/Document/store/index.ts @@ -1,13 +1,13 @@ 'use client'; -import { StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApiWithSelector } from '@lobechat/types'; import { createContext } from 'zustand-utils'; import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { DocumentEditorStore, createDocumentEditorStore } from './action'; -import { DocumentEditorState } from './initialState'; +import { type DocumentEditorStore, createDocumentEditorStore } from './action'; +import { type DocumentEditorState } from './initialState'; export type { DocumentEditorState } from './initialState'; diff --git a/src/features/Portal/Document/store/initialState.ts b/src/features/Portal/Document/store/initialState.ts index fe210485f9..6dafb55a22 100644 --- a/src/features/Portal/Document/store/initialState.ts +++ b/src/features/Portal/Document/store/initialState.ts @@ -1,6 +1,6 @@ 'use client'; -import { IEditor } from '@lobehub/editor'; +import { type IEditor } from '@lobehub/editor'; export interface DocumentEditorState { currentTitle: string; diff --git a/src/features/Portal/FilePreview/index.ts b/src/features/Portal/FilePreview/index.ts index eb50e5f885..dcd8eb4b7e 100644 --- a/src/features/Portal/FilePreview/index.ts +++ b/src/features/Portal/FilePreview/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Header from './Header'; import { useEnable } from './useEnable'; diff --git a/src/features/Portal/GroupThread/index.ts b/src/features/Portal/GroupThread/index.ts index e5891ce92c..20df969db5 100644 --- a/src/features/Portal/GroupThread/index.ts +++ b/src/features/Portal/GroupThread/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Header from './Header'; import Title from './Title'; diff --git a/src/features/Portal/Home/Body/Files/FileList/Item.tsx b/src/features/Portal/Home/Body/Files/FileList/Item.tsx index 7af51c388e..b0918b51cc 100644 --- a/src/features/Portal/Home/Body/Files/FileList/Item.tsx +++ b/src/features/Portal/Home/Body/Files/FileList/Item.tsx @@ -1,4 +1,4 @@ -import { ChatFileItem } from '@lobechat/types'; +import { type ChatFileItem } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/features/Portal/Home/Body/Plugins/ArtifactList/Item/index.tsx b/src/features/Portal/Home/Body/Plugins/ArtifactList/Item/index.tsx index 5c31ed68d2..4f30885352 100644 --- a/src/features/Portal/Home/Body/Plugins/ArtifactList/Item/index.tsx +++ b/src/features/Portal/Home/Body/Plugins/ArtifactList/Item/index.tsx @@ -1,4 +1,4 @@ -import { ChatPluginPayload } from '@lobechat/types'; +import { type ChatPluginPayload } from '@lobechat/types'; import { Flexbox, Icon, Tag, Text } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; import { CircuitBoard } from 'lucide-react'; diff --git a/src/features/Portal/MessageDetail/index.ts b/src/features/Portal/MessageDetail/index.ts index b116320fe5..5818ff4850 100644 --- a/src/features/Portal/MessageDetail/index.ts +++ b/src/features/Portal/MessageDetail/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Header from './Header'; import { useEnable } from './useEnable'; diff --git a/src/features/Portal/Notebook/DocumentItem.tsx b/src/features/Portal/Notebook/DocumentItem.tsx index a553ba1dc7..49835f9258 100644 --- a/src/features/Portal/Notebook/DocumentItem.tsx +++ b/src/features/Portal/Notebook/DocumentItem.tsx @@ -1,9 +1,9 @@ -import { NotebookDocument } from '@lobechat/types'; +import { type NotebookDocument } from '@lobechat/types'; import { ActionIcon, Flexbox, Text } from '@lobehub/ui'; import { App } from 'antd'; import { createStyles } from 'antd-style'; import { FileTextIcon, Trash2Icon } from 'lucide-react'; -import { MouseEvent, memo, useState } from 'react'; +import { type MouseEvent, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useChatStore } from '@/store/chat'; diff --git a/src/features/Portal/Notebook/index.ts b/src/features/Portal/Notebook/index.ts index 055c6bd244..95c77f386f 100644 --- a/src/features/Portal/Notebook/index.ts +++ b/src/features/Portal/Notebook/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Title from './Title'; import { useEnable } from './useEnable'; diff --git a/src/features/Portal/Plugins/index.ts b/src/features/Portal/Plugins/index.ts index dcf171f3dd..72437b7be5 100644 --- a/src/features/Portal/Plugins/index.ts +++ b/src/features/Portal/Plugins/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Body from './Body'; import Header from './Header'; import { useEnable } from './useEnable'; diff --git a/src/features/Portal/Thread/Chat/index.tsx b/src/features/Portal/Thread/Chat/index.tsx index 282226471c..9354835d67 100644 --- a/src/features/Portal/Thread/Chat/index.tsx +++ b/src/features/Portal/Thread/Chat/index.tsx @@ -17,7 +17,7 @@ import SkeletonList from '@/features/Conversation/components/SkeletonList'; import { useOperationState } from '@/hooks/useOperationState'; import { useChatStore } from '@/store/chat'; import { threadSelectors } from '@/store/chat/selectors'; -import { MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; +import { type MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; import ThreadDivider from './ThreadDivider'; import { useThreadActionsBarConfig } from './useThreadActionsBarConfig'; diff --git a/src/features/Portal/Thread/index.ts b/src/features/Portal/Thread/index.ts index 74f7184ed4..028ae1b5be 100644 --- a/src/features/Portal/Thread/index.ts +++ b/src/features/Portal/Thread/index.ts @@ -1,4 +1,4 @@ -import { PortalImpl } from '../type'; +import { type PortalImpl } from '../type'; import Chat from './Chat'; import Header from './Header'; import { onClose, useEnable } from './hook'; diff --git a/src/features/Portal/components/Header.tsx b/src/features/Portal/components/Header.tsx index 095fa68480..142b6f62f1 100644 --- a/src/features/Portal/components/Header.tsx +++ b/src/features/Portal/components/Header.tsx @@ -2,7 +2,7 @@ import { ActionIcon } from '@lobehub/ui'; import { XIcon } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import SidebarHeader from '@/components/SidebarHeader'; import { useChatStore } from '@/store/chat'; diff --git a/src/features/Portal/router.tsx b/src/features/Portal/router.tsx index ca5f4f27d3..58c177dfcd 100644 --- a/src/features/Portal/router.tsx +++ b/src/features/Portal/router.tsx @@ -12,7 +12,7 @@ import { Notebook } from './Notebook'; import { Plugins } from './Plugins'; import { Thread } from './Thread'; import Header from './components/Header'; -import { PortalImpl } from './type'; +import { type PortalImpl } from './type'; // Keep GroupThread before Thread so group DM threads take precedence when enabled // Document should be before Notebook so detail view takes precedence diff --git a/src/features/Portal/type.ts b/src/features/Portal/type.ts index 58b6dd2ada..eba89da906 100644 --- a/src/features/Portal/type.ts +++ b/src/features/Portal/type.ts @@ -1,4 +1,4 @@ -import { FC, PropsWithChildren } from 'react'; +import { type FC, type PropsWithChildren } from 'react'; export interface PortalImpl { Body: FC; diff --git a/src/features/ProtocolUrlHandler/InstallPlugin/ConfigDisplay.tsx b/src/features/ProtocolUrlHandler/InstallPlugin/ConfigDisplay.tsx index ff6846b439..4fdfc175b7 100644 --- a/src/features/ProtocolUrlHandler/InstallPlugin/ConfigDisplay.tsx +++ b/src/features/ProtocolUrlHandler/InstallPlugin/ConfigDisplay.tsx @@ -1,6 +1,6 @@ 'use client'; -import { McpInstallSchema } from '@lobechat/electron-client-ipc'; +import { type McpInstallSchema } from '@lobechat/electron-client-ipc'; import { Block, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { LinkIcon, Settings2Icon } from 'lucide-react'; diff --git a/src/features/ProtocolUrlHandler/InstallPlugin/CustomPluginInstallModal.tsx b/src/features/ProtocolUrlHandler/InstallPlugin/CustomPluginInstallModal.tsx index 782e561572..c164f1cc24 100644 --- a/src/features/ProtocolUrlHandler/InstallPlugin/CustomPluginInstallModal.tsx +++ b/src/features/ProtocolUrlHandler/InstallPlugin/CustomPluginInstallModal.tsx @@ -10,11 +10,11 @@ import PluginTag from '@/components/Plugins/PluginTag'; import { useAgentStore } from '@/store/agent'; import { useToolStore } from '@/store/tool'; import { mcpStoreSelectors } from '@/store/tool/selectors'; -import { McpConnectionParams } from '@/types/plugins'; -import { LobeToolCustomPlugin } from '@/types/tool/plugin'; +import { type McpConnectionParams } from '@/types/plugins'; +import { type LobeToolCustomPlugin } from '@/types/tool/plugin'; import ConfigDisplay from './ConfigDisplay'; -import { McpInstallRequest, TRUSTED_MARKETPLACES, TrustedMarketplaceId } from './types'; +import { type McpInstallRequest, TRUSTED_MARKETPLACES, type TrustedMarketplaceId } from './types'; interface CustomPluginInstallModalProps { installRequest: McpInstallRequest | null; diff --git a/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/Detail.tsx b/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/Detail.tsx index 3a2b158012..ca2bac1826 100644 --- a/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/Detail.tsx +++ b/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/Detail.tsx @@ -5,7 +5,7 @@ import { memo, useState } from 'react'; import MCPInstallProgress from '@/features/MCP/MCPInstallProgress'; import Deployment from '@/features/MCPPluginDetail/Deployment'; -import { DetailContextConfig, DetailProvider } from '@/features/MCPPluginDetail/DetailProvider'; +import { type DetailContextConfig, DetailProvider } from '@/features/MCPPluginDetail/DetailProvider'; import Header from '@/features/MCPPluginDetail/Header'; import Nav from '@/features/MCPPluginDetail/Nav'; import Overview from '@/features/MCPPluginDetail/Overview'; diff --git a/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/index.tsx b/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/index.tsx index 24167d8516..8adaa898a5 100644 --- a/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/index.tsx +++ b/src/features/ProtocolUrlHandler/InstallPlugin/OfficialPluginInstallModal/index.tsx @@ -11,7 +11,7 @@ import { useDiscoverStore } from '@/store/discover'; import { useToolStore } from '@/store/tool'; import { pluginSelectors } from '@/store/tool/slices/plugin/selectors'; -import { McpInstallRequest } from '../types'; +import { type McpInstallRequest } from '../types'; import OfficialDetail from './Detail'; interface OfficialPluginInstallModalProps { diff --git a/src/features/ProtocolUrlHandler/InstallPlugin/index.tsx b/src/features/ProtocolUrlHandler/InstallPlugin/index.tsx index a26685420c..1e7d458155 100644 --- a/src/features/ProtocolUrlHandler/InstallPlugin/index.tsx +++ b/src/features/ProtocolUrlHandler/InstallPlugin/index.tsx @@ -4,7 +4,7 @@ import { memo } from 'react'; import CustomPluginInstallModal from './CustomPluginInstallModal'; import OfficialPluginInstallModal from './OfficialPluginInstallModal'; -import { McpInstallRequest, PluginSource } from './types'; +import { type McpInstallRequest, PluginSource } from './types'; interface PluginInstallConfirmModalProps { installRequest: McpInstallRequest | null; diff --git a/src/features/ProtocolUrlHandler/InstallPlugin/types.ts b/src/features/ProtocolUrlHandler/InstallPlugin/types.ts index 94bbff4efb..737d9df4a3 100644 --- a/src/features/ProtocolUrlHandler/InstallPlugin/types.ts +++ b/src/features/ProtocolUrlHandler/InstallPlugin/types.ts @@ -1,4 +1,4 @@ -import { McpInstallSchema } from '@lobechat/electron-client-ipc'; +import { type McpInstallSchema } from '@lobechat/electron-client-ipc'; export enum PluginSource { CUSTOM = 'custom', diff --git a/src/features/ProtocolUrlHandler/index.tsx b/src/features/ProtocolUrlHandler/index.tsx index 91079ead69..4fbf91c33a 100644 --- a/src/features/ProtocolUrlHandler/index.tsx +++ b/src/features/ProtocolUrlHandler/index.tsx @@ -3,7 +3,7 @@ import { useWatchBroadcast } from '@lobechat/electron-client-ipc'; import { useCallback, useState } from 'react'; -import { McpInstallRequest } from '@/features/ProtocolUrlHandler/InstallPlugin/types'; +import { type McpInstallRequest } from '@/features/ProtocolUrlHandler/InstallPlugin/types'; import PluginInstallConfirmModal from './InstallPlugin'; diff --git a/src/features/ResourceManager/components/ChunkDrawer/ChunkList/ChunkItem.tsx b/src/features/ResourceManager/components/ChunkDrawer/ChunkList/ChunkItem.tsx index c7c6ba4160..9fb27b2a18 100644 --- a/src/features/ResourceManager/components/ChunkDrawer/ChunkList/ChunkItem.tsx +++ b/src/features/ResourceManager/components/ChunkDrawer/ChunkList/ChunkItem.tsx @@ -3,7 +3,7 @@ import { createStyles } from 'antd-style'; import { memo, useMemo } from 'react'; import { useFileStore } from '@/store/file'; -import { FileChunk } from '@/types/chunk'; +import { type FileChunk } from '@/types/chunk'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/features/ResourceManager/components/ChunkDrawer/SimilaritySearchList/Item.tsx b/src/features/ResourceManager/components/ChunkDrawer/SimilaritySearchList/Item.tsx index 9b82e2a50c..661e18cfb0 100644 --- a/src/features/ResourceManager/components/ChunkDrawer/SimilaritySearchList/Item.tsx +++ b/src/features/ResourceManager/components/ChunkDrawer/SimilaritySearchList/Item.tsx @@ -2,7 +2,7 @@ import { Flexbox, Tag } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo, useMemo } from 'react'; -import { SemanticSearchChunk } from '@/types/chunk'; +import { type SemanticSearchChunk } from '@/types/chunk'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/features/ResourceManager/components/Explorer/ItemDropdown/useFileItemDropdown.tsx b/src/features/ResourceManager/components/Explorer/ItemDropdown/useFileItemDropdown.tsx index 4319ad7f0b..4b125f6f37 100644 --- a/src/features/ResourceManager/components/Explorer/ItemDropdown/useFileItemDropdown.tsx +++ b/src/features/ResourceManager/components/Explorer/ItemDropdown/useFileItemDropdown.tsx @@ -1,6 +1,6 @@ import { Icon, copyToClipboard } from '@lobehub/ui'; import { App } from 'antd'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import { BookMinusIcon, BookPlusIcon, @@ -10,7 +10,7 @@ import { PencilIcon, Trash, } from 'lucide-react'; -import { ReactNode, useMemo, useState } from 'react'; +import { type ReactNode, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import RepoIcon from '@/components/LibIcon'; diff --git a/src/features/ResourceManager/components/Explorer/ListView/ListItem/ChunkTag.tsx b/src/features/ResourceManager/components/Explorer/ListView/ListItem/ChunkTag.tsx index ac5618d51a..5dbc642152 100644 --- a/src/features/ResourceManager/components/Explorer/ListView/ListItem/ChunkTag.tsx +++ b/src/features/ResourceManager/components/Explorer/ListView/ListItem/ChunkTag.tsx @@ -2,7 +2,7 @@ import { memo } from 'react'; import FileParsingStatusTag from '@/components/FileParsingStatus'; import { fileManagerSelectors, useFileStore } from '@/store/file'; -import { FileParsingTask } from '@/types/asyncTask'; +import { type FileParsingTask } from '@/types/asyncTask'; interface ChunkTagProps extends FileParsingTask { id: string; diff --git a/src/features/ResourceManager/components/Explorer/ListView/index.tsx b/src/features/ResourceManager/components/Explorer/ListView/index.tsx index ab2e92b7f3..31296a5899 100644 --- a/src/features/ResourceManager/components/Explorer/ListView/index.tsx +++ b/src/features/ResourceManager/components/Explorer/ListView/index.tsx @@ -6,12 +6,12 @@ import { createStyles } from 'antd-style'; import { rgba } from 'polished'; import { type DragEvent, memo, useCallback, useMemo, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { VList, VListHandle } from 'virtua'; +import { VList, type VListHandle } from 'virtua'; import { useDragActive } from '@/app/[variants]/(main)/resource/features/DndContextWrapper'; import { useFolderPath } from '@/app/[variants]/(main)/resource/features/hooks/useFolderPath'; import { useFileStore } from '@/store/file'; -import { FileListItem as FileListItemType } from '@/types/files'; +import { type FileListItem as FileListItemType } from '@/types/files'; import FileListItem, { FILE_DATE_WIDTH, FILE_SIZE_WIDTH } from './ListItem'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/DefaultFileItem.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/DefaultFileItem.tsx index f1362975de..9278157fa6 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/DefaultFileItem.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/DefaultFileItem.tsx @@ -7,7 +7,7 @@ import { useTranslation } from 'react-i18next'; import FileIcon from '@/components/FileIcon'; import { fileManagerSelectors, useFileStore } from '@/store/file'; -import { AsyncTaskStatus, IAsyncTaskError } from '@/types/asyncTask'; +import { type AsyncTaskStatus, type IAsyncTaskError } from '@/types/asyncTask'; import { formatSize } from '@/utils/format'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/ImageFileItem.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/ImageFileItem.tsx index cc0c49114a..bd7335ce03 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/ImageFileItem.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/ImageFileItem.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import FileIcon from '@/components/FileIcon'; import { fileManagerSelectors, useFileStore } from '@/store/file'; -import { AsyncTaskStatus, IAsyncTaskError } from '@/types/asyncTask'; +import { type AsyncTaskStatus, type IAsyncTaskError } from '@/types/asyncTask'; import { formatSize } from '@/utils/format'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MarkdownFileItem.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MarkdownFileItem.tsx index 37d75cf4fa..70b231259e 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MarkdownFileItem.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MarkdownFileItem.tsx @@ -7,7 +7,7 @@ import { useTranslation } from 'react-i18next'; import FileIcon from '@/components/FileIcon'; import { fileManagerSelectors, useFileStore } from '@/store/file'; -import { AsyncTaskStatus, IAsyncTaskError } from '@/types/asyncTask'; +import { type AsyncTaskStatus, type IAsyncTaskError } from '@/types/asyncTask'; import { formatSize } from '@/utils/format'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MasonryItemWrapper.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MasonryItemWrapper.tsx index 4f2a762588..11889a43aa 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MasonryItemWrapper.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/MasonryItemWrapper.tsx @@ -1,6 +1,6 @@ import { memo } from 'react'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; import MasonryFileItem from '.'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/NoteFileItem.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/NoteFileItem.tsx index 600eee13b5..32646c845e 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/NoteFileItem.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/NoteFileItem.tsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import FileIcon from '@/components/FileIcon'; import { fileManagerSelectors, useFileStore } from '@/store/file'; -import { AsyncTaskStatus, IAsyncTaskError } from '@/types/asyncTask'; +import { type AsyncTaskStatus, type IAsyncTaskError } from '@/types/asyncTask'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; import ChunksBadge from '../../ListView/ListItem/ChunkTag'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/index.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/index.tsx index b3553bf242..60341f9322 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/index.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/MasonryFileItem/index.tsx @@ -10,7 +10,7 @@ import { } from '@/app/[variants]/(main)/resource/features/DndContextWrapper'; import { useResourceManagerStore } from '@/app/[variants]/(main)/resource/features/store'; import { documentService } from '@/services/document'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; import DropdownMenu from '../../ItemDropdown/DropdownMenu'; import DefaultFileItem from './DefaultFileItem'; diff --git a/src/features/ResourceManager/components/Explorer/MasonryView/index.tsx b/src/features/ResourceManager/components/Explorer/MasonryView/index.tsx index 16cfb1bbf5..b14ec8dc52 100644 --- a/src/features/ResourceManager/components/Explorer/MasonryView/index.tsx +++ b/src/features/ResourceManager/components/Explorer/MasonryView/index.tsx @@ -7,7 +7,7 @@ import { memo, useCallback, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useResourceManagerStore } from '@/app/[variants]/(main)/resource/features/store'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; import { useMasonryColumnCount } from '../useMasonryColumnCount'; import MasonryItemWrapper from './MasonryFileItem/MasonryItemWrapper'; diff --git a/src/features/ResourceManager/components/Explorer/MoveToFolderModal.tsx b/src/features/ResourceManager/components/Explorer/MoveToFolderModal.tsx index a940517a3f..c9a32d4ad7 100644 --- a/src/features/ResourceManager/components/Explorer/MoveToFolderModal.tsx +++ b/src/features/ResourceManager/components/Explorer/MoveToFolderModal.tsx @@ -3,7 +3,7 @@ import { App } from 'antd'; import { memo, useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import FolderTree, { FolderTreeItem } from '@/features/ResourceManager/components/FolderTree'; +import FolderTree, { type FolderTreeItem } from '@/features/ResourceManager/components/FolderTree'; import { clearTreeFolderCache } from '@/features/ResourceManager/components/Tree'; import { fileService } from '@/services/file'; import { useFileStore } from '@/store/file'; diff --git a/src/features/ResourceManager/components/Explorer/hooks/useViewMode.ts b/src/features/ResourceManager/components/Explorer/hooks/useViewMode.ts index 855aec805a..09a9bc1216 100644 --- a/src/features/ResourceManager/components/Explorer/hooks/useViewMode.ts +++ b/src/features/ResourceManager/components/Explorer/hooks/useViewMode.ts @@ -1,7 +1,7 @@ import { useCallback, useEffect } from 'react'; import { useResourceManagerStore } from '@/app/[variants]/(main)/resource/features/store'; -import { ViewMode } from '@/app/[variants]/(main)/resource/features/store/initialState'; +import { type ViewMode } from '@/app/[variants]/(main)/resource/features/store/initialState'; import { parseAsStringEnum, useQueryState } from '@/hooks/useQueryParam'; /** diff --git a/src/features/ResourceManager/components/Explorer/useCheckTaskStatus.ts b/src/features/ResourceManager/components/Explorer/useCheckTaskStatus.ts index ec2c685603..91107c9c0e 100644 --- a/src/features/ResourceManager/components/Explorer/useCheckTaskStatus.ts +++ b/src/features/ResourceManager/components/Explorer/useCheckTaskStatus.ts @@ -2,7 +2,7 @@ import { useEffect } from 'react'; import { useFileStore } from '@/store/file'; import { AsyncTaskStatus } from '@/types/asyncTask'; -import { FileListItem } from '@/types/files'; +import { type FileListItem } from '@/types/files'; export const useCheckTaskStatus = (data: FileListItem[] | undefined) => { const [refreshFileList] = useFileStore((s) => [s.refreshFileList]); diff --git a/src/features/ResourceManager/components/Explorer/useFileExplorer.ts b/src/features/ResourceManager/components/Explorer/useFileExplorer.ts index 944bbd339a..0315802d41 100644 --- a/src/features/ResourceManager/components/Explorer/useFileExplorer.ts +++ b/src/features/ResourceManager/components/Explorer/useFileExplorer.ts @@ -7,7 +7,7 @@ import { useAddFilesToKnowledgeBaseModal } from '@/features/LibraryModal'; import { useQueryState } from '@/hooks/useQueryParam'; import { fileManagerSelectors, useFileStore } from '@/store/file'; import { useKnowledgeBaseStore } from '@/store/knowledgeBase'; -import { FilesTabs, SortType } from '@/types/files'; +import { type FilesTabs, SortType } from '@/types/files'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; import type { MultiSelectActionType } from './ToolBar/MultiSelectActions'; diff --git a/src/features/ResourceManager/components/Header/AddButton.tsx b/src/features/ResourceManager/components/Header/AddButton.tsx index c2376bac8a..cf6a431345 100644 --- a/src/features/ResourceManager/components/Header/AddButton.tsx +++ b/src/features/ResourceManager/components/Header/AddButton.tsx @@ -2,7 +2,7 @@ import { FILE_URL } from '@lobechat/business-const'; import { Notion } from '@lobehub/icons'; -import { Button, Dropdown, Icon, MenuProps } from '@lobehub/ui'; +import { Button, Dropdown, Icon, type MenuProps } from '@lobehub/ui'; import { Upload } from 'antd'; import { css, cx } from 'antd-style'; import { FilePenLine, FileUp, FolderIcon, FolderUp, Link, Plus } from 'lucide-react'; diff --git a/src/features/ResourceManager/components/UploadDock/Item.tsx b/src/features/ResourceManager/components/UploadDock/Item.tsx index f76746e8f3..03731670e3 100644 --- a/src/features/ResourceManager/components/UploadDock/Item.tsx +++ b/src/features/ResourceManager/components/UploadDock/Item.tsx @@ -1,10 +1,10 @@ import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo, useMemo } from 'react'; +import { type ReactNode, memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import FileIcon from '@/components/FileIcon'; -import { UploadFileItem } from '@/types/files/upload'; +import { type UploadFileItem } from '@/types/files/upload'; import { formatSize, formatSpeed, formatTime } from '@/utils/format'; const useStyles = createStyles(({ css, token }) => { diff --git a/src/features/RightPanel/ToggleRightPanelButton.tsx b/src/features/RightPanel/ToggleRightPanelButton.tsx index 93101be054..fdcef2ab36 100644 --- a/src/features/RightPanel/ToggleRightPanelButton.tsx +++ b/src/features/RightPanel/ToggleRightPanelButton.tsx @@ -1,8 +1,8 @@ 'use client'; -import { ActionIcon, ActionIconProps } from '@lobehub/ui'; +import { ActionIcon, type ActionIconProps } from '@lobehub/ui'; import { PanelRightClose, PanelRightOpen } from 'lucide-react'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { DESKTOP_HEADER_ICON_SIZE } from '@/const/layoutTokens'; diff --git a/src/features/RightPanel/index.tsx b/src/features/RightPanel/index.tsx index f88cb30e22..a20d228925 100644 --- a/src/features/RightPanel/index.tsx +++ b/src/features/RightPanel/index.tsx @@ -1,4 +1,4 @@ -import { DraggablePanel, DraggablePanelProps } from '@lobehub/ui'; +import { DraggablePanel, type DraggablePanelProps } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { Suspense, memo, useState } from 'react'; diff --git a/src/features/Setting/Footer.tsx b/src/features/Setting/Footer.tsx index 5784ff210f..f621d06395 100644 --- a/src/features/Setting/Footer.tsx +++ b/src/features/Setting/Footer.tsx @@ -5,7 +5,7 @@ import { Center, Flexbox, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { MessageSquareHeart } from 'lucide-react'; import Link from 'next/link'; -import { PropsWithChildren, memo, useState } from 'react'; +import { type PropsWithChildren, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import GuideModal from '@/components/GuideModal'; diff --git a/src/features/Setting/SettingContainer.tsx b/src/features/Setting/SettingContainer.tsx index e188b212b9..785593f2f8 100644 --- a/src/features/Setting/SettingContainer.tsx +++ b/src/features/Setting/SettingContainer.tsx @@ -1,8 +1,8 @@ 'use client'; -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; import { useTheme } from 'antd-style'; -import { PropsWithChildren, ReactNode, memo } from 'react'; +import { type PropsWithChildren, type ReactNode, memo } from 'react'; interface SettingContainerProps extends FlexboxProps { addonAfter?: ReactNode; diff --git a/src/features/ShareModal/ShareImage/Preview.tsx b/src/features/ShareModal/ShareImage/Preview.tsx index d55c0c1469..ec3f6869ba 100644 --- a/src/features/ShareModal/ShareImage/Preview.tsx +++ b/src/features/ShareModal/ShareImage/Preview.tsx @@ -13,7 +13,7 @@ import pkg from '../../../../package.json'; import { useContainerStyles } from '../style'; import ChatList from './ChatList'; import { useStyles } from './style'; -import { FieldType } from './type'; +import { type FieldType } from './type'; const Preview = memo( ({ title, withSystemRole, withBackground, withFooter, widthMode }) => { diff --git a/src/features/ShareModal/ShareImage/index.tsx b/src/features/ShareModal/ShareImage/index.tsx index 9f49a5f821..f72aadc225 100644 --- a/src/features/ShareModal/ShareImage/index.tsx +++ b/src/features/ShareModal/ShareImage/index.tsx @@ -14,7 +14,7 @@ import { agentSelectors } from '@/store/agent/selectors'; import { useStyles } from '../style'; import Preview from './Preview'; -import { FieldType, WidthMode } from './type'; +import { type FieldType, WidthMode } from './type'; const DEFAULT_FIELD_VALUE: FieldType = { imageType: ImageType.JPG, diff --git a/src/features/ShareModal/ShareImage/type.ts b/src/features/ShareModal/ShareImage/type.ts index c4c99f8472..0c2cca777d 100644 --- a/src/features/ShareModal/ShareImage/type.ts +++ b/src/features/ShareModal/ShareImage/type.ts @@ -1,4 +1,4 @@ -import { ImageType } from '@/hooks/useScreenshot'; +import { type ImageType } from '@/hooks/useScreenshot'; export enum WidthMode { Narrow = 'narrow', diff --git a/src/features/ShareModal/ShareJSON/generateFullExport.ts b/src/features/ShareModal/ShareJSON/generateFullExport.ts index d492f0342a..e10c2d8f36 100644 --- a/src/features/ShareModal/ShareJSON/generateFullExport.ts +++ b/src/features/ShareModal/ShareJSON/generateFullExport.ts @@ -1,9 +1,9 @@ -import { ChatTopic, ExportedTopic, UIChatMessage } from '@lobechat/types'; +import { type ChatTopic, type ExportedTopic, type UIChatMessage } from '@lobechat/types'; import { cleanObject } from '@lobechat/utils'; import { LOADING_FLAT } from '@/const/message'; -import { BaseExportOptions } from './type'; +import { type BaseExportOptions } from './type'; interface FullExportParams extends BaseExportOptions { messages: UIChatMessage[]; diff --git a/src/features/ShareModal/ShareJSON/generateMessages.ts b/src/features/ShareModal/ShareJSON/generateMessages.ts index b0ce071f7f..78d08322b4 100644 --- a/src/features/ShareModal/ShareJSON/generateMessages.ts +++ b/src/features/ShareModal/ShareJSON/generateMessages.ts @@ -1,8 +1,8 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { LOADING_FLAT } from '@/const/message'; -import { BaseExportOptions } from './type'; +import { type BaseExportOptions } from './type'; interface JSONParams extends BaseExportOptions { messages: UIChatMessage[]; diff --git a/src/features/ShareModal/ShareJSON/index.tsx b/src/features/ShareModal/ShareJSON/index.tsx index 846928f495..cf67fd9f74 100644 --- a/src/features/ShareModal/ShareJSON/index.tsx +++ b/src/features/ShareModal/ShareJSON/index.tsx @@ -1,5 +1,5 @@ import { FORM_STYLE } from '@lobechat/const'; -import { TopicExportMode } from '@lobechat/types'; +import { type TopicExportMode } from '@lobechat/types'; import { exportFile } from '@lobechat/utils/client'; import { Button, Form, type FormItemProps, copyToClipboard } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; @@ -19,7 +19,7 @@ import { useStyles } from '../style'; import Preview from './Preview'; import { generateFullExport } from './generateFullExport'; import { generateMessages } from './generateMessages'; -import { FieldType } from './type'; +import { type FieldType } from './type'; const DEFAULT_FIELD_VALUE: FieldType = { exportMode: 'full', diff --git a/src/features/ShareModal/ShareJSON/type.ts b/src/features/ShareModal/ShareJSON/type.ts index f74af9e0ec..1b691ccc6b 100644 --- a/src/features/ShareModal/ShareJSON/type.ts +++ b/src/features/ShareModal/ShareJSON/type.ts @@ -1,4 +1,4 @@ -import { TopicExportMode } from '@lobechat/types'; +import { type TopicExportMode } from '@lobechat/types'; export interface BaseExportOptions { includeTool: boolean; diff --git a/src/features/ShareModal/SharePdf/index.tsx b/src/features/ShareModal/SharePdf/index.tsx index 80ad04ffda..788cedf8b1 100644 --- a/src/features/ShareModal/SharePdf/index.tsx +++ b/src/features/ShareModal/SharePdf/index.tsx @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { Button, Form, type FormItemProps } from '@lobehub/ui'; import { Flexbox } from '@lobehub/ui'; import { App, Switch } from 'antd'; @@ -15,7 +15,7 @@ import { useChatStore } from '@/store/chat'; import { chatSelectors, topicSelectors } from '@/store/chat/selectors'; import { generateMarkdown } from '../ShareText/template'; -import { FieldType } from '../ShareText/type'; +import { type FieldType } from '../ShareText/type'; import { useContainerStyles, useStyles } from '../style'; import PdfPreview from './PdfPreview'; import { usePdfGeneration } from './usePdfGeneration'; diff --git a/src/features/ShareModal/ShareText/index.tsx b/src/features/ShareModal/ShareText/index.tsx index c0701723c7..a86a917b95 100644 --- a/src/features/ShareModal/ShareText/index.tsx +++ b/src/features/ShareModal/ShareText/index.tsx @@ -17,7 +17,7 @@ import { displayMessageSelectors, topicSelectors } from '@/store/chat/selectors' import { useStyles } from '../style'; import Preview from './Preview'; import { generateMarkdown } from './template'; -import { FieldType } from './type'; +import { type FieldType } from './type'; const DEFAULT_FIELD_VALUE: FieldType = { includeTool: true, diff --git a/src/features/ShareModal/ShareText/template.ts b/src/features/ShareModal/ShareText/template.ts index edc0f8e4f5..ce15802fa7 100644 --- a/src/features/ShareModal/ShareText/template.ts +++ b/src/features/ShareModal/ShareText/template.ts @@ -1,8 +1,8 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { template } from 'es-toolkit/compat'; import { LOADING_FLAT } from '@/const/message'; -import { FieldType } from '@/features/ShareModal/ShareText/type'; +import { type FieldType } from '@/features/ShareModal/ShareText/type'; const markdownTemplate = template( `# {{title}} diff --git a/src/features/TopicEmpty.tsx b/src/features/TopicEmpty.tsx index 191b4f1753..c359e4b7bd 100644 --- a/src/features/TopicEmpty.tsx +++ b/src/features/TopicEmpty.tsx @@ -1,4 +1,4 @@ -import { Center, Empty, EmptyProps } from '@lobehub/ui'; +import { Center, Empty, type EmptyProps } from '@lobehub/ui'; import { MessageSquareText } from 'lucide-react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/features/User/DataStatistics.tsx b/src/features/User/DataStatistics.tsx index f2e89d742d..c6004b121b 100644 --- a/src/features/User/DataStatistics.tsx +++ b/src/features/User/DataStatistics.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Flexbox, FlexboxProps, Icon, Tooltip } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Icon, Tooltip } from '@lobehub/ui'; import { Badge } from 'antd'; import { createStyles } from 'antd-style'; import { isUndefined } from 'es-toolkit/compat'; diff --git a/src/features/User/UserInfo.tsx b/src/features/User/UserInfo.tsx index a7152dd193..f9b63c9945 100644 --- a/src/features/User/UserInfo.tsx +++ b/src/features/User/UserInfo.tsx @@ -1,6 +1,6 @@ 'use client'; -import { Flexbox, FlexboxProps, Text } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps, Text } from '@lobehub/ui'; import { useTheme } from 'antd-style'; import { memo } from 'react'; diff --git a/src/features/User/UserPanel/LangButton.tsx b/src/features/User/UserPanel/LangButton.tsx index 6db51293b8..7d7a8fa631 100644 --- a/src/features/User/UserPanel/LangButton.tsx +++ b/src/features/User/UserPanel/LangButton.tsx @@ -8,7 +8,7 @@ import Menu, { type MenuProps } from '@/components/Menu'; import { localeOptions } from '@/locales/resources'; import { useGlobalStore } from '@/store/global'; import { globalGeneralSelectors } from '@/store/global/selectors'; -import { LocaleMode } from '@/types/locale'; +import { type LocaleMode } from '@/types/locale'; const LangButton = memo<{ placement?: PopoverProps['placement']; size?: number }>( ({ placement = 'right', size }) => { diff --git a/src/features/User/UserPanel/UpgradeBadge.tsx b/src/features/User/UserPanel/UpgradeBadge.tsx index fe9e50d6b2..c35e0cfdae 100644 --- a/src/features/User/UserPanel/UpgradeBadge.tsx +++ b/src/features/User/UserPanel/UpgradeBadge.tsx @@ -1,6 +1,6 @@ import { Flexbox } from '@lobehub/ui'; import { Badge, ConfigProvider } from 'antd'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; const UpgradeBadge = memo(({ children, showBadge }: PropsWithChildren<{ showBadge?: boolean }>) => { if (!showBadge) return children; diff --git a/src/features/User/UserPanel/index.tsx b/src/features/User/UserPanel/index.tsx index 5047467253..78c27d1a37 100644 --- a/src/features/User/UserPanel/index.tsx +++ b/src/features/User/UserPanel/index.tsx @@ -2,7 +2,7 @@ import { Popover } from 'antd'; import { createStyles } from 'antd-style'; -import { PropsWithChildren, Suspense, memo, useState } from 'react'; +import { type PropsWithChildren, Suspense, memo, useState } from 'react'; import { isDesktop } from '@/const/version'; diff --git a/src/features/User/UserPanel/useMenu.tsx b/src/features/User/UserPanel/useMenu.tsx index 0c9584ebb2..a10f2aaccc 100644 --- a/src/features/User/UserPanel/useMenu.tsx +++ b/src/features/User/UserPanel/useMenu.tsx @@ -2,9 +2,9 @@ import { LOBE_CHAT_CLOUD, UTM_SOURCE } from '@lobechat/business-const'; import { isDesktop } from '@lobechat/const'; import { Flexbox, Hotkey, Icon } from '@lobehub/ui'; import { Badge } from 'antd'; -import { ItemType } from 'antd/es/menu/interface'; +import { type ItemType } from 'antd/es/menu/interface'; import { Cloudy, Download, HardDriveDownload, LogOut, Settings2 } from 'lucide-react'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; diff --git a/src/features/WideScreenContainer/index.tsx b/src/features/WideScreenContainer/index.tsx index bb3a7978d4..b2ce1450a1 100644 --- a/src/features/WideScreenContainer/index.tsx +++ b/src/features/WideScreenContainer/index.tsx @@ -1,9 +1,9 @@ 'use client'; -import { Flexbox, FlexboxProps } from '@lobehub/ui'; +import { Flexbox, type FlexboxProps } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import isEqual from 'fast-deep-equal'; -import { CSSProperties, memo, useEffect } from 'react'; +import { type CSSProperties, memo, useEffect } from 'react'; import { CONVERSATION_MIN_WIDTH } from '@/const/layoutTokens'; import { useGlobalStore } from '@/store/global'; diff --git a/src/helpers/toolEngineering/index.ts b/src/helpers/toolEngineering/index.ts index c0a5d6e557..ae4e56cf32 100644 --- a/src/helpers/toolEngineering/index.ts +++ b/src/helpers/toolEngineering/index.ts @@ -3,7 +3,7 @@ */ import { ToolsEngine } from '@lobechat/context-engine'; import type { PluginEnableChecker } from '@lobechat/context-engine'; -import { ChatCompletionTool, WorkingModel } from '@lobechat/types'; +import { type ChatCompletionTool, type WorkingModel } from '@lobechat/types'; import type { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { getAgentStoreState } from '@/store/agent'; diff --git a/src/hooks/useAgentOwnershipCheck.ts b/src/hooks/useAgentOwnershipCheck.ts index ebb77986c7..6dd5cc6db3 100644 --- a/src/hooks/useAgentOwnershipCheck.ts +++ b/src/hooks/useAgentOwnershipCheck.ts @@ -1,7 +1,7 @@ import { useEffect, useState } from 'react'; import { useMarketAuth } from '@/layout/AuthProvider/MarketAuth'; -import { MarketAuthContextType } from '@/layout/AuthProvider/MarketAuth/types'; +import { type MarketAuthContextType } from '@/layout/AuthProvider/MarketAuth/types'; import { marketApiService } from '@/services/marketApi'; interface AgentOwnershipResult { diff --git a/src/hooks/useEnabledChatModels.ts b/src/hooks/useEnabledChatModels.ts index 9df2d3029a..37e0ec807d 100644 --- a/src/hooks/useEnabledChatModels.ts +++ b/src/hooks/useEnabledChatModels.ts @@ -1,7 +1,7 @@ import isEqual from 'fast-deep-equal'; import { useAiInfraStore } from '@/store/aiInfra'; -import { EnabledProviderWithModels } from '@/types/aiProvider'; +import { type EnabledProviderWithModels } from '@/types/aiProvider'; export const useEnabledChatModels = (): EnabledProviderWithModels[] => { const enabledChatModelList = useAiInfraStore((s) => s.enabledChatModelList, isEqual); diff --git a/src/hooks/useHotkeys/useHotkeyById.ts b/src/hooks/useHotkeys/useHotkeyById.ts index 85a735d9ee..2ff40460ac 100644 --- a/src/hooks/useHotkeys/useHotkeyById.ts +++ b/src/hooks/useHotkeys/useHotkeyById.ts @@ -1,12 +1,12 @@ import { uniq } from 'es-toolkit/compat'; -import { DependencyList } from 'react'; +import { type DependencyList } from 'react'; import { type HotkeyCallback, type Options, useHotkeys } from 'react-hotkeys-hook'; import { HOTKEYS_REGISTRATION } from '@/const/hotkeys'; import { useServerConfigStore } from '@/store/serverConfig'; import { useUserStore } from '@/store/user'; import { settingsSelectors } from '@/store/user/selectors'; -import { HotkeyId } from '@/types/hotkey'; +import { type HotkeyId } from '@/types/hotkey'; import { isDev } from '@/utils/env'; type OptionsOrDependencyArray = Options | DependencyList; diff --git a/src/hooks/useInitBuiltinAgent.ts b/src/hooks/useInitBuiltinAgent.ts index a17de6969d..9eaf15d6d2 100644 --- a/src/hooks/useInitBuiltinAgent.ts +++ b/src/hooks/useInitBuiltinAgent.ts @@ -1,4 +1,4 @@ -import { BuiltinAgentSlug } from '@lobechat/builtin-agents'; +import { type BuiltinAgentSlug } from '@lobechat/builtin-agents'; import { useAgentStore } from '@/store/agent'; import { useUserStore } from '@/store/user'; diff --git a/src/hooks/useTTS.ts b/src/hooks/useTTS.ts index c79db7b160..b539567f6e 100644 --- a/src/hooks/useTTS.ts +++ b/src/hooks/useTTS.ts @@ -1,8 +1,8 @@ import { - EdgeSpeechOptions, - MicrosoftSpeechOptions, - OpenAITTSOptions, - TTSOptions, + type EdgeSpeechOptions, + type MicrosoftSpeechOptions, + type OpenAITTSOptions, + type TTSOptions, useEdgeSpeech, useMicrosoftSpeech, useOpenAITTS, @@ -17,7 +17,7 @@ import { useGlobalStore } from '@/store/global'; import { globalGeneralSelectors } from '@/store/global/selectors'; import { useUserStore } from '@/store/user'; import { settingsSelectors } from '@/store/user/selectors'; -import { TTSServer } from '@/types/agent'; +import { type TTSServer } from '@/types/agent'; interface TTSConfig extends TTSOptions { onUpload?: (currentVoice: string, arraybuffers: ArrayBuffer[]) => void; diff --git a/src/layout/AuthProvider/BetterAuth/UserUpdater.tsx b/src/layout/AuthProvider/BetterAuth/UserUpdater.tsx index 1385998dfd..5eb1fe63de 100644 --- a/src/layout/AuthProvider/BetterAuth/UserUpdater.tsx +++ b/src/layout/AuthProvider/BetterAuth/UserUpdater.tsx @@ -5,7 +5,7 @@ import { createStoreUpdater } from 'zustand-utils'; import { useSession } from '@/libs/better-auth/auth-client'; import { useUserStore } from '@/store/user'; -import { LobeUser } from '@/types/user'; +import { type LobeUser } from '@/types/user'; /** * Sync Better-Auth session state to Zustand store diff --git a/src/layout/AuthProvider/BetterAuth/index.tsx b/src/layout/AuthProvider/BetterAuth/index.tsx index a52d2dce56..483dddf30d 100644 --- a/src/layout/AuthProvider/BetterAuth/index.tsx +++ b/src/layout/AuthProvider/BetterAuth/index.tsx @@ -1,4 +1,4 @@ -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import UserUpdater from './UserUpdater'; diff --git a/src/layout/AuthProvider/Clerk/UserUpdater.tsx b/src/layout/AuthProvider/Clerk/UserUpdater.tsx index 5f8af87611..ccbfb43a0c 100644 --- a/src/layout/AuthProvider/Clerk/UserUpdater.tsx +++ b/src/layout/AuthProvider/Clerk/UserUpdater.tsx @@ -5,7 +5,7 @@ import { memo } from 'react'; import { createStoreUpdater } from 'zustand-utils'; import { useUserStore } from '@/store/user'; -import { LobeUser } from '@/types/user'; +import { type LobeUser } from '@/types/user'; // update the user data into the context const UserUpdater = memo(() => { diff --git a/src/layout/AuthProvider/Clerk/index.tsx b/src/layout/AuthProvider/Clerk/index.tsx index 0536de5f95..484fd34ea4 100644 --- a/src/layout/AuthProvider/Clerk/index.tsx +++ b/src/layout/AuthProvider/Clerk/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { ClerkProvider } from '@clerk/nextjs'; -import { PropsWithChildren, memo, useEffect, useMemo, useState, useTransition } from 'react'; +import { type PropsWithChildren, memo, useEffect, useMemo, useState, useTransition } from 'react'; import { useTranslation } from 'react-i18next'; import UserUpdater from './UserUpdater'; diff --git a/src/layout/AuthProvider/Clerk/useAppearance.ts b/src/layout/AuthProvider/Clerk/useAppearance.ts index 2fa8aec7d3..674f46a208 100644 --- a/src/layout/AuthProvider/Clerk/useAppearance.ts +++ b/src/layout/AuthProvider/Clerk/useAppearance.ts @@ -1,7 +1,7 @@ 'use client'; import { dark } from '@clerk/themes'; -import { ElementsConfig, Theme } from '@clerk/types'; +import { type ElementsConfig, type Theme } from '@clerk/types'; import { BRANDING_URL } from '@lobechat/business-const'; import { createStyles, useThemeMode } from 'antd-style'; diff --git a/src/layout/AuthProvider/Desktop/index.tsx b/src/layout/AuthProvider/Desktop/index.tsx index 676355d9b6..60ffe8f428 100644 --- a/src/layout/AuthProvider/Desktop/index.tsx +++ b/src/layout/AuthProvider/Desktop/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo, useEffect } from 'react'; +import { type PropsWithChildren, memo, useEffect } from 'react'; import { createStoreUpdater } from 'zustand-utils'; import { useUserStore } from '@/store/user'; diff --git a/src/layout/AuthProvider/MarketAuth/MarketAuthProvider.tsx b/src/layout/AuthProvider/MarketAuth/MarketAuthProvider.tsx index 35b347a0c4..364bb7890a 100644 --- a/src/layout/AuthProvider/MarketAuth/MarketAuthProvider.tsx +++ b/src/layout/AuthProvider/MarketAuth/MarketAuthProvider.tsx @@ -1,7 +1,7 @@ 'use client'; import { App } from 'antd'; -import { ReactNode, createContext, useCallback, useContext, useEffect, useState } from 'react'; +import { type ReactNode, createContext, useCallback, useContext, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { mutate as globalMutate } from 'swr'; @@ -14,11 +14,11 @@ import ProfileSetupModal from './ProfileSetupModal'; import { MarketAuthError } from './errors'; import { MarketOIDC } from './oidc'; import { - MarketAuthContextType, - MarketAuthSession, - MarketUserInfo, - MarketUserProfile, - OIDCConfig, + type MarketAuthContextType, + type MarketAuthSession, + type MarketUserInfo, + type MarketUserProfile, + type OIDCConfig, } from './types'; import { useMarketUserProfile } from './useMarketUserProfile'; diff --git a/src/layout/AuthProvider/MarketAuth/ProfileSetupModal.tsx b/src/layout/AuthProvider/MarketAuth/ProfileSetupModal.tsx index bb307e5d1a..67920f1aac 100644 --- a/src/layout/AuthProvider/MarketAuth/ProfileSetupModal.tsx +++ b/src/layout/AuthProvider/MarketAuth/ProfileSetupModal.tsx @@ -2,7 +2,7 @@ import { SiGithub, SiX } from '@icons-pack/react-simple-icons'; import { Center, Flexbox, Icon, Input, Modal, Text, TextArea, Tooltip } from '@lobehub/ui'; -import { App, Form, Upload, UploadProps } from 'antd'; +import { App, Divider, Form, Upload, type UploadProps } from 'antd'; import { useTheme } from 'antd-style'; import { CircleHelp, Globe, ImagePlus, Trash2 } from 'lucide-react'; import { memo, useCallback, useEffect, useState } from 'react'; @@ -14,7 +14,7 @@ import { useFileStore } from '@/store/file'; import { useGlobalStore } from '@/store/global'; import { globalGeneralSelectors } from '@/store/global/selectors'; -import { MarketUserProfile } from './types'; +import { type MarketUserProfile } from './types'; const MAX_FILE_SIZE = 2 * 1024 * 1024; // 2MB limit diff --git a/src/layout/AuthProvider/MarketAuth/oidc.ts b/src/layout/AuthProvider/MarketAuth/oidc.ts index f627b0aa52..d7c8d13ad9 100644 --- a/src/layout/AuthProvider/MarketAuth/oidc.ts +++ b/src/layout/AuthProvider/MarketAuth/oidc.ts @@ -1,7 +1,7 @@ import { MARKET_OIDC_ENDPOINTS } from '@/services/_url'; import { MarketAuthError } from './errors'; -import { OIDCConfig, PKCEParams, TokenResponse } from './types'; +import { type OIDCConfig, type PKCEParams, type TokenResponse } from './types'; /** * Market OIDC 授权工具类 diff --git a/src/layout/AuthProvider/MarketAuth/useMarketUserProfile.ts b/src/layout/AuthProvider/MarketAuth/useMarketUserProfile.ts index bf254ed585..960a8b71ef 100644 --- a/src/layout/AuthProvider/MarketAuth/useMarketUserProfile.ts +++ b/src/layout/AuthProvider/MarketAuth/useMarketUserProfile.ts @@ -2,7 +2,7 @@ import useSWR from 'swr'; import { MARKET_ENDPOINTS } from '@/services/_url'; -import { MarketUserProfile } from './types'; +import { type MarketUserProfile } from './types'; /** * Fetcher function for user profile diff --git a/src/layout/AuthProvider/NextAuth/UserUpdater.tsx b/src/layout/AuthProvider/NextAuth/UserUpdater.tsx index cb585589b1..98250649ef 100644 --- a/src/layout/AuthProvider/NextAuth/UserUpdater.tsx +++ b/src/layout/AuthProvider/NextAuth/UserUpdater.tsx @@ -5,7 +5,7 @@ import { memo, useEffect } from 'react'; import { createStoreUpdater } from 'zustand-utils'; import { useUserStore } from '@/store/user'; -import { LobeUser } from '@/types/user'; +import { type LobeUser } from '@/types/user'; // update the user data into the context const UserUpdater = memo(() => { diff --git a/src/layout/AuthProvider/NextAuth/index.tsx b/src/layout/AuthProvider/NextAuth/index.tsx index b7325d3db3..d98a8d8295 100644 --- a/src/layout/AuthProvider/NextAuth/index.tsx +++ b/src/layout/AuthProvider/NextAuth/index.tsx @@ -1,5 +1,5 @@ import { SessionProvider } from 'next-auth/react'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { API_ENDPOINTS } from '@/services/_url'; diff --git a/src/layout/AuthProvider/NoAuth/index.tsx b/src/layout/AuthProvider/NoAuth/index.tsx index 2b6d449f25..7b82d828e7 100644 --- a/src/layout/AuthProvider/NoAuth/index.tsx +++ b/src/layout/AuthProvider/NoAuth/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { PropsWithChildren, memo } from 'react'; +import { type PropsWithChildren, memo } from 'react'; import { createStoreUpdater } from 'zustand-utils'; import { useUserStore } from '@/store/user'; diff --git a/src/layout/AuthProvider/index.tsx b/src/layout/AuthProvider/index.tsx index 955ae445ca..92b0239078 100644 --- a/src/layout/AuthProvider/index.tsx +++ b/src/layout/AuthProvider/index.tsx @@ -1,5 +1,5 @@ import { isDesktop } from '@lobechat/const'; -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { authEnv } from '@/envs/auth'; diff --git a/src/layout/GlobalProvider/AppTheme.tsx b/src/layout/GlobalProvider/AppTheme.tsx index 69e11cf40a..5354083f40 100644 --- a/src/layout/GlobalProvider/AppTheme.tsx +++ b/src/layout/GlobalProvider/AppTheme.tsx @@ -3,18 +3,18 @@ import { ConfigProvider, FontLoader, - NeutralColors, - PrimaryColors, + type NeutralColors, + type PrimaryColors, ThemeProvider, } from '@lobehub/ui'; import { message as antdMessage } from 'antd'; -import { ThemeAppearance, createStyles } from 'antd-style'; +import { type ThemeAppearance, createStyles } from 'antd-style'; import 'antd/dist/reset.css'; import { AppConfigContext } from 'antd/es/app/context'; import * as motion from 'motion/react-m'; import Image from 'next/image'; import Link from 'next/link'; -import { ReactNode, memo, useEffect, useMemo, useState } from 'react'; +import { memo, useEffect, useMemo, useState, type ReactNode } from 'react'; import AntdStaticMethods from '@/components/AntdStaticMethods'; import { diff --git a/src/layout/GlobalProvider/Editor.tsx b/src/layout/GlobalProvider/Editor.tsx index 266e1eb26f..da1d5f277c 100644 --- a/src/layout/GlobalProvider/Editor.tsx +++ b/src/layout/GlobalProvider/Editor.tsx @@ -1,7 +1,7 @@ 'use client'; import { EditorProvider } from '@lobehub/editor/react'; -import { PropsWithChildren, memo, useMemo } from 'react'; +import { type PropsWithChildren, memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; const Editor = memo(({ children }) => { diff --git a/src/layout/GlobalProvider/GroupWizardProvider.tsx b/src/layout/GlobalProvider/GroupWizardProvider.tsx index 36dcd1f21d..a9e9fabf01 100644 --- a/src/layout/GlobalProvider/GroupWizardProvider.tsx +++ b/src/layout/GlobalProvider/GroupWizardProvider.tsx @@ -1,6 +1,6 @@ 'use client'; -import { ReactNode, Suspense, createContext, lazy, memo, useContext, useState } from 'react'; +import { type ReactNode, Suspense, createContext, lazy, memo, useContext, useState } from 'react'; // Lazy load ChatGroupWizard to avoid bundling it globally const ChatGroupWizard = lazy(() => diff --git a/src/layout/GlobalProvider/Locale.tsx b/src/layout/GlobalProvider/Locale.tsx index 01dd689631..883aa2bae5 100644 --- a/src/layout/GlobalProvider/Locale.tsx +++ b/src/layout/GlobalProvider/Locale.tsx @@ -2,7 +2,7 @@ import { ConfigProvider } from 'antd'; import dayjs from 'dayjs'; -import { PropsWithChildren, memo, useEffect, useState } from 'react'; +import { type PropsWithChildren, memo, useEffect, useState } from 'react'; import { isRtlLang } from 'rtl-detect'; import { createI18nNext } from '@/locales/create'; diff --git a/src/layout/GlobalProvider/Query.tsx b/src/layout/GlobalProvider/Query.tsx index 88da240f2e..e427bfdd8f 100644 --- a/src/layout/GlobalProvider/Query.tsx +++ b/src/layout/GlobalProvider/Query.tsx @@ -1,7 +1,7 @@ 'use client'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; -import React, { PropsWithChildren, useEffect, useState } from 'react'; +import React, { type PropsWithChildren, useEffect, useState } from 'react'; import { SWRConfig, useSWRConfig } from 'swr'; import { setScopedMutate } from '@/libs/swr'; diff --git a/src/layout/GlobalProvider/StyleRegistry.tsx b/src/layout/GlobalProvider/StyleRegistry.tsx index bf625ae9e3..a85225e230 100644 --- a/src/layout/GlobalProvider/StyleRegistry.tsx +++ b/src/layout/GlobalProvider/StyleRegistry.tsx @@ -2,7 +2,7 @@ import { StyleProvider, extractStaticStyle } from 'antd-style'; import { useServerInsertedHTML } from 'next/navigation'; -import { PropsWithChildren, useRef } from 'react'; +import { type PropsWithChildren, useRef } from 'react'; const StyleRegistry = ({ children }: PropsWithChildren) => { const isInsert = useRef(false); diff --git a/src/layout/GlobalProvider/index.tsx b/src/layout/GlobalProvider/index.tsx index be4d5bf575..054fad67ad 100644 --- a/src/layout/GlobalProvider/index.tsx +++ b/src/layout/GlobalProvider/index.tsx @@ -1,5 +1,5 @@ import { LazyMotion, domMax } from 'motion/react'; -import { ReactNode, Suspense } from 'react'; +import { type ReactNode, Suspense } from 'react'; import { LobeAnalyticsProviderWrapper } from '@/components/Analytics/LobeAnalyticsProviderWrapper'; import { DragUploadProvider } from '@/components/DragUploadZone/DragUploadProvider'; diff --git a/src/libs/better-auth/define-config.ts b/src/libs/better-auth/define-config.ts index 021a09c013..397a451f58 100644 --- a/src/libs/better-auth/define-config.ts +++ b/src/libs/better-auth/define-config.ts @@ -7,9 +7,9 @@ import bcrypt from 'bcryptjs'; import { emailHarmony } from 'better-auth-harmony'; import { drizzleAdapter } from 'better-auth/adapters/drizzle'; import { verifyPassword as defaultVerifyPassword } from 'better-auth/crypto'; -import { betterAuth } from 'better-auth/minimal'; +import { type BetterAuthOptions, betterAuth } from 'better-auth/minimal'; import { admin, emailOTP, genericOAuth, magicLink } from 'better-auth/plugins'; -import type { BetterAuthOptions, BetterAuthPlugin } from 'better-auth/types'; +import { type BetterAuthPlugin } from 'better-auth/types'; import { authEnv } from '@/envs/auth'; import { diff --git a/src/libs/langchain/loaders/code/index.ts b/src/libs/langchain/loaders/code/index.ts index 89a64d6713..c6cadce388 100644 --- a/src/libs/langchain/loaders/code/index.ts +++ b/src/libs/langchain/loaders/code/index.ts @@ -1,6 +1,6 @@ import { RecursiveCharacterTextSplitter, - SupportedTextSplitterLanguage, + type SupportedTextSplitterLanguage, } from 'langchain/text_splitter'; import { loaderConfig } from '@/libs/langchain/loaders/config'; diff --git a/src/libs/langchain/loaders/index.ts b/src/libs/langchain/loaders/index.ts index 3da740571e..8579c96ec6 100644 --- a/src/libs/langchain/loaders/index.ts +++ b/src/libs/langchain/loaders/index.ts @@ -1,10 +1,10 @@ import { - SupportedTextSplitterLanguage, + type SupportedTextSplitterLanguage, SupportedTextSplitterLanguages, } from 'langchain/text_splitter'; import { LANGCHAIN_SUPPORT_TEXT_LIST } from '@/libs/langchain/file'; -import { LangChainLoaderType } from '@/libs/langchain/types'; +import { type LangChainLoaderType } from '@/libs/langchain/types'; import { CodeLoader } from './code'; import { CsVLoader } from './csv'; diff --git a/src/libs/mcp/client.ts b/src/libs/mcp/client.ts index 5a7c3b4b6f..48af85c459 100644 --- a/src/libs/mcp/client.ts +++ b/src/libs/mcp/client.ts @@ -10,12 +10,12 @@ import debug from 'debug'; import { spawn } from 'node:child_process'; import { - MCPClientParams, - MCPError, - McpPrompt, - McpResource, - McpTool, - ToolCallResult, + type MCPClientParams, + type MCPError, + type McpPrompt, + type McpResource, + type McpTool, + type ToolCallResult, createMCPError, } from './types'; diff --git a/src/libs/next-auth/adapter/index.ts b/src/libs/next-auth/adapter/index.ts index df91c3a473..0110816d5a 100644 --- a/src/libs/next-auth/adapter/index.ts +++ b/src/libs/next-auth/adapter/index.ts @@ -5,7 +5,7 @@ import type { VerificationToken, } from '@auth/core/adapters'; import debug from 'debug'; -import { Adapter, AdapterAccount } from 'next-auth/adapters'; +import { type Adapter, type AdapterAccount } from 'next-auth/adapters'; import urlJoin from 'url-join'; import { serverDBEnv } from '@/config/db'; diff --git a/src/libs/next-auth/sso-providers/casdoor.ts b/src/libs/next-auth/sso-providers/casdoor.ts index f9ed43a0f4..dded67cafc 100644 --- a/src/libs/next-auth/sso-providers/casdoor.ts +++ b/src/libs/next-auth/sso-providers/casdoor.ts @@ -1,4 +1,4 @@ -import { OIDCConfig, OIDCUserConfig } from '@auth/core/providers'; +import { type OIDCConfig, type OIDCUserConfig } from '@auth/core/providers'; import { CommonProviderConfig } from './sso.config'; diff --git a/src/libs/next-auth/sso-providers/logto.ts b/src/libs/next-auth/sso-providers/logto.ts index de0eaf21e0..5729f8bd61 100644 --- a/src/libs/next-auth/sso-providers/logto.ts +++ b/src/libs/next-auth/sso-providers/logto.ts @@ -1,4 +1,4 @@ -import { OIDCConfig, OIDCUserConfig } from '@auth/core/providers'; +import { type OIDCConfig, type OIDCUserConfig } from '@auth/core/providers'; import { CommonProviderConfig } from './sso.config'; diff --git a/src/libs/next-auth/sso-providers/sso.config.ts b/src/libs/next-auth/sso-providers/sso.config.ts index 2168392e72..b31c5760d1 100644 --- a/src/libs/next-auth/sso-providers/sso.config.ts +++ b/src/libs/next-auth/sso-providers/sso.config.ts @@ -1,4 +1,4 @@ -import { OAuth2Config } from '@auth/core/providers'; +import { type OAuth2Config } from '@auth/core/providers'; import type { Profile } from 'next-auth'; export const CommonProviderConfig = { diff --git a/src/libs/next-auth/sso-providers/wechat.ts b/src/libs/next-auth/sso-providers/wechat.ts index 767edb3254..87781cfc3f 100644 --- a/src/libs/next-auth/sso-providers/wechat.ts +++ b/src/libs/next-auth/sso-providers/wechat.ts @@ -1,4 +1,4 @@ -import WeChat, { WeChatProfile } from '@auth/core/providers/wechat'; +import WeChat, { type WeChatProfile } from '@auth/core/providers/wechat'; import { CommonProviderConfig } from './sso.config'; diff --git a/src/libs/next/proxy/define-config.ts b/src/libs/next/proxy/define-config.ts index 9119ddee84..d0a9580ed4 100644 --- a/src/libs/next/proxy/define-config.ts +++ b/src/libs/next/proxy/define-config.ts @@ -1,7 +1,7 @@ import { clerkMiddleware, createRouteMatcher } from '@clerk/nextjs/server'; import { parseDefaultThemeFromCountry } from '@lobechat/utils/server'; import debug from 'debug'; -import { NextRequest, NextResponse } from 'next/server'; +import { type NextRequest, NextResponse } from 'next/server'; import { UAParser } from 'ua-parser-js'; import urlJoin from 'url-join'; @@ -14,7 +14,7 @@ import { appEnv } from '@/envs/app'; import { authEnv } from '@/envs/auth'; import { oidcEnv } from '@/envs/oidc'; import NextAuth from '@/libs/next-auth'; -import { Locales } from '@/locales/resources'; +import { type Locales } from '@/locales/resources'; import { parseBrowserLanguage } from '@/utils/locale'; import { RouteVariants } from '@/utils/server/routeVariants'; diff --git a/src/libs/oidc-provider/adapter.ts b/src/libs/oidc-provider/adapter.ts index 4a915415de..4e5a604b3b 100644 --- a/src/libs/oidc-provider/adapter.ts +++ b/src/libs/oidc-provider/adapter.ts @@ -1,4 +1,4 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import { oidcAccessTokens, oidcAuthorizationCodes, diff --git a/src/libs/oidc-provider/config.ts b/src/libs/oidc-provider/config.ts index 34f10a0798..ddee452962 100644 --- a/src/libs/oidc-provider/config.ts +++ b/src/libs/oidc-provider/config.ts @@ -1,4 +1,4 @@ -import { ClientMetadata } from 'oidc-provider'; +import { type ClientMetadata } from 'oidc-provider'; import urlJoin from 'url-join'; import { appEnv } from '@/envs/app'; diff --git a/src/libs/oidc-provider/http-adapter.ts b/src/libs/oidc-provider/http-adapter.ts index 9f1a15c33d..f85a019fcb 100644 --- a/src/libs/oidc-provider/http-adapter.ts +++ b/src/libs/oidc-provider/http-adapter.ts @@ -1,7 +1,7 @@ import debug from 'debug'; import { cookies } from 'next/headers'; -import { NextRequest } from 'next/server'; -import { IncomingMessage, ServerResponse } from 'node:http'; +import { type NextRequest } from 'next/server'; +import { type IncomingMessage, type ServerResponse } from 'node:http'; import urlJoin from 'url-join'; import { appEnv } from '@/envs/app'; diff --git a/src/libs/oidc-provider/provider.ts b/src/libs/oidc-provider/provider.ts index 6349fbe32b..33325d6ffb 100644 --- a/src/libs/oidc-provider/provider.ts +++ b/src/libs/oidc-provider/provider.ts @@ -1,6 +1,6 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import debug from 'debug'; -import Provider, { Configuration, KoaContextWithOIDC, errors } from 'oidc-provider'; +import Provider, { type Configuration, type KoaContextWithOIDC, errors } from 'oidc-provider'; import urlJoin from 'url-join'; import { serverDBEnv } from '@/config/db'; diff --git a/src/libs/redis/manager.ts b/src/libs/redis/manager.ts index dd08625725..7add852132 100644 --- a/src/libs/redis/manager.ts +++ b/src/libs/redis/manager.ts @@ -1,5 +1,5 @@ import { IoRedisRedisProvider } from './redis'; -import { BaseRedisProvider, RedisConfig } from './types'; +import { type BaseRedisProvider, type RedisConfig } from './types'; import { UpstashRedisProvider } from './upstash'; class RedisManager { diff --git a/src/libs/redis/redis.ts b/src/libs/redis/redis.ts index 5858d0918f..4715a4bb45 100644 --- a/src/libs/redis/redis.ts +++ b/src/libs/redis/redis.ts @@ -2,14 +2,14 @@ import debug from 'debug'; import type { Redis } from 'ioredis'; import { - BaseRedisProvider, - IoRedisConfig, - RedisKey, - RedisMSetArgument, - RedisProviderName, - RedisSetResult, - RedisValue, - SetOptions, + type BaseRedisProvider, + type IoRedisConfig, + type RedisKey, + type RedisMSetArgument, + type RedisProviderName, + type RedisSetResult, + type RedisValue, + type SetOptions, } from './types'; import { buildIORedisSetArgs, normalizeMsetValues } from './utils'; diff --git a/src/libs/redis/upstash.ts b/src/libs/redis/upstash.ts index c749e99e8a..3a8a15b81d 100644 --- a/src/libs/redis/upstash.ts +++ b/src/libs/redis/upstash.ts @@ -1,14 +1,14 @@ -import { Redis, RedisConfigNodejs } from '@upstash/redis'; -import { Buffer } from 'buffer'; +import { Redis, type RedisConfigNodejs } from '@upstash/redis'; +import { Buffer } from 'node:buffer'; import { - BaseRedisProvider, - RedisKey, - RedisMSetArgument, - RedisSetResult, - RedisValue, - SetOptions, - UpstashConfig, + type BaseRedisProvider, + type RedisKey, + type RedisMSetArgument, + type RedisSetResult, + type RedisValue, + type SetOptions, + type UpstashConfig, } from './types'; import { buildUpstashSetOptions, diff --git a/src/libs/redis/utils.ts b/src/libs/redis/utils.ts index cb4724b225..6bb72cbbef 100644 --- a/src/libs/redis/utils.ts +++ b/src/libs/redis/utils.ts @@ -1,6 +1,6 @@ import type { SetCommandOptions } from '@upstash/redis'; -import { RedisKey, RedisMSetArgument, RedisValue, SetOptions } from './types'; +import { type RedisKey, type RedisMSetArgument, type RedisValue, type SetOptions } from './types'; export const normalizeRedisKey = (key: RedisKey) => typeof key === 'string' ? key : key.toString(); diff --git a/src/libs/swr/index.ts b/src/libs/swr/index.ts index 8f7b631e3b..13f6955dc9 100644 --- a/src/libs/swr/index.ts +++ b/src/libs/swr/index.ts @@ -1,4 +1,4 @@ -import useSWR, { SWRHook } from 'swr'; +import useSWR, { type SWRHook } from 'swr'; import { isDesktop } from '@/const/version'; diff --git a/src/libs/traces/event.ts b/src/libs/traces/event.ts index 7ebbaf30f1..f2067214a8 100644 --- a/src/libs/traces/event.ts +++ b/src/libs/traces/event.ts @@ -1,13 +1,13 @@ import { TraceEventType } from '@lobechat/types'; import { diffChars } from 'diff'; -import { LangfuseTraceClient } from 'langfuse-core'; +import { type LangfuseTraceClient } from 'langfuse-core'; import { - TraceEventBasePayload, - TraceEventCopyMessage, - TraceEventDeleteAndRegenerateMessage, - TraceEventModifyMessage, - TraceEventRegenerateMessage, + type TraceEventBasePayload, + type TraceEventCopyMessage, + type TraceEventDeleteAndRegenerateMessage, + type TraceEventModifyMessage, + type TraceEventRegenerateMessage, } from '@/types/trace'; /** diff --git a/src/libs/traces/index.ts b/src/libs/traces/index.ts index 526b769fcd..cc813e8d5a 100644 --- a/src/libs/traces/index.ts +++ b/src/libs/traces/index.ts @@ -1,6 +1,6 @@ import { CURRENT_VERSION } from '@lobechat/const'; import { Langfuse } from 'langfuse'; -import { CreateLangfuseTraceBody } from 'langfuse-core'; +import { type CreateLangfuseTraceBody } from 'langfuse-core'; import { getLangfuseConfig } from '@/envs/langfuse'; import { TraceEventClient } from '@/libs/traces/event'; diff --git a/src/libs/trpc/async/asyncAuth.ts b/src/libs/trpc/async/asyncAuth.ts index be2e5ad615..e6e325c0e5 100644 --- a/src/libs/trpc/async/asyncAuth.ts +++ b/src/libs/trpc/async/asyncAuth.ts @@ -1,4 +1,4 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; diff --git a/src/libs/trpc/async/context.ts b/src/libs/trpc/async/context.ts index 10316fa019..317c4a01d2 100644 --- a/src/libs/trpc/async/context.ts +++ b/src/libs/trpc/async/context.ts @@ -1,7 +1,7 @@ -import { LobeChatDatabase } from '@lobechat/database'; -import { ClientSecretPayload } from '@lobechat/types'; +import { type LobeChatDatabase } from '@lobechat/database'; +import { type ClientSecretPayload } from '@lobechat/types'; import debug from 'debug'; -import { NextRequest } from 'next/server'; +import { type NextRequest } from 'next/server'; import { LOBE_CHAT_AUTH_HEADER } from '@/const/auth'; import { KeyVaultsGateKeeper } from '@/server/modules/KeyVaultsEncrypt'; diff --git a/src/libs/trpc/async/init.ts b/src/libs/trpc/async/init.ts index c3145040ec..cdabb4c66f 100644 --- a/src/libs/trpc/async/init.ts +++ b/src/libs/trpc/async/init.ts @@ -2,7 +2,7 @@ import { initTRPC } from '@trpc/server'; import debug from 'debug'; import superjson from 'superjson'; -import { AsyncContext } from './context'; +import { type AsyncContext } from './context'; const log = debug('lobe-async:init'); diff --git a/src/libs/trpc/client/async.ts b/src/libs/trpc/client/async.ts index ccb590c6f9..642708f4de 100644 --- a/src/libs/trpc/client/async.ts +++ b/src/libs/trpc/client/async.ts @@ -2,7 +2,7 @@ import { createTRPCClient, httpBatchLink } from '@trpc/client'; import superjson from 'superjson'; import { withElectronProtocolIfElectron } from '@/const/protocol'; -import { AsyncRouter } from '@/server/routers/async'; +import { type AsyncRouter } from '@/server/routers/async'; export const asyncClient = createTRPCClient({ links: [ diff --git a/src/libs/trpc/client/lambda.ts b/src/libs/trpc/client/lambda.ts index fc5c0b8c50..11d16e5ed3 100644 --- a/src/libs/trpc/client/lambda.ts +++ b/src/libs/trpc/client/lambda.ts @@ -1,8 +1,8 @@ -import { TRPCLink, createTRPCClient, httpBatchLink, httpLink, splitLink } from '@trpc/client'; +import { type TRPCLink, createTRPCClient, httpBatchLink, httpLink, splitLink } from '@trpc/client'; import { createTRPCReact } from '@trpc/react-query'; import { observable } from '@trpc/server/observable'; import debug from 'debug'; -import { ModelProvider } from 'model-bank'; +import { type ModelProvider } from 'model-bank'; import superjson from 'superjson'; import { withElectronProtocolIfElectron } from '@/const/protocol'; diff --git a/src/libs/trpc/lambda/context.ts b/src/libs/trpc/lambda/context.ts index 3d7827b380..dcbaa45912 100644 --- a/src/libs/trpc/lambda/context.ts +++ b/src/libs/trpc/lambda/context.ts @@ -1,8 +1,8 @@ -import { ClientSecretPayload } from '@lobechat/types'; +import { type ClientSecretPayload } from '@lobechat/types'; import { parse } from 'cookie'; import debug from 'debug'; -import { User } from 'next-auth'; -import { NextRequest } from 'next/server'; +import { type User } from 'next-auth'; +import { type NextRequest } from 'next/server'; import { LOBE_CHAT_AUTH_HEADER, @@ -12,7 +12,7 @@ import { enableNextAuth, } from '@/const/auth'; import { oidcEnv } from '@/envs/oidc'; -import { ClerkAuth, IClerkAuth } from '@/libs/clerk-auth'; +import { ClerkAuth, type IClerkAuth } from '@/libs/clerk-auth'; import { validateOIDCJWT } from '@/libs/oidc-provider/jwt'; // Create context logger namespace diff --git a/src/libs/trpc/utils/request-adapter.ts b/src/libs/trpc/utils/request-adapter.ts index f44fd4a1c9..5db6fbd07e 100644 --- a/src/libs/trpc/utils/request-adapter.ts +++ b/src/libs/trpc/utils/request-adapter.ts @@ -1,4 +1,4 @@ -import { NextRequest } from 'next/server'; +import { type NextRequest } from 'next/server'; /** * Prepare Request object for tRPC fetchRequestHandler diff --git a/src/locales/default/modelProvider.ts b/src/locales/default/modelProvider.ts index 8f4120ada3..337e5abcca 100644 --- a/src/locales/default/modelProvider.ts +++ b/src/locales/default/modelProvider.ts @@ -93,14 +93,14 @@ export default { "createNewAiProvider.id.placeholder": "Suggested all lowercase, e.g., openai, cannot be modified after creation", "createNewAiProvider.id.required": "Please enter the provider ID", "createNewAiProvider.id.title": "Provider ID", - "createNewAiProvider.logo.required": "Please upload a valid provider logo", "createNewAiProvider.logo.placeholder": "https://example.com/logo.png", + "createNewAiProvider.logo.required": "Please upload a valid provider logo", "createNewAiProvider.logo.title": "Provider Logo", "createNewAiProvider.name.placeholder": "Please enter the display name of the provider", "createNewAiProvider.name.required": "Please enter the provider name", "createNewAiProvider.name.title": "Provider Name", - "createNewAiProvider.proxyUrl.required": "Please enter the proxy address", "createNewAiProvider.proxyUrl.placeholder": "https://your-proxy-url.com/v1", + "createNewAiProvider.proxyUrl.required": "Please enter the proxy address", "createNewAiProvider.proxyUrl.title": "Proxy URL", "createNewAiProvider.sdkType.placeholder": "openai/anthropic/azureai/ollama/...", "createNewAiProvider.sdkType.required": "Please select SDK type", diff --git a/src/locales/resources.ts b/src/locales/resources.ts index 4c23b53ca5..bc91f2950b 100644 --- a/src/locales/resources.ts +++ b/src/locales/resources.ts @@ -1,6 +1,6 @@ import { DEFAULT_LANG } from '@/const/locale'; -import resources from './default'; +import type resources from './default'; export const locales = [ 'ar', diff --git a/src/server/globalConfig/genServerAiProviderConfig.ts b/src/server/globalConfig/genServerAiProviderConfig.ts index 021e30621a..9640adc166 100644 --- a/src/server/globalConfig/genServerAiProviderConfig.ts +++ b/src/server/globalConfig/genServerAiProviderConfig.ts @@ -1,5 +1,5 @@ -import { ProviderConfig } from '@lobechat/types'; -import { AiFullModelCard, ModelProvider } from 'model-bank'; +import { type ProviderConfig } from '@lobechat/types'; +import { type AiFullModelCard, ModelProvider } from 'model-bank'; import * as AiModels from 'model-bank'; import { getLLMConfig } from '@/envs/llm'; diff --git a/src/server/globalConfig/index.ts b/src/server/globalConfig/index.ts index a76b152f0b..966687131e 100644 --- a/src/server/globalConfig/index.ts +++ b/src/server/globalConfig/index.ts @@ -8,7 +8,7 @@ import { knowledgeEnv } from '@/envs/knowledge'; import { langfuseEnv } from '@/envs/langfuse'; import { parseSSOProviders } from '@/libs/better-auth/utils/server'; import { parseSystemAgent } from '@/server/globalConfig/parseSystemAgent'; -import { GlobalServerConfig } from '@/types/serverConfig'; +import { type GlobalServerConfig } from '@/types/serverConfig'; import { cleanObject } from '@/utils/object'; import { genServerAiProvidersConfig } from './genServerAiProviderConfig'; diff --git a/src/server/globalConfig/parseFilesConfig.ts b/src/server/globalConfig/parseFilesConfig.ts index 3730a8ad9f..979ceec5cf 100644 --- a/src/server/globalConfig/parseFilesConfig.ts +++ b/src/server/globalConfig/parseFilesConfig.ts @@ -1,6 +1,6 @@ import { DEFAULT_FILES_CONFIG } from '@/const/settings/knowledge'; -import { SystemEmbeddingConfig } from '@/types/knowledgeBase'; -import { FilesConfig } from '@/types/user/settings/filesConfig'; +import { type SystemEmbeddingConfig } from '@/types/knowledgeBase'; +import { type FilesConfig } from '@/types/user/settings/filesConfig'; const protectedKeys = Object.keys({ embedding_model: null, diff --git a/src/server/globalConfig/parseMemoryExtractionConfig.ts b/src/server/globalConfig/parseMemoryExtractionConfig.ts index 296355750e..8a0bf9d2cb 100644 --- a/src/server/globalConfig/parseMemoryExtractionConfig.ts +++ b/src/server/globalConfig/parseMemoryExtractionConfig.ts @@ -1,10 +1,10 @@ import { DEFAULT_USER_MEMORY_EMBEDDING_MODEL_ITEM } from '@lobechat/const'; import { - GlobalMemoryExtractionConfig, - GlobalMemoryLayer, - MemoryAgentPublicConfig, - MemoryLayerExtractorPublicConfig, + type GlobalMemoryExtractionConfig, + type GlobalMemoryLayer, + type MemoryAgentPublicConfig, + type MemoryLayerExtractorPublicConfig, } from '@/types/serverConfig'; const MEMORY_LAYERS: GlobalMemoryLayer[] = ['context', 'experience', 'identity', 'preference']; diff --git a/src/server/globalConfig/parseSystemAgent.ts b/src/server/globalConfig/parseSystemAgent.ts index 4d742947de..aa34cb012e 100644 --- a/src/server/globalConfig/parseSystemAgent.ts +++ b/src/server/globalConfig/parseSystemAgent.ts @@ -1,5 +1,5 @@ import { DEFAULT_SYSTEM_AGENT_CONFIG } from '@/const/settings'; -import { UserSystemAgentConfig } from '@/types/user/settings'; +import { type UserSystemAgentConfig } from '@/types/user/settings'; const protectedKeys = Object.keys(DEFAULT_SYSTEM_AGENT_CONFIG); diff --git a/src/server/ld.ts b/src/server/ld.ts index 58684c930e..5e99570bd5 100644 --- a/src/server/ld.ts +++ b/src/server/ld.ts @@ -5,7 +5,7 @@ import urlJoin from 'url-join'; import { DEFAULT_LANG } from '@/const/locale'; import { OFFICIAL_SITE, OFFICIAL_URL } from '@/const/url'; -import { Locales } from '@/locales/resources'; +import { type Locales } from '@/locales/resources'; import { getCanonicalUrl } from '@/server/utils/url'; import pkg from '../../package.json'; diff --git a/src/server/metadata.ts b/src/server/metadata.ts index 696a0511be..e37b17df96 100644 --- a/src/server/metadata.ts +++ b/src/server/metadata.ts @@ -1,11 +1,11 @@ import { BRANDING_NAME, ORG_NAME } from '@lobechat/business-const'; -import { Metadata } from 'next'; +import { type Metadata } from 'next'; import qs from 'query-string'; import { DEFAULT_LANG } from '@/const/locale'; import { OG_URL } from '@/const/url'; import { isCustomORG } from '@/const/version'; -import { Locales, locales } from '@/locales/resources'; +import { type Locales, locales } from '@/locales/resources'; import { getCanonicalUrl } from '@/server/utils/url'; import { formatDescLength, formatTitleLength } from '@/utils/genOG'; diff --git a/src/server/modules/AgentRuntime/AgentRuntimeCoordinator.ts b/src/server/modules/AgentRuntime/AgentRuntimeCoordinator.ts index 62c8300d2b..f870ad7c96 100644 --- a/src/server/modules/AgentRuntime/AgentRuntimeCoordinator.ts +++ b/src/server/modules/AgentRuntime/AgentRuntimeCoordinator.ts @@ -1,7 +1,7 @@ -import { AgentState } from '@lobechat/agent-runtime'; +import { type AgentState } from '@lobechat/agent-runtime'; import debug from 'debug'; -import { AgentOperationMetadata, StepResult } from './AgentStateManager'; +import { type AgentOperationMetadata, type StepResult } from './AgentStateManager'; import { createAgentStateManager, createStreamEventManager } from './factory'; import type { IAgentStateManager, IStreamEventManager } from './types'; diff --git a/src/server/modules/AgentRuntime/AgentStateManager.ts b/src/server/modules/AgentRuntime/AgentStateManager.ts index 5e19d20571..4a21bb80a6 100644 --- a/src/server/modules/AgentRuntime/AgentStateManager.ts +++ b/src/server/modules/AgentRuntime/AgentStateManager.ts @@ -1,4 +1,4 @@ -import { AgentEvent, AgentRuntimeContext, AgentState } from '@lobechat/agent-runtime'; +import { type AgentEvent, type AgentRuntimeContext, type AgentState } from '@lobechat/agent-runtime'; import debug from 'debug'; import type { Redis } from 'ioredis'; diff --git a/src/server/modules/AgentRuntime/RuntimeExecutors.ts b/src/server/modules/AgentRuntime/RuntimeExecutors.ts index 55e0d0e06e..755d124e97 100644 --- a/src/server/modules/AgentRuntime/RuntimeExecutors.ts +++ b/src/server/modules/AgentRuntime/RuntimeExecutors.ts @@ -1,20 +1,20 @@ import { - AgentEvent, - AgentInstruction, - CallLLMPayload, - GeneralAgentCallLLMResultPayload, - InstructionExecutor, + type AgentEvent, + type AgentInstruction, + type CallLLMPayload, + type GeneralAgentCallLLMResultPayload, + type InstructionExecutor, UsageCounter, } from '@lobechat/agent-runtime'; import { ToolNameResolver } from '@lobechat/context-engine'; import { consumeStreamUntilDone } from '@lobechat/model-runtime'; -import { ChatToolPayload, ClientSecretPayload, MessageToolCall } from '@lobechat/types'; +import { type ChatToolPayload, type ClientSecretPayload, type MessageToolCall } from '@lobechat/types'; import { serializePartsForStorage } from '@lobechat/utils'; import debug from 'debug'; -import { MessageModel } from '@/database/models/message'; +import { type MessageModel } from '@/database/models/message'; import { initModelRuntimeWithUserPayload } from '@/server/modules/ModelRuntime'; -import { ToolExecutionService } from '@/server/services/toolExecution'; +import { type ToolExecutionService } from '@/server/services/toolExecution'; import type { IStreamEventManager } from './types'; diff --git a/src/server/modules/AgentRuntime/StreamEventManager.ts b/src/server/modules/AgentRuntime/StreamEventManager.ts index 04a43abdb5..45223bd648 100644 --- a/src/server/modules/AgentRuntime/StreamEventManager.ts +++ b/src/server/modules/AgentRuntime/StreamEventManager.ts @@ -1,4 +1,4 @@ -import { ChatToolPayload } from '@lobechat/types'; +import { type ChatToolPayload } from '@lobechat/types'; import debug from 'debug'; import type { Redis } from 'ioredis'; diff --git a/src/server/modules/AssistantStore/index.ts b/src/server/modules/AssistantStore/index.ts index c4091796c1..a2c7a84f50 100644 --- a/src/server/modules/AssistantStore/index.ts +++ b/src/server/modules/AssistantStore/index.ts @@ -2,7 +2,7 @@ import urlJoin from 'url-join'; import { DEFAULT_LANG, isLocaleNotSupport } from '@/const/locale'; import { appEnv } from '@/envs/app'; -import { Locales, normalizeLocale } from '@/locales/resources'; +import { type Locales, normalizeLocale } from '@/locales/resources'; import { EdgeConfig } from '@/server/modules/EdgeConfig'; import { CacheRevalidate, CacheTag } from '@/types/discover'; diff --git a/src/server/modules/EdgeConfig/index.ts b/src/server/modules/EdgeConfig/index.ts index dcf053c12e..08950b18ae 100644 --- a/src/server/modules/EdgeConfig/index.ts +++ b/src/server/modules/EdgeConfig/index.ts @@ -1,9 +1,9 @@ -import { EdgeConfigClient, createClient } from '@vercel/edge-config'; +import { type EdgeConfigClient, createClient } from '@vercel/edge-config'; import createDebug from 'debug'; import { appEnv } from '@/envs/app'; -import { EdgeConfigData, EdgeConfigKeys } from './types'; +import { type EdgeConfigData, type EdgeConfigKeys } from './types'; const debug = createDebug('lobe-server:edge-config'); diff --git a/src/server/modules/ElectronIPCClient/index.ts b/src/server/modules/ElectronIPCClient/index.ts index f645e996e3..36f1299dfe 100644 --- a/src/server/modules/ElectronIPCClient/index.ts +++ b/src/server/modules/ElectronIPCClient/index.ts @@ -1,4 +1,4 @@ -import { CreateFileParams, ElectronIpcClient, FileMetadata } from '@lobechat/electron-server-ipc'; +import { type CreateFileParams, ElectronIpcClient, type FileMetadata } from '@lobechat/electron-server-ipc'; import type { DesktopServerIpcServices } from '@lobehub/desktop-ipc-typings'; import packageJSON from '@/../apps/desktop/package.json'; diff --git a/src/server/modules/KeyVaultsEncrypt/index.ts b/src/server/modules/KeyVaultsEncrypt/index.ts index 4f71998da1..5e824709f8 100644 --- a/src/server/modules/KeyVaultsEncrypt/index.ts +++ b/src/server/modules/KeyVaultsEncrypt/index.ts @@ -1,5 +1,5 @@ import { getServerDBConfig } from '@/config/db'; -import { UserKeyVaults } from '@/types/user/settings'; +import { type UserKeyVaults } from '@/types/user/settings'; interface DecryptionResult { plaintext: string; diff --git a/src/server/modules/ModelRuntime/index.ts b/src/server/modules/ModelRuntime/index.ts index c5893647f8..c33bf50529 100644 --- a/src/server/modules/ModelRuntime/index.ts +++ b/src/server/modules/ModelRuntime/index.ts @@ -1,7 +1,7 @@ -import { GoogleGenAIOptions } from '@google/genai'; +import { type GoogleGenAIOptions } from '@google/genai'; import { ModelRuntime } from '@lobechat/model-runtime'; import { LobeVertexAI } from '@lobechat/model-runtime/vertexai'; -import { ClientSecretPayload } from '@lobechat/types'; +import { type ClientSecretPayload } from '@lobechat/types'; import { safeParseJSON } from '@lobechat/utils'; import { ModelProvider } from 'model-bank'; diff --git a/src/server/modules/ModelRuntime/trace.ts b/src/server/modules/ModelRuntime/trace.ts index d176beb17a..26fbdf3c9c 100644 --- a/src/server/modules/ModelRuntime/trace.ts +++ b/src/server/modules/ModelRuntime/trace.ts @@ -1,6 +1,6 @@ import { INBOX_SESSION_ID, LOBE_CHAT_OBSERVATION_ID, LOBE_CHAT_TRACE_ID } from '@lobechat/const'; -import { ChatStreamCallbacks, ChatStreamPayload } from '@lobechat/model-runtime'; -import { TracePayload, TraceTagMap } from '@lobechat/types'; +import { type ChatStreamCallbacks, type ChatStreamPayload } from '@lobechat/model-runtime'; +import { type TracePayload, TraceTagMap } from '@lobechat/types'; import { after } from 'next/server'; import { TraceClient } from '@/libs/traces'; diff --git a/src/server/modules/PluginStore/index.ts b/src/server/modules/PluginStore/index.ts index 380f901962..7ee7c21785 100644 --- a/src/server/modules/PluginStore/index.ts +++ b/src/server/modules/PluginStore/index.ts @@ -2,7 +2,7 @@ import urlJoin from 'url-join'; import { DEFAULT_LANG, isLocaleNotSupport } from '@/const/locale'; import { appEnv } from '@/envs/app'; -import { Locales, normalizeLocale } from '@/locales/resources'; +import { type Locales, normalizeLocale } from '@/locales/resources'; export class PluginStore { private readonly baseUrl: string; diff --git a/src/server/routers/async/caller.ts b/src/server/routers/async/caller.ts index 2b4a007d54..158498e387 100644 --- a/src/server/routers/async/caller.ts +++ b/src/server/routers/async/caller.ts @@ -1,4 +1,4 @@ -import { ClientSecretPayload } from '@lobechat/types'; +import { type ClientSecretPayload } from '@lobechat/types'; import { createTRPCClient, httpLink } from '@trpc/client'; import superjson from 'superjson'; import urlJoin from 'url-join'; diff --git a/src/server/routers/async/file.ts b/src/server/routers/async/file.ts index 697d173b64..bc6101117c 100644 --- a/src/server/routers/async/file.ts +++ b/src/server/routers/async/file.ts @@ -11,7 +11,7 @@ import { AsyncTaskModel } from '@/database/models/asyncTask'; import { ChunkModel } from '@/database/models/chunk'; import { EmbeddingModel } from '@/database/models/embedding'; import { FileModel } from '@/database/models/file'; -import { NewChunkItem, NewEmbeddingsItem } from '@/database/schemas'; +import { type NewChunkItem, type NewEmbeddingsItem } from '@/database/schemas'; import { fileEnv } from '@/envs/file'; import { asyncAuthedProcedure, asyncRouter as router } from '@/libs/trpc/async'; import { getServerDefaultFilesConfig } from '@/server/globalConfig'; @@ -22,7 +22,7 @@ import { AsyncTaskError, AsyncTaskErrorType, AsyncTaskStatus, - IAsyncTaskError, + type IAsyncTaskError, } from '@/types/asyncTask'; import { safeParseJSON } from '@/utils/safeParseJSON'; import { sanitizeUTF8 } from '@/utils/sanitizeUTF8'; diff --git a/src/server/routers/async/image.ts b/src/server/routers/async/image.ts index 1f7141ab6a..cd3f2756ab 100644 --- a/src/server/routers/async/image.ts +++ b/src/server/routers/async/image.ts @@ -3,7 +3,7 @@ import { ENABLE_BUSINESS_FEATURES } from '@lobechat/business-const'; import { AgentRuntimeErrorType } from '@lobechat/model-runtime'; import { AsyncTaskError, AsyncTaskErrorType, AsyncTaskStatus } from '@lobechat/types'; import debug from 'debug'; -import { RuntimeImageGenParams } from 'model-bank'; +import { type RuntimeImageGenParams } from 'model-bank'; import { z } from 'zod'; import { chargeAfterGenerate } from '@/business/server/image-generation/chargeAfterGenerate'; diff --git a/src/server/routers/async/ragEval.ts b/src/server/routers/async/ragEval.ts index dfa78596a4..2525a1c2b9 100644 --- a/src/server/routers/async/ragEval.ts +++ b/src/server/routers/async/ragEval.ts @@ -2,7 +2,7 @@ import { chainAnswerWithContext } from '@lobechat/prompts'; import { EvalEvaluationStatus } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import { ModelProvider } from 'model-bank'; -import OpenAI from 'openai'; +import type OpenAI from 'openai'; import { z } from 'zod'; import { DEFAULT_EMBEDDING_MODEL, DEFAULT_MODEL } from '@/const/settings'; diff --git a/src/server/routers/lambda/__tests__/integration/aiAgent/helpers.ts b/src/server/routers/lambda/__tests__/integration/aiAgent/helpers.ts index 466c789cac..4ebf7d37a2 100644 --- a/src/server/routers/lambda/__tests__/integration/aiAgent/helpers.ts +++ b/src/server/routers/lambda/__tests__/integration/aiAgent/helpers.ts @@ -1,10 +1,10 @@ /** * Shared helpers for aiAgent integration tests */ -import { AgentState } from '@lobechat/agent-runtime'; +import { type AgentState } from '@lobechat/agent-runtime'; import { vi } from 'vitest'; -import { IAgentStateManager } from '@/server/modules/AgentRuntime/types'; +import { type IAgentStateManager } from '@/server/modules/AgentRuntime/types'; /** * Wait for an operation to complete (or reach terminal state) diff --git a/src/server/routers/lambda/__tests__/integration/setup.ts b/src/server/routers/lambda/__tests__/integration/setup.ts index eef779cd22..bcda00150e 100644 --- a/src/server/routers/lambda/__tests__/integration/setup.ts +++ b/src/server/routers/lambda/__tests__/integration/setup.ts @@ -1,7 +1,7 @@ /** * 集成测试通用设置 */ -import { LobeChatDatabase } from '@/database/type'; +import { type LobeChatDatabase } from '@/database/type'; import { uuid } from '@/utils/uuid'; /** diff --git a/src/server/routers/lambda/_helpers/resolveContext.ts b/src/server/routers/lambda/_helpers/resolveContext.ts index 466f41cf7a..526fe22991 100644 --- a/src/server/routers/lambda/_helpers/resolveContext.ts +++ b/src/server/routers/lambda/_helpers/resolveContext.ts @@ -1,9 +1,9 @@ import { and, eq, inArray } from 'drizzle-orm'; import { agentsToSessions } from '@/database/schemas'; -import { LobeChatDatabase } from '@/database/type'; +import { type LobeChatDatabase } from '@/database/type'; -import { ConversationContextInput } from '../_schema/context'; +import { type ConversationContextInput } from '../_schema/context'; export interface ResolvedContext { agentId: string | null; diff --git a/src/server/routers/lambda/_template.ts b/src/server/routers/lambda/_template.ts index f44fe663cb..091a968586 100644 --- a/src/server/routers/lambda/_template.ts +++ b/src/server/routers/lambda/_template.ts @@ -4,7 +4,7 @@ import { SessionGroupModel } from '@/database/models/sessionGroup'; import { insertSessionGroupSchema } from '@/database/schemas'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; const sessionProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/agent.ts b/src/server/routers/lambda/agent.ts index 4e2bea8360..eec39421d3 100644 --- a/src/server/routers/lambda/agent.ts +++ b/src/server/routers/lambda/agent.ts @@ -1,5 +1,5 @@ import { DEFAULT_AGENT_CONFIG, INBOX_SESSION_ID } from '@lobechat/const'; -import { KnowledgeItem, KnowledgeType } from '@lobechat/types'; +import { type KnowledgeItem, KnowledgeType } from '@lobechat/types'; import { z } from 'zod'; import { AgentModel } from '@/database/models/agent'; diff --git a/src/server/routers/lambda/agentGroup.ts b/src/server/routers/lambda/agentGroup.ts index 4e9334a31f..0dff46b473 100644 --- a/src/server/routers/lambda/agentGroup.ts +++ b/src/server/routers/lambda/agentGroup.ts @@ -6,7 +6,7 @@ import { UserModel } from '@/database/models/user'; import { AgentGroupRepository } from '@/database/repositories/agentGroup'; import { insertAgentSchema } from '@/database/schemas'; import { insertChatGroupSchema } from '@/database/schemas/chatGroup'; -import { ChatGroupConfig } from '@/database/types/chatGroup'; +import { type ChatGroupConfig } from '@/database/types/chatGroup'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { ChatGroupService } from '@/server/services/chatGroup'; diff --git a/src/server/routers/lambda/aiAgent.ts b/src/server/routers/lambda/aiAgent.ts index cdf5a82191..5c5fd09cac 100644 --- a/src/server/routers/lambda/aiAgent.ts +++ b/src/server/routers/lambda/aiAgent.ts @@ -1,5 +1,5 @@ -import { AgentRuntimeContext } from '@lobechat/agent-runtime'; -import { TaskCurrentActivity, TaskStatusResult, ThreadStatus } from '@lobechat/types'; +import { type AgentRuntimeContext } from '@lobechat/agent-runtime'; +import { type TaskCurrentActivity, type TaskStatusResult, ThreadStatus } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import pMap from 'p-map'; diff --git a/src/server/routers/lambda/aiChat.ts b/src/server/routers/lambda/aiChat.ts index 2e20c39bce..3a4ab35d27 100644 --- a/src/server/routers/lambda/aiChat.ts +++ b/src/server/routers/lambda/aiChat.ts @@ -1,6 +1,6 @@ import { AiSendMessageServerSchema, - SendMessageServerResponse, + type SendMessageServerResponse, StructureOutputSchema, } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; diff --git a/src/server/routers/lambda/aiModel.ts b/src/server/routers/lambda/aiModel.ts index 275257a139..99ea526baa 100644 --- a/src/server/routers/lambda/aiModel.ts +++ b/src/server/routers/lambda/aiModel.ts @@ -1,6 +1,6 @@ import { AiModelTypeSchema, - AiProviderModelListItem, + type AiProviderModelListItem, CreateAiModelSchema, ToggleAiModelEnableSchema, UpdateAiModelSchema, @@ -14,7 +14,7 @@ import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { getServerGlobalConfig } from '@/server/globalConfig'; import { KeyVaultsGateKeeper } from '@/server/modules/KeyVaultsEncrypt'; -import { ProviderConfig } from '@/types/user/settings'; +import { type ProviderConfig } from '@/types/user/settings'; const aiModelProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/aiProvider.ts b/src/server/routers/lambda/aiProvider.ts index 1b1424bfd5..55f178322c 100644 --- a/src/server/routers/lambda/aiProvider.ts +++ b/src/server/routers/lambda/aiProvider.ts @@ -8,13 +8,13 @@ import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { getServerGlobalConfig } from '@/server/globalConfig'; import { KeyVaultsGateKeeper } from '@/server/modules/KeyVaultsEncrypt'; import { - AiProviderDetailItem, - AiProviderRuntimeState, + type AiProviderDetailItem, + type AiProviderRuntimeState, CreateAiProviderSchema, UpdateAiProviderConfigSchema, UpdateAiProviderSchema, } from '@/types/aiProvider'; -import { ProviderConfig } from '@/types/user/settings'; +import { type ProviderConfig } from '@/types/user/settings'; const aiProviderProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/chunk.ts b/src/server/routers/lambda/chunk.ts index c8d789282c..d8ca83eb93 100644 --- a/src/server/routers/lambda/chunk.ts +++ b/src/server/routers/lambda/chunk.ts @@ -1,8 +1,8 @@ import { DEFAULT_FILE_EMBEDDING_MODEL_ITEM } from '@lobechat/const'; import { - ChatSemanticSearchChunk, - FileSearchResult, - ProviderConfig, + type ChatSemanticSearchChunk, + type FileSearchResult, + type ProviderConfig, SemanticSearchSchema, } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; diff --git a/src/server/routers/lambda/config/index.ts b/src/server/routers/lambda/config/index.ts index 8b73a13b68..9deaad81e0 100644 --- a/src/server/routers/lambda/config/index.ts +++ b/src/server/routers/lambda/config/index.ts @@ -3,7 +3,7 @@ import debug from 'debug'; import { getServerFeatureFlagsStateFromEdgeConfig } from '@/config/featureFlags'; import { publicProcedure, router } from '@/libs/trpc/lambda'; import { getServerDefaultAgentConfig, getServerGlobalConfig } from '@/server/globalConfig'; -import { GlobalRuntimeConfig } from '@/types/serverConfig'; +import { type GlobalRuntimeConfig } from '@/types/serverConfig'; const log = debug('config-router'); diff --git a/src/server/routers/lambda/exporter.ts b/src/server/routers/lambda/exporter.ts index f75b580af5..750fbf5d2f 100644 --- a/src/server/routers/lambda/exporter.ts +++ b/src/server/routers/lambda/exporter.ts @@ -8,7 +8,7 @@ import { SessionModel } from '@/database/models/session'; import { DataExporterRepos } from '@/database/repositories/dataExporter'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { ExportDatabaseData } from '@/types/export'; +import { type ExportDatabaseData } from '@/types/export'; const exportProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/file.ts b/src/server/routers/lambda/file.ts index 6935ed0197..10092f8278 100644 --- a/src/server/routers/lambda/file.ts +++ b/src/server/routers/lambda/file.ts @@ -12,7 +12,7 @@ import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { FileService } from '@/server/services/file'; import { AsyncTaskStatus, AsyncTaskType } from '@/types/asyncTask'; -import { FileListItem, QueryFileListSchema, UploadFileSchema } from '@/types/files'; +import { type FileListItem, QueryFileListSchema, UploadFileSchema } from '@/types/files'; const fileProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/generation.ts b/src/server/routers/lambda/generation.ts index 358477bb5a..1aab98bfa3 100644 --- a/src/server/routers/lambda/generation.ts +++ b/src/server/routers/lambda/generation.ts @@ -6,8 +6,8 @@ import { GenerationModel } from '@/database/models/generation'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { FileService } from '@/server/services/file'; -import { AsyncTaskError, AsyncTaskStatus } from '@/types/asyncTask'; -import { Generation } from '@/types/generation'; +import { type AsyncTaskError, AsyncTaskStatus } from '@/types/asyncTask'; +import { type Generation } from '@/types/generation'; const generationProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/generationTopic.ts b/src/server/routers/lambda/generationTopic.ts index 8129397fd0..068da4f9c0 100644 --- a/src/server/routers/lambda/generationTopic.ts +++ b/src/server/routers/lambda/generationTopic.ts @@ -1,7 +1,7 @@ import { z } from 'zod'; import { GenerationTopicModel } from '@/database/models/generationTopic'; -import { GenerationTopicItem } from '@/database/schemas/generation'; +import { type GenerationTopicItem } from '@/database/schemas/generation'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { FileService } from '@/server/services/file'; diff --git a/src/server/routers/lambda/image.ts b/src/server/routers/lambda/image.ts index f52adc0cd2..40234b12a3 100644 --- a/src/server/routers/lambda/image.ts +++ b/src/server/routers/lambda/image.ts @@ -5,8 +5,8 @@ import { z } from 'zod'; import { chargeBeforeGenerate } from '@/business/server/image-generation/chargeBeforeGenerate'; import { AsyncTaskModel } from '@/database/models/asyncTask'; import { - NewGeneration, - NewGenerationBatch, + type NewGeneration, + type NewGenerationBatch, asyncTasks, generationBatches, generations, diff --git a/src/server/routers/lambda/importer.ts b/src/server/routers/lambda/importer.ts index 5f17ccb8c9..d14d90ab76 100644 --- a/src/server/routers/lambda/importer.ts +++ b/src/server/routers/lambda/importer.ts @@ -5,8 +5,8 @@ import { DataImporterRepos } from '@/database/repositories/dataImporter'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { FileService } from '@/server/services/file'; -import { ImportPgDataStructure } from '@/types/export'; -import { ImportResultData, ImporterEntryData } from '@/types/importer'; +import { type ImportPgDataStructure } from '@/types/export'; +import { type ImportResultData, type ImporterEntryData } from '@/types/importer'; const importProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/knowledge.ts b/src/server/routers/lambda/knowledge.ts index e92e6cdd78..e1864d5013 100644 --- a/src/server/routers/lambda/knowledge.ts +++ b/src/server/routers/lambda/knowledge.ts @@ -7,7 +7,7 @@ import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { FileService } from '@/server/services/file'; import { AsyncTaskStatus, AsyncTaskType } from '@/types/asyncTask'; -import { FileListItem, QueryFileListSchema } from '@/types/files'; +import { type FileListItem, QueryFileListSchema } from '@/types/files'; const knowledgeProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/knowledgeBase.ts b/src/server/routers/lambda/knowledgeBase.ts index 5d00b6ed92..81d357b2ca 100644 --- a/src/server/routers/lambda/knowledgeBase.ts +++ b/src/server/routers/lambda/knowledgeBase.ts @@ -4,7 +4,7 @@ import { KnowledgeBaseModel } from '@/database/models/knowledgeBase'; import { insertKnowledgeBasesSchema } from '@/database/schemas'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { KnowledgeBaseItem } from '@/types/knowledgeBase'; +import { type KnowledgeBaseItem } from '@/types/knowledgeBase'; const knowledgeBaseProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/market/index.ts b/src/server/routers/lambda/market/index.ts index f189f44d57..9a6cc661b6 100644 --- a/src/server/routers/lambda/market/index.ts +++ b/src/server/routers/lambda/market/index.ts @@ -4,7 +4,7 @@ import { serialize } from 'cookie'; import debug from 'debug'; import { z } from 'zod'; -import { ToolCallContent } from '@/libs/mcp'; +import { type ToolCallContent } from '@/libs/mcp'; import { authedProcedure, publicProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { DiscoverService } from '@/server/services/discover'; diff --git a/src/server/routers/lambda/notebook.ts b/src/server/routers/lambda/notebook.ts index 1eb823e078..45729e4161 100644 --- a/src/server/routers/lambda/notebook.ts +++ b/src/server/routers/lambda/notebook.ts @@ -1,4 +1,4 @@ -import { NotebookDocument } from '@lobechat/types'; +import { type NotebookDocument } from '@lobechat/types'; import { z } from 'zod'; import { DocumentModel } from '@/database/models/document'; diff --git a/src/server/routers/lambda/plugin.ts b/src/server/routers/lambda/plugin.ts index ba9b92de7b..3c9d705aaa 100644 --- a/src/server/routers/lambda/plugin.ts +++ b/src/server/routers/lambda/plugin.ts @@ -1,4 +1,4 @@ -import { LobeTool } from '@lobechat/types'; +import { type LobeTool } from '@lobechat/types'; import { z } from 'zod'; import { PluginModel } from '@/database/models/plugin'; diff --git a/src/server/routers/lambda/ragEval.ts b/src/server/routers/lambda/ragEval.ts index e47d3b135a..d297414c29 100644 --- a/src/server/routers/lambda/ragEval.ts +++ b/src/server/routers/lambda/ragEval.ts @@ -1,9 +1,9 @@ /* eslint-disable sort-keys-fix/sort-keys-fix */ import { - EvalDatasetRecord, + type EvalDatasetRecord, EvalEvaluationStatus, - InsertEvalDatasetRecord, - RAGEvalDataSetItem, + type InsertEvalDatasetRecord, + type RAGEvalDataSetItem, insertEvalDatasetRecordSchema, insertEvalDatasetsSchema, insertEvalEvaluationSchema, diff --git a/src/server/routers/lambda/session.ts b/src/server/routers/lambda/session.ts index 95ecaf6e30..87b6669653 100644 --- a/src/server/routers/lambda/session.ts +++ b/src/server/routers/lambda/session.ts @@ -9,8 +9,8 @@ import { authedProcedure, publicProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { AgentChatConfigSchema } from '@/types/agent'; import { LobeMetaDataSchema } from '@/types/meta'; -import { BatchTaskResult } from '@/types/service'; -import { ChatSessionList, LobeGroupSession } from '@/types/session'; +import { type BatchTaskResult } from '@/types/service'; +import { type ChatSessionList, type LobeGroupSession } from '@/types/session'; const sessionProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/sessionGroup.ts b/src/server/routers/lambda/sessionGroup.ts index df0121aa61..93284d54b3 100644 --- a/src/server/routers/lambda/sessionGroup.ts +++ b/src/server/routers/lambda/sessionGroup.ts @@ -4,7 +4,7 @@ import { SessionGroupModel } from '@/database/models/sessionGroup'; import { insertSessionGroupSchema } from '@/database/schemas'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; const sessionProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/thread.ts b/src/server/routers/lambda/thread.ts index bd9411fa7b..c40c281b57 100644 --- a/src/server/routers/lambda/thread.ts +++ b/src/server/routers/lambda/thread.ts @@ -5,7 +5,7 @@ import { ThreadModel } from '@/database/models/thread'; import { insertThreadSchema } from '@/database/schemas'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { ThreadItem, createThreadSchema } from '@/types/topic/thread'; +import { type ThreadItem, createThreadSchema } from '@/types/topic/thread'; const threadProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/lambda/topic.ts b/src/server/routers/lambda/topic.ts index caf700c9fd..4b88532bb6 100644 --- a/src/server/routers/lambda/topic.ts +++ b/src/server/routers/lambda/topic.ts @@ -1,4 +1,4 @@ -import { RecentTopic, RecentTopicGroup, RecentTopicGroupMember } from '@lobechat/types'; +import { type RecentTopic, type RecentTopicGroup, type RecentTopicGroupMember } from '@lobechat/types'; import { eq, inArray } from 'drizzle-orm'; import { after } from 'next/server'; import { z } from 'zod'; @@ -9,7 +9,7 @@ import { TopicImporterRepo } from '@/database/repositories/topicImporter'; import { agents, chatGroups, chatGroupsAgents } from '@/database/schemas'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { BatchTaskResult } from '@/types/service'; +import { type BatchTaskResult } from '@/types/service'; import { batchResolveAgentIdFromSessions, diff --git a/src/server/routers/lambda/user.ts b/src/server/routers/lambda/user.ts index 6b5b8665ba..37254808fd 100644 --- a/src/server/routers/lambda/user.ts +++ b/src/server/routers/lambda/user.ts @@ -1,14 +1,14 @@ -import { UserJSON } from '@clerk/backend'; +import { type UserJSON } from '@clerk/backend'; import { enableClerk, isDesktop } from '@lobechat/const'; import { NextAuthAccountSchame, Plans, UserGuideSchema, - UserInitializationState, + type UserInitializationState, UserOnboardingSchema, - UserPreference, + type UserPreference, UserPreferenceSchema, - UserSettings, + type UserSettings, UserSettingsSchema, } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; diff --git a/src/server/routers/lambda/userMemories.ts b/src/server/routers/lambda/userMemories.ts index 8e335eed57..fc16daac7f 100644 --- a/src/server/routers/lambda/userMemories.ts +++ b/src/server/routers/lambda/userMemories.ts @@ -11,15 +11,15 @@ import { RemoveIdentityActionSchema, UpdateIdentityActionSchema, } from '@lobechat/memory-user-memory'; -import { LayersEnum, SearchMemoryResult, searchMemorySchema } from '@lobechat/types'; +import { LayersEnum, type SearchMemoryResult, searchMemorySchema } from '@lobechat/types'; import { type SQL, and, asc, eq, gte, lte } from 'drizzle-orm'; import { ModelProvider } from 'model-bank'; import pMap from 'p-map'; import { z } from 'zod'; import { - IdentityEntryBasePayload, - IdentityEntryPayload, + type IdentityEntryBasePayload, + type IdentityEntryPayload, UserMemoryIdentityModel, UserMemoryModel, } from '@/database/models/userMemory'; @@ -35,7 +35,7 @@ import { authedProcedure, router } from '@/libs/trpc/lambda'; import { keyVaults, serverDatabase } from '@/libs/trpc/lambda/middleware'; import { getServerDefaultFilesConfig } from '@/server/globalConfig'; import { initModelRuntimeWithUserPayload } from '@/server/modules/ModelRuntime'; -import { ClientSecretPayload } from '@/types/auth'; +import { type ClientSecretPayload } from '@/types/auth'; const EMPTY_SEARCH_RESULT: SearchMemoryResult = { contexts: [], diff --git a/src/server/routers/lambda/userMemories/search.ts b/src/server/routers/lambda/userMemories/search.ts index fed90b3bc5..136ef72953 100644 --- a/src/server/routers/lambda/userMemories/search.ts +++ b/src/server/routers/lambda/userMemories/search.ts @@ -1,12 +1,12 @@ import { ModelProvider } from 'model-bank'; -import { z } from 'zod'; +import { type z } from 'zod'; import { DEFAULT_FILE_EMBEDDING_MODEL_ITEM } from '@/const/settings/knowledge'; -import { UserMemoryModel } from '@/database/models/userMemory'; +import { type UserMemoryModel } from '@/database/models/userMemory'; import { getServerDefaultFilesConfig } from '@/server/globalConfig'; import { initModelRuntimeWithUserPayload } from '@/server/modules/ModelRuntime'; -import { ClientSecretPayload } from '@/types/auth'; -import { SearchMemoryResult, searchMemorySchema } from '@/types/userMemory'; +import { type ClientSecretPayload } from '@/types/auth'; +import { type SearchMemoryResult, searchMemorySchema } from '@/types/userMemory'; import { EMBEDDING_VECTOR_DIMENSION, memoryProcedure, router } from './shared'; diff --git a/src/server/routers/lambda/userMemories/shared.ts b/src/server/routers/lambda/userMemories/shared.ts index 012341aec2..7261dea927 100644 --- a/src/server/routers/lambda/userMemories/shared.ts +++ b/src/server/routers/lambda/userMemories/shared.ts @@ -7,7 +7,7 @@ import { authedProcedure, } from '@/libs/trpc/lambda'; import { keyVaults, serverDatabase } from '@/libs/trpc/lambda/middleware'; import { getServerDefaultFilesConfig } from '@/server/globalConfig'; import { initModelRuntimeWithUserPayload } from '@/server/modules/ModelRuntime'; -import { ClientSecretPayload } from '@/types/auth'; +import { type ClientSecretPayload } from '@/types/auth'; diff --git a/src/server/routers/lambda/userMemories/tools.ts b/src/server/routers/lambda/userMemories/tools.ts index c4a7caf1ed..5e0c93429e 100644 --- a/src/server/routers/lambda/userMemories/tools.ts +++ b/src/server/routers/lambda/userMemories/tools.ts @@ -1,4 +1,4 @@ -import { IdentityEntryBasePayload, IdentityEntryPayload, UserMemoryModel } from '@/database/models/userMemory'; +import { type IdentityEntryBasePayload, type IdentityEntryPayload, UserMemoryModel } from '@/database/models/userMemory'; import { searchMemorySchema } from '@/types/userMemory'; import { ContextMemoryItemSchema, diff --git a/src/server/routers/mobile/topic.ts b/src/server/routers/mobile/topic.ts index 990de60d2a..13e9562dac 100644 --- a/src/server/routers/mobile/topic.ts +++ b/src/server/routers/mobile/topic.ts @@ -4,7 +4,7 @@ import { TopicModel } from '@/database/models/topic'; import { getServerDB } from '@/database/server'; import { authedProcedure, publicProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; -import { BatchTaskResult } from '@/types/service'; +import { type BatchTaskResult } from '@/types/service'; const topicProcedure = authedProcedure.use(serverDatabase).use(async (opts) => { const { ctx } = opts; diff --git a/src/server/routers/tools/codeInterpreter.ts b/src/server/routers/tools/codeInterpreter.ts index 2d96841f4b..50ad04d33f 100644 --- a/src/server/routers/tools/codeInterpreter.ts +++ b/src/server/routers/tools/codeInterpreter.ts @@ -1,4 +1,4 @@ -import { CodeInterpreterToolName, MarketSDK } from '@lobehub/market-sdk'; +import { type CodeInterpreterToolName, MarketSDK } from '@lobehub/market-sdk'; import debug from 'debug'; import { z } from 'zod'; diff --git a/src/server/routers/tools/mcp.ts b/src/server/routers/tools/mcp.ts index ff253070c0..d96682156e 100644 --- a/src/server/routers/tools/mcp.ts +++ b/src/server/routers/tools/mcp.ts @@ -6,7 +6,7 @@ import { import { TRPCError } from '@trpc/server'; import { z } from 'zod'; -import { ToolCallContent } from '@/libs/mcp'; +import { type ToolCallContent } from '@/libs/mcp'; import { authedProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; import { FileService } from '@/server/services/file'; diff --git a/src/server/services/agent/index.ts b/src/server/services/agent/index.ts index a353af299d..ab8bb308c0 100644 --- a/src/server/services/agent/index.ts +++ b/src/server/services/agent/index.ts @@ -1,7 +1,7 @@ -import { BUILTIN_AGENTS, BuiltinAgentSlug } from '@lobechat/builtin-agents'; +import { BUILTIN_AGENTS, type BuiltinAgentSlug } from '@lobechat/builtin-agents'; import { DEFAULT_AGENT_CONFIG } from '@lobechat/const'; -import { LobeChatDatabase } from '@lobechat/database'; -import { AgentItem, LobeAgentConfig } from '@lobechat/types'; +import { type LobeChatDatabase } from '@lobechat/database'; +import { type AgentItem, type LobeAgentConfig } from '@lobechat/types'; import { cleanObject, merge } from '@lobechat/utils'; import type { PartialDeep } from 'type-fest'; @@ -10,7 +10,7 @@ import { SessionModel } from '@/database/models/session'; import { UserModel } from '@/database/models/user'; import { getServerDefaultAgentConfig } from '@/server/globalConfig'; -import { UpdateAgentResult } from './type'; +import { type UpdateAgentResult } from './type'; /** * Agent Service diff --git a/src/server/services/agent/type.ts b/src/server/services/agent/type.ts index 4e2b9ee2f7..a60a453ec9 100644 --- a/src/server/services/agent/type.ts +++ b/src/server/services/agent/type.ts @@ -1,4 +1,4 @@ -import { LobeAgentConfig } from '@/types/agent'; +import { type LobeAgentConfig } from '@/types/agent'; export interface UpdateAgentResult { agent?: LobeAgentConfig; diff --git a/src/server/services/agentRuntime/AgentRuntimeService.ts b/src/server/services/agentRuntime/AgentRuntimeService.ts index 5d86f46d35..a0ba6ce4e5 100644 --- a/src/server/services/agentRuntime/AgentRuntimeService.ts +++ b/src/server/services/agentRuntime/AgentRuntimeService.ts @@ -1,21 +1,21 @@ import { AgentRuntime, - AgentRuntimeContext, - AgentState, + type AgentRuntimeContext, + type AgentState, GeneralChatAgent, } from '@lobechat/agent-runtime'; import debug from 'debug'; import urlJoin from 'url-join'; import { MessageModel } from '@/database/models/message'; -import { LobeChatDatabase } from '@/database/type'; +import { type LobeChatDatabase } from '@/database/type'; import { AgentRuntimeCoordinator, type AgentRuntimeCoordinatorOptions, createStreamEventManager, } from '@/server/modules/AgentRuntime'; import { - RuntimeExecutorContext, + type RuntimeExecutorContext, createRuntimeExecutors, } from '@/server/modules/AgentRuntime/RuntimeExecutors'; import type { IStreamEventManager } from '@/server/modules/AgentRuntime/types'; diff --git a/src/server/services/agentRuntime/types.ts b/src/server/services/agentRuntime/types.ts index 0213e121dc..a3fb58fad2 100644 --- a/src/server/services/agentRuntime/types.ts +++ b/src/server/services/agentRuntime/types.ts @@ -1,5 +1,5 @@ -import { AgentRuntimeContext, AgentState } from '@lobechat/agent-runtime'; -import { LobeToolManifest } from '@lobechat/context-engine'; +import { type AgentRuntimeContext, type AgentState } from '@lobechat/agent-runtime'; +import { type LobeToolManifest } from '@lobechat/context-engine'; // ==================== Step Lifecycle Callbacks ==================== diff --git a/src/server/services/aiAgent/index.ts b/src/server/services/aiAgent/index.ts index ae9a0952f0..2ab8211699 100644 --- a/src/server/services/aiAgent/index.ts +++ b/src/server/services/aiAgent/index.ts @@ -1,5 +1,5 @@ import type { AgentRuntimeContext, AgentState } from '@lobechat/agent-runtime'; -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import type { ExecAgentParams, ExecAgentResult, diff --git a/src/server/services/aiChat/index.ts b/src/server/services/aiChat/index.ts index ce1fad58c5..b3c30486ef 100644 --- a/src/server/services/aiChat/index.ts +++ b/src/server/services/aiChat/index.ts @@ -1,4 +1,4 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import { MessageModel } from '@/database/models/message'; import { TopicModel } from '@/database/models/topic'; diff --git a/src/server/services/changelog/index.ts b/src/server/services/changelog/index.ts index dcbfb2c894..6f30ce7fea 100644 --- a/src/server/services/changelog/index.ts +++ b/src/server/services/changelog/index.ts @@ -6,8 +6,8 @@ import semver from 'semver'; import urlJoin from 'url-join'; import { FetchCacheTag } from '@/const/cacheControl'; -import { Locales } from '@/locales/resources'; -import { ChangelogIndexItem } from '@/types/changelog'; +import { type Locales } from '@/locales/resources'; +import { type ChangelogIndexItem } from '@/types/changelog'; const URL_TEMPLATE = 'https://raw.githubusercontent.com/{{user}}/{{repo}}/{{branch}}/{{path}}'; const LAST_MODIFIED = new Date().toISOString(); diff --git a/src/server/services/chatGroup/index.ts b/src/server/services/chatGroup/index.ts index a9eb6264a3..80c1af1059 100644 --- a/src/server/services/chatGroup/index.ts +++ b/src/server/services/chatGroup/index.ts @@ -1,13 +1,13 @@ import { DEFAULT_AGENT_CONFIG, DEFAULT_CHAT_GROUP_CHAT_CONFIG } from '@lobechat/const'; -import { LobeChatDatabase } from '@lobechat/database'; -import { LobeAgentConfig } from '@lobechat/types'; +import { type LobeChatDatabase } from '@lobechat/database'; +import { type LobeAgentConfig } from '@lobechat/types'; import { cleanObject, merge } from '@lobechat/utils'; import type { PartialDeep } from 'type-fest'; import { ChatGroupModel } from '@/database/models/chatGroup'; -import { UserModel } from '@/database/models/user'; +import { type UserModel } from '@/database/models/user'; import { AgentGroupRepository } from '@/database/repositories/agentGroup'; -import { ChatGroupConfig } from '@/database/types/chatGroup'; +import { type ChatGroupConfig } from '@/database/types/chatGroup'; import { getServerDefaultAgentConfig } from '@/server/globalConfig'; type DefaultAgentConfig = Awaited>; diff --git a/src/server/services/chunk/index.ts b/src/server/services/chunk/index.ts index 1e4765fe98..08a083140f 100644 --- a/src/server/services/chunk/index.ts +++ b/src/server/services/chunk/index.ts @@ -1,9 +1,9 @@ -import { LobeChatDatabase } from '@lobechat/database'; -import { ClientSecretPayload } from '@lobechat/types'; +import { type LobeChatDatabase } from '@lobechat/database'; +import { type ClientSecretPayload } from '@lobechat/types'; import { AsyncTaskModel } from '@/database/models/asyncTask'; import { FileModel } from '@/database/models/file'; -import { ChunkContentParams, ContentChunk } from '@/server/modules/ContentChunk'; +import { type ChunkContentParams, ContentChunk } from '@/server/modules/ContentChunk'; import { createAsyncCaller } from '@/server/routers/async'; import { AsyncTaskError, diff --git a/src/server/services/comfyui/core/comfyUIClientService.ts b/src/server/services/comfyui/core/comfyUIClientService.ts index 941ef04847..50eaffa122 100644 --- a/src/server/services/comfyui/core/comfyUIClientService.ts +++ b/src/server/services/comfyui/core/comfyUIClientService.ts @@ -6,7 +6,7 @@ * Uses modular services for authentication, connection, and caching */ import type { ComfyUIKeyVault } from '@lobechat/types'; -import { CallWrapper, ComfyApi, PromptBuilder } from '@saintno/comfyui-sdk'; +import { CallWrapper, ComfyApi, type PromptBuilder } from '@saintno/comfyui-sdk'; import debug from 'debug'; import { COMFYUI_DEFAULTS } from '@/server/services/comfyui/config/constants'; diff --git a/src/server/services/comfyui/core/errorHandlerService.ts b/src/server/services/comfyui/core/errorHandlerService.ts index b2fda3a2de..16c6f59eba 100644 --- a/src/server/services/comfyui/core/errorHandlerService.ts +++ b/src/server/services/comfyui/core/errorHandlerService.ts @@ -7,7 +7,7 @@ import { AgentRuntimeError, AgentRuntimeErrorType, - ILobeAgentRuntimeErrorType, + type ILobeAgentRuntimeErrorType, } from '@lobechat/model-runtime'; import { TRPCError } from '@trpc/server'; diff --git a/src/server/services/comfyui/core/imageService.ts b/src/server/services/comfyui/core/imageService.ts index 3f29a791f3..02b923c5c0 100644 --- a/src/server/services/comfyui/core/imageService.ts +++ b/src/server/services/comfyui/core/imageService.ts @@ -4,14 +4,14 @@ * Business logic for image processing including URL fetching * and workflow execution */ -import { PromptBuilder } from '@saintno/comfyui-sdk'; +import { type PromptBuilder } from '@saintno/comfyui-sdk'; import debug from 'debug'; import type { CreateImagePayload, CreateImageResponse } from '@lobechat/model-runtime'; -import { ComfyUIClientService } from '@/server/services/comfyui/core/comfyUIClientService'; +import { type ComfyUIClientService } from '@/server/services/comfyui/core/comfyUIClientService'; import { ErrorHandlerService } from '@/server/services/comfyui/core/errorHandlerService'; -import { ModelResolverService } from '@/server/services/comfyui/core/modelResolverService'; -import { WorkflowBuilderService } from '@/server/services/comfyui/core/workflowBuilderService'; +import { type ModelResolverService } from '@/server/services/comfyui/core/modelResolverService'; +import { type WorkflowBuilderService } from '@/server/services/comfyui/core/workflowBuilderService'; import { ServicesError } from '@/server/services/comfyui/errors'; import { imageResizer } from '@/server/services/comfyui/utils/imageResizer'; import { WorkflowDetector } from '@/server/services/comfyui/utils/workflowDetector'; diff --git a/src/server/services/comfyui/core/modelResolverService.ts b/src/server/services/comfyui/core/modelResolverService.ts index 4cd0d0e60d..7355b345c3 100644 --- a/src/server/services/comfyui/core/modelResolverService.ts +++ b/src/server/services/comfyui/core/modelResolverService.ts @@ -16,7 +16,7 @@ import { MODEL_REGISTRY, } from '@/server/services/comfyui/config/modelRegistry'; import { SYSTEM_COMPONENTS } from '@/server/services/comfyui/config/systemComponents'; -import { ComfyUIClientService } from '@/server/services/comfyui/core/comfyUIClientService'; +import { type ComfyUIClientService } from '@/server/services/comfyui/core/comfyUIClientService'; import { ModelResolverError } from '@/server/services/comfyui/errors/modelResolverError'; import { TTLCacheManager } from '@/server/services/comfyui/utils/cacheManager'; import { getModelsByVariant } from '@/server/services/comfyui/utils/staticModelLookup'; diff --git a/src/server/services/comfyui/core/workflowBuilderService.ts b/src/server/services/comfyui/core/workflowBuilderService.ts index dbbcf34b72..9c74509d04 100644 --- a/src/server/services/comfyui/core/workflowBuilderService.ts +++ b/src/server/services/comfyui/core/workflowBuilderService.ts @@ -4,12 +4,12 @@ * Coordinator service for routing workflow requests to specific implementations * Maintains clean separation between coordination and business logic */ -import { PromptBuilder } from '@saintno/comfyui-sdk'; +import { type PromptBuilder } from '@saintno/comfyui-sdk'; import debug from 'debug'; import { getWorkflowBuilder } from '@/server/services/comfyui/config/workflowRegistry'; -import { ComfyUIClientService } from '@/server/services/comfyui/core/comfyUIClientService'; -import { ModelResolverService } from '@/server/services/comfyui/core/modelResolverService'; +import { type ComfyUIClientService } from '@/server/services/comfyui/core/comfyUIClientService'; +import { type ModelResolverService } from '@/server/services/comfyui/core/modelResolverService'; import { WorkflowError } from '@/server/services/comfyui/errors'; import type { WorkflowDetectionResult } from '@/server/services/comfyui/utils/workflowDetector'; diff --git a/src/server/services/discover/index.ts b/src/server/services/discover/index.ts index 0a5beae89a..cf07b13134 100644 --- a/src/server/services/discover/index.ts +++ b/src/server/services/discover/index.ts @@ -7,34 +7,34 @@ import { isDesktop, } from '@lobechat/const'; import { - AgentStatus, - AssistantListResponse, - AssistantMarketSource, - AssistantQueryParams, + type AgentStatus, + type AssistantListResponse, + type AssistantMarketSource, + type AssistantQueryParams, AssistantSorts, CacheRevalidate, CacheTag, - DiscoverAssistantDetail, - DiscoverAssistantItem, - DiscoverMcpDetail, - DiscoverModelDetail, - DiscoverModelItem, - DiscoverPluginDetail, - DiscoverPluginItem, - DiscoverProviderDetail, - DiscoverProviderItem, - DiscoverUserProfile, - IdentifiersResponse, - McpListResponse, - McpQueryParams, - ModelListResponse, - ModelQueryParams, + type DiscoverAssistantDetail, + type DiscoverAssistantItem, + type DiscoverMcpDetail, + type DiscoverModelDetail, + type DiscoverModelItem, + type DiscoverPluginDetail, + type DiscoverPluginItem, + type DiscoverProviderDetail, + type DiscoverProviderItem, + type DiscoverUserProfile, + type IdentifiersResponse, + type McpListResponse, + type McpQueryParams, + type ModelListResponse, + type ModelQueryParams, ModelSorts, - PluginListResponse, - PluginQueryParams, + type PluginListResponse, + type PluginQueryParams, PluginSorts, - ProviderListResponse, - ProviderQueryParams, + type ProviderListResponse, + type ProviderQueryParams, ProviderSorts, } from '@lobechat/types'; import { @@ -42,8 +42,8 @@ import { getTextInputUnitRate, getTextOutputUnitRate, } from '@lobechat/utils'; -import { CategoryItem, CategoryListQuery, MarketSDK, UserInfoResponse } from '@lobehub/market-sdk'; -import { CallReportRequest, InstallReportRequest } from '@lobehub/market-types'; +import { type CategoryItem, type CategoryListQuery, MarketSDK, type UserInfoResponse } from '@lobehub/market-sdk'; +import { type CallReportRequest, type InstallReportRequest } from '@lobehub/market-types'; import dayjs from 'dayjs'; import debug from 'debug'; import { cloneDeep, countBy, isString, merge, uniq, uniqBy } from 'es-toolkit/compat'; diff --git a/src/server/services/document/index.ts b/src/server/services/document/index.ts index e8481f4599..dc030a4a4f 100644 --- a/src/server/services/document/index.ts +++ b/src/server/services/document/index.ts @@ -1,12 +1,12 @@ -import { LobeChatDatabase } from '@lobechat/database'; -import { DocumentItem, documents, files } from '@lobechat/database/schemas'; +import { type LobeChatDatabase } from '@lobechat/database'; +import { type DocumentItem, documents, files } from '@lobechat/database/schemas'; import { loadFile } from '@lobechat/file-loaders'; import debug from 'debug'; import { and, eq } from 'drizzle-orm'; import { DocumentModel } from '@/database/models/document'; import { FileModel } from '@/database/models/file'; -import { LobeDocument } from '@/types/document'; +import { type LobeDocument } from '@/types/document'; import { FileService } from '../file'; diff --git a/src/server/services/email/impls/index.ts b/src/server/services/email/impls/index.ts index cc8297e6ec..dd3813bb8e 100644 --- a/src/server/services/email/impls/index.ts +++ b/src/server/services/email/impls/index.ts @@ -1,6 +1,6 @@ import { NodemailerImpl } from './nodemailer'; import { ResendImpl } from './resend'; -import { EmailServiceImpl } from './type'; +import { type EmailServiceImpl } from './type'; /** * Available email service implementations diff --git a/src/server/services/email/impls/nodemailer/index.ts b/src/server/services/email/impls/nodemailer/index.ts index 309ce5750c..1718ee12a7 100644 --- a/src/server/services/email/impls/nodemailer/index.ts +++ b/src/server/services/email/impls/nodemailer/index.ts @@ -5,8 +5,8 @@ import type { Transporter } from 'nodemailer'; import { emailEnv } from '@/envs/email'; -import { EmailPayload, EmailResponse, EmailServiceImpl } from '../type'; -import { NodemailerConfig } from './type'; +import { type EmailPayload, type EmailResponse, type EmailServiceImpl } from '../type'; +import { type NodemailerConfig } from './type'; const log = debug('lobe-email:Nodemailer'); diff --git a/src/server/services/email/impls/resend/index.ts b/src/server/services/email/impls/resend/index.ts index 71b93e8840..0bd6974f63 100644 --- a/src/server/services/email/impls/resend/index.ts +++ b/src/server/services/email/impls/resend/index.ts @@ -5,7 +5,7 @@ import type { CreateEmailOptions } from 'resend'; import { emailEnv } from '@/envs/email'; -import { EmailPayload, EmailResponse, EmailServiceImpl } from '../type'; +import { type EmailPayload, type EmailResponse, type EmailServiceImpl } from '../type'; const log = debug('lobe-email:Resend'); diff --git a/src/server/services/email/index.ts b/src/server/services/email/index.ts index 70dea043e5..f0abc829c4 100644 --- a/src/server/services/email/index.ts +++ b/src/server/services/email/index.ts @@ -1,7 +1,6 @@ import { emailEnv } from '@/envs/email'; -import { EmailImplType, EmailPayload, EmailResponse, createEmailServiceImpl } from './impls'; -import type { EmailServiceImpl } from './impls'; +import { EmailImplType, type EmailPayload, type EmailResponse, createEmailServiceImpl , type EmailServiceImpl } from './impls'; /** * Email service class diff --git a/src/server/services/file/impls/index.ts b/src/server/services/file/impls/index.ts index 6d4f415a81..38cfc8179e 100644 --- a/src/server/services/file/impls/index.ts +++ b/src/server/services/file/impls/index.ts @@ -2,7 +2,7 @@ import { isDesktop } from '@/const/version'; import { DesktopLocalFileImpl } from './local'; import { S3StaticFileImpl } from './s3'; -import { FileServiceImpl } from './type'; +import { type FileServiceImpl } from './type'; /** * Create file service module diff --git a/src/server/services/file/impls/local.ts b/src/server/services/file/impls/local.ts index f10113ccc7..af38c14f1d 100644 --- a/src/server/services/file/impls/local.ts +++ b/src/server/services/file/impls/local.ts @@ -6,7 +6,7 @@ import path from 'node:path'; import { electronIpcClient } from '@/server/modules/ElectronIPCClient'; import { inferContentTypeFromImageUrl } from '@/utils/url'; -import { FileServiceImpl } from './type'; +import { type FileServiceImpl } from './type'; import { extractKeyFromUrlOrReturnOriginal } from './utils'; const log = debug('lobe-file:desktop-local'); diff --git a/src/server/services/file/impls/s3.ts b/src/server/services/file/impls/s3.ts index dde984fdd3..043e957d1e 100644 --- a/src/server/services/file/impls/s3.ts +++ b/src/server/services/file/impls/s3.ts @@ -3,7 +3,7 @@ import urlJoin from 'url-join'; import { fileEnv } from '@/envs/file'; import { FileS3 } from '@/server/modules/S3'; -import { FileServiceImpl } from './type'; +import { type FileServiceImpl } from './type'; import { extractKeyFromUrlOrReturnOriginal } from './utils'; /** diff --git a/src/server/services/file/index.ts b/src/server/services/file/index.ts index da4eb20193..b02510411f 100644 --- a/src/server/services/file/index.ts +++ b/src/server/services/file/index.ts @@ -1,14 +1,14 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import { inferContentTypeFromImageUrl, nanoid, uuid } from '@lobechat/utils'; import { TRPCError } from '@trpc/server'; import { sha256 } from 'js-sha256'; import { serverDBEnv } from '@/config/db'; import { FileModel } from '@/database/models/file'; -import { FileItem } from '@/database/schemas'; +import { type FileItem } from '@/database/schemas'; import { TempFileManager } from '@/server/utils/tempFileManager'; -import { FileServiceImpl, createFileServiceModule } from './impls'; +import { type FileServiceImpl, createFileServiceModule } from './impls'; /** * File service class diff --git a/src/server/services/generation/index.ts b/src/server/services/generation/index.ts index 1341ad393f..b5af66dbdd 100644 --- a/src/server/services/generation/index.ts +++ b/src/server/services/generation/index.ts @@ -1,4 +1,4 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import { parseDataUri } from '@lobechat/model-runtime'; import debug from 'debug'; import { sha256 } from 'js-sha256'; diff --git a/src/server/services/mcp/contentProcessor.ts b/src/server/services/mcp/contentProcessor.ts index fcb852e77f..3ce0fec365 100644 --- a/src/server/services/mcp/contentProcessor.ts +++ b/src/server/services/mcp/contentProcessor.ts @@ -4,8 +4,8 @@ import urlJoin from 'url-join'; import { appEnv } from '@/envs/app'; import { fileEnv } from '@/envs/file'; -import { AudioContent, ImageContent, ToolCallContent } from '@/libs/mcp'; -import { FileService } from '@/server/services/file'; +import { type AudioContent, type ImageContent, type ToolCallContent } from '@/libs/mcp'; +import { type FileService } from '@/server/services/file'; import { nanoid } from '@/utils/uuid'; const log = debug('lobe-mcp:content-processor'); diff --git a/src/server/services/mcp/deps/MCPSystemDepsCheckService.ts b/src/server/services/mcp/deps/MCPSystemDepsCheckService.ts index 716dd7240e..55d6fea5f3 100644 --- a/src/server/services/mcp/deps/MCPSystemDepsCheckService.ts +++ b/src/server/services/mcp/deps/MCPSystemDepsCheckService.ts @@ -1,11 +1,11 @@ -import { DeploymentOption, SystemDependency } from '@lobehub/market-sdk'; +import { type DeploymentOption, type SystemDependency } from '@lobehub/market-sdk'; import debug from 'debug'; import { exec } from 'node:child_process'; import { promisify } from 'node:util'; -import { SystemDependencyCheckResult } from '@/types/plugins'; +import { type SystemDependencyCheckResult } from '@/types/plugins'; -import { InstallationChecker, PackageInstallCheckResult } from './types'; +import { type InstallationChecker, type PackageInstallCheckResult } from './types'; const execPromise = promisify(exec); const log = debug('lobe-mcp:deps-check'); diff --git a/src/server/services/mcp/deps/checkers/ManualInstallationChecker.ts b/src/server/services/mcp/deps/checkers/ManualInstallationChecker.ts index 49a9ead13b..ea4c251c39 100644 --- a/src/server/services/mcp/deps/checkers/ManualInstallationChecker.ts +++ b/src/server/services/mcp/deps/checkers/ManualInstallationChecker.ts @@ -1,4 +1,4 @@ -import { InstallationChecker, PackageInstallCheckResult } from '../types'; +import { type InstallationChecker, type PackageInstallCheckResult } from '../types'; /** * Manual Installation Checker diff --git a/src/server/services/mcp/deps/checkers/NpmInstallationChecker.ts b/src/server/services/mcp/deps/checkers/NpmInstallationChecker.ts index 754c96fcff..28e94cf7d9 100644 --- a/src/server/services/mcp/deps/checkers/NpmInstallationChecker.ts +++ b/src/server/services/mcp/deps/checkers/NpmInstallationChecker.ts @@ -1,7 +1,7 @@ import { exec } from 'node:child_process'; import { promisify } from 'node:util'; -import { InstallationChecker, PackageInstallCheckResult } from '../types'; +import { type InstallationChecker, type PackageInstallCheckResult } from '../types'; const execPromise = promisify(exec); diff --git a/src/server/services/mcp/deps/checkers/PythonInstallationChecker.ts b/src/server/services/mcp/deps/checkers/PythonInstallationChecker.ts index cbeb366c25..a1066bc4cb 100644 --- a/src/server/services/mcp/deps/checkers/PythonInstallationChecker.ts +++ b/src/server/services/mcp/deps/checkers/PythonInstallationChecker.ts @@ -1,7 +1,7 @@ import { exec } from 'node:child_process'; import { promisify } from 'node:util'; -import { InstallationChecker, PackageInstallCheckResult } from '../types'; +import { type InstallationChecker, type PackageInstallCheckResult } from '../types'; const execPromise = promisify(exec); diff --git a/src/server/services/mcp/index.ts b/src/server/services/mcp/index.ts index c56361ad20..c8d530e91a 100644 --- a/src/server/services/mcp/index.ts +++ b/src/server/services/mcp/index.ts @@ -1,7 +1,7 @@ -import { CheckMcpInstallResult, CustomPluginMetadata } from '@lobechat/types'; +import { type CheckMcpInstallResult, type CustomPluginMetadata } from '@lobechat/types'; import { safeParseJSON } from '@lobechat/utils'; import type { LobeChatPluginApi, LobeChatPluginManifest, PluginSchema } from '@lobehub/chat-plugin-sdk'; -import { DeploymentOption } from '@lobehub/market-sdk'; +import { type DeploymentOption } from '@lobehub/market-sdk'; import { McpError } from '@modelcontextprotocol/sdk/types.js'; import { TRPCError } from '@trpc/server'; import retry from 'async-retry'; @@ -9,14 +9,14 @@ import debug from 'debug'; import { MCPClient, - MCPClientParams, - McpPrompt, - McpResource, - McpTool, - StdioMCPParams, + type MCPClientParams, + type McpPrompt, + type McpResource, + type McpTool, + type StdioMCPParams, } from '@/libs/mcp'; -import { ProcessContentBlocksFn, contentBlocksToString } from './contentProcessor'; +import { type ProcessContentBlocksFn, contentBlocksToString } from './contentProcessor'; import { mcpSystemDepsCheckService } from './deps'; const log = debug('lobe-mcp:service'); diff --git a/src/server/services/memory/userMemory/extract.ts b/src/server/services/memory/userMemory/extract.ts index b90910b6e0..54a0a515b9 100644 --- a/src/server/services/memory/userMemory/extract.ts +++ b/src/server/services/memory/userMemory/extract.ts @@ -56,14 +56,14 @@ import { UserMemoryModel } from '@/database/models/userMemory'; import { getServerDB } from '@/database/server'; import { getServerGlobalConfig } from '@/server/globalConfig'; import { - MemoryAgentConfig, + type MemoryAgentConfig, parseMemoryExtractionConfig, } from '@/server/globalConfig/parseMemoryExtractionConfig'; import { KeyVaultsGateKeeper } from '@/server/modules/KeyVaultsEncrypt'; import { S3 } from '@/server/modules/S3'; import type { GlobalMemoryLayer } from '@/types/serverConfig'; import type { UserKeyVaults } from '@/types/user/settings'; -import { LayersEnum, MergeStrategyEnum, TypesEnum, MemorySourceType } from '@/types/userMemory'; +import { LayersEnum, type MergeStrategyEnum, TypesEnum, MemorySourceType } from '@/types/userMemory'; import { encodeAsync } from '@/utils/tokenizer'; const SOURCE_ALIAS_MAP: Record = { diff --git a/src/server/services/message/index.ts b/src/server/services/message/index.ts index d8c83d3791..39eb316a4a 100644 --- a/src/server/services/message/index.ts +++ b/src/server/services/message/index.ts @@ -1,5 +1,5 @@ -import { LobeChatDatabase } from '@lobechat/database'; -import { CreateMessageParams, UIChatMessage, UpdateMessageParams } from '@lobechat/types'; +import { type LobeChatDatabase } from '@lobechat/database'; +import { type CreateMessageParams, type UIChatMessage, type UpdateMessageParams } from '@lobechat/types'; import { MessageModel } from '@/database/models/message'; diff --git a/src/server/services/nextAuthUser/index.ts b/src/server/services/nextAuthUser/index.ts index d4af2d0023..aa8651a0d1 100644 --- a/src/server/services/nextAuthUser/index.ts +++ b/src/server/services/nextAuthUser/index.ts @@ -1,11 +1,11 @@ -import { LobeChatDatabase } from '@lobechat/database'; +import { type LobeChatDatabase } from '@lobechat/database'; import { and, eq } from 'drizzle-orm'; -import { Adapter, AdapterAccount } from 'next-auth/adapters'; +import { type Adapter, type AdapterAccount } from 'next-auth/adapters'; import { NextResponse } from 'next/server'; import { UserModel } from '@/database/models/user'; import { - UserItem, + type UserItem, nextauthAccounts, nextauthAuthenticators, nextauthSessions, diff --git a/src/server/services/nextAuthUser/utils.ts b/src/server/services/nextAuthUser/utils.ts index b28bfff272..ff4a83f6e7 100644 --- a/src/server/services/nextAuthUser/utils.ts +++ b/src/server/services/nextAuthUser/utils.ts @@ -1,6 +1,6 @@ -import { AdapterAuthenticator, AdapterUser } from 'next-auth/adapters'; +import { type AdapterAuthenticator, type AdapterUser } from 'next-auth/adapters'; -import { NewUser } from '@/database/schemas'; +import { type NewUser } from '@/database/schemas'; export const mapAdapterUserToLobeUser = (adapterUser: AdapterUser): NewUser => { const { id, email, name, image, emailVerified } = adapterUser; diff --git a/src/server/services/oidc/index.ts b/src/server/services/oidc/index.ts index fe65a900f2..67a01781a4 100644 --- a/src/server/services/oidc/index.ts +++ b/src/server/services/oidc/index.ts @@ -1,7 +1,7 @@ import debug from 'debug'; import { createContextForInteractionDetails } from '@/libs/oidc-provider/http-adapter'; -import { OIDCProvider } from '@/libs/oidc-provider/provider'; +import { type OIDCProvider } from '@/libs/oidc-provider/provider'; import { getOIDCProvider } from './oidcProvider'; diff --git a/src/server/services/oidc/oidcProvider.ts b/src/server/services/oidc/oidcProvider.ts index 2c7c90b887..70ba67998d 100644 --- a/src/server/services/oidc/oidcProvider.ts +++ b/src/server/services/oidc/oidcProvider.ts @@ -1,6 +1,6 @@ import { getDBInstance } from '@/database/core/web-server'; import { oidcEnv } from '@/envs/oidc'; -import { OIDCProvider, createOIDCProvider } from '@/libs/oidc-provider/provider'; +import { type OIDCProvider, createOIDCProvider } from '@/libs/oidc-provider/provider'; /** * OIDC Provider 实例 diff --git a/src/server/services/pluginGateway/index.ts b/src/server/services/pluginGateway/index.ts index 33b93efe63..1536bf3af7 100644 --- a/src/server/services/pluginGateway/index.ts +++ b/src/server/services/pluginGateway/index.ts @@ -1,12 +1,12 @@ -import { ChatToolPayload } from '@lobechat/types'; +import { type ChatToolPayload } from '@lobechat/types'; import { safeParseJSON } from '@lobechat/utils'; import type { PluginRequestPayload } from '@lobehub/chat-plugin-sdk'; -import { GatewaySuccessResponse } from '@lobehub/chat-plugins-gateway'; +import { type GatewaySuccessResponse } from '@lobehub/chat-plugins-gateway'; import debug from 'debug'; import { getAppConfig } from '@/envs/app'; import { parserPluginSettings } from '@/server/services/pluginGateway/settings'; -import { ToolExecutionContext } from '@/server/services/toolExecution/types'; +import { type ToolExecutionContext } from '@/server/services/toolExecution/types'; const log = debug('lobe-server:plugin-gateway-service'); diff --git a/src/server/services/queue/QueueService.ts b/src/server/services/queue/QueueService.ts index 768bec18fe..714f28b67b 100644 --- a/src/server/services/queue/QueueService.ts +++ b/src/server/services/queue/QueueService.ts @@ -1,5 +1,5 @@ -import { LocalQueueServiceImpl, QueueServiceImpl, createQueueServiceModule } from './impls'; -import { HealthCheckResult, QueueMessage, QueueStats } from './types'; +import { LocalQueueServiceImpl, type QueueServiceImpl, createQueueServiceModule } from './impls'; +import { type HealthCheckResult, type QueueMessage, type QueueStats } from './types'; /** * Queue Service diff --git a/src/server/services/queue/impls/index.ts b/src/server/services/queue/impls/index.ts index 325791d031..a2ab54d374 100644 --- a/src/server/services/queue/impls/index.ts +++ b/src/server/services/queue/impls/index.ts @@ -2,7 +2,7 @@ import { appEnv } from '@/envs/app'; import { LocalQueueServiceImpl } from './local'; import { QStashQueueServiceImpl } from './qstash'; -import { QueueServiceImpl } from './type'; +import { type QueueServiceImpl } from './type'; /** * Check if queue-based agent runtime is enabled diff --git a/src/server/services/queue/impls/local.ts b/src/server/services/queue/impls/local.ts index 0cb0aa20d0..aab2628bd8 100644 --- a/src/server/services/queue/impls/local.ts +++ b/src/server/services/queue/impls/local.ts @@ -1,7 +1,7 @@ import debug from 'debug'; -import { HealthCheckResult, QueueMessage, QueueStats } from '../types'; -import { QueueServiceImpl } from './type'; +import { type HealthCheckResult, type QueueMessage, type QueueStats } from '../types'; +import { type QueueServiceImpl } from './type'; const log = debug('queue:local'); diff --git a/src/server/services/queue/impls/qstash.ts b/src/server/services/queue/impls/qstash.ts index 7229e79fdd..1afdd72d5e 100644 --- a/src/server/services/queue/impls/qstash.ts +++ b/src/server/services/queue/impls/qstash.ts @@ -1,7 +1,7 @@ import debug from 'debug'; -import { HealthCheckResult, QueueMessage, QueueStats } from '../types'; -import { QueueServiceImpl } from './type'; +import { type HealthCheckResult, type QueueMessage, type QueueStats } from '../types'; +import { type QueueServiceImpl } from './type'; const log = debug('lobe-server:service:queue:qstash'); diff --git a/src/server/services/queue/impls/type.ts b/src/server/services/queue/impls/type.ts index b173758658..04ce38f189 100644 --- a/src/server/services/queue/impls/type.ts +++ b/src/server/services/queue/impls/type.ts @@ -1,4 +1,4 @@ -import { HealthCheckResult, QueueMessage, QueueStats } from '../types'; +import { type HealthCheckResult, type QueueMessage, type QueueStats } from '../types'; /** * Queue service implementation interface diff --git a/src/server/services/queue/types.ts b/src/server/services/queue/types.ts index e4d2a30d37..6721e4471d 100644 --- a/src/server/services/queue/types.ts +++ b/src/server/services/queue/types.ts @@ -1,4 +1,4 @@ -import { AgentRuntimeContext } from '@lobechat/agent-runtime'; +import { type AgentRuntimeContext } from '@lobechat/agent-runtime'; export interface QueueMessage { context?: AgentRuntimeContext; diff --git a/src/server/services/search/impls/anspire/index.ts b/src/server/services/search/impls/anspire/index.ts index c98d3abb1c..22e96f7474 100644 --- a/src/server/services/search/impls/anspire/index.ts +++ b/src/server/services/search/impls/anspire/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { AnspireResponse, AnspireSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type AnspireResponse, type AnspireSearchParameters } from './type'; const log = debug('lobe-search:Anspire'); diff --git a/src/server/services/search/impls/bocha/index.ts b/src/server/services/search/impls/bocha/index.ts index 88371ca267..6347506d78 100644 --- a/src/server/services/search/impls/bocha/index.ts +++ b/src/server/services/search/impls/bocha/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { BochaResponse, BochaSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type BochaResponse, type BochaSearchParameters } from './type'; const log = debug('lobe-search:Bocha'); diff --git a/src/server/services/search/impls/brave/index.ts b/src/server/services/search/impls/brave/index.ts index 9f373f3a03..25672cd1cf 100644 --- a/src/server/services/search/impls/brave/index.ts +++ b/src/server/services/search/impls/brave/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { BraveResponse, BraveSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type BraveResponse, type BraveSearchParameters } from './type'; const log = debug('lobe-search:Brave'); diff --git a/src/server/services/search/impls/exa/index.ts b/src/server/services/search/impls/exa/index.ts index 98f7a9c3cf..b52fe9f005 100644 --- a/src/server/services/search/impls/exa/index.ts +++ b/src/server/services/search/impls/exa/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { ExaResponse, ExaSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type ExaResponse, type ExaSearchParameters } from './type'; const log = debug('lobe-search:Exa'); diff --git a/src/server/services/search/impls/firecrawl/index.ts b/src/server/services/search/impls/firecrawl/index.ts index a10fc26950..5f08cb1ea9 100644 --- a/src/server/services/search/impls/firecrawl/index.ts +++ b/src/server/services/search/impls/firecrawl/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { FirecrawlResponse, FirecrawlSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type FirecrawlResponse, type FirecrawlSearchParameters } from './type'; const log = debug('lobe-search:Firecrawl'); diff --git a/src/server/services/search/impls/google/index.ts b/src/server/services/search/impls/google/index.ts index 9aee09f07e..85aa32cb0a 100644 --- a/src/server/services/search/impls/google/index.ts +++ b/src/server/services/search/impls/google/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { GoogleResponse, GoogleSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type GoogleResponse, type GoogleSearchParameters } from './type'; const log = debug('lobe-search:Google'); diff --git a/src/server/services/search/impls/index.ts b/src/server/services/search/impls/index.ts index 334083ca40..71e69ac1d0 100644 --- a/src/server/services/search/impls/index.ts +++ b/src/server/services/search/impls/index.ts @@ -10,7 +10,7 @@ import { Search1APIImpl } from './search1api'; import { SearXNGImpl } from './searxng'; import { TavilyImpl } from './tavily'; -import { SearchServiceImpl } from './type'; +import { type SearchServiceImpl } from './type'; /** * Available search service implementations diff --git a/src/server/services/search/impls/jina/index.ts b/src/server/services/search/impls/jina/index.ts index 2404f3dfb4..3f0dd3f304 100644 --- a/src/server/services/search/impls/jina/index.ts +++ b/src/server/services/search/impls/jina/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { JinaResponse, JinaSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type JinaResponse, type JinaSearchParameters } from './type'; const log = debug('lobe-search:Jina'); diff --git a/src/server/services/search/impls/kagi/index.ts b/src/server/services/search/impls/kagi/index.ts index ca04536bdb..e7ba52eb99 100644 --- a/src/server/services/search/impls/kagi/index.ts +++ b/src/server/services/search/impls/kagi/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { KagiResponse, KagiSearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type KagiResponse, type KagiSearchParameters } from './type'; const log = debug('lobe-search:Kagi'); diff --git a/src/server/services/search/impls/search1api/index.ts b/src/server/services/search/impls/search1api/index.ts index 2c4ef84be1..62cf8d4f23 100644 --- a/src/server/services/search/impls/search1api/index.ts +++ b/src/server/services/search/impls/search1api/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { Search1ApiResponse } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type Search1ApiResponse } from './type'; interface Search1APIQueryParams { crawl_results?: 0 | 1; diff --git a/src/server/services/search/impls/searxng/fixtures/searXNG.ts b/src/server/services/search/impls/searxng/fixtures/searXNG.ts index ba2290c102..248505d796 100644 --- a/src/server/services/search/impls/searxng/fixtures/searXNG.ts +++ b/src/server/services/search/impls/searxng/fixtures/searXNG.ts @@ -1,4 +1,4 @@ -import { SearXNGSearchResponse } from '../client'; +import { type SearXNGSearchResponse } from '../client'; export const hetongxue: SearXNGSearchResponse = { answers: [ diff --git a/src/server/services/search/impls/searxng/index.ts b/src/server/services/search/impls/searxng/index.ts index ce93fcb20a..2c09ab35ad 100644 --- a/src/server/services/search/impls/searxng/index.ts +++ b/src/server/services/search/impls/searxng/index.ts @@ -1,10 +1,10 @@ -import { SEARCH_SEARXNG_NOT_CONFIG, UniformSearchResponse } from '@lobechat/types'; +import { SEARCH_SEARXNG_NOT_CONFIG, type UniformSearchResponse } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import { toolsEnv } from '@/envs/tools'; import { SearXNGClient } from '@/server/services/search/impls/searxng/client'; -import { SearchServiceImpl } from '../type'; +import { type SearchServiceImpl } from '../type'; /** * SearXNG implementation of the search service diff --git a/src/server/services/search/impls/tavily/index.ts b/src/server/services/search/impls/tavily/index.ts index bb5028f0f1..72710ac0ab 100644 --- a/src/server/services/search/impls/tavily/index.ts +++ b/src/server/services/search/impls/tavily/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, UniformSearchResponse, UniformSearchResult } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse, type UniformSearchResult } from '@lobechat/types'; import { TRPCError } from '@trpc/server'; import debug from 'debug'; import urlJoin from 'url-join'; -import { SearchServiceImpl } from '../type'; -import { TavilyResponse, TavilySearchParameters } from './type'; +import { type SearchServiceImpl } from '../type'; +import { type TavilyResponse, type TavilySearchParameters } from './type'; const log = debug('lobe-search:Tavily'); diff --git a/src/server/services/search/impls/type.ts b/src/server/services/search/impls/type.ts index 7b83416b6e..745e125fc6 100644 --- a/src/server/services/search/impls/type.ts +++ b/src/server/services/search/impls/type.ts @@ -1,4 +1,4 @@ -import { SearchParams, UniformSearchResponse } from '@lobechat/types'; +import { type SearchParams, type UniformSearchResponse } from '@lobechat/types'; /** * Search service implementation interface diff --git a/src/server/services/search/index.ts b/src/server/services/search/index.ts index 30227bb3ae..8db0caa1e2 100644 --- a/src/server/services/search/index.ts +++ b/src/server/services/search/index.ts @@ -1,10 +1,10 @@ -import { SearchParams, SearchQuery } from '@lobechat/types'; -import { CrawlImplType } from '@lobechat/web-crawler'; +import { type SearchParams, type SearchQuery } from '@lobechat/types'; +import { type CrawlImplType } from '@lobechat/web-crawler'; import pMap from 'p-map'; import { toolsEnv } from '@/envs/tools'; -import { SearchImplType, SearchServiceImpl, createSearchServiceImpl } from './impls'; +import { type SearchImplType, type SearchServiceImpl, createSearchServiceImpl } from './impls'; const parseImplEnv = (envString: string = '') => { // Handle full-width commas and extra whitespace diff --git a/src/server/services/toolExecution/builtin.ts b/src/server/services/toolExecution/builtin.ts index 1645eefc93..ce7b152b71 100644 --- a/src/server/services/toolExecution/builtin.ts +++ b/src/server/services/toolExecution/builtin.ts @@ -1,4 +1,4 @@ -import { ChatToolPayload } from '@lobechat/types'; +import { type ChatToolPayload } from '@lobechat/types'; import { safeParseJSON } from '@lobechat/utils'; import debug from 'debug'; @@ -6,7 +6,7 @@ import { SearchService } from '@/server/services/search'; import { WebBrowsingManifest } from '@/tools/web-browsing'; import { WebBrowsingExecutionRuntime } from '@/tools/web-browsing/ExecutionRuntime'; -import { IToolExecutor, ToolExecutionContext, ToolExecutionResult } from './types'; +import { type IToolExecutor, type ToolExecutionContext, type ToolExecutionResult } from './types'; const log = debug('lobe-server:builtin-tools-executor'); diff --git a/src/server/services/toolExecution/index.ts b/src/server/services/toolExecution/index.ts index b4f61c3c00..48d7c6eece 100644 --- a/src/server/services/toolExecution/index.ts +++ b/src/server/services/toolExecution/index.ts @@ -1,10 +1,10 @@ -import { ChatToolPayload } from '@lobechat/types'; +import { type ChatToolPayload } from '@lobechat/types'; import debug from 'debug'; -import { MCPService } from '../mcp'; -import { PluginGatewayService } from '../pluginGateway'; -import { BuiltinToolsExecutor } from './builtin'; -import { ToolExecutionContext, ToolExecutionResult, ToolExecutionResultResponse } from './types'; +import { type MCPService } from '../mcp'; +import { type PluginGatewayService } from '../pluginGateway'; +import { type BuiltinToolsExecutor } from './builtin'; +import { type ToolExecutionContext, type ToolExecutionResult, type ToolExecutionResultResponse } from './types'; const log = debug('lobe-server:tool-execution-service'); diff --git a/src/server/services/toolExecution/types.ts b/src/server/services/toolExecution/types.ts index ee6f2a1e1b..ef0ec35b71 100644 --- a/src/server/services/toolExecution/types.ts +++ b/src/server/services/toolExecution/types.ts @@ -1,5 +1,5 @@ -import { LobeToolManifest } from '@lobechat/context-engine'; -import { ChatToolPayload, ClientSecretPayload } from '@lobechat/types'; +import { type LobeToolManifest } from '@lobechat/context-engine'; +import { type ChatToolPayload, type ClientSecretPayload } from '@lobechat/types'; export interface ToolExecutionContext { toolManifestMap: Record; diff --git a/src/server/services/usage/index.ts b/src/server/services/usage/index.ts index 6abb084bcc..1d2e83074d 100644 --- a/src/server/services/usage/index.ts +++ b/src/server/services/usage/index.ts @@ -3,10 +3,10 @@ import debug from 'debug'; import { desc, eq } from 'drizzle-orm'; import { messages } from '@/database/schemas'; -import { LobeChatDatabase } from '@/database/type'; +import { type LobeChatDatabase } from '@/database/type'; import { genRangeWhere, genWhere } from '@/database/utils/genWhere'; -import { MessageMetadata } from '@/types/message'; -import { UsageLog, UsageRecordItem } from '@/types/usage/usageRecord'; +import { type MessageMetadata } from '@/types/message'; +import { type UsageLog, type UsageRecordItem } from '@/types/usage/usageRecord'; import { formatDate } from '@/utils/format'; const log = debug('lobe-usage:service'); diff --git a/src/server/services/user/index.ts b/src/server/services/user/index.ts index dabf5835e1..526540cfa2 100644 --- a/src/server/services/user/index.ts +++ b/src/server/services/user/index.ts @@ -1,6 +1,7 @@ -import { UserJSON } from '@clerk/backend'; + import { ENABLE_BUSINESS_FEATURES } from '@lobechat/business-const'; -import { LobeChatDatabase } from '@lobechat/database'; +import { type UserJSON } from '@clerk/backend'; +import { type LobeChatDatabase } from '@lobechat/database'; import { initNewUserForBusiness } from '@/business/server/user'; import { UserModel } from '@/database/models/user'; diff --git a/src/server/sitemap.ts b/src/server/sitemap.ts index e95358bd8e..0fe0ec4253 100644 --- a/src/server/sitemap.ts +++ b/src/server/sitemap.ts @@ -1,12 +1,12 @@ import { flatten } from 'es-toolkit/compat'; -import { MetadataRoute } from 'next'; +import { type MetadataRoute } from 'next'; import qs from 'query-string'; import urlJoin from 'url-join'; import { serverFeatureFlags } from '@/config/featureFlags'; import { DEFAULT_LANG } from '@/const/locale'; import { SITEMAP_BASE_URL } from '@/const/url'; -import { Locales, locales as allLocales } from '@/locales/resources'; +import { type Locales, locales as allLocales } from '@/locales/resources'; import { DiscoverService } from '@/server/services/discover'; import { getCanonicalUrl } from '@/server/utils/url'; import { isDev } from '@/utils/env'; diff --git a/src/server/translation.ts b/src/server/translation.ts index 0ab71ef673..67ed30c64f 100644 --- a/src/server/translation.ts +++ b/src/server/translation.ts @@ -1,7 +1,7 @@ import { get } from 'es-toolkit/compat'; import { DEFAULT_LANG } from '@/const/locale'; -import { Locales, NS, normalizeLocale } from '@/locales/resources'; +import { type Locales, type NS, normalizeLocale } from '@/locales/resources'; export const getLocale = async (hl?: string): Promise => { if (hl) return normalizeLocale(hl) as Locales; diff --git a/src/services/_auth.ts b/src/services/_auth.ts index f6a6a69059..bbcc49aa8f 100644 --- a/src/services/_auth.ts +++ b/src/services/_auth.ts @@ -1,12 +1,12 @@ import { LOBE_CHAT_AUTH_HEADER } from '@lobechat/const'; import { - AWSBedrockKeyVault, - AzureOpenAIKeyVault, - ClientSecretPayload, - CloudflareKeyVault, - ComfyUIKeyVault, - OpenAICompatibleKeyVault, - VertexAIKeyVault, + type AWSBedrockKeyVault, + type AzureOpenAIKeyVault, + type ClientSecretPayload, + type CloudflareKeyVault, + type ComfyUIKeyVault, + type OpenAICompatibleKeyVault, + type VertexAIKeyVault, } from '@lobechat/types'; import { clientApiKeyManager } from '@lobechat/utils/client'; import { ModelProvider } from 'model-bank'; diff --git a/src/services/agent.ts b/src/services/agent.ts index 164e696178..d14ed00775 100644 --- a/src/services/agent.ts +++ b/src/services/agent.ts @@ -1,4 +1,4 @@ -import { AgentItem, LobeAgentConfig, MetaData } from '@lobechat/types'; +import { type AgentItem, type LobeAgentConfig, type MetaData } from '@lobechat/types'; import type { PartialDeep } from 'type-fest'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/agentRuntime/client.ts b/src/services/agentRuntime/client.ts index e5c595af62..2a3489c3e7 100644 --- a/src/services/agentRuntime/client.ts +++ b/src/services/agentRuntime/client.ts @@ -1,7 +1,7 @@ import { fetchEventSource } from '@lobechat/utils/client'; import debug from 'debug'; -import { StreamConnectionOptions, StreamEvent } from './type'; +import { type StreamConnectionOptions, type StreamEvent } from './type'; const log = debug('lobe-agent-runtime:client'); diff --git a/src/services/agentRuntime/index.ts b/src/services/agentRuntime/index.ts index 6c5287e612..cbc7f1a1bb 100644 --- a/src/services/agentRuntime/index.ts +++ b/src/services/agentRuntime/index.ts @@ -1,8 +1,8 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { createAgentToolsEngine } from '@/helpers/toolEngineering'; import { lambdaClient } from '@/libs/trpc/client'; -import { HumanInterventionRequest } from '@/services/agentRuntime/type'; +import { type HumanInterventionRequest } from '@/services/agentRuntime/type'; import { contextEngineering } from '@/services/chat/mecha'; import { getAgentStoreState } from '@/store/agent'; import { agentChatConfigSelectors, agentSelectors } from '@/store/agent/selectors'; diff --git a/src/services/agentRuntime/type.ts b/src/services/agentRuntime/type.ts index d28854ca80..f4eb05ab4f 100644 --- a/src/services/agentRuntime/type.ts +++ b/src/services/agentRuntime/type.ts @@ -1,4 +1,4 @@ -import { OpenAIChatMessage } from '@/types/openai/chat'; +import { type OpenAIChatMessage } from '@/types/openai/chat'; export interface StreamEvent { data?: any; diff --git a/src/services/aiChat.ts b/src/services/aiChat.ts index 0920521d6d..08c3e7bbba 100644 --- a/src/services/aiChat.ts +++ b/src/services/aiChat.ts @@ -1,4 +1,4 @@ -import { SendMessageServerParams, StructureOutputParams } from '@lobechat/types'; +import { type SendMessageServerParams, type StructureOutputParams } from '@lobechat/types'; import { cleanObject } from '@lobechat/utils'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/aiModel/index.ts b/src/services/aiModel/index.ts index cf429702f5..6e73fcb569 100644 --- a/src/services/aiModel/index.ts +++ b/src/services/aiModel/index.ts @@ -1,9 +1,9 @@ import { - AiModelSortMap, - AiProviderModelListItem, - CreateAiModelParams, - ToggleAiModelEnableParams, - UpdateAiModelParams, + type AiModelSortMap, + type AiProviderModelListItem, + type CreateAiModelParams, + type ToggleAiModelEnableParams, + type UpdateAiModelParams, } from 'model-bank'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/aiProvider/index.ts b/src/services/aiProvider/index.ts index 29437d2c11..f8bdffc053 100644 --- a/src/services/aiProvider/index.ts +++ b/src/services/aiProvider/index.ts @@ -1,9 +1,9 @@ import { - AiProviderDetailItem, - AiProviderRuntimeState, - AiProviderSortMap, - CreateAiProviderParams, - UpdateAiProviderConfigParams, + type AiProviderDetailItem, + type AiProviderRuntimeState, + type AiProviderSortMap, + type CreateAiProviderParams, + type UpdateAiProviderConfigParams, } from '@/types/aiProvider'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/chat/index.ts b/src/services/chat/index.ts index 2afd6d24b2..232fa01c19 100644 --- a/src/services/chat/index.ts +++ b/src/services/chat/index.ts @@ -3,21 +3,21 @@ import { MemoryManifest } from '@lobechat/builtin-tool-memory'; import { KLAVIS_SERVER_TYPES } from '@lobechat/const'; import type { OfficialToolItem } from '@lobechat/context-engine'; import { - FetchSSEOptions, + type FetchSSEOptions, fetchSSE, getMessageError, standardizeAnimationStyle, } from '@lobechat/fetch-sse'; -import { AgentRuntimeError, ChatCompletionErrorPayload } from '@lobechat/model-runtime'; +import { AgentRuntimeError, type ChatCompletionErrorPayload } from '@lobechat/model-runtime'; import { ChatErrorType, - RuntimeInitialContext, - RuntimeStepContext, - TracePayload, + type RuntimeInitialContext, + type RuntimeStepContext, + type TracePayload, TraceTagMap, - UIChatMessage, + type UIChatMessage, } from '@lobechat/types'; -import { PluginRequestPayload, createHeadersWithPluginSettings } from '@lobehub/chat-plugin-sdk'; +import { type PluginRequestPayload, createHeadersWithPluginSettings } from '@lobehub/chat-plugin-sdk'; import { merge } from 'es-toolkit/compat'; import { ModelProvider } from 'model-bank'; @@ -56,7 +56,7 @@ import { resolveAgentConfig, resolveModelExtendParams, } from './mecha'; -import { FetchOptions } from './types'; +import { type FetchOptions } from './types'; interface GetChatCompletionPayload extends Partial> { agentId?: string; diff --git a/src/services/chat/mecha/agentConfigResolver.ts b/src/services/chat/mecha/agentConfigResolver.ts index 918c3a3774..1fad2ffbcb 100644 --- a/src/services/chat/mecha/agentConfigResolver.ts +++ b/src/services/chat/mecha/agentConfigResolver.ts @@ -1,5 +1,5 @@ import { BUILTIN_AGENT_SLUGS, getAgentRuntimeConfig } from '@lobechat/builtin-agents'; -import { LobeAgentChatConfig, LobeAgentConfig } from '@lobechat/types'; +import { type LobeAgentChatConfig, type LobeAgentConfig } from '@lobechat/types'; import { produce } from 'immer'; import { getAgentStoreState } from '@/store/agent'; diff --git a/src/services/chat/mecha/contextEngineering.ts b/src/services/chat/mecha/contextEngineering.ts index 2c854f8bef..d0c80840d6 100644 --- a/src/services/chat/mecha/contextEngineering.ts +++ b/src/services/chat/mecha/contextEngineering.ts @@ -2,18 +2,18 @@ import { AgentBuilderIdentifier } from '@lobechat/builtin-tool-agent-builder'; import { GroupAgentBuilderIdentifier } from '@lobechat/builtin-tool-group-agent-builder'; import { KLAVIS_SERVER_TYPES, isDesktop } from '@lobechat/const'; import { - AgentBuilderContext, - AgentGroupConfig, - GroupAgentBuilderContext, - GroupOfficialToolItem, + type AgentBuilderContext, + type AgentGroupConfig, + type GroupAgentBuilderContext, + type GroupOfficialToolItem, MessagesEngine, } from '@lobechat/context-engine'; import { historySummaryPrompt } from '@lobechat/prompts'; import { - OpenAIChatMessage, - RuntimeInitialContext, - RuntimeStepContext, - UIChatMessage, + type OpenAIChatMessage, + type RuntimeInitialContext, + type RuntimeStepContext, + type UIChatMessage, } from '@lobechat/types'; import { VARIABLE_GENERATORS } from '@lobechat/utils/client'; import debug from 'debug'; diff --git a/src/services/chat/mecha/modelParamsResolver.ts b/src/services/chat/mecha/modelParamsResolver.ts index 9579f6a527..a6431a06aa 100644 --- a/src/services/chat/mecha/modelParamsResolver.ts +++ b/src/services/chat/mecha/modelParamsResolver.ts @@ -1,4 +1,4 @@ -import { LobeAgentChatConfig } from '@lobechat/types'; +import { type LobeAgentChatConfig } from '@lobechat/types'; import { aiModelSelectors, getAiInfraStoreState } from '@/store/aiInfra'; diff --git a/src/services/chat/types.ts b/src/services/chat/types.ts index dc09b6c98b..ca37787bdc 100644 --- a/src/services/chat/types.ts +++ b/src/services/chat/types.ts @@ -1,5 +1,5 @@ -import { FetchSSEOptions } from '@lobechat/fetch-sse'; -import { RuntimeInitialContext, RuntimeStepContext, TracePayload } from '@lobechat/types'; +import { type FetchSSEOptions } from '@lobechat/fetch-sse'; +import { type RuntimeInitialContext, type RuntimeStepContext, type TracePayload } from '@lobechat/types'; export interface FetchOptions extends FetchSSEOptions { historySummary?: string; diff --git a/src/services/chatGroup/index.ts b/src/services/chatGroup/index.ts index a8f7ae6e08..a7c36d08d3 100644 --- a/src/services/chatGroup/index.ts +++ b/src/services/chatGroup/index.ts @@ -1,10 +1,10 @@ -import { AgentGroupDetail, AgentItem } from '@lobechat/types'; +import { type AgentGroupDetail, type AgentItem } from '@lobechat/types'; import { - ChatGroupAgentItem, - ChatGroupItem, - NewChatGroup, - NewChatGroupAgent, + type ChatGroupAgentItem, + type ChatGroupItem, + type NewChatGroup, + type NewChatGroupAgent, } from '@/database/schemas'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/config.ts b/src/services/config.ts index 515fbb087a..48d86c375f 100644 --- a/src/services/config.ts +++ b/src/services/config.ts @@ -2,7 +2,7 @@ import { BRANDING_NAME } from '@lobechat/business-const'; import { downloadFile, exportJSONFile } from '@lobechat/utils/client'; import dayjs from 'dayjs'; -import { ImportPgDataStructure } from '@/types/export'; +import { type ImportPgDataStructure } from '@/types/export'; import { exportService } from './export'; diff --git a/src/services/discover.ts b/src/services/discover.ts index 037bbf429d..935eee1b37 100644 --- a/src/services/discover.ts +++ b/src/services/discover.ts @@ -1,31 +1,31 @@ -import { CategoryItem, CategoryListQuery, PluginManifest } from '@lobehub/market-sdk'; -import { CallReportRequest, InstallReportRequest } from '@lobehub/market-types'; +import { type CategoryItem, type CategoryListQuery, type PluginManifest } from '@lobehub/market-sdk'; +import { type CallReportRequest, type InstallReportRequest } from '@lobehub/market-types'; import { lambdaClient } from '@/libs/trpc/client'; import { globalHelpers } from '@/store/global/helpers'; import { useUserStore } from '@/store/user'; import { userGeneralSettingsSelectors } from '@/store/user/selectors'; import { - AssistantListResponse, - AssistantMarketSource, - AssistantQueryParams, - DiscoverAssistantDetail, - DiscoverMcpDetail, - DiscoverModelDetail, - DiscoverPluginDetail, - DiscoverProviderDetail, - DiscoverUserProfile, - IdentifiersResponse, - McpListResponse, - McpQueryParams, - ModelListResponse, - ModelQueryParams, - PluginListResponse, - PluginQueryParams, - ProviderListResponse, - ProviderQueryParams, + type AssistantListResponse, + type AssistantMarketSource, + type AssistantQueryParams, + type DiscoverAssistantDetail, + type DiscoverMcpDetail, + type DiscoverModelDetail, + type DiscoverPluginDetail, + type DiscoverProviderDetail, + type DiscoverUserProfile, + type IdentifiersResponse, + type McpListResponse, + type McpQueryParams, + type ModelListResponse, + type ModelQueryParams, + type PluginListResponse, + type PluginQueryParams, + type ProviderListResponse, + type ProviderQueryParams, } from '@/types/discover'; -import { MCPPluginListParams } from '@/types/plugins'; +import { type MCPPluginListParams } from '@/types/plugins'; import { cleanObject } from '@/utils/object'; class DiscoverService { diff --git a/src/services/document/index.ts b/src/services/document/index.ts index baf715785f..e89c8566e9 100644 --- a/src/services/document/index.ts +++ b/src/services/document/index.ts @@ -1,4 +1,4 @@ -import { DocumentItem } from '@lobechat/database/schemas'; +import { type DocumentItem } from '@lobechat/database/schemas'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/electron/desktopNotification.ts b/src/services/electron/desktopNotification.ts index d78fc2d35c..530b127c15 100644 --- a/src/services/electron/desktopNotification.ts +++ b/src/services/electron/desktopNotification.ts @@ -1,4 +1,4 @@ -import { DesktopNotificationResult, ShowDesktopNotificationParams } from '@lobechat/electron-client-ipc'; +import { type DesktopNotificationResult, type ShowDesktopNotificationParams } from '@lobechat/electron-client-ipc'; import { ensureElectronIpc } from '@/utils/electron/ipc'; /** diff --git a/src/services/electron/file.ts b/src/services/electron/file.ts index 0e73afee04..bbc8767559 100644 --- a/src/services/electron/file.ts +++ b/src/services/electron/file.ts @@ -1,4 +1,4 @@ -import { FileMetadata } from '@lobechat/types'; +import { type FileMetadata } from '@lobechat/types'; import { ensureElectronIpc } from '@/utils/electron/ipc'; diff --git a/src/services/electron/localFileService.ts b/src/services/electron/localFileService.ts index 291fc69eac..0979cd5a92 100644 --- a/src/services/electron/localFileService.ts +++ b/src/services/electron/localFileService.ts @@ -1,28 +1,28 @@ import { - EditLocalFileParams, - EditLocalFileResult, - GetCommandOutputParams, - GetCommandOutputResult, - GlobFilesParams, - GlobFilesResult, - GrepContentParams, - GrepContentResult, - KillCommandParams, - KillCommandResult, - ListLocalFileParams, - LocalFileItem, - LocalMoveFilesResultItem, - LocalReadFileParams, - LocalReadFileResult, - LocalReadFilesParams, - LocalSearchFilesParams, - MoveLocalFilesParams, - OpenLocalFileParams, - OpenLocalFolderParams, - RenameLocalFileParams, - RunCommandParams, - RunCommandResult, - WriteLocalFileParams, + type EditLocalFileParams, + type EditLocalFileResult, + type GetCommandOutputParams, + type GetCommandOutputResult, + type GlobFilesParams, + type GlobFilesResult, + type GrepContentParams, + type GrepContentResult, + type KillCommandParams, + type KillCommandResult, + type ListLocalFileParams, + type LocalFileItem, + type LocalMoveFilesResultItem, + type LocalReadFileParams, + type LocalReadFileResult, + type LocalReadFilesParams, + type LocalSearchFilesParams, + type MoveLocalFilesParams, + type OpenLocalFileParams, + type OpenLocalFolderParams, + type RenameLocalFileParams, + type RunCommandParams, + type RunCommandResult, + type WriteLocalFileParams, } from '@lobechat/electron-client-ipc'; import { ensureElectronIpc } from '@/utils/electron/ipc'; diff --git a/src/services/electron/remoteServer.ts b/src/services/electron/remoteServer.ts index a43c907f4c..d97844455c 100644 --- a/src/services/electron/remoteServer.ts +++ b/src/services/electron/remoteServer.ts @@ -1,4 +1,4 @@ -import { DataSyncConfig, MarketAuthorizationParams } from '@lobechat/electron-client-ipc'; +import { type DataSyncConfig, type MarketAuthorizationParams } from '@lobechat/electron-client-ipc'; import { ensureElectronIpc } from '@/utils/electron/ipc'; class RemoteServerService { diff --git a/src/services/electron/settings.ts b/src/services/electron/settings.ts index a92fc8bfef..86cf34ef68 100644 --- a/src/services/electron/settings.ts +++ b/src/services/electron/settings.ts @@ -1,4 +1,4 @@ -import { NetworkProxySettings, ShortcutUpdateResult } from '@lobechat/electron-client-ipc'; +import { type NetworkProxySettings, type ShortcutUpdateResult } from '@lobechat/electron-client-ipc'; import { ensureElectronIpc } from '@/utils/electron/ipc'; diff --git a/src/services/export/index.ts b/src/services/export/index.ts index d829937884..af48d89ae8 100644 --- a/src/services/export/index.ts +++ b/src/services/export/index.ts @@ -1,4 +1,4 @@ -import { ExportDatabaseData } from '@/types/export'; +import { type ExportDatabaseData } from '@/types/export'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/file/index.ts b/src/services/file/index.ts index b7c72a69d1..742f895f3f 100644 --- a/src/services/file/index.ts +++ b/src/services/file/index.ts @@ -1,10 +1,10 @@ import { lambdaClient } from '@/libs/trpc/client'; import { - CheckFileHashResult, - FileItem, - QueryFileListParams, - QueryFileListSchemaType, - UploadFileParams, + type CheckFileHashResult, + type FileItem, + type QueryFileListParams, + type QueryFileListSchemaType, + type UploadFileParams, } from '@/types/files'; interface CreateFileParams extends Omit { diff --git a/src/services/generationBatch.ts b/src/services/generationBatch.ts index e83a29ec0f..1dd0f01175 100644 --- a/src/services/generationBatch.ts +++ b/src/services/generationBatch.ts @@ -1,6 +1,6 @@ -import { GenerationBatchItem } from '@/database/schemas'; +import { type GenerationBatchItem } from '@/database/schemas'; import { lambdaClient } from '@/libs/trpc/client'; -import { Generation, GenerationBatch } from '@/types/generation'; +import { type Generation, type GenerationBatch } from '@/types/generation'; type GenerationBatchWithAsyncTaskId = GenerationBatch & { generations: (Generation & { asyncTaskId?: string | null })[]; diff --git a/src/services/generationTopic.ts b/src/services/generationTopic.ts index 157ea84bae..a94dc28167 100644 --- a/src/services/generationTopic.ts +++ b/src/services/generationTopic.ts @@ -1,7 +1,7 @@ -import { GenerationTopicItem } from '@/database/schemas'; +import { type GenerationTopicItem } from '@/database/schemas'; import { lambdaClient } from '@/libs/trpc/client'; -import { UpdateTopicValue } from '@/server/routers/lambda/generationTopic'; -import { ImageGenerationTopic } from '@/types/generation'; +import { type UpdateTopicValue } from '@/server/routers/lambda/generationTopic'; +import { type ImageGenerationTopic } from '@/types/generation'; export class ServerService { async getAllGenerationTopics(): Promise { diff --git a/src/services/global.ts b/src/services/global.ts index 80f0476d5f..f256cb8715 100644 --- a/src/services/global.ts +++ b/src/services/global.ts @@ -1,8 +1,8 @@ import type { PartialDeep } from 'type-fest'; import { lambdaClient } from '@/libs/trpc/client'; -import { LobeAgentConfig } from '@/types/agent'; -import { GlobalRuntimeConfig } from '@/types/serverConfig'; +import { type LobeAgentConfig } from '@/types/agent'; +import { type GlobalRuntimeConfig } from '@/types/serverConfig'; const VERSION_URL = 'https://registry.npmmirror.com/@lobehub/chat/latest'; diff --git a/src/services/image.ts b/src/services/image.ts index 41817f12bc..0c42650a6b 100644 --- a/src/services/image.ts +++ b/src/services/image.ts @@ -1,7 +1,7 @@ import debug from 'debug'; import { lambdaClient } from '@/libs/trpc/client'; -import { CreateImageServicePayload } from '@/server/routers/lambda/image'; +import { type CreateImageServicePayload } from '@/server/routers/lambda/image'; // Create debug logger const log = debug('lobe-image:service'); diff --git a/src/services/import/index.ts b/src/services/import/index.ts index a602ebb3a3..d45464c031 100644 --- a/src/services/import/index.ts +++ b/src/services/import/index.ts @@ -1,11 +1,11 @@ -import { DefaultErrorShape } from '@trpc/server/unstable-core-do-not-import'; +import { type DefaultErrorShape } from '@trpc/server/unstable-core-do-not-import'; import { lambdaClient } from '@/libs/trpc/client'; import { uploadService } from '@/services/upload'; import { useUserStore } from '@/store/user'; -import { ImportPgDataStructure } from '@/types/export'; -import { ImporterEntryData, ImportStage, OnImportCallbacks } from '@/types/importer'; -import { UserSettings } from '@/types/user/settings'; +import { type ImportPgDataStructure } from '@/types/export'; +import { type ImporterEntryData, ImportStage, type OnImportCallbacks } from '@/types/importer'; +import { type UserSettings } from '@/types/user/settings'; import { uuid } from '@/utils/uuid'; class ImportService { diff --git a/src/services/knowledgeBase.ts b/src/services/knowledgeBase.ts index 94d06e2691..df92fed362 100644 --- a/src/services/knowledgeBase.ts +++ b/src/services/knowledgeBase.ts @@ -1,5 +1,5 @@ import { lambdaClient } from '@/libs/trpc/client'; -import { CreateKnowledgeBaseParams } from '@/types/knowledgeBase'; +import { type CreateKnowledgeBaseParams } from '@/types/knowledgeBase'; class KnowledgeBaseService { createKnowledgeBase = async (params: CreateKnowledgeBaseParams) => { diff --git a/src/services/marketApi.ts b/src/services/marketApi.ts index 6b7f1304a8..e247007d99 100644 --- a/src/services/marketApi.ts +++ b/src/services/marketApi.ts @@ -1,4 +1,4 @@ -import { AgentItemDetail, AgentListResponse } from '@lobehub/market-sdk'; +import { type AgentItemDetail, type AgentListResponse } from '@lobehub/market-sdk'; import { MARKET_ENDPOINTS } from '@/services/_url'; diff --git a/src/services/mcp.ts b/src/services/mcp.ts index 517974a579..138e220400 100644 --- a/src/services/mcp.ts +++ b/src/services/mcp.ts @@ -1,11 +1,11 @@ import { CURRENT_VERSION, isDesktop } from '@lobechat/const'; -import { ChatToolPayload, CheckMcpInstallResult, CustomPluginMetadata } from '@lobechat/types'; +import { type ChatToolPayload, type CheckMcpInstallResult, type CustomPluginMetadata } from '@lobechat/types'; import { isLocalOrPrivateUrl, safeParseJSON } from '@lobechat/utils'; -import { PluginManifest } from '@lobehub/market-sdk'; -import { CallReportRequest } from '@lobehub/market-types'; +import { type PluginManifest } from '@lobehub/market-sdk'; +import { type CallReportRequest } from '@lobehub/market-types'; import superjson from 'superjson'; -import { MCPToolCallResult } from '@/libs/mcp'; +import { type MCPToolCallResult } from '@/libs/mcp'; import { lambdaClient, toolsClient } from '@/libs/trpc/client'; import { ensureElectronIpc } from '@/utils/electron/ipc'; diff --git a/src/services/message/index.ts b/src/services/message/index.ts index 08d8d0dab5..70f2580fd7 100644 --- a/src/services/message/index.ts +++ b/src/services/message/index.ts @@ -1,17 +1,17 @@ import { - ChatMessageError, - ChatMessagePluginError, - ChatTTS, - ChatTranslate, - CreateMessageParams, - CreateMessageResult, - MessageMetadata, - MessagePluginItem, - ModelRankItem, - UIChatMessage, - UpdateMessageParams, - UpdateMessageRAGParams, - UpdateMessageResult, + type ChatMessageError, + type ChatMessagePluginError, + type ChatTTS, + type ChatTranslate, + type CreateMessageParams, + type CreateMessageResult, + type MessageMetadata, + type MessagePluginItem, + type ModelRankItem, + type UIChatMessage, + type UpdateMessageParams, + type UpdateMessageRAGParams, + type UpdateMessageResult, } from '@lobechat/types'; import type { HeatmapsProps } from '@lobehub/charts'; diff --git a/src/services/models.ts b/src/services/models.ts index 3751b04cc5..9fb72ead1f 100644 --- a/src/services/models.ts +++ b/src/services/models.ts @@ -2,7 +2,7 @@ import { getMessageError } from '@lobechat/fetch-sse'; import { createHeaderWithAuth } from '@/services/_auth'; import { aiProviderSelectors, getAiInfraStoreState } from '@/store/aiInfra'; -import { ChatModelCard } from '@/types/llm'; +import { type ChatModelCard } from '@/types/llm'; import { API_ENDPOINTS } from './_url'; import { resolveRuntimeProvider } from './chat/helper'; diff --git a/src/services/notebook.ts b/src/services/notebook.ts index 2c70758a28..b88ecc208c 100644 --- a/src/services/notebook.ts +++ b/src/services/notebook.ts @@ -1,4 +1,4 @@ -import { DocumentType } from '@lobechat/builtin-tool-notebook'; +import { type DocumentType } from '@lobechat/builtin-tool-notebook'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/plugin/index.ts b/src/services/plugin/index.ts index 9b80bd6e06..a1dda6a6c3 100644 --- a/src/services/plugin/index.ts +++ b/src/services/plugin/index.ts @@ -1,8 +1,8 @@ -import { LobeTool } from '@lobechat/types'; -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeTool } from '@lobechat/types'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { lambdaClient } from '@/libs/trpc/client'; -import { LobeToolCustomPlugin } from '@/types/tool/plugin'; +import { type LobeToolCustomPlugin } from '@/types/tool/plugin'; export interface InstallPluginParams { customParams?: Record; diff --git a/src/services/python.ts b/src/services/python.ts index fe3fc9c114..913b43903d 100644 --- a/src/services/python.ts +++ b/src/services/python.ts @@ -1,5 +1,5 @@ import { PythonInterpreter } from '@lobechat/python-interpreter'; -import { CodeInterpreterResponse } from '@lobechat/types'; +import { type CodeInterpreterResponse } from '@lobechat/types'; class PythonService { async runPython( diff --git a/src/services/rag.ts b/src/services/rag.ts index a7f494b921..781867bc32 100644 --- a/src/services/rag.ts +++ b/src/services/rag.ts @@ -1,5 +1,5 @@ import { lambdaClient } from '@/libs/trpc/client'; -import { SemanticSearchSchemaType } from '@/types/rag'; +import { type SemanticSearchSchemaType } from '@/types/rag'; class RAGService { parseFileContent = async (id: string, skipExist?: boolean) => { diff --git a/src/services/ragEval.ts b/src/services/ragEval.ts index eb2b1ca073..d5ef8b79d8 100644 --- a/src/services/ragEval.ts +++ b/src/services/ragEval.ts @@ -1,10 +1,10 @@ import { - CreateNewEvalDatasets, - CreateNewEvalEvaluation, - EvalDatasetRecord, - RAGEvalDataSetItem, - RAGEvalEvaluationItem, - insertEvalDatasetsSchema, + type CreateNewEvalDatasets, + type CreateNewEvalEvaluation, + type EvalDatasetRecord, + type RAGEvalDataSetItem, + type RAGEvalEvaluationItem, + type insertEvalDatasetsSchema, } from '@lobechat/types'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/search.ts b/src/services/search.ts index c56e258f31..a0c903d8df 100644 --- a/src/services/search.ts +++ b/src/services/search.ts @@ -1,4 +1,4 @@ -import { SearchQuery } from '@lobechat/types'; +import { type SearchQuery } from '@lobechat/types'; import { toolsClient } from '@/libs/trpc/client'; diff --git a/src/services/session/index.ts b/src/services/session/index.ts index f27c013402..2cfaf4c6fa 100644 --- a/src/services/session/index.ts +++ b/src/services/session/index.ts @@ -2,16 +2,16 @@ import type { PartialDeep } from 'type-fest'; import { lambdaClient } from '@/libs/trpc/client'; -import { LobeAgentChatConfig, LobeAgentConfig } from '@/types/agent'; -import { MetaData } from '@/types/meta'; +import { type LobeAgentChatConfig, type LobeAgentConfig } from '@/types/agent'; +import { type MetaData } from '@/types/meta'; import { - ChatSessionList, - LobeAgentSession, - LobeSessionType, - LobeSessions, - SessionGroupItem, - SessionRankItem, - UpdateSessionParams, + type ChatSessionList, + type LobeAgentSession, + type LobeSessionType, + type LobeSessions, + type SessionGroupItem, + type SessionRankItem, + type UpdateSessionParams, } from '@/types/session'; export class SessionService { diff --git a/src/services/share.ts b/src/services/share.ts index 110d25b969..b22216bb76 100644 --- a/src/services/share.ts +++ b/src/services/share.ts @@ -1,7 +1,7 @@ import type { PartialDeep } from 'type-fest'; import { LOBE_URL_IMPORT_NAME } from '@/const/url'; -import { UserSettings } from '@/types/user/settings'; +import { type UserSettings } from '@/types/user/settings'; class ShareService { /** diff --git a/src/services/thread/index.ts b/src/services/thread/index.ts index 5d9dab148d..310182d5c3 100644 --- a/src/services/thread/index.ts +++ b/src/services/thread/index.ts @@ -1,8 +1,8 @@ -import { CreateMessageParams } from '@lobechat/types'; +import { type CreateMessageParams } from '@lobechat/types'; import { INBOX_SESSION_ID } from '@/const/session'; import { lambdaClient } from '@/libs/trpc/client'; -import { CreateThreadParams, ThreadItem } from '@/types/topic'; +import { type CreateThreadParams, type ThreadItem } from '@/types/topic'; interface CreateThreadWithMessageParams extends CreateThreadParams { message: CreateMessageParams; diff --git a/src/services/tool.ts b/src/services/tool.ts index e6f1168a1a..55c6deb634 100644 --- a/src/services/tool.ts +++ b/src/services/tool.ts @@ -1,6 +1,6 @@ import { lambdaClient } from '@/libs/trpc/client'; import { globalHelpers } from '@/store/global/helpers'; -import { PluginQueryParams } from '@/types/discover'; +import { type PluginQueryParams } from '@/types/discover'; import { convertOpenAIManifestToLobeManifest, getToolManifest } from '@/utils/toolManifest'; class ToolService { diff --git a/src/services/topic/index.ts b/src/services/topic/index.ts index fadfd8cd80..46e688140a 100644 --- a/src/services/topic/index.ts +++ b/src/services/topic/index.ts @@ -1,12 +1,12 @@ import { INBOX_SESSION_ID } from '@/const/session'; import { lambdaClient } from '@/libs/trpc/client'; -import { BatchTaskResult } from '@/types/service'; +import { type BatchTaskResult } from '@/types/service'; import { - ChatTopic, - CreateTopicParams, - QueryTopicParams, - RecentTopic, - TopicRankItem, + type ChatTopic, + type CreateTopicParams, + type QueryTopicParams, + type RecentTopic, + type TopicRankItem, } from '@/types/topic'; export class TopicService { diff --git a/src/services/trace.ts b/src/services/trace.ts index 11162ba295..d3a1b60f98 100644 --- a/src/services/trace.ts +++ b/src/services/trace.ts @@ -1,7 +1,7 @@ import { API_ENDPOINTS } from '@/services/_url'; import { useUserStore } from '@/store/user'; import { userGeneralSettingsSelectors } from '@/store/user/selectors'; -import { TraceEventBasePayload, TraceEventPayloads } from '@/types/trace'; +import { type TraceEventBasePayload, type TraceEventPayloads } from '@/types/trace'; class TraceService { private request = async (data: T) => { diff --git a/src/services/upload.ts b/src/services/upload.ts index 93edefc16c..bda297a111 100644 --- a/src/services/upload.ts +++ b/src/services/upload.ts @@ -7,8 +7,8 @@ import { sha256 } from 'js-sha256'; import { fileEnv } from '@/envs/file'; import { lambdaClient } from '@/libs/trpc/client'; import { API_ENDPOINTS } from '@/services/_url'; -import { FileMetadata, UploadBase64ToS3Result } from '@/types/files'; -import { FileUploadState, FileUploadStatus } from '@/types/files/upload'; +import { type FileMetadata, type UploadBase64ToS3Result } from '@/types/files'; +import { type FileUploadState, type FileUploadStatus } from '@/types/files/upload'; export const UPLOAD_NETWORK_ERROR = 'NetWorkError'; diff --git a/src/services/user/index.ts b/src/services/user/index.ts index 3ee3373a3a..a8ca91cae2 100644 --- a/src/services/user/index.ts +++ b/src/services/user/index.ts @@ -2,13 +2,13 @@ import type { PartialDeep } from 'type-fest'; import { lambdaClient } from '@/libs/trpc/client'; import { - SSOProvider, - UserGuide, - UserInitializationState, - UserOnboarding, - UserPreference, + type SSOProvider, + type UserGuide, + type UserInitializationState, + type UserOnboarding, + type UserPreference, } from '@/types/user'; -import { UserSettings } from '@/types/user/settings'; +import { type UserSettings } from '@/types/user/settings'; export class UserService { getUserRegistrationDuration = async (): Promise<{ diff --git a/src/services/userMemory/crud.ts b/src/services/userMemory/crud.ts index aa4f5fe49c..1e82d948a3 100644 --- a/src/services/userMemory/crud.ts +++ b/src/services/userMemory/crud.ts @@ -1,4 +1,4 @@ -import { NewUserMemoryIdentity } from '@lobechat/types'; +import { type NewUserMemoryIdentity } from '@lobechat/types'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/services/userMemory/index.ts b/src/services/userMemory/index.ts index 1bd0e26c55..860955a27d 100644 --- a/src/services/userMemory/index.ts +++ b/src/services/userMemory/index.ts @@ -7,18 +7,18 @@ import type { UpdateIdentityActionSchema, } from '@lobechat/memory-user-memory/schemas'; import { - AddContextMemoryResult, - AddExperienceMemoryResult, - AddIdentityMemoryResult, - AddPreferenceMemoryResult, - LayersEnum, - RemoveIdentityMemoryResult, - SearchMemoryParams, - SearchMemoryResult, - TypesEnum, - UpdateIdentityMemoryResult, + type AddContextMemoryResult, + type AddExperienceMemoryResult, + type AddIdentityMemoryResult, + type AddPreferenceMemoryResult, + type LayersEnum, + type RemoveIdentityMemoryResult, + type SearchMemoryParams, + type SearchMemoryResult, + type TypesEnum, + type UpdateIdentityMemoryResult, } from '@lobechat/types'; -import { z } from 'zod'; +import { type z } from 'zod'; import { lambdaClient } from '@/libs/trpc/client'; diff --git a/src/store/agent/initialState.ts b/src/store/agent/initialState.ts index 4dab7f4838..cc2990fbeb 100644 --- a/src/store/agent/initialState.ts +++ b/src/store/agent/initialState.ts @@ -1,5 +1,5 @@ -import { AgentSliceState, initialAgentSliceState } from './slices/agent'; -import { BuiltinAgentSliceState, initialBuiltinAgentSliceState } from './slices/builtin'; +import { type AgentSliceState, initialAgentSliceState } from './slices/agent'; +import { type BuiltinAgentSliceState, initialBuiltinAgentSliceState } from './slices/builtin'; export type AgentStoreState = AgentSliceState & BuiltinAgentSliceState; diff --git a/src/store/agent/selectors/agentByIdSelectors.ts b/src/store/agent/selectors/agentByIdSelectors.ts index 6c724eeef0..cff8acafb7 100644 --- a/src/store/agent/selectors/agentByIdSelectors.ts +++ b/src/store/agent/selectors/agentByIdSelectors.ts @@ -1,7 +1,7 @@ import { DEFAULT_PROVIDER } from '@lobechat/business-const'; import { DEFAULT_MODEL, DEFAUTT_AGENT_TTS_CONFIG } from '@lobechat/const'; import type { AgentBuilderContext } from '@lobechat/context-engine'; -import { LobeAgentTTSConfig } from '@lobechat/types'; +import { type LobeAgentTTSConfig } from '@lobechat/types'; import type { AgentStoreState } from '../initialState'; import { agentSelectors } from './selectors'; diff --git a/src/store/agent/selectors/builtinAgentSelectors.ts b/src/store/agent/selectors/builtinAgentSelectors.ts index 7554e20f1a..7fb20e8a1a 100644 --- a/src/store/agent/selectors/builtinAgentSelectors.ts +++ b/src/store/agent/selectors/builtinAgentSelectors.ts @@ -1,7 +1,7 @@ import { BUILTIN_AGENT_SLUGS } from '@lobechat/builtin-agents'; import { INBOX_SESSION_ID } from '@lobechat/const'; -import { AgentStoreState } from '@/store/agent/initialState'; +import { type AgentStoreState } from '@/store/agent/initialState'; /** * Get builtin agent ID by slug diff --git a/src/store/agent/selectors/chatConfigByIdSelectors.ts b/src/store/agent/selectors/chatConfigByIdSelectors.ts index 4cf2f2e19a..605d157df2 100644 --- a/src/store/agent/selectors/chatConfigByIdSelectors.ts +++ b/src/store/agent/selectors/chatConfigByIdSelectors.ts @@ -1,8 +1,8 @@ import { DEFAULT_AGENT_CHAT_CONFIG, DEFAULT_AGENT_SEARCH_FC_MODEL } from '@lobechat/const'; import { isContextCachingModel, isThinkingWithToolClaudeModel } from '@lobechat/model-runtime'; -import { LobeAgentChatConfig } from '@lobechat/types'; +import { type LobeAgentChatConfig } from '@lobechat/types'; -import { AgentStoreState } from '@/store/agent/initialState'; +import { type AgentStoreState } from '@/store/agent/initialState'; import { agentSelectors } from './selectors'; diff --git a/src/store/agent/selectors/chatConfigSelectors.ts b/src/store/agent/selectors/chatConfigSelectors.ts index b60580bd6c..21a6f275ac 100644 --- a/src/store/agent/selectors/chatConfigSelectors.ts +++ b/src/store/agent/selectors/chatConfigSelectors.ts @@ -1,6 +1,6 @@ -import { LobeAgentChatConfig } from '@lobechat/types'; +import { type LobeAgentChatConfig } from '@lobechat/types'; -import { AgentStoreState } from '@/store/agent/initialState'; +import { type AgentStoreState } from '@/store/agent/initialState'; import { chatConfigByIdSelectors } from './chatConfigByIdSelectors'; diff --git a/src/store/agent/selectors/selectors.ts b/src/store/agent/selectors/selectors.ts index dce58f7cd2..e3ab878c6e 100644 --- a/src/store/agent/selectors/selectors.ts +++ b/src/store/agent/selectors/selectors.ts @@ -7,11 +7,11 @@ import { DEFAUTT_AGENT_TTS_CONFIG, } from '@lobechat/const'; import { - KnowledgeItem, + type KnowledgeItem, KnowledgeType, - LobeAgentConfig, - LobeAgentTTSConfig, - MetaData, + type LobeAgentConfig, + type LobeAgentTTSConfig, + type MetaData, } from '@lobechat/types'; import { VoiceList } from '@lobehub/tts'; diff --git a/src/store/agent/slices/agent/action.ts b/src/store/agent/slices/agent/action.ts index 00b8c1067a..471903720e 100644 --- a/src/store/agent/slices/agent/action.ts +++ b/src/store/agent/slices/agent/action.ts @@ -3,19 +3,19 @@ import isEqual from 'fast-deep-equal'; import { produce } from 'immer'; import type { SWRResponse } from 'swr'; import type { PartialDeep } from 'type-fest'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { MESSAGE_CANCEL_FLAT } from '@/const/message'; import { mutate, useClientDataSWR } from '@/libs/swr'; -import { CreateAgentParams, CreateAgentResult, agentService } from '@/services/agent'; +import { type CreateAgentParams, type CreateAgentResult, agentService } from '@/services/agent'; import { getUserStoreState } from '@/store/user'; import { userProfileSelectors } from '@/store/user/selectors'; -import { LobeAgentChatConfig, LobeAgentConfig } from '@/types/agent'; -import { MetaData } from '@/types/meta'; +import { type LobeAgentChatConfig, type LobeAgentConfig } from '@/types/agent'; +import { type MetaData } from '@/types/meta'; import { merge } from '@/utils/merge'; import type { AgentStore } from '../../store'; -import { AgentSliceState, LoadingState, SaveStatus } from './initialState'; +import { type AgentSliceState, type LoadingState, type SaveStatus } from './initialState'; const FETCH_AGENT_CONFIG_KEY = 'FETCH_AGENT_CONFIG'; diff --git a/src/store/agent/slices/agent/initialState.ts b/src/store/agent/slices/agent/initialState.ts index c082016d75..612a122114 100644 --- a/src/store/agent/slices/agent/initialState.ts +++ b/src/store/agent/slices/agent/initialState.ts @@ -1,8 +1,8 @@ import type { PartialDeep } from 'type-fest'; -import { AgentSettingsInstance } from '@/features/AgentSetting'; -import { AgentItem } from '@/types/agent'; -import { MetaData } from '@/types/meta'; +import { type AgentSettingsInstance } from '@/features/AgentSetting'; +import { type AgentItem } from '@/types/agent'; +import { type MetaData } from '@/types/meta'; export type LoadingState = Record | string, boolean>; export type SaveStatus = 'idle' | 'saving' | 'saved'; diff --git a/src/store/agent/slices/builtin/action.ts b/src/store/agent/slices/builtin/action.ts index ac42bdabd6..4a84b3ecb9 100644 --- a/src/store/agent/slices/builtin/action.ts +++ b/src/store/agent/slices/builtin/action.ts @@ -1,7 +1,7 @@ -import { AgentItem, LobeAgentConfig } from '@lobechat/types'; -import { SWRResponse } from 'swr'; +import { type AgentItem, type LobeAgentConfig } from '@lobechat/types'; +import { type SWRResponse } from 'swr'; import type { PartialDeep } from 'type-fest'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { useOnlyFetchOnceSWR } from '@/libs/swr'; import { agentService } from '@/services/agent'; diff --git a/src/store/agent/slices/knowledge/action.ts b/src/store/agent/slices/knowledge/action.ts index 86623eef3c..17319723a4 100644 --- a/src/store/agent/slices/knowledge/action.ts +++ b/src/store/agent/slices/knowledge/action.ts @@ -1,6 +1,6 @@ -import { KnowledgeItem } from '@lobechat/types'; +import { type KnowledgeItem } from '@lobechat/types'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { agentService } from '@/services/agent'; diff --git a/src/store/agent/slices/plugin/action.ts b/src/store/agent/slices/plugin/action.ts index 95570ff272..26b8def96c 100644 --- a/src/store/agent/slices/plugin/action.ts +++ b/src/store/agent/slices/plugin/action.ts @@ -1,5 +1,5 @@ import { produce } from 'immer'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { agentSelectors } from '../../selectors'; import type { AgentStore } from '../../store'; diff --git a/src/store/agent/store.ts b/src/store/agent/store.ts index 9aa6a53cd1..1c6b79c793 100644 --- a/src/store/agent/store.ts +++ b/src/store/agent/store.ts @@ -1,13 +1,13 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { AgentStoreState, initialState } from './initialState'; -import { AgentSliceAction, createAgentSlice } from './slices/agent'; -import { BuiltinAgentSliceAction, createBuiltinAgentSlice } from './slices/builtin'; -import { KnowledgeSliceAction, createKnowledgeSlice } from './slices/knowledge'; -import { PluginSliceAction, createPluginSlice } from './slices/plugin'; +import { type AgentStoreState, initialState } from './initialState'; +import { type AgentSliceAction, createAgentSlice } from './slices/agent'; +import { type BuiltinAgentSliceAction, createBuiltinAgentSlice } from './slices/builtin'; +import { type KnowledgeSliceAction, createKnowledgeSlice } from './slices/knowledge'; +import { type PluginSliceAction, createPluginSlice } from './slices/plugin'; // =============== aggregate createStoreFn ============ // diff --git a/src/store/agentGroup/action.ts b/src/store/agentGroup/action.ts index fa33655f60..d1ab42f344 100644 --- a/src/store/agentGroup/action.ts +++ b/src/store/agentGroup/action.ts @@ -1,22 +1,22 @@ import type { AgentGroupDetail } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; import { produce } from 'immer'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import type { ChatGroupItem } from '@/database/schemas/chatGroup'; import { mutate, useClientDataSWRWithSync } from '@/libs/swr'; import { chatGroupService } from '@/services/chatGroup'; import { getAgentStoreState } from '@/store/agent'; -import { ChatGroupStore } from '@/store/agentGroup/store'; +import { type ChatGroupStore } from '@/store/agentGroup/store'; import { useChatStore } from '@/store/chat'; import { setNamespace } from '@/utils/storeDebug'; -import { ChatGroupState } from './initialState'; -import { ChatGroupReducer, chatGroupReducers } from './reducers'; +import { type ChatGroupState } from './initialState'; +import { type ChatGroupReducer, chatGroupReducers } from './reducers'; import { - ChatGroupCurdAction, - ChatGroupLifecycleAction, - ChatGroupMemberAction, + type ChatGroupCurdAction, + type ChatGroupLifecycleAction, + type ChatGroupMemberAction, chatGroupCurdSlice, chatGroupLifecycleSlice, chatGroupMemberSlice, diff --git a/src/store/agentGroup/reducers.ts b/src/store/agentGroup/reducers.ts index 42f638f54c..7dceec1238 100644 --- a/src/store/agentGroup/reducers.ts +++ b/src/store/agentGroup/reducers.ts @@ -1,9 +1,9 @@ import type { AgentGroupDetail } from '@lobechat/types'; import { produce } from 'immer'; -import { ChatGroupItem } from '@/database/schemas/chatGroup'; +import { type ChatGroupItem } from '@/database/schemas/chatGroup'; -import { ChatGroupState } from './initialState'; +import { type ChatGroupState } from './initialState'; /** * Convert ChatGroupItem to AgentGroupDetail by adding empty agents array diff --git a/src/store/agentGroup/slices/curd.ts b/src/store/agentGroup/slices/curd.ts index e43adfadd3..1157bfc917 100644 --- a/src/store/agentGroup/slices/curd.ts +++ b/src/store/agentGroup/slices/curd.ts @@ -1,10 +1,10 @@ import type { LobeChatGroupConfig } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { DEFAULT_CHAT_GROUP_CHAT_CONFIG } from '@/const/settings'; import type { ChatGroupItem } from '@/database/schemas/chatGroup'; import { chatGroupService } from '@/services/chatGroup'; -import { ChatGroupStore } from '@/store/agentGroup/store'; +import { type ChatGroupStore } from '@/store/agentGroup/store'; import { agentGroupSelectors } from '../selectors'; diff --git a/src/store/agentGroup/slices/lifecycle.ts b/src/store/agentGroup/slices/lifecycle.ts index 679761033e..518b4c3e14 100644 --- a/src/store/agentGroup/slices/lifecycle.ts +++ b/src/store/agentGroup/slices/lifecycle.ts @@ -1,9 +1,9 @@ import type { NewChatGroup } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { INBOX_SESSION_ID } from '@/const/session'; import { chatGroupService } from '@/services/chatGroup'; -import { ChatGroupStore } from '@/store/agentGroup/store'; +import { type ChatGroupStore } from '@/store/agentGroup/store'; import { getSessionStoreState } from '@/store/session'; export interface ChatGroupLifecycleAction { diff --git a/src/store/agentGroup/slices/member.ts b/src/store/agentGroup/slices/member.ts index e8df0c043b..3c313dd38f 100644 --- a/src/store/agentGroup/slices/member.ts +++ b/src/store/agentGroup/slices/member.ts @@ -1,10 +1,10 @@ import type { LobeAgentConfig } from '@lobechat/types'; import type { PartialDeep } from 'type-fest'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { chatGroupService } from '@/services/chatGroup'; import { getAgentStoreState } from '@/store/agent'; -import { ChatGroupStore } from '@/store/agentGroup/store'; +import { type ChatGroupStore } from '@/store/agentGroup/store'; export interface ChatGroupMemberAction { addAgentsToGroup: (groupId: string, agentIds: string[]) => Promise; diff --git a/src/store/agentGroup/store.ts b/src/store/agentGroup/store.ts index 7ac9cfa389..fa667783e3 100644 --- a/src/store/agentGroup/store.ts +++ b/src/store/agentGroup/store.ts @@ -1,10 +1,10 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { ChatGroupAction, chatGroupAction } from './action'; -import { ChatGroupState, initialChatGroupState } from './initialState'; +import { type ChatGroupAction, chatGroupAction } from './action'; +import { type ChatGroupState, initialChatGroupState } from './initialState'; export type ChatGroupStore = ChatGroupState & ChatGroupAction; diff --git a/src/store/aiInfra/initialState.ts b/src/store/aiInfra/initialState.ts index be01ba96ba..9b7d0d79c7 100644 --- a/src/store/aiInfra/initialState.ts +++ b/src/store/aiInfra/initialState.ts @@ -1,5 +1,5 @@ -import { AIModelsState, initialAIModelState } from './slices/aiModel'; -import { AIProviderState, initialAIProviderState } from './slices/aiProvider'; +import { type AIModelsState, initialAIModelState } from './slices/aiModel'; +import { type AIProviderState, initialAIProviderState } from './slices/aiProvider'; export interface AIProviderStoreState extends AIProviderState, AIModelsState { /* empty */ diff --git a/src/store/aiInfra/slices/aiModel/action.ts b/src/store/aiInfra/slices/aiModel/action.ts index 2eb9738ebf..2a43fd0eed 100644 --- a/src/store/aiInfra/slices/aiModel/action.ts +++ b/src/store/aiInfra/slices/aiModel/action.ts @@ -1,16 +1,16 @@ import isEqual from 'fast-deep-equal'; import { - AiModelSortMap, - AiProviderModelListItem, - CreateAiModelParams, - ToggleAiModelEnableParams, + type AiModelSortMap, + type AiProviderModelListItem, + type CreateAiModelParams, + type ToggleAiModelEnableParams, } from 'model-bank'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { aiModelService } from '@/services/aiModel'; -import { AiInfraStore } from '@/store/aiInfra/store'; +import { type AiInfraStore } from '@/store/aiInfra/store'; const FETCH_AI_PROVIDER_MODEL_LIST_KEY = 'FETCH_AI_PROVIDER_MODELS'; diff --git a/src/store/aiInfra/slices/aiModel/initialState.ts b/src/store/aiInfra/slices/aiModel/initialState.ts index 4865448b42..a786ab3026 100644 --- a/src/store/aiInfra/slices/aiModel/initialState.ts +++ b/src/store/aiInfra/slices/aiModel/initialState.ts @@ -1,4 +1,4 @@ -import { AiProviderModelListItem, LobeDefaultAiModelListItem } from 'model-bank'; +import { type AiProviderModelListItem, type LobeDefaultAiModelListItem } from 'model-bank'; export interface AIModelsState { aiModelLoadingIds: string[]; diff --git a/src/store/aiInfra/slices/aiModel/selectors.ts b/src/store/aiInfra/slices/aiModel/selectors.ts index 533a67753b..e434be893d 100644 --- a/src/store/aiInfra/slices/aiModel/selectors.ts +++ b/src/store/aiInfra/slices/aiModel/selectors.ts @@ -1,6 +1,6 @@ import { AiModelSourceEnum } from 'model-bank'; -import { AIProviderStoreState } from '@/store/aiInfra/initialState'; +import { type AIProviderStoreState } from '@/store/aiInfra/initialState'; import { ModelSearchImplement } from '@/types/search'; const aiProviderChatModelListIds = (s: AIProviderStoreState) => diff --git a/src/store/aiInfra/slices/aiProvider/action.ts b/src/store/aiInfra/slices/aiProvider/action.ts index cb71e3189f..32c61dc92b 100644 --- a/src/store/aiInfra/slices/aiProvider/action.ts +++ b/src/store/aiInfra/slices/aiProvider/action.ts @@ -2,32 +2,32 @@ import { DESKTOP_USER_ID, isDesktop } from '@lobechat/const'; import { getModelPropertyWithFallback, resolveImageSinglePrice } from '@lobechat/model-runtime'; import { uniqBy } from 'es-toolkit/compat'; import { - AIImageModelCard, - EnabledAiModel, - LobeDefaultAiModelListItem, - ModelAbilities, - ModelParamsSchema, - Pricing, + type AIImageModelCard, + type EnabledAiModel, + type LobeDefaultAiModelListItem, + type ModelAbilities, + type ModelParamsSchema, + type Pricing, } from 'model-bank'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { aiProviderService } from '@/services/aiProvider'; -import { AiInfraStore } from '@/store/aiInfra/store'; +import { type AiInfraStore } from '@/store/aiInfra/store'; import { useUserStore } from '@/store/user'; import { authSelectors, userProfileSelectors } from '@/store/user/selectors'; import { - AiProviderDetailItem, - AiProviderListItem, - AiProviderRuntimeState, - AiProviderSortMap, + type AiProviderDetailItem, + type AiProviderListItem, + type AiProviderRuntimeState, + type AiProviderSortMap, AiProviderSourceEnum, - CreateAiProviderParams, - EnabledProvider, - EnabledProviderWithModels, - UpdateAiProviderConfigParams, - UpdateAiProviderParams, + type CreateAiProviderParams, + type EnabledProvider, + type EnabledProviderWithModels, + type UpdateAiProviderConfigParams, + type UpdateAiProviderParams, } from '@/types/aiProvider'; export type ProviderModelListItem = { diff --git a/src/store/aiInfra/slices/aiProvider/initialState.ts b/src/store/aiInfra/slices/aiProvider/initialState.ts index 27c036b952..c71e74db8a 100644 --- a/src/store/aiInfra/slices/aiProvider/initialState.ts +++ b/src/store/aiInfra/slices/aiProvider/initialState.ts @@ -1,11 +1,11 @@ -import { EnabledAiModel } from 'model-bank'; +import { type EnabledAiModel } from 'model-bank'; import { - AiProviderDetailItem, - AiProviderListItem, - AiProviderRuntimeConfig, - EnabledProvider, - EnabledProviderWithModels, + type AiProviderDetailItem, + type AiProviderListItem, + type AiProviderRuntimeConfig, + type EnabledProvider, + type EnabledProviderWithModels, } from '@/types/aiProvider'; export interface AIProviderState { diff --git a/src/store/aiInfra/slices/aiProvider/selectors.ts b/src/store/aiInfra/slices/aiProvider/selectors.ts index 77f9c3d0c9..2709c91713 100644 --- a/src/store/aiInfra/slices/aiProvider/selectors.ts +++ b/src/store/aiInfra/slices/aiProvider/selectors.ts @@ -1,8 +1,7 @@ import { isProviderDisableBrowserRequest } from 'model-bank/modelProviders'; - -import { AIProviderStoreState } from '@/store/aiInfra/initialState'; -import { AiProviderRuntimeConfig, AiProviderSourceEnum } from '@/types/aiProvider'; -import { GlobalLLMProviderKey } from '@/types/user/settings'; +import { type AIProviderStoreState } from '@/store/aiInfra/initialState'; +import { type AiProviderRuntimeConfig, AiProviderSourceEnum } from '@/types/aiProvider'; +import { type GlobalLLMProviderKey } from '@/types/user/settings'; // List const enabledAiProviderList = (s: AIProviderStoreState) => diff --git a/src/store/aiInfra/store.ts b/src/store/aiInfra/store.ts index 350887851e..1eb96cf235 100644 --- a/src/store/aiInfra/store.ts +++ b/src/store/aiInfra/store.ts @@ -1,11 +1,11 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { AIProviderStoreState, initialState } from './initialState'; -import { AiModelAction, createAiModelSlice } from './slices/aiModel'; -import { AiProviderAction, createAiProviderSlice } from './slices/aiProvider'; +import { type AIProviderStoreState, initialState } from './initialState'; +import { type AiModelAction, createAiModelSlice } from './slices/aiModel'; +import { type AiProviderAction, createAiProviderSlice } from './slices/aiProvider'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/chat/agents/createAgentExecutors.ts b/src/store/chat/agents/createAgentExecutors.ts index 3e8f5eceb9..e738c0da9f 100644 --- a/src/store/chat/agents/createAgentExecutors.ts +++ b/src/store/chat/agents/createAgentExecutors.ts @@ -1,14 +1,14 @@ import { - AgentEvent, - AgentInstruction, - AgentInstructionCallLlm, - AgentInstructionCallTool, - AgentRuntimeContext, - GeneralAgentCallLLMInstructionPayload, - GeneralAgentCallLLMResultPayload, - GeneralAgentCallToolResultPayload, - GeneralAgentCallingToolInstructionPayload, - InstructionExecutor, + type AgentEvent, + type AgentInstruction, + type AgentInstructionCallLlm, + type AgentInstructionCallTool, + type AgentRuntimeContext, + type GeneralAgentCallLLMInstructionPayload, + type GeneralAgentCallLLMResultPayload, + type GeneralAgentCallToolResultPayload, + type GeneralAgentCallingToolInstructionPayload, + type InstructionExecutor, UsageCounter, } from '@lobechat/agent-runtime'; import type { ChatToolPayload, CreateMessageParams } from '@lobechat/types'; diff --git a/src/store/chat/helpers.ts b/src/store/chat/helpers.ts index 424381ac3f..810eef79f3 100644 --- a/src/store/chat/helpers.ts +++ b/src/store/chat/helpers.ts @@ -1,4 +1,4 @@ -import { OpenAIChatMessage, UIChatMessage } from '@lobechat/types'; +import { type OpenAIChatMessage, type UIChatMessage } from '@lobechat/types'; import { encodeAsync } from '@/utils/tokenizer'; diff --git a/src/store/chat/initialState.ts b/src/store/chat/initialState.ts index b435b4847d..4852d4e865 100644 --- a/src/store/chat/initialState.ts +++ b/src/store/chat/initialState.ts @@ -1,12 +1,12 @@ // sort-imports-ignore -import { ChatToolState, initialToolState } from './slices/builtinTool/initialState'; -import { ChatPortalState, initialChatPortalState } from './slices/portal/initialState'; -import { ChatMessageState, initialMessageState } from './slices/message/initialState'; -import { ChatTopicState, initialTopicState } from './slices/topic/initialState'; -import { ChatAIChatState, initialAiChatState } from './slices/aiChat/initialState'; -import { ChatThreadState, initialThreadState } from './slices/thread/initialState'; -import { ChatOperationState, initialOperationState } from './slices/operation/initialState'; -import { initialAiAgentState, ChatAIAgentState } from './slices/aiAgent/initialState'; +import { type ChatToolState, initialToolState } from './slices/builtinTool/initialState'; +import { type ChatPortalState, initialChatPortalState } from './slices/portal/initialState'; +import { type ChatMessageState, initialMessageState } from './slices/message/initialState'; +import { type ChatTopicState, initialTopicState } from './slices/topic/initialState'; +import { type ChatAIChatState, initialAiChatState } from './slices/aiChat/initialState'; +import { type ChatThreadState, initialThreadState } from './slices/thread/initialState'; +import { type ChatOperationState, initialOperationState } from './slices/operation/initialState'; +import { initialAiAgentState, type ChatAIAgentState } from './slices/aiAgent/initialState'; export type ChatStoreState = ChatTopicState & ChatMessageState & diff --git a/src/store/chat/slices/aiAgent/actions/agentGroup.ts b/src/store/chat/slices/aiAgent/actions/agentGroup.ts index 7eaddc8db8..fddd591155 100644 --- a/src/store/chat/slices/aiAgent/actions/agentGroup.ts +++ b/src/store/chat/slices/aiAgent/actions/agentGroup.ts @@ -1,13 +1,13 @@ // Disable the auto sort key eslint rule to make the code more logic and readable import { LOADING_FLAT } from '@lobechat/const'; -import { SendGroupMessageParams } from '@lobechat/types'; +import { type SendGroupMessageParams } from '@lobechat/types'; import { nanoid } from '@lobechat/utils'; import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { lambdaClient } from '@/libs/trpc/client'; -import { StreamEvent, agentRuntimeClient } from '@/services/agentRuntime'; -import { ChatStore } from '@/store/chat/store'; +import { type StreamEvent, agentRuntimeClient } from '@/services/agentRuntime'; +import { type ChatStore } from '@/store/chat/store'; import { setNamespace } from '@/utils/storeDebug'; const log = debug('store:chat:ai-agent:agentGroup'); diff --git a/src/store/chat/slices/aiAgent/actions/groupOrchestration.ts b/src/store/chat/slices/aiAgent/actions/groupOrchestration.ts index 473be88674..db4aa20cdc 100644 --- a/src/store/chat/slices/aiAgent/actions/groupOrchestration.ts +++ b/src/store/chat/slices/aiAgent/actions/groupOrchestration.ts @@ -1,15 +1,15 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ import type { AgentState, ExecutorResult } from '@lobechat/agent-runtime'; import { GroupOrchestrationRuntime, GroupOrchestrationSupervisor } from '@lobechat/agent-runtime'; -import { TaskStatusResult } from '@lobechat/types'; +import { type TaskStatusResult } from '@lobechat/types'; import debug from 'debug'; -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { aiAgentService } from '@/services/aiAgent'; import { createGroupOrchestrationExecutors } from '@/store/chat/agents/GroupOrchestration'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import type { GroupOrchestrationCallbacks } from '@/store/tool/slices/builtin/types'; const log = debug('lobe-store:group-orchestration'); diff --git a/src/store/chat/slices/aiAgent/actions/index.ts b/src/store/chat/slices/aiAgent/actions/index.ts index 5a901a5db1..e4a6f5029b 100644 --- a/src/store/chat/slices/aiAgent/actions/index.ts +++ b/src/store/chat/slices/aiAgent/actions/index.ts @@ -1,10 +1,10 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { ChatGroupChatAction, agentGroupSlice } from './agentGroup'; -import { GroupOrchestrationAction, groupOrchestrationSlice } from './groupOrchestration'; -import { AgentAction, agentSlice } from './runAgent'; +import { type ChatGroupChatAction, agentGroupSlice } from './agentGroup'; +import { type GroupOrchestrationAction, groupOrchestrationSlice } from './groupOrchestration'; +import { type AgentAction, agentSlice } from './runAgent'; // eslint-disable-next-line @typescript-eslint/no-empty-interface export interface ChatAIAgentAction extends AgentAction, ChatGroupChatAction, GroupOrchestrationAction { diff --git a/src/store/chat/slices/aiAgent/actions/runAgent.ts b/src/store/chat/slices/aiAgent/actions/runAgent.ts index ab69ccd0bb..369d410614 100644 --- a/src/store/chat/slices/aiAgent/actions/runAgent.ts +++ b/src/store/chat/slices/aiAgent/actions/runAgent.ts @@ -1,11 +1,11 @@ import { isDesktop } from '@lobechat/const'; -import { ChatToolPayload } from '@lobechat/types'; +import { type ChatToolPayload } from '@lobechat/types'; import debug from 'debug'; import i18n from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { StreamEvent, agentRuntimeService } from '@/services/agentRuntime'; -import { ChatStore } from '@/store/chat/store'; +import { type StreamEvent, agentRuntimeService } from '@/services/agentRuntime'; +import { type ChatStore } from '@/store/chat/store'; const log = debug('store:chat:ai-agent:runAgent'); diff --git a/src/store/chat/slices/aiChat/actions/__tests__/fixtures.ts b/src/store/chat/slices/aiChat/actions/__tests__/fixtures.ts index b72d666509..534c48dc71 100644 --- a/src/store/chat/slices/aiChat/actions/__tests__/fixtures.ts +++ b/src/store/chat/slices/aiChat/actions/__tests__/fixtures.ts @@ -1,4 +1,4 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; import { DEFAULT_AGENT_CHAT_CONFIG, DEFAULT_AGENT_CONFIG } from '@/const/settings'; diff --git a/src/store/chat/slices/aiChat/actions/conversationControl.ts b/src/store/chat/slices/aiChat/actions/conversationControl.ts index eaa62e4f79..61dccb54ba 100644 --- a/src/store/chat/slices/aiChat/actions/conversationControl.ts +++ b/src/store/chat/slices/aiChat/actions/conversationControl.ts @@ -2,14 +2,14 @@ // Disable the auto sort key eslint rule to make the code more logic and readable import { type AgentRuntimeContext } from '@lobechat/agent-runtime'; import { MESSAGE_CANCEL_FLAT } from '@lobechat/const'; -import { ConversationContext } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { type ConversationContext } from '@lobechat/types'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { displayMessageSelectors } from '../../../selectors'; import { messageMapKey } from '../../../utils/messageMapKey'; -import { OptimisticUpdateContext } from '../../message/actions/optimisticUpdate'; +import { type OptimisticUpdateContext } from '../../message/actions/optimisticUpdate'; import { dbMessageSelectors } from '../../message/selectors'; /** diff --git a/src/store/chat/slices/aiChat/actions/conversationLifecycle.ts b/src/store/chat/slices/aiChat/actions/conversationLifecycle.ts index 6450de591d..308d9bdf18 100644 --- a/src/store/chat/slices/aiChat/actions/conversationLifecycle.ts +++ b/src/store/chat/slices/aiChat/actions/conversationLifecycle.ts @@ -2,21 +2,21 @@ // Disable the auto sort key eslint rule to make the code more logic and readable import { LOADING_FLAT } from '@lobechat/const'; import { - ChatImageItem, - ChatVideoItem, - ConversationContext, - SendMessageParams, - SendMessageServerResponse, + type ChatImageItem, + type ChatVideoItem, + type ConversationContext, + type SendMessageParams, + type SendMessageServerResponse, } from '@lobechat/types'; import { nanoid } from '@lobechat/utils'; import { TRPCClientError } from '@trpc/client'; import { t } from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { aiChatService } from '@/services/aiChat'; import { getAgentStoreState } from '@/store/agent'; import { agentSelectors } from '@/store/agent/selectors'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { getFileStoreState } from '@/store/file/store'; import { useGlobalStore } from '@/store/global'; import { systemStatusSelectors } from '@/store/global/selectors'; diff --git a/src/store/chat/slices/aiChat/actions/index.ts b/src/store/chat/slices/aiChat/actions/index.ts index e1f9966ff5..8e8a2149a3 100644 --- a/src/store/chat/slices/aiChat/actions/index.ts +++ b/src/store/chat/slices/aiChat/actions/index.ts @@ -1,12 +1,12 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { ConversationControlAction, conversationControl } from './conversationControl'; -import { ConversationLifecycleAction, conversationLifecycle } from './conversationLifecycle'; -import { ChatMemoryAction, chatMemory } from './memory'; -import { StreamingExecutorAction, streamingExecutor } from './streamingExecutor'; -import { StreamingStatesAction, streamingStates } from './streamingStates'; +import { type ConversationControlAction, conversationControl } from './conversationControl'; +import { type ConversationLifecycleAction, conversationLifecycle } from './conversationLifecycle'; +import { type ChatMemoryAction, chatMemory } from './memory'; +import { type StreamingExecutorAction, streamingExecutor } from './streamingExecutor'; +import { type StreamingStatesAction, streamingStates } from './streamingStates'; export interface ChatAIChatAction extends diff --git a/src/store/chat/slices/aiChat/actions/memory.ts b/src/store/chat/slices/aiChat/actions/memory.ts index 8419d46eba..b909b54855 100644 --- a/src/store/chat/slices/aiChat/actions/memory.ts +++ b/src/store/chat/slices/aiChat/actions/memory.ts @@ -1,10 +1,10 @@ import { chainSummaryHistory } from '@lobechat/prompts'; -import { TraceNameMap, UIChatMessage } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { TraceNameMap, type UIChatMessage } from '@lobechat/types'; +import { type StateCreator } from 'zustand/vanilla'; import { chatService } from '@/services/chat'; import { topicService } from '@/services/topic'; -import { ChatStore } from '@/store/chat'; +import { type ChatStore } from '@/store/chat'; import { useUserStore } from '@/store/user'; import { systemAgentSelectors } from '@/store/user/selectors'; diff --git a/src/store/chat/slices/aiChat/actions/streamingExecutor.ts b/src/store/chat/slices/aiChat/actions/streamingExecutor.ts index 9920b12e8d..de3b92666c 100644 --- a/src/store/chat/slices/aiChat/actions/streamingExecutor.ts +++ b/src/store/chat/slices/aiChat/actions/streamingExecutor.ts @@ -10,31 +10,31 @@ import { import { PageAgentIdentifier } from '@lobechat/builtin-tool-page-agent'; import { isDesktop } from '@lobechat/const'; import { - ChatImageItem, - ChatToolPayload, - ConversationContext, - MessageContentPart, - MessageMapScope, - MessageToolCall, - ModelUsage, - RuntimeInitialContext, - RuntimeStepContext, + type ChatImageItem, + type ChatToolPayload, + type ConversationContext, + type MessageContentPart, + type MessageMapScope, + type MessageToolCall, + type ModelUsage, + type RuntimeInitialContext, + type RuntimeStepContext, TraceNameMap, - UIChatMessage, + type UIChatMessage, } from '@lobechat/types'; import { serializePartsForStorage } from '@lobechat/utils'; import debug from 'debug'; import { throttle } from 'es-toolkit/compat'; import { t } from 'i18next'; import pMap from 'p-map'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createAgentToolsEngine } from '@/helpers/toolEngineering'; import { chatService } from '@/services/chat'; import { resolveAgentConfig } from '@/services/chat/mecha'; import { messageService } from '@/services/message'; import { createAgentExecutors } from '@/store/chat/agents/createAgentExecutors'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { getFileStoreState } from '@/store/file/store'; import { toolInterventionSelectors } from '@/store/user/selectors'; import { getUserStoreState } from '@/store/user/store'; diff --git a/src/store/chat/slices/aiChat/actions/streamingStates.ts b/src/store/chat/slices/aiChat/actions/streamingStates.ts index 049d05861b..5d44db114f 100644 --- a/src/store/chat/slices/aiChat/actions/streamingStates.ts +++ b/src/store/chat/slices/aiChat/actions/streamingStates.ts @@ -1,8 +1,8 @@ import isEqual from 'fast-deep-equal'; import { produce } from 'immer'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; /** * Manages loading states during streaming operations diff --git a/src/store/chat/slices/builtinTool/actions/agentBuilder.ts b/src/store/chat/slices/builtinTool/actions/agentBuilder.ts index 52b975a0b5..f1badac42a 100644 --- a/src/store/chat/slices/builtinTool/actions/agentBuilder.ts +++ b/src/store/chat/slices/builtinTool/actions/agentBuilder.ts @@ -7,10 +7,10 @@ import type { } from '@lobechat/builtin-tool-agent-builder'; import { AgentBuilderExecutionRuntime } from '@lobechat/builtin-tool-agent-builder/executionRuntime'; import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { getAgentStoreState } from '@/store/agent'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; const log = debug('lobe-store:builtin-tool:agent-builder'); diff --git a/src/store/chat/slices/builtinTool/actions/groupAgentBuilder.ts b/src/store/chat/slices/builtinTool/actions/groupAgentBuilder.ts index 204faec2ad..6a2388029b 100644 --- a/src/store/chat/slices/builtinTool/actions/groupAgentBuilder.ts +++ b/src/store/chat/slices/builtinTool/actions/groupAgentBuilder.ts @@ -13,11 +13,11 @@ import type { } from '@lobechat/builtin-tool-group-agent-builder'; import { GroupAgentBuilderExecutionRuntime } from '@lobechat/builtin-tool-group-agent-builder/executionRuntime'; import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { getAgentStoreState } from '@/store/agent'; import { getChatGroupStoreState } from '@/store/agentGroup'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; const log = debug('lobe-store:builtin-tool:group-agent-builder'); diff --git a/src/store/chat/slices/builtinTool/actions/index.ts b/src/store/chat/slices/builtinTool/actions/index.ts index 727c42ce45..cc85da1ad0 100644 --- a/src/store/chat/slices/builtinTool/actions/index.ts +++ b/src/store/chat/slices/builtinTool/actions/index.ts @@ -1,15 +1,15 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { AgentBuilderAction, agentBuilderSlice } from './agentBuilder'; -import { GroupAgentBuilderAction, groupAgentBuilderSlice } from './groupAgentBuilder'; -import { ChatCodeInterpreterAction, codeInterpreterSlice } from './interpreter'; -import { KnowledgeBaseAction, knowledgeBaseSlice } from './knowledgeBase'; -import { LocalFileAction, localSystemSlice } from './localSystem'; -import { PageAgentAction, pageAgentSlice } from './pageAgent'; -import { SearchAction, searchSlice } from './search'; -import { UserMemoryAction, userMemorySlice } from './userMemory'; +import { type AgentBuilderAction, agentBuilderSlice } from './agentBuilder'; +import { type GroupAgentBuilderAction, groupAgentBuilderSlice } from './groupAgentBuilder'; +import { type ChatCodeInterpreterAction, codeInterpreterSlice } from './interpreter'; +import { type KnowledgeBaseAction, knowledgeBaseSlice } from './knowledgeBase'; +import { type LocalFileAction, localSystemSlice } from './localSystem'; +import { type PageAgentAction, pageAgentSlice } from './pageAgent'; +import { type SearchAction, searchSlice } from './search'; +import { type UserMemoryAction, userMemorySlice } from './userMemory'; export interface ChatBuiltinToolAction extends diff --git a/src/store/chat/slices/builtinTool/actions/interpreter.ts b/src/store/chat/slices/builtinTool/actions/interpreter.ts index 74dad2ded4..5ca5a67775 100644 --- a/src/store/chat/slices/builtinTool/actions/interpreter.ts +++ b/src/store/chat/slices/builtinTool/actions/interpreter.ts @@ -1,19 +1,19 @@ import { - CodeInterpreterFileItem, - CodeInterpreterParams, - CodeInterpreterResponse, + type CodeInterpreterFileItem, + type CodeInterpreterParams, + type CodeInterpreterResponse, } from '@lobechat/types'; import debug from 'debug'; import { produce } from 'immer'; import pMap from 'p-map'; -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { fileService } from '@/services/file'; import { pythonService } from '@/services/python'; import { dbMessageSelectors } from '@/store/chat/selectors'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { useFileStore } from '@/store/file'; import { CodeInterpreterIdentifier } from '@/tools/code-interpreter'; import { setNamespace } from '@/utils/storeDebug'; diff --git a/src/store/chat/slices/builtinTool/actions/knowledgeBase.ts b/src/store/chat/slices/builtinTool/actions/knowledgeBase.ts index 242018a119..0b7d727c4e 100644 --- a/src/store/chat/slices/builtinTool/actions/knowledgeBase.ts +++ b/src/store/chat/slices/builtinTool/actions/knowledgeBase.ts @@ -1,9 +1,9 @@ import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { agentSelectors } from '@/store/agent/selectors'; import { getAgentStoreState } from '@/store/agent/store'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { KnowledgeBaseExecutionRuntime } from '@/tools/knowledge-base/ExecutionRuntime'; const log = debug('lobe-store:builtin-tool:knowledge-base'); diff --git a/src/store/chat/slices/builtinTool/actions/localSystem.ts b/src/store/chat/slices/builtinTool/actions/localSystem.ts index 6b1151b667..3c30819366 100644 --- a/src/store/chat/slices/builtinTool/actions/localSystem.ts +++ b/src/store/chat/slices/builtinTool/actions/localSystem.ts @@ -1,22 +1,22 @@ import { - EditLocalFileParams, - GetCommandOutputParams, - GlobFilesParams, - GrepContentParams, - KillCommandParams, - ListLocalFileParams, - LocalReadFileParams, - LocalReadFilesParams, - LocalSearchFilesParams, - MoveLocalFilesParams, - RenameLocalFileParams, - RunCommandParams, - WriteLocalFileParams, + type EditLocalFileParams, + type GetCommandOutputParams, + type GlobFilesParams, + type GrepContentParams, + type KillCommandParams, + type ListLocalFileParams, + type LocalReadFileParams, + type LocalReadFilesParams, + type LocalSearchFilesParams, + type MoveLocalFilesParams, + type RenameLocalFileParams, + type RunCommandParams, + type WriteLocalFileParams, } from '@lobechat/electron-client-ipc'; import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { LocalSystemExecutionRuntime } from '@/tools/local-system/ExecutionRuntime'; const log = debug('lobe-store:builtin-tool'); diff --git a/src/store/chat/slices/builtinTool/actions/pageAgent.ts b/src/store/chat/slices/builtinTool/actions/pageAgent.ts index c18ac6bea9..391e0d346c 100644 --- a/src/store/chat/slices/builtinTool/actions/pageAgent.ts +++ b/src/store/chat/slices/builtinTool/actions/pageAgent.ts @@ -1,8 +1,8 @@ import { PageAgentExecutionRuntime } from '@lobechat/builtin-tool-page-agent/executionRuntime'; import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; const log = debug('page:page-agent'); diff --git a/src/store/chat/slices/builtinTool/actions/search.ts b/src/store/chat/slices/builtinTool/actions/search.ts index 4539a86683..1978fed743 100644 --- a/src/store/chat/slices/builtinTool/actions/search.ts +++ b/src/store/chat/slices/builtinTool/actions/search.ts @@ -1,9 +1,9 @@ -import { ChatToolPayload, CreateMessageParams, SearchQuery } from '@lobechat/types'; +import { type ChatToolPayload, type CreateMessageParams, type SearchQuery } from '@lobechat/types'; import { nanoid } from '@lobechat/utils'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { dbMessageSelectors } from '@/store/chat/selectors'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { WebBrowsingApiName, WebBrowsingManifest } from '@/tools/web-browsing'; export interface SearchAction { diff --git a/src/store/chat/slices/builtinTool/actions/userMemory.ts b/src/store/chat/slices/builtinTool/actions/userMemory.ts index 39b7a32aef..1e33b20ff8 100644 --- a/src/store/chat/slices/builtinTool/actions/userMemory.ts +++ b/src/store/chat/slices/builtinTool/actions/userMemory.ts @@ -6,12 +6,12 @@ import type { RemoveIdentityActionSchema, UpdateIdentityActionSchema, } from '@lobechat/memory-user-memory/schemas'; -import { z } from 'zod'; -import { StateCreator } from 'zustand/vanilla'; +import { type z } from 'zod'; +import { type StateCreator } from 'zustand/vanilla'; import { userMemoryService } from '@/services/userMemory'; -import { ChatStore } from '@/store/chat/store'; -import { SearchMemoryParams } from '@/types/userMemory'; +import { type ChatStore } from '@/store/chat/store'; +import { type SearchMemoryParams } from '@/types/userMemory'; export interface UserMemoryAction { addContextMemory: ( diff --git a/src/store/chat/slices/builtinTool/initialState.ts b/src/store/chat/slices/builtinTool/initialState.ts index 1bc33a59ea..2e498fbadc 100644 --- a/src/store/chat/slices/builtinTool/initialState.ts +++ b/src/store/chat/slices/builtinTool/initialState.ts @@ -1,4 +1,4 @@ -import { FileItem } from '@/types/files'; +import { type FileItem } from '@/types/files'; export interface ChatToolState { activePageContentUrl?: string; diff --git a/src/store/chat/slices/builtinTool/selectors.ts b/src/store/chat/slices/builtinTool/selectors.ts index 823a9e7542..cfde859c21 100644 --- a/src/store/chat/slices/builtinTool/selectors.ts +++ b/src/store/chat/slices/builtinTool/selectors.ts @@ -1,4 +1,4 @@ -import { ChatStoreState } from '@/store/chat'; +import { type ChatStoreState } from '@/store/chat'; const isDallEImageGenerating = (id: string) => (s: ChatStoreState) => s.dalleImageLoading[id]; diff --git a/src/store/chat/slices/message/actions/index.ts b/src/store/chat/slices/message/actions/index.ts index a8fa2bc7e4..895d7b7da8 100644 --- a/src/store/chat/slices/message/actions/index.ts +++ b/src/store/chat/slices/message/actions/index.ts @@ -1,12 +1,12 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { MessageInternalsAction, messageInternals } from './internals'; -import { MessageOptimisticUpdateAction, messageOptimisticUpdate } from './optimisticUpdate'; -import { MessagePublicApiAction, messagePublicApi } from './publicApi'; -import { MessageQueryAction, messageQuery } from './query'; -import { MessageRuntimeStateAction, messageRuntimeState } from './runtimeState'; +import { type MessageInternalsAction, messageInternals } from './internals'; +import { type MessageOptimisticUpdateAction, messageOptimisticUpdate } from './optimisticUpdate'; +import { type MessagePublicApiAction, messagePublicApi } from './publicApi'; +import { type MessageQueryAction, messageQuery } from './query'; +import { type MessageRuntimeStateAction, messageRuntimeState } from './runtimeState'; /** * Combined message action interface diff --git a/src/store/chat/slices/message/actions/internals.ts b/src/store/chat/slices/message/actions/internals.ts index a3e0368b96..f0f6593e70 100644 --- a/src/store/chat/slices/message/actions/internals.ts +++ b/src/store/chat/slices/message/actions/internals.ts @@ -1,15 +1,15 @@ import { parse } from '@lobechat/conversation-flow'; -import { TraceEventPayloads } from '@lobechat/types'; +import { type TraceEventPayloads } from '@lobechat/types'; import debug from 'debug'; import isEqual from 'fast-deep-equal'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { traceService } from '@/services/trace'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { displayMessageSelectors } from '../../../selectors'; import { messageMapKey } from '../../../utils/messageMapKey'; -import { MessageDispatch, messagesReducer } from '../reducer'; +import { type MessageDispatch, messagesReducer } from '../reducer'; const log = debug('lobe-store:message-internals'); diff --git a/src/store/chat/slices/message/actions/optimisticUpdate.ts b/src/store/chat/slices/message/actions/optimisticUpdate.ts index 56c85aee26..7a5867efae 100644 --- a/src/store/chat/slices/message/actions/optimisticUpdate.ts +++ b/src/store/chat/slices/message/actions/optimisticUpdate.ts @@ -1,22 +1,22 @@ import { ChatErrorType, - ChatImageItem, - ChatMessageError, - ChatMessagePluginError, - ChatToolPayload, - CreateMessageParams, - GroundingSearch, - MessageMetadata, - MessagePluginItem, - ModelReasoning, - UIChatMessage, - UpdateMessageRAGParams, + type ChatImageItem, + type ChatMessageError, + type ChatMessagePluginError, + type ChatToolPayload, + type CreateMessageParams, + type GroundingSearch, + type MessageMetadata, + type MessagePluginItem, + type ModelReasoning, + type UIChatMessage, + type UpdateMessageRAGParams, } from '@lobechat/types'; import { nanoid } from '@lobechat/utils'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { messageService } from '@/services/message'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; /** * Context for optimistic updates to specify session/topic isolation diff --git a/src/store/chat/slices/message/actions/publicApi.ts b/src/store/chat/slices/message/actions/publicApi.ts index 17d09a0da3..99b087ea3d 100644 --- a/src/store/chat/slices/message/actions/publicApi.ts +++ b/src/store/chat/slices/message/actions/publicApi.ts @@ -2,16 +2,16 @@ import { TraceEventType } from '@lobechat/types'; import { copyToClipboard } from '@lobehub/ui'; import isEqual from 'fast-deep-equal'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { messageService } from '@/services/message'; import { topicService } from '@/services/topic'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { setNamespace } from '@/utils/storeDebug'; import { dbMessageSelectors, displayMessageSelectors } from '../../../selectors'; import { toggleBooleanList } from '../../../utils'; -import { OptimisticUpdateContext } from './optimisticUpdate'; +import { type OptimisticUpdateContext } from './optimisticUpdate'; const n = setNamespace('m'); diff --git a/src/store/chat/slices/message/actions/query.ts b/src/store/chat/slices/message/actions/query.ts index 07cfae3684..4167f90a96 100644 --- a/src/store/chat/slices/message/actions/query.ts +++ b/src/store/chat/slices/message/actions/query.ts @@ -1,12 +1,12 @@ import { parse } from '@lobechat/conversation-flow'; -import { ConversationContext, UIChatMessage } from '@lobechat/types'; +import { type ConversationContext, type UIChatMessage } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate } from '@/libs/swr'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { MessageMapKeyInput, messageMapKey } from '../../../utils/messageMapKey'; +import { type MessageMapKeyInput, messageMapKey } from '../../../utils/messageMapKey'; const SWR_USE_FETCH_MESSAGES = 'SWR_USE_FETCH_MESSAGES'; diff --git a/src/store/chat/slices/message/actions/runtimeState.ts b/src/store/chat/slices/message/actions/runtimeState.ts index 6e370be239..10aef5ad56 100644 --- a/src/store/chat/slices/message/actions/runtimeState.ts +++ b/src/store/chat/slices/message/actions/runtimeState.ts @@ -1,7 +1,7 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; -import { Action } from '@/utils/storeDebug'; +import { type ChatStore } from '@/store/chat/store'; +import { type Action } from '@/utils/storeDebug'; import type { ChatStoreState } from '../../../initialState'; import { preventLeavingFn, toggleBooleanList } from '../../../utils'; diff --git a/src/store/chat/slices/message/initialState.ts b/src/store/chat/slices/message/initialState.ts index 7ece7d9934..410d84cbfe 100644 --- a/src/store/chat/slices/message/initialState.ts +++ b/src/store/chat/slices/message/initialState.ts @@ -1,6 +1,6 @@ -import { UIChatMessage } from '@lobechat/types'; +import { type UIChatMessage } from '@lobechat/types'; -import { ChatGroupAgentItem } from '@/database/schemas/chatGroup'; +import { type ChatGroupAgentItem } from '@/database/schemas/chatGroup'; import type { SupervisorTodoItem } from './supervisor'; diff --git a/src/store/chat/slices/message/reducer.ts b/src/store/chat/slices/message/reducer.ts index b7963d0fd8..10c0015fc5 100644 --- a/src/store/chat/slices/message/reducer.ts +++ b/src/store/chat/slices/message/reducer.ts @@ -1,10 +1,10 @@ import { - ChatMessageExtra, - ChatPluginPayload, - ChatToolPayload, - CreateMessageParams, - MessagePluginItem, - UIChatMessage, + type ChatMessageExtra, + type ChatPluginPayload, + type ChatToolPayload, + type CreateMessageParams, + type MessagePluginItem, + type UIChatMessage, } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; import i18n from 'i18next'; diff --git a/src/store/chat/slices/message/selectors/chat.ts b/src/store/chat/slices/message/selectors/chat.ts index 389af919ee..1134f1b5c8 100644 --- a/src/store/chat/slices/message/selectors/chat.ts +++ b/src/store/chat/slices/message/selectors/chat.ts @@ -31,7 +31,7 @@ * Before: chatSelectors.getMessageById(id)(state) // For display * After: displayMessageSelectors.getDisplayMessageById(id)(state) */ -import { ChatFileItem } from '@lobechat/types'; +import { type ChatFileItem } from '@lobechat/types'; import type { ChatStoreState } from '../../../initialState'; import { dbMessageSelectors } from './dbMessage'; diff --git a/src/store/chat/slices/message/selectors/dbMessage.ts b/src/store/chat/slices/message/selectors/dbMessage.ts index e5dfb05fbc..60aadff588 100644 --- a/src/store/chat/slices/message/selectors/dbMessage.ts +++ b/src/store/chat/slices/message/selectors/dbMessage.ts @@ -1,4 +1,4 @@ -import { StepContextTodos, UIChatMessage } from '@lobechat/types'; +import { type StepContextTodos, type UIChatMessage } from '@lobechat/types'; import { chatHelpers } from '../../../helpers'; import type { ChatStoreState } from '../../../initialState'; diff --git a/src/store/chat/slices/message/selectors/displayMessage.ts b/src/store/chat/slices/message/selectors/displayMessage.ts index 178004b2c3..ebfc19c01b 100644 --- a/src/store/chat/slices/message/selectors/displayMessage.ts +++ b/src/store/chat/slices/message/selectors/displayMessage.ts @@ -1,4 +1,4 @@ -import { AssistantContentBlock, UIChatMessage } from '@lobechat/types'; +import { type AssistantContentBlock, type UIChatMessage } from '@lobechat/types'; import { DEFAULT_USER_AVATAR } from '@/const/meta'; import { INBOX_SESSION_ID } from '@/const/session'; diff --git a/src/store/chat/slices/message/supervisor.ts b/src/store/chat/slices/message/supervisor.ts index 8a3af8eb7f..af770f6391 100644 --- a/src/store/chat/slices/message/supervisor.ts +++ b/src/store/chat/slices/message/supervisor.ts @@ -1,5 +1,5 @@ import { contextSupervisorMakeDecision } from '@lobechat/prompts'; -import { GroupMemberWithAgent, UIChatMessage } from '@lobechat/types'; +import { type GroupMemberWithAgent, type UIChatMessage } from '@lobechat/types'; import { aiChatService } from '@/services/aiChat'; diff --git a/src/store/chat/slices/operation/actions.ts b/src/store/chat/slices/operation/actions.ts index 9824eb7f2a..6da82a8acd 100644 --- a/src/store/chat/slices/operation/actions.ts +++ b/src/store/chat/slices/operation/actions.ts @@ -2,10 +2,10 @@ import { nanoid } from '@lobechat/utils'; import debug from 'debug'; import { produce } from 'immer'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; -import { MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; +import { type ChatStore } from '@/store/chat/store'; +import { type MessageMapKeyInput, messageMapKey } from '@/store/chat/utils/messageMapKey'; import { setNamespace } from '@/utils/storeDebug'; import type { diff --git a/src/store/chat/slices/plugin/actions/index.ts b/src/store/chat/slices/plugin/actions/index.ts index 433b4c3a53..20eee9566c 100644 --- a/src/store/chat/slices/plugin/actions/index.ts +++ b/src/store/chat/slices/plugin/actions/index.ts @@ -1,15 +1,15 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { PluginInternalsAction, pluginInternals } from './internals'; +import { type PluginInternalsAction, pluginInternals } from './internals'; import { - PluginOptimisticUpdateAction, + type PluginOptimisticUpdateAction, pluginOptimisticUpdate, } from './optimisticUpdate'; -import { PluginTypesAction, pluginTypes } from './pluginTypes'; -import { PluginPublicApiAction, pluginPublicApi } from './publicApi'; -import { PluginWorkflowAction, pluginWorkflow } from './workflow'; +import { type PluginTypesAction, pluginTypes } from './pluginTypes'; +import { type PluginPublicApiAction, pluginPublicApi } from './publicApi'; +import { type PluginWorkflowAction, pluginWorkflow } from './workflow'; /** * Combined plugin action interface diff --git a/src/store/chat/slices/plugin/actions/internals.ts b/src/store/chat/slices/plugin/actions/internals.ts index 3e9a48d1f3..083901a8d2 100644 --- a/src/store/chat/slices/plugin/actions/internals.ts +++ b/src/store/chat/slices/plugin/actions/internals.ts @@ -1,10 +1,10 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ import { ToolNameResolver } from '@lobechat/context-engine'; -import { ChatToolPayload, MessageToolCall, ToolsCallingContext } from '@lobechat/types'; -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; -import { StateCreator } from 'zustand/vanilla'; +import { type ChatToolPayload, type MessageToolCall, type ToolsCallingContext } from '@lobechat/types'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { useToolStore } from '@/store/tool'; import { klavisStoreSelectors, pluginSelectors } from '@/store/tool/selectors'; import { builtinTools } from '@/tools'; diff --git a/src/store/chat/slices/plugin/actions/optimisticUpdate.ts b/src/store/chat/slices/plugin/actions/optimisticUpdate.ts index ee9107b559..d28cdc5af3 100644 --- a/src/store/chat/slices/plugin/actions/optimisticUpdate.ts +++ b/src/store/chat/slices/plugin/actions/optimisticUpdate.ts @@ -1,16 +1,16 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ import { - ChatMessageError, - ChatMessagePluginError, - ChatToolPayload, - MessagePluginItem, + type ChatMessageError, + type ChatMessagePluginError, + type ChatToolPayload, + type MessagePluginItem, } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { messageService } from '@/services/message'; -import { OptimisticUpdateContext } from '@/store/chat/slices/message/actions/optimisticUpdate'; -import { ChatStore } from '@/store/chat/store'; +import { type OptimisticUpdateContext } from '@/store/chat/slices/message/actions/optimisticUpdate'; +import { type ChatStore } from '@/store/chat/store'; import { merge } from '@/utils/merge'; import { safeParseJSON } from '@/utils/safeParseJSON'; diff --git a/src/store/chat/slices/plugin/actions/pluginTypes.ts b/src/store/chat/slices/plugin/actions/pluginTypes.ts index a8f8fa2c47..3a6aa0f97d 100644 --- a/src/store/chat/slices/plugin/actions/pluginTypes.ts +++ b/src/store/chat/slices/plugin/actions/pluginTypes.ts @@ -1,23 +1,23 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ import { GroupAgentBuilderIdentifier } from '@lobechat/builtin-tool-group-agent-builder'; -import { ChatToolPayload, RuntimeStepContext } from '@lobechat/types'; +import { type ChatToolPayload, type RuntimeStepContext } from '@lobechat/types'; import { PluginErrorType } from '@lobehub/chat-plugin-sdk'; import debug from 'debug'; import { t } from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { MCPToolCallResult } from '@/libs/mcp'; +import { type MCPToolCallResult } from '@/libs/mcp'; import { chatService } from '@/services/chat'; import { codeInterpreterService } from '@/services/codeInterpreter'; import { fileService } from '@/services/file'; import { mcpService } from '@/services/mcp'; import { messageService } from '@/services/message'; import { AI_RUNTIME_OPERATION_TYPES } from '@/store/chat/slices/operation'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { useToolStore } from '@/store/tool'; import { hasExecutor } from '@/store/tool/slices/builtin/executors'; import { CodeInterpreterIdentifier } from '@/tools/code-interpreter'; -import { ExportFileState } from '@/tools/code-interpreter/type'; +import { type ExportFileState } from '@/tools/code-interpreter/type'; import { safeParseJSON } from '@/utils/safeParseJSON'; import { dbMessageSelectors } from '../../message/selectors'; diff --git a/src/store/chat/slices/plugin/actions/publicApi.ts b/src/store/chat/slices/plugin/actions/publicApi.ts index 3a9cfead34..52bdf0ac8c 100644 --- a/src/store/chat/slices/plugin/actions/publicApi.ts +++ b/src/store/chat/slices/plugin/actions/publicApi.ts @@ -1,11 +1,11 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ -import { ChatToolPayload, RuntimeStepContext, UIChatMessage } from '@lobechat/types'; +import { type ChatToolPayload, type RuntimeStepContext, type UIChatMessage } from '@lobechat/types'; import i18n from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; -import { OptimisticUpdateContext } from '../../message/actions/optimisticUpdate'; +import { type OptimisticUpdateContext } from '../../message/actions/optimisticUpdate'; import { displayMessageSelectors } from '../../message/selectors'; /** diff --git a/src/store/chat/slices/plugin/actions/workflow.ts b/src/store/chat/slices/plugin/actions/workflow.ts index 1a1154c57e..0b87f2c4cf 100644 --- a/src/store/chat/slices/plugin/actions/workflow.ts +++ b/src/store/chat/slices/plugin/actions/workflow.ts @@ -1,9 +1,9 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ -import { CreateMessageParams } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { type CreateMessageParams } from '@lobechat/types'; +import { type StateCreator } from 'zustand/vanilla'; import { messageService } from '@/services/message'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { dbMessageSelectors, displayMessageSelectors } from '../../message/selectors'; import { threadSelectors } from '../../thread/selectors'; diff --git a/src/store/chat/slices/portal/action.ts b/src/store/chat/slices/portal/action.ts index 4410a0ac1e..3b969eda0e 100644 --- a/src/store/chat/slices/portal/action.ts +++ b/src/store/chat/slices/portal/action.ts @@ -1,9 +1,9 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { ChatStore } from '@/store/chat/store'; -import { PortalArtifact } from '@/types/artifact'; +import { type ChatStore } from '@/store/chat/store'; +import { type PortalArtifact } from '@/types/artifact'; -import { PortalFile } from './initialState'; +import { type PortalFile } from './initialState'; export interface ChatPortalAction { closeArtifact: () => void; diff --git a/src/store/chat/slices/portal/initialState.ts b/src/store/chat/slices/portal/initialState.ts index 232c1b9728..fc08914f15 100644 --- a/src/store/chat/slices/portal/initialState.ts +++ b/src/store/chat/slices/portal/initialState.ts @@ -1,4 +1,4 @@ -import { PortalArtifact } from '@/types/artifact'; +import { type PortalArtifact } from '@/types/artifact'; export enum ArtifactDisplayMode { Code = 'code', diff --git a/src/store/chat/slices/thread/action.ts b/src/store/chat/slices/thread/action.ts index bc911e28a6..6a15beac3c 100644 --- a/src/store/chat/slices/thread/action.ts +++ b/src/store/chat/slices/thread/action.ts @@ -2,16 +2,16 @@ // Disable the auto sort key eslint rule to make the code more logic and readable import { LOADING_FLAT } from '@lobechat/const'; import { chainSummaryTitle } from '@lobechat/prompts'; -import { CreateMessageParams, IThreadType, ThreadItem, UIChatMessage } from '@lobechat/types'; +import { type CreateMessageParams, type IThreadType, type ThreadItem, type UIChatMessage } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { chatService } from '@/services/chat'; import { threadService } from '@/services/thread'; import { threadSelectors } from '@/store/chat/selectors'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { globalHelpers } from '@/store/global/helpers'; import { useUserStore } from '@/store/user'; import { systemAgentSelectors } from '@/store/user/selectors'; @@ -19,7 +19,7 @@ import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; import { displayMessageSelectors } from '../message/selectors'; -import { ThreadDispatch, threadReducer } from './reducer'; +import { type ThreadDispatch, threadReducer } from './reducer'; import { genParentMessages } from './selectors'; const n = setNamespace('thd'); diff --git a/src/store/chat/slices/thread/initialState.ts b/src/store/chat/slices/thread/initialState.ts index fb3332767d..b4a638404f 100644 --- a/src/store/chat/slices/thread/initialState.ts +++ b/src/store/chat/slices/thread/initialState.ts @@ -1,4 +1,4 @@ -import { IThreadType, ThreadItem, ThreadType } from '@lobechat/types'; +import { type IThreadType, type ThreadItem, ThreadType } from '@lobechat/types'; export interface ChatThreadState { activeThreadId?: string; diff --git a/src/store/chat/slices/thread/reducer.ts b/src/store/chat/slices/thread/reducer.ts index 9c71d1dfe9..514391f15a 100644 --- a/src/store/chat/slices/thread/reducer.ts +++ b/src/store/chat/slices/thread/reducer.ts @@ -1,6 +1,6 @@ import { produce } from 'immer'; -import { ThreadItem } from '@/types/topic'; +import { type ThreadItem } from '@/types/topic'; interface UpdateThreadAction { id: string; diff --git a/src/store/chat/slices/thread/selectors/index.ts b/src/store/chat/slices/thread/selectors/index.ts index 0ad03383e4..9afa52e05b 100644 --- a/src/store/chat/slices/thread/selectors/index.ts +++ b/src/store/chat/slices/thread/selectors/index.ts @@ -1,4 +1,4 @@ -import { ThreadItem, UIChatMessage } from '@lobechat/types'; +import { type ThreadItem, type UIChatMessage } from '@lobechat/types'; import { useAgentStore } from '@/store/agent'; import { agentChatConfigSelectors } from '@/store/agent/selectors'; diff --git a/src/store/chat/slices/thread/selectors/util.ts b/src/store/chat/slices/thread/selectors/util.ts index 860934b45c..4be98beca0 100644 --- a/src/store/chat/slices/thread/selectors/util.ts +++ b/src/store/chat/slices/thread/selectors/util.ts @@ -1,4 +1,4 @@ -import { IThreadType, ThreadType, UIChatMessage } from '@lobechat/types'; +import { type IThreadType, ThreadType, type UIChatMessage } from '@lobechat/types'; /** * Generate parent messages for thread display diff --git a/src/store/chat/slices/topic/action.ts b/src/store/chat/slices/topic/action.ts index c1d073ea99..d783207b35 100644 --- a/src/store/chat/slices/topic/action.ts +++ b/src/store/chat/slices/topic/action.ts @@ -2,11 +2,11 @@ // Note: To make the code more logic and readable, we just disable the auto sort key eslint rule // DON'T REMOVE THE FIRST LINE import { chainSummaryTitle } from '@lobechat/prompts'; -import { TraceNameMap, UIChatMessage } from '@lobechat/types'; +import { TraceNameMap, type UIChatMessage } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; import { t } from 'i18next'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { message } from '@/components/AntdStaticMethods'; import { LOADING_FLAT } from '@/const/message'; @@ -20,13 +20,13 @@ import { useGlobalStore } from '@/store/global'; import { globalHelpers } from '@/store/global/helpers'; import { useUserStore } from '@/store/user'; import { systemAgentSelectors } from '@/store/user/selectors'; -import { ChatTopic, CreateTopicParams } from '@/types/topic'; +import { type ChatTopic, type CreateTopicParams } from '@/types/topic'; import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; import { displayMessageSelectors } from '../message/selectors'; -import { TopicData } from './initialState'; -import { ChatTopicDispatch, topicReducer } from './reducer'; +import { type TopicData } from './initialState'; +import { type ChatTopicDispatch, topicReducer } from './reducer'; import { topicSelectors } from './selectors'; const n = setNamespace('t'); diff --git a/src/store/chat/slices/topic/initialState.ts b/src/store/chat/slices/topic/initialState.ts index e6377c07ae..ce696b4088 100644 --- a/src/store/chat/slices/topic/initialState.ts +++ b/src/store/chat/slices/topic/initialState.ts @@ -1,4 +1,4 @@ -import { ChatTopic } from '@/types/topic'; +import { type ChatTopic } from '@/types/topic'; /** * Unified topic data structure for each agent diff --git a/src/store/chat/slices/topic/reducer.ts b/src/store/chat/slices/topic/reducer.ts index 32f59ee51a..e9384b2f91 100644 --- a/src/store/chat/slices/topic/reducer.ts +++ b/src/store/chat/slices/topic/reducer.ts @@ -1,7 +1,7 @@ import isEqual from 'fast-deep-equal'; import { produce } from 'immer'; -import { ChatTopic, CreateTopicParams } from '@/types/topic'; +import { type ChatTopic, type CreateTopicParams } from '@/types/topic'; interface AddChatTopicAction { type: 'addTopic'; diff --git a/src/store/chat/slices/topic/selectors.ts b/src/store/chat/slices/topic/selectors.ts index 3a97009ac7..2a91d261a3 100644 --- a/src/store/chat/slices/topic/selectors.ts +++ b/src/store/chat/slices/topic/selectors.ts @@ -1,11 +1,11 @@ import { t } from 'i18next'; -import { ChatTopic, ChatTopicSummary, GroupedTopic } from '@/types/topic'; +import { type ChatTopic, type ChatTopicSummary, type GroupedTopic } from '@/types/topic'; import { groupTopicsByTime } from '@/utils/client/topic'; -import { ChatStoreState } from '../../initialState'; +import { type ChatStoreState } from '../../initialState'; import { topicMapKey } from '../../utils/topicMapKey'; -import { TopicData } from './initialState'; +import { type TopicData } from './initialState'; // Helper selector: get current topic data based on session context const currentTopicData = (s: ChatStoreState): TopicData | undefined => { diff --git a/src/store/chat/slices/translate/action.ts b/src/store/chat/slices/translate/action.ts index 9fe69eb583..6ad5b8553f 100644 --- a/src/store/chat/slices/translate/action.ts +++ b/src/store/chat/slices/translate/action.ts @@ -1,13 +1,13 @@ import { chainLangDetect, chainTranslate } from '@lobechat/prompts'; -import { ChatTranslate, TraceNameMap, TracePayload } from '@lobechat/types'; +import { type ChatTranslate, TraceNameMap, type TracePayload } from '@lobechat/types'; import { merge } from '@lobechat/utils'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { supportLocales } from '@/locales/resources'; import { chatService } from '@/services/chat'; import { messageService } from '@/services/message'; import { dbMessageSelectors } from '@/store/chat/selectors'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; import { useUserStore } from '@/store/user'; import { systemAgentSelectors } from '@/store/user/selectors'; diff --git a/src/store/chat/slices/tts/action.ts b/src/store/chat/slices/tts/action.ts index 20e55bebd4..f0c0e555a7 100644 --- a/src/store/chat/slices/tts/action.ts +++ b/src/store/chat/slices/tts/action.ts @@ -1,8 +1,8 @@ -import { ChatTTS } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { type ChatTTS } from '@lobechat/types'; +import { type StateCreator } from 'zustand/vanilla'; import { messageService } from '@/services/message'; -import { ChatStore } from '@/store/chat/store'; +import { type ChatStore } from '@/store/chat/store'; /** * enhance chat action like translate,tts diff --git a/src/store/chat/store.ts b/src/store/chat/store.ts index 0d5eac4d05..8f11b2e3c8 100644 --- a/src/store/chat/store.ts +++ b/src/store/chat/store.ts @@ -2,21 +2,21 @@ import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { ChatStoreState, initialState } from './initialState'; -import { ChatBuiltinToolAction, chatToolSlice } from './slices/builtinTool/actions'; -import { ChatPortalAction, chatPortalSlice } from './slices/portal/action'; -import { ChatTranslateAction, chatTranslate } from './slices/translate/action'; -import { ChatMessageAction, chatMessage } from './slices/message/actions'; -import { ChatPluginAction, chatPlugin } from './slices/plugin/actions'; -import { ChatTopicAction, chatTopic } from './slices/topic/action'; -import { ChatAIChatAction, chatAiChat } from './slices/aiChat/actions'; -import { ChatTTSAction, chatTTS } from './slices/tts/action'; -import { ChatThreadAction, chatThreadMessage } from './slices/thread/action'; -import { OperationActions, operationActions } from './slices/operation/actions'; -import { ChatAIAgentAction, chatAiAgent } from './slices/aiAgent/actions'; +import { type ChatStoreState, initialState } from './initialState'; +import { type ChatBuiltinToolAction, chatToolSlice } from './slices/builtinTool/actions'; +import { type ChatPortalAction, chatPortalSlice } from './slices/portal/action'; +import { type ChatTranslateAction, chatTranslate } from './slices/translate/action'; +import { type ChatMessageAction, chatMessage } from './slices/message/actions'; +import { type ChatPluginAction, chatPlugin } from './slices/plugin/actions'; +import { type ChatTopicAction, chatTopic } from './slices/topic/action'; +import { type ChatAIChatAction, chatAiChat } from './slices/aiChat/actions'; +import { type ChatTTSAction, chatTTS } from './slices/tts/action'; +import { type ChatThreadAction, chatThreadMessage } from './slices/thread/action'; +import { type OperationActions, operationActions } from './slices/operation/actions'; +import { type ChatAIAgentAction, chatAiAgent } from './slices/aiAgent/actions'; export interface ChatStoreAction extends diff --git a/src/store/chat/utils/messageMapKey.ts b/src/store/chat/utils/messageMapKey.ts index 4932d98246..b6b9ac6171 100644 --- a/src/store/chat/utils/messageMapKey.ts +++ b/src/store/chat/utils/messageMapKey.ts @@ -1,4 +1,4 @@ -import { MessageMapContext, MessageMapScope } from '@lobechat/types'; +import { type MessageMapContext, type MessageMapScope } from '@lobechat/types'; /** * Input context for messageMapKey function diff --git a/src/store/discover/slices/assistant/action.ts b/src/store/discover/slices/assistant/action.ts index 4a8b5a9f37..b6b52377df 100644 --- a/src/store/discover/slices/assistant/action.ts +++ b/src/store/discover/slices/assistant/action.ts @@ -1,16 +1,16 @@ -import { CategoryItem, CategoryListQuery } from '@lobehub/market-sdk'; +import { type CategoryItem, type CategoryListQuery } from '@lobehub/market-sdk'; import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { discoverService } from '@/services/discover'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; import { globalHelpers } from '@/store/global/helpers'; import { - AssistantListResponse, - AssistantMarketSource, - AssistantQueryParams, - DiscoverAssistantDetail, - IdentifiersResponse, + type AssistantListResponse, + type AssistantMarketSource, + type AssistantQueryParams, + type DiscoverAssistantDetail, + type IdentifiersResponse, } from '@/types/discover'; export interface AssistantAction { diff --git a/src/store/discover/slices/mcp/action.ts b/src/store/discover/slices/mcp/action.ts index f277077926..d5c267dba5 100644 --- a/src/store/discover/slices/mcp/action.ts +++ b/src/store/discover/slices/mcp/action.ts @@ -1,15 +1,15 @@ -import { CategoryItem, CategoryListQuery } from '@lobehub/market-sdk'; +import { type CategoryItem, type CategoryListQuery } from '@lobehub/market-sdk'; import { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { discoverService } from '@/services/discover'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; import { globalHelpers } from '@/store/global/helpers'; import { - DiscoverMcpDetail, - McpListResponse, - McpQueryParams, + type DiscoverMcpDetail, + type McpListResponse, + type McpQueryParams, } from '@/types/discover'; export interface MCPAction { diff --git a/src/store/discover/slices/model/action.ts b/src/store/discover/slices/model/action.ts index d64881e41f..29ac832fbd 100644 --- a/src/store/discover/slices/model/action.ts +++ b/src/store/discover/slices/model/action.ts @@ -1,15 +1,15 @@ -import { CategoryItem, CategoryListQuery } from '@lobehub/market-sdk'; +import { type CategoryItem, type CategoryListQuery } from '@lobehub/market-sdk'; import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { discoverService } from '@/services/discover'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; import { globalHelpers } from '@/store/global/helpers'; import { - DiscoverModelDetail, - IdentifiersResponse, - ModelListResponse, - ModelQueryParams, + type DiscoverModelDetail, + type IdentifiersResponse, + type ModelListResponse, + type ModelQueryParams, } from '@/types/discover'; export interface ModelAction { diff --git a/src/store/discover/slices/plugin/action.ts b/src/store/discover/slices/plugin/action.ts index 5fa5bad236..84fd8eec52 100644 --- a/src/store/discover/slices/plugin/action.ts +++ b/src/store/discover/slices/plugin/action.ts @@ -1,15 +1,15 @@ import { - DiscoverPluginDetail, - IdentifiersResponse, - PluginListResponse, - PluginQueryParams, + type DiscoverPluginDetail, + type IdentifiersResponse, + type PluginListResponse, + type PluginQueryParams, } from '@lobechat/types'; -import { CategoryItem, CategoryListQuery } from '@lobehub/market-sdk'; +import { type CategoryItem, type CategoryListQuery } from '@lobehub/market-sdk'; import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { discoverService } from '@/services/discover'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; import { globalHelpers } from '@/store/global/helpers'; export interface PluginAction { diff --git a/src/store/discover/slices/provider/action.ts b/src/store/discover/slices/provider/action.ts index 35dbdfffd0..d3dfb272b1 100644 --- a/src/store/discover/slices/provider/action.ts +++ b/src/store/discover/slices/provider/action.ts @@ -2,13 +2,13 @@ import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { discoverService } from '@/services/discover'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; import { globalHelpers } from '@/store/global/helpers'; import { - DiscoverProviderDetail, - IdentifiersResponse, - ProviderListResponse, - ProviderQueryParams, + type DiscoverProviderDetail, + type IdentifiersResponse, + type ProviderListResponse, + type ProviderQueryParams, } from '@/types/discover'; export interface ProviderAction { diff --git a/src/store/discover/slices/social/action.ts b/src/store/discover/slices/social/action.ts index ea7c0d27be..22fe632d77 100644 --- a/src/store/discover/slices/social/action.ts +++ b/src/store/discover/slices/social/action.ts @@ -2,16 +2,16 @@ import useSWR, { type SWRResponse, mutate } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { - FavoriteAgentItem, - FavoritePluginItem, - FollowCounts, - FollowStatus, - FollowUserItem, - PaginatedResponse, - SocialTargetType, + type FavoriteAgentItem, + type FavoritePluginItem, + type FollowCounts, + type FollowStatus, + type FollowUserItem, + type PaginatedResponse, + type SocialTargetType, socialService, } from '@/services/social'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; export interface SocialAction { // Favorite actions diff --git a/src/store/discover/slices/user/action.ts b/src/store/discover/slices/user/action.ts index 5cb685955e..75220e0081 100644 --- a/src/store/discover/slices/user/action.ts +++ b/src/store/discover/slices/user/action.ts @@ -2,9 +2,9 @@ import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { discoverService } from '@/services/discover'; -import { DiscoverStore } from '@/store/discover'; +import { type DiscoverStore } from '@/store/discover'; import { globalHelpers } from '@/store/global/helpers'; -import { DiscoverUserProfile } from '@/types/discover'; +import { type DiscoverUserProfile } from '@/types/discover'; export interface UserAction { useUserProfile: (params: { username: string }) => SWRResponse; diff --git a/src/store/discover/store.ts b/src/store/discover/store.ts index 863490fc30..412ecce030 100644 --- a/src/store/discover/store.ts +++ b/src/store/discover/store.ts @@ -1,15 +1,15 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { AssistantAction, createAssistantSlice } from './slices/assistant/action'; -import { MCPAction, createMCPSlice } from './slices/mcp'; -import { ModelAction, createModelSlice } from './slices/model/action'; -import { PluginAction, createPluginSlice } from './slices/plugin/action'; -import { ProviderAction, createProviderSlice } from './slices/provider/action'; -import { SocialAction, createSocialSlice } from './slices/social'; -import { UserAction, createUserSlice } from './slices/user'; +import { type AssistantAction, createAssistantSlice } from './slices/assistant/action'; +import { type MCPAction, createMCPSlice } from './slices/mcp'; +import { type ModelAction, createModelSlice } from './slices/model/action'; +import { type PluginAction, createPluginSlice } from './slices/plugin/action'; +import { type ProviderAction, createProviderSlice } from './slices/provider/action'; +import { type SocialAction, createSocialSlice } from './slices/social'; +import { type UserAction, createUserSlice } from './slices/user'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/document/slices/editor/action.ts b/src/store/document/slices/editor/action.ts index af7481910b..b3eae04d42 100644 --- a/src/store/document/slices/editor/action.ts +++ b/src/store/document/slices/editor/action.ts @@ -1,7 +1,7 @@ import { EDITOR_DEBOUNCE_TIME, EDITOR_MAX_WAIT } from '@lobechat/const'; -import { IEditor } from '@lobehub/editor'; +import { type IEditor } from '@lobehub/editor'; import { debounce } from 'es-toolkit/compat'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { setNamespace } from '@/utils/storeDebug'; diff --git a/src/store/document/slices/editor/initialState.ts b/src/store/document/slices/editor/initialState.ts index e5d377fdfb..3e8c80bbd5 100644 --- a/src/store/document/slices/editor/initialState.ts +++ b/src/store/document/slices/editor/initialState.ts @@ -1,4 +1,4 @@ -import { IEditor } from '@lobehub/editor'; +import { type IEditor } from '@lobehub/editor'; export interface EditorState { /** diff --git a/src/store/document/slices/notebook/action.ts b/src/store/document/slices/notebook/action.ts index 3480996f70..3e484733b0 100644 --- a/src/store/document/slices/notebook/action.ts +++ b/src/store/document/slices/notebook/action.ts @@ -1,9 +1,9 @@ -import { DocumentType } from '@lobechat/builtin-tool-notebook'; -import { DocumentItem } from '@lobechat/database/schemas'; -import { NotebookDocument } from '@lobechat/types'; +import { type DocumentType } from '@lobechat/builtin-tool-notebook'; +import { type DocumentItem } from '@lobechat/database/schemas'; +import { type NotebookDocument } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; -import { SWRResponse, mutate } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse, mutate } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { notebookService } from '@/services/notebook'; diff --git a/src/store/document/slices/notebook/initialState.ts b/src/store/document/slices/notebook/initialState.ts index d42cf79bbc..84a479e1b1 100644 --- a/src/store/document/slices/notebook/initialState.ts +++ b/src/store/document/slices/notebook/initialState.ts @@ -1,4 +1,4 @@ -import { NotebookDocument } from '@lobechat/types'; +import { type NotebookDocument } from '@lobechat/types'; export interface NotebookState { /** diff --git a/src/store/document/store.ts b/src/store/document/store.ts index eb029f7476..5355c5369b 100644 --- a/src/store/document/store.ts +++ b/src/store/document/store.ts @@ -1,12 +1,12 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { EditorAction, EditorState, createEditorSlice, initialEditorState } from './slices/editor'; +import { type EditorAction, type EditorState, createEditorSlice, initialEditorState } from './slices/editor'; import { - NotebookAction, - NotebookState, + type NotebookAction, + type NotebookState, createNotebookSlice, initialNotebookState, } from './slices/notebook'; diff --git a/src/store/electron/actions/app.ts b/src/store/electron/actions/app.ts index a280d4f546..97ab34be31 100644 --- a/src/store/electron/actions/app.ts +++ b/src/store/electron/actions/app.ts @@ -1,6 +1,6 @@ -import { ElectronAppState } from '@lobechat/electron-client-ipc'; -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type ElectronAppState } from '@lobechat/electron-client-ipc'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useOnlyFetchOnceSWR } from '@/libs/swr'; // Import for type usage diff --git a/src/store/electron/actions/settings.ts b/src/store/electron/actions/settings.ts index 0d77a6682f..eda7d37eb0 100644 --- a/src/store/electron/actions/settings.ts +++ b/src/store/electron/actions/settings.ts @@ -1,6 +1,6 @@ -import { NetworkProxySettings, ShortcutUpdateResult } from '@lobechat/electron-client-ipc'; +import { type NetworkProxySettings, type ShortcutUpdateResult } from '@lobechat/electron-client-ipc'; import isEqual from 'fast-deep-equal'; -import useSWR, { SWRResponse } from 'swr'; +import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { mutate } from '@/libs/swr'; diff --git a/src/store/electron/actions/sync.ts b/src/store/electron/actions/sync.ts index 85883595d2..1b67eafe9e 100644 --- a/src/store/electron/actions/sync.ts +++ b/src/store/electron/actions/sync.ts @@ -1,6 +1,6 @@ -import { DataSyncConfig } from '@lobechat/electron-client-ipc'; +import { type DataSyncConfig } from '@lobechat/electron-client-ipc'; import isEqual from 'fast-deep-equal'; -import useSWR, { SWRResponse } from 'swr'; +import useSWR, { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { mutate } from '@/libs/swr'; diff --git a/src/store/electron/initialState.ts b/src/store/electron/initialState.ts index b8be3231ef..86ae6ac25b 100644 --- a/src/store/electron/initialState.ts +++ b/src/store/electron/initialState.ts @@ -1,7 +1,7 @@ import { - DataSyncConfig, - ElectronAppState, - NetworkProxySettings, + type DataSyncConfig, + type ElectronAppState, + type NetworkProxySettings, } from '@lobechat/electron-client-ipc'; export type RemoteServerError = 'CONFIG_ERROR' | 'AUTH_ERROR' | 'DISCONNECT_ERROR'; diff --git a/src/store/electron/selectors/desktopState.ts b/src/store/electron/selectors/desktopState.ts index 8e48a6a3fd..f9f991f93b 100644 --- a/src/store/electron/selectors/desktopState.ts +++ b/src/store/electron/selectors/desktopState.ts @@ -1,4 +1,4 @@ -import { ElectronState } from '@/store/electron/initialState'; +import { type ElectronState } from '@/store/electron/initialState'; const userPath = (s: ElectronState) => s.appState.userPath; const userHomePath = (s: ElectronState) => userPath(s)?.home || ''; diff --git a/src/store/electron/selectors/hotkey.ts b/src/store/electron/selectors/hotkey.ts index 968fc3fbbe..b69b7efd66 100644 --- a/src/store/electron/selectors/hotkey.ts +++ b/src/store/electron/selectors/hotkey.ts @@ -1,5 +1,5 @@ import { DEFAULT_DESKTOP_HOTKEY_CONFIG } from '@/const/desktop'; -import { ElectronState } from '@/store/electron/initialState'; +import { type ElectronState } from '@/store/electron/initialState'; import { merge } from '@/utils/merge'; const hotkeys = (s: ElectronState) => merge(DEFAULT_DESKTOP_HOTKEY_CONFIG, s.desktopHotkeys); diff --git a/src/store/electron/selectors/sync.ts b/src/store/electron/selectors/sync.ts index aa879f5bbf..62a5619ead 100644 --- a/src/store/electron/selectors/sync.ts +++ b/src/store/electron/selectors/sync.ts @@ -1,4 +1,4 @@ -import { ElectronState } from '../initialState'; +import { type ElectronState } from '../initialState'; const isSyncActive = (s: ElectronState) => s.dataSyncConfig.active; diff --git a/src/store/electron/store.ts b/src/store/electron/store.ts index 3b0969d097..ca31c0949c 100644 --- a/src/store/electron/store.ts +++ b/src/store/electron/store.ts @@ -1,6 +1,6 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; import { type ElectronAppAction, createElectronAppSlice } from './actions/app'; diff --git a/src/store/file/initialState.ts b/src/store/file/initialState.ts index 1b6f761154..15c7e38080 100644 --- a/src/store/file/initialState.ts +++ b/src/store/file/initialState.ts @@ -1,7 +1,7 @@ -import { ImageFileState, initialImageFileState } from './slices/chat'; -import { FileChunkState, initialFileChunkState } from './slices/chunk'; -import { DocumentState, initialDocumentState } from './slices/document'; -import { FileManagerState, initialFileManagerState } from './slices/fileManager'; +import { type ImageFileState, initialImageFileState } from './slices/chat'; +import { type FileChunkState, initialFileChunkState } from './slices/chunk'; +import { type DocumentState, initialDocumentState } from './slices/document'; +import { type FileManagerState, initialFileManagerState } from './slices/fileManager'; export type FilesStoreState = ImageFileState & DocumentState & diff --git a/src/store/file/reducers/uploadFileList.ts b/src/store/file/reducers/uploadFileList.ts index 44c0237b32..2869bff87b 100644 --- a/src/store/file/reducers/uploadFileList.ts +++ b/src/store/file/reducers/uploadFileList.ts @@ -1,6 +1,6 @@ import { produce } from 'immer'; -import { FileUploadState, FileUploadStatus, UploadFileItem } from '@/types/files/upload'; +import { type FileUploadState, type FileUploadStatus, type UploadFileItem } from '@/types/files/upload'; interface AddFile { atStart?: boolean; diff --git a/src/store/file/slices/chat/action.ts b/src/store/file/slices/chat/action.ts index 2169dea2db..8ed0a8bba1 100644 --- a/src/store/file/slices/chat/action.ts +++ b/src/store/file/slices/chat/action.ts @@ -1,6 +1,6 @@ -import { ChatContextContent } from '@lobechat/types'; +import { type ChatContextContent } from '@lobechat/types'; import { t } from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { notification } from '@/components/AntdStaticMethods'; import { FILE_UPLOAD_BLACKLIST } from '@/const/file'; @@ -8,16 +8,16 @@ import { fileService } from '@/services/file'; import { ragService } from '@/services/rag'; import { UPLOAD_NETWORK_ERROR } from '@/services/upload'; import { - UploadFileListDispatch, + type UploadFileListDispatch, uploadFileListReducer, } from '@/store/file/reducers/uploadFileList'; -import { FileListItem } from '@/types/files'; -import { UploadFileItem } from '@/types/files/upload'; +import { type FileListItem } from '@/types/files'; +import { type UploadFileItem } from '@/types/files/upload'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; import { sleep } from '@/utils/sleep'; import { setNamespace } from '@/utils/storeDebug'; -import { FileStore } from '../../store'; +import { type FileStore } from '../../store'; const n = setNamespace('chat'); diff --git a/src/store/file/slices/chat/initialState.ts b/src/store/file/slices/chat/initialState.ts index 32a5181903..5141f04fc0 100644 --- a/src/store/file/slices/chat/initialState.ts +++ b/src/store/file/slices/chat/initialState.ts @@ -1,6 +1,6 @@ -import { ChatContextContent } from '@lobechat/types'; +import { type ChatContextContent } from '@lobechat/types'; -import { UploadFileItem } from '@/types/files/upload'; +import { type UploadFileItem } from '@/types/files/upload'; export interface ImageFileState { chatContextSelections: ChatContextContent[]; diff --git a/src/store/file/slices/chat/selectors.ts b/src/store/file/slices/chat/selectors.ts index 3f56f65332..dec935219f 100644 --- a/src/store/file/slices/chat/selectors.ts +++ b/src/store/file/slices/chat/selectors.ts @@ -1,6 +1,6 @@ import { UPLOAD_STATUS_SET } from '@/types/files/upload'; -import { FilesStoreState } from '../../initialState'; +import { type FilesStoreState } from '../../initialState'; const chatUploadFileList = (s: FilesStoreState) => s.chatUploadFileList; const chatContextSelections = (s: FilesStoreState) => s.chatContextSelections; diff --git a/src/store/file/slices/chunk/action.ts b/src/store/file/slices/chunk/action.ts index 5a8be00cdc..c44680afdd 100644 --- a/src/store/file/slices/chunk/action.ts +++ b/src/store/file/slices/chunk/action.ts @@ -1,8 +1,8 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { ragService } from '@/services/rag'; -import { FileStore } from '../../store'; +import { type FileStore } from '../../store'; export interface FileChunkAction { closeChunkDrawer: () => void; diff --git a/src/store/file/slices/chunk/initialState.ts b/src/store/file/slices/chunk/initialState.ts index 82c5904d37..9f6fae4d10 100644 --- a/src/store/file/slices/chunk/initialState.ts +++ b/src/store/file/slices/chunk/initialState.ts @@ -1,4 +1,4 @@ -import { SemanticSearchChunk } from '@/types/chunk'; +import { type SemanticSearchChunk } from '@/types/chunk'; export interface FileChunkState { chunkDetailId: string | null; diff --git a/src/store/file/slices/chunk/selectors.ts b/src/store/file/slices/chunk/selectors.ts index 457dd21e29..93e7fc136f 100644 --- a/src/store/file/slices/chunk/selectors.ts +++ b/src/store/file/slices/chunk/selectors.ts @@ -1,5 +1,5 @@ // import { FileStore } from '../../store'; -import { FilesStoreState } from '@/store/file/initialState'; +import { type FilesStoreState } from '@/store/file/initialState'; const showSimilaritySearchResult = (s: FilesStoreState) => s.isSimilaritySearch; const enabledChunkFileId = (s: FilesStoreState) => s.chunkDetailId; diff --git a/src/store/file/slices/document/action.ts b/src/store/file/slices/document/action.ts index e044a67754..b9515554df 100644 --- a/src/store/file/slices/document/action.ts +++ b/src/store/file/slices/document/action.ts @@ -1,13 +1,13 @@ import { createNanoId } from '@lobechat/utils'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { documentService } from '@/services/document'; import { useGlobalStore } from '@/store/global'; -import { DocumentSourceType, LobeDocument } from '@/types/document'; +import { DocumentSourceType, type LobeDocument } from '@/types/document'; import { setNamespace } from '@/utils/storeDebug'; -import { FileStore } from '../../store'; -import { DocumentQueryFilter } from './initialState'; +import { type FileStore } from '../../store'; +import { type DocumentQueryFilter } from './initialState'; const n = setNamespace('document'); diff --git a/src/store/file/slices/document/initialState.ts b/src/store/file/slices/document/initialState.ts index 569b0a95a1..7408633658 100644 --- a/src/store/file/slices/document/initialState.ts +++ b/src/store/file/slices/document/initialState.ts @@ -1,4 +1,4 @@ -import { LobeDocument } from '@/types/document'; +import { type LobeDocument } from '@/types/document'; export interface DocumentQueryFilter { fileTypes?: string[]; diff --git a/src/store/file/slices/document/selectors.ts b/src/store/file/slices/document/selectors.ts index bc102fd06d..f6d4ff92fa 100644 --- a/src/store/file/slices/document/selectors.ts +++ b/src/store/file/slices/document/selectors.ts @@ -1,7 +1,7 @@ import { useGlobalStore } from '@/store/global'; -import { LobeDocument } from '@/types/document'; +import { type LobeDocument } from '@/types/document'; -import { FilesStoreState } from '../../initialState'; +import { type FilesStoreState } from '../../initialState'; const getDocumentById = (documentId: string | undefined) => (s: FilesStoreState) => { if (!documentId) return undefined; diff --git a/src/store/file/slices/fileManager/action.ts b/src/store/file/slices/fileManager/action.ts index a3bb0663ae..c20d17469a 100644 --- a/src/store/file/slices/fileManager/action.ts +++ b/src/store/file/slices/fileManager/action.ts @@ -1,21 +1,21 @@ import { buildFolderTree, sanitizeFolderName, topologicalSortFolders } from '@lobechat/utils'; import pMap from 'p-map'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { FILE_UPLOAD_BLACKLIST, MAX_UPLOAD_FILE_COUNT } from '@/const/file'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { FileService, fileService } from '@/services/file'; import { ragService } from '@/services/rag'; import { - UploadFileListDispatch, + type UploadFileListDispatch, uploadFileListReducer, } from '@/store/file/reducers/uploadFileList'; -import { FileListItem, QueryFileListParams } from '@/types/files'; +import { type FileListItem, type QueryFileListParams } from '@/types/files'; import { isChunkingUnsupported } from '@/utils/isChunkingUnsupported'; import { unzipFile } from '@/utils/unzipFile'; -import { FileStore } from '../../store'; +import { type FileStore } from '../../store'; import { fileManagerSelectors } from './selectors'; const serverFileService = new FileService(); diff --git a/src/store/file/slices/fileManager/initialState.ts b/src/store/file/slices/fileManager/initialState.ts index 1e70b558c5..eff994bdee 100644 --- a/src/store/file/slices/fileManager/initialState.ts +++ b/src/store/file/slices/fileManager/initialState.ts @@ -1,5 +1,5 @@ -import { FileListItem, QueryFileListParams } from '@/types/files'; -import { UploadFileItem } from '@/types/files/upload'; +import { type FileListItem, type QueryFileListParams } from '@/types/files'; +import { type UploadFileItem } from '@/types/files/upload'; export interface FileManagerState { creatingChunkingTaskIds: string[]; diff --git a/src/store/file/slices/fileManager/selectors.ts b/src/store/file/slices/fileManager/selectors.ts index 75934a43b9..652a09deec 100644 --- a/src/store/file/slices/fileManager/selectors.ts +++ b/src/store/file/slices/fileManager/selectors.ts @@ -1,6 +1,6 @@ // import { FileStore } from '../../store'; -import { FilesStoreState } from '@/store/file/initialState'; -import { FileUploadStatus } from '@/types/files/upload'; +import { type FilesStoreState } from '@/store/file/initialState'; +import { type FileUploadStatus } from '@/types/files/upload'; const uploadStatusArray = new Set(['uploading', 'pending', 'processing']); diff --git a/src/store/file/slices/tts/action.ts b/src/store/file/slices/tts/action.ts index 940d01f979..b032926fd7 100644 --- a/src/store/file/slices/tts/action.ts +++ b/src/store/file/slices/tts/action.ts @@ -1,11 +1,11 @@ -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { fileService } from '@/services/file'; -import { FileItem } from '@/types/files'; +import { type FileItem } from '@/types/files'; -import { FileStore } from '../../store'; +import { type FileStore } from '../../store'; const FETCH_TTS_FILE = 'fetchTTSFile'; diff --git a/src/store/file/slices/upload/action.ts b/src/store/file/slices/upload/action.ts index edab56f38d..ef31d88bdf 100644 --- a/src/store/file/slices/upload/action.ts +++ b/src/store/file/slices/upload/action.ts @@ -1,15 +1,15 @@ import { LOBE_CHAT_CLOUD } from '@lobechat/business-const'; import { t } from 'i18next'; import { sha256 } from 'js-sha256'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { message } from '@/components/AntdStaticMethods'; import { fileService } from '@/services/file'; import { uploadService } from '@/services/upload'; -import { FileMetadata, UploadFileItem } from '@/types/files'; +import { type FileMetadata, type UploadFileItem } from '@/types/files'; import { getImageDimensions } from '@/utils/client/imageDimensions'; -import { FileStore } from '../../store'; +import { type FileStore } from '../../store'; type OnStatusUpdate = ( data: diff --git a/src/store/file/store.ts b/src/store/file/store.ts index 046549d8bc..332cc64b4e 100644 --- a/src/store/file/store.ts +++ b/src/store/file/store.ts @@ -1,15 +1,15 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { FilesStoreState, initialState } from './initialState'; -import { FileAction, createFileSlice } from './slices/chat'; -import { FileChunkAction, createFileChunkSlice } from './slices/chunk'; -import { DocumentAction, createDocumentSlice } from './slices/document'; -import { FileManageAction, createFileManageSlice } from './slices/fileManager'; -import { TTSFileAction, createTTSFileSlice } from './slices/tts'; -import { FileUploadAction, createFileUploadSlice } from './slices/upload/action'; +import { type FilesStoreState, initialState } from './initialState'; +import { type FileAction, createFileSlice } from './slices/chat'; +import { type FileChunkAction, createFileChunkSlice } from './slices/chunk'; +import { type DocumentAction, createDocumentSlice } from './slices/document'; +import { type FileManageAction, createFileManageSlice } from './slices/fileManager'; +import { type TTSFileAction, createTTSFileSlice } from './slices/tts'; +import { type FileUploadAction, createFileUploadSlice } from './slices/upload/action'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/global/actions/general.ts b/src/store/global/actions/general.ts index 999822945f..d6985a4298 100644 --- a/src/store/global/actions/general.ts +++ b/src/store/global/actions/general.ts @@ -1,7 +1,7 @@ -import { ThemeMode } from 'antd-style'; +import { type ThemeMode } from 'antd-style'; import isEqual from 'fast-deep-equal'; import { gt, parse, valid } from 'semver'; -import { SWRResponse } from 'swr'; +import { type SWRResponse } from 'swr'; import type { StateCreator } from 'zustand/vanilla'; import { LOBE_THEME_APPEARANCE } from '@/const/theme'; @@ -9,7 +9,7 @@ import { CURRENT_VERSION, isDesktop } from '@/const/version'; import { useOnlyFetchOnceSWR } from '@/libs/swr'; import { globalService } from '@/services/global'; import type { SystemStatus } from '@/store/global/initialState'; -import { LocaleMode } from '@/types/locale'; +import { type LocaleMode } from '@/types/locale'; import { setCookie } from '@/utils/client/cookie'; import { switchLang } from '@/utils/client/switchLang'; import { merge } from '@/utils/merge'; diff --git a/src/store/global/initialState.ts b/src/store/global/initialState.ts index 41a2c8e11c..5035464762 100644 --- a/src/store/global/initialState.ts +++ b/src/store/global/initialState.ts @@ -1,8 +1,8 @@ import type { ThemeMode } from 'antd-style'; import type { NavigateFunction } from 'react-router-dom'; -import { DatabaseLoadingState, MigrationSQL, MigrationTableItem } from '@/types/clientDB'; -import { LocaleMode } from '@/types/locale'; +import { DatabaseLoadingState, type MigrationSQL, type MigrationTableItem } from '@/types/clientDB'; +import { type LocaleMode } from '@/types/locale'; import { SessionDefaultGroup } from '@/types/session'; import { AsyncLocalStorage } from '@/utils/localStorage'; diff --git a/src/store/global/selectors/clientDB.ts b/src/store/global/selectors/clientDB.ts index ec5eb76b76..2f20b85ba0 100644 --- a/src/store/global/selectors/clientDB.ts +++ b/src/store/global/selectors/clientDB.ts @@ -1,4 +1,4 @@ -import { GlobalState } from '@/store/global/initialState'; +import { type GlobalState } from '@/store/global/initialState'; const initClientDBMigrationSqls = (s: GlobalState) => { return s.initClientDBMigrations?.sqls || []; diff --git a/src/store/global/selectors/general.ts b/src/store/global/selectors/general.ts index f37cc309fe..d1c10078d0 100644 --- a/src/store/global/selectors/general.ts +++ b/src/store/global/selectors/general.ts @@ -1,8 +1,8 @@ import { DEFAULT_LANG } from '@/const/locale'; -import { Locales } from '@/locales/resources'; +import { type Locales } from '@/locales/resources'; import { isOnServerSide } from '@/utils/env'; -import { GlobalState } from '../initialState'; +import { type GlobalState } from '../initialState'; import { systemStatus } from './systemStatus'; const language = (s: GlobalState) => systemStatus(s).language || 'auto'; diff --git a/src/store/global/selectors/systemStatus.ts b/src/store/global/selectors/systemStatus.ts index e207d8d23a..c425d46d55 100644 --- a/src/store/global/selectors/systemStatus.ts +++ b/src/store/global/selectors/systemStatus.ts @@ -1,4 +1,4 @@ -import { GlobalState, INITIAL_STATUS } from '../initialState'; +import { type GlobalState, INITIAL_STATUS } from '../initialState'; export const systemStatus = (s: GlobalState) => s.status; diff --git a/src/store/global/store.ts b/src/store/global/store.ts index 7e67a77a03..f57cb92ab7 100644 --- a/src/store/global/store.ts +++ b/src/store/global/store.ts @@ -1,7 +1,7 @@ import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; import { type GlobalGeneralAction, generalActionSlice } from './actions/general'; diff --git a/src/store/home/initialState.ts b/src/store/home/initialState.ts index d63fd5d39c..50a204bebc 100644 --- a/src/store/home/initialState.ts +++ b/src/store/home/initialState.ts @@ -1,7 +1,7 @@ -import { AgentListState, initialAgentListState } from './slices/agentList/initialState'; -import { HomeInputState, initialHomeInputState } from './slices/homeInput/initialState'; -import { RecentState, initialRecentState } from './slices/recent/initialState'; -import { SidebarUIState, initialSidebarUIState } from './slices/sidebarUI/initialState'; +import { type AgentListState, initialAgentListState } from './slices/agentList/initialState'; +import { type HomeInputState, initialHomeInputState } from './slices/homeInput/initialState'; +import { type RecentState, initialRecentState } from './slices/recent/initialState'; +import { type SidebarUIState, initialSidebarUIState } from './slices/sidebarUI/initialState'; export interface HomeStoreState extends AgentListState, RecentState, HomeInputState, SidebarUIState {} diff --git a/src/store/home/slices/sidebarUI/action.ts b/src/store/home/slices/sidebarUI/action.ts index c7f2c72ded..2cba9c221c 100644 --- a/src/store/home/slices/sidebarUI/action.ts +++ b/src/store/home/slices/sidebarUI/action.ts @@ -1,6 +1,6 @@ /* eslint-disable sort-keys-fix/sort-keys-fix,typescript-sort-keys/interface */ import { t } from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { message } from '@/components/AntdStaticMethods'; import { agentService } from '@/services/agent'; @@ -9,7 +9,7 @@ import { homeService } from '@/services/home'; import { sessionService } from '@/services/session'; import type { HomeStore } from '@/store/home/store'; import { getSessionStoreState } from '@/store/session'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; import { setNamespace } from '@/utils/storeDebug'; const n = setNamespace('sidebarUI'); diff --git a/src/store/home/store.ts b/src/store/home/store.ts index 42a3f68f31..5744eb46cd 100644 --- a/src/store/home/store.ts +++ b/src/store/home/store.ts @@ -6,12 +6,12 @@ import type { StateCreator } from 'zustand/vanilla'; import { isDev } from '@/utils/env'; import { createDevtools } from '../middleware/createDevtools'; -import { HomeStoreState, initialState } from './initialState'; -import { AgentListAction, createAgentListSlice } from './slices/agentList/action'; -import { GroupAction, createGroupSlice } from './slices/group/action'; -import { HomeInputAction, createHomeInputSlice } from './slices/homeInput/action'; -import { RecentAction, createRecentSlice } from './slices/recent/action'; -import { SidebarUIAction, createSidebarUISlice } from './slices/sidebarUI/action'; +import { type HomeStoreState, initialState } from './initialState'; +import { type AgentListAction, createAgentListSlice } from './slices/agentList/action'; +import { type GroupAction, createGroupSlice } from './slices/group/action'; +import { type HomeInputAction, createHomeInputSlice } from './slices/homeInput/action'; +import { type RecentAction, createRecentSlice } from './slices/recent/action'; +import { type SidebarUIAction, createSidebarUISlice } from './slices/sidebarUI/action'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/image/initialState.ts b/src/store/image/initialState.ts index 1ffce55693..11f7bacaaa 100644 --- a/src/store/image/initialState.ts +++ b/src/store/image/initialState.ts @@ -1,14 +1,14 @@ -import { CreateImageState, initialCreateImageState } from './slices/createImage/initialState'; +import { type CreateImageState, initialCreateImageState } from './slices/createImage/initialState'; import { - GenerationBatchState, + type GenerationBatchState, initialGenerationBatchState, } from './slices/generationBatch/initialState'; import { - GenerationConfigState, + type GenerationConfigState, initialGenerationConfigState, } from './slices/generationConfig/initialState'; import { - GenerationTopicState, + type GenerationTopicState, initialGenerationTopicState, } from './slices/generationTopic/initialState'; diff --git a/src/store/image/slices/createImage/action.ts b/src/store/image/slices/createImage/action.ts index 6cd4e2ca4c..1eaa1854e7 100644 --- a/src/store/image/slices/createImage/action.ts +++ b/src/store/image/slices/createImage/action.ts @@ -1,8 +1,8 @@ -import { StateCreator } from 'zustand'; +import { type StateCreator } from 'zustand'; import { imageService } from '@/services/image'; -import { ImageStore } from '../../store'; +import { type ImageStore } from '../../store'; import { generationBatchSelectors } from '../generationBatch/selectors'; import { imageGenerationConfigSelectors } from '../generationConfig/selectors'; import { generationTopicSelectors } from '../generationTopic'; diff --git a/src/store/image/slices/createImage/selectors.ts b/src/store/image/slices/createImage/selectors.ts index 9c1dcced2a..6f4abc3663 100644 --- a/src/store/image/slices/createImage/selectors.ts +++ b/src/store/image/slices/createImage/selectors.ts @@ -1,4 +1,4 @@ -import { ImageStore } from '../../store'; +import { type ImageStore } from '../../store'; const isCreating = (state: ImageStore) => state.isCreating; const isCreatingWithNewTopic = (state: ImageStore) => state.isCreatingWithNewTopic; diff --git a/src/store/image/slices/generationBatch/action.ts b/src/store/image/slices/generationBatch/action.ts index e9bf748284..e6173672ee 100644 --- a/src/store/image/slices/generationBatch/action.ts +++ b/src/store/image/slices/generationBatch/action.ts @@ -1,19 +1,19 @@ import { isEqual } from 'es-toolkit/compat'; import { useRef } from 'react'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand'; +import { type StateCreator } from 'zustand'; import { mutate, useClientDataSWR } from '@/libs/swr'; -import { GetGenerationStatusResult } from '@/server/routers/lambda/generation'; +import { type GetGenerationStatusResult } from '@/server/routers/lambda/generation'; import { generationService } from '@/services/generation'; import { generationBatchService } from '@/services/generationBatch'; import { AsyncTaskStatus } from '@/types/asyncTask'; -import { GenerationBatch } from '@/types/generation'; +import { type GenerationBatch } from '@/types/generation'; import { setNamespace } from '@/utils/storeDebug'; -import { ImageStore } from '../../store'; +import { type ImageStore } from '../../store'; import { generationTopicSelectors } from '../generationTopic/selectors'; -import { GenerationBatchDispatch, generationBatchReducer } from './reducer'; +import { type GenerationBatchDispatch, generationBatchReducer } from './reducer'; const n = setNamespace('generationBatch'); diff --git a/src/store/image/slices/generationBatch/initialState.ts b/src/store/image/slices/generationBatch/initialState.ts index 0fc103f3bf..1a50e516db 100644 --- a/src/store/image/slices/generationBatch/initialState.ts +++ b/src/store/image/slices/generationBatch/initialState.ts @@ -1,4 +1,4 @@ -import { GenerationBatch } from '@/types/generation'; +import { type GenerationBatch } from '@/types/generation'; export interface GenerationBatchState { /** diff --git a/src/store/image/slices/generationBatch/reducer.ts b/src/store/image/slices/generationBatch/reducer.ts index f45ddb000d..2cb10d38ef 100644 --- a/src/store/image/slices/generationBatch/reducer.ts +++ b/src/store/image/slices/generationBatch/reducer.ts @@ -1,6 +1,6 @@ import { produce } from 'immer'; -import { Generation, GenerationBatch } from '@/types/generation'; +import { type Generation, type GenerationBatch } from '@/types/generation'; interface UpdateGenerationInBatchAction { batchId: string; diff --git a/src/store/image/slices/generationBatch/selectors.ts b/src/store/image/slices/generationBatch/selectors.ts index ea04989136..1191521741 100644 --- a/src/store/image/slices/generationBatch/selectors.ts +++ b/src/store/image/slices/generationBatch/selectors.ts @@ -1,6 +1,6 @@ -import { GenerationBatch } from '@/types/generation'; +import { type GenerationBatch } from '@/types/generation'; -import { ImageStoreState } from '../../initialState'; +import { type ImageStoreState } from '../../initialState'; import { generationTopicSelectors } from '../generationTopic/selectors'; // ====== topic batch selectors ====== // diff --git a/src/store/image/slices/generationConfig/action.ts b/src/store/image/slices/generationConfig/action.ts index 279fc51df5..4b1565f662 100644 --- a/src/store/image/slices/generationConfig/action.ts +++ b/src/store/image/slices/generationConfig/action.ts @@ -1,12 +1,12 @@ import { - AIImageModelCard, - ModelParamsSchema, - RuntimeImageGenParams, - RuntimeImageGenParamsKeys, - RuntimeImageGenParamsValue, + type AIImageModelCard, + type ModelParamsSchema, + type RuntimeImageGenParams, + type RuntimeImageGenParamsKeys, + type RuntimeImageGenParamsValue, extractDefaultValues, } from 'model-bank'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { aiProviderSelectors, getAiInfraStoreState } from '@/store/aiInfra'; import { useGlobalStore } from '@/store/global'; diff --git a/src/store/image/slices/generationConfig/hooks.ts b/src/store/image/slices/generationConfig/hooks.ts index e09b9b707e..4d91599fac 100644 --- a/src/store/image/slices/generationConfig/hooks.ts +++ b/src/store/image/slices/generationConfig/hooks.ts @@ -1,8 +1,8 @@ import { DEFAULT_ASPECT_RATIO, PRESET_ASPECT_RATIOS, - RuntimeImageGenParams, - RuntimeImageGenParamsKeys, + type RuntimeImageGenParams, + type RuntimeImageGenParamsKeys, } from 'model-bank'; import { useCallback, useMemo } from 'react'; diff --git a/src/store/image/slices/generationConfig/initialState.ts b/src/store/image/slices/generationConfig/initialState.ts index 2b101b203d..6114cf7633 100644 --- a/src/store/image/slices/generationConfig/initialState.ts +++ b/src/store/image/slices/generationConfig/initialState.ts @@ -1,8 +1,8 @@ /* eslint-disable sort-keys-fix/sort-keys-fix, typescript-sort-keys/interface */ import { - ModelParamsSchema, + type ModelParamsSchema, ModelProvider, - RuntimeImageGenParams, + type RuntimeImageGenParams, extractDefaultValues, gptImage1ParamsSchema, } from 'model-bank'; diff --git a/src/store/image/slices/generationConfig/selectors.ts b/src/store/image/slices/generationConfig/selectors.ts index ea20430be2..e1cb6ae4f5 100644 --- a/src/store/image/slices/generationConfig/selectors.ts +++ b/src/store/image/slices/generationConfig/selectors.ts @@ -1,6 +1,6 @@ -import { RuntimeImageGenParamsKeys } from 'model-bank'; +import { type RuntimeImageGenParamsKeys } from 'model-bank'; -import { GenerationConfigState } from './initialState'; +import { type GenerationConfigState } from './initialState'; export const model = (s: GenerationConfigState) => s.model; export const provider = (s: GenerationConfigState) => s.provider; diff --git a/src/store/image/slices/generationTopic/action.ts b/src/store/image/slices/generationTopic/action.ts index c64204a4c5..fb2a669684 100644 --- a/src/store/image/slices/generationTopic/action.ts +++ b/src/store/image/slices/generationTopic/action.ts @@ -1,22 +1,22 @@ import { chainSummaryGenerationTitle } from '@lobechat/prompts'; import isEqual from 'fast-deep-equal'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { LOADING_FLAT } from '@/const/message'; import { mutate, useClientDataSWR } from '@/libs/swr'; -import { UpdateTopicValue } from '@/server/routers/lambda/generationTopic'; +import { type UpdateTopicValue } from '@/server/routers/lambda/generationTopic'; import { chatService } from '@/services/chat'; import { generationTopicService } from '@/services/generationTopic'; import { globalHelpers } from '@/store/global/helpers'; import { useUserStore } from '@/store/user'; import { systemAgentSelectors } from '@/store/user/selectors'; -import { ImageGenerationTopic } from '@/types/generation'; +import { type ImageGenerationTopic } from '@/types/generation'; import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; import type { ImageStore } from '../../store'; -import { GenerationTopicDispatch, generationTopicReducer } from './reducer'; +import { type GenerationTopicDispatch, generationTopicReducer } from './reducer'; import { generationTopicSelectors } from './selectors'; const FETCH_GENERATION_TOPICS_KEY = 'fetchGenerationTopics'; diff --git a/src/store/image/slices/generationTopic/initialState.ts b/src/store/image/slices/generationTopic/initialState.ts index 0ff5acb0dd..2208aa6e61 100644 --- a/src/store/image/slices/generationTopic/initialState.ts +++ b/src/store/image/slices/generationTopic/initialState.ts @@ -1,4 +1,4 @@ -import { ImageGenerationTopic } from '@/types/generation'; +import { type ImageGenerationTopic } from '@/types/generation'; export interface GenerationTopicState { activeGenerationTopicId: string | null; diff --git a/src/store/image/slices/generationTopic/reducer.ts b/src/store/image/slices/generationTopic/reducer.ts index d2c6f13656..537c29103a 100644 --- a/src/store/image/slices/generationTopic/reducer.ts +++ b/src/store/image/slices/generationTopic/reducer.ts @@ -1,7 +1,7 @@ import { produce } from 'immer'; -import { UpdateTopicValue } from '@/server/routers/lambda/generationTopic'; -import { ImageGenerationTopic } from '@/types/generation'; +import { type UpdateTopicValue } from '@/server/routers/lambda/generationTopic'; +import { type ImageGenerationTopic } from '@/types/generation'; interface AddGenerationTopicAction { type: 'addTopic'; diff --git a/src/store/image/slices/generationTopic/selectors.ts b/src/store/image/slices/generationTopic/selectors.ts index 975d48d6f1..cf1842fb07 100644 --- a/src/store/image/slices/generationTopic/selectors.ts +++ b/src/store/image/slices/generationTopic/selectors.ts @@ -1,4 +1,4 @@ -import { ImageStoreState } from '../../initialState'; +import { type ImageStoreState } from '../../initialState'; const activeGenerationTopicId = (s: ImageStoreState) => s.activeGenerationTopicId; const generationTopics = (s: ImageStoreState) => s.generationTopics; diff --git a/src/store/image/store.ts b/src/store/image/store.ts index 69e5b2ea9b..f37b81b149 100644 --- a/src/store/image/store.ts +++ b/src/store/image/store.ts @@ -1,17 +1,17 @@ import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { ImageStoreState, initialState } from './initialState'; -import { CreateImageAction, createCreateImageSlice } from './slices/createImage/action'; -import { GenerationBatchAction, createGenerationBatchSlice } from './slices/generationBatch/action'; +import { type ImageStoreState, initialState } from './initialState'; +import { type CreateImageAction, createCreateImageSlice } from './slices/createImage/action'; +import { type GenerationBatchAction, createGenerationBatchSlice } from './slices/generationBatch/action'; import { - GenerationConfigAction, + type GenerationConfigAction, createGenerationConfigSlice, } from './slices/generationConfig/action'; -import { GenerationTopicAction, createGenerationTopicSlice } from './slices/generationTopic/action'; +import { type GenerationTopicAction, createGenerationTopicSlice } from './slices/generationTopic/action'; // =============== aggregate createStoreFn ============ // diff --git a/src/store/image/utils/aspectRatio.ts b/src/store/image/utils/aspectRatio.ts index 39d05679bb..f00cc10ce5 100644 --- a/src/store/image/utils/aspectRatio.ts +++ b/src/store/image/utils/aspectRatio.ts @@ -1,4 +1,4 @@ -import { ModelParamsSchema } from 'model-bank'; +import { type ModelParamsSchema } from 'model-bank'; /** * Calculate initial aspect ratio for image generation models diff --git a/src/store/knowledgeBase/initialState.ts b/src/store/knowledgeBase/initialState.ts index 75a39c8c4a..71ad0ca612 100644 --- a/src/store/knowledgeBase/initialState.ts +++ b/src/store/knowledgeBase/initialState.ts @@ -1,5 +1,5 @@ -import { KnowledgeBaseState, initialKnowledgeBaseState } from '../knowledgeBase/slices/crud'; -import { RAGEvalState, initialDatasetState } from '../knowledgeBase/slices/ragEval'; +import { type KnowledgeBaseState, initialKnowledgeBaseState } from '../knowledgeBase/slices/crud'; +import { type RAGEvalState, initialDatasetState } from '../knowledgeBase/slices/ragEval'; export type KnowledgeBaseStoreState = KnowledgeBaseState & RAGEvalState; diff --git a/src/store/knowledgeBase/slices/content/action.ts b/src/store/knowledgeBase/slices/content/action.ts index 8e147bdf2f..da5845b71a 100644 --- a/src/store/knowledgeBase/slices/content/action.ts +++ b/src/store/knowledgeBase/slices/content/action.ts @@ -1,8 +1,8 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { knowledgeBaseService } from '@/services/knowledgeBase'; import { useFileStore } from '@/store/file'; -import { KnowledgeBaseStore } from '@/store/knowledgeBase/store'; +import { type KnowledgeBaseStore } from '@/store/knowledgeBase/store'; export interface KnowledgeBaseContentAction { addFilesToKnowledgeBase: (knowledgeBaseId: string, ids: string[]) => Promise; diff --git a/src/store/knowledgeBase/slices/crud/action.ts b/src/store/knowledgeBase/slices/crud/action.ts index 139d151a1f..11fef363a6 100644 --- a/src/store/knowledgeBase/slices/crud/action.ts +++ b/src/store/knowledgeBase/slices/crud/action.ts @@ -1,10 +1,10 @@ import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { knowledgeBaseService } from '@/services/knowledgeBase'; -import { KnowledgeBaseStore } from '@/store/knowledgeBase/store'; -import { CreateKnowledgeBaseParams, KnowledgeBaseItem } from '@/types/knowledgeBase'; +import { type KnowledgeBaseStore } from '@/store/knowledgeBase/store'; +import { type CreateKnowledgeBaseParams, type KnowledgeBaseItem } from '@/types/knowledgeBase'; const FETCH_KNOWLEDGE_BASE_LIST_KEY = 'FETCH_KNOWLEDGE_BASE'; const FETCH_KNOWLEDGE_BASE_ITEM_KEY = 'FETCH_KNOWLEDGE_BASE_ITEM'; diff --git a/src/store/knowledgeBase/slices/crud/initialState.ts b/src/store/knowledgeBase/slices/crud/initialState.ts index c49424ea13..738c57d886 100644 --- a/src/store/knowledgeBase/slices/crud/initialState.ts +++ b/src/store/knowledgeBase/slices/crud/initialState.ts @@ -1,4 +1,4 @@ -import { KnowledgeBaseItem } from '@/types/knowledgeBase'; +import { type KnowledgeBaseItem } from '@/types/knowledgeBase'; export interface KnowledgeBaseState { activeKnowledgeBaseId: string | null; diff --git a/src/store/knowledgeBase/slices/crud/selectors.ts b/src/store/knowledgeBase/slices/crud/selectors.ts index 5d7af03f23..0300643b15 100644 --- a/src/store/knowledgeBase/slices/crud/selectors.ts +++ b/src/store/knowledgeBase/slices/crud/selectors.ts @@ -1,4 +1,4 @@ -import { KnowledgeBaseStoreState } from '@/store/knowledgeBase/initialState'; +import { type KnowledgeBaseStoreState } from '@/store/knowledgeBase/initialState'; const activeKnowledgeBaseId = (s: KnowledgeBaseStoreState) => s.activeKnowledgeBaseId; diff --git a/src/store/knowledgeBase/slices/ragEval/actions/dataset.ts b/src/store/knowledgeBase/slices/ragEval/actions/dataset.ts index 34c15ab5cb..b5cdab0fb9 100644 --- a/src/store/knowledgeBase/slices/ragEval/actions/dataset.ts +++ b/src/store/knowledgeBase/slices/ragEval/actions/dataset.ts @@ -1,17 +1,17 @@ import { - CreateNewEvalDatasets, - EvalDatasetRecord, - RAGEvalDataSetItem, + type CreateNewEvalDatasets, + type EvalDatasetRecord, + type RAGEvalDataSetItem, insertEvalDatasetRecordSchema, } from '@lobechat/types'; import i18n from 'i18next'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { notification } from '@/components/AntdStaticMethods'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { ragEvalService } from '@/services/ragEval'; -import { KnowledgeBaseStore } from '@/store/knowledgeBase/store'; +import { type KnowledgeBaseStore } from '@/store/knowledgeBase/store'; const FETCH_DATASET_LIST_KEY = 'FETCH_DATASET_LIST'; const FETCH_DATASET_RECORD_KEY = 'FETCH_DATASET_RECORD_KEY'; diff --git a/src/store/knowledgeBase/slices/ragEval/actions/evaluation.ts b/src/store/knowledgeBase/slices/ragEval/actions/evaluation.ts index 50d41dc5c8..274a6104fa 100644 --- a/src/store/knowledgeBase/slices/ragEval/actions/evaluation.ts +++ b/src/store/knowledgeBase/slices/ragEval/actions/evaluation.ts @@ -1,10 +1,10 @@ -import { CreateNewEvalEvaluation, RAGEvalDataSetItem } from '@lobechat/types'; +import { type CreateNewEvalEvaluation, type RAGEvalDataSetItem } from '@lobechat/types'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR } from '@/libs/swr'; import { ragEvalService } from '@/services/ragEval'; -import { KnowledgeBaseStore } from '@/store/knowledgeBase/store'; +import { type KnowledgeBaseStore } from '@/store/knowledgeBase/store'; const FETCH_EVALUATION_LIST_KEY = 'FETCH_EVALUATION_LIST_KEY'; diff --git a/src/store/knowledgeBase/slices/ragEval/actions/index.ts b/src/store/knowledgeBase/slices/ragEval/actions/index.ts index d50a0d19b5..87895a5826 100644 --- a/src/store/knowledgeBase/slices/ragEval/actions/index.ts +++ b/src/store/knowledgeBase/slices/ragEval/actions/index.ts @@ -1,9 +1,9 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { KnowledgeBaseStore } from '@/store/knowledgeBase/store'; +import { type KnowledgeBaseStore } from '@/store/knowledgeBase/store'; -import { RAGEvalDatasetAction, createRagEvalDatasetSlice } from './dataset'; -import { RAGEvalEvaluationAction, createRagEvalEvaluationSlice } from './evaluation'; +import { type RAGEvalDatasetAction, createRagEvalDatasetSlice } from './dataset'; +import { type RAGEvalEvaluationAction, createRagEvalEvaluationSlice } from './evaluation'; export interface RAGEvalAction extends RAGEvalDatasetAction, RAGEvalEvaluationAction { // empty diff --git a/src/store/knowledgeBase/store.ts b/src/store/knowledgeBase/store.ts index 76887683d6..c8208709ed 100644 --- a/src/store/knowledgeBase/store.ts +++ b/src/store/knowledgeBase/store.ts @@ -1,12 +1,12 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { KnowledgeBaseStoreState, initialState } from './initialState'; -import { KnowledgeBaseContentAction, createContentSlice } from './slices/content'; -import { KnowledgeBaseCrudAction, createCrudSlice } from './slices/crud'; -import { RAGEvalAction, createRagEvalSlice } from './slices/ragEval'; +import { type KnowledgeBaseStoreState, initialState } from './initialState'; +import { type KnowledgeBaseContentAction, createContentSlice } from './slices/content'; +import { type KnowledgeBaseCrudAction, createCrudSlice } from './slices/crud'; +import { type RAGEvalAction, createRagEvalSlice } from './slices/ragEval'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/mention/action.ts b/src/store/mention/action.ts index e06fcce6f9..1e8f28dcd8 100644 --- a/src/store/mention/action.ts +++ b/src/store/mention/action.ts @@ -1,6 +1,6 @@ -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; -import { MentionState, initialMentionState } from './initialState'; +import { type MentionState, initialMentionState } from './initialState'; export interface MentionAction { addMentionedUser: (userId: string) => void; diff --git a/src/store/mention/selectors.ts b/src/store/mention/selectors.ts index bc21236636..8b483ce44a 100644 --- a/src/store/mention/selectors.ts +++ b/src/store/mention/selectors.ts @@ -1,4 +1,4 @@ -import { MentionState } from './initialState'; +import { type MentionState } from './initialState'; const mentionedUsers = (s: MentionState) => s.mentionedUsers; const hasMentionedUsers = (s: MentionState) => s.mentionedUsers.length > 0; diff --git a/src/store/mention/store.ts b/src/store/mention/store.ts index 18feced794..7e02c99709 100644 --- a/src/store/mention/store.ts +++ b/src/store/mention/store.ts @@ -1,10 +1,10 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { MentionAction, createMentionSlice } from './action'; -import { MentionState, initialMentionState } from './initialState'; +import { type MentionAction, createMentionSlice } from './action'; +import { type MentionState, initialMentionState } from './initialState'; export type MentionStore = MentionState & MentionAction; diff --git a/src/store/middleware/createDevtools.ts b/src/store/middleware/createDevtools.ts index 2fcbab5ae4..9384b9152f 100644 --- a/src/store/middleware/createDevtools.ts +++ b/src/store/middleware/createDevtools.ts @@ -1,5 +1,5 @@ import { optionalDevtools } from 'zustand-utils'; -import { devtools as _devtools } from 'zustand/middleware'; +import { type devtools as _devtools } from 'zustand/middleware'; import { isDev } from '@/utils/env'; diff --git a/src/store/notebook/action.ts b/src/store/notebook/action.ts index 40888a0fcc..70ceabfcc7 100644 --- a/src/store/notebook/action.ts +++ b/src/store/notebook/action.ts @@ -1,9 +1,9 @@ -import { DocumentType } from '@lobechat/builtin-tool-notebook'; -import { DocumentItem } from '@lobechat/database/schemas'; -import { NotebookDocument } from '@lobechat/types'; +import { type DocumentType } from '@lobechat/builtin-tool-notebook'; +import { type DocumentItem } from '@lobechat/database/schemas'; +import { type NotebookDocument } from '@lobechat/types'; import isEqual from 'fast-deep-equal'; -import { SWRResponse, mutate } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse, mutate } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { notebookService } from '@/services/notebook'; diff --git a/src/store/notebook/initialState.ts b/src/store/notebook/initialState.ts index d42cf79bbc..84a479e1b1 100644 --- a/src/store/notebook/initialState.ts +++ b/src/store/notebook/initialState.ts @@ -1,4 +1,4 @@ -import { NotebookDocument } from '@lobechat/types'; +import { type NotebookDocument } from '@lobechat/types'; export interface NotebookState { /** diff --git a/src/store/notebook/store.ts b/src/store/notebook/store.ts index 64170a501e..35edec2f4c 100644 --- a/src/store/notebook/store.ts +++ b/src/store/notebook/store.ts @@ -1,10 +1,10 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { NotebookAction, createNotebookAction } from './action'; -import { NotebookState, initialNotebookState } from './initialState'; +import { type NotebookAction, createNotebookAction } from './action'; +import { type NotebookState, initialNotebookState } from './initialState'; export type NotebookStore = NotebookState & NotebookAction; diff --git a/src/store/serverConfig/Provider.tsx b/src/store/serverConfig/Provider.tsx index 3f3aecde84..10364093bc 100644 --- a/src/store/serverConfig/Provider.tsx +++ b/src/store/serverConfig/Provider.tsx @@ -1,9 +1,9 @@ 'use client'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; -import { IFeatureFlags, mapFeatureFlagsEnvToState } from '@/config/featureFlags'; -import { GlobalServerConfig } from '@/types/serverConfig'; +import { type IFeatureFlags, mapFeatureFlagsEnvToState } from '@/config/featureFlags'; +import { type GlobalServerConfig } from '@/types/serverConfig'; import { Provider, createServerConfigStore } from './store'; diff --git a/src/store/serverConfig/action.ts b/src/store/serverConfig/action.ts index 7519f9396b..792010f653 100644 --- a/src/store/serverConfig/action.ts +++ b/src/store/serverConfig/action.ts @@ -1,9 +1,9 @@ -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useOnlyFetchOnceSWR } from '@/libs/swr'; import { globalService } from '@/services/global'; -import { GlobalRuntimeConfig } from '@/types/serverConfig'; +import { type GlobalRuntimeConfig } from '@/types/serverConfig'; import type { ServerConfigStore } from './store'; diff --git a/src/store/serverConfig/selectors.ts b/src/store/serverConfig/selectors.ts index 8a02d1ed4d..47bb0fdc74 100644 --- a/src/store/serverConfig/selectors.ts +++ b/src/store/serverConfig/selectors.ts @@ -1,4 +1,4 @@ -import { ServerConfigStore } from './store'; +import { type ServerConfigStore } from './store'; export const featureFlagsSelectors = (s: ServerConfigStore) => s.featureFlags; diff --git a/src/store/serverConfig/store.ts b/src/store/serverConfig/store.ts index a6d37fa914..fe0e247c4c 100644 --- a/src/store/serverConfig/store.ts +++ b/src/store/serverConfig/store.ts @@ -1,20 +1,20 @@ -import { StoreApiWithSelector } from '@lobechat/types'; -import { StoreApi } from 'zustand'; +import { type StoreApiWithSelector } from '@lobechat/types'; +import { type StoreApi } from 'zustand'; import { createContext } from 'zustand-utils'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { DEFAULT_FEATURE_FLAGS, - IFeatureFlagsState, + type IFeatureFlagsState, mapFeatureFlagsEnvToState, } from '@/config/featureFlags'; import { createDevtools } from '@/store/middleware/createDevtools'; -import { GlobalServerConfig } from '@/types/serverConfig'; +import { type GlobalServerConfig } from '@/types/serverConfig'; import { merge } from '@/utils/merge'; -import { ServerConfigAction, createServerConfigSlice } from './action'; +import { type ServerConfigAction, createServerConfigSlice } from './action'; interface ServerConfigState { featureFlags: IFeatureFlagsState; diff --git a/src/store/session/initialState.ts b/src/store/session/initialState.ts index c9541a91a9..d887e1feee 100644 --- a/src/store/session/initialState.ts +++ b/src/store/session/initialState.ts @@ -1,7 +1,7 @@ -import { HomeInputState, initialHomeInputState } from './slices/homeInput/initialState'; -import { RecentState, initialRecentState } from './slices/recent/initialState'; -import { SessionState, initialSessionState } from './slices/session/initialState'; -import { SessionGroupState, initSessionGroupState } from './slices/sessionGroup/initialState'; +import { type HomeInputState, initialHomeInputState } from './slices/homeInput/initialState'; +import { type RecentState, initialRecentState } from './slices/recent/initialState'; +import { type SessionState, initialSessionState } from './slices/session/initialState'; +import { type SessionGroupState, initSessionGroupState } from './slices/sessionGroup/initialState'; export interface SessionStoreState extends SessionGroupState, SessionState, RecentState, HomeInputState {} diff --git a/src/store/session/slices/recent/action.ts b/src/store/session/slices/recent/action.ts index c5e6acb7fc..cfce538b05 100644 --- a/src/store/session/slices/recent/action.ts +++ b/src/store/session/slices/recent/action.ts @@ -1,15 +1,15 @@ import isEqual from 'fast-deep-equal'; -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWR } from '@/libs/swr'; import { fileService } from '@/services/file'; import { topicService } from '@/services/topic'; -import { FileListItem } from '@/types/files'; -import { RecentTopic } from '@/types/topic'; +import { type FileListItem } from '@/types/files'; +import { type RecentTopic } from '@/types/topic'; import { setNamespace } from '@/utils/storeDebug'; -import { SessionStore } from '../../store'; +import { type SessionStore } from '../../store'; const n = setNamespace('recent'); diff --git a/src/store/session/slices/recent/initialState.ts b/src/store/session/slices/recent/initialState.ts index 677e081513..d8a5917cd6 100644 --- a/src/store/session/slices/recent/initialState.ts +++ b/src/store/session/slices/recent/initialState.ts @@ -1,5 +1,5 @@ -import { FileListItem } from '@/types/files'; -import { RecentTopic } from '@/types/topic'; +import { type FileListItem } from '@/types/files'; +import { type RecentTopic } from '@/types/topic'; export interface RecentState { isRecentPagesInit: boolean; diff --git a/src/store/session/slices/recent/selectors.ts b/src/store/session/slices/recent/selectors.ts index 588cb199ef..0e8671086d 100644 --- a/src/store/session/slices/recent/selectors.ts +++ b/src/store/session/slices/recent/selectors.ts @@ -1,4 +1,4 @@ -import { SessionStoreState } from '../../initialState'; +import { type SessionStoreState } from '../../initialState'; const isRecentTopicsInit = (s: SessionStoreState) => s.isRecentTopicsInit; const isRecentResourcesInit = (s: SessionStoreState) => s.isRecentResourcesInit; diff --git a/src/store/session/slices/session/action.ts b/src/store/session/slices/session/action.ts index 707a51cd23..3383758be4 100644 --- a/src/store/session/slices/session/action.ts +++ b/src/store/session/slices/session/action.ts @@ -1,9 +1,9 @@ import { getSingletonAnalyticsOptional } from '@lobehub/analytics'; import isEqual from 'fast-deep-equal'; import { t } from 'i18next'; -import useSWR, { SWRResponse } from 'swr'; +import useSWR, { type SWRResponse } from 'swr'; import type { PartialDeep } from 'type-fest'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { message } from '@/components/AntdStaticMethods'; import { DEFAULT_AGENT_LOBE_SESSION, INBOX_SESSION_ID } from '@/const/session'; @@ -12,21 +12,21 @@ import { mutate, useClientDataSWR } from '@/libs/swr'; import { chatGroupService } from '@/services/chatGroup'; import { sessionService } from '@/services/session'; import { getChatGroupStoreState } from '@/store/agentGroup'; -import { SessionStore } from '@/store/session'; +import { type SessionStore } from '@/store/session'; import { getUserStoreState, useUserStore } from '@/store/user'; import { settingsSelectors, userProfileSelectors } from '@/store/user/selectors'; import { - ChatSessionList, - LobeAgentSession, - LobeSessionGroups, + type ChatSessionList, + type LobeAgentSession, + type LobeSessionGroups, LobeSessionType, - LobeSessions, - UpdateSessionParams, + type LobeSessions, + type UpdateSessionParams, } from '@/types/session'; import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; -import { SessionDispatch, sessionsReducer } from './reducers'; +import { type SessionDispatch, sessionsReducer } from './reducers'; import { sessionSelectors } from './selectors'; import { sessionMetaSelectors } from './selectors/meta'; diff --git a/src/store/session/slices/session/helpers.ts b/src/store/session/slices/session/helpers.ts index 522953888b..9fe9b46dd5 100644 --- a/src/store/session/slices/session/helpers.ts +++ b/src/store/session/slices/session/helpers.ts @@ -2,8 +2,8 @@ import { t } from 'i18next'; import { DEFAULT_AVATAR } from '@/const/meta'; import { DEFAULT_AGENT_LOBE_SESSION } from '@/const/session'; -import { MetaData } from '@/types/meta'; -import { LobeAgentSession, LobeGroupSession, LobeSession, LobeSessions } from '@/types/session'; +import { type MetaData } from '@/types/meta'; +import { type LobeAgentSession, type LobeGroupSession, type LobeSession, type LobeSessions } from '@/types/session'; export const getSessionPinned = (session: LobeSession) => session.pinned; diff --git a/src/store/session/slices/session/initialState.ts b/src/store/session/slices/session/initialState.ts index e8c15669aa..6b1479e532 100644 --- a/src/store/session/slices/session/initialState.ts +++ b/src/store/session/slices/session/initialState.ts @@ -1,4 +1,4 @@ -import { LobeSessions } from '@/types/session'; +import { type LobeSessions } from '@/types/session'; export interface SessionState { activeAgentId?: string; diff --git a/src/store/session/slices/session/reducers.ts b/src/store/session/slices/session/reducers.ts index 60da91a9ba..1f73b51ea4 100644 --- a/src/store/session/slices/session/reducers.ts +++ b/src/store/session/slices/session/reducers.ts @@ -1,6 +1,6 @@ import { produce } from 'immer'; -import { LobeSession, LobeSessions } from '@/types/session'; +import { type LobeSession, type LobeSessions } from '@/types/session'; interface AddSession { session: LobeSession; diff --git a/src/store/session/slices/session/selectors/list.ts b/src/store/session/slices/session/selectors/list.ts index 8748e66477..cf7ff2034d 100644 --- a/src/store/session/slices/session/selectors/list.ts +++ b/src/store/session/slices/session/selectors/list.ts @@ -1,15 +1,15 @@ import { DEFAULT_AGENT_LOBE_SESSION, INBOX_SESSION_ID } from '@/const/session'; import { sessionHelpers } from '@/store/session/slices/session/helpers'; -import { MetaData } from '@/types/meta'; +import { type MetaData } from '@/types/meta'; import { - CustomSessionGroup, - GroupMemberWithAgent, - LobeGroupSession, - LobeSession, - LobeSessions, + type CustomSessionGroup, + type GroupMemberWithAgent, + type LobeGroupSession, + type LobeSession, + type LobeSessions, } from '@/types/session'; -import { SessionStore } from '../../../store'; +import { type SessionStore } from '../../../store'; const defaultSessions = (s: SessionStore): LobeSessions => s.defaultSessions; diff --git a/src/store/session/slices/session/selectors/meta.ts b/src/store/session/slices/session/selectors/meta.ts index 190c6859a3..2e54ee9491 100644 --- a/src/store/session/slices/session/selectors/meta.ts +++ b/src/store/session/slices/session/selectors/meta.ts @@ -2,7 +2,7 @@ import { t } from 'i18next'; import { DEFAULT_AVATAR } from '@/const/meta'; import type { SessionStore } from '@/store/session'; -import { MetaData } from '@/types/meta'; +import { type MetaData } from '@/types/meta'; import { merge } from '@/utils/merge'; import { sessionSelectors } from './list'; diff --git a/src/store/session/slices/sessionGroup/action.ts b/src/store/session/slices/sessionGroup/action.ts index 9503a7bb48..413785bba2 100644 --- a/src/store/session/slices/sessionGroup/action.ts +++ b/src/store/session/slices/sessionGroup/action.ts @@ -1,12 +1,12 @@ import { t } from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { message } from '@/components/AntdStaticMethods'; import { sessionService } from '@/services/session'; -import { SessionStore } from '@/store/session'; -import { SessionGroupItem } from '@/types/session'; +import { type SessionStore } from '@/store/session'; +import { type SessionGroupItem } from '@/types/session'; -import { SessionGroupsDispatch, sessionGroupsReducer } from './reducer'; +import { type SessionGroupsDispatch, sessionGroupsReducer } from './reducer'; /* eslint-disable typescript-sort-keys/interface */ export interface SessionGroupAction { diff --git a/src/store/session/slices/sessionGroup/initialState.ts b/src/store/session/slices/sessionGroup/initialState.ts index 8abd3a6189..c01bc2089e 100644 --- a/src/store/session/slices/sessionGroup/initialState.ts +++ b/src/store/session/slices/sessionGroup/initialState.ts @@ -1,4 +1,4 @@ -import { CustomSessionGroup, LobeSessionGroups } from '@/types/session'; +import { type CustomSessionGroup, type LobeSessionGroups } from '@/types/session'; export interface SessionGroupState { customSessionGroups: CustomSessionGroup[]; diff --git a/src/store/session/slices/sessionGroup/reducer.ts b/src/store/session/slices/sessionGroup/reducer.ts index bced23cb28..0daee15fd1 100644 --- a/src/store/session/slices/sessionGroup/reducer.ts +++ b/src/store/session/slices/sessionGroup/reducer.ts @@ -1,4 +1,4 @@ -import { SessionGroupItem } from '@/types/session'; +import { type SessionGroupItem } from '@/types/session'; export type AddSessionGroupAction = { item: SessionGroupItem; type: 'addSessionGroupItem' }; export type DeleteSessionGroupAction = { id: string; type: 'deleteSessionGroupItem' }; diff --git a/src/store/session/slices/sessionGroup/selectors.ts b/src/store/session/slices/sessionGroup/selectors.ts index d8b4e23ac6..12bbab60e8 100644 --- a/src/store/session/slices/sessionGroup/selectors.ts +++ b/src/store/session/slices/sessionGroup/selectors.ts @@ -1,4 +1,4 @@ -import { SessionStore } from '@/store/session'; +import { type SessionStore } from '@/store/session'; const sessionGroupItems = (s: SessionStore) => s.sessionGroups; diff --git a/src/store/session/store.ts b/src/store/session/store.ts index 43c5dc2179..42eb8db121 100644 --- a/src/store/session/store.ts +++ b/src/store/session/store.ts @@ -1,16 +1,16 @@ import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { isDev } from '@/utils/env'; import { createDevtools } from '../middleware/createDevtools'; -import { SessionStoreState, initialState } from './initialState'; -import { HomeInputAction, createHomeInputSlice } from './slices/homeInput/action'; -import { RecentAction, createRecentSlice } from './slices/recent/action'; -import { SessionAction, createSessionSlice } from './slices/session/action'; -import { SessionGroupAction, createSessionGroupSlice } from './slices/sessionGroup/action'; +import { type SessionStoreState, initialState } from './initialState'; +import { type HomeInputAction, createHomeInputSlice } from './slices/homeInput/action'; +import { type RecentAction, createRecentSlice } from './slices/recent/action'; +import { type SessionAction, createSessionSlice } from './slices/session/action'; +import { type SessionGroupAction, createSessionGroupSlice } from './slices/sessionGroup/action'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/tool/helpers.ts b/src/store/tool/helpers.ts index e472650aaa..d91243cbbd 100644 --- a/src/store/tool/helpers.ts +++ b/src/store/tool/helpers.ts @@ -1,7 +1,7 @@ -import { LobeTool } from '@lobechat/types'; +import { type LobeTool } from '@lobechat/types'; import type { PluginSchema } from '@lobehub/chat-plugin-sdk'; -import { MetaData } from '@/types/meta'; +import { type MetaData } from '@/types/meta'; const getPluginFormList = (list: LobeTool[], id: string) => list?.find((p) => p.identifier === id); diff --git a/src/store/tool/initialState.ts b/src/store/tool/initialState.ts index 6ccfcb4e6d..34fad6751f 100644 --- a/src/store/tool/initialState.ts +++ b/src/store/tool/initialState.ts @@ -1,9 +1,9 @@ -import { BuiltinToolState, initialBuiltinToolState } from './slices/builtin/initialState'; -import { CustomPluginState, initialCustomPluginState } from './slices/customPlugin/initialState'; -import { KlavisStoreState, initialKlavisStoreState } from './slices/klavisStore/initialState'; -import { MCPStoreState, initialMCPStoreState } from './slices/mcpStore/initialState'; -import { PluginStoreState, initialPluginStoreState } from './slices/oldStore/initialState'; -import { PluginState, initialPluginState } from './slices/plugin/initialState'; +import { type BuiltinToolState, initialBuiltinToolState } from './slices/builtin/initialState'; +import { type CustomPluginState, initialCustomPluginState } from './slices/customPlugin/initialState'; +import { type KlavisStoreState, initialKlavisStoreState } from './slices/klavisStore/initialState'; +import { type MCPStoreState, initialMCPStoreState } from './slices/mcpStore/initialState'; +import { type PluginStoreState, initialPluginStoreState } from './slices/oldStore/initialState'; +import { type PluginState, initialPluginState } from './slices/plugin/initialState'; export type ToolStoreState = PluginState & CustomPluginState & diff --git a/src/store/tool/selectors/tool.ts b/src/store/tool/selectors/tool.ts index cb12ebb16e..04fa6ebc8e 100644 --- a/src/store/tool/selectors/tool.ts +++ b/src/store/tool/selectors/tool.ts @@ -1,13 +1,13 @@ import { ToolNameResolver } from '@lobechat/context-engine'; import { pluginPrompts } from '@lobechat/prompts'; -import { RenderDisplayControl } from '@lobechat/types'; +import { type RenderDisplayControl } from '@lobechat/types'; import type { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; -import { MetaData } from '@/types/meta'; -import { LobeToolMeta } from '@/types/tool/tool'; +import { type MetaData } from '@/types/meta'; +import { type LobeToolMeta } from '@/types/tool/tool'; import { pluginHelpers } from '../helpers'; -import { ToolStoreState } from '../initialState'; +import { type ToolStoreState } from '../initialState'; import { builtinToolSelectors } from '../slices/builtin/selectors'; import { pluginSelectors } from '../slices/plugin/selectors'; diff --git a/src/store/tool/slices/builtin/action.ts b/src/store/tool/slices/builtin/action.ts index eacc30f8c5..d028d3064c 100644 --- a/src/store/tool/slices/builtin/action.ts +++ b/src/store/tool/slices/builtin/action.ts @@ -1,9 +1,9 @@ import debug from 'debug'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { setNamespace } from '@/utils/storeDebug'; -import { ToolStore } from '../../store'; +import { type ToolStore } from '../../store'; import { invokeExecutor } from './executors/index'; import type { BuiltinToolContext, BuiltinToolResult } from './types'; diff --git a/src/store/tool/slices/builtin/executors/lobe-notebook.ts b/src/store/tool/slices/builtin/executors/lobe-notebook.ts index 43affa3542..31d740ca1e 100644 --- a/src/store/tool/slices/builtin/executors/lobe-notebook.ts +++ b/src/store/tool/slices/builtin/executors/lobe-notebook.ts @@ -7,12 +7,12 @@ * Note: listDocuments is not exposed as a tool - it's automatically injected by the system. */ import { - CreateDocumentArgs, - DeleteDocumentArgs, - GetDocumentArgs, + type CreateDocumentArgs, + type DeleteDocumentArgs, + type GetDocumentArgs, NotebookApiName, NotebookIdentifier, - UpdateDocumentArgs, + type UpdateDocumentArgs, } from '@lobechat/builtin-tool-notebook'; import { BaseExecutor, type BuiltinToolContext, type BuiltinToolResult } from '@lobechat/types'; diff --git a/src/store/tool/slices/builtin/executors/lobe-web-browsing.ts b/src/store/tool/slices/builtin/executors/lobe-web-browsing.ts index 4657232d17..89f92d9e2d 100644 --- a/src/store/tool/slices/builtin/executors/lobe-web-browsing.ts +++ b/src/store/tool/slices/builtin/executors/lobe-web-browsing.ts @@ -4,13 +4,15 @@ * Handles web search and page crawling tool calls. */ import { - CrawlMultiPagesQuery, - CrawlPluginState, + type BuiltinToolContext, + type BuiltinToolResult, + BaseExecutor, + type CrawlMultiPagesQuery, + type CrawlPluginState, SEARCH_SEARXNG_NOT_CONFIG, - SearchQuery, + type SearchQuery, } from '@lobechat/types'; -import { BaseExecutor, type BuiltinToolContext, type BuiltinToolResult } from '@lobechat/types'; -import { CrawlSuccessResult } from '@lobechat/web-crawler'; +import { type CrawlSuccessResult } from '@lobechat/web-crawler'; import { notebookService } from '@/services/notebook'; import { searchService } from '@/services/search'; diff --git a/src/store/tool/slices/builtin/initialState.ts b/src/store/tool/slices/builtin/initialState.ts index e7ec7c31c3..34bf9127bb 100644 --- a/src/store/tool/slices/builtin/initialState.ts +++ b/src/store/tool/slices/builtin/initialState.ts @@ -1,4 +1,4 @@ -import { LobeBuiltinTool } from '@lobechat/types'; +import { type LobeBuiltinTool } from '@lobechat/types'; import { builtinTools } from '@/tools'; diff --git a/src/store/tool/slices/builtin/selectors.ts b/src/store/tool/slices/builtin/selectors.ts index 71032a2e05..6b7b3c34a5 100644 --- a/src/store/tool/slices/builtin/selectors.ts +++ b/src/store/tool/slices/builtin/selectors.ts @@ -1,4 +1,4 @@ -import { LobeToolMeta } from '@lobechat/types'; +import { type LobeToolMeta } from '@lobechat/types'; import { shouldEnableTool } from '@/helpers/toolFilters'; diff --git a/src/store/tool/slices/customPlugin/action.ts b/src/store/tool/slices/customPlugin/action.ts index 0ec07aff7c..57fb3983dc 100644 --- a/src/store/tool/slices/customPlugin/action.ts +++ b/src/store/tool/slices/customPlugin/action.ts @@ -1,17 +1,17 @@ -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { merge } from 'es-toolkit/compat'; import { t } from 'i18next'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { notification } from '@/components/AntdStaticMethods'; import { mcpService } from '@/services/mcp'; import { pluginService } from '@/services/plugin'; import { toolService } from '@/services/tool'; import { pluginHelpers } from '@/store/tool/helpers'; -import { LobeToolCustomPlugin, PluginInstallError } from '@/types/tool/plugin'; +import { type LobeToolCustomPlugin, type PluginInstallError } from '@/types/tool/plugin'; import { setNamespace } from '@/utils/storeDebug'; -import { ToolStore } from '../../store'; +import { type ToolStore } from '../../store'; import { pluginSelectors } from '../plugin/selectors'; import { defaultCustomPlugin } from './initialState'; diff --git a/src/store/tool/slices/customPlugin/initialState.ts b/src/store/tool/slices/customPlugin/initialState.ts index b8cd729fd1..e5b462e05b 100644 --- a/src/store/tool/slices/customPlugin/initialState.ts +++ b/src/store/tool/slices/customPlugin/initialState.ts @@ -1,4 +1,4 @@ -import { LobeToolCustomPlugin } from '@/types/tool/plugin'; +import { type LobeToolCustomPlugin } from '@/types/tool/plugin'; export interface CustomPluginState { newCustomPlugin: Partial; diff --git a/src/store/tool/slices/customPlugin/reducers/customPluginList.ts b/src/store/tool/slices/customPlugin/reducers/customPluginList.ts index fc49915142..adebffacf3 100644 --- a/src/store/tool/slices/customPlugin/reducers/customPluginList.ts +++ b/src/store/tool/slices/customPlugin/reducers/customPluginList.ts @@ -1,6 +1,6 @@ import { produce } from 'immer'; -import { LobeToolCustomPlugin } from '@/types/tool/plugin'; +import { type LobeToolCustomPlugin } from '@/types/tool/plugin'; export type DevListState = LobeToolCustomPlugin[]; diff --git a/src/store/tool/slices/klavisStore/action.ts b/src/store/tool/slices/klavisStore/action.ts index 5cb19f7a11..9bfdec92d6 100644 --- a/src/store/tool/slices/klavisStore/action.ts +++ b/src/store/tool/slices/klavisStore/action.ts @@ -1,19 +1,19 @@ import { enableMapSet, produce } from 'immer'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { lambdaClient, toolsClient } from '@/libs/trpc/client'; import { setNamespace } from '@/utils/storeDebug'; -import { ToolStore } from '../../store'; -import { KlavisStoreState } from './initialState'; +import { type ToolStore } from '../../store'; +import { type KlavisStoreState } from './initialState'; import { - CallKlavisToolParams, - CallKlavisToolResult, - CreateKlavisServerParams, - KlavisServer, + type CallKlavisToolParams, + type CallKlavisToolResult, + type CreateKlavisServerParams, + type KlavisServer, KlavisServerStatus, - KlavisTool, + type KlavisTool, } from './types'; enableMapSet(); diff --git a/src/store/tool/slices/klavisStore/initialState.ts b/src/store/tool/slices/klavisStore/initialState.ts index 408debeb30..0223cf6d42 100644 --- a/src/store/tool/slices/klavisStore/initialState.ts +++ b/src/store/tool/slices/klavisStore/initialState.ts @@ -1,4 +1,4 @@ -import { KlavisServer } from './types'; +import { type KlavisServer } from './types'; /** * Klavis Store 状态接口 diff --git a/src/store/tool/slices/klavisStore/selectors.ts b/src/store/tool/slices/klavisStore/selectors.ts index 749b91673a..d91dfcbde7 100644 --- a/src/store/tool/slices/klavisStore/selectors.ts +++ b/src/store/tool/slices/klavisStore/selectors.ts @@ -1,5 +1,5 @@ -import { ToolStore } from '../../store'; -import { KlavisServer, KlavisServerStatus } from './types'; +import { type ToolStore } from '../../store'; +import { type KlavisServer, KlavisServerStatus } from './types'; /** * Klavis Store Selectors diff --git a/src/store/tool/slices/mcpStore/action.ts b/src/store/tool/slices/mcpStore/action.ts index 7b6d17c58d..174d01e504 100644 --- a/src/store/tool/slices/mcpStore/action.ts +++ b/src/store/tool/slices/mcpStore/action.ts @@ -1,15 +1,15 @@ import { CURRENT_VERSION, isDesktop } from '@lobechat/const'; -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; -import { PluginItem, PluginListResponse } from '@lobehub/market-sdk'; -import { TRPCClientError } from '@trpc/client'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type PluginItem, type PluginListResponse } from '@lobehub/market-sdk'; +import { type TRPCClientError } from '@trpc/client'; import debug from 'debug'; import { uniqBy } from 'es-toolkit/compat'; import { produce } from 'immer'; import { gt, valid } from 'semver'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; -import { MCPErrorData } from '@/libs/mcp/types'; +import { type MCPErrorData } from '@/libs/mcp/types'; import { discoverService } from '@/services/discover'; import { mcpService } from '@/services/mcp'; import { pluginService } from '@/services/plugin'; @@ -17,18 +17,18 @@ import { globalHelpers } from '@/store/global/helpers'; import { mcpStoreSelectors } from '@/store/tool/selectors'; import { McpConnectionType } from '@/types/discover'; import { - CheckMcpInstallResult, - MCPErrorInfo, - MCPInstallProgress, + type CheckMcpInstallResult, + type MCPErrorInfo, + type MCPInstallProgress, MCPInstallStep, - MCPPluginListParams, - McpConnectionParams, + type MCPPluginListParams, + type McpConnectionParams, } from '@/types/plugins'; import { sleep } from '@/utils/sleep'; import { setNamespace } from '@/utils/storeDebug'; -import { ToolStore } from '../../store'; -import { MCPStoreState } from './initialState'; +import { type ToolStore } from '../../store'; +import { type MCPStoreState } from './initialState'; const log = debug('lobe-mcp:store:action'); diff --git a/src/store/tool/slices/mcpStore/initialState.ts b/src/store/tool/slices/mcpStore/initialState.ts index 8f3589ffbd..9e7e986aa0 100644 --- a/src/store/tool/slices/mcpStore/initialState.ts +++ b/src/store/tool/slices/mcpStore/initialState.ts @@ -1,6 +1,6 @@ -import { PluginItem } from '@lobehub/market-sdk'; +import { type PluginItem } from '@lobehub/market-sdk'; -import { MCPInstallProgressMap } from '@/types/plugins'; +import { type MCPInstallProgressMap } from '@/types/plugins'; export interface MCPStoreState { activeMCPIdentifier?: string; diff --git a/src/store/tool/slices/mcpStore/selectors.ts b/src/store/tool/slices/mcpStore/selectors.ts index 501089e08c..1dc6492f4d 100644 --- a/src/store/tool/slices/mcpStore/selectors.ts +++ b/src/store/tool/slices/mcpStore/selectors.ts @@ -1,4 +1,4 @@ -import { InstallPluginMeta } from '@/types/tool/plugin'; +import { type InstallPluginMeta } from '@/types/tool/plugin'; import type { ToolStoreState } from '../../initialState'; diff --git a/src/store/tool/slices/oldStore/action.ts b/src/store/tool/slices/oldStore/action.ts index 8b73d0c164..60e080d162 100644 --- a/src/store/tool/slices/oldStore/action.ts +++ b/src/store/tool/slices/oldStore/action.ts @@ -1,9 +1,9 @@ -import { LobeTool } from '@lobechat/types'; +import { type LobeTool } from '@lobechat/types'; import { uniqBy } from 'es-toolkit/compat'; import { t } from 'i18next'; import { produce } from 'immer'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { notification } from '@/components/AntdStaticMethods'; import { mutate } from '@/libs/swr'; @@ -11,13 +11,13 @@ import { pluginService } from '@/services/plugin'; import { toolService } from '@/services/tool'; import { globalHelpers } from '@/store/global/helpers'; import { pluginStoreSelectors } from '@/store/tool/selectors'; -import { DiscoverPluginItem, PluginListResponse, PluginQueryParams } from '@/types/discover'; -import { PluginInstallError } from '@/types/tool/plugin'; +import { type DiscoverPluginItem, type PluginListResponse, type PluginQueryParams } from '@/types/discover'; +import { type PluginInstallError } from '@/types/tool/plugin'; import { sleep } from '@/utils/sleep'; import { setNamespace } from '@/utils/storeDebug'; -import { ToolStore } from '../../store'; -import { PluginInstallProgress, PluginInstallStep, PluginStoreState } from './initialState'; +import { type ToolStore } from '../../store'; +import { type PluginInstallProgress, PluginInstallStep, type PluginStoreState } from './initialState'; const n = setNamespace('pluginStore'); diff --git a/src/store/tool/slices/oldStore/initialState.ts b/src/store/tool/slices/oldStore/initialState.ts index ef9a9572c7..30a6c1c270 100644 --- a/src/store/tool/slices/oldStore/initialState.ts +++ b/src/store/tool/slices/oldStore/initialState.ts @@ -1,4 +1,4 @@ -import { DiscoverPluginItem } from '@/types/discover'; +import { type DiscoverPluginItem } from '@/types/discover'; export type PluginInstallLoadingMap = Record; diff --git a/src/store/tool/slices/oldStore/selectors.ts b/src/store/tool/slices/oldStore/selectors.ts index db945dce5e..e770deb853 100644 --- a/src/store/tool/slices/oldStore/selectors.ts +++ b/src/store/tool/slices/oldStore/selectors.ts @@ -1,5 +1,5 @@ import { PluginStoreTabs } from '@/store/tool/slices/oldStore/initialState'; -import { InstallPluginMeta } from '@/types/tool/plugin'; +import { type InstallPluginMeta } from '@/types/tool/plugin'; import type { ToolStoreState } from '../../initialState'; diff --git a/src/store/tool/slices/plugin/action.ts b/src/store/tool/slices/plugin/action.ts index ecaaf825c3..9fdabe525b 100644 --- a/src/store/tool/slices/plugin/action.ts +++ b/src/store/tool/slices/plugin/action.ts @@ -1,13 +1,13 @@ -import { Schema, ValidationResult } from '@cfworker/json-schema'; -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type Schema, type ValidationResult } from '@cfworker/json-schema'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { MESSAGE_CANCEL_FLAT } from '@/const/message'; import { useClientDataSWR } from '@/libs/swr'; import { pluginService } from '@/services/plugin'; import { merge } from '@/utils/merge'; -import { ToolStore } from '../../store'; +import { type ToolStore } from '../../store'; import { pluginStoreSelectors } from '../oldStore/selectors'; import { pluginSelectors } from './selectors'; diff --git a/src/store/tool/slices/plugin/initialState.ts b/src/store/tool/slices/plugin/initialState.ts index 8bd04b748d..3e77a9369c 100644 --- a/src/store/tool/slices/plugin/initialState.ts +++ b/src/store/tool/slices/plugin/initialState.ts @@ -1,4 +1,4 @@ -import { LobeTool } from '@lobechat/types'; +import { type LobeTool } from '@lobechat/types'; export type PluginsSettings = Record; diff --git a/src/store/tool/slices/plugin/reducers/manifest.ts b/src/store/tool/slices/plugin/reducers/manifest.ts index 08024e58a0..77e0cf2110 100644 --- a/src/store/tool/slices/plugin/reducers/manifest.ts +++ b/src/store/tool/slices/plugin/reducers/manifest.ts @@ -1,7 +1,7 @@ -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { produce } from 'immer'; -import { PluginManifestMap } from '@/types/tool/plugin'; +import { type PluginManifestMap } from '@/types/tool/plugin'; type AddManifestDispatch = { id: string; plugin: LobeChatPluginManifest; type: 'addManifest' }; type DeleteManifestDispatch = { id: string; type: 'deleteManifest' }; diff --git a/src/store/tool/slices/plugin/selectors.ts b/src/store/tool/slices/plugin/selectors.ts index d6215354a8..e53637a9d9 100644 --- a/src/store/tool/slices/plugin/selectors.ts +++ b/src/store/tool/slices/plugin/selectors.ts @@ -1,7 +1,7 @@ -import { LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; +import { type LobeChatPluginManifest } from '@lobehub/chat-plugin-sdk'; import { uniq } from 'es-toolkit/compat'; -import { InstallPluginMeta, LobeToolCustomPlugin } from '@/types/tool/plugin'; +import { type InstallPluginMeta, type LobeToolCustomPlugin } from '@/types/tool/plugin'; import type { ToolStoreState } from '../../initialState'; diff --git a/src/store/tool/store.ts b/src/store/tool/store.ts index ec74b1873a..82d247fbd2 100644 --- a/src/store/tool/store.ts +++ b/src/store/tool/store.ts @@ -1,15 +1,15 @@ import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; -import { ToolStoreState, initialState } from './initialState'; -import { BuiltinToolAction, createBuiltinToolSlice } from './slices/builtin'; -import { CustomPluginAction, createCustomPluginSlice } from './slices/customPlugin'; -import { KlavisStoreAction, createKlavisStoreSlice } from './slices/klavisStore'; -import { PluginMCPStoreAction, createMCPPluginStoreSlice } from './slices/mcpStore'; -import { PluginAction, createPluginSlice } from './slices/plugin'; -import { PluginStoreAction, createPluginStoreSlice } from './slices/oldStore'; +import { type ToolStoreState, initialState } from './initialState'; +import { type BuiltinToolAction, createBuiltinToolSlice } from './slices/builtin'; +import { type CustomPluginAction, createCustomPluginSlice } from './slices/customPlugin'; +import { type KlavisStoreAction, createKlavisStoreSlice } from './slices/klavisStore'; +import { type PluginMCPStoreAction, createMCPPluginStoreSlice } from './slices/mcpStore'; +import { type PluginAction, createPluginSlice } from './slices/plugin'; +import { type PluginStoreAction, createPluginStoreSlice } from './slices/oldStore'; // =============== Aggregate createStoreFn ============ // diff --git a/src/store/user/initialState.ts b/src/store/user/initialState.ts index 099ebebcd0..f47637fe26 100644 --- a/src/store/user/initialState.ts +++ b/src/store/user/initialState.ts @@ -1,8 +1,8 @@ -import { UserAuthState, initialAuthState } from './slices/auth/initialState'; -import { CommonState, initialCommonState } from './slices/common/initialState'; -import { OnboardingState, initialOnboardingState } from './slices/onboarding/initialState'; -import { UserPreferenceState, initialPreferenceState } from './slices/preference/initialState'; -import { UserSettingsState, initialSettingsState } from './slices/settings/initialState'; +import { type UserAuthState, initialAuthState } from './slices/auth/initialState'; +import { type CommonState, initialCommonState } from './slices/common/initialState'; +import { type OnboardingState, initialOnboardingState } from './slices/onboarding/initialState'; +import { type UserPreferenceState, initialPreferenceState } from './slices/preference/initialState'; +import { type UserSettingsState, initialSettingsState } from './slices/settings/initialState'; export type UserState = UserSettingsState & UserPreferenceState & diff --git a/src/store/user/slices/auth/action.ts b/src/store/user/slices/auth/action.ts index 6b10dd7255..51f7834161 100644 --- a/src/store/user/slices/auth/action.ts +++ b/src/store/user/slices/auth/action.ts @@ -1,5 +1,5 @@ -import { SSOProvider } from '@lobechat/types'; -import { StateCreator } from 'zustand/vanilla'; +import { type SSOProvider } from '@lobechat/types'; +import { type StateCreator } from 'zustand/vanilla'; import { enableAuth, enableBetterAuth, enableClerk, enableNextAuth } from '@/const/auth'; import { userService } from '@/services/user'; diff --git a/src/store/user/slices/auth/initialState.ts b/src/store/user/slices/auth/initialState.ts index 4fa5c430e8..59db4f0f6f 100644 --- a/src/store/user/slices/auth/initialState.ts +++ b/src/store/user/slices/auth/initialState.ts @@ -1,15 +1,15 @@ -import { Session, User } from '@auth/core/types'; +import { type Session, type User } from '@auth/core/types'; import { - SignInProps, - SignOut, - SignedInSessionResource, - UserProfileProps, - UserResource, + type SignInProps, + type SignOut, + type SignedInSessionResource, + type UserProfileProps, + type UserResource, } from '@clerk/types'; -import { SSOProvider } from '@lobechat/types'; +import { type SSOProvider } from '@lobechat/types'; import { enableClerk } from '@/const/auth'; -import { LobeUser } from '@/types/user'; +import { type LobeUser } from '@/types/user'; export interface UserAuthState { authProviders?: SSOProvider[]; diff --git a/src/store/user/slices/auth/selectors.ts b/src/store/user/slices/auth/selectors.ts index e0b2fdb403..760e8abcdc 100644 --- a/src/store/user/slices/auth/selectors.ts +++ b/src/store/user/slices/auth/selectors.ts @@ -1,6 +1,6 @@ import { BRANDING_NAME } from '@lobechat/business-const'; import { isDesktop } from '@lobechat/const'; -import { LobeUser, SSOProvider } from '@lobechat/types'; +import { type LobeUser, type SSOProvider } from '@lobechat/types'; import { t } from 'i18next'; import { enableAuth, enableBetterAuth, enableClerk, enableNextAuth } from '@/const/auth'; diff --git a/src/store/user/slices/common/action.ts b/src/store/user/slices/common/action.ts index d351bef642..d8b9d9b1c0 100644 --- a/src/store/user/slices/common/action.ts +++ b/src/store/user/slices/common/action.ts @@ -1,6 +1,6 @@ import { isDesktop } from '@lobechat/const'; import { getSingletonAnalyticsOptional } from '@lobehub/analytics'; -import useSWR, { SWRResponse } from 'swr'; +import useSWR, { type SWRResponse } from 'swr'; import type { PartialDeep } from 'type-fest'; import type { StateCreator } from 'zustand/vanilla'; @@ -9,7 +9,7 @@ import { mutate, useOnlyFetchOnceSWR } from '@/libs/swr'; import { userService } from '@/services/user'; import type { UserStore } from '@/store/user'; import type { GlobalServerConfig } from '@/types/serverConfig'; -import { LobeUser, UserInitializationState } from '@/types/user'; +import { type LobeUser, type UserInitializationState } from '@/types/user'; import type { UserSettings } from '@/types/user/settings'; import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; diff --git a/src/store/user/slices/common/initialState.ts b/src/store/user/slices/common/initialState.ts index 339f34fa2c..f426df3827 100644 --- a/src/store/user/slices/common/initialState.ts +++ b/src/store/user/slices/common/initialState.ts @@ -1,6 +1,6 @@ -import { ReferralStatusString } from '@lobechat/types'; +import { type ReferralStatusString } from '@lobechat/types'; -import { Plans } from '@/types/subscription'; +import { type Plans } from '@/types/subscription'; export interface CommonState { isFreePlan?: boolean; diff --git a/src/store/user/slices/onboarding/initialState.ts b/src/store/user/slices/onboarding/initialState.ts index 6cad853ae2..5e2b2b08bb 100644 --- a/src/store/user/slices/onboarding/initialState.ts +++ b/src/store/user/slices/onboarding/initialState.ts @@ -1,4 +1,4 @@ -import { UserOnboarding } from '@/types/user'; +import { type UserOnboarding } from '@/types/user'; export interface OnboardingState { /** diff --git a/src/store/user/slices/preference/action.ts b/src/store/user/slices/preference/action.ts index 332b4721f0..0800dd8911 100644 --- a/src/store/user/slices/preference/action.ts +++ b/src/store/user/slices/preference/action.ts @@ -2,7 +2,7 @@ import type { StateCreator } from 'zustand/vanilla'; import { userService } from '@/services/user'; import type { UserStore } from '@/store/user'; -import { UserGuide, UserLab, UserPreference } from '@/types/user'; +import { type UserGuide, type UserLab, type UserPreference } from '@/types/user'; import { merge } from '@/utils/merge'; import { setNamespace } from '@/utils/storeDebug'; diff --git a/src/store/user/slices/preference/initialState.ts b/src/store/user/slices/preference/initialState.ts index 5df9afe5e6..1570f580f7 100644 --- a/src/store/user/slices/preference/initialState.ts +++ b/src/store/user/slices/preference/initialState.ts @@ -1,5 +1,5 @@ import { DEFAULT_PREFERENCE } from '@/const/user'; -import { UserPreference } from '@/types/user'; +import { type UserPreference } from '@/types/user'; export interface UserPreferenceState { /** diff --git a/src/store/user/slices/settings/action.ts b/src/store/user/slices/settings/action.ts index e792a3fad9..a9425ef2bb 100644 --- a/src/store/user/slices/settings/action.ts +++ b/src/store/user/slices/settings/action.ts @@ -6,13 +6,13 @@ import { MESSAGE_CANCEL_FLAT } from '@/const/message'; import { shareService } from '@/services/share'; import { userService } from '@/services/user'; import type { UserStore } from '@/store/user'; -import { LobeAgentSettings } from '@/types/session'; +import { type LobeAgentSettings } from '@/types/session'; import { - SystemAgentItem, - UserGeneralConfig, - UserKeyVaults, - UserSettings, - UserSystemAgentConfigKey, + type SystemAgentItem, + type UserGeneralConfig, + type UserKeyVaults, + type UserSettings, + type UserSystemAgentConfigKey, } from '@/types/user/settings'; import { difference } from '@/utils/difference'; import { merge } from '@/utils/merge'; diff --git a/src/store/user/slices/settings/initialState.ts b/src/store/user/slices/settings/initialState.ts index 87ad8937ea..494abd32a5 100644 --- a/src/store/user/slices/settings/initialState.ts +++ b/src/store/user/slices/settings/initialState.ts @@ -1,5 +1,5 @@ import { DEFAULT_SETTINGS } from '@lobechat/config'; -import { UserSettings } from '@lobechat/types'; +import { type UserSettings } from '@lobechat/types'; import type { PartialDeep } from 'type-fest'; export interface UserSettingsState { diff --git a/src/store/user/slices/settings/selectors/general.ts b/src/store/user/slices/settings/selectors/general.ts index 0a68c299b2..e04a33b755 100644 --- a/src/store/user/slices/settings/selectors/general.ts +++ b/src/store/user/slices/settings/selectors/general.ts @@ -1,6 +1,6 @@ import { isDesktop } from '@lobechat/const'; -import { UserStore } from '../../../store'; +import { type UserStore } from '../../../store'; import { currentSettings } from './settings'; const generalConfig = (s: UserStore) => currentSettings(s).general || {}; diff --git a/src/store/user/slices/settings/selectors/keyVaults.ts b/src/store/user/slices/settings/selectors/keyVaults.ts index 9dd9d8f0df..0653843eb7 100644 --- a/src/store/user/slices/settings/selectors/keyVaults.ts +++ b/src/store/user/slices/settings/selectors/keyVaults.ts @@ -1,5 +1,5 @@ -import { UserStore } from '@/store/user'; -import { UserKeyVaults } from '@/types/user/settings'; +import { type UserStore } from '@/store/user'; +import { type UserKeyVaults } from '@/types/user/settings'; import { currentSettings } from './settings'; diff --git a/src/store/user/slices/settings/selectors/settings.ts b/src/store/user/slices/settings/selectors/settings.ts index e890321740..6afc1dd274 100644 --- a/src/store/user/slices/settings/selectors/settings.ts +++ b/src/store/user/slices/settings/selectors/settings.ts @@ -8,11 +8,11 @@ import { DEFAULT_TTS_CONFIG, } from '@lobechat/const'; import { - GlobalLLMProviderKey, - HotkeyId, - ProviderConfig, - UserModelProviderConfig, - UserSettings, + type GlobalLLMProviderKey, + type HotkeyId, + type ProviderConfig, + type UserModelProviderConfig, + type UserSettings, } from '@lobechat/types'; import type { UserStore } from '@/store/user'; diff --git a/src/store/user/store.ts b/src/store/user/store.ts index fd3a4adf6f..71c2778bf5 100644 --- a/src/store/user/store.ts +++ b/src/store/user/store.ts @@ -1,7 +1,7 @@ import { subscribeWithSelector } from 'zustand/middleware'; import { shallow } from 'zustand/shallow'; import { createWithEqualityFn } from 'zustand/traditional'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { createDevtools } from '../middleware/createDevtools'; import { type UserState, initialState } from './initialState'; diff --git a/src/store/userMemory/initialState.ts b/src/store/userMemory/initialState.ts index d6a1b869c9..ac97766064 100644 --- a/src/store/userMemory/initialState.ts +++ b/src/store/userMemory/initialState.ts @@ -1,9 +1,9 @@ import type { RetrieveMemoryParams, RetrieveMemoryResult } from '@lobechat/types'; import { - DisplayContextMemory, - DisplayExperienceMemory, - DisplayPreferenceMemory, + type DisplayContextMemory, + type DisplayExperienceMemory, + type DisplayPreferenceMemory, } from '@/database/repositories/userMemory'; import { type AgentMemorySliceState, agentMemoryInitialState } from './slices/agent'; diff --git a/src/store/userMemory/slices/agent/action.ts b/src/store/userMemory/slices/agent/action.ts index 24ca58f657..2f854f8dae 100644 --- a/src/store/userMemory/slices/agent/action.ts +++ b/src/store/userMemory/slices/agent/action.ts @@ -1,13 +1,13 @@ import { omit } from 'es-toolkit'; import type { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { useClientDataSWRWithSync } from '@/libs/swr'; import { userMemoryService } from '@/services/userMemory'; import type { RetrieveMemoryResult } from '@/types/userMemory'; import { setNamespace } from '@/utils/storeDebug'; -import { UserMemoryStore } from '../../store'; +import { type UserMemoryStore } from '../../store'; const n = setNamespace('userMemory/agent'); diff --git a/src/store/userMemory/slices/base/action.ts b/src/store/userMemory/slices/base/action.ts index 4da61c4140..1003e911f5 100644 --- a/src/store/userMemory/slices/base/action.ts +++ b/src/store/userMemory/slices/base/action.ts @@ -1,7 +1,7 @@ import isEqual from 'fast-deep-equal'; import type { SWRResponse } from 'swr'; import useSWR from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type StateCreator } from 'zustand/vanilla'; import { mutate, useClientDataSWR, useClientDataSWRWithSync } from '@/libs/swr'; import { userMemoryService } from '@/services/userMemory'; @@ -9,7 +9,7 @@ import { LayersEnum } from '@/types/userMemory'; import type { RetrieveMemoryParams, RetrieveMemoryResult } from '@/types/userMemory'; import { setNamespace } from '@/utils/storeDebug'; -import { UserMemoryStore } from '../../store'; +import { type UserMemoryStore } from '../../store'; import type { IdentityForInjection } from '../../types'; import { userMemoryCacheKey } from '../../utils/cacheKey'; import { createMemorySearchParams } from '../../utils/searchParams'; diff --git a/src/store/userMemory/slices/context/action.ts b/src/store/userMemory/slices/context/action.ts index 01277f30d1..f199068124 100644 --- a/src/store/userMemory/slices/context/action.ts +++ b/src/store/userMemory/slices/context/action.ts @@ -1,14 +1,14 @@ import { uniqBy } from 'es-toolkit/compat'; import { produce } from 'immer'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { userMemoryService } from '@/services/userMemory'; import { memoryCRUDService } from '@/services/userMemory/index'; import { LayersEnum } from '@/types/userMemory'; import { setNamespace } from '@/utils/storeDebug'; -import { UserMemoryStore } from '../../store'; +import { type UserMemoryStore } from '../../store'; const n = setNamespace('userMemory/context'); diff --git a/src/store/userMemory/slices/experience/action.ts b/src/store/userMemory/slices/experience/action.ts index 8230a825d5..db84807267 100644 --- a/src/store/userMemory/slices/experience/action.ts +++ b/src/store/userMemory/slices/experience/action.ts @@ -1,14 +1,14 @@ import { uniqBy } from 'es-toolkit/compat'; import { produce } from 'immer'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { userMemoryService } from '@/services/userMemory'; import { memoryCRUDService } from '@/services/userMemory/index'; import { LayersEnum } from '@/types/userMemory'; import { setNamespace } from '@/utils/storeDebug'; -import { UserMemoryStore } from '../../store'; +import { type UserMemoryStore } from '../../store'; const n = setNamespace('userMemory/experience'); diff --git a/src/store/userMemory/slices/home/action.ts b/src/store/userMemory/slices/home/action.ts index 8a8e654651..38fb2a891f 100644 --- a/src/store/userMemory/slices/home/action.ts +++ b/src/store/userMemory/slices/home/action.ts @@ -1,7 +1,7 @@ -import { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; -import { QueryIdentityRolesResult } from '@/database/models/userMemory'; +import { type QueryIdentityRolesResult } from '@/database/models/userMemory'; import { useClientDataSWR } from '@/libs/swr'; import { userMemoryService } from '@/services/userMemory'; diff --git a/src/store/userMemory/slices/identity/action.ts b/src/store/userMemory/slices/identity/action.ts index eb71b7c286..196bb4d02b 100644 --- a/src/store/userMemory/slices/identity/action.ts +++ b/src/store/userMemory/slices/identity/action.ts @@ -1,19 +1,19 @@ import { LayersEnum, - NewUserMemoryIdentity, - TypesEnum, - UpdateUserMemoryIdentity, + type NewUserMemoryIdentity, + type TypesEnum, + type UpdateUserMemoryIdentity, } from '@lobechat/types'; import { uniqBy } from 'es-toolkit/compat'; import { produce } from 'immer'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; -import { AddIdentityEntryResult } from '@/database/models/userMemory'; +import { type AddIdentityEntryResult } from '@/database/models/userMemory'; import { memoryCRUDService, userMemoryService } from '@/services/userMemory'; import { setNamespace } from '@/utils/storeDebug'; -import { UserMemoryStore } from '../../store'; +import { type UserMemoryStore } from '../../store'; const n = setNamespace('userMemory/identity'); diff --git a/src/store/userMemory/slices/identity/initialState.ts b/src/store/userMemory/slices/identity/initialState.ts index 2440df5112..7ff2dd60ba 100644 --- a/src/store/userMemory/slices/identity/initialState.ts +++ b/src/store/userMemory/slices/identity/initialState.ts @@ -1,4 +1,4 @@ -import { DisplayIdentityMemory } from '@/database/repositories/userMemory'; +import { type DisplayIdentityMemory } from '@/database/repositories/userMemory'; import type { TypesEnum } from '@/types/userMemory'; import type { IdentityForInjection } from '../../types'; diff --git a/src/store/userMemory/slices/preference/action.ts b/src/store/userMemory/slices/preference/action.ts index d73fc817ac..9015c44963 100644 --- a/src/store/userMemory/slices/preference/action.ts +++ b/src/store/userMemory/slices/preference/action.ts @@ -1,14 +1,14 @@ import { uniqBy } from 'es-toolkit/compat'; import { produce } from 'immer'; -import useSWR, { SWRResponse } from 'swr'; -import { StateCreator } from 'zustand/vanilla'; +import useSWR, { type SWRResponse } from 'swr'; +import { type StateCreator } from 'zustand/vanilla'; import { userMemoryService } from '@/services/userMemory'; import { memoryCRUDService } from '@/services/userMemory/index'; import { LayersEnum } from '@/types/userMemory'; import { setNamespace } from '@/utils/storeDebug'; -import { UserMemoryStore } from '../../store'; +import { type UserMemoryStore } from '../../store'; const n = setNamespace('userMemory/preference'); diff --git a/src/styles/antdOverride.ts b/src/styles/antdOverride.ts index 12d0319f55..d7abcdf94f 100644 --- a/src/styles/antdOverride.ts +++ b/src/styles/antdOverride.ts @@ -1,4 +1,4 @@ -import { Theme, css } from 'antd-style'; +import { type Theme, css } from 'antd-style'; import { rgba } from 'polished'; export default ({ token }: { prefixCls: string; token: Theme }) => css` diff --git a/src/styles/global.ts b/src/styles/global.ts index 3c517d33d4..b5e0276067 100644 --- a/src/styles/global.ts +++ b/src/styles/global.ts @@ -1,4 +1,4 @@ -import { Theme, css } from 'antd-style'; +import { type Theme, css } from 'antd-style'; // fix ios input keyboard // overflow: hidden; diff --git a/src/styles/mobileHeader.ts b/src/styles/mobileHeader.ts index c9c2634431..82fc5dd6fa 100644 --- a/src/styles/mobileHeader.ts +++ b/src/styles/mobileHeader.ts @@ -1,4 +1,4 @@ -import { CSSProperties } from 'react'; +import { type CSSProperties } from 'react'; export const mobileHeaderSticky: CSSProperties = { position: 'sticky', diff --git a/src/tools/artifacts/index.ts b/src/tools/artifacts/index.ts index 48953d6774..a355255482 100644 --- a/src/tools/artifacts/index.ts +++ b/src/tools/artifacts/index.ts @@ -1,4 +1,4 @@ -import { BuiltinToolManifest } from '@lobechat/types'; +import { type BuiltinToolManifest } from '@lobechat/types'; import { systemPrompt } from '@/tools/artifacts/systemRole'; diff --git a/src/tools/code-interpreter-draft/Render/components/ResultFileGallery.tsx b/src/tools/code-interpreter-draft/Render/components/ResultFileGallery.tsx index 807ebe08bf..8956994ac3 100644 --- a/src/tools/code-interpreter-draft/Render/components/ResultFileGallery.tsx +++ b/src/tools/code-interpreter-draft/Render/components/ResultFileGallery.tsx @@ -1,4 +1,4 @@ -import { CodeInterpreterFileItem } from '@lobechat/types'; +import { type CodeInterpreterFileItem } from '@lobechat/types'; import { Flexbox, PreviewGroup } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/code-interpreter-draft/Render/components/ResultFileItem.tsx b/src/tools/code-interpreter-draft/Render/components/ResultFileItem.tsx index 3c61bb24e6..b2908128a3 100644 --- a/src/tools/code-interpreter-draft/Render/components/ResultFileItem.tsx +++ b/src/tools/code-interpreter-draft/Render/components/ResultFileItem.tsx @@ -1,4 +1,4 @@ -import { CodeInterpreterFileItem } from '@lobechat/types'; +import { type CodeInterpreterFileItem } from '@lobechat/types'; import { Icon, Image, MaterialFileTypeIcon, Text, Tooltip } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { Download } from 'lucide-react'; diff --git a/src/tools/code-interpreter-draft/Render/index.tsx b/src/tools/code-interpreter-draft/Render/index.tsx index 80d796026a..c471675eab 100644 --- a/src/tools/code-interpreter-draft/Render/index.tsx +++ b/src/tools/code-interpreter-draft/Render/index.tsx @@ -1,8 +1,8 @@ import { - BuiltinRenderProps, - CodeInterpreterParams, - CodeInterpreterResponse, - CodeInterpreterState, + type BuiltinRenderProps, + type CodeInterpreterParams, + type CodeInterpreterResponse, + type CodeInterpreterState, } from '@lobechat/types'; import { Alert, Flexbox, Highlighter, Text } from '@lobehub/ui'; import { useTheme } from 'antd-style'; diff --git a/src/tools/code-interpreter-draft/index.ts b/src/tools/code-interpreter-draft/index.ts index c99480949b..c7a5c41217 100644 --- a/src/tools/code-interpreter-draft/index.ts +++ b/src/tools/code-interpreter-draft/index.ts @@ -1,4 +1,4 @@ -import { BuiltinToolManifest } from '@lobechat/types'; +import { type BuiltinToolManifest } from '@lobechat/types'; export const CodeInterpreterIdentifier = 'lobe-code-interpreter'; diff --git a/src/tools/code-interpreter/ExecutionRuntime/index.ts b/src/tools/code-interpreter/ExecutionRuntime/index.ts index ce011b0d8d..57a89bd585 100644 --- a/src/tools/code-interpreter/ExecutionRuntime/index.ts +++ b/src/tools/code-interpreter/ExecutionRuntime/index.ts @@ -1,22 +1,22 @@ -import { BuiltinServerRuntimeOutput } from '@lobechat/types'; +import { type BuiltinServerRuntimeOutput } from '@lobechat/types'; import { codeInterpreterService } from '@/services/codeInterpreter'; import { - EditLocalFileState, - ExecuteCodeState, - ExportFileState, - GetCommandOutputState, - GlobFilesState, - GrepContentState, - KillCommandState, - ListLocalFilesState, - MoveLocalFilesState, - ReadLocalFileState, - RenameLocalFileState, - RunCommandState, - SearchLocalFilesState, - WriteLocalFileState, + type EditLocalFileState, + type ExecuteCodeState, + type ExportFileState, + type GetCommandOutputState, + type GlobFilesState, + type GrepContentState, + type KillCommandState, + type ListLocalFilesState, + type MoveLocalFilesState, + type ReadLocalFileState, + type RenameLocalFileState, + type RunCommandState, + type SearchLocalFilesState, + type WriteLocalFileState, } from '../type'; /** diff --git a/src/tools/code-interpreter/Intervention/EditLocalFile/index.tsx b/src/tools/code-interpreter/Intervention/EditLocalFile/index.tsx index baa338139a..6710d2d4e0 100644 --- a/src/tools/code-interpreter/Intervention/EditLocalFile/index.tsx +++ b/src/tools/code-interpreter/Intervention/EditLocalFile/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Highlighter, Text } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/code-interpreter/Intervention/ExecuteCode/index.tsx b/src/tools/code-interpreter/Intervention/ExecuteCode/index.tsx index db4391d36d..6481112c18 100644 --- a/src/tools/code-interpreter/Intervention/ExecuteCode/index.tsx +++ b/src/tools/code-interpreter/Intervention/ExecuteCode/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Highlighter, Text } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/code-interpreter/Intervention/MoveLocalFiles/index.tsx b/src/tools/code-interpreter/Intervention/MoveLocalFiles/index.tsx index 1e1b3075b3..2bcdcc1811 100644 --- a/src/tools/code-interpreter/Intervention/MoveLocalFiles/index.tsx +++ b/src/tools/code-interpreter/Intervention/MoveLocalFiles/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ArrowRight } from 'lucide-react'; diff --git a/src/tools/code-interpreter/Intervention/RunCommand/index.tsx b/src/tools/code-interpreter/Intervention/RunCommand/index.tsx index 3a8b52b2b5..445ee27de3 100644 --- a/src/tools/code-interpreter/Intervention/RunCommand/index.tsx +++ b/src/tools/code-interpreter/Intervention/RunCommand/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Highlighter, Text } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/code-interpreter/Intervention/WriteFile/index.tsx b/src/tools/code-interpreter/Intervention/WriteFile/index.tsx index f974ab0e41..f1c3aba49d 100644 --- a/src/tools/code-interpreter/Intervention/WriteFile/index.tsx +++ b/src/tools/code-interpreter/Intervention/WriteFile/index.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Highlighter, Text } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/code-interpreter/Render/EditLocalFile/index.tsx b/src/tools/code-interpreter/Render/EditLocalFile/index.tsx index 9b7ce42408..8dec3657a5 100644 --- a/src/tools/code-interpreter/Render/EditLocalFile/index.tsx +++ b/src/tools/code-interpreter/Render/EditLocalFile/index.tsx @@ -1,13 +1,13 @@ 'use client'; import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { ActionIcon, Block, Flexbox, Highlighter, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronDown, ChevronUp } from 'lucide-react'; import { memo, useState } from 'react'; -import { EditLocalFileState } from '../../type'; +import { type EditLocalFileState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/ExecuteCode/index.tsx b/src/tools/code-interpreter/Render/ExecuteCode/index.tsx index 466b300640..98f5bcd97d 100644 --- a/src/tools/code-interpreter/Render/ExecuteCode/index.tsx +++ b/src/tools/code-interpreter/Render/ExecuteCode/index.tsx @@ -1,13 +1,13 @@ 'use client'; import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { ActionIcon, Block, Flexbox, Highlighter, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronDown, ChevronUp } from 'lucide-react'; import { memo, useState } from 'react'; -import { ExecuteCodeState } from '../../type'; +import { type ExecuteCodeState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/ExportFile/index.tsx b/src/tools/code-interpreter/Render/ExportFile/index.tsx index f696001ffd..ea75aa657c 100644 --- a/src/tools/code-interpreter/Render/ExportFile/index.tsx +++ b/src/tools/code-interpreter/Render/ExportFile/index.tsx @@ -1,12 +1,12 @@ 'use client'; import { CheckCircleFilled, CloseCircleFilled, DownloadOutlined } from '@ant-design/icons'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { ActionIcon, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo, useCallback } from 'react'; -import { ExportFileState } from '../../type'; +import { type ExportFileState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/ListFiles/index.tsx b/src/tools/code-interpreter/Render/ListFiles/index.tsx index 2a94e2b2df..e7de415d62 100644 --- a/src/tools/code-interpreter/Render/ListFiles/index.tsx +++ b/src/tools/code-interpreter/Render/ListFiles/index.tsx @@ -1,12 +1,12 @@ 'use client'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Block, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { File, Folder } from 'lucide-react'; import { memo } from 'react'; -import { ListLocalFilesState } from '../../type'; +import { type ListLocalFilesState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/MoveLocalFiles/index.tsx b/src/tools/code-interpreter/Render/MoveLocalFiles/index.tsx index e970e7d2d5..ce15c4c16c 100644 --- a/src/tools/code-interpreter/Render/MoveLocalFiles/index.tsx +++ b/src/tools/code-interpreter/Render/MoveLocalFiles/index.tsx @@ -1,13 +1,13 @@ 'use client'; import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Block, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ArrowRight } from 'lucide-react'; import { memo } from 'react'; -import { MoveLocalFilesState } from '../../type'; +import { type MoveLocalFilesState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ arrow: css` diff --git a/src/tools/code-interpreter/Render/ReadLocalFile/index.tsx b/src/tools/code-interpreter/Render/ReadLocalFile/index.tsx index b78a51103b..40acb55733 100644 --- a/src/tools/code-interpreter/Render/ReadLocalFile/index.tsx +++ b/src/tools/code-interpreter/Render/ReadLocalFile/index.tsx @@ -1,11 +1,11 @@ 'use client'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Block, Flexbox, Highlighter, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; -import { ReadLocalFileState } from '../../type'; +import { type ReadLocalFileState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/RunCommand/index.tsx b/src/tools/code-interpreter/Render/RunCommand/index.tsx index 6ac1ee980d..404ebb5092 100644 --- a/src/tools/code-interpreter/Render/RunCommand/index.tsx +++ b/src/tools/code-interpreter/Render/RunCommand/index.tsx @@ -1,13 +1,13 @@ 'use client'; import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { ActionIcon, Block, Flexbox, Highlighter, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronDown, ChevronUp } from 'lucide-react'; import { memo, useState } from 'react'; -import { RunCommandState } from '../../type'; +import { type RunCommandState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/SearchFiles/index.tsx b/src/tools/code-interpreter/Render/SearchFiles/index.tsx index 4517819e53..bffa7504a8 100644 --- a/src/tools/code-interpreter/Render/SearchFiles/index.tsx +++ b/src/tools/code-interpreter/Render/SearchFiles/index.tsx @@ -1,12 +1,12 @@ 'use client'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Block, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { File, Folder } from 'lucide-react'; import { memo } from 'react'; -import { SearchLocalFilesState } from '../../type'; +import { type SearchLocalFilesState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/Render/WriteFile/index.tsx b/src/tools/code-interpreter/Render/WriteFile/index.tsx index 233eca5ff0..48c14600d1 100644 --- a/src/tools/code-interpreter/Render/WriteFile/index.tsx +++ b/src/tools/code-interpreter/Render/WriteFile/index.tsx @@ -1,12 +1,12 @@ 'use client'; import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; -import { WriteLocalFileState } from '../../type'; +import { type WriteLocalFileState } from '../../type'; const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/code-interpreter/index.ts b/src/tools/code-interpreter/index.ts index 4f699c54d1..03b6b80b80 100644 --- a/src/tools/code-interpreter/index.ts +++ b/src/tools/code-interpreter/index.ts @@ -1,4 +1,4 @@ -import { BuiltinToolManifest } from '@lobechat/types'; +import { type BuiltinToolManifest } from '@lobechat/types'; import { systemPrompt } from './systemRole'; diff --git a/src/tools/index.ts b/src/tools/index.ts index 6fb9766a54..2c377a719d 100644 --- a/src/tools/index.ts +++ b/src/tools/index.ts @@ -6,7 +6,7 @@ import { LocalSystemManifest } from '@lobechat/builtin-tool-local-system'; import { MemoryManifest } from '@lobechat/builtin-tool-memory'; import { NotebookManifest } from '@lobechat/builtin-tool-notebook'; import { PageAgentManifest } from '@lobechat/builtin-tool-page-agent'; -import { LobeBuiltinTool } from '@lobechat/types'; +import { type LobeBuiltinTool } from '@lobechat/types'; import { isDesktop } from '@/const/version'; diff --git a/src/tools/interventions.ts b/src/tools/interventions.ts index 6c8320c4e2..e1256a4133 100644 --- a/src/tools/interventions.ts +++ b/src/tools/interventions.ts @@ -10,7 +10,7 @@ import { GTDInterventions, GTDManifest } from '@lobechat/builtin-tool-gtd/client import { LocalSystemManifest } from '@lobechat/builtin-tool-local-system'; import { NotebookManifest } from '@lobechat/builtin-tool-notebook'; import { NotebookInterventions } from '@lobechat/builtin-tool-notebook/client'; -import { BuiltinIntervention } from '@lobechat/types'; +import { type BuiltinIntervention } from '@lobechat/types'; import { CodeInterpreterManifest as CloudCodeInterpreterManifest } from './code-interpreter'; import { CodeInterpreterInterventions } from './code-interpreter/Intervention'; diff --git a/src/tools/knowledge-base/Render/ReadKnowledge/index.tsx b/src/tools/knowledge-base/Render/ReadKnowledge/index.tsx index 79dbf8499c..5d82888740 100644 --- a/src/tools/knowledge-base/Render/ReadKnowledge/index.tsx +++ b/src/tools/knowledge-base/Render/ReadKnowledge/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { ReadKnowledge as BaseReadKnowledge } from '@lobechat/builtin-tool-knowledge-base/client'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/tools/knowledge-base/Render/SearchKnowledgeBase/index.tsx b/src/tools/knowledge-base/Render/SearchKnowledgeBase/index.tsx index e49c462286..ac27c97e3b 100644 --- a/src/tools/knowledge-base/Render/SearchKnowledgeBase/index.tsx +++ b/src/tools/knowledge-base/Render/SearchKnowledgeBase/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { SearchKnowledgeBase as BaseSearchKnowledgeBase } from '@lobechat/builtin-tool-knowledge-base/client'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { memo } from 'react'; import FileIcon from '@/components/FileIcon'; diff --git a/src/tools/local-system/Intervention/EditLocalFile/index.tsx b/src/tools/local-system/Intervention/EditLocalFile/index.tsx index e13e466655..1f5a78f894 100644 --- a/src/tools/local-system/Intervention/EditLocalFile/index.tsx +++ b/src/tools/local-system/Intervention/EditLocalFile/index.tsx @@ -1,5 +1,5 @@ -import { EditLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type EditLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Icon, Skeleton, Text } from '@lobehub/ui'; import { useThemeMode } from 'antd-style'; import { createPatch } from 'diff'; diff --git a/src/tools/local-system/Intervention/MoveLocalFiles/index.tsx b/src/tools/local-system/Intervention/MoveLocalFiles/index.tsx index 72d2ca5aad..108cdefc1f 100644 --- a/src/tools/local-system/Intervention/MoveLocalFiles/index.tsx +++ b/src/tools/local-system/Intervention/MoveLocalFiles/index.tsx @@ -1,5 +1,5 @@ -import { MoveLocalFilesParams } from '@lobechat/electron-client-ipc'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type MoveLocalFilesParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/tools/local-system/Intervention/RunCommand/index.tsx b/src/tools/local-system/Intervention/RunCommand/index.tsx index ea7a593e5f..1e8591a8cd 100644 --- a/src/tools/local-system/Intervention/RunCommand/index.tsx +++ b/src/tools/local-system/Intervention/RunCommand/index.tsx @@ -1,5 +1,5 @@ -import { RunCommandParams } from '@lobechat/electron-client-ipc'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type RunCommandParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Highlighter, Text } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/local-system/Intervention/WriteFile/index.tsx b/src/tools/local-system/Intervention/WriteFile/index.tsx index c6c9f6801e..5d29d56c75 100644 --- a/src/tools/local-system/Intervention/WriteFile/index.tsx +++ b/src/tools/local-system/Intervention/WriteFile/index.tsx @@ -1,5 +1,5 @@ -import { WriteLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinInterventionProps } from '@lobechat/types'; +import { type WriteLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinInterventionProps } from '@lobechat/types'; import { Flexbox, Highlighter, Icon, Text } from '@lobehub/ui'; import { ChevronRight } from 'lucide-react'; import path from 'path-browserify-esm'; diff --git a/src/tools/local-system/Placeholder/ListFiles.tsx b/src/tools/local-system/Placeholder/ListFiles.tsx index 20e7f3fe8d..3c532742eb 100644 --- a/src/tools/local-system/Placeholder/ListFiles.tsx +++ b/src/tools/local-system/Placeholder/ListFiles.tsx @@ -1,5 +1,5 @@ -import { ListLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinPlaceholderProps } from '@lobechat/types'; +import { type ListLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinPlaceholderProps } from '@lobechat/types'; import { Center, Flexbox, Skeleton } from '@lobehub/ui'; import React, { memo } from 'react'; diff --git a/src/tools/local-system/Placeholder/SearchFiles.tsx b/src/tools/local-system/Placeholder/SearchFiles.tsx index 16ecd4d932..97b80ab5f5 100644 --- a/src/tools/local-system/Placeholder/SearchFiles.tsx +++ b/src/tools/local-system/Placeholder/SearchFiles.tsx @@ -1,5 +1,5 @@ -import { LocalSearchFilesParams } from '@lobechat/electron-client-ipc'; -import { BuiltinPlaceholderProps } from '@lobechat/types'; +import { type LocalSearchFilesParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinPlaceholderProps } from '@lobechat/types'; import { Center, Flexbox, Icon, Skeleton } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { SearchIcon } from 'lucide-react'; diff --git a/src/tools/local-system/Render/EditLocalFile/index.tsx b/src/tools/local-system/Render/EditLocalFile/index.tsx index f331c463b5..f046085aec 100644 --- a/src/tools/local-system/Render/EditLocalFile/index.tsx +++ b/src/tools/local-system/Render/EditLocalFile/index.tsx @@ -1,6 +1,6 @@ -import { EditLocalFileState } from '@lobechat/builtin-tool-local-system'; -import { EditLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type EditLocalFileState } from '@lobechat/builtin-tool-local-system'; +import { type EditLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Alert, Flexbox, Icon, Skeleton } from '@lobehub/ui'; import { useThemeMode } from 'antd-style'; import { ChevronRight } from 'lucide-react'; diff --git a/src/tools/local-system/Render/ListFiles/Result.tsx b/src/tools/local-system/Render/ListFiles/Result.tsx index a00bbcfe14..367d44da97 100644 --- a/src/tools/local-system/Render/ListFiles/Result.tsx +++ b/src/tools/local-system/Render/ListFiles/Result.tsx @@ -1,5 +1,5 @@ -import { LocalFileItem } from '@lobechat/electron-client-ipc'; -import { ChatMessagePluginError } from '@lobechat/types'; +import { type LocalFileItem } from '@lobechat/electron-client-ipc'; +import { type ChatMessagePluginError } from '@lobechat/types'; import { Flexbox, Skeleton } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/local-system/Render/ListFiles/index.tsx b/src/tools/local-system/Render/ListFiles/index.tsx index 33c54dc8e5..812fc7b1b5 100644 --- a/src/tools/local-system/Render/ListFiles/index.tsx +++ b/src/tools/local-system/Render/ListFiles/index.tsx @@ -1,6 +1,6 @@ -import { LocalFileListState } from '@lobechat/builtin-tool-local-system'; -import { ListLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type LocalFileListState } from '@lobechat/builtin-tool-local-system'; +import { type ListLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import React, { memo } from 'react'; import { LocalFolder } from '@/features/LocalFile'; diff --git a/src/tools/local-system/Render/MoveLocalFiles/index.tsx b/src/tools/local-system/Render/MoveLocalFiles/index.tsx index 43cdaeface..68ddb858f3 100644 --- a/src/tools/local-system/Render/MoveLocalFiles/index.tsx +++ b/src/tools/local-system/Render/MoveLocalFiles/index.tsx @@ -1,5 +1,5 @@ -import { MoveLocalFilesParams } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type MoveLocalFilesParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/src/tools/local-system/Render/ReadLocalFile/ReadFileView.tsx b/src/tools/local-system/Render/ReadLocalFile/ReadFileView.tsx index d5c94f3f33..273e5b3a76 100644 --- a/src/tools/local-system/Render/ReadLocalFile/ReadFileView.tsx +++ b/src/tools/local-system/Render/ReadLocalFile/ReadFileView.tsx @@ -1,4 +1,4 @@ -import { LocalReadFileResult } from '@lobechat/electron-client-ipc'; +import { type LocalReadFileResult } from '@lobechat/electron-client-ipc'; import { ActionIcon, Flexbox, Icon, Markdown, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { AlignLeft, Asterisk, ExternalLink, FolderOpen } from 'lucide-react'; diff --git a/src/tools/local-system/Render/ReadLocalFile/index.tsx b/src/tools/local-system/Render/ReadLocalFile/index.tsx index 3698bea596..c3f199fe00 100644 --- a/src/tools/local-system/Render/ReadLocalFile/index.tsx +++ b/src/tools/local-system/Render/ReadLocalFile/index.tsx @@ -1,6 +1,6 @@ import type { LocalReadFileState } from '@lobechat/builtin-tool-local-system'; -import { LocalReadFileParams } from '@lobechat/electron-client-ipc'; -import { ChatMessagePluginError } from '@lobechat/types'; +import { type LocalReadFileParams } from '@lobechat/electron-client-ipc'; +import { type ChatMessagePluginError } from '@lobechat/types'; import { memo } from 'react'; import { useChatStore } from '@/store/chat'; diff --git a/src/tools/local-system/Render/RenameLocalFile/index.tsx b/src/tools/local-system/Render/RenameLocalFile/index.tsx index b8689fe997..b59e4ca456 100644 --- a/src/tools/local-system/Render/RenameLocalFile/index.tsx +++ b/src/tools/local-system/Render/RenameLocalFile/index.tsx @@ -1,6 +1,6 @@ import type { LocalReadFileState } from '@lobechat/builtin-tool-local-system'; -import { RenameLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type RenameLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Flexbox, Icon } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ArrowRightIcon } from 'lucide-react'; diff --git a/src/tools/local-system/Render/RunCommand/index.tsx b/src/tools/local-system/Render/RunCommand/index.tsx index 83da5d3260..0fc2056874 100644 --- a/src/tools/local-system/Render/RunCommand/index.tsx +++ b/src/tools/local-system/Render/RunCommand/index.tsx @@ -1,6 +1,6 @@ import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; -import { RunCommandParams, RunCommandResult } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type RunCommandParams, type RunCommandResult } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { ActionIcon, Block, Flexbox, Highlighter, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { ChevronDown, ChevronUp } from 'lucide-react'; diff --git a/src/tools/local-system/Render/SearchFiles/Result.tsx b/src/tools/local-system/Render/SearchFiles/Result.tsx index 1372733d1b..50d4f17c51 100644 --- a/src/tools/local-system/Render/SearchFiles/Result.tsx +++ b/src/tools/local-system/Render/SearchFiles/Result.tsx @@ -1,5 +1,5 @@ -import { FileResult } from '@lobechat/builtin-tool-local-system'; -import { ChatMessagePluginError } from '@lobechat/types'; +import { type FileResult } from '@lobechat/builtin-tool-local-system'; +import { type ChatMessagePluginError } from '@lobechat/types'; import { Flexbox, Skeleton } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/local-system/Render/SearchFiles/SearchQuery/index.tsx b/src/tools/local-system/Render/SearchFiles/SearchQuery/index.tsx index f6d006ceb4..b9912a140a 100644 --- a/src/tools/local-system/Render/SearchFiles/SearchQuery/index.tsx +++ b/src/tools/local-system/Render/SearchFiles/SearchQuery/index.tsx @@ -1,5 +1,5 @@ import type { LocalFileSearchState } from '@lobechat/builtin-tool-local-system'; -import { LocalSearchFilesParams } from '@lobechat/electron-client-ipc'; +import { type LocalSearchFilesParams } from '@lobechat/electron-client-ipc'; import { ActionIcon, Button, Flexbox, Icon, SearchBar } from '@lobehub/ui'; import { SearchIcon, XIcon } from 'lucide-react'; import { memo, useState } from 'react'; diff --git a/src/tools/local-system/Render/SearchFiles/index.tsx b/src/tools/local-system/Render/SearchFiles/index.tsx index 9d7d349864..56fb60b06a 100644 --- a/src/tools/local-system/Render/SearchFiles/index.tsx +++ b/src/tools/local-system/Render/SearchFiles/index.tsx @@ -1,6 +1,6 @@ import type { LocalFileSearchState } from '@lobechat/builtin-tool-local-system'; -import { LocalSearchFilesParams } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type LocalSearchFilesParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Flexbox } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/local-system/Render/WriteFile/index.tsx b/src/tools/local-system/Render/WriteFile/index.tsx index 255381de66..4ecdaacef2 100644 --- a/src/tools/local-system/Render/WriteFile/index.tsx +++ b/src/tools/local-system/Render/WriteFile/index.tsx @@ -1,5 +1,5 @@ -import { WriteLocalFileParams } from '@lobechat/electron-client-ipc'; -import { BuiltinRenderProps } from '@lobechat/types'; +import { type WriteLocalFileParams } from '@lobechat/electron-client-ipc'; +import { type BuiltinRenderProps } from '@lobechat/types'; import { Flexbox, Icon, Skeleton } from '@lobehub/ui'; import { ChevronRight } from 'lucide-react'; import path from 'path-browserify-esm'; diff --git a/src/tools/local-system/components/FileItem.tsx b/src/tools/local-system/components/FileItem.tsx index 2b4877a570..e23539af82 100644 --- a/src/tools/local-system/components/FileItem.tsx +++ b/src/tools/local-system/components/FileItem.tsx @@ -1,4 +1,4 @@ -import { LocalFileItem } from '@lobechat/electron-client-ipc'; +import { type LocalFileItem } from '@lobechat/electron-client-ipc'; import { ActionIcon, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import dayjs from 'dayjs'; diff --git a/src/tools/placeholders.ts b/src/tools/placeholders.ts index edb7da8d75..6bc79e6aea 100644 --- a/src/tools/placeholders.ts +++ b/src/tools/placeholders.ts @@ -1,5 +1,5 @@ import { LocalSystemApiName, LocalSystemManifest } from '@lobechat/builtin-tool-local-system'; -import { BuiltinPlaceholder } from '@lobechat/types'; +import { type BuiltinPlaceholder } from '@lobechat/types'; import { ListFiles as LocalSystemListFiles } from './local-system/Placeholder/ListFiles'; import LocalSystemSearchFiles from './local-system/Placeholder/SearchFiles'; diff --git a/src/tools/portals.ts b/src/tools/portals.ts index 73f9bd5e81..37afcaab43 100644 --- a/src/tools/portals.ts +++ b/src/tools/portals.ts @@ -1,4 +1,4 @@ -import { BuiltinPortal } from '@lobechat/types'; +import { type BuiltinPortal } from '@lobechat/types'; import { WebBrowsingManifest } from './web-browsing'; import WebBrowsing from './web-browsing/Portal'; diff --git a/src/tools/renders.ts b/src/tools/renders.ts index 270dc9cf62..245522a27b 100644 --- a/src/tools/renders.ts +++ b/src/tools/renders.ts @@ -9,7 +9,7 @@ import { GTDManifest, GTDRenders } from '@lobechat/builtin-tool-gtd/client'; // local-system import { LocalSystemManifest } from '@lobechat/builtin-tool-local-system'; import { NotebookManifest, NotebookRenders } from '@lobechat/builtin-tool-notebook/client'; -import { BuiltinRender } from '@lobechat/types'; +import { type BuiltinRender } from '@lobechat/types'; // code-interpreter import { CodeInterpreterManifest } from './code-interpreter'; diff --git a/src/tools/web-browsing/ExecutionRuntime/index.ts b/src/tools/web-browsing/ExecutionRuntime/index.ts index a9bb105ab5..b7773d88d3 100644 --- a/src/tools/web-browsing/ExecutionRuntime/index.ts +++ b/src/tools/web-browsing/ExecutionRuntime/index.ts @@ -1,11 +1,11 @@ import { crawlResultsPrompt, searchResultsPrompt } from '@lobechat/prompts'; import { - BuiltinServerRuntimeOutput, - CrawlMultiPagesQuery, - CrawlSinglePageQuery, - SearchContent, - SearchQuery, - SearchServiceImpl, + type BuiltinServerRuntimeOutput, + type CrawlMultiPagesQuery, + type CrawlSinglePageQuery, + type SearchContent, + type SearchQuery, + type SearchServiceImpl, } from '@lobechat/types'; import { CRAWL_CONTENT_LIMITED_COUNT, SEARCH_ITEM_LIMITED_COUNT } from '../const'; diff --git a/src/tools/web-browsing/Placeholder/CrawlMultiPages.tsx b/src/tools/web-browsing/Placeholder/CrawlMultiPages.tsx index 506bd31f77..ab04d8dbf7 100644 --- a/src/tools/web-browsing/Placeholder/CrawlMultiPages.tsx +++ b/src/tools/web-browsing/Placeholder/CrawlMultiPages.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinPlaceholderProps } from '@lobechat/types'; +import { type BuiltinPlaceholderProps } from '@lobechat/types'; import { ScrollShadow } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/web-browsing/Placeholder/CrawlSinglePage.tsx b/src/tools/web-browsing/Placeholder/CrawlSinglePage.tsx index 49657b6191..6475d80533 100644 --- a/src/tools/web-browsing/Placeholder/CrawlSinglePage.tsx +++ b/src/tools/web-browsing/Placeholder/CrawlSinglePage.tsx @@ -1,6 +1,6 @@ 'use client'; -import { BuiltinPlaceholderProps } from '@lobechat/types'; +import { type BuiltinPlaceholderProps } from '@lobechat/types'; import { memo } from 'react'; import LoadingCard from '../Render/PageContent/Loading'; diff --git a/src/tools/web-browsing/Placeholder/Search.tsx b/src/tools/web-browsing/Placeholder/Search.tsx index 34add5d05e..eaa6e09244 100644 --- a/src/tools/web-browsing/Placeholder/Search.tsx +++ b/src/tools/web-browsing/Placeholder/Search.tsx @@ -1,4 +1,4 @@ -import { BuiltinPlaceholderProps, SearchQuery } from '@lobechat/types'; +import { type BuiltinPlaceholderProps, type SearchQuery } from '@lobechat/types'; import { Flexbox, Icon, Skeleton } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { SearchIcon } from 'lucide-react'; diff --git a/src/tools/web-browsing/Portal/PageContent/index.tsx b/src/tools/web-browsing/Portal/PageContent/index.tsx index a625c603b9..addd706dbb 100644 --- a/src/tools/web-browsing/Portal/PageContent/index.tsx +++ b/src/tools/web-browsing/Portal/PageContent/index.tsx @@ -1,5 +1,5 @@ -import { CrawlResult } from '@lobechat/types'; -import { CrawlSuccessResult } from '@lobechat/web-crawler'; +import { type CrawlResult } from '@lobechat/types'; +import { type CrawlSuccessResult } from '@lobechat/web-crawler'; import { Alert, CopyButton, diff --git a/src/tools/web-browsing/Portal/PageContents/index.tsx b/src/tools/web-browsing/Portal/PageContents/index.tsx index f557d5c41e..a4db40c384 100644 --- a/src/tools/web-browsing/Portal/PageContents/index.tsx +++ b/src/tools/web-browsing/Portal/PageContents/index.tsx @@ -1,4 +1,4 @@ -import { CrawlResult } from '@lobechat/types'; +import { type CrawlResult } from '@lobechat/types'; import { memo } from 'react'; import { useChatStore } from '@/store/chat'; diff --git a/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/Video.tsx b/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/Video.tsx index 51ad9a551f..d50cf4834f 100644 --- a/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/Video.tsx +++ b/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/Video.tsx @@ -1,4 +1,4 @@ -import { UniformSearchResult } from '@lobechat/types'; +import { type UniformSearchResult } from '@lobechat/types'; import { Avatar, Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo, useState } from 'react'; diff --git a/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/index.tsx b/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/index.tsx index f692d3c593..f18927164d 100644 --- a/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/index.tsx +++ b/src/tools/web-browsing/Portal/Search/ResultList/SearchItem/index.tsx @@ -1,4 +1,4 @@ -import { UniformSearchResult } from '@lobechat/types'; +import { type UniformSearchResult } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import { memo } from 'react'; diff --git a/src/tools/web-browsing/Portal/Search/ResultList/index.tsx b/src/tools/web-browsing/Portal/Search/ResultList/index.tsx index bdb5e3338e..924257bbc2 100644 --- a/src/tools/web-browsing/Portal/Search/ResultList/index.tsx +++ b/src/tools/web-browsing/Portal/Search/ResultList/index.tsx @@ -1,4 +1,4 @@ -import { UniformSearchResult } from '@lobechat/types'; +import { type UniformSearchResult } from '@lobechat/types'; import React, { memo, useCallback } from 'react'; import { Virtuoso } from 'react-virtuoso'; diff --git a/src/tools/web-browsing/Portal/Search/index.tsx b/src/tools/web-browsing/Portal/Search/index.tsx index e9f77b12f4..403539a8fc 100644 --- a/src/tools/web-browsing/Portal/Search/index.tsx +++ b/src/tools/web-browsing/Portal/Search/index.tsx @@ -1,4 +1,4 @@ -import { SearchQuery, UniformSearchResponse } from '@lobechat/types'; +import { type SearchQuery, type UniformSearchResponse } from '@lobechat/types'; import { Flexbox, Skeleton } from '@lobehub/ui'; import { uniq } from 'es-toolkit/compat'; import { memo } from 'react'; diff --git a/src/tools/web-browsing/Portal/index.tsx b/src/tools/web-browsing/Portal/index.tsx index 49c3dceee0..70c6af12c1 100644 --- a/src/tools/web-browsing/Portal/index.tsx +++ b/src/tools/web-browsing/Portal/index.tsx @@ -1,4 +1,4 @@ -import { BuiltinPortalProps, CrawlPluginState, SearchQuery } from '@lobechat/types'; +import { type BuiltinPortalProps, type CrawlPluginState, type SearchQuery } from '@lobechat/types'; import { memo } from 'react'; import { WebBrowsingApiName } from '@/tools/web-browsing'; diff --git a/src/tools/web-browsing/Render/CrawlMultiPages.tsx b/src/tools/web-browsing/Render/CrawlMultiPages.tsx index 5d7e3051c3..612be70c7c 100644 --- a/src/tools/web-browsing/Render/CrawlMultiPages.tsx +++ b/src/tools/web-browsing/Render/CrawlMultiPages.tsx @@ -1,4 +1,4 @@ -import { BuiltinRenderProps, CrawlMultiPagesQuery, CrawlPluginState } from '@lobechat/types'; +import { type BuiltinRenderProps, type CrawlMultiPagesQuery, type CrawlPluginState } from '@lobechat/types'; import { memo } from 'react'; import PageContent from './PageContent'; diff --git a/src/tools/web-browsing/Render/CrawlSinglePage.tsx b/src/tools/web-browsing/Render/CrawlSinglePage.tsx index 1becf64bcc..51ad45d60f 100644 --- a/src/tools/web-browsing/Render/CrawlSinglePage.tsx +++ b/src/tools/web-browsing/Render/CrawlSinglePage.tsx @@ -1,4 +1,4 @@ -import { BuiltinRenderProps, CrawlPluginState, CrawlSinglePageQuery } from '@lobechat/types'; +import { type BuiltinRenderProps, type CrawlPluginState, type CrawlSinglePageQuery } from '@lobechat/types'; import { memo } from 'react'; import PageContent from './PageContent'; diff --git a/src/tools/web-browsing/Render/PageContent/Result.tsx b/src/tools/web-browsing/Render/PageContent/Result.tsx index 87a26ccce9..38f44450d9 100644 --- a/src/tools/web-browsing/Render/PageContent/Result.tsx +++ b/src/tools/web-browsing/Render/PageContent/Result.tsx @@ -1,6 +1,6 @@ 'use client'; -import { CrawlErrorResult, CrawlSuccessResult } from '@lobechat/web-crawler'; +import { type CrawlErrorResult, type CrawlSuccessResult } from '@lobechat/web-crawler'; import { Alert, Center, Flexbox, Icon, Text } from '@lobehub/ui'; import { Descriptions } from 'antd'; import { createStyles } from 'antd-style'; diff --git a/src/tools/web-browsing/Render/PageContent/index.tsx b/src/tools/web-browsing/Render/PageContent/index.tsx index 3ad5e97f12..7219a20ff6 100644 --- a/src/tools/web-browsing/Render/PageContent/index.tsx +++ b/src/tools/web-browsing/Render/PageContent/index.tsx @@ -1,5 +1,5 @@ -import { CrawlPluginState } from '@lobechat/types'; -import { CrawlErrorResult } from '@lobechat/web-crawler'; +import { type CrawlPluginState } from '@lobechat/types'; +import { type CrawlErrorResult } from '@lobechat/web-crawler'; import { Flexbox, ScrollShadow } from '@lobehub/ui'; import { memo } from 'react'; diff --git a/src/tools/web-browsing/Render/Search/ConfigForm/style.tsx b/src/tools/web-browsing/Render/Search/ConfigForm/style.tsx index 040a054b23..c802adbee1 100644 --- a/src/tools/web-browsing/Render/Search/ConfigForm/style.tsx +++ b/src/tools/web-browsing/Render/Search/ConfigForm/style.tsx @@ -1,6 +1,6 @@ -import { Avatar, Center, CenterProps, Flexbox } from '@lobehub/ui'; +import { Avatar, Center, type CenterProps, Flexbox } from '@lobehub/ui'; import { createStyles } from 'antd-style'; -import { ReactNode, memo } from 'react'; +import { type ReactNode, memo } from 'react'; export const useStyles = createStyles(({ css, token }) => ({ container: css` diff --git a/src/tools/web-browsing/Render/Search/SearchQuery/index.tsx b/src/tools/web-browsing/Render/Search/SearchQuery/index.tsx index f16c7569cd..9cd8bd69d8 100644 --- a/src/tools/web-browsing/Render/Search/SearchQuery/index.tsx +++ b/src/tools/web-browsing/Render/Search/SearchQuery/index.tsx @@ -1,4 +1,4 @@ -import { SearchQuery, UniformSearchResponse } from '@lobechat/types'; +import { type SearchQuery, type UniformSearchResponse } from '@lobechat/types'; import { ActionIcon } from '@lobehub/ui'; import { uniq } from 'es-toolkit/compat'; import { XIcon } from 'lucide-react'; diff --git a/src/tools/web-browsing/Render/Search/SearchResult/SearchResultItem.tsx b/src/tools/web-browsing/Render/Search/SearchResult/SearchResultItem.tsx index 1f76db3c08..748fd08fce 100644 --- a/src/tools/web-browsing/Render/Search/SearchResult/SearchResultItem.tsx +++ b/src/tools/web-browsing/Render/Search/SearchResult/SearchResultItem.tsx @@ -1,4 +1,4 @@ -import { UniformSearchResult } from '@lobechat/types'; +import { type UniformSearchResult } from '@lobechat/types'; import { Flexbox, Text } from '@lobehub/ui'; import { createStyles } from 'antd-style'; import Link from 'next/link'; diff --git a/src/tools/web-browsing/Render/Search/SearchResult/index.tsx b/src/tools/web-browsing/Render/Search/SearchResult/index.tsx index dec0130665..2a6143a612 100644 --- a/src/tools/web-browsing/Render/Search/SearchResult/index.tsx +++ b/src/tools/web-browsing/Render/Search/SearchResult/index.tsx @@ -1,4 +1,4 @@ -import { SearchQuery, UniformSearchResponse } from '@lobechat/types'; +import { type SearchQuery, type UniformSearchResponse } from '@lobechat/types'; import { Flexbox, Icon, Skeleton, Text , Button } from '@lobehub/ui'; import { uniq } from 'es-toolkit/compat'; import { Edit2Icon } from 'lucide-react'; diff --git a/src/tools/web-browsing/Render/Search/index.tsx b/src/tools/web-browsing/Render/Search/index.tsx index 561126cd6a..77b1e41fe8 100644 --- a/src/tools/web-browsing/Render/Search/index.tsx +++ b/src/tools/web-browsing/Render/Search/index.tsx @@ -1,4 +1,4 @@ -import { BuiltinRenderProps, SearchQuery, UniformSearchResponse } from '@lobechat/types'; +import { type BuiltinRenderProps, type SearchQuery, type UniformSearchResponse } from '@lobechat/types'; import { Alert, Flexbox, Highlighter } from '@lobehub/ui'; import { memo, useState } from 'react'; diff --git a/src/tools/web-browsing/components/SearchBar.tsx b/src/tools/web-browsing/components/SearchBar.tsx index c186036fdd..18a643eeeb 100644 --- a/src/tools/web-browsing/components/SearchBar.tsx +++ b/src/tools/web-browsing/components/SearchBar.tsx @@ -1,8 +1,8 @@ -import { SearchQuery } from '@lobechat/types'; +import { type SearchQuery } from '@lobechat/types'; import { Button, Flexbox, Input, Select, Text, Tooltip } from '@lobehub/ui'; import { Checkbox, Radio, Space } from 'antd'; import { SearchIcon } from 'lucide-react'; -import { ReactNode, memo, useState } from 'react'; +import { type ReactNode, memo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useIsMobile } from '@/hooks/useIsMobile'; diff --git a/src/tools/web-browsing/index.ts b/src/tools/web-browsing/index.ts index dca65919ba..570f8febed 100644 --- a/src/tools/web-browsing/index.ts +++ b/src/tools/web-browsing/index.ts @@ -1,4 +1,4 @@ -import { BuiltinToolManifest } from '@lobechat/types'; +import { type BuiltinToolManifest } from '@lobechat/types'; import dayjs from 'dayjs'; import { systemPrompt } from './systemRole'; diff --git a/src/types/global.d.ts b/src/types/global.d.ts index 656be784a3..0dc251f50c 100644 --- a/src/types/global.d.ts +++ b/src/types/global.d.ts @@ -1,6 +1,6 @@ import type { LobeCustomStylish, LobeCustomToken } from '@lobehub/ui'; import 'antd-style'; -import { AntdToken } from 'antd-style/lib/types/theme'; +import { type AntdToken } from 'antd-style/lib/types/theme'; declare module 'antd-style' { // eslint-disable-next-line @typescript-eslint/no-empty-interface diff --git a/src/types/i18next.d.ts b/src/types/i18next.d.ts index a0a209489e..8414d6d642 100644 --- a/src/types/i18next.d.ts +++ b/src/types/i18next.d.ts @@ -1,4 +1,4 @@ -import { DefaultResources } from '@/types/locale'; +import { type DefaultResources } from '@/types/locale'; declare module 'i18next' { interface CustomTypeOptions { diff --git a/src/types/locale.ts b/src/types/locale.ts index da7c86d9c7..d95673450a 100644 --- a/src/types/locale.ts +++ b/src/types/locale.ts @@ -1,4 +1,4 @@ -import { Locales } from '@/locales/resources'; +import { type Locales } from '@/locales/resources'; export type * from '@/locales/resources'; diff --git a/src/utils/client/switchLang.ts b/src/utils/client/switchLang.ts index 2a8f1377cf..b805c099ad 100644 --- a/src/utils/client/switchLang.ts +++ b/src/utils/client/switchLang.ts @@ -2,7 +2,7 @@ import { setCookie } from '@lobechat/utils'; import { changeLanguage } from 'i18next'; import { LOBE_LOCALE_COOKIE } from '@/const/locale'; -import { LocaleMode } from '@/types/locale'; +import { type LocaleMode } from '@/types/locale'; export const switchLang = (locale: LocaleMode) => { const lang = locale === 'auto' ? navigator.language : locale; diff --git a/src/utils/errorResponse.ts b/src/utils/errorResponse.ts index a8825b95cd..6653064e7e 100644 --- a/src/utils/errorResponse.ts +++ b/src/utils/errorResponse.ts @@ -1,5 +1,5 @@ -import { AgentRuntimeErrorType, ILobeAgentRuntimeErrorType } from '@lobechat/model-runtime'; -import { ChatErrorType, ErrorResponse, ErrorType } from '@lobechat/types'; +import { AgentRuntimeErrorType, type ILobeAgentRuntimeErrorType } from '@lobechat/model-runtime'; +import { ChatErrorType, type ErrorResponse, type ErrorType } from '@lobechat/types'; const getStatus = (errorType: ILobeAgentRuntimeErrorType | ErrorType) => { // InvalidAccessCode / InvalidAzureAPIKey / InvalidOpenAIAPIKey / InvalidZhipuAPIKey .... diff --git a/src/utils/locale.ts b/src/utils/locale.ts index 9d4fe1ffe6..6aa68279e4 100644 --- a/src/utils/locale.ts +++ b/src/utils/locale.ts @@ -1,7 +1,7 @@ import { resolveAcceptLanguage } from 'resolve-accept-language'; import { DEFAULT_LANG } from '@/const/locale'; -import { Locales, locales, normalizeLocale } from '@/locales/resources'; +import { type Locales, locales, normalizeLocale } from '@/locales/resources'; import { RouteVariants } from './server/routeVariants'; diff --git a/src/utils/router.tsx b/src/utils/router.tsx index 4e9d3e2c1e..2d7b0f7232 100644 --- a/src/utils/router.tsx +++ b/src/utils/router.tsx @@ -1,8 +1,8 @@ 'use client'; import { - ComponentType, - ReactElement, + type ComponentType, + type ReactElement, Suspense, createElement, lazy, diff --git a/src/utils/server/pageProps.ts b/src/utils/server/pageProps.ts index a751c4c2ae..82bec56457 100644 --- a/src/utils/server/pageProps.ts +++ b/src/utils/server/pageProps.ts @@ -1,5 +1,5 @@ import { translation } from '@/server/translation'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; import { RouteVariants } from './routeVariants'; diff --git a/src/utils/server/parseModels.ts b/src/utils/server/parseModels.ts index 50f0338660..5829ad28af 100644 --- a/src/utils/server/parseModels.ts +++ b/src/utils/server/parseModels.ts @@ -1,7 +1,7 @@ import { getModelPropertyWithFallback } from '@lobechat/model-runtime'; import { merge } from '@lobechat/utils'; import { produce } from 'immer'; -import { AiFullModelCard, AiModelType } from 'model-bank'; +import { type AiFullModelCard, type AiModelType } from 'model-bank'; /** * Parse model string to add or remove models. diff --git a/src/utils/server/routeVariants.ts b/src/utils/server/routeVariants.ts index 491cd37e86..6e7c35b068 100644 --- a/src/utils/server/routeVariants.ts +++ b/src/utils/server/routeVariants.ts @@ -1,6 +1,6 @@ import { RouteVariants } from '@lobechat/desktop-bridge'; -import { DynamicLayoutProps } from '@/types/next'; +import { type DynamicLayoutProps } from '@/types/next'; export { DEFAULT_LANG, diff --git a/tests/utils.tsx b/tests/utils.tsx index 40829d335e..72d8823881 100644 --- a/tests/utils.tsx +++ b/tests/utils.tsx @@ -1,4 +1,4 @@ -import { PropsWithChildren } from 'react'; +import { type PropsWithChildren } from 'react'; import { SWRConfig } from 'swr'; // 全局的 SWR 配置