UNPKG

sveltekit-superforms-5

Version:

<p align="center"> <img src="https://github.com/ciscoheat/sveltekit-superforms/raw/main/logo.svg" width="150px" align="center" alt="Superforms logo" /> <h1 align="center">Superforms 💥</h1> <p align="center">Making SvelteKit forms a pleasure to use!

28 lines (27 loc) • 997 B
import stringConverter from './string.js'; import numberConverter from './number.js'; import booleanConverter from './boolean.js'; import dateConverter from './date.js'; import arrayConverter from './array.js'; import objectConverter from './object.js'; import tupleConverter from './tuple.js'; import mixedConverter from './mixed.js'; import lazyConverter from './lazy.js'; export function convertSchema(yupSchema, options) { const { converters, ...resolveOptions } = options || {}; const allConverters = { string: stringConverter, number: numberConverter, boolean: booleanConverter, date: dateConverter, array: arrayConverter, object: objectConverter, tuple: tupleConverter, mixed: mixedConverter, lazy: lazyConverter, ...converters }; const description = yupSchema.describe(resolveOptions); const converter = allConverters[description.type]; return converter(description, allConverters); }