typia 6.5.1 → 6.6.0-dev.20240719

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.
@@ -1,3 +1,7 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
1
5
  /**
2
6
  * Camel case type.
3
7
  *
@@ -9,24 +13,13 @@
9
13
  * @author Jeongho Nam - https://github.com/samchon
10
14
  */
11
15
  export type CamelCase<T> = Equal<T, CamelizeMain<T>> extends true ? T : CamelizeMain<T>;
12
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
13
16
  type CamelizeMain<T> = T extends [never] ? never : T extends {
14
17
  valueOf(): boolean | bigint | number | string;
15
18
  } ? ValueOf<T> : T extends Function ? never : T extends object ? CamelizeObject<T> : T;
16
- type CamelizeObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? CamelizeTuple<T> : CamelizeMain<U>[] : T extends Set<infer U> ? Set<CamelizeMain<U>> : T extends Map<infer K, infer V> ? Map<CamelizeMain<K>, CamelizeMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends Date | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView | Blob | File ? T : {
19
+ type CamelizeObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? CamelizeTuple<T> : CamelizeMain<U>[] : T extends Set<infer U> ? Set<CamelizeMain<U>> : T extends Map<infer K, infer V> ? Map<CamelizeMain<K>, CamelizeMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends NativeClass ? T : {
17
20
  [Key in keyof T as CamelizeString<Key & string>]: CamelizeMain<T[Key]>;
18
21
  };
19
- type IsTuple<T extends readonly any[] | {
20
- length: number;
21
- }> = [T] extends [
22
- never
23
- ] ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
24
22
  type CamelizeTuple<T extends readonly any[]> = T extends [] ? [] : T extends [infer F] ? [CamelizeMain<F>] : T extends [infer F, ...infer Rest extends readonly any[]] ? [CamelizeMain<F>, ...CamelizeTuple<Rest>] : T extends [(infer F)?] ? [CamelizeMain<F>?] : T extends [(infer F)?, ...infer Rest extends readonly any[]] ? [CamelizeMain<F>?, ...CamelizeTuple<Rest>] : [];
25
- type ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
26
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer Primitive> ? Instance extends Primitive ? false : true : false : false;
27
- interface IValueOf<T> {
28
- valueOf(): T;
29
- }
30
23
  type CamelizeString<Key extends string> = Key extends `_${infer R}` ? `_${CamelizeString<R>}` : Key extends `${infer F}${infer R}` ? `${Lowercase<F>}${CamelizeStringRepeatedly<R>}` : Key;
31
24
  type CamelizeStringRepeatedly<Key extends string> = Key extends `${infer F}_${infer R}` ? `${F}${Capitalize<CamelizeStringRepeatedly<R>>}` : Key;
32
25
  export {};
@@ -1,3 +1,7 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
1
5
  /**
2
6
  * Pascal case type.
3
7
  *
@@ -9,24 +13,13 @@
9
13
  * @author Jeongho Nam - https://github.com/samchon
10
14
  */
11
15
  export type PascalCase<T> = Equal<T, PascalizeMain<T>> extends true ? T : PascalizeMain<T>;
12
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
13
16
  type PascalizeMain<T> = T extends [never] ? never : T extends {
14
17
  valueOf(): boolean | bigint | number | string;
15
18
  } ? ValueOf<T> : T extends Function ? never : T extends object ? PascalizeObject<T> : T;
16
- type PascalizeObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? PascalizeTuple<T> : PascalizeMain<U>[] : T extends Set<infer U> ? Set<PascalizeMain<U>> : T extends Map<infer K, infer V> ? Map<PascalizeMain<K>, PascalizeMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends Date | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView | Blob | File ? T : {
19
+ type PascalizeObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? PascalizeTuple<T> : PascalizeMain<U>[] : T extends Set<infer U> ? Set<PascalizeMain<U>> : T extends Map<infer K, infer V> ? Map<PascalizeMain<K>, PascalizeMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends NativeClass ? T : {
17
20
  [Key in keyof T as PascalizeString<Key & string>]: PascalizeMain<T[Key]>;
18
21
  };
19
- type IsTuple<T extends readonly any[] | {
20
- length: number;
21
- }> = [T] extends [
22
- never
23
- ] ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
24
22
  type PascalizeTuple<T extends readonly any[]> = T extends [] ? [] : T extends [infer F] ? [PascalizeMain<F>] : T extends [infer F, ...infer Rest extends readonly any[]] ? [PascalizeMain<F>, ...PascalizeTuple<Rest>] : T extends [(infer F)?] ? [PascalizeMain<F>?] : T extends [(infer F)?, ...infer Rest extends readonly any[]] ? [PascalizeMain<F>?, ...PascalizeTuple<Rest>] : [];
25
- type ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
26
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer Primitive> ? Instance extends Primitive ? false : true : false : false;
27
- interface IValueOf<T> {
28
- valueOf(): T;
29
- }
30
23
  type PascalizeString<Key extends string> = Key extends `_${infer R}` ? `_${PascalizeString<R>}` : Key extends `${infer F}${infer R}` ? `${Uppercase<F>}${PascalizeStringRepeatedly<R>}` : Key;
31
24
  type PascalizeStringRepeatedly<Key extends string> = Key extends `${infer F}_${infer R}` ? `${F}${Capitalize<PascalizeStringRepeatedly<R>>}` : Key;
32
25
  export {};
@@ -1,3 +1,8 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
5
+ import { Format } from "./tags";
1
6
  /**
2
7
  * Primitive type of JSON.
3
8
  *
@@ -33,23 +38,11 @@
33
38
  * @author Michael - https://github.com/8471919
34
39
  */
35
40
  export type Primitive<T> = Equal<T, PrimitiveMain<T>> extends true ? T : PrimitiveMain<T>;
36
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
37
- type PrimitiveMain<Instance> = Instance extends [never] ? never : ValueOf<Instance> extends bigint ? never : ValueOf<Instance> extends boolean | number | string ? ValueOf<Instance> : Instance extends Function ? never : ValueOf<Instance> extends object ? Instance extends object ? Instance extends NativeClass ? never : Instance extends IJsonable<infer Raw> ? ValueOf<Raw> extends object ? Raw extends object ? PrimitiveObject<Raw> : never : ValueOf<Raw> : PrimitiveObject<Instance> : never : ValueOf<Instance>;
41
+ type PrimitiveMain<Instance> = Instance extends [never] ? never : ValueOf<Instance> extends bigint ? never : ValueOf<Instance> extends boolean | number | string ? ValueOf<Instance> : Instance extends Function ? never : ValueOf<Instance> extends object ? Instance extends object ? Instance extends Date ? string & Format<"date-time"> : Instance extends IJsonable<infer Raw> ? ValueOf<Raw> extends object ? Raw extends object ? PrimitiveObject<Raw> : never : ValueOf<Raw> : Instance extends Exclude<NativeClass, Date> ? never : PrimitiveObject<Instance> : never : ValueOf<Instance>;
38
42
  type PrimitiveObject<Instance extends object> = Instance extends Array<infer T> ? IsTuple<Instance> extends true ? PrimitiveTuple<Instance> : PrimitiveMain<T>[] : {
39
43
  [P in keyof Instance]: PrimitiveMain<Instance[P]>;
40
44
  };
41
45
  type PrimitiveTuple<T extends readonly any[]> = T extends [] ? [] : T extends [infer F] ? [PrimitiveMain<F>] : T extends [infer F, ...infer Rest extends readonly any[]] ? [PrimitiveMain<F>, ...PrimitiveTuple<Rest>] : T extends [(infer F)?] ? [PrimitiveMain<F>?] : T extends [(infer F)?, ...infer Rest extends readonly any[]] ? [PrimitiveMain<F>?, ...PrimitiveTuple<Rest>] : [];
42
- type ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
43
- type NativeClass = Set<any> | Map<any, any> | WeakSet<any> | WeakMap<any, any> | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView;
44
- type IsTuple<T extends readonly any[] | {
45
- length: number;
46
- }> = [T] extends [
47
- never
48
- ] ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
49
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer U> ? Instance extends U ? false : true : false : false;
50
- interface IValueOf<T> {
51
- valueOf(): T;
52
- }
53
46
  interface IJsonable<T> {
54
47
  toJSON(): T;
55
48
  }
package/lib/Resolved.d.ts CHANGED
@@ -1,3 +1,7 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
1
5
  /**
2
6
  * Resolved type erased every methods.
3
7
  *
@@ -27,20 +31,9 @@
27
31
  * @author Kyungsu Kang - https://github.com/kakasoo
28
32
  */
29
33
  export type Resolved<T> = Equal<T, ResolvedMain<T>> extends true ? T : ResolvedMain<T>;
30
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
31
34
  type ResolvedMain<T> = T extends [never] ? never : ValueOf<T> extends boolean | number | bigint | string ? ValueOf<T> : T extends Function ? never : T extends object ? ResolvedObject<T> : ValueOf<T>;
32
- type ResolvedObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? ResolvedTuple<T> : ResolvedMain<U>[] : T extends Set<infer U> ? Set<ResolvedMain<U>> : T extends Map<infer K, infer V> ? Map<ResolvedMain<K>, ResolvedMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends Date | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView | Blob | File ? T : {
35
+ type ResolvedObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? ResolvedTuple<T> : ResolvedMain<U>[] : T extends Set<infer U> ? Set<ResolvedMain<U>> : T extends Map<infer K, infer V> ? Map<ResolvedMain<K>, ResolvedMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends NativeClass ? T : {
33
36
  [P in keyof T]: ResolvedMain<T[P]>;
34
37
  };
35
38
  type ResolvedTuple<T extends readonly any[]> = T extends [] ? [] : T extends [infer F] ? [ResolvedMain<F>] : T extends [infer F, ...infer Rest extends readonly any[]] ? [ResolvedMain<F>, ...ResolvedTuple<Rest>] : T extends [(infer F)?] ? [ResolvedMain<F>?] : T extends [(infer F)?, ...infer Rest extends readonly any[]] ? [ResolvedMain<F>?, ...ResolvedTuple<Rest>] : [];
36
- type IsTuple<T extends readonly any[] | {
37
- length: number;
38
- }> = [T] extends [
39
- never
40
- ] ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
41
- type ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
42
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer Primitive> ? Instance extends Primitive ? false : true : false : false;
43
- interface IValueOf<T> {
44
- valueOf(): T;
45
- }
46
39
  export {};
@@ -1,3 +1,6 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { NativeClass } from "./typings/NativeClass";
3
+ import { ValueOf } from "./typings/ValueOf";
1
4
  /**
2
5
  * Snake case type.
3
6
  *
@@ -9,11 +12,10 @@
9
12
  * @author Jeongho Nam - https://github.com/samchon
10
13
  */
11
14
  export type SnakeCase<T> = Equal<T, SnakageMain<T>> extends true ? T : SnakageMain<T>;
12
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
13
15
  type SnakageMain<T> = T extends [never] ? never : T extends {
14
16
  valueOf(): boolean | bigint | number | string;
15
17
  } ? ValueOf<T> : T extends Function ? never : T extends object ? SnakageObject<T> : T;
16
- type SnakageObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? SnakageTuple<T> : SnakageMain<U>[] : T extends Set<infer U> ? Set<SnakageMain<U>> : T extends Map<infer K, infer V> ? Map<SnakageMain<K>, SnakageMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends Date | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView | Blob | File ? T : {
18
+ type SnakageObject<T extends object> = T extends Array<infer U> ? IsTuple<T> extends true ? SnakageTuple<T> : SnakageMain<U>[] : T extends Set<infer U> ? Set<SnakageMain<U>> : T extends Map<infer K, infer V> ? Map<SnakageMain<K>, SnakageMain<V>> : T extends WeakSet<any> | WeakMap<any, any> ? never : T extends NativeClass ? T : {
17
19
  [Key in keyof T as SnakageString<Key & string>]: SnakageMain<T[Key]>;
18
20
  };
19
21
  type IsTuple<T extends readonly any[] | {
@@ -22,11 +24,6 @@ type IsTuple<T extends readonly any[] | {
22
24
  never
23
25
  ] ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
24
26
  type SnakageTuple<T extends readonly any[]> = T extends [] ? [] : T extends [infer F] ? [SnakageMain<F>] : T extends [infer F, ...infer Rest extends readonly any[]] ? [SnakageMain<F>, ...SnakageTuple<Rest>] : T extends [(infer F)?] ? [SnakageMain<F>?] : T extends [(infer F)?, ...infer Rest extends readonly any[]] ? [SnakageMain<F>?, ...SnakageTuple<Rest>] : [];
25
- type ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
26
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer Primitive> ? Instance extends Primitive ? false : true : false : false;
27
- interface IValueOf<T> {
28
- valueOf(): T;
29
- }
30
27
  type SnakageString<Key extends string> = Key extends `${infer _}` ? SnakageStringRepeatedly<Key, ""> : Key;
31
28
  type SnakageStringRepeatedly<S extends string, Previous extends string> = S extends `${infer First}${infer Second}${infer Rest}` ? `${Underscore<Previous, First>}${Lowercase<First>}${Underscore<First, Second>}${Lowercase<Second>}${SnakageStringRepeatedly<Rest, Second>}` : S extends `${infer First}` ? `${Underscore<Previous, First>}${Lowercase<First>}` : "";
32
29
  type Underscore<First extends string, Second extends string> = First extends UpperAlphabetic | "" | "_" ? "" : Second extends UpperAlphabetic ? "_" : "";
@@ -68,10 +68,10 @@ var $cloneMain = function (value) {
68
68
  return value.slice(0);
69
69
  else if (value instanceof DataView)
70
70
  return new DataView(value.buffer.slice(0));
71
- else if (value instanceof Blob)
72
- return new Blob([value], { type: value.type });
73
- else if (value instanceof File)
71
+ else if (typeof File !== "undefined" && value instanceof File)
74
72
  return new File([value], value.name, { type: value.type });
73
+ else if (typeof Blob !== "undefined" && value instanceof Blob)
74
+ return new Blob([value], { type: value.type });
75
75
  else if (value instanceof Set)
76
76
  return new Set(__spreadArray([], __read(value), false).map($cloneMain));
77
77
  else if (value instanceof Map)
@@ -1 +1 @@
1
- {"version":3,"file":"$clone.js","sourceRoot":"","sources":["../../src/functional/$clone.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"$clone.js","sourceRoot":"","sources":["../../src/functional/$clone.ts"],"names":[],"mappings":"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"}
@@ -37,10 +37,10 @@ const $cloneMain = (value) => {
37
37
  return value.slice(0);
38
38
  else if (value instanceof DataView)
39
39
  return new DataView(value.buffer.slice(0));
40
- else if (value instanceof Blob)
41
- return new Blob([value], { type: value.type });
42
- else if (value instanceof File)
40
+ else if (typeof File !== "undefined" && value instanceof File)
43
41
  return new File([value], value.name, { type: value.type });
42
+ else if (typeof Blob !== "undefined" && value instanceof Blob)
43
+ return new Blob([value], { type: value.type });
44
44
  else if (value instanceof Set)
45
45
  return new Set([...value].map($cloneMain));
46
46
  else if (value instanceof Map)
@@ -1 +1 @@
1
- {"version":3,"file":"_clone.mjs","sources":["../../src/functional/$clone.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_clone.mjs","sources":["../../src/functional/$clone.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -330,7 +330,8 @@ var MiscCloneProgrammer;
330
330
  type === "Int32Array" ||
331
331
  type === "BigInt64Array" ||
332
332
  type === "Float32Array" ||
333
- type === "Float64Array"
333
+ type === "Float64Array" ||
334
+ type === "RegExp"
334
335
  ? decode_native_copyable(type)(input)
335
336
  : type === "ArrayBuffer" || type === "SharedArrayBuffer"
336
337
  ? decode_native_buffer(type)(input)
@@ -1 +1 @@
1
- {"version":3,"file":"MiscCloneProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/misc/MiscCloneProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MiscCloneProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/misc/MiscCloneProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Compare the equivalence of the two types X and Y.
3
+ *
4
+ * The two types X and Y refer to any type that can be expressed in the type script, such as the union type and the object type.
5
+ *
6
+ * @template X One of the types to compare
7
+ * @template Y One of the types to compare
8
+ *
9
+ * ```ts
10
+ * type Answer = Equal<1 | 2, 1 | 2>; // true
11
+ * ```
12
+ *
13
+ * @author Kyungsu Kang - https://github.com/kakasoo
14
+ */
15
+ export type Equal<X, Y> = (<T>() => T extends X ? 1 : 2) extends <T>() => T extends Y ? 1 : 2 ? true : false;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Equal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Equal.js","sourceRoot":"","sources":["../../src/typings/Equal.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export type IsTuple<T extends readonly any[] | {
2
+ length: number;
3
+ }> = [
4
+ T
5
+ ] extends [never] ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IsTuple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsTuple.js","sourceRoot":"","sources":["../../src/typings/IsTuple.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type NativeClass = Date | Set<any> | Map<any, any> | WeakSet<any> | WeakMap<any, any> | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView | Blob | File | RegExp;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=NativeClass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeClass.js","sourceRoot":"","sources":["../../src/typings/NativeClass.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export type ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
2
+ type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer Primitive> ? Instance extends Primitive ? false : true : false : false;
3
+ interface IValueOf<T> {
4
+ valueOf(): T;
5
+ }
6
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ValueOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValueOf.js","sourceRoot":"","sources":["../../src/typings/ValueOf.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "6.5.1",
3
+ "version": "6.6.0-dev.20240719",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -67,7 +67,7 @@
67
67
  },
68
68
  "homepage": "https://typia.io",
69
69
  "dependencies": {
70
- "@samchon/openapi": "^0.4.1",
70
+ "@samchon/openapi": "^0.4.2",
71
71
  "commander": "^10.0.0",
72
72
  "comment-json": "^4.2.3",
73
73
  "inquirer": "^8.2.5",
package/src/CamelCase.ts CHANGED
@@ -1,3 +1,8 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
5
+
1
6
  /**
2
7
  * Camel case type.
3
8
  *
@@ -11,11 +16,6 @@
11
16
  export type CamelCase<T> =
12
17
  Equal<T, CamelizeMain<T>> extends true ? T : CamelizeMain<T>;
13
18
 
14
- /* -----------------------------------------------------------
15
- OBJECT CONVERSION
16
- ----------------------------------------------------------- */
17
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
18
-
19
19
  type CamelizeMain<T> = T extends [never]
20
20
  ? never // special trick for (jsonable | null) type
21
21
  : T extends { valueOf(): boolean | bigint | number | string }
@@ -37,24 +37,7 @@ type CamelizeObject<T extends object> =
37
37
  ? Map<CamelizeMain<K>, CamelizeMain<V>>
38
38
  : T extends WeakSet<any> | WeakMap<any, any>
39
39
  ? never
40
- : T extends
41
- | Date
42
- | Uint8Array
43
- | Uint8ClampedArray
44
- | Uint16Array
45
- | Uint32Array
46
- | BigUint64Array
47
- | Int8Array
48
- | Int16Array
49
- | Int32Array
50
- | BigInt64Array
51
- | Float32Array
52
- | Float64Array
53
- | ArrayBuffer
54
- | SharedArrayBuffer
55
- | DataView
56
- | Blob
57
- | File
40
+ : T extends NativeClass
58
41
  ? T
59
42
  : {
60
43
  [Key in keyof T as CamelizeString<Key & string>]: CamelizeMain<
@@ -62,18 +45,6 @@ type CamelizeObject<T extends object> =
62
45
  >;
63
46
  };
64
47
 
65
- /* -----------------------------------------------------------
66
- SPECIAL CASES
67
- ----------------------------------------------------------- */
68
- type IsTuple<T extends readonly any[] | { length: number }> = [T] extends [
69
- never,
70
- ]
71
- ? false
72
- : T extends readonly any[]
73
- ? number extends T["length"]
74
- ? false
75
- : true
76
- : false;
77
48
  type CamelizeTuple<T extends readonly any[]> = T extends []
78
49
  ? []
79
50
  : T extends [infer F]
@@ -86,30 +57,6 @@ type CamelizeTuple<T extends readonly any[]> = T extends []
86
57
  ? [CamelizeMain<F>?, ...CamelizeTuple<Rest>]
87
58
  : [];
88
59
 
89
- type ValueOf<Instance> =
90
- IsValueOf<Instance, Boolean> extends true
91
- ? boolean
92
- : IsValueOf<Instance, Number> extends true
93
- ? number
94
- : IsValueOf<Instance, String> extends true
95
- ? string
96
- : Instance;
97
-
98
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object
99
- ? Object extends IValueOf<infer Primitive>
100
- ? Instance extends Primitive
101
- ? false
102
- : true // not Primitive, but Object
103
- : false // cannot be
104
- : false;
105
-
106
- interface IValueOf<T> {
107
- valueOf(): T;
108
- }
109
-
110
- /* -----------------------------------------------------------
111
- STRING CONVERTER
112
- ----------------------------------------------------------- */
113
60
  type CamelizeString<Key extends string> = Key extends `_${infer R}`
114
61
  ? `_${CamelizeString<R>}`
115
62
  : Key extends `${infer F}${infer R}`
package/src/PascalCase.ts CHANGED
@@ -1,3 +1,8 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
5
+
1
6
  /**
2
7
  * Pascal case type.
3
8
  *
@@ -11,11 +16,6 @@
11
16
  export type PascalCase<T> =
12
17
  Equal<T, PascalizeMain<T>> extends true ? T : PascalizeMain<T>;
13
18
 
14
- /* -----------------------------------------------------------
15
- OBJECT CONVERSION
16
- ----------------------------------------------------------- */
17
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
18
-
19
19
  type PascalizeMain<T> = T extends [never]
20
20
  ? never // special trick for (jsonable | null) type
21
21
  : T extends { valueOf(): boolean | bigint | number | string }
@@ -37,24 +37,7 @@ type PascalizeObject<T extends object> =
37
37
  ? Map<PascalizeMain<K>, PascalizeMain<V>>
38
38
  : T extends WeakSet<any> | WeakMap<any, any>
39
39
  ? never
40
- : T extends
41
- | Date
42
- | Uint8Array
43
- | Uint8ClampedArray
44
- | Uint16Array
45
- | Uint32Array
46
- | BigUint64Array
47
- | Int8Array
48
- | Int16Array
49
- | Int32Array
50
- | BigInt64Array
51
- | Float32Array
52
- | Float64Array
53
- | ArrayBuffer
54
- | SharedArrayBuffer
55
- | DataView
56
- | Blob
57
- | File
40
+ : T extends NativeClass
58
41
  ? T
59
42
  : {
60
43
  [Key in keyof T as PascalizeString<
@@ -62,18 +45,6 @@ type PascalizeObject<T extends object> =
62
45
  >]: PascalizeMain<T[Key]>;
63
46
  };
64
47
 
65
- /* -----------------------------------------------------------
66
- SPECIAL CASES
67
- ----------------------------------------------------------- */
68
- type IsTuple<T extends readonly any[] | { length: number }> = [T] extends [
69
- never,
70
- ]
71
- ? false
72
- : T extends readonly any[]
73
- ? number extends T["length"]
74
- ? false
75
- : true
76
- : false;
77
48
  type PascalizeTuple<T extends readonly any[]> = T extends []
78
49
  ? []
79
50
  : T extends [infer F]
@@ -86,30 +57,6 @@ type PascalizeTuple<T extends readonly any[]> = T extends []
86
57
  ? [PascalizeMain<F>?, ...PascalizeTuple<Rest>]
87
58
  : [];
88
59
 
89
- type ValueOf<Instance> =
90
- IsValueOf<Instance, Boolean> extends true
91
- ? boolean
92
- : IsValueOf<Instance, Number> extends true
93
- ? number
94
- : IsValueOf<Instance, String> extends true
95
- ? string
96
- : Instance;
97
-
98
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object
99
- ? Object extends IValueOf<infer Primitive>
100
- ? Instance extends Primitive
101
- ? false
102
- : true // not Primitive, but Object
103
- : false // cannot be
104
- : false;
105
-
106
- interface IValueOf<T> {
107
- valueOf(): T;
108
- }
109
-
110
- /* -----------------------------------------------------------
111
- STRING CONVERTER
112
- ----------------------------------------------------------- */
113
60
  type PascalizeString<Key extends string> = Key extends `_${infer R}`
114
61
  ? `_${PascalizeString<R>}`
115
62
  : Key extends `${infer F}${infer R}`
package/src/Primitive.ts CHANGED
@@ -1,3 +1,10 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
5
+
6
+ import { Format } from "./tags";
7
+
1
8
  /**
2
9
  * Primitive type of JSON.
3
10
  *
@@ -35,8 +42,6 @@
35
42
  export type Primitive<T> =
36
43
  Equal<T, PrimitiveMain<T>> extends true ? T : PrimitiveMain<T>;
37
44
 
38
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
39
-
40
45
  type PrimitiveMain<Instance> = Instance extends [never]
41
46
  ? never // (special trick for jsonable | null) type
42
47
  : ValueOf<Instance> extends bigint
@@ -47,15 +52,17 @@ type PrimitiveMain<Instance> = Instance extends [never]
47
52
  ? never
48
53
  : ValueOf<Instance> extends object
49
54
  ? Instance extends object
50
- ? Instance extends NativeClass
51
- ? never
55
+ ? Instance extends Date
56
+ ? string & Format<"date-time">
52
57
  : Instance extends IJsonable<infer Raw>
53
58
  ? ValueOf<Raw> extends object
54
59
  ? Raw extends object
55
60
  ? PrimitiveObject<Raw> // object would be primitified
56
61
  : never // cannot be
57
62
  : ValueOf<Raw> // atomic value
58
- : PrimitiveObject<Instance> // object would be primitified
63
+ : Instance extends Exclude<NativeClass, Date>
64
+ ? never
65
+ : PrimitiveObject<Instance> // object would be primitified
59
66
  : never // cannot be
60
67
  : ValueOf<Instance>;
61
68
 
@@ -80,57 +87,6 @@ type PrimitiveTuple<T extends readonly any[]> = T extends []
80
87
  ? [PrimitiveMain<F>?, ...PrimitiveTuple<Rest>]
81
88
  : [];
82
89
 
83
- type ValueOf<Instance> =
84
- IsValueOf<Instance, Boolean> extends true
85
- ? boolean
86
- : IsValueOf<Instance, Number> extends true
87
- ? number
88
- : IsValueOf<Instance, String> extends true
89
- ? string
90
- : Instance;
91
-
92
- type NativeClass =
93
- | Set<any>
94
- | Map<any, any>
95
- | WeakSet<any>
96
- | WeakMap<any, any>
97
- | Uint8Array
98
- | Uint8ClampedArray
99
- | Uint16Array
100
- | Uint32Array
101
- | BigUint64Array
102
- | Int8Array
103
- | Int16Array
104
- | Int32Array
105
- | BigInt64Array
106
- | Float32Array
107
- | Float64Array
108
- | ArrayBuffer
109
- | SharedArrayBuffer
110
- | DataView;
111
-
112
- type IsTuple<T extends readonly any[] | { length: number }> = [T] extends [
113
- never,
114
- ]
115
- ? false
116
- : T extends readonly any[]
117
- ? number extends T["length"]
118
- ? false
119
- : true
120
- : false;
121
-
122
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object
123
- ? Object extends IValueOf<infer U>
124
- ? Instance extends U
125
- ? false
126
- : true // not Primitive, but Object
127
- : false // cannot be
128
- : false;
129
-
130
- interface IValueOf<T> {
131
- valueOf(): T;
132
- }
133
-
134
90
  interface IJsonable<T> {
135
91
  toJSON(): T;
136
92
  }
package/src/Resolved.ts CHANGED
@@ -1,3 +1,8 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { IsTuple } from "./typings/IsTuple";
3
+ import { NativeClass } from "./typings/NativeClass";
4
+ import { ValueOf } from "./typings/ValueOf";
5
+
1
6
  /**
2
7
  * Resolved type erased every methods.
3
8
  *
@@ -29,8 +34,6 @@
29
34
  export type Resolved<T> =
30
35
  Equal<T, ResolvedMain<T>> extends true ? T : ResolvedMain<T>;
31
36
 
32
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
33
-
34
37
  type ResolvedMain<T> = T extends [never]
35
38
  ? never // (special trick for jsonable | null) type
36
39
  : ValueOf<T> extends boolean | number | bigint | string
@@ -52,24 +55,7 @@ type ResolvedObject<T extends object> =
52
55
  ? Map<ResolvedMain<K>, ResolvedMain<V>>
53
56
  : T extends WeakSet<any> | WeakMap<any, any>
54
57
  ? never
55
- : T extends
56
- | Date
57
- | Uint8Array
58
- | Uint8ClampedArray
59
- | Uint16Array
60
- | Uint32Array
61
- | BigUint64Array
62
- | Int8Array
63
- | Int16Array
64
- | Int32Array
65
- | BigInt64Array
66
- | Float32Array
67
- | Float64Array
68
- | ArrayBuffer
69
- | SharedArrayBuffer
70
- | DataView
71
- | Blob
72
- | File
58
+ : T extends NativeClass
73
59
  ? T
74
60
  : {
75
61
  [P in keyof T]: ResolvedMain<T[P]>;
@@ -86,34 +72,3 @@ type ResolvedTuple<T extends readonly any[]> = T extends []
86
72
  : T extends [(infer F)?, ...infer Rest extends readonly any[]]
87
73
  ? [ResolvedMain<F>?, ...ResolvedTuple<Rest>]
88
74
  : [];
89
-
90
- type IsTuple<T extends readonly any[] | { length: number }> = [T] extends [
91
- never,
92
- ]
93
- ? false
94
- : T extends readonly any[]
95
- ? number extends T["length"]
96
- ? false
97
- : true
98
- : false;
99
-
100
- type ValueOf<Instance> =
101
- IsValueOf<Instance, Boolean> extends true
102
- ? boolean
103
- : IsValueOf<Instance, Number> extends true
104
- ? number
105
- : IsValueOf<Instance, String> extends true
106
- ? string
107
- : Instance;
108
-
109
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object
110
- ? Object extends IValueOf<infer Primitive>
111
- ? Instance extends Primitive
112
- ? false
113
- : true // not Primitive, but Object
114
- : false // cannot be
115
- : false;
116
-
117
- interface IValueOf<T> {
118
- valueOf(): T;
119
- }
package/src/SnakeCase.ts CHANGED
@@ -1,3 +1,7 @@
1
+ import { Equal } from "./typings/Equal";
2
+ import { NativeClass } from "./typings/NativeClass";
3
+ import { ValueOf } from "./typings/ValueOf";
4
+
1
5
  /**
2
6
  * Snake case type.
3
7
  *
@@ -14,7 +18,6 @@ export type SnakeCase<T> =
14
18
  /* -----------------------------------------------------------
15
19
  OBJECT CONVERSION
16
20
  ----------------------------------------------------------- */
17
- type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
18
21
 
19
22
  type SnakageMain<T> = T extends [never]
20
23
  ? never // special trick for (jsonable | null) type
@@ -37,24 +40,7 @@ type SnakageObject<T extends object> =
37
40
  ? Map<SnakageMain<K>, SnakageMain<V>>
38
41
  : T extends WeakSet<any> | WeakMap<any, any>
39
42
  ? never
40
- : T extends
41
- | Date
42
- | Uint8Array
43
- | Uint8ClampedArray
44
- | Uint16Array
45
- | Uint32Array
46
- | BigUint64Array
47
- | Int8Array
48
- | Int16Array
49
- | Int32Array
50
- | BigInt64Array
51
- | Float32Array
52
- | Float64Array
53
- | ArrayBuffer
54
- | SharedArrayBuffer
55
- | DataView
56
- | Blob
57
- | File
43
+ : T extends NativeClass
58
44
  ? T
59
45
  : {
60
46
  [Key in keyof T as SnakageString<Key & string>]: SnakageMain<
@@ -86,27 +72,6 @@ type SnakageTuple<T extends readonly any[]> = T extends []
86
72
  ? [SnakageMain<F>?, ...SnakageTuple<Rest>]
87
73
  : [];
88
74
 
89
- type ValueOf<Instance> =
90
- IsValueOf<Instance, Boolean> extends true
91
- ? boolean
92
- : IsValueOf<Instance, Number> extends true
93
- ? number
94
- : IsValueOf<Instance, String> extends true
95
- ? string
96
- : Instance;
97
-
98
- type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object
99
- ? Object extends IValueOf<infer Primitive>
100
- ? Instance extends Primitive
101
- ? false
102
- : true // not Primitive, but Object
103
- : false // cannot be
104
- : false;
105
-
106
- interface IValueOf<T> {
107
- valueOf(): T;
108
- }
109
-
110
75
  /* -----------------------------------------------------------
111
76
  STRING CONVERTER
112
77
  ----------------------------------------------------------- */
@@ -25,10 +25,10 @@ const $cloneMain = (value: any): any => {
25
25
  else if (value instanceof SharedArrayBuffer) return value.slice(0);
26
26
  else if (value instanceof DataView)
27
27
  return new DataView(value.buffer.slice(0));
28
- else if (value instanceof Blob)
29
- return new Blob([value], { type: value.type });
30
- else if (value instanceof File)
28
+ else if (typeof File !== "undefined" && value instanceof File)
31
29
  return new File([value], value.name, { type: value.type });
30
+ else if (typeof Blob !== "undefined" && value instanceof Blob)
31
+ return new Blob([value], { type: value.type });
32
32
  else if (value instanceof Set) return new Set([...value].map($cloneMain));
33
33
  else if (value instanceof Map)
34
34
  return new Map(
@@ -378,7 +378,8 @@ export namespace MiscCloneProgrammer {
378
378
  type === "Int32Array" ||
379
379
  type === "BigInt64Array" ||
380
380
  type === "Float32Array" ||
381
- type === "Float64Array"
381
+ type === "Float64Array" ||
382
+ type === "RegExp"
382
383
  ? decode_native_copyable(type)(input)
383
384
  : type === "ArrayBuffer" || type === "SharedArrayBuffer"
384
385
  ? decode_native_buffer(type)(input)
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Compare the equivalence of the two types X and Y.
3
+ *
4
+ * The two types X and Y refer to any type that can be expressed in the type script, such as the union type and the object type.
5
+ *
6
+ * @template X One of the types to compare
7
+ * @template Y One of the types to compare
8
+ *
9
+ * ```ts
10
+ * type Answer = Equal<1 | 2, 1 | 2>; // true
11
+ * ```
12
+ *
13
+ * @author Kyungsu Kang - https://github.com/kakasoo
14
+ */
15
+ export type Equal<X, Y> =
16
+ (<T>() => T extends X ? 1 : 2) extends <T>() => T extends Y ? 1 : 2
17
+ ? true
18
+ : false;
@@ -0,0 +1,9 @@
1
+ export type IsTuple<T extends readonly any[] | { length: number }> = [
2
+ T,
3
+ ] extends [never]
4
+ ? false
5
+ : T extends readonly any[]
6
+ ? number extends T["length"]
7
+ ? false
8
+ : true
9
+ : false;
@@ -0,0 +1,23 @@
1
+ export type NativeClass =
2
+ | Date
3
+ | Set<any>
4
+ | Map<any, any>
5
+ | WeakSet<any>
6
+ | WeakMap<any, any>
7
+ | Uint8Array
8
+ | Uint8ClampedArray
9
+ | Uint16Array
10
+ | Uint32Array
11
+ | BigUint64Array
12
+ | Int8Array
13
+ | Int16Array
14
+ | Int32Array
15
+ | BigInt64Array
16
+ | Float32Array
17
+ | Float64Array
18
+ | ArrayBuffer
19
+ | SharedArrayBuffer
20
+ | DataView
21
+ | Blob
22
+ | File
23
+ | RegExp;
@@ -0,0 +1,20 @@
1
+ export type ValueOf<Instance> =
2
+ IsValueOf<Instance, Boolean> extends true
3
+ ? boolean
4
+ : IsValueOf<Instance, Number> extends true
5
+ ? number
6
+ : IsValueOf<Instance, String> extends true
7
+ ? string
8
+ : Instance;
9
+
10
+ type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object
11
+ ? Object extends IValueOf<infer Primitive>
12
+ ? Instance extends Primitive
13
+ ? false
14
+ : true // not Primitive, but Object
15
+ : false // cannot be
16
+ : false;
17
+
18
+ interface IValueOf<T> {
19
+ valueOf(): T;
20
+ }