支持在会话输入框直接进行文件/图片的拖拽和粘贴

This commit is contained in:
xintaofei
2026-03-08 10:54:06 +08:00
parent 68e2c7f989
commit 7a4cbcb73e
24 changed files with 1335 additions and 78 deletions

View File

@@ -13,14 +13,22 @@ import type {
AgentType,
AvailableCommandInfo,
ConnectionStatus,
PromptCapabilitiesInfo,
SessionConfigOptionInfo,
SessionModeStateInfo,
PromptInputBlock,
} from "@/lib/types"
const DEFAULT_PROMPT_CAPABILITIES: PromptCapabilitiesInfo = {
image: false,
audio: false,
embedded_context: false,
}
export interface UseConnectionReturn {
connectionId: string | null
status: ConnectionStatus | null
promptCapabilities: PromptCapabilitiesInfo
selectorsReady: boolean
sessionId: string | null
modes: SessionModeStateInfo | null
@@ -64,6 +72,8 @@ export function useConnection(contextKey: string): UseConnectionReturn {
const connectionId = connection?.connectionId ?? null
const status = connection?.status ?? null
const promptCapabilities =
connection?.promptCapabilities ?? DEFAULT_PROMPT_CAPABILITIES
const selectorsReady = connection?.selectorsReady ?? false
const sessionId = connection?.sessionId ?? null
const modes = connection?.modes ?? null
@@ -119,6 +129,7 @@ export function useConnection(contextKey: string): UseConnectionReturn {
() => ({
connectionId,
status,
promptCapabilities,
selectorsReady,
sessionId,
modes,
@@ -138,6 +149,7 @@ export function useConnection(contextKey: string): UseConnectionReturn {
[
connectionId,
status,
promptCapabilities,
selectorsReady,
sessionId,
modes,