typia 3.7.5-dev.20230413 → 3.7.6

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 (231) hide show
  1. package/README.md +35 -228
  2. package/lib/executable/TypiaSetupWizard.d.ts +1 -0
  3. package/lib/executable/TypiaSetupWizard.js +62 -30
  4. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  5. package/lib/executable/setup/PackageManager.d.ts +1 -1
  6. package/lib/executable/typia.d.ts +1 -1
  7. package/lib/executable/typia.js +1 -1
  8. package/lib/executable/typia.js.map +1 -1
  9. package/lib/factories/IdentifierFactory.d.ts +1 -1
  10. package/lib/factories/IdentifierFactory.js +1 -1
  11. package/lib/factories/IdentifierFactory.js.map +1 -1
  12. package/lib/factories/TypiaFileFactory.js +9 -4
  13. package/lib/factories/TypiaFileFactory.js.map +1 -1
  14. package/lib/programmers/internal/check_string_tags.js +2 -2
  15. package/lib/programmers/internal/check_string_tags.js.map +1 -1
  16. package/lib/programmers/internal/check_template.js +1 -1
  17. package/lib/programmers/internal/check_template.js.map +1 -1
  18. package/package.json +11 -12
  19. package/src/CustomValidatorMap.ts +126 -126
  20. package/src/IRandomGenerator.ts +33 -33
  21. package/src/IValidation.ts +21 -21
  22. package/src/Primitive.ts +104 -104
  23. package/src/TypeGuardError.ts +36 -36
  24. package/src/executable/TypiaGenerateWizard.ts +85 -85
  25. package/src/executable/TypiaSetupWizard.ts +47 -14
  26. package/src/executable/setup/ArgumentParser.ts +45 -45
  27. package/src/executable/setup/CommandExecutor.ts +8 -8
  28. package/src/executable/setup/FileRetriever.ts +22 -22
  29. package/src/executable/setup/PackageManager.ts +1 -1
  30. package/src/executable/setup/PluginConfigurator.ts +59 -59
  31. package/src/executable/typia.ts +54 -53
  32. package/src/factories/CommentFactory.ts +10 -10
  33. package/src/factories/ExpressionFactory.ts +77 -77
  34. package/src/factories/IdentifierFactory.ts +81 -59
  35. package/src/factories/LiteralFactory.ts +44 -44
  36. package/src/factories/MetadataCollection.ts +122 -122
  37. package/src/factories/MetadataFactory.ts +51 -51
  38. package/src/factories/MetadataTagFactory.ts +302 -302
  39. package/src/factories/StatementFactory.ts +60 -60
  40. package/src/factories/TemplateFactory.ts +56 -56
  41. package/src/factories/TypeFactory.ts +129 -129
  42. package/src/factories/TypiaFileFactory.ts +12 -3
  43. package/src/factories/ValueFactory.ts +12 -12
  44. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  45. package/src/factories/internal/metadata/emplace_metadata_object.ts +142 -142
  46. package/src/factories/internal/metadata/explore_metadata.ts +92 -92
  47. package/src/factories/internal/metadata/iterate_metadata.ts +80 -80
  48. package/src/factories/internal/metadata/iterate_metadata_array.ts +29 -29
  49. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  50. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  51. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -58
  52. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  53. package/src/factories/internal/metadata/iterate_metadata_native.ts +222 -222
  54. package/src/factories/internal/metadata/iterate_metadata_object.ts +48 -48
  55. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +27 -27
  56. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -33
  57. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -38
  58. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +45 -45
  59. package/src/factories/internal/metadata/iterate_metadata_union.ts +59 -59
  60. package/src/functional/$any.ts +3 -3
  61. package/src/functional/$dictionary.ts +20 -20
  62. package/src/functional/$every.ts +11 -11
  63. package/src/functional/$guard.ts +35 -35
  64. package/src/functional/$is_between.ts +7 -7
  65. package/src/functional/$is_custom.ts +14 -14
  66. package/src/functional/$is_date.ts +4 -4
  67. package/src/functional/$is_datetime.ts +3 -3
  68. package/src/functional/$is_email.ts +5 -5
  69. package/src/functional/$is_ipv4.ts +5 -5
  70. package/src/functional/$is_ipv6.ts +5 -5
  71. package/src/functional/$is_url.ts +5 -5
  72. package/src/functional/$is_uuid.ts +5 -5
  73. package/src/functional/$join.ts +50 -50
  74. package/src/functional/$number.ts +12 -12
  75. package/src/functional/$report.ts +15 -15
  76. package/src/functional/$rest.ts +3 -3
  77. package/src/functional/$string.ts +37 -37
  78. package/src/functional/$tail.ts +6 -6
  79. package/src/functional/Namespace.ts +127 -127
  80. package/src/index.ts +4 -4
  81. package/src/metadata/ICommentTag.ts +4 -4
  82. package/src/metadata/IJsDocTagInfo.ts +10 -10
  83. package/src/metadata/IMetadata.ts +25 -25
  84. package/src/metadata/IMetadataApplication.ts +7 -7
  85. package/src/metadata/IMetadataConstant.ts +16 -16
  86. package/src/metadata/IMetadataEntry.ts +6 -6
  87. package/src/metadata/IMetadataObject.ts +29 -29
  88. package/src/metadata/IMetadataProperty.ts +11 -11
  89. package/src/metadata/IMetadataTag.ts +105 -105
  90. package/src/metadata/Metadata.ts +534 -534
  91. package/src/metadata/MetadataConstant.ts +3 -3
  92. package/src/metadata/MetadataObject.ts +131 -131
  93. package/src/metadata/MetadataProperty.ts +64 -64
  94. package/src/module.ts +2043 -2043
  95. package/src/programmers/ApplicationProgrammer.ts +55 -55
  96. package/src/programmers/AssertCloneProgrammer.ts +70 -70
  97. package/src/programmers/AssertParseProgrammer.ts +65 -65
  98. package/src/programmers/AssertProgrammer.ts +284 -284
  99. package/src/programmers/AssertPruneProgrammer.ts +67 -67
  100. package/src/programmers/AssertStringifyProgrammer.ts +71 -71
  101. package/src/programmers/CheckerProgrammer.ts +922 -922
  102. package/src/programmers/CloneProgrammer.ts +388 -388
  103. package/src/programmers/FeatureProgrammer.ts +512 -512
  104. package/src/programmers/IsCloneProgrammer.ts +80 -80
  105. package/src/programmers/IsParseProgrammer.ts +74 -74
  106. package/src/programmers/IsProgrammer.ts +206 -206
  107. package/src/programmers/IsPruneProgrammer.ts +75 -75
  108. package/src/programmers/IsStringifyProgrammer.ts +81 -81
  109. package/src/programmers/LiteralsProgrammer.ts +65 -65
  110. package/src/programmers/PruneProgrammer.ts +343 -343
  111. package/src/programmers/RandomProgrammer.ts +413 -413
  112. package/src/programmers/StringifyProgrammer.ts +801 -801
  113. package/src/programmers/ValidateCloneProgrammer.ts +90 -90
  114. package/src/programmers/ValidateParseProgrammer.ts +69 -69
  115. package/src/programmers/ValidateProgrammer.ts +317 -317
  116. package/src/programmers/ValidatePruneProgrammer.ts +83 -83
  117. package/src/programmers/ValidateStringifyProgrammer.ts +89 -89
  118. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  119. package/src/programmers/helpers/CloneJoiner.ts +134 -134
  120. package/src/programmers/helpers/FunctionImporeter.ts +55 -55
  121. package/src/programmers/helpers/ICheckEntry.ts +12 -12
  122. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  123. package/src/programmers/helpers/OptionPredicator.ts +19 -19
  124. package/src/programmers/helpers/PruneJoiner.ts +52 -52
  125. package/src/programmers/helpers/RandomJoiner.ts +161 -161
  126. package/src/programmers/helpers/RandomRanger.ts +216 -216
  127. package/src/programmers/helpers/StringifyJoinder.ts +114 -114
  128. package/src/programmers/helpers/StringifyPredicator.ts +18 -18
  129. package/src/programmers/helpers/UnionExplorer.ts +281 -281
  130. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  131. package/src/programmers/internal/application_array.ts +37 -37
  132. package/src/programmers/internal/application_boolean.ts +17 -17
  133. package/src/programmers/internal/application_constant.ts +29 -29
  134. package/src/programmers/internal/application_default.ts +17 -17
  135. package/src/programmers/internal/application_default_string.ts +32 -32
  136. package/src/programmers/internal/application_native.ts +32 -32
  137. package/src/programmers/internal/application_number.ts +73 -73
  138. package/src/programmers/internal/application_object.ts +153 -153
  139. package/src/programmers/internal/application_schema.ts +184 -184
  140. package/src/programmers/internal/application_string.ts +45 -45
  141. package/src/programmers/internal/application_templates.ts +27 -27
  142. package/src/programmers/internal/application_tuple.ts +29 -29
  143. package/src/programmers/internal/check_array.ts +30 -30
  144. package/src/programmers/internal/check_array_length.ts +35 -35
  145. package/src/programmers/internal/check_bigint.ts +82 -82
  146. package/src/programmers/internal/check_custom.ts +33 -33
  147. package/src/programmers/internal/check_dynamic_properties.ts +197 -197
  148. package/src/programmers/internal/check_everything.ts +28 -28
  149. package/src/programmers/internal/check_native.ts +21 -21
  150. package/src/programmers/internal/check_number.ts +177 -177
  151. package/src/programmers/internal/check_object.ts +55 -55
  152. package/src/programmers/internal/check_string.ts +25 -25
  153. package/src/programmers/internal/check_string_tags.ts +9 -15
  154. package/src/programmers/internal/check_template.ts +6 -9
  155. package/src/programmers/internal/check_union_array_like.ts +272 -272
  156. package/src/programmers/internal/check_union_tuple.ts +35 -35
  157. package/src/programmers/internal/decode_union_object.ts +73 -73
  158. package/src/programmers/internal/feature_object_entries.ts +63 -63
  159. package/src/programmers/internal/get_comment_tags.ts +23 -23
  160. package/src/programmers/internal/metadata_to_pattern.ts +34 -34
  161. package/src/programmers/internal/prune_object_properties.ts +60 -60
  162. package/src/programmers/internal/random_custom.ts +30 -30
  163. package/src/programmers/internal/stringify_dynamic_properties.ts +168 -168
  164. package/src/programmers/internal/stringify_native.ts +8 -8
  165. package/src/programmers/internal/stringify_regular_properties.ts +84 -84
  166. package/src/programmers/internal/template_to_pattern.ts +15 -15
  167. package/src/schemas/IJsonApplication.ts +9 -9
  168. package/src/schemas/IJsonComponents.ts +26 -26
  169. package/src/schemas/IJsonSchema.ts +121 -121
  170. package/src/transform.ts +21 -21
  171. package/src/transformers/CallExpressionTransformer.ts +174 -174
  172. package/src/transformers/ExpressionWithArgumentTransformer.ts +66 -66
  173. package/src/transformers/FileTransformer.ts +49 -49
  174. package/src/transformers/IProject.ts +11 -11
  175. package/src/transformers/ITransformOptions.ts +62 -62
  176. package/src/transformers/ImportTransformer.ts +66 -66
  177. package/src/transformers/NodeTransformer.ts +19 -19
  178. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +119 -119
  179. package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +9 -9
  180. package/src/transformers/features/miscellaneous/AssertPruneTransformer.ts +9 -9
  181. package/src/transformers/features/miscellaneous/CloneTransformer.ts +9 -9
  182. package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +9 -9
  183. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +9 -9
  184. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +9 -9
  185. package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +9 -9
  186. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +9 -9
  187. package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +9 -9
  188. package/src/transformers/features/miscellaneous/CreateRandomTransformer.ts +41 -41
  189. package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +9 -9
  190. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +9 -9
  191. package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +9 -9
  192. package/src/transformers/features/miscellaneous/IsPruneTransformer.ts +9 -9
  193. package/src/transformers/features/miscellaneous/LiteralsTransformer.ts +30 -30
  194. package/src/transformers/features/miscellaneous/MetadataTransformer.ts +54 -54
  195. package/src/transformers/features/miscellaneous/PruneTransformer.ts +9 -9
  196. package/src/transformers/features/miscellaneous/RandomTransformer.ts +46 -46
  197. package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +9 -9
  198. package/src/transformers/features/miscellaneous/ValidatePruneTransformer.ts +9 -9
  199. package/src/transformers/features/parsers/AssertParseTransformer.ts +9 -9
  200. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +9 -9
  201. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +9 -9
  202. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +9 -9
  203. package/src/transformers/features/parsers/IsParseTransformer.ts +9 -9
  204. package/src/transformers/features/parsers/ValidateParseTransformer.ts +9 -9
  205. package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +10 -10
  206. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +9 -9
  207. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +9 -9
  208. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +9 -9
  209. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +11 -11
  210. package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +9 -9
  211. package/src/transformers/features/stringifiers/StringifyTransformer.ts +9 -9
  212. package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +10 -10
  213. package/src/transformers/features/validators/AssertTransformer.ts +11 -11
  214. package/src/transformers/features/validators/CreateAssertTransformer.ts +12 -12
  215. package/src/transformers/features/validators/CreateIsTransformer.ts +10 -10
  216. package/src/transformers/features/validators/CreateValidateTransformer.ts +12 -12
  217. package/src/transformers/features/validators/IsTransformer.ts +10 -10
  218. package/src/transformers/features/validators/ValidateTransformer.ts +11 -11
  219. package/src/transformers/internal/GenericTransformer.ts +99 -99
  220. package/src/typings/Atomic.ts +17 -17
  221. package/src/typings/ClassProperties.ts +5 -5
  222. package/src/typings/Customizable.ts +5 -5
  223. package/src/typings/OmitNever.ts +3 -3
  224. package/src/typings/SpecialFields.ts +3 -3
  225. package/src/typings/Writable.ts +11 -11
  226. package/src/utils/ArrayUtil.ts +49 -49
  227. package/src/utils/Escaper.ts +50 -50
  228. package/src/utils/MapUtil.ts +14 -14
  229. package/src/utils/PatternUtil.ts +30 -30
  230. package/src/utils/RandomGenerator.ts +96 -96
  231. package/src/utils/Singleton.ts +17 -17
