typia 5.1.6 → 5.2.0

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.
Files changed (223) hide show
  1. package/lib/CamelCase.d.ts +32 -0
  2. package/lib/CamelCase.js +3 -0
  3. package/lib/CamelCase.js.map +1 -0
  4. package/lib/PascalCase.d.ts +32 -0
  5. package/lib/PascalCase.js +3 -0
  6. package/lib/PascalCase.js.map +1 -0
  7. package/lib/Primitive.d.ts +1 -1
  8. package/lib/Resolved.d.ts +5 -5
  9. package/lib/SnakeCase.d.ts +34 -0
  10. package/lib/SnakeCase.js +3 -0
  11. package/lib/SnakeCase.js.map +1 -0
  12. package/lib/functional/$convention.d.ts +1 -0
  13. package/lib/functional/$convention.js +63 -0
  14. package/lib/functional/$convention.js.map +1 -0
  15. package/lib/functional/Namespace.js +9 -0
  16. package/lib/functional/Namespace.js.map +1 -1
  17. package/lib/module.d.ts +5 -1
  18. package/lib/module.js +6 -2
  19. package/lib/module.js.map +1 -1
  20. package/lib/notations.d.ts +538 -0
  21. package/lib/notations.js +146 -0
  22. package/lib/notations.js.map +1 -0
  23. package/lib/programmers/helpers/NotationJoiner.d.ts +7 -0
  24. package/lib/programmers/helpers/NotationJoiner.js +85 -0
  25. package/lib/programmers/helpers/NotationJoiner.js.map +1 -0
  26. package/lib/programmers/misc/MiscCloneProgrammer.js +12 -1
  27. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  28. package/lib/programmers/misc/MiscPruneProgrammer.js +2 -1
  29. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  30. package/lib/programmers/notations/NotationAssertGeneralProgrammer.d.ts +5 -0
  31. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +44 -0
  32. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -0
  33. package/lib/programmers/notations/NotationGeneralProgrammer.d.ts +6 -0
  34. package/lib/programmers/notations/NotationGeneralProgrammer.js +490 -0
  35. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -0
  36. package/lib/programmers/notations/NotationIsGeneralProgrammer.d.ts +5 -0
  37. package/lib/programmers/notations/NotationIsGeneralProgrammer.js +47 -0
  38. package/lib/programmers/notations/NotationIsGeneralProgrammer.js.map +1 -0
  39. package/lib/programmers/notations/NotationValidateGeneralProgrammer.d.ts +5 -0
  40. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js +44 -0
  41. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js.map +1 -0
  42. package/lib/transformers/CallExpressionTransformer.js +99 -16
  43. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  44. package/lib/transformers/features/json/JsonAssertParseTransformer.js +1 -1
  45. package/lib/transformers/features/json/JsonAssertParseTransformer.js.map +1 -1
  46. package/lib/transformers/features/json/JsonAssertStringifyTransformer.js +1 -1
  47. package/lib/transformers/features/json/JsonAssertStringifyTransformer.js.map +1 -1
  48. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js +1 -1
  49. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js.map +1 -1
  50. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js +1 -1
  51. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js.map +1 -1
  52. package/lib/transformers/features/json/JsonCreateIsParseTransformer.js +1 -1
  53. package/lib/transformers/features/json/JsonCreateIsParseTransformer.js.map +1 -1
  54. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js +1 -1
  55. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js.map +1 -1
  56. package/lib/transformers/features/json/JsonCreateStringifyTransformer.js +1 -1
  57. package/lib/transformers/features/json/JsonCreateStringifyTransformer.js.map +1 -1
  58. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js +1 -1
  59. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js.map +1 -1
  60. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js +1 -1
  61. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js.map +1 -1
  62. package/lib/transformers/features/json/JsonIsParseTransformer.js +1 -1
  63. package/lib/transformers/features/json/JsonIsParseTransformer.js.map +1 -1
  64. package/lib/transformers/features/json/JsonIsStringifyTransformer.js +1 -1
  65. package/lib/transformers/features/json/JsonIsStringifyTransformer.js.map +1 -1
  66. package/lib/transformers/features/json/JsonStringifyTransformer.js +1 -1
  67. package/lib/transformers/features/json/JsonStringifyTransformer.js.map +1 -1
  68. package/lib/transformers/features/json/JsonValidateParseTransformer.js +1 -1
  69. package/lib/transformers/features/json/JsonValidateParseTransformer.js.map +1 -1
  70. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js +1 -1
  71. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js.map +1 -1
  72. package/lib/transformers/features/misc/MiscAssertCloneTransformer.js +1 -1
  73. package/lib/transformers/features/misc/MiscAssertCloneTransformer.js.map +1 -1
  74. package/lib/transformers/features/misc/MiscAssertPruneTransformer.js +1 -1
  75. package/lib/transformers/features/misc/MiscAssertPruneTransformer.js.map +1 -1
  76. package/lib/transformers/features/misc/MiscCloneTransformer.js +1 -1
  77. package/lib/transformers/features/misc/MiscCloneTransformer.js.map +1 -1
  78. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js +1 -1
  79. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js.map +1 -1
  80. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js +1 -1
  81. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js.map +1 -1
  82. package/lib/transformers/features/misc/MiscCreateCloneTransformer.js +1 -1
  83. package/lib/transformers/features/misc/MiscCreateCloneTransformer.js.map +1 -1
  84. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js +1 -1
  85. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js.map +1 -1
  86. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +1 -1
  87. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
  88. package/lib/transformers/features/misc/MiscCreatePruneTransformer.js +1 -1
  89. package/lib/transformers/features/misc/MiscCreatePruneTransformer.js.map +1 -1
  90. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js +1 -1
  91. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js.map +1 -1
  92. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js +1 -1
  93. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js.map +1 -1
  94. package/lib/transformers/features/misc/MiscIsCloneTransformer.js +1 -1
  95. package/lib/transformers/features/misc/MiscIsCloneTransformer.js.map +1 -1
  96. package/lib/transformers/features/misc/MiscIsPruneTransformer.js +1 -1
  97. package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
  98. package/lib/transformers/features/misc/MiscPruneTransformer.js +1 -1
  99. package/lib/transformers/features/misc/MiscPruneTransformer.js.map +1 -1
  100. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js +1 -1
  101. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js.map +1 -1
  102. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js +1 -1
  103. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js.map +1 -1
  104. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.d.ts +4 -0
  105. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js +15 -0
  106. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js.map +1 -0
  107. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.d.ts +4 -0
  108. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js +15 -0
  109. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js.map +1 -0
  110. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.d.ts +4 -0
  111. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js +15 -0
  112. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js.map +1 -0
  113. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.d.ts +4 -0
  114. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js +15 -0
  115. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js.map +1 -0
  116. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.d.ts +4 -0
  117. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js +15 -0
  118. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js.map +1 -0
  119. package/lib/transformers/features/notations/NotationGeneralTransformer.d.ts +4 -0
  120. package/lib/transformers/features/notations/NotationGeneralTransformer.js +14 -0
  121. package/lib/transformers/features/notations/NotationGeneralTransformer.js.map +1 -0
  122. package/lib/transformers/features/notations/NotationIsGeneralTransformer.d.ts +4 -0
  123. package/lib/transformers/features/notations/NotationIsGeneralTransformer.js +15 -0
  124. package/lib/transformers/features/notations/NotationIsGeneralTransformer.js.map +1 -0
  125. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.d.ts +4 -0
  126. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js +15 -0
  127. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js.map +1 -0
  128. package/lib/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.d.ts → ProtobufCreateAssertDecodeTransformer.d.ts} +1 -1
  129. package/lib/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.js → ProtobufCreateAssertDecodeTransformer.js} +6 -6
  130. package/lib/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.js.map → ProtobufCreateAssertDecodeTransformer.js.map} +1 -1
  131. package/lib/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.d.ts → ProtobufCreateAssertEncodeTransformer.d.ts} +1 -1
  132. package/lib/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.js → ProtobufCreateAssertEncodeTransformer.js} +6 -6
  133. package/lib/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.js.map → ProtobufCreateAssertEncodeTransformer.js.map} +1 -1
  134. package/lib/transformers/features/protobuf/{CreateProtobufDecodeTransformer.d.ts → ProtobufCreateDecodeTransformer.d.ts} +1 -1
  135. package/lib/transformers/features/protobuf/{CreateProtobufDecodeTransformer.js → ProtobufCreateDecodeTransformer.js} +6 -6
  136. package/lib/transformers/features/protobuf/{CreateProtobufDecodeTransformer.js.map → ProtobufCreateDecodeTransformer.js.map} +1 -1
  137. package/lib/transformers/features/protobuf/{CreateProtobufEncodeTransformer.d.ts → ProtobufCreateEncodeTransformer.d.ts} +1 -1
  138. package/lib/transformers/features/protobuf/{CreateProtobufEncodeTransformer.js → ProtobufCreateEncodeTransformer.js} +6 -6
  139. package/lib/transformers/features/protobuf/{CreateProtobufEncodeTransformer.js.map → ProtobufCreateEncodeTransformer.js.map} +1 -1
  140. package/lib/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.d.ts → ProtobufCreateIsDecodeTransformer.d.ts} +1 -1
  141. package/lib/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.js → ProtobufCreateIsDecodeTransformer.js} +6 -6
  142. package/lib/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.js.map → ProtobufCreateIsDecodeTransformer.js.map} +1 -1
  143. package/lib/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.d.ts → ProtobufCreateIsEncodeTransformer.d.ts} +1 -1
  144. package/lib/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.js → ProtobufCreateIsEncodeTransformer.js} +6 -6
  145. package/lib/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.js.map → ProtobufCreateIsEncodeTransformer.js.map} +1 -1
  146. package/lib/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.d.ts → ProtobufCreateValidateDecodeTransformer.d.ts} +1 -1
  147. package/lib/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.js → ProtobufCreateValidateDecodeTransformer.js} +6 -6
  148. package/lib/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.js.map → ProtobufCreateValidateDecodeTransformer.js.map} +1 -1
  149. package/lib/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.d.ts → ProtobufCreateValidateEncodeTransformer.d.ts} +1 -1
  150. package/lib/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.js → ProtobufCreateValidateEncodeTransformer.js} +6 -6
  151. package/lib/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.js.map → ProtobufCreateValidateEncodeTransformer.js.map} +1 -1
  152. package/lib/utils/NamingConvention.d.ts +5 -0
  153. package/lib/utils/NamingConvention.js +115 -0
  154. package/lib/utils/NamingConvention.js.map +1 -0
  155. package/lib/utils/StringUtil.d.ts +3 -0
  156. package/lib/utils/StringUtil.js +10 -0
  157. package/lib/utils/StringUtil.js.map +1 -0
  158. package/package.json +2 -1
  159. package/src/CamelCase.ts +116 -0
  160. package/src/PascalCase.ts +116 -0
  161. package/src/Primitive.ts +135 -135
  162. package/src/Resolved.ts +116 -116
  163. package/src/SnakeCase.ts +156 -0
  164. package/src/functional/$convention.ts +40 -0
  165. package/src/functional/Namespace.ts +164 -142
  166. package/src/module.ts +662 -657
  167. package/src/notations.ts +855 -0
  168. package/src/programmers/helpers/NotationJoiner.ts +146 -0
  169. package/src/programmers/misc/MiscCloneProgrammer.ts +790 -774
  170. package/src/programmers/misc/MiscPruneProgrammer.ts +552 -550
  171. package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +72 -0
  172. package/src/programmers/notations/NotationGeneralProgrammer.ts +720 -0
  173. package/src/programmers/notations/NotationIsGeneralProgrammer.ts +79 -0
  174. package/src/programmers/notations/NotationValidateGeneralProgrammer.ts +88 -0
  175. package/src/transformers/CallExpressionTransformer.ts +380 -289
  176. package/src/transformers/features/json/JsonAssertParseTransformer.ts +10 -10
  177. package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +10 -10
  178. package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +12 -10
  179. package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +12 -12
  180. package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +9 -9
  181. package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +12 -10
  182. package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +9 -9
  183. package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +12 -10
  184. package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +12 -12
  185. package/src/transformers/features/json/JsonIsParseTransformer.ts +9 -9
  186. package/src/transformers/features/json/JsonIsStringifyTransformer.ts +10 -10
  187. package/src/transformers/features/json/JsonStringifyTransformer.ts +9 -9
  188. package/src/transformers/features/json/JsonValidateParseTransformer.ts +10 -10
  189. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +10 -10
  190. package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +10 -10
  191. package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +10 -10
  192. package/src/transformers/features/misc/MiscCloneTransformer.ts +9 -9
  193. package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +12 -10
  194. package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +12 -10
  195. package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +9 -9
  196. package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +9 -9
  197. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +9 -9
  198. package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +9 -9
  199. package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +12 -10
  200. package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +12 -10
  201. package/src/transformers/features/misc/MiscIsCloneTransformer.ts +9 -9
  202. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +9 -9
  203. package/src/transformers/features/misc/MiscPruneTransformer.ts +9 -9
  204. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +10 -10
  205. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +10 -10
  206. package/src/transformers/features/notations/NotationAssertGeneralTransformer.ts +15 -0
  207. package/src/transformers/features/notations/NotationCreateAssertGeneralTransformer.ts +15 -0
  208. package/src/transformers/features/notations/NotationCreateGeneralTransformer.ts +15 -0
  209. package/src/transformers/features/notations/NotationCreateIsGeneralTransformer.ts +15 -0
  210. package/src/transformers/features/notations/NotationCreateValidateGeneralTransformer.ts +17 -0
  211. package/src/transformers/features/notations/NotationGeneralTransformer.ts +11 -0
  212. package/src/transformers/features/notations/NotationIsGeneralTransformer.ts +15 -0
  213. package/src/transformers/features/notations/NotationValidateGeneralTransformer.ts +17 -0
  214. package/src/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.ts → ProtobufCreateAssertDecodeTransformer.ts} +12 -12
  215. package/src/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.ts → ProtobufCreateAssertEncodeTransformer.ts} +12 -12
  216. package/src/transformers/features/protobuf/{CreateProtobufDecodeTransformer.ts → ProtobufCreateDecodeTransformer.ts} +9 -9
  217. package/src/transformers/features/protobuf/{CreateProtobufEncodeTransformer.ts → ProtobufCreateEncodeTransformer.ts} +9 -9
  218. package/src/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.ts → ProtobufCreateIsDecodeTransformer.ts} +12 -12
  219. package/src/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.ts → ProtobufCreateIsEncodeTransformer.ts} +12 -12
  220. package/src/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.ts → ProtobufCreateValidateDecodeTransformer.ts} +12 -12
  221. package/src/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.ts → ProtobufCreateValidateEncodeTransformer.ts} +12 -12
  222. package/src/utils/NamingConvention.ts +91 -0
  223. package/src/utils/StringUtil.ts +4 -0
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Camel case type.
3
+ *
4
+ * `CamelCase` type is a type that all keys of an object are camelized.
5
+ *
6
+ * It also erase every method properties like {@link Resolved} type.
7
+ *
8
+ * @template T Target type to be camelized
9
+ * @author Jeongho Nam - https://github.com/samchon
10
+ */
11
+ 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
+ type CamelizeMain<T> = T extends [never] ? never : T extends {
14
+ valueOf(): boolean | bigint | number | string;
15
+ } ? 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 ? T : {
17
+ [Key in keyof T as CamelizeString<Key & string>]: CamelizeMain<T[Key]>;
18
+ };
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
+ 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
+ type CamelizeString<Key extends string> = Key extends `${infer F}${infer R}` ? `${Lowercase<F>}${CamelizeStringRepeatedly<R>}` : Key;
31
+ type CamelizeStringRepeatedly<Key extends string> = Key extends `${infer F}_${infer R}` ? `${F}${Capitalize<CamelizeStringRepeatedly<R>>}` : Key;
32
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=CamelCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CamelCase.js","sourceRoot":"","sources":["../src/CamelCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Pascal case type.
3
+ *
4
+ * `PascalCase` type is a type that all keys of an object are pascalized.
5
+ *
6
+ * It also erase every method properties like {@link Resolved} type.
7
+ *
8
+ * @template T Target type to be pascalized
9
+ * @author Jeongho Nam - https://github.com/samchon
10
+ */
11
+ 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
+ type PascalizeMain<T> = T extends [never] ? never : T extends {
14
+ valueOf(): boolean | bigint | number | string;
15
+ } ? 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 ? T : {
17
+ [Key in keyof T as PascalizeString<Key & string>]: PascalizeMain<T[Key]>;
18
+ };
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
+ 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
+ type PascalizeString<Key extends string> = Key extends `${infer F}${infer R}` ? `${Uppercase<F>}${PascalizeStringRepeatedly<R>}` : Key;
31
+ type PascalizeStringRepeatedly<Key extends string> = Key extends `${infer F}_${infer R}` ? `${F}${Capitalize<PascalizeStringRepeatedly<R>>}` : Key;
32
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=PascalCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PascalCase.js","sourceRoot":"","sources":["../src/PascalCase.ts"],"names":[],"mappings":""}
@@ -27,7 +27,7 @@
27
27
  * Native Class | `{}`
