123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- import { ZodFirstPartyTypeKind } from "zod";
- import { parseAnyDef } from "./parsers/any.js";
- import { parseArrayDef } from "./parsers/array.js";
- import { parseBigintDef } from "./parsers/bigint.js";
- import { parseBooleanDef } from "./parsers/boolean.js";
- import { parseBrandedDef } from "./parsers/branded.js";
- import { parseCatchDef } from "./parsers/catch.js";
- import { parseDateDef } from "./parsers/date.js";
- import { parseDefaultDef } from "./parsers/default.js";
- import { parseEffectsDef } from "./parsers/effects.js";
- import { parseEnumDef } from "./parsers/enum.js";
- import { parseIntersectionDef } from "./parsers/intersection.js";
- import { parseLiteralDef } from "./parsers/literal.js";
- import { parseMapDef } from "./parsers/map.js";
- import { parseNativeEnumDef } from "./parsers/nativeEnum.js";
- import { parseNeverDef } from "./parsers/never.js";
- import { parseNullDef } from "./parsers/null.js";
- import { parseNullableDef } from "./parsers/nullable.js";
- import { parseNumberDef } from "./parsers/number.js";
- import { parseObjectDef } from "./parsers/object.js";
- import { parseOptionalDef } from "./parsers/optional.js";
- import { parsePipelineDef } from "./parsers/pipeline.js";
- import { parsePromiseDef } from "./parsers/promise.js";
- import { parseRecordDef } from "./parsers/record.js";
- import { parseSetDef } from "./parsers/set.js";
- import { parseStringDef } from "./parsers/string.js";
- import { parseTupleDef } from "./parsers/tuple.js";
- import { parseUndefinedDef } from "./parsers/undefined.js";
- import { parseUnionDef } from "./parsers/union.js";
- import { parseUnknownDef } from "./parsers/unknown.js";
- import { parseReadonlyDef } from "./parsers/readonly.js";
- export const selectParser = (def, typeName, refs) => {
- switch (typeName) {
- case ZodFirstPartyTypeKind.ZodString:
- return parseStringDef(def, refs);
- case ZodFirstPartyTypeKind.ZodNumber:
- return parseNumberDef(def, refs);
- case ZodFirstPartyTypeKind.ZodObject:
- return parseObjectDef(def, refs);
- case ZodFirstPartyTypeKind.ZodBigInt:
- return parseBigintDef(def, refs);
- case ZodFirstPartyTypeKind.ZodBoolean:
- return parseBooleanDef();
- case ZodFirstPartyTypeKind.ZodDate:
- return parseDateDef(def, refs);
- case ZodFirstPartyTypeKind.ZodUndefined:
- return parseUndefinedDef();
- case ZodFirstPartyTypeKind.ZodNull:
- return parseNullDef(refs);
- case ZodFirstPartyTypeKind.ZodArray:
- return parseArrayDef(def, refs);
- case ZodFirstPartyTypeKind.ZodUnion:
- case ZodFirstPartyTypeKind.ZodDiscriminatedUnion:
- return parseUnionDef(def, refs);
- case ZodFirstPartyTypeKind.ZodIntersection:
- return parseIntersectionDef(def, refs);
- case ZodFirstPartyTypeKind.ZodTuple:
- return parseTupleDef(def, refs);
- case ZodFirstPartyTypeKind.ZodRecord:
- return parseRecordDef(def, refs);
- case ZodFirstPartyTypeKind.ZodLiteral:
- return parseLiteralDef(def, refs);
- case ZodFirstPartyTypeKind.ZodEnum:
- return parseEnumDef(def);
- case ZodFirstPartyTypeKind.ZodNativeEnum:
- return parseNativeEnumDef(def);
- case ZodFirstPartyTypeKind.ZodNullable:
- return parseNullableDef(def, refs);
- case ZodFirstPartyTypeKind.ZodOptional:
- return parseOptionalDef(def, refs);
- case ZodFirstPartyTypeKind.ZodMap:
- return parseMapDef(def, refs);
- case ZodFirstPartyTypeKind.ZodSet:
- return parseSetDef(def, refs);
- case ZodFirstPartyTypeKind.ZodLazy:
- return () => def.getter()._def;
- case ZodFirstPartyTypeKind.ZodPromise:
- return parsePromiseDef(def, refs);
- case ZodFirstPartyTypeKind.ZodNaN:
- case ZodFirstPartyTypeKind.ZodNever:
- return parseNeverDef();
- case ZodFirstPartyTypeKind.ZodEffects:
- return parseEffectsDef(def, refs);
- case ZodFirstPartyTypeKind.ZodAny:
- return parseAnyDef();
- case ZodFirstPartyTypeKind.ZodUnknown:
- return parseUnknownDef();
- case ZodFirstPartyTypeKind.ZodDefault:
- return parseDefaultDef(def, refs);
- case ZodFirstPartyTypeKind.ZodBranded:
- return parseBrandedDef(def, refs);
- case ZodFirstPartyTypeKind.ZodReadonly:
- return parseReadonlyDef(def, refs);
- case ZodFirstPartyTypeKind.ZodCatch:
- return parseCatchDef(def, refs);
- case ZodFirstPartyTypeKind.ZodPipeline:
- return parsePipelineDef(def, refs);
- case ZodFirstPartyTypeKind.ZodFunction:
- case ZodFirstPartyTypeKind.ZodVoid:
- case ZodFirstPartyTypeKind.ZodSymbol:
- return undefined;
- default:
- /* c8 ignore next */
- return ((_) => undefined)(typeName);
- }
- };
|