API reference
files
Import
Section titled “Import”import * as api from "@fungi.computer/oyster/files";Exports
Section titled “Exports”| Kind | Export | Description |
|---|---|---|
| type alias | FileEntry | One entry of a directory listing, in Agar’s computer.list contract. |
| type alias | FileListing | A page of a directory, in Agar’s computer.list contract. |
| type alias | FileReplaceOutcome | What a conditional replace did, in Agar’s computer.writeFile contract. |
| type alias | FileSource | Where an Oyster’s files live. Paths are absolute (/notes/a.md) and already
normalized by the routes; a source never sees ... |
| function | normalizeFilePath() | Normalize an absolute path; null when it is not one or escapes the root. |
| function | fileCapabilities() | File capabilities sharing the existing /files/ wire and one file source. |
FileEntrytype alias
Section titled “FileEntry”type FileEntry = Readonly<{ name: string; type: "file" | "directory" | "symlink"; size: number; modifiedAt: number;}>;One entry of a directory listing, in Agar’s computer.list contract.
FileListingtype alias
Section titled “FileListing”type FileListing = Readonly<{ path: string; entries: readonly FileEntry[]; nextOffset: number | null;}>;A page of a directory, in Agar’s computer.list contract.
FileReplaceOutcometype alias
Section titled “FileReplaceOutcome”type FileReplaceOutcome = | Readonly<{ kind: "replaced"; path: string; bytes: number; }> | Readonly<{ kind: "conflict"; }>;What a conditional replace did, in Agar’s computer.writeFile contract.
FileSourcetype alias
Section titled “FileSource”type FileSource = Readonly<{ list: Promise<Readonly<{ path: string; entries: readonly FileEntry[]; nextOffset: number | null; }> | null>; read: Promise<Uint8Array<ArrayBufferLike> | null>; write: Promise<void>; mkdir: Promise<void>; replace: Promise<FileReplaceOutcome>;}>;Where an Oyster’s files live. Paths are absolute (/notes/a.md) and already
normalized by the routes; a source never sees ...
normalizeFilePath()function
Section titled “normalizeFilePath()”function normalizeFilePath(raw): string | null;Normalize an absolute path; null when it is not one or escapes the root.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
raw |
string |
Returns
Section titled “Returns”string | null
fileCapabilities()function
Section titled “fileCapabilities()”function fileCapabilities(source): readonly Readonly<object & object>[];File capabilities sharing the existing /files/ wire and one file source.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
source |
FileSource |
Returns
Section titled “Returns”readonly Readonly<object & object>[]