@nestia/core 1.0.4 → 1.0.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.
@@ -39,35 +39,37 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
40
  var CommandParser_1 = require("./internal/CommandParser");
41
41
  var CoreSetupWizard_1 = require("./internal/CoreSetupWizard");
42
- var USAGE = "Wrong command has been detected. Use like below:\n\n npx @nestia/core setup \\\n --compiler (ttypescript|ts-patch) \\\n --manager (npm|pnpm|yarn)\n\n - npx @nestia/core setup\n - npx @nestia/core setup --compiler ttypescript\n - npx @nestia/core setup --compiler ts-patch\n - npx @nestia/core setup --manager pnpm";
42
+ var USAGE = "Wrong command has been detected. Use like below:\n\n npx @nestia/core setup \\\n --compiler (ttypescript|ts-patch) \\\n --manager (npm|pnpm|yarn) \\\n --project {tsconfig.json file path}\n\n - npx @nestia/core setup\n - npx @nestia/core setup --compiler ts-patch\n - npx @nestia/core setup --manager pnpm\n - npx @nestia/core setup --project tsconfig.test.json";
43
43
  function halt(desc) {
44
44
  console.error(desc);
45
45
  process.exit(-1);
46
46
  }
47
47
  function setup() {
48
- var _a, _b;
48
+ var _a, _b, _c;
49
49
  return __awaiter(this, void 0, void 0, function () {
50
- var options, manager, compiler;
51
- return __generator(this, function (_c) {
52
- switch (_c.label) {
50
+ var options, manager, compiler, project;
51
+ return __generator(this, function (_d) {
52
+ switch (_d.label) {
53
53
  case 0:
54
54
  options = CommandParser_1.CommandParser.parse(process.argv.slice(3));
55
55
  manager = (_a = options.manager) !== null && _a !== void 0 ? _a : "npm";
56
56
  compiler = (_b = options.compiler) !== null && _b !== void 0 ? _b : "ttypescript";
57
+ project = (_c = options.project) !== null && _c !== void 0 ? _c : "tsconfig.json";
58
+ console.log(options);
57
59
  if (!((compiler !== "ttypescript" && compiler !== "ts-patch") ||
58
60
  (manager !== "npm" && manager !== "pnpm" && manager !== "yarn"))) return [3 /*break*/, 1];
59
61
  halt(USAGE);
60
62
  return [3 /*break*/, 5];
61
63
  case 1:
62
64
  if (!(compiler === "ttypescript")) return [3 /*break*/, 3];
63
- return [4 /*yield*/, CoreSetupWizard_1.CoreSetupWizard.ttypescript(manager)];
65
+ return [4 /*yield*/, CoreSetupWizard_1.CoreSetupWizard.ttypescript({ manager: manager, project: project })];
64
66
  case 2:
65
- _c.sent();
67
+ _d.sent();
66
68
  return [3 /*break*/, 5];
67
- case 3: return [4 /*yield*/, CoreSetupWizard_1.CoreSetupWizard.tsPatch(manager)];
69
+ case 3: return [4 /*yield*/, CoreSetupWizard_1.CoreSetupWizard.tsPatch({ manager: manager, project: project })];
68
70
  case 4:
69
- _c.sent();
70
- _c.label = 5;
71
+ _d.sent();
72
+ _d.label = 5;
71
73
  case 5: return [2 /*return*/];
72
74
  }
73
75
  });
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/executable/core.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,0DAAyD;AACzD,8DAA6D;AAE7D,IAAM,KAAK,GAAG,sUAS4B,CAAC;AAE3C,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,KAAK;;;;;;;oBACV,OAAO,GAA2B,6BAAa,CAAC,KAAK,CACvD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACxB,CAAC;oBACI,OAAO,GAAW,MAAA,OAAO,CAAC,OAAO,mCAAI,KAAK,CAAC;oBAC3C,QAAQ,GAAW,MAAA,OAAO,CAAC,QAAQ,mCAAI,aAAa,CAAC;yBAGvD,CAAA,CAAC,QAAQ,KAAK,aAAa,IAAI,QAAQ,KAAK,UAAU,CAAC;wBACvD,CAAC,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,CAAC,CAAA,EAD/D,wBAC+D;oBAE/D,IAAI,CAAC,KAAK,CAAC,CAAC;;;yBACP,CAAA,QAAQ,KAAK,aAAa,CAAA,EAA1B,wBAA0B;oBAC/B,qBAAM,iCAAe,CAAC,WAAW,CAAC,OAAO,CAAC,EAAA;;oBAA1C,SAA0C,CAAC;;wBAC1C,qBAAM,iCAAe,CAAC,OAAO,CAAC,OAAO,CAAC,EAAA;;oBAAtC,SAAsC,CAAC;;;;;;CAC/C;AAED,SAAe,IAAI;;;;;;oBACT,IAAI,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBAC7C,CAAA,IAAI,KAAK,OAAO,CAAA,EAAhB,wBAAgB;oBAAE,qBAAM,KAAK,EAAE,EAAA;;oBAAb,SAAa,CAAC;;;oBAC/B,IAAI,CAAC,KAAK,CAAC,CAAC;;;;;;CACpB;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":"core.js","sourceRoot":"","sources":["../../src/executable/core.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,0DAAyD;AACzD,8DAA6D;AAE7D,IAAM,KAAK,GAAG,wXAU0C,CAAC;AAEzD,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,KAAK;;;;;;;oBACV,OAAO,GAA2B,6BAAa,CAAC,KAAK,CACvD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACxB,CAAC;oBACI,OAAO,GAAW,MAAA,OAAO,CAAC,OAAO,mCAAI,KAAK,CAAC;oBAC3C,QAAQ,GAAW,MAAA,OAAO,CAAC,QAAQ,mCAAI,aAAa,CAAC;oBACrD,OAAO,GAAW,MAAA,OAAO,CAAC,OAAO,mCAAI,eAAe,CAAC;oBAC3D,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;yBAGjB,CAAA,CAAC,QAAQ,KAAK,aAAa,IAAI,QAAQ,KAAK,UAAU,CAAC;wBACvD,CAAC,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,CAAC,CAAA,EAD/D,wBAC+D;oBAE/D,IAAI,CAAC,KAAK,CAAC,CAAC;;;yBACP,CAAA,QAAQ,KAAK,aAAa,CAAA,EAA1B,wBAA0B;oBAC/B,qBAAM,iCAAe,CAAC,WAAW,CAAC,EAAE,OAAO,SAAA,EAAE,OAAO,SAAA,EAAE,CAAC,EAAA;;oBAAvD,SAAuD,CAAC;;wBACvD,qBAAM,iCAAe,CAAC,OAAO,CAAC,EAAE,OAAO,SAAA,EAAE,OAAO,SAAA,EAAE,CAAC,EAAA;;oBAAnD,SAAmD,CAAC;;;;;;CAC5D;AAED,SAAe,IAAI;;;;;;oBACT,IAAI,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBAC7C,CAAA,IAAI,KAAK,OAAO,CAAA,EAAhB,wBAAgB;oBAAE,qBAAM,KAAK,EAAE,EAAA;;oBAAb,SAAa,CAAC;;;oBAC/B,IAAI,CAAC,KAAK,CAAC,CAAC;;;;;;CACpB;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,4 +1,8 @@
1
1
  export declare namespace CoreSetupWizard {
2
- function ttypescript(manager: string): Promise<void>;
3
- function tsPatch(manager: string): Promise<void>;
2
+ interface IArguments {
3
+ manager: "npm" | "pnpm" | "yarn";
4
+ project: string;
5
+ }
6
+ function ttypescript(args: string | IArguments): Promise<void>;
7
+ function tsPatch(args: string | IArguments): Promise<void>;
4
8
  }
@@ -68,18 +68,25 @@ var fs_1 = __importDefault(require("fs"));
68
68
  var CoreSetupWizard;
69
69
  (function (CoreSetupWizard) {
70
70
  var _this = this;
71
- function ttypescript(manager) {
71
+ function ttypescript(args) {
72
72
  return __awaiter(this, void 0, void 0, function () {
73
73
  var pack;
74
74
  return __generator(this, function (_a) {
75
75
  switch (_a.label) {
76
- case 0: return [4 /*yield*/, prepare(manager)];
76
+ case 0:
77
+ // POLYFILL
78
+ if (typeof args === "string")
79
+ args = {
80
+ manager: args,
81
+ project: "tsconfig.json",
82
+ };
83
+ return [4 /*yield*/, prepare(args.manager)];
77
84
  case 1:
78
85
  pack = _a.sent();
79
- add(manager)(pack)("ttypescript", true);
80
- add(manager)(pack)("ts-node", true);
86
+ add(args.manager)(pack)("ttypescript", true);
87
+ add(args.manager)(pack)("ts-node", true);
81
88
  // TSCONFIG.JSON
82
- return [4 /*yield*/, configure(manager)(pack)];
89
+ return [4 /*yield*/, configure(args)(pack)];
83
90
  case 2:
84
91
  // TSCONFIG.JSON
85
92
  _a.sent();
@@ -89,15 +96,21 @@ var CoreSetupWizard;
89
96
  });
90
97
  }
91
98
  CoreSetupWizard.ttypescript = ttypescript;
92
- function tsPatch(manager) {
99
+ function tsPatch(args) {
93
100
  return __awaiter(this, void 0, void 0, function () {
94
101
  var _a, pack, _b, _c;
95
102
  return __generator(this, function (_d) {
96
103
  switch (_d.label) {
97
104
  case 0:
105
+ // POLYFILL
106
+ if (typeof args === "string")
107
+ args = {
108
+ manager: args,
109
+ project: "tsconfig.json",
110
+ };
98
111
  // INSTALL
99
- _a = add(manager);
100
- return [4 /*yield*/, prepare(manager)];
112
+ _a = add(args.manager);
113
+ return [4 /*yield*/, prepare(args.manager)];
101
114
  case 1:
102
115
  // INSTALL
103
116
  _a.apply(void 0, [_d.sent()])("ts-patch", true);
@@ -119,7 +132,7 @@ var CoreSetupWizard;
119
132
  case 3:
120
133
  _d.sent();
121
134
  // TSCONFIG.JSON
122
- return [4 /*yield*/, configure(manager)(pack)];
135
+ return [4 /*yield*/, configure(args)(pack)];
123
136
  case 4:
124
137
  // TSCONFIG.JSON
125
138
  _d.sent();
@@ -149,42 +162,42 @@ var CoreSetupWizard;
149
162
  });
150
163
  });
151
164
  }
152
- var configure = function (manager) {
165
+ var configure = function (args) {
153
166
  return function (pack) { return __awaiter(_this, void 0, void 0, function () {
154
167
  var temporary, halter, Comment, config, _a, _b, options, plugins, strict, core, typia;
155
168
  return __generator(this, function (_c) {
156
169
  var _d;
157
170
  switch (_c.label) {
158
171
  case 0:
159
- // VALIDATE PRERATATION
160
- if (fs_1.default.existsSync("tsconfig.json") === false) {
161
- execute("npx tsc --init");
162
- if (fs_1.default.existsSync("tsconfig.json") === false)
163
- halt(function () { })("tsconfig.json file does not exist.");
172
+ if (fs_1.default.existsSync(args.project) === false) {
173
+ if (args.project === "tsconfig.json")
174
+ execute("npx tsc --init");
175
+ if (fs_1.default.existsSync(args.project) === false)
176
+ halt(function () { })("".concat(args.project, " file does not exist."));
164
177
  }
165
178
  temporary = !fs_1.default.existsSync("node_modules/comment-json");
166
179
  if (temporary === true)
167
- add(manager)(pack)("comment-json", true);
180
+ add(args.manager)(pack)("comment-json", true);
168
181
  halter = halt(function () {
169
182
  if (temporary === true)
170
- remove(manager)("comment-json", true);
183
+ remove(args.manager)("comment-json", true);
171
184
  });
172
185
  return [4 /*yield*/, (_d = process.cwd() + "/node_modules/comment-json", Promise.resolve().then(function () { return __importStar(require(_d)); }))];
173
186
  case 1:
174
187
  Comment = _c.sent();
175
188
  _b = (_a = Comment).parse;
176
- return [4 /*yield*/, fs_1.default.promises.readFile("tsconfig.json", "utf8")];
189
+ return [4 /*yield*/, fs_1.default.promises.readFile(args.project, "utf8")];
177
190
  case 2:
178
191
  config = _b.apply(_a, [_c.sent()]);
179
192
  options = config.compilerOptions;
180
193
  if (options === undefined)
181
- halter("tsconfig.json file does not have \"compilerOptions\" property.");
194
+ halter("".concat(args.project, " file does not have \"compilerOptions\" property."));
182
195
  plugins = (function () {
183
196
  var plugins = options.plugins;
184
197
  if (plugins === undefined)
185
198
  return (options.plugins = []);
186
199
  else if (!Array.isArray(plugins))
187
- halter("\"plugins\" property of tsconfig.json must be array type.");
200
+ halter("\"plugins\" property of ".concat(args.project, " must be array type."));
188
201
  return plugins;
189
202
  })();
190
203
  strict = options.strict === true;
@@ -199,7 +212,7 @@ var CoreSetupWizard;
199
212
  p.transform === "typia/lib/transform";
200
213
  });
201
214
  if (!(strict === true && core !== undefined && typia !== undefined)) return [3 /*break*/, 3];
202
- console.log("you've been already configured the tsconfig.json file.");
215
+ console.log("you've been already configured the ".concat(args.project, " file."));
203
216
  return [3 /*break*/, 5];
204
217
  case 3:
205
218
  // DO CONFIGURE
@@ -208,13 +221,13 @@ var CoreSetupWizard;
208
221
  plugins.push(Comment.parse("{\n \"transform\": \"@nestia/core/lib/transform\",\n /**\n * Validate request body.\n * \n * - \"assert\": Use typia.assert() function\n * - \"is\": Use typia.is() function\n * - \"validate\": Use typia.validate() function\n */\n \"validate\": \"assert\",\n\n /**\n * Validate JSON typed response body.\n * \n * - null: Just use JSON.stringify() function, without boosting\n * - \"stringify\": Use typia.stringify() function, but dangerous\n * - \"assert\": Use typia.assertStringify() function\n * - \"is\": Use typia.isStringify() function\n * - \"validate\": Use typia.validateStringify() function\n */\n \"stringify\": \"is\"\n }"));
209
222
  if (typia === undefined)
210
223
  plugins.push(Comment.parse("{\n \"transform\": \"typia/lib/transform\"\n }"));
211
- return [4 /*yield*/, fs_1.default.promises.writeFile("tsconfig.json", Comment.stringify(config, null, 2))];
224
+ return [4 /*yield*/, fs_1.default.promises.writeFile(args.project, Comment.stringify(config, null, 2))];
212
225
  case 4:
213
226
  _c.sent();
214
227
  _c.label = 5;
215
228
  case 5:
216
229
  if (temporary === true)
217
- remove(manager)("comment-json", false);
230
+ remove(args.manager)("comment-json", false);
218
231
  return [2 /*return*/];
219
232
  }
220
233
  });
@@ -1 +1 @@
1
- {"version":3,"file":"CoreSetupWizard.js","sourceRoot":"","sources":["../../../src/executable/internal/CoreSetupWizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoreSetupWizard.js","sourceRoot":"","sources":["../../../src/executable/internal/CoreSetupWizard.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestia/core",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "Super-fast validation decorators of NestJS",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -6,12 +6,13 @@ const USAGE = `Wrong command has been detected. Use like below:
6
6
 
7
7
  npx @nestia/core setup \\
8
8
  --compiler (ttypescript|ts-patch) \\
9
- --manager (npm|pnpm|yarn)
9
+ --manager (npm|pnpm|yarn) \\
10
+ --project {tsconfig.json file path}
10
11
 
11
12
  - npx @nestia/core setup
12
- - npx @nestia/core setup --compiler ttypescript
13
13
  - npx @nestia/core setup --compiler ts-patch
14
- - npx @nestia/core setup --manager pnpm`;
14
+ - npx @nestia/core setup --manager pnpm
15
+ - npx @nestia/core setup --project tsconfig.test.json`;
15
16
 
16
17
  function halt(desc: string): never {
17
18
  console.error(desc);
@@ -24,6 +25,8 @@ async function setup(): Promise<void> {
24
25
  );
25
26
  const manager: string = options.manager ?? "npm";
26
27
  const compiler: string = options.compiler ?? "ttypescript";
28
+ const project: string = options.project ?? "tsconfig.json";
29
+ console.log(options);
27
30
 
28
31
  if (
29
32
  (compiler !== "ttypescript" && compiler !== "ts-patch") ||
@@ -31,8 +34,8 @@ async function setup(): Promise<void> {
31
34
  )
32
35
  halt(USAGE);
33
36
  else if (compiler === "ttypescript")
34
- await CoreSetupWizard.ttypescript(manager);
35
- else await CoreSetupWizard.tsPatch(manager);
37
+ await CoreSetupWizard.ttypescript({ manager, project });
38
+ else await CoreSetupWizard.tsPatch({ manager, project });
36
39
  }
37
40
 
38
41
  async function main(): Promise<void> {
@@ -3,19 +3,40 @@ import type Comment from "comment-json";
3
3
  import fs from "fs";
4
4
 
5
5
  export namespace CoreSetupWizard {
6
- export async function ttypescript(manager: string): Promise<void> {
6
+ export interface IArguments {
7
+ manager: "npm" | "pnpm" | "yarn";
8
+ project: string;
9
+ }
10
+
11
+ export async function ttypescript(
12
+ args: string | IArguments,
13
+ ): Promise<void> {
14
+ // POLYFILL
15
+ if (typeof args === "string")
16
+ args = {
17
+ manager: args as "npm",
18
+ project: "tsconfig.json",
19
+ };
20
+
7
21
  // INSTALL
8
- const pack: any = await prepare(manager);
9
- add(manager)(pack)("ttypescript", true);
10
- add(manager)(pack)("ts-node", true);
22
+ const pack: any = await prepare(args.manager);
23
+ add(args.manager)(pack)("ttypescript", true);
24
+ add(args.manager)(pack)("ts-node", true);
11
25
 
12
26
  // TSCONFIG.JSON
13
- await configure(manager)(pack);
27
+ await configure(args)(pack);
14
28
  }
15
29
 
16
- export async function tsPatch(manager: string): Promise<void> {
30
+ export async function tsPatch(args: string | IArguments): Promise<void> {
31
+ // POLYFILL
32
+ if (typeof args === "string")
33
+ args = {
34
+ manager: args as "npm",
35
+ project: "tsconfig.json",
36
+ };
37
+
17
38
  // INSTALL
18
- add(manager)(await prepare(manager))("ts-patch", true);
39
+ add(args.manager)(await prepare(args.manager))("ts-patch", true);
19
40
  execute("npx ts-patch install");
20
41
 
21
42
  // PACKAGE.JSON
@@ -37,7 +58,7 @@ export namespace CoreSetupWizard {
37
58
  );
38
59
 
39
60
  // TSCONFIG.JSON
40
- await configure(manager)(pack);
61
+ await configure(args)(pack);
41
62
  }
42
63
 
43
64
  async function prepare(manager: string): Promise<any> {
@@ -54,22 +75,23 @@ export namespace CoreSetupWizard {
54
75
  }
55
76
 
56
77
  const configure =
57
- (manager: string) =>
78
+ (args: IArguments) =>
58
79
  async (pack: any): Promise<void> => {
59
- // VALIDATE PRERATATION
60
- if (fs.existsSync("tsconfig.json") === false) {
61
- execute("npx tsc --init");
62
- if (fs.existsSync("tsconfig.json") === false)
63
- halt(() => {})("tsconfig.json file does not exist.");
80
+ if (fs.existsSync(args.project) === false) {
81
+ if (args.project === "tsconfig.json") execute("npx tsc --init");
82
+ if (fs.existsSync(args.project) === false)
83
+ halt(() => {})(`${args.project} file does not exist.`);
64
84
  }
65
85
 
66
86
  const temporary: boolean = !fs.existsSync(
67
87
  "node_modules/comment-json",
68
88
  );
69
- if (temporary === true) add(manager)(pack)("comment-json", true);
89
+ if (temporary === true)
90
+ add(args.manager)(pack)("comment-json", true);
70
91
 
71
92
  const halter: (msg: string) => never = halt(() => {
72
- if (temporary === true) remove(manager)("comment-json", true);
93
+ if (temporary === true)
94
+ remove(args.manager)("comment-json", true);
73
95
  });
74
96
 
75
97
  // READ TSCONFIG FILE
@@ -77,14 +99,14 @@ export namespace CoreSetupWizard {
77
99
  process.cwd() + "/node_modules/comment-json"
78
100
  );
79
101
  const config: Comment.CommentObject = Comment.parse(
80
- await fs.promises.readFile("tsconfig.json", "utf8"),
102
+ await fs.promises.readFile(args.project, "utf8"),
81
103
  ) as Comment.CommentObject;
82
104
  const options = config.compilerOptions as
83
105
  | Comment.CommentObject
84
106
  | undefined;
85
107
  if (options === undefined)
86
108
  halter(
87
- `tsconfig.json file does not have "compilerOptions" property.`,
109
+ `${args.project} file does not have "compilerOptions" property.`,
88
110
  );
89
111
 
90
112
  const plugins: Comment.CommentArray<Comment.CommentObject> =
@@ -96,7 +118,7 @@ export namespace CoreSetupWizard {
96
118
  return (options.plugins = [] as any);
97
119
  else if (!Array.isArray(plugins))
98
120
  halter(
99
- `"plugins" property of tsconfig.json must be array type.`,
121
+ `"plugins" property of ${args.project} must be array type.`,
100
122
  );
101
123
  return plugins;
102
124
  })();
@@ -118,7 +140,7 @@ export namespace CoreSetupWizard {
118
140
 
119
141
  if (strict === true && core !== undefined && typia !== undefined) {
120
142
  console.log(
121
- "you've been already configured the tsconfig.json file.",
143
+ `you've been already configured the ${args.project} file.`,
122
144
  );
123
145
  } else {
124
146
  // DO CONFIGURE
@@ -155,11 +177,11 @@ export namespace CoreSetupWizard {
155
177
  }`) as Comment.CommentObject,
156
178
  );
157
179
  await fs.promises.writeFile(
158
- "tsconfig.json",
180
+ args.project,
159
181
  Comment.stringify(config, null, 2),
160
182
  );
161
183
  }
162
- if (temporary === true) remove(manager)("comment-json", false);
184
+ if (temporary === true) remove(args.manager)("comment-json", false);
163
185
  };
164
186
  }
165
187