UNPKG

run402-mcp

Version:

MCP server for Run402 — full-stack backend infrastructure for AI agents: Postgres, auth, storage, serverless functions and atomic deploys. Paid with x402/MPP. Includes $0.03 image generation.

50 lines • 2.46 kB
/** * Node-only filesystem byte-source helpers for `apply`. * * `fileSetFromDir(path)` walks a directory and emits a path-keyed `FileSet` * of `FsFileSource` markers. The SDK normalizer reads each file's bytes * lazily during the plan/upload phases — never loaded into memory at * collection time. Suitable for multi-GB build outputs. */ import type { FileSet } from "../namespaces/deploy.types.js"; export interface FileSetFromDirOptions { /** Additional names to skip at any depth. Merged with the default ignore * list (`.git`, `node_modules`, `.DS_Store`) and, unless * `includeSensitive` is true, common secret-bearing filenames. */ ignore?: Iterable<string>; /** Include dotenv, npmrc, and private-key-like files that are skipped by * default. Use only when these files are intentional deploy artifacts. */ includeSensitive?: boolean; } /** * Walk a directory and return a `FileSet` whose values are `FsFileSource` * markers. Each marker holds an absolute path and an extension-derived * content-type; the deploy normalizer hashes and uploads each file from * disk on demand. * * Skips `.git`, `node_modules`, `.DS_Store`, common secret-bearing filenames * like `.env`, `.npmrc`, and private-key material (plus any names in * `opts.ignore`) at every depth. Pass `{ includeSensitive: true }` to opt in * to collecting those sensitive filenames deliberately. Rejects symlinks. * Throws `LocalError` if the directory does not exist, is not a directory, or * contains no deployable files after the ignore list is applied. * * @example * import { run402 } from "@run402/sdk/node"; * import { fileSetFromDir } from "@run402/sdk/node"; * const r = run402(); * await r.project(id).apply({ * project, * site: { replace: fileSetFromDir("./dist") }, * }); */ export declare function fileSetFromDir(root: string, opts?: FileSetFromDirOptions): Promise<FileSet>; /** * Synchronous twin of {@link fileSetFromDir}: the same ignore rules, symlink * refusal, and errors. For local previews that must not go async, such as the * `run402 up --check` site summary, so they count exactly what deploy uploads. */ export declare function fileSetFromDirSync(root: string, opts?: FileSetFromDirOptions): FileSet; /** Normalize a relative path to POSIX forward slashes. Exposed for tests. */ export declare function normalizeRelPath(rel: string): string; //# sourceMappingURL=files.d.ts.map