Skip to content

Releases: skunkteam/types

v9.1.0

24 Mar 12:55
a75d0db

Choose a tag to compare

9.1.0 (2025-03-24)

Features

  • Export the checkOneOrMore and isOneOrMore utility functions. (#113) (a75d0db)

v9.0.0

18 Feb 11:04

Choose a tag to compare

9.0.0 (2025-02-18)

Bug Fixes

  • DeepUnbranded type: later bailout by compiler (87d413e)

Features

  • withDefault method on every type (#109) (788c2f3)
  • Change string.autoCast behaviour on anything other than booleans and numbers (#104) (4f9b0bd), closes #47
  • Introduce StandardSchemaV1 interface in Skunkteam Types (#108) (36a3554)
  • Make all properties of ValidationError readonly (3750f2b)
  • move autoCast getters to separate functions (e15a0aa)
  • split visitObjectLikeType into visitObjectType and visitIntersectionType (#110) (61e5705)

BREAKING CHANGES

  • Visitor<R> interface now requires two new methods visitObjectType and visitIntersectionType while the existing visitObjectLikeType is removed.

  • chore: update docs

  • The type, input and details properties of ValidationError used to be writable, they are now marked as readonly.

  • The getters .autoCast and .autoCastAll are removed and moved to separately exported functions.

  • string.autoCast no longer supports null, undefined, symbols, objects and functions and anything other than strings, numbers and booleans really.

v8.2.0

17 Oct 07:42

Choose a tag to compare

8.2.0 (2024-10-17)

Features

  • add pick and omit methods to InterfaceType (f059fe4)

v8.1.0

17 Oct 07:38

Choose a tag to compare

8.1.0 (2024-10-17)

Bug Fixes

  • no more warning for overlapping properties with exact same type (#100) (974f1ee)

Features

  • option to generate default TypeScript-like name for some methods (#98) (d607cdc)
  • support generators as Validators in withValidation (6532a50)

v8.0.1

09 Oct 13:35
857d64e

Choose a tag to compare

8.0.1 (2024-10-09)

Bug Fixes

  • validation messages now refer to the used type (#97) (857d64e)

v8.0.0

09 Oct 12:12

Choose a tag to compare

8.0.0 (2024-10-09)

Features

  • add merge operation to interface types (8e41a1b)
  • Rename PropertyInfo#partial to #optional (3f22b88)

BREAKING CHANGES

  • ObjectType#propsInfo elements had a partial property. This is renamed to optional, because that better reflects its meaning.
  • InterfaceType#withOptional(...) no longer returns an IntersectionType, but an InterfaceType instead. Should cause no issues when upgrading, but some consumer code might depend on it. It is still possible to manually create an IntersectionType using intersection(...). There are also some minor type changes to make all that possible.

v7.0.0

06 May 13:44
2751bad

Choose a tag to compare

7.0.0 (2024-05-06)

Bug Fixes

  • stop or() union constructor from stripping branding (#88) (2751bad)

BREAKING CHANGES

  • union types built with the .or() constructor are now
    possibly stricter as the branding is not unintentionally stripped anymore.

v6.0.0

26 Oct 10:02
e6521cf

Choose a tag to compare

6.0.0 (2023-10-26)

Bug Fixes

  • correct inference of arrays of branded literal types (#85) (e6521cf)

BREAKING CHANGES

  • This changes the meaning of the type parameter of the array function.

v5.0.1

27 Sep 17:40
64e6975

Choose a tag to compare

5.0.1 (2023-09-27)

Bug Fixes

  • remove peer dependency from package.json (#83) (64e6975)

v5.0.0

28 Sep 06:21
d686e97

Choose a tag to compare

5.0.0 (2023-09-27)

Features

  • support TypeScript up to version 5.2 (#82)

BREAKING CHANGES

  • Support for TypeScript 5.0 and lower has been dropped.