Spec-Zone.ru › Valibot

safeParserAsync

Returns a function that parses an unknown input based on a schema.

const safeParser = v.safeParserAsync<TSchema, TConfig>(schema, config);

Generics

  • TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>
  • TConfig extends Config<InferIssue<TSchema>> | undefined

Parameters

  • schema TSchema
  • config TConfig

Returns

  • safeParser SafeParserAsync<TSchema, TConfig>

Example

The following example shows how safeParserAsync can be used.

import { isEmailPresent } from '~/api';

const StoredEmailSchema = v.pipeAsync(
  v.string(),
  v.email(),
  v.checkAsync(isEmailPresent, 'The email is not in the database.')
);
const safeStoredEmailParser = v.safeParserAsync(StoredEmailSchema);
const result = await safeStoredEmailParser('jane@example.com');

if (result.success) {
  const storedEmail = result.output;
} else {
  console.error(result.issues);
}

Related

The following APIs can be combined with safeParserAsync.

Schemas

any, array, bigint, blob, boolean, custom, date, enum, exactOptional, file, function, instance, intersect, lazy, literal, looseObject, looseTuple, map, nan, never, nonNullable, nonNullish, nonOptional, null, nullable, nullish, number, object, objectWithRest, optional, picklist, promise, record, set, strictObject, strictTuple, string, symbol, tuple, tupleWithRest, undefined, undefinedable, union, unknown, variant, void

Methods

assert, config, fallback, flatten, keyof, message, omit, partial, pick, pipe, required, summarize, unwrap

Utils

getDotPath

Async

arrayAsync, customAsync, exactOptionalAsync, fallbackAsync, intersectAsync, lazyAsync, looseObjectAsync, looseTupleAsync, mapAsync, nonNullableAsync, nonNullishAsync, nonOptionalAsync, nullableAsync, nullishAsync, objectAsync, objectWithRestAsync, optionalAsync, partialAsync, pipeAsync, recordAsync, requiredAsync, setAsync, strictObjectAsync, strictTupleAsync, tupleAsync, tupleWithRestAsync, undefinedableAsync, unionAsync, variantAsync

© Fabian Hiller
Licensed under the MIT License.
https://valibot.dev/api/safeParserAsync/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API