Skip to content

Upgrading valibot 0.26 to 0.27

Breaking0.26.0 → 0.27.1Breaking1New1Changed1Fixed2

BreakingUpgrade verdict

1 breaking change.

  • Remove NonNullable, NonNullish and NonOptional type.
1 item needs code or config changes
Breaking1
Remove NonNullable, NonNullish and NonOptional type.
NonNullableNonNullishNonOptional

Generated by DepDelta from published .d.ts files. Not mixed with prose notes.

  • removed: type NonNullable<T> = T extends null ? never : T
  • removed: type NonNullish<T> = T extends null | undefined ? never : T
  • removed: type NonOptional<T> = T extends undefined ? never : T
  • changed: function intersect<TOptions extends IntersectOptions>(options: TOptions, message?: ErrorMessage, pipe?: Pipe<IntersectInput<TOptions>>): IntersectSchema<TOptions> → function intersect<TOptions extends IntersectOptions>(options: TOptions, message?: ErrorMessage, pipe?: Pipe<IntersectOutput<TOptions>>): IntersectSchema<TOptions>
  • changed: function intersect<TOptions extends IntersectOptions>(options: TOptions, pipe?: Pipe<IntersectInput<TOptions>>): IntersectSchema<TOptions> → function intersect<TOptions extends IntersectOptions>(options: TOptions, pipe?: Pipe<IntersectOutput<TOptions>>): IntersectSchema<TOptions>
  • changed: function pick<TSchema extends ObjectSchema<any, any>, TKeys extends (keyof TSchema['entries'])[], TRest extends BaseSchema | undefined>(schema: TSchema, keys: TKeys, rest: TRest, message?: ErrorMessage, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>, TRest> → function pick<TSchema extends ObjectSchema<any, any>, TKeys extends ObjectKeys<TSchema>, TRest extends BaseSchema | undefined>(schema: TSchema, keys: TKeys, rest: TRest, message?: ErrorMessage, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>, TRest>
  • changed: function pick<TSchema extends ObjectSchema<any, any>, TKeys extends (keyof TSchema['entries'])[], TRest extends BaseSchema | undefined>(schema: TSchema, keys: TKeys, rest: TRest, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>, TRest> → function pick<TSchema extends ObjectSchema<any, any>, TKeys extends ObjectKeys<TSchema>, TRest extends BaseSchema | undefined>(schema: TSchema, keys: TKeys, rest: TRest, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>, TRest>
  • changed: function pick<TSchema extends ObjectSchema<any, any>, TKeys extends (keyof TSchema['entries'])[]>(schema: TSchema, keys: TKeys, message?: ErrorMessage, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>> → function pick<TSchema extends ObjectSchema<any, any>, TKeys extends ObjectKeys<TSchema>>(schema: TSchema, keys: TKeys, message?: ErrorMessage, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>>
  • changed: function pick<TSchema extends ObjectSchema<any, any>, TKeys extends (keyof TSchema['entries'])[]>(schema: TSchema, keys: TKeys, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>> → function pick<TSchema extends ObjectSchema<any, any>, TKeys extends ObjectKeys<TSchema>>(schema: TSchema, keys: TKeys, pipe?: Pipe<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchema<Pick<TSchema['entries'], TKeys[number]>>
  • changed: function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends (keyof TSchema['entries'])[], TRest extends BaseSchema | BaseSchemaAsync | undefined>(schema: TSchema, keys: TKeys, rest: TRest, message?: ErrorMessage, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>, TRe… → function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends ObjectKeys<TSchema>, TRest extends BaseSchema | BaseSchemaAsync | undefined>(schema: TSchema, keys: TKeys, rest: TRest, message?: ErrorMessage, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>, TRest>
  • changed: function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends (keyof TSchema['entries'])[], TRest extends BaseSchema | BaseSchemaAsync | undefined>(schema: TSchema, keys: TKeys, rest: TRest, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>, TRest> → function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends ObjectKeys<TSchema>, TRest extends BaseSchema | BaseSchemaAsync | undefined>(schema: TSchema, keys: TKeys, rest: TRest, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, TRest>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>, TRest>
  • changed: function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends (keyof TSchema['entries'])[]>(schema: TSchema, keys: TKeys, message?: ErrorMessage, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>> → function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends ObjectKeys<TSchema>>(schema: TSchema, keys: TKeys, message?: ErrorMessage, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>>
  • changed: function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends (keyof TSchema['entries'])[]>(schema: TSchema, keys: TKeys, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>> → function pickAsync<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>, TKeys extends ObjectKeys<TSchema>>(schema: TSchema, keys: TKeys, pipe?: PipeAsync<ObjectOutput<Pick<TSchema['entries'], TKeys[number]>, undefined>>): ObjectSchemaAsync<Pick<TSchema['entries'], TKeys[number]>>
  • changed: function recursive<TSchemaGetter extends () => BaseSchema>(getter: TSchemaGetter): RecursiveSchema<TSchemaGetter> → function recursive<TGetter extends () => BaseSchema>(getter: TGetter): RecursiveSchema<TGetter>
  • changed: function recursiveAsync<TSchemaGetter extends () => BaseSchema | BaseSchemaAsync>(getter: TSchemaGetter): RecursiveSchemaAsync<TSchemaGetter> → function recursiveAsync<TGetter extends () => BaseSchema | BaseSchemaAsync>(getter: TGetter): RecursiveSchemaAsync<TGetter>
  • changed: type IntersectSchema<TOptions extends IntersectOptions, TOutput = IntersectOutput<TOptions>> = BaseSchema<IntersectInput<TOptions>, TOutput> & { type: 'intersect'; options: TOptions; message: ErrorMessage; pipe: Pipe<IntersectInput<TOptions>> | undefined… → type IntersectSchema<TOptions extends IntersectOptions, TOutput = IntersectOutput<TOptions>> = BaseSchema<IntersectInput<TOptions>, TOutput> & { type: 'intersect'; options: TOptions; message: ErrorMessage; pipe: Pipe<IntersectOutput<TOptions>> | undefine…
  • changed: type NonNullableSchema<TWrapped extends BaseSchema, TOutput = NonNullable$1<Output<TWrapped>>> = BaseSchema<NonNullable$1<Input<TWrapped>>, TOutput> & { type: 'non_nullable'; wrapped: TWrapped; message: ErrorMessage } → type NonNullableSchema<TWrapped extends BaseSchema, TOutput = NonNullableOutput<TWrapped>> = BaseSchema<NonNullableInput<TWrapped>, TOutput> & { type: 'non_nullable'; wrapped: TWrapped; message: ErrorMessage }
  • changed: type NonNullableSchemaAsync<TWrapped extends BaseSchema | BaseSchemaAsync, TOutput = NonNullable$1<Output<TWrapped>>> = BaseSchemaAsync<NonNullable$1<Input<TWrapped>>, TOutput> & { type: 'non_nullable'; wrapped: TWrapped; message: ErrorMessage } → type NonNullableSchemaAsync<TWrapped extends BaseSchema | BaseSchemaAsync, TOutput = NonNullableOutput<TWrapped>> = BaseSchemaAsync<NonNullableInput<TWrapped>, TOutput> & { type: 'non_nullable'; wrapped: TWrapped; message: ErrorMessage }
  • changed: type NonNullishSchema<TWrapped extends BaseSchema, TOutput = NonNullish<Output<TWrapped>>> = BaseSchema<NonNullish<Input<TWrapped>>, TOutput> & { type: 'non_nullish'; wrapped: TWrapped; message: ErrorMessage } → type NonNullishSchema<TWrapped extends BaseSchema, TOutput = NonNullishOutput<TWrapped>> = BaseSchema<NonNullishInput<TWrapped>, TOutput> & { type: 'non_nullish'; wrapped: TWrapped; message: ErrorMessage }
  • changed: type NonNullishSchemaAsync<TWrapped extends BaseSchema | BaseSchemaAsync, TOutput = NonNullish<Output<TWrapped>>> = BaseSchemaAsync<NonNullish<Input<TWrapped>>, TOutput> & { type: 'non_nullish'; wrapped: TWrapped; message: ErrorMessage } → type NonNullishSchemaAsync<TWrapped extends BaseSchema | BaseSchemaAsync, TOutput = NonNullishOutput<TWrapped>> = BaseSchemaAsync<NonNullishInput<TWrapped>, TOutput> & { type: 'non_nullish'; wrapped: TWrapped; message: ErrorMessage }
  • changed: type NonOptionalSchema<TWrapped extends BaseSchema, TOutput = NonOptional<Output<TWrapped>>> = BaseSchema<NonOptional<Input<TWrapped>>, TOutput> & { type: 'non_optional'; wrapped: TWrapped; message: ErrorMessage } → type NonOptionalSchema<TWrapped extends BaseSchema, TOutput = NonOptionalOutput<TWrapped>> = BaseSchema<NonOptionalInput<TWrapped>, TOutput> & { type: 'non_optional'; wrapped: TWrapped; message: ErrorMessage }
  • changed: type NonOptionalSchemaAsync<TWrapped extends BaseSchema | BaseSchemaAsync, TOutput = NonOptional<Output<TWrapped>>> = BaseSchemaAsync<NonOptional<Input<TWrapped>>, TOutput> & { type: 'non_optional'; wrapped: TWrapped; message: ErrorMessage } → type NonOptionalSchemaAsync<TWrapped extends BaseSchema | BaseSchemaAsync, TOutput = NonOptionalOutput<TWrapped>> = BaseSchemaAsync<NonOptionalInput<TWrapped>, TOutput> & { type: 'non_optional'; wrapped: TWrapped; message: ErrorMessage }
  • changed: type RecursiveSchema<TSchemaGetter extends () => BaseSchema, TOutput = Output<ReturnType<TSchemaGetter>>> = BaseSchema<Input<ReturnType<TSchemaGetter>>, TOutput> & { type: 'recursive'; getter: TSchemaGetter } → type RecursiveSchema<TGetter extends () => BaseSchema, TOutput = Output<ReturnType<TGetter>>> = BaseSchema<Input<ReturnType<TGetter>>, TOutput> & { type: 'recursive'; getter: TGetter }
  • changed: type RecursiveSchemaAsync<TSchemaGetter extends () => BaseSchema | BaseSchemaAsync, TOutput = Output<ReturnType<TSchemaGetter>>> = BaseSchemaAsync<Input<ReturnType<TSchemaGetter>>, TOutput> & { type: 'recursive'; getter: TSchemaGetter } → type RecursiveSchemaAsync<TGetter extends () => BaseSchema | BaseSchemaAsync, TOutput = Output<ReturnType<TGetter>>> = BaseSchemaAsync<Input<ReturnType<TGetter>>, TOutput> & { type: 'recursive'; getter: TGetter }
  • added: type NonNullableInput<TWrapped extends BaseSchema | BaseSchemaAsync> = NonNullable$1<Input<TWrapped>>
  • added: type NonNullableOutput<TWrapped extends BaseSchema | BaseSchemaAsync> = NonNullable$1<Output<TWrapped>>
  • added: type NonNullishInput<TWrapped extends BaseSchema | BaseSchemaAsync> = NonNullish<Input<TWrapped>>
  • added: type NonNullishOutput<TWrapped extends BaseSchema | BaseSchemaAsync> = NonNullish<Output<TWrapped>>
  • added: type NonOptionalInput<TWrapped extends BaseSchema | BaseSchemaAsync> = NonOptional<Input<TWrapped>>
  • added: type NonOptionalOutput<TWrapped extends BaseSchema | BaseSchemaAsync> = NonOptional<Output<TWrapped>>
  • added: type ObjectKeys<TSchema extends ObjectSchema<any, any> | ObjectSchemaAsync<any, any>> = MaybeReadonly<[keyof TSchema['entries'], ...(keyof TSchema['entries'])[]]>