From be9432a893dd1662c10ff41c7ab552bcba8f3e1b Mon Sep 17 00:00:00 2001 From: Dax Date: Wed, 15 Apr 2026 10:26:20 -0400 Subject: shared package (#22626) --- packages/shared/src/util/fn.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/shared/src/util/fn.ts (limited to 'packages/shared/src/util/fn.ts') diff --git a/packages/shared/src/util/fn.ts b/packages/shared/src/util/fn.ts new file mode 100644 index 000000000..9efe4622f --- /dev/null +++ b/packages/shared/src/util/fn.ts @@ -0,0 +1,11 @@ +import { z } from "zod" + +export function fn(schema: T, cb: (input: z.infer) => Result) { + const result = (input: z.infer) => { + const parsed = schema.parse(input) + return cb(parsed) + } + result.force = (input: z.infer) => cb(input) + result.schema = schema + return result +} -- cgit v1.2.3