Upgrading valibot 0.41 to 0.42
Breaking0.41.0 → 0.42.1Breaking2New3Fixed2
BreakingUpgrade verdict
2 breaking changes.
In plain terms
- Rename decimal action to digits (pull request ).
- Rename NoPipe type to SchemaWithoutPipe.
Must act 2 items need code or config changes
What you must change
Breaking2
Rename decimal action to digits (pull request ).
decimaldigitsRename NoPipe type to SchemaWithoutPipe.
NoPipeSchemaWithoutPipeAPI changes
Generated by DepDelta from published .d.ts files. Not mixed with prose notes.
- removed:
type NoPipe<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>> = TSchema & { pipe?: never } - changed:
function _addIssue<const TContext extends Context>(context: TContext, label: string, dataset: Dataset<unknown, BaseIssue<unknown>>, config: Config<InferIssue<TContext>>, other?: Other<TContext>): void → function _addIssue<const TContext extends Context>(context: TContext & { expects?: string | null; requirement?: unknown; message?: ErrorMessage<Extract<InferIssue<TContext>, { type: TContext['type'] }>> | undefined }, label: string, dataset: Dataset<unknown, BaseIssue<unknown>>, config: Config<InferIssue<TContext>>, other?: Other<TContext>): void - changed:
readonly property BaseSchema._run: (dataset: Dataset<unknown, never>, config: Config<TIssue>) => Dataset<TOutput, TIssue> → readonly property BaseSchema._run: (dataset: Dataset<unknown, never>, config: Config<BaseIssue<unknown>>) => Dataset<TOutput, TIssue> - changed:
readonly property BaseSchemaAsync._run: (dataset: Dataset<unknown, never>, config: Config<TIssue>) => Promise<Dataset<TOutput, TIssue>> → readonly property BaseSchemaAsync._run: (dataset: Dataset<unknown, never>, config: Config<BaseIssue<unknown>>) => Promise<Dataset<TOutput, TIssue>> - changed:
readonly property BaseTransformation._run: (dataset: TypedDataset<TInput, never>, config: Config<TIssue>) => Dataset<TOutput, TIssue> → readonly property BaseTransformation._run: (dataset: TypedDataset<TInput, never>, config: Config<BaseIssue<unknown>>) => Dataset<TOutput, TIssue> - changed:
readonly property BaseTransformationAsync._run: (dataset: TypedDataset<TInput, never>, config: Config<TIssue>) => Promise<Dataset<TOutput, TIssue>> → readonly property BaseTransformationAsync._run: (dataset: TypedDataset<TInput, never>, config: Config<BaseIssue<unknown>>) => Promise<Dataset<TOutput, TIssue>> - changed:
readonly property BaseValidation._run: (dataset: Dataset<TInput, BaseIssue<unknown>>, config: Config<TIssue>) => Dataset<TOutput, BaseIssue<unknown> | TIssue> → readonly property BaseValidation._run: (dataset: Dataset<TInput, BaseIssue<unknown>>, config: Config<BaseIssue<unknown>>) => Dataset<TOutput, BaseIssue<unknown> | TIssue> - changed:
readonly property BaseValidationAsync._run: (dataset: Dataset<TInput, BaseIssue<unknown>>, config: Config<TIssue>) => Promise<Dataset<TOutput, BaseIssue<unknown> | TIssue>> → readonly property BaseValidationAsync._run: (dataset: Dataset<TInput, BaseIssue<unknown>>, config: Config<BaseIssue<unknown>>) => Promise<Dataset<TOutput, BaseIssue<unknown> | TIssue>> - changed:
type IssueDotPath<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>> = TSchema extends SchemaWithPipe<infer TPipe> | SchemaWithPipeAsync<infer TPipe> ? IssueDotPath<FirstTupleItem<TPipe>> : TSchema extends ArraySchema<infer TItem,… → type IssueDotPath<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>> = TSchema extends SchemaWithPipe<infer TPipe> ? IssueDotPath<FirstTupleItem<TPipe>> : TSchema extends SchemaWithPipeAsync<infer TPipe> ? IssueDotPath<FirstTupleI… - changed:
type SchemaWithFallbackAsync<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>, TFallback extends FallbackAsync<TSchema>> = Omit<TSchema, 'async' | '_run'> & { readonly fallback: TFallback; readonly async: true; readonly _run: (dataset: Dataset<unknown, never>, config: Config<InferI… → type SchemaWithFallbackAsync<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>, TFallback extends FallbackAsync<TSchema>> = Omit<TSchema, 'async' | '_run'> & { readonly fallback: TFallback; readonly async: true; readonly _run: (dataset: Dataset<unknown, never>, config: Config<BaseIs… - changed:
type SchemaWithPipe<TPipe extends [BaseSchema<unknown, unknown, BaseIssue<unknown>>, ...PipeItem<any, unknown, BaseIssue<unknown>>[]]> = Omit<FirstTupleItem<TPipe>, '_run' | '_types'> & { readonly pipe: TPipe; readonly _run: (dataset: Dataset<unknown, never>, config: Config<InferIssue<FirstTuple… → type SchemaWithPipe<TPipe extends [BaseSchema<unknown, unknown, BaseIssue<unknown>>, ...PipeItem<any, unknown, BaseIssue<unknown>>[]]> = Omit<FirstTupleItem<TPipe>, '_run' | '_types'> & { readonly pipe: TPipe; readonly _run: (dataset: Dataset<unknown, never>, config: Config<BaseIssue<unknown>>)… - added:
const DIGITS_REGEX: RegExp - added:
function digits<TInput extends string, const TMessage extends ErrorMessage<DigitsIssue<TInput>> | undefined>(message: TMessage): DigitsAction<TInput, TMessage> - added:
function digits<TInput extends string>(): DigitsAction<TInput, undefined> - added:
function metadata<TInput, const TMetadata extends Record<string, unknown>>(metadata_: TMetadata): MetadataAction<TInput, TMetadata> - added:
function title<TInput, TTitle extends string>(title_: TTitle): TitleAction<TInput, TTitle> - added:
interface DigitsAction<TInput extends string, TMessage extends ErrorMessage<DigitsIssue<TInput>> | undefined> extends BaseValidation<TInput, TInput, DigitsIssue<TInput>> - added:
interface DigitsIssue<TInput extends string> extends BaseIssue<TInput> - added:
interface MetadataAction<TInput, TMetadata extends Record<string, unknown>> extends BaseMetadata<TInput> - added:
interface TitleAction<TInput, TTitle extends string> extends BaseMetadata<TInput> - added:
readonly property DigitsAction.expects: null - added:
readonly property DigitsAction.message: TMessage - added:
readonly property DigitsAction.reference: typeof digits - added:
readonly property DigitsAction.requirement: RegExp - added:
readonly property DigitsAction.type: 'digits' - added:
readonly property DigitsIssue.expected: null - added:
readonly property DigitsIssue.kind: 'validation' - added:
readonly property DigitsIssue.received: `"${string}"` - added:
readonly property DigitsIssue.requirement: RegExp - added:
readonly property DigitsIssue.type: 'digits' - added:
readonly property MetadataAction.metadata: TMetadata - added:
readonly property MetadataAction.reference: typeof metadata - added:
readonly property MetadataAction.type: 'metadata' - added:
readonly property TitleAction.reference: typeof title - added:
readonly property TitleAction.title: TTitle - added:
readonly property TitleAction.type: 'title' - added:
type SchemaWithoutPipe<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>> = TSchema & { pipe?: never }