dynamodb-toolbox
Version:
Lightweight and type-safe query builder for DynamoDB and TypeScript.
75 lines (74 loc) • 2.7 kB
JavaScript
import { ZodArray, ZodBigInt, ZodBoolean, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodLiteral, ZodNull, ZodNumber, ZodObject, ZodOptional, ZodRecord, ZodSet, ZodString, ZodTuple, ZodUnion } from 'zod';
import { fromZodArray } from './zodArray.js';
import { fromZodBigInt } from './zodBigInt.js';
import { fromZodBoolean } from './zodBoolean.js';
import { fromZodCustom } from './zodCustom.js';
import { fromZodDefault } from './zodDefault.js';
import { fromZodDiscriminatedUnion } from './zodDiscriminatedUnion.js';
import { fromZodEffects } from './zodEffects.js';
import { fromZodEnum } from './zodEnum.js';
import { fromZodLiteral } from './zodLiteral.js';
import { fromZodNull } from './zodNull.js';
import { fromZodNumber } from './zodNumber.js';
import { fromZodObject } from './zodObject.js';
import { fromZodOptional } from './zodOptional.js';
import { fromZodRecord } from './zodRecord.js';
import { fromZodSet } from './zodSet.js';
import { fromZodString } from './zodString.js';
import { fromZodTuple } from './zodTuple.js';
import { fromZodUnion } from './zodUnion.js';
export const fromZodSchema = (zodSchema) => {
if (zodSchema instanceof ZodNull) {
return fromZodNull();
}
if (zodSchema instanceof ZodBoolean) {
return fromZodBoolean();
}
if (zodSchema instanceof ZodNumber) {
return fromZodNumber();
}
if (zodSchema instanceof ZodBigInt) {
return fromZodBigInt();
}
if (zodSchema instanceof ZodString) {
return fromZodString();
}
if (zodSchema instanceof ZodLiteral) {
return fromZodLiteral(zodSchema);
}
if (zodSchema instanceof ZodEnum) {
return fromZodEnum(zodSchema);
}
if (zodSchema instanceof ZodSet) {
return fromZodSet(zodSchema);
}
if (zodSchema instanceof ZodArray) {
return fromZodArray(zodSchema);
}
if (zodSchema instanceof ZodTuple) {
return fromZodTuple(zodSchema);
}
if (zodSchema instanceof ZodObject) {
return fromZodObject(zodSchema);
}
if (zodSchema instanceof ZodRecord) {
return fromZodRecord(zodSchema);
}
if (zodSchema instanceof ZodUnion) {
return fromZodUnion(zodSchema);
}
if (zodSchema instanceof ZodDiscriminatedUnion) {
return fromZodDiscriminatedUnion(zodSchema);
}
if (zodSchema instanceof ZodOptional) {
return fromZodOptional(zodSchema);
}
if (zodSchema instanceof ZodDefault) {
return fromZodDefault(zodSchema);
}
// TODO: Codecs<>transforms in zod v4
if (zodSchema instanceof ZodEffects) {
return fromZodEffects(zodSchema);
}
return fromZodCustom();
};