mirror of
https://github.com/stablyai/orca.git
synced 2026-11-04 11:07:42 +00:00
Accept positive safe-integer line and column flags through the existing file-open path. Reject invalid or incomplete positions before changing the editor. Bind deferred reveals to the requested workspace and tab, including floating panels, and clamp oversized positions without moving another editor or stealing late focus. Co-authored-by: Nikita Maketryuk <n.maketryuk@lince.studio>
85 lines
1.9 KiB
TypeScript
85 lines
1.9 KiB
TypeScript
import type { RasterImageDimensions } from './raster-image-dimensions'
|
|
|
|
export type RuntimeFileListEntry = {
|
|
relativePath: string
|
|
basename: string
|
|
kind: 'text' | 'binary'
|
|
}
|
|
|
|
export type RuntimeFileListResult = {
|
|
worktree: string
|
|
rootPath: string
|
|
files: RuntimeFileListEntry[]
|
|
totalCount: number
|
|
truncated: boolean
|
|
quickOpenSearchVersion?: number
|
|
}
|
|
|
|
export type RuntimeFileOpenResult = {
|
|
worktree: string
|
|
relativePath: string
|
|
kind: 'markdown' | 'text' | 'binary' | 'image'
|
|
opened: boolean
|
|
}
|
|
|
|
export type RuntimeFileOpenPosition = {
|
|
line: number
|
|
column?: number
|
|
}
|
|
|
|
export type RuntimeFileReadResult = {
|
|
worktree: string
|
|
relativePath: string
|
|
content: string
|
|
truncated: boolean
|
|
byteLength: number
|
|
}
|
|
|
|
export type RuntimeTerminalPathOpenTarget =
|
|
| {
|
|
kind: 'worktree-file'
|
|
provider: 'local' | 'ssh'
|
|
relativePath: string
|
|
absolutePath: string
|
|
}
|
|
| {
|
|
kind: 'absolute-file'
|
|
provider: 'local' | 'ssh'
|
|
absolutePath: string
|
|
grantId: string
|
|
readOnly?: true
|
|
}
|
|
| { kind: 'unsupported'; reason: string }
|
|
|
|
export type RuntimeNativeChatFileContext = {
|
|
tabId: string
|
|
sessionId: string
|
|
}
|
|
|
|
// Why: older hosts ignore crossWorkspace, so their refusal is no proof that no host workspace holds the path.
|
|
export const TERMINAL_PATH_CROSS_WORKSPACE_RUNTIME_CAPABILITY =
|
|
'files.resolve-terminal-path.cross-workspace.v1' as const
|
|
|
|
export type RuntimeTerminalPathResolution = {
|
|
worktree: string
|
|
relativePath: string | null
|
|
absolutePath: string | null
|
|
exists: boolean
|
|
isDirectory: boolean
|
|
openTarget?: RuntimeTerminalPathOpenTarget
|
|
}
|
|
|
|
export type RuntimeFilePreviewResult = {
|
|
content: string
|
|
isBinary: boolean
|
|
isImage?: boolean
|
|
mimeType?: string
|
|
imageDimensions?: RasterImageDimensions
|
|
}
|
|
|
|
export type RuntimeFileReadChunkResult = {
|
|
contentBase64: string
|
|
bytesRead: number
|
|
eof: boolean
|
|
}
|