GHHG10's picture
download
raw
1.48 kB
import type { Message, Session, Part, SnapshotFileDiff, SessionStatus, Provider } from "@opencode-ai/sdk/v2"
import { createSimpleContext } from "./helper"
import { PreloadMultiFileDiffResult } from "@pierre/diffs/ssr"
export type NormalizedProviderListResponse = {
all: Map<string, Provider>
default: {
[key: string]: string
}
connected: Array<string>
}
type Data = {
agent?: {
name: string
color?: string
}[]
provider?: NormalizedProviderListResponse
session: Session[]
session_status: {
[sessionID: string]: SessionStatus
}
session_diff: {
[sessionID: string]: SnapshotFileDiff[]
}
session_diff_preload?: {
[sessionID: string]: PreloadMultiFileDiffResult<any>[]
}
message: {
[sessionID: string]: Message[]
}
part: {
[messageID: string]: Part[]
}
part_text_accum_delta?: {
[partID: string]: string
}
}
export type NavigateToSessionFn = (sessionID: string) => void
export type SessionHrefFn = (sessionID: string) => string
export const { use: useData, provider: DataProvider } = createSimpleContext({
name: "Data",
init: (props: {
data: Data
directory: string
onNavigateToSession?: NavigateToSessionFn
onSessionHref?: SessionHrefFn
}) => {
return {
get store() {
return props.data
},
get directory() {
return props.directory
},
navigateToSession: props.onNavigateToSession,
sessionHref: props.onSessionHref,
}
},
})

Xet Storage Details

Size:
1.48 kB
·
Xet hash:
7ea7bd348144da448cd4feeb6a92ed509d7c3d980e6fb4a895c02347fc4370b6

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.