package/README.md CHANGED
@@ -1,9 +1,11 @@
1
1
  # Typia
2
+ ![Typia Logo](https://typia.io/logo.png)
3
+
2
4
  [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/samchon/typia/blob/master/LICENSE)
3
5
  [![npm version](https://img.shields.io/npm/v/typia.svg)](https://www.npmjs.com/package/typia)
4
6
  [![Downloads](https://img.shields.io/npm/dm/typia.svg)](https://www.npmjs.com/package/typia)
5
7
  [![Build Status](https://github.com/samchon/typia/workflows/build/badge.svg)](https://github.com/samchon/typia/actions?query=workflow%3Abuild)
6
- [![Guide Documents](https://img.shields.io/badge/wiki-documentation-forestgreen)](https://github.com/samchon/typia/wiki)
8
+ [![Guide Documents](https://img.shields.io/badge/wiki-documentation-forestgreen)](https://typia.io/docs/)
7
9
 
8
10
  ```typescript
9
11
  // RUNTIME VALIDATORS
@@ -21,247 +23,52 @@ export function assertStringify<T>(input: T): string; // safe and faster
21
23
 
22
24
  // MISC
23
25
  export function random<T>(g?: Partial<IRandomGenerator>): Primitive<T>;
24
- export function literals<T extends Atomic.Type>(): T[];
25
- export function clone<T>(input: T): Primitive<T>; // deep clone
26
- export function prune<T extends object>(input: T): void; // erase extra props
27
- // +) isClone, assertClone, validateClone
28
- // +) isPrune, assertPrune, validatePrune
29
26
  ```
30
27
 
31
- `typia` is a transformer library of TypeScript, supporting below features:
28
+ Typia is a transformer library supporting below features:
32
29
 
33
30
  - Super-fast Runtime Validators
34
31
  - Safe JSON parse and fast stringify functions
35
32
  - JSON schema generator
36
33
  - Random data generator
37
34
 
38
- All functions in `typia` require **only one line**. You don't need any extra dedication like JSON schema definitions or decorator function calls. Just call `typia` function with only one line like `typia.assert<T>(input)`.
39
-
40
- Also, as `typia` performs AOT (Ahead of Time) compilation skill, its performance is much faster than other competitive libaries. For an example, when comparing validate function `is()` with other competitive libraries, `typia` is maximum **20,000x faster** than `class-validator`.
41
-
42
- ![Is Function Benchmark](https://github.com/samchon/typia/raw/master/benchmark/results/11th%20Gen%20Intel(R)%20Core(TM)%20i5-1135G7%20%40%202.40GHz/images/is.svg)
43
-
44
- > Measured on [Intel i5-1135g7, Surface Pro 8](https://github.com/samchon/typia/tree/master/benchmark/results/11th%20Gen%20Intel(R)%20Core(TM)%20i5-1135G7%20%40%202.40GHz#is)
45
-
35
+ > **Note**
36
+ >
37
+ > - **Only one line** required, with pure TypeScript type
38
+ > - Runtime validator is **20,000x faster** than `class-validator`
39
+ > - JSON serialization is **200x faster** than `class-transformer`
46
40
 
47
41
 
48
42
 
49
- ## Sponsors and Backers
43
+ ## Sponsors
50
44
  Thanks for your support.
51
45
 
52
46
  Your donation would encourage `typia` development.
53
47
 
54
48
  [![Sponsers](https://opencollective.com/typia/badge.svg?avatarHeight=75&width=600)](https://opencollective.com/typia)
55
49
 
56
-
57
-
58
-
59
- ## Setup
60
- ### Transformation
61
- ```bash
62
- npm install --save typia
63
- npx typia setup
64
- ```
65
-
66
- AOT (Ahead of Time) compilation mode.
67
-
68
- When you write a TypeScript code calling `typia.createIs<string | null>()` function and compile it, `typia` will write optimal validation code like below, for the `string | null` type. This is the transform mode performing AOT (Ahead of Time) compilation.
69
-
70
- ```typescript
71
- // TYPESCRIPT CODE
72
- import typia from "typia";
73
- export const check = typia.createIs<string | null>();
74
-
75
- // COMPILED JAVASCRIPT CODE
76
- export const check = (input) => "string" === typeof input || null === input;
77
- ```
78
-
79
- ### Generation
80
- ```bash
81
- # INSTALL TYPIA
82
- npm install --save typia
83
- npm install --save-dev typescript
84
-
85
- # GENERATE TRANSFORMED TYPESCRIPT CODES
86
- npx typia generate \
87
- --input src/templates \
88
- --output src/generated \
89
- --project tsconfig.json
90
- ```
91
-
92
- For frontend projects.
93
-
94
- If you're using non-standard TypeScript compiler, you can't use [transform mode](#transformation).
95
-
96
- - Non-standard TypeScript compilers:
97
- - [swc](https://swc.rs/) in Next.JS
98
- - [esbuild](https://esbuild.github.io/) in Vite
99
- - [babel](https://babeljs.io/) in Create-React-App
100
-
101
- Instead, you should utilize the generation mode.
102
-
103
- Install `typia` through `npm install` command and run `typia generate` command. Then, generator of `typia` reads your TypeScript code of `--input`, and writes transformed TypeScript code into the `--output` directory, like below.
104
-
105
- ```typescript
106
- //--------
107
- // src/templates/check.ts
108
- //--------
109
- import typia from "typia";
110
- export const check = typia.createIs<string | null>();
111
-
112
- //--------
113
- // src/generated/check.ts
114
- //--------
115
- import typia from "typia";
116
- export const check =
117
- (input: unknown): input is string | null
118
- => "string" === typeof input || null === input;
119
- ```
120
-
121
-
122
-
123
-
124
- ## Features
125
- [![Guide Documents](https://img.shields.io/badge/wiki-documentation-forestgreen)](https://github.com/samchon/typia/wiki)
126
-
127
- In here README documents, only summarized informations are provided.
128
-
129
- For more details, refer to the [Guide Documents (wiki)](https://github.com/samchon/typia/wiki).
130
-
131
- > - **Runtime Validators**
132
- > - [powerful validator](https://github.com/samchon/typia/wiki/Runtime-Validators#powerful-validator)
133
- > - [`is()` function](https://github.com/samchon/typia/wiki/Runtime-Validators#is-function)
134
- > - [`assert()` function](https://github.com/samchon/typia/wiki/Runtime-Validators#assert-function)
135
- > - [`validate()` function](https://github.com/samchon/typia/wiki/Runtime-Validators#validate-function)
136
- > - [strict validators](https://github.com/samchon/typia/wiki/Runtime-Validators#strict-validators)
137
- > - [factory functions](https://github.com/samchon/typia/wiki/Runtime-Validators#factory-functions)
138
- > - [comment tags](https://github.com/samchon/typia/wiki/Runtime-Validators#comment-tags)
139
- > - [custom validators](https://github.com/samchon/typia/wiki/Runtime-Validators#custom-validators)
140
- > - **Enhanced JSON**
141
- > - [`stringify()` functions](https://github.com/samchon/typia/wiki/Enhanced-JSON#stringify-functions)
142
- > - [`parse()` functions](https://github.com/samchon/typia/wiki/Enhanced-JSON#parse-functions)
143
- > - [JSON schema](https://github.com/samchon/typia/wiki/Enhanced-JSON#json-schema)
144
- > - [comment tags](https://github.com/samchon/typia/wiki/Enhanced-JSON#comment-tags)
145
- > - **Random Generator**
146
- > - [`random()` function](https://github.com/samchon/typia/wiki/Random-Generator#random-function)
147
- > - [comment tags](https://github.com/samchon/typia/wiki/Random-Geneerator#comment-tags)
148
- > - [customization](https://github.com/samchon/typia/wiki/Random-Generator#customization)
149
-
150
- ### Runtime Validators
151
- ```typescript
152
- // ALLOW SUPERFLUOUS PROPERTIES
153
- export function is<T>(input: unknown): input is T; // returns boolean
154
- export function assert<T>(input: unknown): T; // throws `TypeGuardError`
155
- export function validate<T>(input: unknown): IValidation<T>; // detailed
156
-
157
- // DO NOT ALLOW SUPERFLUOUS PROPERTIES
158
- export function equals<T>(input: unknown): input is T;
159
- export function assertEquals<T>(input: unknown): T;
160
- export function validateEquals<T>(input: unknown): IValidation<T>;
161
-
162
- // REUSABLE FACTORY FUNCTIONS
163
- export function createIs<T>(): (input: unknown) => input is T;
164
- export function createAssert<T>(): (input: unknown) => T;
165
- export function createValidate<T>(): (input: unknown) => IValidation<T>;
166
- export function createEquals<T>(): (input: unknown) => input is T;
167
- export function createAssertEquals<T>(): (input: unknown) => T;
168
- export function createValidateEquals<T>(): (input: unknown) => IValidation<T>;
169
-
170
- // YOU CAN ADD CUSTOM VALIDATORS
171
- export const customValidators: CustomValidatorMap;
172
- ```
173
-
174
- `typia` supports three type of validator functions:
175
-
176
- - `is()`: returns `false` if not matched with the type `T`
177
- - `assert()`: throws a [`TypeGuardError`](https://github.com/samchon/typia/blob/master/src/TypeGuardError.ts) when not matched
178
- - `validate()`
179
- - when matched, returns [`IValidation.ISuccess<T>`](https://github.com/samchon/typia/blob/master/src/IValidation.ts) with `value` property
180
- - otherwise not matched, returns [`IValidation.IFailure`](https://github.com/samchon/typia/blob/master/src/IValidation.ts) with `errors` property
181
-
182
- Also, if you want more strict validator functions that even do not allowing superfluous properties not written in the type `T`, you can use those functions instead; `equals()`, `assertEquals()`, `validateEquals()`. Otherwise you want to create resuable validator functions, you can utilize factory functions like `createIs()` instead.
183
-
184
- When you want to add special validation logics, like limiting range of numeric values, you can do it through comment tags. Furthermore, you can add your custom validator logics. If you want to know about them, visit the Guide Documents:
185
-
186
- - [Features > Runtime Validators > Comment Tags](https://github.com/samchon/typia/wiki/Runtime-Validators#comment-tags)
187
- - [Features > Runtime Validators > Custom Validators](https://github.com/samchon/typia/wiki/Runtime-Validators#custom-validators).
188
-
189
- ### Enhanced JSON
190
- ```typescript
191
- // JSON SCHEMA GENERATOR
192
- export function application<
193
- Types extends unknown[],
194
- Purpose extends "swagger" | "ajv" = "swagger",
195
- Prefix extends string = Purpose extends "swagger"
196
- ? "#/components/schemas"
197
- : "components#/schemas",
198
- >(): IJsonApplication;
199
-
200
- // SAFE PARSER FUNCTIONS
201
- export function isParse<T>(input: string): T | null;
202
- export function assertParse<T>(input: string): T;
203
- export function validateParse<T>(input: string): IValidation<T>;
204
-
205
- // FASTER STRINGIFY FUNCTIONS
206
- export function stringify<T>(input: T): string; // unsafe
207
- export function isStringify<T>(input: T): string | null; // safe
208
- export function assertStringify<T>(input: T): string;
209
- export function validateStringify<T>(input: T): IValidation<string>;
210
-
211
- // FACTORY FUNCTIONS
212
- export function createAssertParse<T>(): (input: string) => T;
213
- export function createAssertStringify<T>(): (input: T) => string;
214
- // +) createIsParse, createValidateParse
215
- // +) createStringify, createIsStringify, createValidateStringify
216
- ```
217
-
218
- `typia` supports enhanced JSON functions.
219
-
220
- - `application()`: generate JSON schema with only one line
221
- - you can complement JSON schema contents through [comment tags](https://github.com/samchon/typia/wiki/Enhanced-JSON#comment-tags)
222
- - `assertParse()`: parse JSON string safely with type validation
223
- - `isStringify()`: maximum 160x faster JSON stringify fuction even type safe
224
-
225
- ![JSON string conversion speed](https://raw.githubusercontent.com/samchon/typia/master/benchmark/results/AMD%20Ryzen%207%206800HS%20with%20Radeon%20Graphics/images/stringify.svg)
226
-
227
- > Measured on [AMD R7 6800HS](https://github.com/samchon/typia/tree/master/benchmark/results/AMD%20Ryzen%207%206800HS%20with%20Radeon%20Graphics)
228
-
229
- ### Miscellaneous
230
- ```typescript
231
- export function random<T>(g?: Partial<IRandomGenerator>): Primitive<T>;
232
- export function literals<T extends Atomic.Type>(): T[];
233
- export function clone<T>(input: T): Primitive<T>; // deep copy
234
- export function prune<T>(input: T): void; // remove superfluous properties
235
- // +) isClone, assertClone, validateClone
236
- // +) isPrune, assertPrune, validatePrune
237
- ```
238
-
239
- When you need random data, just call only `typia.random<T>()` function.
240
-
241
- If you need specific random data generation, utilize comment tags or do customize.
242
-
243
- - [Features > Random Generator > comment tags](https://github.com/samchon/typia/wiki/Random-Generator#random-function)
244
- - [Features > Random Generator > customization](https://github.com/samchon/typia/wiki/Random-Generator#customization)
245
-
246
-
247
-
248
- ## Appendix
249
- ### Nestia
250
- [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/samchon/nestia/blob/master/LICENSE)
251
- [![npm version](https://img.shields.io/npm/v/@nestia/core.svg)](https://www.npmjs.com/package/@nestia/core)
252
- [![Downloads](https://img.shields.io/npm/dm/@nestia/core.svg)](https://www.npmjs.com/package/@nestia/core)
253
- [![Build Status](https://github.com/samchon/typia/workflows/build/badge.svg)](https://github.com/samchon/nestia/actions?query=workflow%3Abuild)
254
- [![Guide Documents](https://img.shields.io/badge/wiki-documentation-forestgreen)](https://github.com/samchon/nestia/wiki)
255
-
256
- [Nestia](https://github.com/samchon/nestia) is a set of helper libraries for `NestJS`, supporting below features:
257
-
258
- - `@nestia/core`: superfast decorators using `typia`
259
- - **20,000x faster** validation
260
- - **200x faster** JSON serialization
261
- - `@nestia/sdk`: evolved **SDK** and **Swagger** generators
262
- - SDK (Software Development Kit)
263
- - interaction library for client developers
264
- - almost same with [tRPC](https://github.com/trpc/trpc)
265
- - `nestia`: just CLI (command line interface) tool
266
-
267
- ![nestia-sdk-demo](https://user-images.githubusercontent.com/13158709/215004990-368c589d-7101-404e-b81b-fbc936382f05.gif)
50
+ ## Guide Documents
51
+ Check out the document in the [website](https://typia.io/docs/):
52
+
53
+ ### 🙋🏻‍♂️ Home
54
+ - [Introduction](https://typia.io/docs/)
55
+ - [Setup](https://typia.io/docs/setup/)
56
+
57
+ ### 📖 Features
58
+ - Runtime Validators
59
+ - [`is()` function](https://typia.io/docs/validators/is/)
60
+ - [`assert()` function](https://typia.io/docs/validators/assert/)
61
+ - [`validate()` function](https://typia.io/docs/validators/validate/)
62
+ - [Comment Tags](https://typia.io/docs/validators/comment-tags/)
63
+ - Enhanced JSON
64
+ - [`stringify()` functions](https://typia.io/docs/json/stringify/)
65
+ - [`parse()` functions](https://typia.io/docs/json/parse/)
66
+ - [JSON Schema](https://typia.io/docs/json/schema)
67
+ - [Random Generator](https://typia.io/docs/random/)
68
+
69
+ ### 🔗 Appendix
70
+ - Utillization Cases
71
+ - [NestJS](https://typia.io/docs/utilization/nestjs/)
72
+ - [tRPC](https://typia.io/docs/utilization/trpc/)
73
+ - [⇲ Benchmark Result](https://github.com/samchon/typia/tree/master/benchmark/results/11th%20Gen%20Intel(R)%20Core(TM)%20i5-1135G7%20%40%202.40GHz)
74
+ - [⇲ `dev.to` Articles](https://dev.to/samchon/series/22474)
@@ -1,5 +1,6 @@
1
1
  export declare namespace TypiaSetupWizard {
2
2
  interface IArguments {
3
+ compiler: "ts-patch" | "ttypescript";
3
4
  manager: "npm" | "pnpm" | "yarn";
4
5
  project: string | null;
5
6
  }
@@ -41,6 +41,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.TypiaSetupWizard = void 0;
43
43
  var fs_1 = __importDefault(require("fs"));
44
+ var path_1 = __importDefault(require("path"));
44
45
  var ArgumentParser_1 = require("./setup/ArgumentParser");
45
46
  var CommandExecutor_1 = require("./setup/CommandExecutor");
46
47
  var PackageManager_1 = require("./setup/PackageManager");
@@ -64,28 +65,32 @@ var TypiaSetupWizard;
64
65
  return [4, ArgumentParser_1.ArgumentParser.parse(pack)(inquiry)];
65
66
  case 2:
66
67
  args = _b.sent();
67
- pack.install({ dev: true, modulo: "typescript" });
68
+ pack.install({ dev: true, modulo: "typescript", version: "4.9.5" });
68
69
  (_a = args.project) !== null && _a !== void 0 ? _a : (args.project = (function () {
69
70
  CommandExecutor_1.CommandExecutor.run("npx tsc --init");
70
71
  return (args.project = "tsconfig.json");
71
72
  })());
72
- pack.install({ dev: true, modulo: "ts-node" });
73
- pack.install({ dev: true, modulo: "ts-patch" });
73
+ pack.install({ dev: true, modulo: "ts-node", version: "latest" });
74
+ pack.install({ dev: true, modulo: args.compiler, version: "latest" });
75
+ if (!(args.compiler === "ts-patch")) return [3, 4];
74
76
  return [4, pack.save(function (data) {
75
77
  var _a;
76
78
  (_a = data.scripts) !== null && _a !== void 0 ? _a : (data.scripts = {});
77
79
  if (typeof data.scripts.prepare === "string" &&
78
- data.scripts.prepare.indexOf("ts-patch install") === -1)
79
- data.scripts.prepare =
80
- "ts-patch install && " + data.scripts.prepare;
80
+ data.scripts.prepare.length) {
81
+ if (data.scripts.prepare.indexOf("ts-patch install") === -1)
82
+ data.scripts.prepare =
83
+ "ts-patch install && " + data.scripts.prepare;
84
+ }
81
85
  else
82
86
  data.scripts.prepare = "ts-patch install";
83
87
  })];
84
88
  case 3:
85
89
  _b.sent();
86
90
  CommandExecutor_1.CommandExecutor.run("npm run prepare");
87
- return [4, PluginConfigurator_1.PluginConfigurator.configure(args)];
88
- case 4:
91
+ _b.label = 4;
92
+ case 4: return [4, PluginConfigurator_1.PluginConfigurator.configure(args)];
93
+ case 5:
89
94
  _b.sent();
90
95
  return [2];
91
96
  }
@@ -97,6 +102,7 @@ var TypiaSetupWizard;
97
102
  var questioned, select, configure;
98
103
  var _this = this;
99
104
  return __generator(this, function (_a) {
105
+ command.option("--compiler [compiler]", "compiler type");
100
106
  command.option("--manager [manager", "package manager");
101
107
  command.option("--project [project]", "tsconfig.json file location");
102
108
  questioned = { value: false };
@@ -152,38 +158,48 @@ var TypiaSetupWizard;
152
158
  });
153
159
  }); };
154
160
  return [2, action(function (options) { return __awaiter(_this, void 0, void 0, function () {
155
- var _a, _b, _c, _d;
156
- var _e, _f;
157
- return __generator(this, function (_g) {
158
- switch (_g.label) {
161
+ var _a, _b, _c, _d, _e;
162
+ var _f, _g;
163
+ return __generator(this, function (_h) {
164
+ switch (_h.label) {
159
165
  case 0:
160
- if (!((_e = options.manager) !== null && _e !== void 0)) return [3, 1];
161
- _a = _e;
162
- return [3, 3];
166
+ if (!(options.compiler === undefined)) return [3, 2];
167
+ console.log(COMPILER_DESCRIPTION);
168
+ _a = options;
169
+ return [4, select("compiler")("Compiler")(is_nest_cli(pack)
170
+ ? ["ts-patch", "ttypescript"]
171
+ : ["ttypescript", "ts-patch"])];
163
172
  case 1:
164
- _b = options;
173
+ _a.compiler = _h.sent();
174
+ _h.label = 2;
175
+ case 2:
176
+ if (!((_f = options.manager) !== null && _f !== void 0)) return [3, 3];
177
+ _b = _f;
178
+ return [3, 5];
179
+ case 3:
180
+ _c = options;
165
181
  return [4, select("manager")("Package Manager")([
166
182
  "npm",
167
183
  "pnpm",
168
184
  "yarn",
169
185
  ])];
170
- case 2:
171
- _a = (_b.manager = _g.sent());
172
- _g.label = 3;
173
- case 3:
174
- _a;
175
- pack.manager = options.manager;
176
- if (!((_f = options.project) !== null && _f !== void 0)) return [3, 4];
177
- _c = _f;
178
- return [3, 6];
179
186
  case 4:
180
- _d = options;
181
- return [4, configure()];
187
+ _b = (_c.manager = _h.sent());
188
+ _h.label = 5;
182
189
  case 5:
183
- _c = (_d.project = _g.sent());
184
- _g.label = 6;
190
+ _b;
191
+ pack.manager = options.manager;
192
+ if (!((_g = options.project) !== null && _g !== void 0)) return [3, 6];
193
+ _d = _g;
194
+ return [3, 8];
185
195
  case 6:
186
- _c;
196
+ _e = options;
197
+ return [4, configure()];
198
+ case 7:
199
+ _d = (_e.project = _h.sent());
200
+ _h.label = 8;
201
+ case 8:
202
+ _d;
187
203
  if (questioned.value)
188
204
  console.log("");
189
205
  return [2, options];
@@ -192,5 +208,21 @@ var TypiaSetupWizard;
192
208
  }); })];
193
209
  });
194
210
  }); };
211
+ function is_nest_cli(pack) {
212
+ var _a;
213
+ return ((typeof ((_a = pack.data.scripts) === null || _a === void 0 ? void 0 : _a.build) === "string" &&
214
+ pack.data.scripts.build.indexOf("nest build") !== -1) ||
215
+ fs_1.default.existsSync(path_1.default.join(pack.directory, "nest-cli.json")));
216
+ }
195
217
  })(TypiaSetupWizard = exports.TypiaSetupWizard || (exports.TypiaSetupWizard = {}));
218
+ var COMPILER_DESCRIPTION = [
219
+ "About compiler, if you adapt \"ttypescript\", you should use \"ttsc\" instead.",
220
+ "",
221
+ "Otherwise, you choose \"ts-patch\", you can use the original \"tsc\" command.",
222
+ "However, the \"ts-patch\" hacks \"node_modules/typescript\" source code.",
223
+ "Also, whenever update \"typescript\", you've to run \"npm run prepare\" command.",
224
+ "",
225
+ "By the way, when using \"@nest/cli\", you must just choose \"ts-patch\".",
226
+ "",
227
+ ].join("\n");
196
228
  //# sourceMappingURL=TypiaSetupWizard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypiaSetupWizard.js","sourceRoot":"","sources":["../../src/executable/TypiaSetupWizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypiaSetupWizard.js","sourceRoot":"","sources":["../../src/executable/TypiaSetupWizard.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export declare class PackageManager {
8
8
  install(props: {
9
9
  dev: boolean;
10
10
  modulo: string;
11
- version?: string;
11
+ version: `latest` | `${number}.${number}.${number}`;
12
12
  }): boolean;
13
13
  private constructor();
14
14
  private static load;
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- declare const USAGE = "Wrong command has been detected. Use like below:\n\n npx typia setup \\\n --manager (npm|pnpm|yarn) \\\n --project {tsconfig.json file path}\n\n - npx typia setup\n - npx typia setup --compiler ts-patch\n - npx typia setup --manager pnpm\n - npx typia setup --project tsconfig.test.json\n\n npx typia generate \n --input {directory} \\\n --output {directory}\n\n --npx typia generate --input src/templates --output src/functinoal\n";
2
+ declare const USAGE = "Wrong command has been detected. Use like below:\n\n npx typia setup \\\n --compiler (ttypescript|ts-patch) \\\n --manager (npm|pnpm|yarn) \\\n --project {tsconfig.json file path}\n\n - npx typia setup\n - npx typia setup --compiler ts-patch\n - npx typia setup --manager pnpm\n - npx typia setup --project tsconfig.test.json\n\n npx typia generate \n --input {directory} \\\n --output {directory}\n\n --npx typia generate --input src/templates --output src/functinoal\n";
3
3
  declare function halt(desc: string): never;
4
4
  declare function main(): Promise<void>;
@@ -59,7 +59,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
59
59
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
60
60
  }
61
61
  };
62
- var USAGE = "Wrong command has been detected. Use like below:\n\n npx typia setup \\\n --manager (npm|pnpm|yarn) \\\n --project {tsconfig.json file path}\n\n - npx typia setup\n - npx typia setup --compiler ts-patch\n - npx typia setup --manager pnpm\n - npx typia setup --project tsconfig.test.json\n\n npx typia generate \n --input {directory} \\\n --output {directory}\n\n --npx typia generate --input src/templates --output src/functinoal\n";
62
+ var USAGE = "Wrong command has been detected. Use like below:\n\n npx typia setup \\\n --compiler (ttypescript|ts-patch) \\\n --manager (npm|pnpm|yarn) \\\n --project {tsconfig.json file path}\n\n - npx typia setup\n - npx typia setup --compiler ts-patch\n - npx typia setup --manager pnpm\n - npx typia setup --project tsconfig.test.json\n\n npx typia generate \n --input {directory} \\\n --output {directory}\n\n --npx typia generate --input src/templates --output src/functinoal\n";
63
63
  function halt(desc) {
64
64
  console.error(desc);
65
65
  process.exit(-1);
@@ -1 +1 @@
1
- {"version":3,"file":"typia.js","sourceRoot":"","sources":["../../src/executable/typia.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAM,KAAK,GAAG,8cAgBb,CAAC;AAEF,SAAS,IAAI,CAAC,IAAY;IACtB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,SAAe,IAAI;;;;;;;oBAEX,4EAAa,cAAc,QAAC;;oBAA5B,SAA4B,CAAC;oBAC7B,4EAAa,UAAU,QAAC;;oBAAxB,SAAwB,CAAC;oBACzB,4EAAa,WAAW,QAAC;;oBAAzB,SAAyB,CAAC;;;;oBAE1B,IAAI,CAAC,2DAAyD,CAAC,CAAC;;;oBAG9D,IAAI,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBAC7C,CAAA,IAAI,KAAK,OAAO,CAAA,EAAhB,cAAgB;oBACa,4EAAa,oBAAoB,QAAC;;oBAAvD,gBAAgB,GAAK,CAAA,SAAkC,CAAA,iBAAvC;oBACxB,WAAM,gBAAgB,CAAC,KAAK,EAAE,EAAA;;oBAA9B,SAA8B,CAAC;;;yBACxB,CAAA,IAAI,KAAK,UAAU,CAAA,EAAnB,eAAmB;;;;oBAEtB,4EAAa,YAAY,QAAC;;oBAA1B,SAA0B,CAAC;;;;oBAE3B,IAAI,CACA,wEAAsE,CACzE,CAAC;;yBAE0B,4EAAa,uBAAuB,QAAC;;oBAA7D,mBAAmB,GAAK,CAAA,SAAqC,CAAA,oBAA1C;oBAC3B,WAAM,mBAAmB,CAAC,QAAQ,EAAE,EAAA;;oBAApC,SAAoC,CAAC;;;oBAClC,IAAI,CAAC,KAAK,CAAC,CAAC;;;;;;CACtB;AACD,IAAI,EAAE,CAAC,KAAK,CAAC,UAAC,GAAG;IACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"typia.js","sourceRoot":"","sources":["../../src/executable/typia.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAM,KAAK,GAAG,wfAiBb,CAAC;AAEF,SAAS,IAAI,CAAC,IAAY;IACtB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,SAAe,IAAI;;;;;;;oBAEX,4EAAa,cAAc,QAAC;;oBAA5B,SAA4B,CAAC;oBAC7B,4EAAa,UAAU,QAAC;;oBAAxB,SAAwB,CAAC;oBACzB,4EAAa,WAAW,QAAC;;oBAAzB,SAAyB,CAAC;;;;oBAE1B,IAAI,CAAC,2DAAyD,CAAC,CAAC;;;oBAG9D,IAAI,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBAC7C,CAAA,IAAI,KAAK,OAAO,CAAA,EAAhB,cAAgB;oBACa,4EAAa,oBAAoB,QAAC;;oBAAvD,gBAAgB,GAAK,CAAA,SAAkC,CAAA,iBAAvC;oBACxB,WAAM,gBAAgB,CAAC,KAAK,EAAE,EAAA;;oBAA9B,SAA8B,CAAC;;;yBACxB,CAAA,IAAI,KAAK,UAAU,CAAA,EAAnB,eAAmB;;;;oBAEtB,4EAAa,YAAY,QAAC;;oBAA1B,SAA0B,CAAC;;;;oBAE3B,IAAI,CACA,wEAAsE,CACzE,CAAC;;yBAE0B,4EAAa,uBAAuB,QAAC;;oBAA7D,mBAAmB,GAAK,CAAA,SAAqC,CAAA,oBAA1C;oBAC3B,WAAM,mBAAmB,CAAC,QAAQ,EAAE,EAAA;;oBAApC,SAAoC,CAAC;;;oBAClC,IAAI,CAAC,KAAK,CAAC,CAAC;;;;;;CACtB;AACD,IAAI,EAAE,CAAC,KAAK,CAAC,UAAC,GAAG;IACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC"}
@@ -3,5 +3,5 @@ export declare namespace IdentifierFactory {
3
3
  function generate(name: string): ts.Identifier | ts.StringLiteral;
4
4
  function join(prefix: ts.Expression, name: string): ts.ElementAccessExpression | ts.PropertyAccessExpression;
5
5
  function postfix(str: string): string;
6
- function parameter(name: string | ts.BindingName, type?: ts.TypeNode, init?: ts.Expression | ts.PunctuationToken<ts.SyntaxKind.QuestionToken>): any;
6
+ function parameter(name: string | ts.BindingName, type?: ts.TypeNode, init?: ts.Expression | ts.PunctuationToken<ts.SyntaxKind.QuestionToken>): ts.ParameterDeclaration;
7
7
  }
@@ -28,7 +28,7 @@ var IdentifierFactory;
28
28
  }
29
29
  IdentifierFactory.postfix = postfix;
30
30
  function parameter(name, type, init) {
31
- if (typescript_1.default.getDecorators !== undefined)
31
+ if (typescript_1.default.version >= "4.8")
32
32
  return typescript_1.default.factory.createParameterDeclaration(undefined, undefined, name, (init === null || init === void 0 ? void 0 : init.kind) === typescript_1.default.SyntaxKind.QuestionToken
33
33
  ? typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.QuestionToken)
34
34
  : undefined, type, init && init.kind !== typescript_1.default.SyntaxKind.QuestionToken
@@ -1 +1 @@
1
- {"version":3,"file":"IdentifierFactory.js","sourceRoot":"","sources":["../../src/factories/IdentifierFactory.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,4CAA2C;AAE3C,IAAiB,iBAAiB,CAsDjC;AAtDD,WAAiB,iBAAiB;IAC9B,SAAgB,QAAQ,CAAC,IAAY;QACjC,OAAO,iBAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACnC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAJe,0BAAQ,WAIvB,CAAA;IAED,SAAgB,IAAI,CAAC,MAAqB,EAAE,IAAY;QACpD,IAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,oBAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YAC9B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,MAAM,EAAE,OAAO,CAAC;YAC3D,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IALe,sBAAI,OAKnB,CAAA;IAED,SAAgB,OAAO,CAAC,GAAW;QAC/B,OAAO,iBAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;YACxB,CAAC,CAAC,aAAK,GAAG,OAAG;YACb,CAAC,CAAC,aAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAI,CAAC;IAC9D,CAAC;IAJe,yBAAO,UAItB,CAAA;IAED,SAAgB,SAAS,CACrB,IAA6B,EAC7B,IAAkB,EAClB,IAAuE;QAGvE,IAAI,oBAAE,CAAC,aAAa,KAAK,SAAS;YAC9B,OAAO,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACxC,SAAS,EACT,SAAS,EACT,IAAI,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;gBACtC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;gBACrD,CAAC,CAAC,SAAS,EACf,IAAI,EACJ,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;gBAC7C,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,SAAS,CAClB,CAAC;QAEN,OAAQ,oBAAE,CAAC,OAAO,CAAC,0BAAkC,CACjD,SAAS,EACT,SAAS,EACT,SAAS,EACT,IAAI,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;YACtC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;YACrD,CAAC,CAAC,SAAS,EACf,IAAI,EACJ,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;YAC7C,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,SAAS,CAClB,CAAC;IACN,CAAC;IAjCe,2BAAS,YAiCxB,CAAA;AACL,CAAC,EAtDgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAsDjC"}
1
+ {"version":3,"file":"IdentifierFactory.js","sourceRoot":"","sources":["../../src/factories/IdentifierFactory.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,4CAA2C;AAE3C,IAAiB,iBAAiB,CA4EjC;AA5ED,WAAiB,iBAAiB;IAC9B,SAAgB,QAAQ,CAAC,IAAY;QACjC,OAAO,iBAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACnC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAJe,0BAAQ,WAIvB,CAAA;IAED,SAAgB,IAAI,CAAC,MAAqB,EAAE,IAAY;QACpD,IAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,oBAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YAC9B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,MAAM,EAAE,OAAO,CAAC;YAC3D,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IALe,sBAAI,OAKnB,CAAA;IAED,SAAgB,OAAO,CAAC,GAAW;QAC/B,OAAO,iBAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;YACxB,CAAC,CAAC,aAAK,GAAG,OAAG;YACb,CAAC,CAAC,aAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAI,CAAC;IAC9D,CAAC;IAJe,yBAAO,UAItB,CAAA;IAED,SAAgB,SAAS,CACrB,IAA6B,EAC7B,IAAkB,EAClB,IAAuE;QAEvE,IAAI,oBAAE,CAAC,OAAO,IAAI,KAAK;YACnB,OAAO,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACxC,SAAS,EACT,SAAS,EACT,IAAI,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;gBACtC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;gBACrD,CAAC,CAAC,SAAS,EACf,IAAI,EACJ,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;gBAC7C,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,SAAS,CAClB,CAAC;QAEN,OAAO,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACxC,SAAS,EACT,SAAS,EACT,SAAS,EACT,IAAI,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;YACtC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;YACrD,CAAC,CAAC,SAAS,EACf,IAAI,EACJ,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,aAAa;YAC7C,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,SAAS,CAClB,CAAC;IACN,CAAC;IAhCe,2BAAS,YAgCxB,CAAA;AAwBL,CAAC,EA5EgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QA4EjC"}
@@ -62,7 +62,7 @@ var TypiaFileFactory;
62
62
  function generate(props) {
63
63
  var _a, _b;
64
64
  return __awaiter(this, void 0, void 0, function () {
65
- var parent_1, config, program, _c, _d, result, printer, _e, _f, file, to, content, e_1_1;
65
+ var parent_1, compilerOptions, program, _c, _d, result, printer, _e, _f, file, to, content, e_1_1;
66
66
  var e_1, _g;
67
67
  var _this = this;
68
68
  return __generator(this, function (_h) {
@@ -93,7 +93,12 @@ var TypiaFileFactory;
93
93
  _h.sent();
94
94
  _h.label = 8;
95
95
  case 8:
96
- config = typescript_1.default.readConfigFile(props.project, typescript_1.default.sys.readFile).config;
96
+ compilerOptions = typescript_1.default.parseJsonConfigFileContent(typescript_1.default.readConfigFile(props.project, typescript_1.default.sys.readFile).config, {
97
+ fileExists: typescript_1.default.sys.fileExists,
98
+ readFile: typescript_1.default.sys.readFile,
99
+ readDirectory: typescript_1.default.sys.readDirectory,
100
+ useCaseSensitiveFileNames: typescript_1.default.sys.useCaseSensitiveFileNames,
101
+ }, path_1.default.dirname(props.project)).options;
97
102
  _d = (_c = typescript_1.default).createProgram;
98
103
  return [4, (function () { return __awaiter(_this, void 0, void 0, function () {
99
104
  var container;
@@ -109,7 +114,7 @@ var TypiaFileFactory;
109
114
  });
110
115
  }); })()];
111
116
  case 9:
112
- program = _d.apply(_c, [_h.sent(), config.compilerOptions]);
117
+ program = _d.apply(_c, [_h.sent(), compilerOptions]);
113
118
  result = typescript_1.default.transform(program
114
119
  .getSourceFiles()
115
120
  .filter(function (file) {
@@ -117,7 +122,7 @@ var TypiaFileFactory;
117
122
  path_1.default.resolve(file.fileName).indexOf(props.input) !== -1;
118
123
  }), [
119
124
  ImportTransformer_1.ImportTransformer.transform(props.input)(props.output),
120
- (0, transform_1.default)(program, (_b = ((_a = config.compilerOptions.plugins) !== null && _a !== void 0 ? _a : []).find(function (p) {
125
+ (0, transform_1.default)(program, (_b = ((_a = compilerOptions.plugins) !== null && _a !== void 0 ? _a : []).find(function (p) {
121
126
  return p.transform === "typia/lib/transform" ||
122
127
  p.transform === "../src/transform.ts";
123
128
  })) !== null && _b !== void 0 ? _b : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"TypiaFileFactory.js","sourceRoot":"","sources":["../../src/factories/TypiaFileFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypiaFileFactory.js","sourceRoot":"","sources":["../../src/factories/TypiaFileFactory.ts"],"names":[],"mappings":"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"}
@@ -44,12 +44,12 @@ var check_string_tags = function (importer) {
44
44
  if (tag.kind === "format")
45
45
  conditions.push([
46
46
  tag,
47
- typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createTrue(), typescript_1.default.factory.createCallExpression(importer.use("is_".concat(tag.value)), undefined, [input])),
47
+ typescript_1.default.factory.createCallExpression(importer.use("is_".concat(tag.value)), undefined, [input]),
48
48
  ]);
49
49
  else if (tag.kind === "pattern")
50
50
  conditions.push([
51
51
  tag,
52
- typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createTrue(), typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("RegExp(/".concat(tag.value, "/).test")), undefined, [input])),
52
+ typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("RegExp(/".concat(tag.value, "/).test")), undefined, [input]),
53
53
  ]);
54
54
  else if (tag.kind === "length")
55
55
  conditions.push([