@simplysm/sd-cli 7.0.23 → 7.0.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/sd-cli.d.ts +1 -1
- package/dist/bin/sd-cli.mjs +15 -3
- package/dist/builder/SdCliClientBuilder.d.ts +20 -0
- package/dist/builder/SdCliClientBuilder.mjs +392 -0
- package/dist/builder/SdCliServerBuilder.d.ts +24 -0
- package/dist/builder/SdCliServerBuilder.mjs +399 -0
- package/dist/builder/SdCliTsLibBuilder.d.ts +5 -3
- package/dist/builder/SdCliTsLibBuilder.mjs +17 -18
- package/dist/commons.d.ts +10 -4
- package/dist/entry-points/SdCliNpm.d.ts +6 -0
- package/dist/entry-points/SdCliNpm.mjs +22 -0
- package/dist/entry-points/SdCliPrepare.d.ts +5 -0
- package/dist/entry-points/SdCliPrepare.mjs +54 -0
- package/dist/entry-points/SdCliWorkspace.d.ts +1 -0
- package/dist/entry-points/SdCliWorkspace.mjs +43 -36
- package/dist/packages/SdCliPackage.d.ts +1 -0
- package/dist/packages/SdCliPackage.mjs +20 -19
- package/dist/utils/SdCliBuildResultUtil.d.ts +4 -1
- package/dist/utils/SdCliBuildResultUtil.mjs +24 -2
- package/dist/utils/SdCliNpmConfigUtil.d.ts +7 -0
- package/dist/utils/SdCliNpmConfigUtil.mjs +15 -0
- package/package.json +22 -7
- package/src/bin/sd-cli.ts +22 -2
- package/src/builder/SdCliClientBuilder.ts +426 -0
- package/src/builder/SdCliServerBuilder.ts +457 -0
- package/src/builder/SdCliTsLibBuilder.ts +26 -21
- package/src/commons.ts +6 -5
- package/src/entry-points/SdCliNpm.ts +26 -0
- package/src/entry-points/SdCliPrepare.ts +54 -0
- package/src/entry-points/SdCliWorkspace.ts +51 -42
- package/src/packages/SdCliPackage.ts +21 -23
- package/src/utils/SdCliBuildResultUtil.ts +30 -1
- package/src/utils/SdCliNpmConfigUtil.ts +16 -0
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
import { EventEmitter } from "events";
|
|
2
|
+
import { FsUtil, Logger, PathUtil } from "@simplysm/sd-core-node";
|
|
3
|
+
import webpack from "webpack";
|
|
4
|
+
import path from "path";
|
|
5
|
+
import ts from "typescript";
|
|
6
|
+
import { SdCliBuildResultUtil } from "../utils/SdCliBuildResultUtil";
|
|
7
|
+
import os from "os";
|
|
8
|
+
import TerserPlugin from "terser-webpack-plugin";
|
|
9
|
+
import { ObjectUtil, StringUtil } from "@simplysm/sd-core-common";
|
|
10
|
+
import ESLintWebpackPlugin from "eslint-webpack-plugin";
|
|
11
|
+
import CopyWebpackPlugin from "copy-webpack-plugin";
|
|
12
|
+
import { LicenseWebpackPlugin } from "license-webpack-plugin";
|
|
13
|
+
export class SdCliServerBuilder extends EventEmitter {
|
|
14
|
+
constructor(_rootPath, _config, _workspaceRootPath) {
|
|
15
|
+
super();
|
|
16
|
+
this._rootPath = _rootPath;
|
|
17
|
+
this._config = _config;
|
|
18
|
+
this._workspaceRootPath = _workspaceRootPath;
|
|
19
|
+
this._logger = Logger.get(["simplysm", "sd-cli", this.constructor.name]);
|
|
20
|
+
this._npmConfigMap = new Map();
|
|
21
|
+
// tsconfig
|
|
22
|
+
this._tsconfigFilePath = path.resolve(this._rootPath, "tsconfig-build.json");
|
|
23
|
+
const tsconfig = FsUtil.readJson(this._tsconfigFilePath);
|
|
24
|
+
this._parsedTsconfig = ts.parseJsonConfigFileContent(tsconfig, ts.sys, this._rootPath);
|
|
25
|
+
}
|
|
26
|
+
on(event, listener) {
|
|
27
|
+
return super.on(event, listener);
|
|
28
|
+
}
|
|
29
|
+
async watchAsync() {
|
|
30
|
+
// DIST 비우기
|
|
31
|
+
await FsUtil.removeAsync(this._parsedTsconfig.options.outDir);
|
|
32
|
+
// 빌드 준비
|
|
33
|
+
const extModuleNames = this._getExternalModuleNames();
|
|
34
|
+
const webpackConfig = this._getWebpackConfig(true, extModuleNames);
|
|
35
|
+
const compiler = webpack(webpackConfig);
|
|
36
|
+
await new Promise((resolve, reject) => {
|
|
37
|
+
compiler.hooks.watchRun.tapAsync(this.constructor.name, (args, callback) => {
|
|
38
|
+
this.emit("change");
|
|
39
|
+
callback();
|
|
40
|
+
this._logger.debug("Webpack 빌드 수행...");
|
|
41
|
+
});
|
|
42
|
+
compiler.watch({}, async (err, stats) => {
|
|
43
|
+
if (err != null || stats == null) {
|
|
44
|
+
reject(err);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
// .config.json 파일 쓰기
|
|
48
|
+
await this._writeDistConfigFileAsync();
|
|
49
|
+
// 결과 반환
|
|
50
|
+
const results = SdCliBuildResultUtil.convertFromWebpackStats(stats);
|
|
51
|
+
this.emit("complete", results);
|
|
52
|
+
// 마무리
|
|
53
|
+
this._logger.debug("Webpack 빌드 완료");
|
|
54
|
+
resolve();
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
async buildAsync() {
|
|
59
|
+
// DIST 비우기
|
|
60
|
+
await FsUtil.removeAsync(this._parsedTsconfig.options.outDir);
|
|
61
|
+
// 빌드
|
|
62
|
+
this._logger.debug("Webpack 빌드 수행...");
|
|
63
|
+
const extModuleNames = this._getExternalModuleNames();
|
|
64
|
+
const webpackConfig = this._getWebpackConfig(false, extModuleNames);
|
|
65
|
+
const compiler = webpack(webpackConfig);
|
|
66
|
+
const buildResults = await new Promise((resolve, reject) => {
|
|
67
|
+
compiler.run((err, stats) => {
|
|
68
|
+
if (err != null || stats == null) {
|
|
69
|
+
reject(err);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
// 결과 반환
|
|
73
|
+
const results = SdCliBuildResultUtil.convertFromWebpackStats(stats);
|
|
74
|
+
resolve(results);
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
// .config.json 파일 쓰기
|
|
78
|
+
await this._writeDistConfigFileAsync();
|
|
79
|
+
// pm2.json 파일 쓰기
|
|
80
|
+
await this._writeDistPm2ConfigFileAsync();
|
|
81
|
+
// iis 파일 쓰기
|
|
82
|
+
await this._writeDistIisConfigFileAsync();
|
|
83
|
+
// 배포용 package.json 파일 생성
|
|
84
|
+
await this._writeDistNpmConfigFileAsync(extModuleNames);
|
|
85
|
+
// 마무리
|
|
86
|
+
this._logger.debug("Webpack 빌드 완료");
|
|
87
|
+
return buildResults;
|
|
88
|
+
}
|
|
89
|
+
async _writeDistConfigFileAsync() {
|
|
90
|
+
const configDistPath = path.resolve(this._parsedTsconfig.options.outDir, ".config.json");
|
|
91
|
+
await FsUtil.writeFileAsync(configDistPath, JSON.stringify(this._config.configs ?? {}, undefined, 2));
|
|
92
|
+
}
|
|
93
|
+
async _writeDistPm2ConfigFileAsync() {
|
|
94
|
+
if (this._config.pm2 === undefined || this._config.pm2 === false)
|
|
95
|
+
return;
|
|
96
|
+
const npmConfig = this._getNpmConfig(this._rootPath);
|
|
97
|
+
const pm2DistPath = path.resolve(this._parsedTsconfig.options.outDir, "pm2.json");
|
|
98
|
+
await FsUtil.writeFileAsync(pm2DistPath, JSON.stringify(ObjectUtil.merge({
|
|
99
|
+
"name": npmConfig.name.replace(/@/g, "").replace(/\//g, "-"),
|
|
100
|
+
"script": path.basename(path.resolve(this._parsedTsconfig.options.outDir, "main.mjs")),
|
|
101
|
+
"watch": true,
|
|
102
|
+
"watch_delay": 2000,
|
|
103
|
+
"ignore_watch": [
|
|
104
|
+
"node_modules",
|
|
105
|
+
"www"
|
|
106
|
+
].distinct(),
|
|
107
|
+
"interpreter": "node@" + process.versions.node,
|
|
108
|
+
"env": {
|
|
109
|
+
NODE_ENV: "production",
|
|
110
|
+
SD_VERSION: npmConfig.version,
|
|
111
|
+
TZ: "Asia/Seoul",
|
|
112
|
+
...this._config.env ? this._config.env : {}
|
|
113
|
+
}
|
|
114
|
+
}, (typeof this._config.pm2 !== "boolean") ? this._config.pm2 : {}, {
|
|
115
|
+
arrayProcess: "concat"
|
|
116
|
+
}), undefined, 2));
|
|
117
|
+
}
|
|
118
|
+
async _writeDistIisConfigFileAsync() {
|
|
119
|
+
if (this._config.iis === undefined || this._config.iis === false)
|
|
120
|
+
return;
|
|
121
|
+
const iisDistPath = path.resolve(this._parsedTsconfig.options.outDir, "web.config");
|
|
122
|
+
const serverExeFilePath = (this._config.iis !== true && "serverExeFilePath" in this._config.iis)
|
|
123
|
+
? (this._config.iis.serverExeFilePath ?? "C:\\Program Files\\nodejs\\node.exe")
|
|
124
|
+
: "C:\\Program Files\\nodejs\\node.exe";
|
|
125
|
+
await FsUtil.writeFileAsync(iisDistPath, `
|
|
126
|
+
<configuration>
|
|
127
|
+
<system.webServer>
|
|
128
|
+
<webSocket enabled="false" />
|
|
129
|
+
<handlers>
|
|
130
|
+
<add name="iisnode" path="main.js" verb="*" modules="iisnode" />
|
|
131
|
+
</handlers>
|
|
132
|
+
<iisnode nodeProcessCommandLine="${serverExeFilePath}"
|
|
133
|
+
watchedFiles="web.config;*.js"
|
|
134
|
+
loggingEnabled="true"
|
|
135
|
+
devErrorsEnabled="true" />
|
|
136
|
+
<rewrite>
|
|
137
|
+
<rules>
|
|
138
|
+
<rule name="main">
|
|
139
|
+
<action type="Rewrite" url="main.mjs" />
|
|
140
|
+
</rule>
|
|
141
|
+
</rules>
|
|
142
|
+
</rewrite>
|
|
143
|
+
<httpErrors errorMode="Detailed" />
|
|
144
|
+
</system.webServer>
|
|
145
|
+
</configuration>`.trim());
|
|
146
|
+
}
|
|
147
|
+
async _writeDistNpmConfigFileAsync(deps) {
|
|
148
|
+
const distNpmConfig = ObjectUtil.clone(this._getNpmConfig(this._rootPath));
|
|
149
|
+
distNpmConfig.dependencies = {};
|
|
150
|
+
for (const dep of deps) {
|
|
151
|
+
distNpmConfig.dependencies[dep] = "*";
|
|
152
|
+
}
|
|
153
|
+
delete distNpmConfig.optionalDependencies;
|
|
154
|
+
delete distNpmConfig.devDependencies;
|
|
155
|
+
delete distNpmConfig.peerDependencies;
|
|
156
|
+
if (this._config.pm2 !== undefined) {
|
|
157
|
+
distNpmConfig.scripts = { "start": "pm2 start pm2.json" };
|
|
158
|
+
}
|
|
159
|
+
await FsUtil.writeFileAsync(path.resolve(this._parsedTsconfig.options.outDir, "package.json"), JSON.stringify(distNpmConfig, undefined, 2));
|
|
160
|
+
}
|
|
161
|
+
_getWebpackConfig(watch, extModuleNames) {
|
|
162
|
+
const internalModuleCachePaths = watch
|
|
163
|
+
? FsUtil.findAllParentChildDirPaths("node_modules/!(@simplysm)", this._rootPath, this._workspaceRootPath)
|
|
164
|
+
: undefined;
|
|
165
|
+
return {
|
|
166
|
+
mode: watch ? "development" : "production",
|
|
167
|
+
devtool: false,
|
|
168
|
+
target: ["node", "es2020"],
|
|
169
|
+
profile: false,
|
|
170
|
+
resolve: {
|
|
171
|
+
roots: [this._rootPath],
|
|
172
|
+
extensions: [".ts", ".js", ".mjs", ".cjs"],
|
|
173
|
+
symlinks: true,
|
|
174
|
+
mainFields: ["es2020", "default", "module", "main"]
|
|
175
|
+
},
|
|
176
|
+
context: this._workspaceRootPath,
|
|
177
|
+
entry: {
|
|
178
|
+
main: [
|
|
179
|
+
path.resolve(this._rootPath, "src/main.ts")
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
output: {
|
|
183
|
+
clean: true,
|
|
184
|
+
path: this._parsedTsconfig.options.outDir,
|
|
185
|
+
filename: "[name].mjs",
|
|
186
|
+
chunkFilename: "[name].mjs",
|
|
187
|
+
assetModuleFilename: "res/[name][ext][query]",
|
|
188
|
+
libraryTarget: "module"
|
|
189
|
+
},
|
|
190
|
+
experiments: {
|
|
191
|
+
outputModule: true
|
|
192
|
+
},
|
|
193
|
+
performance: { hints: false },
|
|
194
|
+
node: false,
|
|
195
|
+
stats: "errors-warnings",
|
|
196
|
+
externals: extModuleNames,
|
|
197
|
+
...watch ? {
|
|
198
|
+
cache: { type: "memory", maxGenerations: 1 },
|
|
199
|
+
snapshot: {
|
|
200
|
+
immutablePaths: internalModuleCachePaths,
|
|
201
|
+
managedPaths: internalModuleCachePaths
|
|
202
|
+
}
|
|
203
|
+
} : {
|
|
204
|
+
cache: false
|
|
205
|
+
},
|
|
206
|
+
optimization: {
|
|
207
|
+
...watch ? {} : {
|
|
208
|
+
minimize: true,
|
|
209
|
+
minimizer: [
|
|
210
|
+
new TerserPlugin({
|
|
211
|
+
extractComments: false,
|
|
212
|
+
terserOptions: {
|
|
213
|
+
compress: true,
|
|
214
|
+
ecma: 2020,
|
|
215
|
+
sourceMap: false,
|
|
216
|
+
keep_classnames: true,
|
|
217
|
+
keep_fnames: true,
|
|
218
|
+
ie8: false,
|
|
219
|
+
safari10: false,
|
|
220
|
+
module: true,
|
|
221
|
+
format: {
|
|
222
|
+
comments: false
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
})
|
|
226
|
+
]
|
|
227
|
+
},
|
|
228
|
+
moduleIds: "deterministic",
|
|
229
|
+
chunkIds: watch ? "named" : "deterministic",
|
|
230
|
+
emitOnErrors: watch
|
|
231
|
+
},
|
|
232
|
+
module: {
|
|
233
|
+
strictExportPresence: true,
|
|
234
|
+
rules: [
|
|
235
|
+
{
|
|
236
|
+
test: /\.m?js/,
|
|
237
|
+
resolve: {
|
|
238
|
+
fullySpecified: false
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
...watch ? [
|
|
242
|
+
{
|
|
243
|
+
test: /\.m?js$/,
|
|
244
|
+
enforce: "pre",
|
|
245
|
+
loader: "source-map-loader",
|
|
246
|
+
options: {
|
|
247
|
+
filterSourceMappingUrl: (mapUri, resourcePath) => {
|
|
248
|
+
return !resourcePath.includes("node_modules") || (/@simplysm[\\/]sd/).test(resourcePath);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
] : [],
|
|
253
|
+
{
|
|
254
|
+
test: /\.ts$/,
|
|
255
|
+
exclude: /node_modules/,
|
|
256
|
+
loader: "ts-loader",
|
|
257
|
+
options: {
|
|
258
|
+
configFile: this._tsconfigFilePath,
|
|
259
|
+
errorFormatter: (msg) => {
|
|
260
|
+
return SdCliBuildResultUtil.getMessage({
|
|
261
|
+
filePath: msg.file,
|
|
262
|
+
line: msg.line,
|
|
263
|
+
char: msg.character,
|
|
264
|
+
code: "TS" + msg.code.toString(),
|
|
265
|
+
severity: msg.severity,
|
|
266
|
+
message: msg.content
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico|otf|xlsx?|pptx?|docx?|zip|pfx|pkl)$/,
|
|
273
|
+
type: "asset/resource"
|
|
274
|
+
}
|
|
275
|
+
]
|
|
276
|
+
},
|
|
277
|
+
plugins: [
|
|
278
|
+
...watch ? [] : [
|
|
279
|
+
new LicenseWebpackPlugin({
|
|
280
|
+
stats: { warnings: false, errors: false },
|
|
281
|
+
perChunkOutput: false,
|
|
282
|
+
outputFilename: "3rd_party_licenses.txt",
|
|
283
|
+
skipChildCompilers: true
|
|
284
|
+
})
|
|
285
|
+
],
|
|
286
|
+
new CopyWebpackPlugin({
|
|
287
|
+
patterns: ["assets/"].map((item) => ({
|
|
288
|
+
context: this._rootPath,
|
|
289
|
+
to: item,
|
|
290
|
+
from: `src/${item}`,
|
|
291
|
+
noErrorOnMissing: true,
|
|
292
|
+
force: true,
|
|
293
|
+
globOptions: {
|
|
294
|
+
dot: true,
|
|
295
|
+
followSymbolicLinks: false,
|
|
296
|
+
ignore: [
|
|
297
|
+
".gitkeep",
|
|
298
|
+
"**/.DS_Store",
|
|
299
|
+
"**/Thumbs.db"
|
|
300
|
+
].map((i) => PathUtil.posix(this._rootPath, i))
|
|
301
|
+
},
|
|
302
|
+
priority: 0
|
|
303
|
+
}))
|
|
304
|
+
}),
|
|
305
|
+
new webpack.EnvironmentPlugin({
|
|
306
|
+
SD_VERSION: this._getNpmConfig(this._rootPath).version,
|
|
307
|
+
...this._config.env
|
|
308
|
+
}),
|
|
309
|
+
new ESLintWebpackPlugin({
|
|
310
|
+
context: this._rootPath,
|
|
311
|
+
eslintPath: path.resolve(this._workspaceRootPath, "node_modules", "eslint"),
|
|
312
|
+
exclude: ["node_modules"],
|
|
313
|
+
extensions: ["ts", "js", "mjs", "cjs"],
|
|
314
|
+
fix: false,
|
|
315
|
+
threads: false,
|
|
316
|
+
formatter: (results) => {
|
|
317
|
+
const resultMessages = [];
|
|
318
|
+
for (const result of results) {
|
|
319
|
+
for (const msg of result.messages) {
|
|
320
|
+
const severity = msg.severity === 1 ? "warning" : msg.severity === 2 ? "error" : undefined;
|
|
321
|
+
if (severity === undefined)
|
|
322
|
+
continue;
|
|
323
|
+
resultMessages.push(SdCliBuildResultUtil.getMessage({
|
|
324
|
+
filePath: result.filePath,
|
|
325
|
+
line: msg.line,
|
|
326
|
+
char: msg.column,
|
|
327
|
+
code: msg.ruleId?.toString(),
|
|
328
|
+
severity,
|
|
329
|
+
message: msg.message
|
|
330
|
+
}));
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
return resultMessages.join(os.EOL);
|
|
334
|
+
}
|
|
335
|
+
}) /*,
|
|
336
|
+
new webpack.ProgressPlugin({
|
|
337
|
+
handler: (per: number, msg: string, ...args: string[]) => {
|
|
338
|
+
const phaseText = msg ? ` - phase: ${msg}` : "";
|
|
339
|
+
const argsText = args.length > 0 ? ` - args: [${args.join(", ")}]` : "";
|
|
340
|
+
this._logger.debug(`Webpack 빌드 수행중...(${Math.round(per * 100)}%)${phaseText}${argsText}`);
|
|
341
|
+
}
|
|
342
|
+
})*/
|
|
343
|
+
]
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
_getExternalModuleNames() {
|
|
347
|
+
const loadedModuleNames = [];
|
|
348
|
+
const resultSet = new Set();
|
|
349
|
+
const fn = (currPath) => {
|
|
350
|
+
const npmConfig = this._getNpmConfig(currPath);
|
|
351
|
+
if (!npmConfig)
|
|
352
|
+
return;
|
|
353
|
+
const moduleNames = [
|
|
354
|
+
...Object.keys(npmConfig.dependencies ?? {}),
|
|
355
|
+
...Object.keys(npmConfig.peerDependencies ?? {}).filter((item) => !npmConfig.peerDependenciesMeta?.[item].optional)
|
|
356
|
+
];
|
|
357
|
+
const optModuleNames = [
|
|
358
|
+
...Object.keys(npmConfig.optionalDependencies ?? {}),
|
|
359
|
+
...Object.keys(npmConfig.peerDependencies ?? {}).filter((item) => npmConfig.peerDependenciesMeta?.[item].optional)
|
|
360
|
+
].distinct();
|
|
361
|
+
for (const moduleName of moduleNames) {
|
|
362
|
+
if (loadedModuleNames.includes(moduleName))
|
|
363
|
+
continue;
|
|
364
|
+
loadedModuleNames.push(moduleName);
|
|
365
|
+
const modulePath = FsUtil.findAllParentChildDirPaths("node_modules/" + moduleName, currPath, this._workspaceRootPath).first();
|
|
366
|
+
if (StringUtil.isNullOrEmpty(modulePath)) {
|
|
367
|
+
continue;
|
|
368
|
+
}
|
|
369
|
+
if (FsUtil.exists(path.resolve(modulePath, "binding.gyp"))) {
|
|
370
|
+
resultSet.add(moduleName);
|
|
371
|
+
}
|
|
372
|
+
fn(modulePath);
|
|
373
|
+
}
|
|
374
|
+
for (const optModuleName of optModuleNames) {
|
|
375
|
+
if (loadedModuleNames.includes(optModuleName))
|
|
376
|
+
continue;
|
|
377
|
+
loadedModuleNames.push(optModuleName);
|
|
378
|
+
const optModulePath = FsUtil.findAllParentChildDirPaths("node_modules/" + optModuleName, currPath, this._workspaceRootPath).first();
|
|
379
|
+
if (StringUtil.isNullOrEmpty(optModulePath)) {
|
|
380
|
+
resultSet.add(optModuleName);
|
|
381
|
+
continue;
|
|
382
|
+
}
|
|
383
|
+
if (FsUtil.exists(path.resolve(optModulePath, "binding.gyp"))) {
|
|
384
|
+
resultSet.add(optModuleName);
|
|
385
|
+
}
|
|
386
|
+
fn(optModulePath);
|
|
387
|
+
}
|
|
388
|
+
};
|
|
389
|
+
fn(this._rootPath);
|
|
390
|
+
return Array.from(resultSet.values());
|
|
391
|
+
}
|
|
392
|
+
_getNpmConfig(pkgPath) {
|
|
393
|
+
if (!this._npmConfigMap.has(pkgPath)) {
|
|
394
|
+
this._npmConfigMap.set(pkgPath, FsUtil.readJson(path.resolve(pkgPath, "package.json")));
|
|
395
|
+
}
|
|
396
|
+
return this._npmConfigMap.get(pkgPath);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2RDbGlTZXJ2ZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2J1aWxkZXIvU2RDbGlTZXJ2ZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxPQUFPLE1BQU0sU0FBUyxDQUFDO0FBQzlCLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUN4QixPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFckUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRXBCLE9BQU8sWUFBWSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxtQkFBbUIsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLGlCQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRzlELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBT2xELFlBQW9DLFNBQWlCLEVBQ2pCLE9BQWtDLEVBQ2xDLGtCQUEwQjtRQUM1RCxLQUFLLEVBQUUsQ0FBQztRQUgwQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQTJCO1FBQ2xDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBUTtRQVI3QyxZQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBSXBFLGtC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
|
|
@@ -3,7 +3,6 @@ import { ISdCliPackageBuildResult } from "../commons";
|
|
|
3
3
|
import { EventEmitter } from "events";
|
|
4
4
|
export declare class SdCliTsLibBuilder extends EventEmitter {
|
|
5
5
|
private readonly _rootPath;
|
|
6
|
-
private readonly _isAngular;
|
|
7
6
|
private readonly _logger;
|
|
8
7
|
private _moduleResolutionCache?;
|
|
9
8
|
private readonly _linter;
|
|
@@ -12,7 +11,11 @@ export declare class SdCliTsLibBuilder extends EventEmitter {
|
|
|
12
11
|
private _program?;
|
|
13
12
|
private _ngProgram?;
|
|
14
13
|
private _builder?;
|
|
15
|
-
|
|
14
|
+
private readonly _tsconfigFilePath;
|
|
15
|
+
private readonly _parsedTsconfig;
|
|
16
|
+
private readonly _npmConfig;
|
|
17
|
+
private readonly _isAngular;
|
|
18
|
+
constructor(_rootPath: any);
|
|
16
19
|
on(event: "change", listener: () => void): this;
|
|
17
20
|
on(event: "complete", listener: (results: ISdCliPackageBuildResult[]) => void): this;
|
|
18
21
|
watchAsync(): Promise<void>;
|
|
@@ -23,5 +26,4 @@ export declare class SdCliTsLibBuilder extends EventEmitter {
|
|
|
23
26
|
private _createProgram;
|
|
24
27
|
private _configProgramSourceFileVersions;
|
|
25
28
|
private _createCacheCompilerHost;
|
|
26
|
-
private _getParsedTsconfigAsync;
|
|
27
29
|
}
|
|
@@ -9,27 +9,33 @@ import sass from "sass";
|
|
|
9
9
|
import { SdCliPackageLinter } from "../build-tool/SdCliPackageLinter";
|
|
10
10
|
import { SdCliCacheCompilerHost } from "../build-tool/SdCliCacheCompilerHost";
|
|
11
11
|
import { SdCliNgCacheCompilerHost } from "../build-tool/SdCliNgCacheCompilerHost";
|
|
12
|
+
import { SdCliNpmConfigUtil } from "../utils/SdCliNpmConfigUtil";
|
|
12
13
|
export class SdCliTsLibBuilder extends EventEmitter {
|
|
13
|
-
constructor(_rootPath
|
|
14
|
+
constructor(_rootPath) {
|
|
14
15
|
super();
|
|
15
16
|
this._rootPath = _rootPath;
|
|
16
|
-
this._isAngular = _isAngular;
|
|
17
17
|
this._logger = Logger.get(["simplysm", "sd-cli", this.constructor.name]);
|
|
18
18
|
this._fileCache = new Map();
|
|
19
19
|
this._writeFileCache = new Map();
|
|
20
20
|
this._linter = new SdCliPackageLinter(this._rootPath);
|
|
21
|
+
// tsconfig
|
|
22
|
+
this._tsconfigFilePath = path.resolve(this._rootPath, "tsconfig-build.json");
|
|
23
|
+
const tsconfig = FsUtil.readJson(this._tsconfigFilePath);
|
|
24
|
+
this._parsedTsconfig = ts.parseJsonConfigFileContent(tsconfig, ts.sys, this._rootPath);
|
|
25
|
+
// package.json
|
|
26
|
+
this._npmConfig = FsUtil.readJson(path.resolve(this._rootPath, "package.json"));
|
|
27
|
+
// else
|
|
28
|
+
this._isAngular = SdCliNpmConfigUtil.getDependencies(this._npmConfig).defaults.includes("@angular/core");
|
|
21
29
|
}
|
|
22
30
|
on(event, listener) {
|
|
23
31
|
return super.on(event, listener);
|
|
24
32
|
}
|
|
25
33
|
async watchAsync() {
|
|
26
34
|
this.emit("change");
|
|
27
|
-
// TSCONFIG 읽기
|
|
28
|
-
const parsedTsconfig = await this._getParsedTsconfigAsync();
|
|
29
35
|
// DIST 비우기
|
|
30
|
-
await FsUtil.removeAsync(
|
|
36
|
+
await FsUtil.removeAsync(this._parsedTsconfig.options.outDir);
|
|
31
37
|
// 프로그램 리로드
|
|
32
|
-
const buildPack = this._createSdBuildPack(
|
|
38
|
+
const buildPack = this._createSdBuildPack(this._parsedTsconfig);
|
|
33
39
|
const relatedPaths = await this.getAllRelatedPathsAsync();
|
|
34
40
|
const watcher = SdFsWatcher.watch(relatedPaths);
|
|
35
41
|
watcher.onChange(async (changeInfos) => {
|
|
@@ -43,7 +49,7 @@ export class SdCliTsLibBuilder extends EventEmitter {
|
|
|
43
49
|
this._fileCache.delete(PathUtil.posix(changeFilePath));
|
|
44
50
|
}
|
|
45
51
|
// 빌드
|
|
46
|
-
const watchBuildPack = this._createSdBuildPack(
|
|
52
|
+
const watchBuildPack = this._createSdBuildPack(this._parsedTsconfig);
|
|
47
53
|
// 린트
|
|
48
54
|
const watchBuildResults = await this._runBuilderAsync(watchBuildPack.builder, watchBuildPack.ngCompiler);
|
|
49
55
|
watchBuildResults.push(...await this._linter.lintAsync([
|
|
@@ -61,12 +67,10 @@ export class SdCliTsLibBuilder extends EventEmitter {
|
|
|
61
67
|
this.emit("complete", buildResults);
|
|
62
68
|
}
|
|
63
69
|
async buildAsync() {
|
|
64
|
-
// TSCONFIG 읽기
|
|
65
|
-
const parsedTsconfig = await this._getParsedTsconfigAsync();
|
|
66
70
|
// DIST 비우기
|
|
67
|
-
await FsUtil.removeAsync(
|
|
71
|
+
await FsUtil.removeAsync(this._parsedTsconfig.options.outDir);
|
|
68
72
|
// 프로그램 리로드
|
|
69
|
-
const buildPack = this._createSdBuildPack(
|
|
73
|
+
const buildPack = this._createSdBuildPack(this._parsedTsconfig);
|
|
70
74
|
// 빌드
|
|
71
75
|
const buildResults = await this._runBuilderAsync(buildPack.builder, buildPack.ngCompiler);
|
|
72
76
|
// 린트
|
|
@@ -110,7 +114,7 @@ export class SdCliTsLibBuilder extends EventEmitter {
|
|
|
110
114
|
}
|
|
111
115
|
results.push(...diagnostics
|
|
112
116
|
.filter((item) => [ts.DiagnosticCategory.Error, ts.DiagnosticCategory.Warning].includes(item.category))
|
|
113
|
-
.map((item) => SdCliBuildResultUtil.
|
|
117
|
+
.map((item) => SdCliBuildResultUtil.convertFromTsDiag(item))
|
|
114
118
|
.filterExists());
|
|
115
119
|
if (results.some((item) => item.severity === "error")) {
|
|
116
120
|
return results;
|
|
@@ -217,10 +221,5 @@ export class SdCliTsLibBuilder extends EventEmitter {
|
|
|
217
221
|
return compilerHost;
|
|
218
222
|
}
|
|
219
223
|
}
|
|
220
|
-
async _getParsedTsconfigAsync() {
|
|
221
|
-
const tsconfigFilePath = path.resolve(this._rootPath, "tsconfig-build.json");
|
|
222
|
-
const tsconfig = await FsUtil.readJsonAsync(tsconfigFilePath);
|
|
223
|
-
return ts.parseJsonConfigFileContent(tsconfig, ts.sys, this._rootPath);
|
|
224
|
-
}
|
|
225
224
|
}
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2RDbGlUc0xpYkJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGRlci9TZENsaVRzTGliQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0UsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBR2xGLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxZQUFZO0lBY2pELFlBQW9DLFNBQVMsRUFDVCxVQUFtQjtRQUNyRCxLQUFLLEVBQUUsQ0FBQztRQUYwQixjQUFTLEdBQVQsU0FBUyxDQUFBO1FBQ1QsZUFBVSxHQUFWLFVBQVUsQ0FBUztRQWR0QyxZQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBTXBFLGVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBc0IsQ0FBQztRQUMzQyxvQkFBZSxHQUFHLElB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
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2RDbGlUc0xpYkJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGRlci9TZENsaVRzTGliQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0UsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRWxGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWpFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxZQUFZO0lBb0JqRCxZQUFvQyxTQUFTO1FBQzNDLEtBQUssRUFBRSxDQUFDO1FBRDBCLGNBQVMsR0FBVCxTQUFTLENBQUE7UUFuQjVCLFlBQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFNcEUsZUFBVSxHQUFHLElBQUksR0FBRyxFQUFzQixDQUFDO1FBQzNDLG9C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
|
package/dist/commons.d.ts
CHANGED
|
@@ -14,6 +14,9 @@ export interface INpmConfig {
|
|
|
14
14
|
optionalDependencies?: Record<string, string>;
|
|
15
15
|
devDependencies?: Record<string, string>;
|
|
16
16
|
peerDependencies?: Record<string, string>;
|
|
17
|
+
peerDependenciesMeta?: Record<string, {
|
|
18
|
+
optional?: boolean;
|
|
19
|
+
}>;
|
|
17
20
|
}
|
|
18
21
|
export interface ITsconfig {
|
|
19
22
|
compilerOptions?: {
|
|
@@ -34,14 +37,17 @@ export interface ISdCliConfig {
|
|
|
34
37
|
packages: Record<string, TSdCliPackageConfig | undefined>;
|
|
35
38
|
localUpdates?: Record<string, string>;
|
|
36
39
|
}
|
|
37
|
-
export declare type TSdCliPackageConfig = ISdCliLibPackageConfig |
|
|
40
|
+
export declare type TSdCliPackageConfig = ISdCliLibPackageConfig | ISdCliServerPackageConfig;
|
|
38
41
|
export interface ISdCliLibPackageConfig {
|
|
39
42
|
type: "library";
|
|
40
43
|
publish?: "npm";
|
|
41
44
|
}
|
|
42
|
-
export interface ISdCliNgLibPackageConfig {
|
|
43
|
-
type: "angular";
|
|
44
|
-
}
|
|
45
45
|
export interface ISdCliServerPackageConfig {
|
|
46
46
|
type: "server";
|
|
47
|
+
env?: Record<string, string>;
|
|
48
|
+
configs?: Record<string, any>;
|
|
49
|
+
pm2?: Record<string, any> | boolean;
|
|
50
|
+
iis?: {
|
|
51
|
+
serverExeFilePath?: string;
|
|
52
|
+
} | boolean;
|
|
47
53
|
}
|