28
28
  * Others | No change
29
29
  *
30
- * @template Instance Target argument type.
30
+ * @template T Target argument type.
31
31
  * @author Jeongho Nam - https://github.com/samchon
32
32
  * @author Kyungsu Kang - https://github.com/kakasoo
33
33
  * @author Michael - https://github.com/8471919
package/lib/Resolved.d.ts CHANGED
@@ -22,23 +22,23 @@
22
22
  * `Class` | `interface`
23
23
  * Native Class or Others | No change
24
24
  *
25
- * @template Instance Target argument type.
25
+ * @template T Target argument type.
26
26
  * @author Jeongho Nam - https://github.com/samchon
27
27
  * @author Kyungsu Kang - https://github.com/kakasoo
28
28
  */
29
29
  export type Resolved<T> = Equal<T, ResolvedMain<T>> extends true ? T : ResolvedMain<T>;
30
30
  type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
31
- type ResolvedMain<Instance> = Instance extends [never] ? never : ValueOf<Instance> extends boolean | number | bigint | string ? ValueOf<Instance> : Instance extends Function ? never : Instance extends object ? ResolvedObject<Instance> : ValueOf<Instance>;
32
- type ResolvedObject<Instance extends object> = Instance extends Array<infer T> ? IsTuple<Instance> extends true ? ResolvedTuple<Instance> : ResolvedMain<T>[] : Instance extends Set<infer U> ? Set<ResolvedMain<U>> : Instance extends Map<infer K, infer V> ? Map<ResolvedMain<K>, ResolvedMain<V>> : Instance extends WeakSet<any> | WeakMap<any, any> ? never : Instance extends Date | Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array | ArrayBuffer | SharedArrayBuffer | DataView ? Instance : {
33
- [P in keyof Instance]: ResolvedMain<Instance[P]>;
31
+ 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 ? T : {
33
+ [P in keyof T]: ResolvedMain<T[P]>;
34
34
  };
35
35
  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 ValueOf<Instance> = IsValueOf<Instance, Boolean> extends true ? boolean : IsValueOf<Instance, Number> extends true ? number : IsValueOf<Instance, String> extends true ? string : Instance;
37
36
  type IsTuple<T extends readonly any[] | {
38
37
  length: number;
39
38
  }> = [T] extends [
40
39
  never
41
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
42
  type IsValueOf<Instance, Object extends IValueOf<any>> = Instance extends Object ? Object extends IValueOf<infer Primitive> ? Instance extends Primitive ? false : true : false : false;
43
43
  interface IValueOf<T> {
44
44
  valueOf(): T;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Snake case type.
3
+ *
4
+ * `SnakeCase` type is a type that all keys of an object are converted to snake case.
5
+ *
6
+ * It also erase every method properties like {@link Resolved} type.
7
+ *
8
+ * @template T Target type to be snake cased
9
+ * @author Jeongho Nam - https://github.com/samchon
10
+ */
11
+ 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
+ type SnakageMain<T> = T extends [never] ? never : T extends {
14
+ valueOf(): boolean | bigint | number | string;
15
+ } ? 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 ? T : {
17
+ [Key in keyof T as SnakageString<Key & string>]: SnakageMain<T[Key]>;
18
+ };
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
+ 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
+ type SnakageString<Key extends string> = Key extends `${infer _}` ? SnakageStringRepeatedly<Key, ""> : Key;
31
+ 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
+ type Underscore<First extends string, Second extends string> = First extends UpperAlphabetic | "" | "_" ? "" : Second extends UpperAlphabetic ? "_" : "";
33
+ type UpperAlphabetic = "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z";
34
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=SnakeCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SnakeCase.js","sourceRoot":"","sources":["../src/SnakeCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export declare const $convention: (rename: (str: string) => string) => (input: any) => any;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.$convention = void 0;
20
+ var $convention = function (rename) {
21
+ var main = function (input) {
22
+ if (typeof input === "object")
23
+ if (input === null)
24
+ return null;
25
+ else if (Array.isArray(input))
26
+ return input.map(main);
27
+ else if (input instanceof Boolean ||
28
+ input instanceof BigInt ||
29
+ input instanceof Number ||
30
+ input instanceof String)
31
+ return input.valueOf();
32
+ else if (input instanceof Date)
33
+ return new Date(input);
34
+ else if (input instanceof Uint8Array ||
35
+ input instanceof Uint8ClampedArray ||
36
+ input instanceof Uint16Array ||
37
+ input instanceof Uint32Array ||
38
+ input instanceof BigUint64Array ||
39
+ input instanceof Int8Array ||
40
+ input instanceof Int16Array ||
41
+ input instanceof Int32Array ||
42
+ input instanceof BigInt64Array ||
43
+ input instanceof Float32Array ||
44
+ input instanceof Float64Array ||
45
+ input instanceof DataView)
46
+ return input;
47
+ else
48
+ return object(input);
49
+ return input;
50
+ };
51
+ var object = function (input) {
52
+ return Object.fromEntries(Object.entries(input).map(function (_a) {
53
+ var _b = __read(_a, 2), key = _b[0], value = _b[1];
54
+ return [
55
+ rename(key),
56
+ main(value),
57
+ ];
58
+ }));
59
+ };
60
+ return main;
61
+ };
62
+ exports.$convention = $convention;
63
+ //# sourceMappingURL=$convention.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"$convention.js","sourceRoot":"","sources":["../../src/functional/$convention.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAO,IAAM,WAAW,GAAG,UAAC,MAA+B;IACvD,IAAM,IAAI,GAAG,UAAC,KAAU;QACpB,IAAI,OAAO,KAAK,KAAK,QAAQ;YACzB,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;iBAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;iBACjD,IACD,KAAK,YAAY,OAAO;gBACxB,KAAK,YAAY,MAAM;gBACvB,KAAK,YAAY,MAAM;gBACvB,KAAK,YAAY,MAAM;gBAEvB,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;iBACtB,IAAI,KAAK,YAAY,IAAI;gBAAE,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;iBAClD,IACD,KAAK,YAAY,UAAU;gBAC3B,KAAK,YAAY,iBAAiB;gBAClC,KAAK,YAAY,WAAW;gBAC5B,KAAK,YAAY,WAAW;gBAC5B,KAAK,YAAY,cAAc;gBAC/B,KAAK,YAAY,SAAS;gBAC1B,KAAK,YAAY,UAAU;gBAC3B,KAAK,YAAY,UAAU;gBAC3B,KAAK,YAAY,aAAa;gBAC9B,KAAK,YAAY,YAAY;gBAC7B,KAAK,YAAY,YAAY;gBAC7B,KAAK,YAAY,QAAQ;gBAEzB,OAAO,KAAK,CAAC;;gBACZ,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC;IACF,IAAM,MAAM,GAAG,UAAC,KAA0B;QACtC,OAAA,MAAM,CAAC,WAAW,CACd,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;gBAAZ,KAAA,aAAY,EAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAAM,OAAA;gBACxC,MAAM,CAAC,GAAG,CAAC;gBACX,IAAI,CAAC,KAAK,CAAC;aACd;QAH2C,CAG3C,CAAC,CACL;IALD,CAKC,CAAC;IACN,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAvCW,QAAA,WAAW,eAuCtB"}
@@ -12,6 +12,7 @@ var __assign = (this && this.__assign) || function () {
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.Namespace = void 0;
15
+ var NamingConvention_1 = require("../utils/NamingConvention");
15
16
  var RandomGenerator_1 = require("../utils/RandomGenerator");
16
17
  var TypeGuardError_1 = require("../TypeGuardError");
17
18
  var _HeadersReader_1 = require("./$HeadersReader");
@@ -21,6 +22,7 @@ var _ProtobufSizer_1 = require("./$ProtobufSizer");
21
22
  var _ProtobufWriter_1 = require("./$ProtobufWriter");
22
23
  var _QueryReader_1 = require("./$QueryReader");
23
24
  var _any_1 = require("./$any");
25
+ var _convention_1 = require("./$convention");
24
26
  var _every_1 = require("./$every");
25
27
  var _guard_1 = require("./$guard");
26
28
  var _is_between_1 = require("./$is_between");
@@ -89,6 +91,13 @@ var Namespace;
89
91
  misc.clone = function (method) { return (__assign(__assign({}, Namespace.is()), { throws: $throws("misc.".concat(method)), any: _any_1.$any })); };
90
92
  misc.prune = function (method) { return (__assign(__assign({}, Namespace.is()), { throws: $throws("misc.".concat(method)) })); };
91
93
  })(misc = Namespace.misc || (Namespace.misc = {}));
94
+ var notations;
95
+ (function (notations) {
96
+ notations.camel = function (method) { return (__assign(__assign({}, base(method)), { any: (0, _convention_1.$convention)(NamingConvention_1.NamingConvention.camel) })); };
97
+ notations.pascal = function (method) { return (__assign(__assign({}, base(method)), { any: (0, _convention_1.$convention)(NamingConvention_1.NamingConvention.pascal) })); };
98
+ notations.snake = function (method) { return (__assign(__assign({}, base(method)), { any: (0, _convention_1.$convention)(NamingConvention_1.NamingConvention.snake) })); };
99
+ var base = function (method) { return (__assign(__assign({}, Namespace.is()), { throws: $throws("notations.".concat(method)) })); };
100
+ })(notations = Namespace.notations || (Namespace.notations = {}));
92
101
  Namespace.random = function () { return ({
93
102
  generator: RandomGenerator_1.RandomGenerator,
94
103
  pick: RandomGenerator_1.RandomGenerator.pick,
@@ -1 +1 @@
1
- {"version":3,"file":"Namespace.js","sourceRoot":"","sources":["../../src/functional/Namespace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4DAA2D;AAG3D,oDAAmD;AACnD,mDAAkD;AAClD,uDAAsD;AACtD,qDAAoD;AACpD,mDAAkD;AAClD,qDAAoD;AACpD,+CAA8C;AAC9C,+BAA8B;AAC9B,mCAAkC;AAClC,mCAAkC;AAClC,6CAA4C;AAC5C,iCAAgC;AAChC,qCAAoC;AACpC,qCAAoC;AACpC,iCAAgC;AAChC,qCAAoC;AACpC,qCAAoC;AACpC,iCAAgC;AAKhC,IAAiB,SAAS,CAoHzB;AApHD,WAAiB,SAAS;IACT,YAAE,GAAG,cAAM,OAAA,CAAC;QACrB,UAAU,EAAE,yBAAW;KAC1B,CAAC,EAFsB,CAEtB,CAAC;IAEU,gBAAM,GAAG,UAAC,MAAc,IAAK,OAAA,uBACnC,UAAA,EAAE,EAAE,KACP,IAAI,EAAE,aAAK,EACX,KAAK,EAAE,eAAM,EACb,KAAK,EAAE,IAAA,eAAM,EAAC,gBAAS,MAAM,CAAE,CAAC,EAChC,SAAS,EAAE,UACP,OAAgB,EAChB,aAAsB,EACtB,OAAoD;YAEpD,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;gBAC3C,MAAM,IAAI,+BAAc,uBACjB,OAAO,EAAE,KACZ,MAAM,EAAE,gBAAS,MAAM,CAAE,IAC3B,CAAC;YACP,OAAO,OAAO,CAAC;QACnB,CAAC,IACH,EAjBwC,CAiBxC,CAAC;IAEU,kBAAQ,GAAG,cAAM,OAAA,uBACvB,UAAA,EAAE,EAAE,KACP,IAAI,EAAE,aAAK,EACX,MAAM,EAAE,iBAAO,EACf,SAAS,EACL,UAAC,GAAgB;YACjB,OAAA,UACI,OAAgB,EAChB,aAAsB,EACtB,OAAiC;gBAGjC,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;oBAC3C,CAAC;wBACG,GAAG,CAAC,OAAO,KAAX,GAAG,CAAC,OAAO,GAAK,KAAK,EAAC;wBACtB,IAAM,SAAS,GAAI,GAA4B,CAAC,MAAM,CAAC;wBAGvD,IAAM,KAAK,GAAG,OAAO,EAAE,CAAC;wBACxB,IAAI,SAAS,CAAC,MAAM,EAAE;4BAClB,IAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,IAAI,CAAC;4BACnD,IACI,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM;gCAChC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;oCAChC,KAAK,CAAC,IAAI;gCAEd,OAAO;yBACd;wBACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACtB,OAAO;oBACX,CAAC,CAAC,EAAE,CAAC;gBACT,OAAO,OAAO,CAAC;YACnB,CAAC;QA1BD,CA0BC,IACP,EAjC4B,CAiC5B,CAAC;IAEH,IAAiB,IAAI,CASpB;IATD,WAAiB,IAAI;QACJ,cAAS,GAAG,UAAC,MAAc,IAAK,OAAA,uBACtC,UAAA,EAAE,EAAE,KACP,MAAM,EAAE,iBAAO,EACf,MAAM,EAAE,iBAAO,EACf,IAAI,EAAE,aAAK,EACX,IAAI,EAAE,aAAK,EACX,MAAM,EAAE,OAAO,CAAC,eAAQ,MAAM,CAAE,CAAC,IACnC,EAP2C,CAO3C,CAAC;IACP,CAAC,EATgB,IAAI,GAAJ,cAAI,KAAJ,cAAI,QASpB;IAED,IAAiB,QAAQ,CAYxB;IAZD,WAAiB,QAAQ;QACR,eAAM,GAAG,UAAC,MAAc,IAAK,OAAA,CAAC;YACvC,MAAM,EAAE,iCAAe;YACvB,MAAM,EAAE,OAAO,CAAC,mBAAY,MAAM,CAAE,CAAC;SACxC,CAAC,EAHwC,CAGxC,CAAC;QAEU,eAAM,GAAG,UAAC,MAAc,IAAK,OAAA,CAAC;YACvC,KAAK,EAAE,+BAAc;YACrB,MAAM,EAAE,iCAAe;YACvB,MAAM,EAAE,iBAAO;YACf,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;SAC1B,CAAC,EALwC,CAKxC,CAAC;IACP,CAAC,EAZgB,QAAQ,GAAR,kBAAQ,KAAR,kBAAQ,QAYxB;IAED,IAAiB,IAAI,CAIpB;IAJD,WAAiB,IAAI;QACJ,UAAK,GAAG,cAAM,OAAA,2BAAY,EAAZ,CAAY,CAAC;QAC3B,YAAO,GAAG,cAAM,OAAA,+BAAc,EAAd,CAAc,CAAC;QAC/B,cAAS,GAAG,cAAM,OAAA,mCAAgB,EAAhB,CAAgB,CAAC;IACpD,CAAC,EAJgB,IAAI,GAAJ,cAAI,KAAJ,cAAI,QAIpB;IAED,IAAiB,IAAI,CAWpB;IAXD,WAAiB,IAAI;QACJ,UAAK,GAAG,UAAC,MAAc,IAAK,OAAA,uBAClC,UAAA,EAAE,EAAE,KACP,MAAM,EAAE,OAAO,CAAC,eAAQ,MAAM,CAAE,CAAC,EACjC,GAAG,EAAE,WAAI,IACX,EAJuC,CAIvC,CAAC;QAEU,UAAK,GAAG,UAAC,MAAc,IAAK,OAAA,uBAClC,UAAA,EAAE,EAAE,KACP,MAAM,EAAE,OAAO,CAAC,eAAQ,MAAM,CAAE,CAAC,IACnC,EAHuC,CAGvC,CAAC;IACP,CAAC,EAXgB,IAAI,GAAJ,cAAI,KAAJ,cAAI,QAWpB;IAEY,gBAAM,GAAG,cAAM,OAAA,CAAC;QACzB,SAAS,EAAE,iCAAe;QAC1B,IAAI,EAAE,iCAAe,CAAC,IAAI;KAC7B,CAAC,EAH0B,CAG1B,CAAC;IAEH,IAAM,OAAO,GACT,UAAC,MAAc;QACf,OAAA,UAAC,KAAwD;YACrD,MAAM,IAAI,+BAAc,uBACjB,KAAK,KACR,MAAM,EAAE,gBAAS,MAAM,CAAE,IAC3B,CAAC;QACP,CAAC;IALD,CAKC,CAAC;AACV,CAAC,EApHgB,SAAS,yBAAT,SAAS,QAoHzB"}
1
+ {"version":3,"file":"Namespace.js","sourceRoot":"","sources":["../../src/functional/Namespace.ts"],"names":[],"mappings":"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"}
package/lib/module.d.ts CHANGED
@@ -4,6 +4,7 @@ import { Resolved } from "./Resolved";
4
4
  export * as http from "./http";
5
5
  export * as json from "./json";
6
6
  export * as misc from "./misc";
7
+ export * as notations from "./notations";
7
8
  export * as protobuf from "./protobuf";
8
9
  export * as tags from "./tags";
9
10
  export * from "./schemas/json/IJsonApplication";
@@ -11,9 +12,12 @@ export * from "./schemas/json/IJsonComponents";
11
12
  export * from "./schemas/json/IJsonSchema";
12
13
  export * from "./IRandomGenerator";
13
14
  export * from "./IValidation";
15
+ export * from "./TypeGuardError";
14
16
  export * from "./Primitive";
15
17
  export * from "./Resolved";
16
- export * from "./TypeGuardError";
18
+ export * from "./CamelCase";
19
+ export * from "./PascalCase";
20
+ export * from "./SnakeCase";
17
21
  /**
18
22
  * Asserts a value type.
19
23
  *
package/lib/module.js CHANGED
@@ -26,11 +26,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
26
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.createRandom = exports.createValidateEquals = exports.createEquals = exports.createAssertEquals = exports.createValidate = exports.createIs = exports.createAssert = exports.metadata = exports.random = exports.validateEquals = exports.equals = exports.assertEquals = exports.validate = exports.is = exports.assert = exports.tags = exports.protobuf = exports.misc = exports.json = exports.http = void 0;
29
+ exports.createRandom = exports.createValidateEquals = exports.createEquals = exports.createAssertEquals = exports.createValidate = exports.createIs = exports.createAssert = exports.metadata = exports.random = exports.validateEquals = exports.equals = exports.assertEquals = exports.validate = exports.is = exports.assert = exports.tags = exports.protobuf = exports.notations = exports.misc = exports.json = exports.http = void 0;
30
30
  var Namespace_1 = require("./functional/Namespace");
31
31
  exports.http = __importStar(require("./http"));
32
32
  exports.json = __importStar(require("./json"));
33
33
  exports.misc = __importStar(require("./misc"));
34
+ exports.notations = __importStar(require("./notations"));
34
35
  exports.protobuf = __importStar(require("./protobuf"));
35
36
  exports.tags = __importStar(require("./tags"));
36
37
  __exportStar(require("./schemas/json/IJsonApplication"), exports);
@@ -38,9 +39,12 @@ __exportStar(require("./schemas/json/IJsonComponents"), exports);
38
39
  __exportStar(require("./schemas/json/IJsonSchema"), exports);
39
40
  __exportStar(require("./IRandomGenerator"), exports);
40
41
  __exportStar(require("./IValidation"), exports);
42
+ __exportStar(require("./TypeGuardError"), exports);
41
43
  __exportStar(require("./Primitive"), exports);
42
44
  __exportStar(require("./Resolved"), exports);
43
- __exportStar(require("./TypeGuardError"), exports);
45
+ __exportStar(require("./CamelCase"), exports);
46
+ __exportStar(require("./PascalCase"), exports);
47
+ __exportStar(require("./SnakeCase"), exports);
44
48
  function assert() {
45
49
  halt("assert");
46
50
  }
package/lib/module.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAmD;AAQnD,+CAA+B;AAC/B,+CAA+B;AAC/B,+CAA+B;AAC/B,uDAAuC;AACvC,+CAA+B;AAE/B,kEAAgD;AAChD,iEAA+C;AAC/C,6DAA2C;AAC3C,qDAAmC;AACnC,gDAA8B;AAC9B,8CAA4B;AAC5B,6CAA2B;AAC3B,mDAAiC;AAsDjC,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AACD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;AAqDlD,SAAgB,EAAE;IACd,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAFD,gBAEC;AACD,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,qBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAuD1C,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AACD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,qBAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;AA0D9C,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AACD,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,qBAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;AAuD9D,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AACD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAS,CAAC,EAAE,EAAE,CAAC,CAAC;AAyDtC,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AACD,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,qBAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;AA8CpD,SAAgB,MAAM;IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAFD,wBAEC;AACD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAS,CAAC,MAAM,EAAE,CAAC,CAAC;AAe1C,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AA6BD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AACD,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AA0BpC,SAAgB,QAAQ;IACpB,IAAI,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC;AAFD,4BAEC;AACD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AA0B5B,SAAgB,cAAc;IAC1B,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3B,CAAC;AAFD,wCAEC;AACD,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;AA0BxC,SAAgB,kBAAkB;IAC9B,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC/B,CAAC;AAFD,gDAEC;AACD,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;AA0BhD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AACD,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AA0BpC,SAAgB,oBAAoB;IAChC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjC,CAAC;AAFD,oDAEC;AACD,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;AA8BpD,SAAgB,YAAY;IACxB,IAAI,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC;AAFD,oCAEC;AACD,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAKpC,SAAS,IAAI,CAAC,IAAY;IACtB,MAAM,IAAI,KAAK,CACX,yBAAkB,IAAI,8FAA2F,CACpH,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}