@sinclair/typebox 0.27.8 → 0.27.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/license +22 -22
- package/package.json +51 -47
- package/readme.md +1424 -1424
- package/typebox.d.ts +3 -9
- package/value/convert.js +1 -1
package/typebox.d.ts
CHANGED
|
@@ -134,17 +134,13 @@ export interface TEnum<T extends Record<string, string | number> = Record<string
|
|
|
134
134
|
anyOf: TLiteral<string | number>[];
|
|
135
135
|
}
|
|
136
136
|
export type TExtends<L extends TSchema, R extends TSchema, T extends TSchema, U extends TSchema> = (Static<L> extends Static<R> ? T : U) extends infer O ? UnionToTuple<O> extends [infer X, infer Y] ? TUnion<[Assert<X, TSchema>, Assert<Y, TSchema>]> : Assert<O, TSchema> : never;
|
|
137
|
-
export type TExcludeTemplateLiteralResult<T extends string> =
|
|
138
|
-
[K in T]: TLiteral<K>;
|
|
139
|
-
}[T]>, TSchema[]>>;
|
|
137
|
+
export type TExcludeTemplateLiteralResult<T extends string> = TString;
|
|
140
138
|
export type TExcludeTemplateLiteral<T extends TTemplateLiteral, U extends TSchema> = Exclude<Static<T>, Static<U>> extends infer S ? TExcludeTemplateLiteralResult<Assert<S, string>> : never;
|
|
141
139
|
export type TExcludeArray<T extends TSchema[], U extends TSchema> = Assert<UnionToTuple<{
|
|
142
140
|
[K in keyof T]: Static<Assert<T[K], TSchema>> extends Static<U> ? never : T[K];
|
|
143
141
|
}[number]>, TSchema[]> extends infer R ? TUnionResult<Assert<R, TSchema[]>> : never;
|
|
144
142
|
export type TExclude<T extends TSchema, U extends TSchema> = T extends TTemplateLiteral ? TExcludeTemplateLiteral<T, U> : T extends TUnion<infer S> ? TExcludeArray<S, U> : T extends U ? TNever : T;
|
|
145
|
-
export type TExtractTemplateLiteralResult<T extends string> =
|
|
146
|
-
[K in T]: TLiteral<K>;
|
|
147
|
-
}[T]>, TSchema[]>>;
|
|
143
|
+
export type TExtractTemplateLiteralResult<T extends string> = TString;
|
|
148
144
|
export type TExtractTemplateLiteral<T extends TTemplateLiteral, U extends TSchema> = Extract<Static<T>, Static<U>> extends infer S ? TExtractTemplateLiteralResult<Assert<S, string>> : never;
|
|
149
145
|
export type TExtractArray<T extends TSchema[], U extends TSchema> = Assert<UnionToTuple<{
|
|
150
146
|
[K in keyof T]: Static<Assert<T[K], TSchema>> extends Static<U> ? T[K] : never;
|
|
@@ -377,9 +373,7 @@ export type TUnionOfLiteralArray<T extends TLiteral<string>[]> = {
|
|
|
377
373
|
}[number];
|
|
378
374
|
export type TUnionOfLiteral<T extends TUnion<TLiteral<string>[]>> = TUnionOfLiteralArray<T['anyOf']>;
|
|
379
375
|
export type TUnionResult<T extends TSchema[]> = T extends [] ? TNever : T extends [infer S] ? S : TUnion<T>;
|
|
380
|
-
export type TUnionTemplateLiteral<T extends TTemplateLiteral, S extends string = Static<T>> =
|
|
381
|
-
[K in S]: TLiteral<K>;
|
|
382
|
-
}[S]>, TLiteral[]>>>;
|
|
376
|
+
export type TUnionTemplateLiteral<T extends TTemplateLiteral, S extends string = Static<T>> = (string);
|
|
383
377
|
export interface TUnion<T extends TSchema[] = TSchema[]> extends TSchema {
|
|
384
378
|
[Kind]: 'Union';
|
|
385
379
|
static: {
|
package/value/convert.js
CHANGED
|
@@ -140,7 +140,7 @@ var ValueConvert;
|
|
|
140
140
|
return IsStringNumeric(value) ? globalThis.BigInt(parseInt(value)) : IsNumber(value) ? globalThis.BigInt(value | 0) : IsValueFalse(value) ? 0 : IsValueTrue(value) ? 1 : value;
|
|
141
141
|
}
|
|
142
142
|
function TryConvertString(value) {
|
|
143
|
-
return IsValueToString(value) ? value.toString() :
|
|
143
|
+
return IsValueToString(value) ? value.toString() : value;
|
|
144
144
|
}
|
|
145
145
|
function TryConvertNumber(value) {
|
|
146
146
|
return IsStringNumeric(value) ? parseFloat(value) : IsValueTrue(value) ? 1 : IsValueFalse(value) ? 0 : value;
|