Releases: samchon/typia
v5.2.6
v5.2.5
v5.2.4
v5.2.3
v5.2.2
When JSON.stringify()
function be called about Map<Key, T>
type, it always returns the empty bracket value {}
. Until now, I'd developed typia
to return the empty bracket value {}
, following the standard JSON.stringify()
function.
However, as most TypeScript/JavaScript developers do not know about that and there's not any problem when using the Map
type on typia.json.stringify<T>()
function ini the compile time, it was possible to misunderstand that typia
's stringify function has a bug about the Map
time.
In such reason, I've decided to throw a compile error when such non-supported type being used in the typia.json
functions. Also, such strategy would be helpful for typia
users to avoid taking a mistake using such non-supported type on the JSON functions.
What's Changed
- Fix #842 - exact description comment tracing. by @samchon in #843
- Close #823 - ban Map types on JSON functions. by @samchon in #844
Full Changelog: v5.2.1...v5.2.2
v5.2.1
To support yarn berry
which had banned npm prepare
script, I'd changed setup wizard of typia
to define npm postinstall
script instead.
By the way, unlike the npm prepare
script which works on only in the local drive and does not work when be installed from remote npm
, npm postinstall
script is working even when installing from the remote npm
. Therefore, when publishing an npm
module which has installed tyipa
through setup wizard, it enforces users of derived libraries to run the npm postinstall
command that requires ts-patch
module.
To fix this crazy bug, I've decided to ban yarn berry
on the setup wizard. From now on, when you run the npx typia setup
command, it will print a text that "yarn berry is not supported". If you still want to utilize the yarn berry
, configure it manually by yourself please.
What's Changed
- Close #838 - show typia version on playground. by @samchon in #839
- Ban
yarn berry
on setup wizard. by @samchon in #840
Full Changelog: v5.2.0...v5.2.1
v5.2.0
Added a new module notations
to support naming convention converters.
This update is for future's nestia feature.
export namespace notations {
export function camel<T>(input: T): CamelCase<T>;
export function assertCamel<T>(input: unknown | T): CamelCase<T>;
export function isCamel<T>(input: unknown | T): CamelCase<T> | null;
export function validateCamel<T>(input: unknown | T): IValidation<CamelCase<T>>;
export function pascal<T>(input: T): PascalCase<T>;
export function assertPascal<T>(input: unknown | T): PascalCase<T>;
export function isPascal<T>(input: unknown | T): PascalCase<T> | null;
export function validatePascal<T>(input: unknown | T): IValidation<PascalCase<T>>;
export function snake<T>(input: T): SnakeCase<T>;
export function assertSnake<T>(input: unknown | T): SnakeCase<T>;
export function isSnake<T>(input: unknown | T): SnakeCase<T> | null;
export function validateSnake<T>(input: unknown | T): IValidation<SnakeCase<T>>;
}
What's Changed
Full Changelog: v5.1.6...v5.2.0
v5.1.6
v5.1.5
New module http
has been newly added.
export namespace http {
export function parameter<T extends boolean | bigint | number | string>(input: string): T;
export function headers<T extends object>(input: Record<string, string | string[] | undefined>): Resolved<T>;
export function isHeaders<T extends object>(input: Record<string, string | string[] | undefined>): Resolved<T> | null;
export function assertHeaders<T extends object>(input: Record<string, string | string[] | undefined>): Resolved<T>;
export function validateHeaders<T extends object>(input: Record<string, string | string[] | undefined>): IValidation<Resolved<T>>;
export function query<T extends object>(input: URLSearchParams): Resolved<T>;
export function isQuery<T extends object>(input: URLSearchParams): Resolved<T> | null;
export function assertQuery<T extends object>(input: URLSearchParams): Resolved<T>;
export function validateQuery<T extends object>(input: URLSearchParams): IValidation<Resolved<T>>;
}
For reference, those features had been developed in @nestia/core
for a long time.
The reason why migrating them from @nestia/core
is to support Fastify
plugin like nestia
case. In the same reason, I've changed naming strategy of JSON schema (IJsonComponents
) to be much simpler.
Also, fixed a bug occurred only when tsconfig.json
has configured exactOptionalPropertyTypes
option and utilizing Partial<T>
and Required<T>
types.
What's Changed
- Change naming strategy of swagger components. by @samchon in #818
- Close #815 - new module
http
-query
,headeres
andparameter
by @samchon in #819 - Naming strategy of swagger schema. by @samchon in #820
- New type tag
Default
. by @samchon in #821 - Fix #827 - change setup wizard logic. by @samchon in #828
- Fix samchon/nestia#628 -
exactOptionalPropertyTypes
's withPartial<T>
andRequired<T>
types. by @samchon in #829
Full Changelog: v5.0.5...v5.1.5
v5.0.5
From now on, generation mode supports *.tsx
files.
What's Changed
- Support .tsx and Svelte files by @tsengia in #816
- Complement #816 - support
*.tsx
files' generation by @samchon in #817
New Contributors
Full Changelog: v5.0.4...v5.0.5