Skip to content

Releases: samchon/typia

v6.0.2

14 Apr 18:00
b2a64e1
Compare
Choose a tag to compare

What's Changed

Full Changelog: v6.0.1...v6.0.2

v6.0.1

12 Apr 06:31
4cb9dec
Compare
Choose a tag to compare

typia.json.application() function has been changed to support standard OpenAPI v3.0/v3.1 specified JSON schema.

About the detailed OpenAPI spec's JSON schema structures, visit one of below:

You can use it like below:

typia.json.application<[X, Y, Z], "3.0">();
typia.json.application<[X, Y, Z], "3.1">();

What's Changed

  • Update typescript requirement from ^5.4.3 to ^5.4.4 by @dependabot in #1021
  • Update typescript requirement from ^5.4.4 to ^5.4.5 by @dependabot in #1023
  • Close #920: support standard JSON schema (OpenAPI). by @samchon in #1024
  • Fix Record<string, string> bug of typia.json.application<"3.1">() function. by @samchon in #1025

Full Changelog: v5.5.10...v6.0.1

v5.5.10

02 Apr 11:51
7e4b344
Compare
Choose a tag to compare

What's Changed

  • Add ContentMediaType and JsonSchemaPlugin tags by @samchon in #1020

Full Changelog: v5.5.8...v5.5.10

v5.5.8

01 Apr 19:47
ac2d8b4
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.5.7...v5.5.8

v5.5.7

19 Mar 16:09
ff2864c
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.5.5...v5.5.7

v5.5.5

14 Mar 07:14
d329db1
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.5.4...v5.5.5

v5.5.4

11 Mar 16:05
9b1737b
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.5.3...v5.5.4

v5.5.3

07 Mar 19:20
28b7489
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.5.2...v5.5.3

v5.5.2

07 Mar 11:43
Compare
Choose a tag to compare

New module functional for entire function level validation.

export namespace functional {
  export function assertFunction<T extends Function>(func: T): T;

  export function isFunction<T extends (...args: any[]) => any>(
    func: T,
  ): T extends (...args: infer Arguments) => infer Output
    ? Output extends Promise<infer R>
      ? (...args: Arguments) => Promise<R | null>
      : (...args: Arguments) => Output | null
    : never;

  export function validateFunction<T extends (...args: any[]) => any>(
    func: T,
  ): T extends (...args: infer Arguments) => infer Output
    ? Output extends Promise<infer R>
      ? (...args: Arguments) => Promise<IValidation<R>>
      : (...args: Arguments) => IValidation<Output>
    : never;
}

Also, when using assert functions, you can customize the error class to throw.

import typia from "typia";

class MyCustomError extends Error {
  public constructor(props: typia.TypeGuard.IProps);
}
typia.assert<number>("not-a-number", (props) => MyCustomError(props));

Additionally, checked that no problem on the new TypeScript v5.4 update.

What's Changed

New Contributors

Full Changelog: v5.4.14...v5.5.2

v5.4.14

29 Feb 18:22
1d2fbfc
Compare
Choose a tag to compare

What's Changed

  • Fix constant and tagged atomic type case. by @samchon in #983

Full Changelog: v5.4.13...v5.4.14