Download packages/schema/src/filesystem.ts from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 1.32 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/schema/src/filesystem.ts
- Command line
-
hf download hf://SaylorTwift/opencode/packages/schema/src/filesystem.ts
-
curl -L -o filesystem.ts https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/schema/src/filesystem.ts
1.32 kB
| export * as FileSystem from "./filesystem" | |
| import { Schema } from "effect" | |
| import { optional } from "./schema" | |
| import { define, inventory } from "./event" | |
| import { NonNegativeInt, PositiveInt, RelativePath } from "./schema" | |
| const Edited = define({ | |
| type: "file.edited", | |
| schema: { file: Schema.String }, | |
| }) | |
| export const Event = { Edited, Definitions: inventory(Edited) } | |
| export interface Entry extends Schema.Schema.Type<typeof Entry> {} | |
| export const Entry = Schema.Struct({ | |
| path: RelativePath, | |
| type: Schema.Literals(["file", "directory"]), | |
| }).annotate({ identifier: "FileSystem.Entry" }) | |
| export interface Submatch extends Schema.Schema.Type<typeof Submatch> {} | |
| export const Submatch = Schema.Struct({ | |
| text: Schema.String, | |
| start: NonNegativeInt, | |
| end: NonNegativeInt, | |
| }).annotate({ identifier: "FileSystem.Submatch" }) | |
| export interface Match extends Schema.Schema.Type<typeof Match> {} | |
| export const Match = Schema.Struct({ | |
| entry: Entry, | |
| line: PositiveInt, | |
| offset: NonNegativeInt, | |
| text: Schema.String, | |
| submatches: Schema.Array(Submatch), | |
| }).annotate({ identifier: "FileSystem.Match" }) | |
| export class FindInput extends Schema.Class<FindInput>("FileSystem.FindInput")({ | |
| query: Schema.String, | |
| type: Schema.Literals(["file", "directory"]).pipe(optional), | |
| limit: PositiveInt.pipe(optional), | |
| }) {} | |