@simplysm/sd-cli 6.4.6 → 7.0.12
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/.eslintrc.cjs +11 -0
- package/dist/bin/sd-cli.d.ts +1 -0
- package/dist/bin/sd-cli.mjs +86 -0
- package/dist/build-tool/SdCliCacheCompilerHost.d.ts +10 -0
- package/dist/build-tool/SdCliCacheCompilerHost.mjs +44 -0
- package/dist/build-tool/SdCliNgCacheCompilerHost.d.ts +11 -0
- package/dist/build-tool/SdCliNgCacheCompilerHost.mjs +36 -0
- package/dist/build-tool/SdCliPackageLinter.d.ts +8 -0
- package/dist/build-tool/SdCliPackageLinter.mjs +41 -0
- package/dist/builder/SdCliJsLibBuilder.d.ts +14 -0
- package/dist/builder/SdCliJsLibBuilder.mjs +50 -0
- package/dist/builder/SdCliTsLibBuilder.d.ts +27 -0
- package/dist/builder/SdCliTsLibBuilder.mjs +226 -0
- package/dist/commons.d.ts +46 -0
- package/dist/commons.mjs +2 -0
- package/dist/entry-points/SdCliWorkspace.d.ts +18 -0
- package/dist/entry-points/SdCliWorkspace.mjs +193 -0
- package/dist/packages/SdCliPackage.d.ts +19 -0
- package/dist/packages/SdCliPackage.mjs +89 -0
- package/dist/utils/SdCliBuildResultUtil.d.ts +6 -0
- package/dist/utils/SdCliBuildResultUtil.mjs +38 -0
- package/dist/utils/SdCliConfigUtil.d.ts +7 -0
- package/dist/utils/SdCliConfigUtil.mjs +69 -0
- package/lib/ts-node-esm-paths.mjs +15 -0
- package/package.json +27 -59
- package/src/bin/sd-cli.ts +86 -214
- package/src/build-tool/SdCliCacheCompilerHost.ts +71 -0
- package/src/build-tool/SdCliNgCacheCompilerHost.ts +50 -0
- package/src/build-tool/SdCliPackageLinter.ts +54 -0
- package/src/builder/SdCliJsLibBuilder.ts +66 -0
- package/src/builder/SdCliTsLibBuilder.ts +335 -0
- package/src/commons.ts +17 -122
- package/src/entry-points/SdCliWorkspace.ts +229 -0
- package/src/packages/SdCliPackage.ts +111 -0
- package/src/utils/SdCliBuildResultUtil.ts +43 -0
- package/src/utils/SdCliConfigUtil.ts +94 -0
- package/tsconfig-build.json +9 -0
- package/tsconfig.json +7 -18
- package/.eslintrc.js +0 -19
- package/dist-node/bin/sd-cli.js +0 -197
- package/dist-node/bin/sd-cli.js.map +0 -1
- package/dist-node/build-tools/SdCliCordova.js +0 -145
- package/dist-node/build-tools/SdCliCordova.js.map +0 -1
- package/dist-node/build-tools/SdCliIndexFileGenerator.js +0 -51
- package/dist-node/build-tools/SdCliIndexFileGenerator.js.map +0 -1
- package/dist-node/build-tools/SdCliNgModuleFilesGenerator.js +0 -675
- package/dist-node/build-tools/SdCliNgModuleFilesGenerator.js.map +0 -1
- package/dist-node/build-tools/metadata/SdAotMetadataReader.js +0 -274
- package/dist-node/build-tools/metadata/SdAotMetadataReader.js.map +0 -1
- package/dist-node/build-tools/metadata/SdIvyMetadataReader.js +0 -124
- package/dist-node/build-tools/metadata/SdIvyMetadataReader.js.map +0 -1
- package/dist-node/build-tools/metadata/SdMetadataError.js +0 -13
- package/dist-node/build-tools/metadata/SdMetadataError.js.map +0 -1
- package/dist-node/build-tools/metadata/SdMyMetadataReader.js +0 -321
- package/dist-node/build-tools/metadata/SdMyMetadataReader.js.map +0 -1
- package/dist-node/builders/SdCliJavascriptLinter.js +0 -65
- package/dist-node/builders/SdCliJavascriptLinter.js.map +0 -1
- package/dist-node/builders/SdCliNgClientBuilder.js +0 -636
- package/dist-node/builders/SdCliNgClientBuilder.js.map +0 -1
- package/dist-node/builders/SdCliNgLibraryBuilder.js +0 -217
- package/dist-node/builders/SdCliNgLibraryBuilder.js.map +0 -1
- package/dist-node/builders/SdCliPublisher.js +0 -129
- package/dist-node/builders/SdCliPublisher.js.map +0 -1
- package/dist-node/builders/SdCliServerBuilder.js +0 -452
- package/dist-node/builders/SdCliServerBuilder.js.map +0 -1
- package/dist-node/builders/SdCliTypescriptBuilder.js +0 -347
- package/dist-node/builders/SdCliTypescriptBuilder.js.map +0 -1
- package/dist-node/commons.js +0 -3
- package/dist-node/commons.js.map +0 -1
- package/dist-node/entry-points/SdCliLocalUpdater.js +0 -88
- package/dist-node/entry-points/SdCliLocalUpdater.js.map +0 -1
- package/dist-node/entry-points/SdCliPrepare.js +0 -56
- package/dist-node/entry-points/SdCliPrepare.js.map +0 -1
- package/dist-node/entry-points/SdCliProject.js +0 -302
- package/dist-node/entry-points/SdCliProject.js.map +0 -1
- package/dist-node/packages/SdCliClientPackage.js +0 -91
- package/dist-node/packages/SdCliClientPackage.js.map +0 -1
- package/dist-node/packages/SdCliLibraryPackage.js +0 -99
- package/dist-node/packages/SdCliLibraryPackage.js.map +0 -1
- package/dist-node/packages/SdCliPackageBase.js +0 -33
- package/dist-node/packages/SdCliPackageBase.js.map +0 -1
- package/dist-node/packages/SdCliServerPackage.js +0 -69
- package/dist-node/packages/SdCliServerPackage.js.map +0 -1
- package/dist-node/packages/SdCliUnknownPackage.js +0 -15
- package/dist-node/packages/SdCliUnknownPackage.js.map +0 -1
- package/dist-node/utils/SdCliFileCrypto.js +0 -76
- package/dist-node/utils/SdCliFileCrypto.js.map +0 -1
- package/dist-node/utils/SdProjectConfigUtil.js +0 -62
- package/dist-node/utils/SdProjectConfigUtil.js.map +0 -1
- package/dist-node/utils/SdTsDiagnosticUtil.js +0 -45
- package/dist-node/utils/SdTsDiagnosticUtil.js.map +0 -1
- package/dist-node/utils/SdWebpackUtil.js +0 -63
- package/dist-node/utils/SdWebpackUtil.js.map +0 -1
- package/dist-node/workers/client-ng-gen-worker.js +0 -57
- package/dist-node/workers/client-ng-gen-worker.js.map +0 -1
- package/dist-node/workers/lib-build-worker.js +0 -88
- package/dist-node/workers/lib-build-worker.js.map +0 -1
- package/dist-types/bin/sd-cli.d.ts +0 -3
- package/dist-types/bin/sd-cli.d.ts.map +0 -1
- package/dist-types/build-tools/SdCliCordova.d.ts +0 -15
- package/dist-types/build-tools/SdCliCordova.d.ts.map +0 -1
- package/dist-types/build-tools/SdCliIndexFileGenerator.d.ts +0 -13
- package/dist-types/build-tools/SdCliIndexFileGenerator.d.ts.map +0 -1
- package/dist-types/build-tools/SdCliNgModuleFilesGenerator.d.ts +0 -43
- package/dist-types/build-tools/SdCliNgModuleFilesGenerator.d.ts.map +0 -1
- package/dist-types/build-tools/metadata/SdAotMetadataReader.d.ts +0 -58
- package/dist-types/build-tools/metadata/SdAotMetadataReader.d.ts.map +0 -1
- package/dist-types/build-tools/metadata/SdIvyMetadataReader.d.ts +0 -43
- package/dist-types/build-tools/metadata/SdIvyMetadataReader.d.ts.map +0 -1
- package/dist-types/build-tools/metadata/SdMetadataError.d.ts +0 -7
- package/dist-types/build-tools/metadata/SdMetadataError.d.ts.map +0 -1
- package/dist-types/build-tools/metadata/SdMyMetadataReader.d.ts +0 -59
- package/dist-types/build-tools/metadata/SdMyMetadataReader.d.ts.map +0 -1
- package/dist-types/builders/SdCliJavascriptLinter.d.ts +0 -14
- package/dist-types/builders/SdCliJavascriptLinter.d.ts.map +0 -1
- package/dist-types/builders/SdCliNgClientBuilder.d.ts +0 -29
- package/dist-types/builders/SdCliNgClientBuilder.d.ts.map +0 -1
- package/dist-types/builders/SdCliNgLibraryBuilder.d.ts +0 -30
- package/dist-types/builders/SdCliNgLibraryBuilder.d.ts.map +0 -1
- package/dist-types/builders/SdCliPublisher.d.ts +0 -9
- package/dist-types/builders/SdCliPublisher.d.ts.map +0 -1
- package/dist-types/builders/SdCliServerBuilder.d.ts +0 -31
- package/dist-types/builders/SdCliServerBuilder.d.ts.map +0 -1
- package/dist-types/builders/SdCliTypescriptBuilder.d.ts +0 -56
- package/dist-types/builders/SdCliTypescriptBuilder.d.ts.map +0 -1
- package/dist-types/commons.d.ts +0 -134
- package/dist-types/commons.d.ts.map +0 -1
- package/dist-types/entry-points/SdCliLocalUpdater.d.ts +0 -12
- package/dist-types/entry-points/SdCliLocalUpdater.d.ts.map +0 -1
- package/dist-types/entry-points/SdCliPrepare.d.ts +0 -6
- package/dist-types/entry-points/SdCliPrepare.d.ts.map +0 -1
- package/dist-types/entry-points/SdCliProject.d.ts +0 -32
- package/dist-types/entry-points/SdCliProject.d.ts.map +0 -1
- package/dist-types/packages/SdCliClientPackage.d.ts +0 -17
- package/dist-types/packages/SdCliClientPackage.d.ts.map +0 -1
- package/dist-types/packages/SdCliLibraryPackage.d.ts +0 -20
- package/dist-types/packages/SdCliLibraryPackage.d.ts.map +0 -1
- package/dist-types/packages/SdCliPackageBase.d.ts +0 -11
- package/dist-types/packages/SdCliPackageBase.d.ts.map +0 -1
- package/dist-types/packages/SdCliServerPackage.d.ts +0 -16
- package/dist-types/packages/SdCliServerPackage.d.ts.map +0 -1
- package/dist-types/packages/SdCliUnknownPackage.d.ts +0 -9
- package/dist-types/packages/SdCliUnknownPackage.d.ts.map +0 -1
- package/dist-types/utils/SdCliFileCrypto.d.ts +0 -8
- package/dist-types/utils/SdCliFileCrypto.d.ts.map +0 -1
- package/dist-types/utils/SdProjectConfigUtil.d.ts +0 -7
- package/dist-types/utils/SdProjectConfigUtil.d.ts.map +0 -1
- package/dist-types/utils/SdTsDiagnosticUtil.d.ts +0 -6
- package/dist-types/utils/SdTsDiagnosticUtil.d.ts.map +0 -1
- package/dist-types/utils/SdWebpackUtil.d.ts +0 -7
- package/dist-types/utils/SdWebpackUtil.d.ts.map +0 -1
- package/dist-types/workers/client-ng-gen-worker.d.ts +0 -2
- package/dist-types/workers/client-ng-gen-worker.d.ts.map +0 -1
- package/dist-types/workers/lib-build-worker.d.ts +0 -2
- package/dist-types/workers/lib-build-worker.d.ts.map +0 -1
- package/schema/schema.json +0 -447
- package/sd-tsconfig.node.json +0 -18
- package/src/build-tools/SdCliCordova.ts +0 -242
- package/src/build-tools/SdCliIndexFileGenerator.ts +0 -61
- package/src/build-tools/SdCliNgModuleFilesGenerator.ts +0 -894
- package/src/build-tools/metadata/SdAotMetadataReader.ts +0 -374
- package/src/build-tools/metadata/SdIvyMetadataReader.ts +0 -183
- package/src/build-tools/metadata/SdMetadataError.ts +0 -7
- package/src/build-tools/metadata/SdMyMetadataReader.ts +0 -407
- package/src/builders/SdCliJavascriptLinter.ts +0 -81
- package/src/builders/SdCliNgClientBuilder.ts +0 -793
- package/src/builders/SdCliNgLibraryBuilder.ts +0 -301
- package/src/builders/SdCliPublisher.ts +0 -144
- package/src/builders/SdCliServerBuilder.ts +0 -555
- package/src/builders/SdCliTypescriptBuilder.ts +0 -552
- package/src/entry-points/SdCliLocalUpdater.ts +0 -114
- package/src/entry-points/SdCliPrepare.ts +0 -104
- package/src/entry-points/SdCliProject.ts +0 -405
- package/src/packages/SdCliClientPackage.ts +0 -111
- package/src/packages/SdCliLibraryPackage.ts +0 -118
- package/src/packages/SdCliPackageBase.ts +0 -34
- package/src/packages/SdCliServerPackage.ts +0 -85
- package/src/packages/SdCliUnknownPackage.ts +0 -14
- package/src/utils/SdCliFileCrypto.ts +0 -87
- package/src/utils/SdCliUtils.ts +0 -56
- package/src/utils/SdProjectConfigUtil.ts +0 -145
- package/src/utils/SdTsDiagnosticUtil.ts +0 -46
- package/src/utils/SdWebpackUtil.ts +0 -71
- package/src/workers/client-ng-gen-worker.ts +0 -63
- package/src/workers/lib-build-worker.ts +0 -97
package/dist-node/bin/sd-cli.js
DELETED
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
process.setMaxListeners(0);
|
|
5
|
-
const os = require("os");
|
|
6
|
-
const yargs = require("yargs");
|
|
7
|
-
const events_1 = require("events");
|
|
8
|
-
const sd_core_node_1 = require("@simplysm/sd-core-node");
|
|
9
|
-
const SdCliProject_1 = require("../entry-points/SdCliProject");
|
|
10
|
-
const SdCliLocalUpdater_1 = require("../entry-points/SdCliLocalUpdater");
|
|
11
|
-
const SdCliFileCrypto_1 = require("../utils/SdCliFileCrypto");
|
|
12
|
-
const SdCliCordova_1 = require("../build-tools/SdCliCordova");
|
|
13
|
-
const SdCliPrepare_1 = require("../entry-points/SdCliPrepare");
|
|
14
|
-
events_1.EventEmitter.defaultMaxListeners = 0;
|
|
15
|
-
const logger = sd_core_node_1.Logger.get(["simplysm", "sd-cli"]);
|
|
16
|
-
(async () => {
|
|
17
|
-
const argv = await yargs.version(false)
|
|
18
|
-
.help("help", "도움말")
|
|
19
|
-
.alias("help", "h")
|
|
20
|
-
.options({
|
|
21
|
-
debug: {
|
|
22
|
-
type: "boolean",
|
|
23
|
-
describe: "디버그 로그를 표시할 것인지 여부",
|
|
24
|
-
default: false
|
|
25
|
-
}
|
|
26
|
-
})
|
|
27
|
-
.command("watch", "프로젝트의 각 패키지에 대한 변경감지 빌드를 수행합니다.", (cmd) => cmd
|
|
28
|
-
.options({
|
|
29
|
-
packages: {
|
|
30
|
-
type: "string",
|
|
31
|
-
describe: "수행할 패키지 설정",
|
|
32
|
-
array: true
|
|
33
|
-
},
|
|
34
|
-
config: {
|
|
35
|
-
type: "string",
|
|
36
|
-
describe: "simplysm.json 파일 경로"
|
|
37
|
-
},
|
|
38
|
-
noLint: {
|
|
39
|
-
type: "boolean",
|
|
40
|
-
describe: `lint 작업을 수행하지 않음`
|
|
41
|
-
},
|
|
42
|
-
options: {
|
|
43
|
-
type: "string",
|
|
44
|
-
describe: "옵션 설정 (설정파일에서 @로 시작하는 부분)",
|
|
45
|
-
array: true
|
|
46
|
-
}
|
|
47
|
-
}))
|
|
48
|
-
.command("run-device <cordovaPath> <target> <url>", "변경감지중인 플랫폼을 디바이스에 앱 형태로 띄웁니다.", (cmd) => cmd
|
|
49
|
-
.positional("cordovaPath", {
|
|
50
|
-
type: "string",
|
|
51
|
-
describe: "CORDOVA 프로젝트 경로",
|
|
52
|
-
demandOption: true
|
|
53
|
-
})
|
|
54
|
-
.positional("target", {
|
|
55
|
-
type: "string",
|
|
56
|
-
describe: "빌드타겟(android,...)",
|
|
57
|
-
demandOption: true
|
|
58
|
-
})
|
|
59
|
-
.positional("url", {
|
|
60
|
-
type: "string",
|
|
61
|
-
describe: "Webview로 오픈할 URL",
|
|
62
|
-
demandOption: true
|
|
63
|
-
}))
|
|
64
|
-
.command("build", "프로젝트의 각 패키지에 대한 빌드를 수행합니다.", (cmd) => cmd
|
|
65
|
-
.options({
|
|
66
|
-
packages: {
|
|
67
|
-
type: "string",
|
|
68
|
-
describe: "수행할 패키지 설정",
|
|
69
|
-
array: true
|
|
70
|
-
},
|
|
71
|
-
config: {
|
|
72
|
-
type: "string",
|
|
73
|
-
describe: "simplysm.json 파일 경로"
|
|
74
|
-
},
|
|
75
|
-
noLint: {
|
|
76
|
-
type: "boolean",
|
|
77
|
-
describe: `lint 작업을 수행하지 않음`
|
|
78
|
-
},
|
|
79
|
-
options: {
|
|
80
|
-
type: "string",
|
|
81
|
-
describe: "옵션 설정 (설정파일에서 @로 시작하는 부분)",
|
|
82
|
-
array: true
|
|
83
|
-
}
|
|
84
|
-
}))
|
|
85
|
-
.command("publish", "프로젝트의 각 패키지를 배포합니다.", (cmd) => cmd.version(false)
|
|
86
|
-
.options({
|
|
87
|
-
build: {
|
|
88
|
-
type: "boolean",
|
|
89
|
-
describe: "새로 빌드한 후에 배포합니다",
|
|
90
|
-
default: false
|
|
91
|
-
},
|
|
92
|
-
noLint: {
|
|
93
|
-
type: "boolean",
|
|
94
|
-
describe: `빌드시, lint 작업을 수행하지 않음`
|
|
95
|
-
},
|
|
96
|
-
packages: {
|
|
97
|
-
type: "string",
|
|
98
|
-
describe: "수행할 패키지 설정",
|
|
99
|
-
array: true
|
|
100
|
-
},
|
|
101
|
-
config: {
|
|
102
|
-
type: "string",
|
|
103
|
-
describe: "simplysm.json 파일 경로"
|
|
104
|
-
},
|
|
105
|
-
options: {
|
|
106
|
-
type: "string",
|
|
107
|
-
describe: "옵션 설정 (설정파일에서 @로 시작하는 부분)",
|
|
108
|
-
array: true
|
|
109
|
-
}
|
|
110
|
-
}))
|
|
111
|
-
.command("local-update", "로컬 라이브러리 업데이트를 수행합니다.", (cmd) => cmd.version(false)
|
|
112
|
-
.options({
|
|
113
|
-
config: {
|
|
114
|
-
type: "string",
|
|
115
|
-
describe: "simplysm.json 파일 경로"
|
|
116
|
-
}
|
|
117
|
-
}))
|
|
118
|
-
.command("enc-file <file>", "파일을 암호화 합니다.", (cmd) => cmd.version(false)
|
|
119
|
-
.positional("file", {
|
|
120
|
-
type: "string",
|
|
121
|
-
describe: "암호화할 파일명"
|
|
122
|
-
}))
|
|
123
|
-
.command("dec-file <file>", "파일을 복호화 합니다.", (cmd) => cmd.version(false)
|
|
124
|
-
.positional("file", {
|
|
125
|
-
type: "string",
|
|
126
|
-
describe: "암호화된 파일명"
|
|
127
|
-
}))
|
|
128
|
-
.command("prepare", "sd-cli 준비")
|
|
129
|
-
.parse();
|
|
130
|
-
if (argv.debug) {
|
|
131
|
-
Error.stackTraceLimit = 100;
|
|
132
|
-
process.env.SD_CLI_LOGGER_SEVERITY = "DEBUG";
|
|
133
|
-
sd_core_node_1.Logger.setConfig(["simplysm", "sd-cli"], {
|
|
134
|
-
console: {
|
|
135
|
-
level: sd_core_node_1.LoggerSeverity.debug
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
sd_core_node_1.Logger.setConfig(["simplysm", "sd-cli"], {
|
|
141
|
-
dot: true
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
const args = argv._;
|
|
145
|
-
if (args[0] === "build") {
|
|
146
|
-
await new SdCliProject_1.SdCliProject(process.cwd())
|
|
147
|
-
.buildAsync({
|
|
148
|
-
packages: argv.packages,
|
|
149
|
-
config: argv.config,
|
|
150
|
-
options: argv.options,
|
|
151
|
-
skipProcesses: argv.noLint ? ["lint"] : undefined
|
|
152
|
-
});
|
|
153
|
-
process.exit(0);
|
|
154
|
-
}
|
|
155
|
-
else if (args[0] === "watch") {
|
|
156
|
-
await new SdCliProject_1.SdCliProject(process.cwd())
|
|
157
|
-
.buildAsync({
|
|
158
|
-
watch: true,
|
|
159
|
-
packages: argv.packages,
|
|
160
|
-
config: argv.config,
|
|
161
|
-
options: argv.options,
|
|
162
|
-
skipProcesses: argv.noLint ? ["lint"] : undefined
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
else if (args[0] === "run-device") {
|
|
166
|
-
await SdCliCordova_1.SdCliCordova.runWebviewOnDeviceAsync(argv.cordovaPath, argv.target, argv.url);
|
|
167
|
-
}
|
|
168
|
-
else if (args[0] === "local-update") {
|
|
169
|
-
await new SdCliLocalUpdater_1.SdCliLocalUpdater(process.cwd()).localUpdateAsync(false, { config: argv.config });
|
|
170
|
-
}
|
|
171
|
-
else if (args[0] === "publish") {
|
|
172
|
-
await new SdCliProject_1.SdCliProject(process.cwd())
|
|
173
|
-
.publishAsync({
|
|
174
|
-
build: argv.build,
|
|
175
|
-
packages: argv.packages,
|
|
176
|
-
config: argv.config,
|
|
177
|
-
options: argv.options
|
|
178
|
-
});
|
|
179
|
-
process.exit(0);
|
|
180
|
-
}
|
|
181
|
-
else if (args[0] === "enc-file") {
|
|
182
|
-
await new SdCliFileCrypto_1.SdCliFileCrypto().encryptAsync(argv.file);
|
|
183
|
-
}
|
|
184
|
-
else if (args[0] === "dec-file") {
|
|
185
|
-
await new SdCliFileCrypto_1.SdCliFileCrypto().decryptAsync(argv.file);
|
|
186
|
-
}
|
|
187
|
-
else if (args[0] === "prepare") {
|
|
188
|
-
await new SdCliPrepare_1.SdCliPrepare().prepareAsync();
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
throw new Error(`명령어가 잘못되었습니다.${os.EOL + os.EOL}\t${argv._[0]}${os.EOL}`);
|
|
192
|
-
}
|
|
193
|
-
})().catch((err) => {
|
|
194
|
-
logger.error(err);
|
|
195
|
-
process.exit(1);
|
|
196
|
-
});
|
|
197
|
-
//# sourceMappingURL=sd-cli.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sd-cli.js","sourceRoot":"","sources":["../../src/bin/sd-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SdCliCordova = void 0;
|
|
4
|
-
const path = require("path");
|
|
5
|
-
const sd_core_node_1 = require("@simplysm/sd-core-node");
|
|
6
|
-
const sd_core_common_1 = require("@simplysm/sd-core-common");
|
|
7
|
-
class SdCliCordova {
|
|
8
|
-
constructor(_rootPath, _config) {
|
|
9
|
-
this._rootPath = _rootPath;
|
|
10
|
-
this._config = _config;
|
|
11
|
-
this._cordovaPath = path.resolve(this._rootPath, ".cordova");
|
|
12
|
-
this._binPath = path.resolve(process.cwd(), "node_modules/.bin/cordova.cmd");
|
|
13
|
-
this._npmConfig = sd_core_node_1.FsUtil.readJson(path.resolve(this._rootPath, "package.json"));
|
|
14
|
-
this._logger = sd_core_node_1.Logger.get(["simplysm", "sd-cli", this.constructor.name, this._npmConfig.name]);
|
|
15
|
-
}
|
|
16
|
-
async initializeAsync() {
|
|
17
|
-
if (sd_core_node_1.FsUtil.exists(this._cordovaPath)) {
|
|
18
|
-
this._logger.log("미리 생성되어있는 '.cordova'를 사용합니다.");
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${this._binPath} telemetry on`, { cwd: this._rootPath }, (message) => {
|
|
22
|
-
this._logger.debug("CORDOVA: " + message);
|
|
23
|
-
});
|
|
24
|
-
this._logger.debug(`CORDOVA 프로젝트 생성`);
|
|
25
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${this._binPath} create "${this._cordovaPath}" "${this._config.appId}" "${this._config.appName}"`, { cwd: process.cwd() }, (message) => {
|
|
26
|
-
this._logger.debug("CORDOVA: " + message);
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
await sd_core_node_1.FsUtil.mkdirsAsync(path.resolve(this._cordovaPath, "platforms"));
|
|
30
|
-
await sd_core_node_1.FsUtil.mkdirsAsync(path.resolve(this._cordovaPath, "www"));
|
|
31
|
-
const alreadyPlatforms = await sd_core_node_1.FsUtil.readdirAsync(path.resolve(this._cordovaPath, "platforms"));
|
|
32
|
-
if (!alreadyPlatforms.includes("browser")) {
|
|
33
|
-
this._logger.debug(`CORDOVA 플랫폼 생성: browser`);
|
|
34
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${this._binPath} platform add browser`, { cwd: this._cordovaPath }, (message) => {
|
|
35
|
-
this._logger.debug("CORDOVA: " + message);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
for (const target of this._config.targets) {
|
|
39
|
-
if (!alreadyPlatforms.includes(target)) {
|
|
40
|
-
this._logger.debug(`CORDOVA 플랫폼 생성: ${target}`);
|
|
41
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${this._binPath} platform add ${target}`, { cwd: this._cordovaPath }, (message) => {
|
|
42
|
-
this._logger.debug(`CORDOVA: ${target}: ${message}`);
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
if (this._config.plugins) {
|
|
47
|
-
const pluginsFetch = await sd_core_node_1.FsUtil.readJsonAsync(path.resolve(this._cordovaPath, "plugins/fetch.json"));
|
|
48
|
-
const alreadyPlugins = Object.values(pluginsFetch)
|
|
49
|
-
.map((item) => (item.source.id !== undefined ? item.source.id.replace(/@.*$/, "") : item.source.url));
|
|
50
|
-
for (const plugin of this._config.plugins.distinct()) {
|
|
51
|
-
if (!alreadyPlugins.includes(plugin)) {
|
|
52
|
-
this._logger.debug(`CORDOVA 플러그인 설치 ${plugin}`);
|
|
53
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${this._binPath} plugin add ${plugin}`, { cwd: this._cordovaPath }, (message) => {
|
|
54
|
-
this._logger.debug("CORDOVA: " + message);
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
if (this._config.sign) {
|
|
60
|
-
await sd_core_node_1.FsUtil.copyAsync(path.resolve(this._rootPath, this._config.sign.keystore), path.resolve(this._cordovaPath, path.basename(this._config.sign.keystore)));
|
|
61
|
-
await sd_core_node_1.FsUtil.writeJsonAsync(path.resolve(this._cordovaPath, "build.json"), {
|
|
62
|
-
android: {
|
|
63
|
-
release: {
|
|
64
|
-
keystore: path.basename(this._config.sign.keystore),
|
|
65
|
-
storePassword: this._config.sign.storePassword,
|
|
66
|
-
alias: this._config.sign.alias,
|
|
67
|
-
password: this._config.sign.password,
|
|
68
|
-
keystoreType: this._config.sign.keystoreType
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
if (this._config.icon !== undefined) {
|
|
74
|
-
await sd_core_node_1.FsUtil.copyAsync(path.resolve(this._rootPath, this._config.icon), path.resolve(this._cordovaPath, "res", "icon", "icon.png"));
|
|
75
|
-
}
|
|
76
|
-
if (this._config.targets.includes("android")) {
|
|
77
|
-
const gradleFilePath = path.resolve(this._cordovaPath, "platforms/android/app/build.gradle");
|
|
78
|
-
let gradleFileContent = await sd_core_node_1.FsUtil.readFileAsync(gradleFilePath);
|
|
79
|
-
gradleFileContent = gradleFileContent.replace(/lintOptions {/g, "lintOptions {\r\n checkReleaseBuilds false;");
|
|
80
|
-
await sd_core_node_1.FsUtil.writeFileAsync(gradleFilePath, gradleFileContent);
|
|
81
|
-
}
|
|
82
|
-
const configFilePath = path.resolve(this._cordovaPath, "config.xml");
|
|
83
|
-
let configFileContent = await sd_core_node_1.FsUtil.readFileAsync(configFilePath);
|
|
84
|
-
configFileContent = configFileContent.replace(/version="[^"]*"/g, `version="${this._npmConfig.version}"`);
|
|
85
|
-
if (this._config.icon !== undefined && !configFileContent.includes("<icon")) {
|
|
86
|
-
configFileContent = configFileContent.replace("</widget>", " <icon src=\"res/icon/icon.png\" />\r\n</widget>");
|
|
87
|
-
}
|
|
88
|
-
if (this._config.targets.includes("android")) {
|
|
89
|
-
if (!configFileContent.includes("xmlns:android=\"http://schemas.android.com/apk/res/android\"")) {
|
|
90
|
-
configFileContent = configFileContent.replace("xmlns=\"http://www.w3.org/ns/widgets\"", `xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android"`);
|
|
91
|
-
}
|
|
92
|
-
if (!configFileContent.includes("application android:usesCleartextTraffic=\"true\" />")) {
|
|
93
|
-
configFileContent = configFileContent.replace("<platform name=\"android\">", `<platform name="android">
|
|
94
|
-
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
|
|
95
|
-
<application android:usesCleartextTraffic="true" />
|
|
96
|
-
</edit-config>`);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
await sd_core_node_1.FsUtil.writeFileAsync(configFilePath, configFileContent);
|
|
100
|
-
}
|
|
101
|
-
async buildAsync(outPath) {
|
|
102
|
-
const configFilePath = path.resolve(this._cordovaPath, "config.xml");
|
|
103
|
-
let configFileContent = await sd_core_node_1.FsUtil.readFileAsync(configFilePath);
|
|
104
|
-
configFileContent = configFileContent.replace(/ {4}<allow-navigation href="[^"]*" \/>\n/g, "");
|
|
105
|
-
configFileContent = configFileContent.replace("</widget>", ` <allow-navigation href="*://*/*" />\n</widget>`);
|
|
106
|
-
await sd_core_node_1.FsUtil.writeFileAsync(configFilePath, configFileContent);
|
|
107
|
-
const buildType = "release";
|
|
108
|
-
const packageType = "apk";
|
|
109
|
-
for (const target of this._config.targets) {
|
|
110
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${this._binPath} build ${target} --${buildType} --packageType=${packageType}`, { cwd: this._cordovaPath }, (message) => {
|
|
111
|
-
this._logger.debug(`CORDOVA: ${target}: ${message}`);
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
for (const target of this._config.targets) {
|
|
115
|
-
if (target === "android") {
|
|
116
|
-
const targetOutPath = path.resolve(outPath, target);
|
|
117
|
-
const apkFileName = this._config.sign !== undefined ? `app-${buildType}.apk` : `app-${buildType}-unsigned.apk`;
|
|
118
|
-
const distApkFileName = path.basename(`${this._config.appName}${this._config.sign !== undefined ? "" : "-unsigned"}-v${this._npmConfig.version}.apk`);
|
|
119
|
-
const latestDistApkFileName = path.basename(`${this._config.appName}${this._config.sign !== undefined ? "" : "-unsigned"}-latest.apk`);
|
|
120
|
-
await sd_core_node_1.FsUtil.mkdirsAsync(targetOutPath);
|
|
121
|
-
await sd_core_node_1.FsUtil.copyAsync(path.resolve(this._cordovaPath, "platforms/android/app/build/outputs/apk", buildType, apkFileName), path.resolve(targetOutPath, distApkFileName));
|
|
122
|
-
await sd_core_node_1.FsUtil.copyAsync(path.resolve(this._cordovaPath, "platforms/android/app/build/outputs/apk", buildType, apkFileName), path.resolve(targetOutPath, latestDistApkFileName));
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
throw new sd_core_common_1.NeverEntryError();
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
static async runWebviewOnDeviceAsync(cordovaPath, target, url) {
|
|
130
|
-
await sd_core_node_1.FsUtil.removeAsync(path.resolve(cordovaPath, "www"));
|
|
131
|
-
await sd_core_node_1.FsUtil.mkdirsAsync(path.resolve(cordovaPath, "www"));
|
|
132
|
-
await sd_core_node_1.FsUtil.writeFileAsync(path.resolve(cordovaPath, "www/index.html"), `'${url}'로 이동중... <script>setTimeout(function () {window.location.href = "${url}"}, 3000);</script>`.trim());
|
|
133
|
-
const configFilePath = path.resolve(cordovaPath, "config.xml");
|
|
134
|
-
let configFileContent = await sd_core_node_1.FsUtil.readFileAsync(configFilePath);
|
|
135
|
-
configFileContent = configFileContent.replace(/ {4}<allow-navigation href="[^"]*" \/>\n/g, "");
|
|
136
|
-
configFileContent = configFileContent.replace("</widget>", ` <allow-navigation href="${url}" />\n</widget>`);
|
|
137
|
-
configFileContent = configFileContent.replace("</widget>", ` <allow-navigation href="${url}/*" />\n</widget>`);
|
|
138
|
-
configFileContent = configFileContent.replace("</widget>", ` <allow-navigation href="*://*/*" />\n</widget>`);
|
|
139
|
-
await sd_core_node_1.FsUtil.writeFileAsync(configFilePath, configFileContent);
|
|
140
|
-
const binPath = path.resolve(process.cwd(), "node_modules/.bin/cordova.cmd");
|
|
141
|
-
await sd_core_node_1.SdProcessManager.spawnAsync(`${binPath} run ${target} --device`, { cwd: cordovaPath });
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
exports.SdCliCordova = SdCliCordova;
|
|
145
|
-
//# sourceMappingURL=SdCliCordova.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SdCliCordova.js","sourceRoot":"","sources":["../../src/build-tools/SdCliCordova.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SdCliIndexFileGenerator = void 0;
|
|
4
|
-
const path = require("path");
|
|
5
|
-
const sd_core_node_1 = require("@simplysm/sd-core-node");
|
|
6
|
-
const os = require("os");
|
|
7
|
-
class SdCliIndexFileGenerator {
|
|
8
|
-
constructor(rootPath, config) {
|
|
9
|
-
this.rootPath = rootPath;
|
|
10
|
-
this.config = config;
|
|
11
|
-
this.indexFilePath = sd_core_node_1.PathUtil.posix(this.rootPath, "src/index.ts");
|
|
12
|
-
}
|
|
13
|
-
async generateAsync() {
|
|
14
|
-
const importTexts = [];
|
|
15
|
-
if (this.config.polyfills) {
|
|
16
|
-
for (const polyfill of this.config.polyfills) {
|
|
17
|
-
importTexts.push(`import "${polyfill}";`);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
const filePaths = await this._getFilePathsAsync();
|
|
21
|
-
for (const filePath of filePaths) {
|
|
22
|
-
const requirePath = sd_core_node_1.PathUtil.posix(path.relative(path.dirname(this.indexFilePath), filePath))
|
|
23
|
-
.replace(/\.ts$/, "")
|
|
24
|
-
.replace(/\/index$/, "");
|
|
25
|
-
const sourceTsFileContent = await sd_core_node_1.FsUtil.readFileAsync(filePath);
|
|
26
|
-
if (sourceTsFileContent.split("\n").some((line) => line.startsWith("export "))) {
|
|
27
|
-
importTexts.push(`export * from "./${requirePath}";`);
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
importTexts.push(`import "./${requirePath}";`);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
let changed = false;
|
|
34
|
-
const content = importTexts.join(os.EOL) + os.EOL;
|
|
35
|
-
const prevContent = sd_core_node_1.FsUtil.exists(this.indexFilePath) ? sd_core_node_1.FsUtil.readFile(this.indexFilePath) : undefined;
|
|
36
|
-
if (content !== prevContent) {
|
|
37
|
-
await sd_core_node_1.FsUtil.writeFileAsync(this.indexFilePath, content);
|
|
38
|
-
changed = true;
|
|
39
|
-
}
|
|
40
|
-
return { result: [], changed };
|
|
41
|
-
}
|
|
42
|
-
async _getFilePathsAsync() {
|
|
43
|
-
const tsconfig = await sd_core_node_1.FsUtil.readJsonAsync(path.resolve(this.rootPath, "tsconfig.json"));
|
|
44
|
-
const entryFilePaths = tsconfig.files?.map((item) => path.resolve(this.rootPath, item)) ?? [];
|
|
45
|
-
return (await sd_core_node_1.FsUtil.globAsync(path.resolve(this.rootPath, "src/**/*.ts"), { nodir: true }))
|
|
46
|
-
.filter((item) => (!entryFilePaths.includes(item)
|
|
47
|
-
&& item !== this.indexFilePath));
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.SdCliIndexFileGenerator = SdCliIndexFileGenerator;
|
|
51
|
-
//# sourceMappingURL=SdCliIndexFileGenerator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SdCliIndexFileGenerator.js","sourceRoot":"","sources":["../../src/build-tools/SdCliIndexFileGenerator.ts"],"names":[],"mappings":"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"}
|