UNPKG

@trpc/server

Version:

The tRPC server library

30 lines (28 loc) • 854 B
//#region src/unstable-core-do-not-import/http/contentTypeParsers.ts /** * An input validator for binary data, such as a `File` or `Blob`. The * resolver gets the input as a `ReadableStream`. * @example * ```ts * t.procedure.input(octetInputParser).mutation(async ({ input }) => { * const bytes = await new Response(input).arrayBuffer(); * return { size: bytes.byteLength }; * }); * ``` * @see https://trpc.io/docs/server/non-json-content-types#file-and-other-binary-type-inputs */ const octetInputParser = { _input: null, _output: null, parse(input) { if (input instanceof ReadableStream) return input; throw new Error(`Parsed input was expected to be a ReadableStream but was: ${typeof input}`); } }; //#endregion Object.defineProperty(exports, "octetInputParser", { enumerable: true, get: function() { return octetInputParser; } });