@tsed/cli 5.3.1 → 6.0.0-alpha.2

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 (200) hide show
  1. package/lib/esm/Cli.js +10 -11
  2. package/lib/esm/Cli.js.map +1 -1
  3. package/lib/esm/bin/tsed.js.map +1 -1
  4. package/lib/esm/commands/add/AddCmd.js +1 -4
  5. package/lib/esm/commands/add/AddCmd.js.map +1 -1
  6. package/lib/esm/commands/generate/GenerateCmd.js +4 -10
  7. package/lib/esm/commands/generate/GenerateCmd.js.map +1 -1
  8. package/lib/esm/commands/index.js +3 -3
  9. package/lib/esm/commands/index.js.map +1 -1
  10. package/lib/esm/commands/init/InitCmd.js +14 -27
  11. package/lib/esm/commands/init/InitCmd.js.map +1 -1
  12. package/lib/esm/commands/init/config/FeaturesPrompt.js +7 -18
  13. package/lib/esm/commands/init/config/FeaturesPrompt.js.map +1 -1
  14. package/lib/esm/commands/init/config/InitFileSchema.js +1 -1
  15. package/lib/esm/commands/init/config/InitFileSchema.js.map +1 -1
  16. package/lib/esm/commands/init/mappers/mapToContext.js.map +1 -1
  17. package/lib/esm/commands/init/prompts/getFeaturesPrompt.js.map +1 -1
  18. package/lib/esm/commands/run/RunCmd.js +5 -24
  19. package/lib/esm/commands/run/RunCmd.js.map +1 -1
  20. package/lib/esm/commands/update/UpdateCmd.js +1 -6
  21. package/lib/esm/commands/update/UpdateCmd.js.map +1 -1
  22. package/lib/esm/constants/index.js +2 -4
  23. package/lib/esm/constants/index.js.map +1 -1
  24. package/lib/esm/index.js +8 -8
  25. package/lib/esm/index.js.map +1 -1
  26. package/lib/esm/interfaces/ArchitectureConvention.js +1 -1
  27. package/lib/esm/interfaces/ArchitectureConvention.js.map +1 -1
  28. package/lib/esm/interfaces/PlatformType.js +1 -1
  29. package/lib/esm/interfaces/PlatformType.js.map +1 -1
  30. package/lib/esm/interfaces/ProjectConvention.js +1 -1
  31. package/lib/esm/interfaces/ProjectConvention.js.map +1 -1
  32. package/lib/esm/interfaces/index.js +2 -2
  33. package/lib/esm/interfaces/index.js.map +1 -1
  34. package/lib/esm/pipes/ClassNamePipe.js +1 -3
  35. package/lib/esm/pipes/ClassNamePipe.js.map +1 -1
  36. package/lib/esm/pipes/OutputFilePathPipe.js +1 -4
  37. package/lib/esm/pipes/OutputFilePathPipe.js.map +1 -1
  38. package/lib/esm/pipes/index.js.map +1 -1
  39. package/lib/esm/platforms/InitPlatformsModule.js +1 -2
  40. package/lib/esm/platforms/InitPlatformsModule.js.map +1 -1
  41. package/lib/esm/platforms/supports/InitExpressPlatform.js +3 -1
  42. package/lib/esm/platforms/supports/InitExpressPlatform.js.map +1 -1
  43. package/lib/esm/platforms/supports/InitKoaPlatform.js +3 -1
  44. package/lib/esm/platforms/supports/InitKoaPlatform.js.map +1 -1
  45. package/lib/esm/runtimes/RuntimesModule.js +4 -8
  46. package/lib/esm/runtimes/RuntimesModule.js.map +1 -1
  47. package/lib/esm/runtimes/index.js +0 -1
  48. package/lib/esm/runtimes/index.js.map +1 -1
  49. package/lib/esm/runtimes/supports/BabelRuntime.js +11 -4
  50. package/lib/esm/runtimes/supports/BabelRuntime.js.map +1 -1
  51. package/lib/esm/runtimes/supports/BaseRuntime.js +4 -4
  52. package/lib/esm/runtimes/supports/BaseRuntime.js.map +1 -1
  53. package/lib/esm/runtimes/supports/BunRuntime.js +12 -4
  54. package/lib/esm/runtimes/supports/BunRuntime.js.map +1 -1
  55. package/lib/esm/runtimes/supports/NodeRuntime.js +28 -14
  56. package/lib/esm/runtimes/supports/NodeRuntime.js.map +1 -1
  57. package/lib/esm/runtimes/supports/WebpackRuntime.js +7 -3
  58. package/lib/esm/runtimes/supports/WebpackRuntime.js.map +1 -1
  59. package/lib/esm/services/ProvidersInfoService.js +3 -1
  60. package/lib/esm/services/ProvidersInfoService.js.map +1 -1
  61. package/lib/esm/utils/fillImports.js +12 -12
  62. package/lib/esm/utils/fillImports.js.map +1 -1
  63. package/lib/tsconfig.esm.tsbuildinfo +1 -1
  64. package/lib/types/Cli.d.ts +2 -2
  65. package/lib/types/commands/generate/GenerateCmd.d.ts +5 -5
  66. package/lib/types/commands/index.d.ts +6 -6
  67. package/lib/types/commands/init/InitCmd.d.ts +5 -5
  68. package/lib/types/commands/init/config/FeaturesPrompt.d.ts +1 -2
  69. package/lib/types/commands/init/config/InitFileSchema.d.ts +2 -2
  70. package/lib/types/commands/init/interfaces/InitCmdContext.d.ts +1 -1
  71. package/lib/types/commands/init/interfaces/InitOptions.d.ts +4 -4
  72. package/lib/types/commands/init/interfaces/InitPromptAnswers.d.ts +1 -1
  73. package/lib/types/commands/init/mappers/mapToContext.d.ts +1 -1
  74. package/lib/types/commands/init/mappers/mapUniqFeatures.d.ts +2 -2
  75. package/lib/types/commands/init/prompts/getFeaturesPrompt.d.ts +1 -1
  76. package/lib/types/commands/run/RunCmd.d.ts +0 -1
  77. package/lib/types/index.d.ts +15 -15
  78. package/lib/types/interfaces/index.d.ts +3 -3
  79. package/lib/types/pipes/ClassNamePipe.d.ts +2 -2
  80. package/lib/types/pipes/OutputFilePathPipe.d.ts +3 -3
  81. package/lib/types/pipes/index.d.ts +3 -3
  82. package/lib/types/platforms/InitPlatformsModule.d.ts +1 -1
  83. package/lib/types/platforms/supports/InitExpressPlatform.d.ts +1 -1
  84. package/lib/types/platforms/supports/InitKoaPlatform.d.ts +1 -1
  85. package/lib/types/runtimes/RuntimesModule.d.ts +1 -1
  86. package/lib/types/runtimes/index.d.ts +6 -7
  87. package/lib/types/runtimes/supports/BabelRuntime.d.ts +3 -1
  88. package/lib/types/runtimes/supports/BunRuntime.d.ts +2 -1
  89. package/lib/types/runtimes/supports/NodeRuntime.d.ts +6 -4
  90. package/lib/types/runtimes/supports/WebpackRuntime.d.ts +2 -1
  91. package/package.json +25 -22
  92. package/templates/init/{.barrelsby.json.hbs → .barrels.json.hbs} +3 -3
  93. package/templates/init/README.md.hbs +6 -6
  94. package/templates/init/docker/npm/Dockerfile.hbs +1 -1
  95. package/templates/init/docker/pnpm/Dockerfile.hbs +1 -1
  96. package/templates/init/docker/yarn/Dockerfile.hbs +1 -1
  97. package/templates/init/docker/yarn_berry/Dockerfile.hbs +1 -1
  98. package/templates/init/nodemon.json.hbs +9 -0
  99. package/templates/init/src/bin/index.ts.hbs +2 -2
  100. package/templates/init/src/config/index.ts.hbs +4 -4
  101. package/templates/init/src/index.ts.hbs +1 -1
  102. package/templates/init/tsconfig.base.json.hbs +29 -0
  103. package/templates/init/tsconfig.json.hbs +11 -35
  104. package/templates/init/tsconfig.node.json.hbs +20 -0
  105. package/templates/init/tsconfig.spec.json.hbs +24 -0
  106. package/lib/cjs/Cli.js +0 -75
  107. package/lib/cjs/Cli.js.map +0 -1
  108. package/lib/cjs/bin/tsed.js +0 -9
  109. package/lib/cjs/bin/tsed.js.map +0 -1
  110. package/lib/cjs/commands/add/AddCmd.js +0 -68
  111. package/lib/cjs/commands/add/AddCmd.js.map +0 -1
  112. package/lib/cjs/commands/generate/GenerateCmd.js +0 -263
  113. package/lib/cjs/commands/generate/GenerateCmd.js.map +0 -1
  114. package/lib/cjs/commands/generate/ProviderTypes.js +0 -107
  115. package/lib/cjs/commands/generate/ProviderTypes.js.map +0 -1
  116. package/lib/cjs/commands/index.js +0 -9
  117. package/lib/cjs/commands/index.js.map +0 -1
  118. package/lib/cjs/commands/init/InitCmd.js +0 -439
  119. package/lib/cjs/commands/init/InitCmd.js.map +0 -1
  120. package/lib/cjs/commands/init/config/FeaturesPrompt.js +0 -398
  121. package/lib/cjs/commands/init/config/FeaturesPrompt.js.map +0 -1
  122. package/lib/cjs/commands/init/config/InitFileSchema.js +0 -53
  123. package/lib/cjs/commands/init/config/InitFileSchema.js.map +0 -1
  124. package/lib/cjs/commands/init/interfaces/InitCmdContext.js +0 -3
  125. package/lib/cjs/commands/init/interfaces/InitCmdContext.js.map +0 -1
  126. package/lib/cjs/commands/init/interfaces/InitOptions.js +0 -3
  127. package/lib/cjs/commands/init/interfaces/InitOptions.js.map +0 -1
  128. package/lib/cjs/commands/init/interfaces/InitPromptAnswers.js +0 -3
  129. package/lib/cjs/commands/init/interfaces/InitPromptAnswers.js.map +0 -1
  130. package/lib/cjs/commands/init/mappers/mapToContext.js +0 -16
  131. package/lib/cjs/commands/init/mappers/mapToContext.js.map +0 -1
  132. package/lib/cjs/commands/init/mappers/mapUniqFeatures.js +0 -18
  133. package/lib/cjs/commands/init/mappers/mapUniqFeatures.js.map +0 -1
  134. package/lib/cjs/commands/init/prompts/getFeaturesPrompt.js +0 -25
  135. package/lib/cjs/commands/init/prompts/getFeaturesPrompt.js.map +0 -1
  136. package/lib/cjs/commands/init/utils/hasFeature.js +0 -13
  137. package/lib/cjs/commands/init/utils/hasFeature.js.map +0 -1
  138. package/lib/cjs/commands/init/utils/isPlatform.js +0 -8
  139. package/lib/cjs/commands/init/utils/isPlatform.js.map +0 -1
  140. package/lib/cjs/commands/run/RunCmd.js +0 -71
  141. package/lib/cjs/commands/run/RunCmd.js.map +0 -1
  142. package/lib/cjs/commands/update/UpdateCmd.js +0 -128
  143. package/lib/cjs/commands/update/UpdateCmd.js.map +0 -1
  144. package/lib/cjs/constants/index.js +0 -16
  145. package/lib/cjs/constants/index.js.map +0 -1
  146. package/lib/cjs/index.js +0 -19
  147. package/lib/cjs/index.js.map +0 -1
  148. package/lib/cjs/interfaces/ArchitectureConvention.js +0 -9
  149. package/lib/cjs/interfaces/ArchitectureConvention.js.map +0 -1
  150. package/lib/cjs/interfaces/PlatformType.js +0 -9
  151. package/lib/cjs/interfaces/PlatformType.js.map +0 -1
  152. package/lib/cjs/interfaces/ProjectConvention.js +0 -9
  153. package/lib/cjs/interfaces/ProjectConvention.js.map +0 -1
  154. package/lib/cjs/interfaces/index.js +0 -7
  155. package/lib/cjs/interfaces/index.js.map +0 -1
  156. package/lib/cjs/package.json +0 -3
  157. package/lib/cjs/pipes/ClassNamePipe.js +0 -46
  158. package/lib/cjs/pipes/ClassNamePipe.js.map +0 -1
  159. package/lib/cjs/pipes/OutputFilePathPipe.js +0 -41
  160. package/lib/cjs/pipes/OutputFilePathPipe.js.map +0 -1
  161. package/lib/cjs/pipes/RoutePipe.js +0 -26
  162. package/lib/cjs/pipes/RoutePipe.js.map +0 -1
  163. package/lib/cjs/pipes/index.js +0 -7
  164. package/lib/cjs/pipes/index.js.map +0 -1
  165. package/lib/cjs/platforms/InitPlatformsModule.js +0 -26
  166. package/lib/cjs/platforms/InitPlatformsModule.js.map +0 -1
  167. package/lib/cjs/platforms/supports/InitBasePlatform.js +0 -3
  168. package/lib/cjs/platforms/supports/InitBasePlatform.js.map +0 -1
  169. package/lib/cjs/platforms/supports/InitExpressPlatform.js +0 -35
  170. package/lib/cjs/platforms/supports/InitExpressPlatform.js.map +0 -1
  171. package/lib/cjs/platforms/supports/InitKoaPlatform.js +0 -39
  172. package/lib/cjs/platforms/supports/InitKoaPlatform.js.map +0 -1
  173. package/lib/cjs/runtimes/RuntimesModule.js +0 -67
  174. package/lib/cjs/runtimes/RuntimesModule.js.map +0 -1
  175. package/lib/cjs/runtimes/index.js +0 -11
  176. package/lib/cjs/runtimes/index.js.map +0 -1
  177. package/lib/cjs/runtimes/supports/BabelRuntime.js +0 -41
  178. package/lib/cjs/runtimes/supports/BabelRuntime.js.map +0 -1
  179. package/lib/cjs/runtimes/supports/BaseRuntime.js +0 -45
  180. package/lib/cjs/runtimes/supports/BaseRuntime.js.map +0 -1
  181. package/lib/cjs/runtimes/supports/BunRuntime.js +0 -27
  182. package/lib/cjs/runtimes/supports/BunRuntime.js.map +0 -1
  183. package/lib/cjs/runtimes/supports/NodeRuntime.js +0 -33
  184. package/lib/cjs/runtimes/supports/NodeRuntime.js.map +0 -1
  185. package/lib/cjs/runtimes/supports/SWCRuntime.js +0 -35
  186. package/lib/cjs/runtimes/supports/SWCRuntime.js.map +0 -1
  187. package/lib/cjs/runtimes/supports/WebpackRuntime.js +0 -35
  188. package/lib/cjs/runtimes/supports/WebpackRuntime.js.map +0 -1
  189. package/lib/cjs/services/ProvidersInfoService.js +0 -48
  190. package/lib/cjs/services/ProvidersInfoService.js.map +0 -1
  191. package/lib/cjs/utils/fillImports.js +0 -40
  192. package/lib/cjs/utils/fillImports.js.map +0 -1
  193. package/lib/esm/package.json +0 -3
  194. package/lib/esm/runtimes/supports/SWCRuntime.js +0 -32
  195. package/lib/esm/runtimes/supports/SWCRuntime.js.map +0 -1
  196. package/lib/tsconfig.tsbuildinfo +0 -1
  197. package/lib/types/runtimes/supports/SWCRuntime.d.ts +0 -9
  198. package/templates/init/.node-dev.json.hbs +0 -5
  199. package/templates/init/tsconfig.compile.json.hbs +0 -15
  200. /package/templates/init/{processes.config.js.hbs → processes.config.cjs.hbs} +0 -0
@@ -1,439 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InitCmd = void 0;
4
- const tslib_1 = require("tslib");
5
- const cli_core_1 = require("@tsed/cli-core");
6
- const change_case_1 = require("change-case");
7
- const path_1 = require("path");
8
- const constants_1 = require("../../constants");
9
- const ArchitectureConvention_1 = require("../../interfaces/ArchitectureConvention");
10
- const ProjectConvention_1 = require("../../interfaces/ProjectConvention");
11
- const OutputFilePathPipe_1 = require("../../pipes/OutputFilePathPipe");
12
- const InitFileSchema_1 = require("./config/InitFileSchema");
13
- const mapToContext_1 = require("./mappers/mapToContext");
14
- const FeaturesPrompt_1 = require("./config/FeaturesPrompt");
15
- const getFeaturesPrompt_1 = require("./prompts/getFeaturesPrompt");
16
- const interfaces_1 = require("../../interfaces");
17
- const fillImports_1 = require("../../utils/fillImports");
18
- const RuntimesModule_1 = require("../../runtimes/RuntimesModule");
19
- const NodeRuntime_1 = require("../../runtimes/supports/NodeRuntime");
20
- const BunRuntime_1 = require("../../runtimes/supports/BunRuntime");
21
- const InitPlatformsModule_1 = require("../../platforms/InitPlatformsModule");
22
- let InitCmd = class InitCmd {
23
- configuration;
24
- cliPlugins;
25
- packageJson;
26
- packageManagers;
27
- runtimes;
28
- platforms;
29
- cliPackageJson;
30
- cliService;
31
- cliLoadFile;
32
- rootRenderer;
33
- outputFilePathPipe;
34
- execa;
35
- fs;
36
- checkPrecondition(ctx) {
37
- const isValid = (types, value) => (value ? Object.values(types).includes(value) : true);
38
- if (!isValid(interfaces_1.PlatformType, ctx.platform)) {
39
- throw new Error(`Invalid selected platform: ${ctx.platform}. Possible values: ${Object.values(interfaces_1.PlatformType).join(", ")}.`);
40
- }
41
- if (!isValid(ArchitectureConvention_1.ArchitectureConvention, ctx.architecture)) {
42
- throw new Error(`Invalid selected architecture: ${ctx.architecture}. Possible values: ${Object.values(ArchitectureConvention_1.ArchitectureConvention).join(", ")}.`);
43
- }
44
- if (!isValid(ProjectConvention_1.ProjectConvention, ctx.convention)) {
45
- throw new Error(`Invalid selected convention: ${ctx.convention}. Possible values: ${Object.values(ProjectConvention_1.ProjectConvention).join(", ")}.`);
46
- }
47
- const runtimes = this.runtimes.list();
48
- if (!runtimes.includes(ctx.runtime)) {
49
- throw new Error(`Invalid selected runtime: ${ctx.runtime}. Possible values: ${runtimes.join(", ")}.`);
50
- }
51
- const managers = this.packageManagers.list();
52
- if (!managers.includes(ctx.packageManager)) {
53
- throw new Error(`Invalid selected package manager: ${ctx.packageManager}. Possible values: ${managers.join(", ")}.`);
54
- }
55
- if (ctx.features) {
56
- ctx.features.forEach((value) => {
57
- const feature = FeaturesPrompt_1.FeaturesMap[value.toLowerCase()];
58
- if (!feature) {
59
- throw new Error(`Invalid selected feature: ${value}. Possible values: ${Object.values(FeaturesPrompt_1.FeatureType).join(", ")}.`);
60
- }
61
- });
62
- }
63
- }
64
- async $beforePrompt(initialOptions) {
65
- if (initialOptions.file) {
66
- const file = (0, path_1.join)(this.packageJson.dir, initialOptions.file);
67
- return {
68
- ...initialOptions,
69
- ...(await this.cliLoadFile.loadFile(file, InitFileSchema_1.InitFileSchema))
70
- };
71
- }
72
- return initialOptions;
73
- }
74
- $prompt(initialOptions) {
75
- if (initialOptions.skipPrompt) {
76
- return [];
77
- }
78
- const packageManagers = this.packageManagers.list();
79
- const runtimes = this.runtimes.list();
80
- return [
81
- {
82
- type: "input",
83
- name: "projectName",
84
- message: "What is your project name",
85
- default: (0, change_case_1.paramCase)(initialOptions.root),
86
- when: initialOptions.root !== ".",
87
- transformer(input) {
88
- return (0, change_case_1.paramCase)(input);
89
- }
90
- },
91
- ...(0, getFeaturesPrompt_1.getFeaturesPrompt)(runtimes, packageManagers.filter((o) => o !== "bun"), initialOptions)
92
- ];
93
- }
94
- $mapContext(ctx) {
95
- this.resolveRootDir(ctx);
96
- ctx = (0, mapToContext_1.mapToContext)(ctx);
97
- this.runtimes.init(ctx);
98
- this.runtimes.list().forEach((key) => {
99
- ctx[key] = ctx.runtime === key;
100
- });
101
- this.packageManagers.list().forEach((key) => {
102
- ctx[key] = ctx.packageManager === key;
103
- });
104
- return (0, fillImports_1.fillImports)({
105
- ...ctx,
106
- entryServer: ctx.convention !== ProjectConvention_1.ProjectConvention.ANGULAR ? "Server" : "server",
107
- cliVersion: ctx.cliVersion || this.cliPackageJson.version,
108
- srcDir: this.configuration.project?.srcDir,
109
- platformSymbol: ctx.platform && (0, change_case_1.pascalCase)(`Platform ${ctx.platform}`)
110
- });
111
- }
112
- async $beforeExec(ctx) {
113
- this.fs.ensureDirSync(this.packageJson.dir);
114
- this.packageJson.name = ctx.projectName;
115
- ctx.packageManager && this.packageJson.setPreference("packageManager", ctx.packageManager);
116
- ctx.runtime && this.packageJson.setPreference("runtime", ctx.runtime);
117
- ctx.architecture && this.packageJson.setPreference("architecture", ctx.architecture);
118
- ctx.convention && this.packageJson.setPreference("convention", ctx.convention);
119
- ctx.GH_TOKEN && this.packageJson.setGhToken(ctx.GH_TOKEN);
120
- await (0, cli_core_1.createTasksRunner)([
121
- {
122
- title: "Write RC files",
123
- skip: () => !ctx.GH_TOKEN,
124
- task: () => this.rootRenderer.renderAll(["/init/.npmrc.hbs", "/init/.yarnrc.hbs"], ctx, {
125
- baseDir: "/init"
126
- })
127
- },
128
- {
129
- title: "Initialize package.json",
130
- task: async () => {
131
- await this.packageManagers.init(ctx);
132
- this.addScripts(ctx);
133
- this.addDependencies(ctx);
134
- this.addDevDependencies(ctx);
135
- this.addFeatures(ctx);
136
- }
137
- },
138
- {
139
- title: "Install plugins",
140
- task: (0, cli_core_1.createSubTasks)(() => this.packageManagers.install(ctx), { ...ctx, concurrent: false })
141
- },
142
- {
143
- title: "Load plugins",
144
- task: () => this.cliPlugins.loadPlugins()
145
- },
146
- {
147
- title: "Install plugins dependencies",
148
- task: (0, cli_core_1.createSubTasks)(() => this.cliPlugins.addPluginsDependencies(ctx), { ...ctx, concurrent: false })
149
- }
150
- ], ctx);
151
- }
152
- async $exec(ctx) {
153
- this.checkPrecondition(ctx);
154
- const subTasks = [
155
- ...(await this.cliService.getTasks("generate", {
156
- ...ctx,
157
- type: "server",
158
- name: "Server",
159
- route: "/rest"
160
- })),
161
- ...(await this.cliService.getTasks("generate", {
162
- type: "controller",
163
- route: "hello-world",
164
- name: "HelloWorld",
165
- directory: "rest"
166
- })),
167
- ...(ctx.commands
168
- ? await this.cliService.getTasks("generate", {
169
- type: "command",
170
- route: "hello",
171
- name: "hello"
172
- })
173
- : [])
174
- ];
175
- return [
176
- {
177
- title: "Generate project files",
178
- task: (0, cli_core_1.createSubTasks)([
179
- {
180
- title: "Root files",
181
- task: () => {
182
- return this.generateFiles(ctx);
183
- }
184
- },
185
- ...subTasks
186
- ], { ...ctx, concurrent: false })
187
- }
188
- ];
189
- }
190
- $afterPostInstall() {
191
- return [
192
- {
193
- title: "Generate barrels files",
194
- task: () => {
195
- return this.packageManagers.runScript("barrels", {
196
- ignoreError: true
197
- });
198
- }
199
- }
200
- ];
201
- }
202
- resolveRootDir(ctx) {
203
- const rootDirName = (0, change_case_1.paramCase)(ctx.projectName || (0, path_1.basename)(this.packageJson.dir));
204
- if (this.packageJson.dir.endsWith(rootDirName)) {
205
- ctx.projectName = ctx.projectName || rootDirName;
206
- ctx.root = ".";
207
- return;
208
- }
209
- ctx.projectName = ctx.projectName || rootDirName;
210
- if (ctx.root && ctx.root !== ".") {
211
- this.packageJson.dir = (0, path_1.join)(this.packageJson.dir, rootDirName);
212
- ctx.root = ".";
213
- }
214
- }
215
- addScripts(ctx) {
216
- this.packageJson.addScripts(this.runtimes.scripts(ctx));
217
- }
218
- addDependencies(ctx) {
219
- this.packageJson.addDependencies({
220
- "@tsed/common": ctx.tsedVersion,
221
- "@tsed/core": ctx.tsedVersion,
222
- "@tsed/di": ctx.tsedVersion,
223
- "@tsed/ajv": ctx.tsedVersion,
224
- "@tsed/exceptions": ctx.tsedVersion,
225
- "@tsed/schema": ctx.tsedVersion,
226
- "@tsed/json-mapper": ctx.tsedVersion,
227
- "@tsed/openspec": ctx.tsedVersion,
228
- "@tsed/platform-cache": ctx.tsedVersion,
229
- "@tsed/platform-exceptions": ctx.tsedVersion,
230
- "@tsed/platform-log-middleware": ctx.tsedVersion,
231
- "@tsed/platform-middlewares": ctx.tsedVersion,
232
- "@tsed/platform-params": ctx.tsedVersion,
233
- "@tsed/platform-response-filter": ctx.tsedVersion,
234
- "@tsed/platform-views": ctx.tsedVersion,
235
- "@tsed/logger": "latest",
236
- "@tsed/logger-file": "latest",
237
- "@tsed/engines": "latest",
238
- ajv: "latest",
239
- barrelsby: "latest",
240
- "cross-env": "latest",
241
- dotenv: "latest",
242
- "dotenv-expand": "latest",
243
- "dotenv-flow": "latest",
244
- ...this.runtimes.get().dependencies(),
245
- ...this.platforms.get(ctx.platform).dependencies(ctx)
246
- });
247
- }
248
- addDevDependencies(ctx) {
249
- this.packageJson.addDevDependencies({
250
- "@types/node": "latest",
251
- "@types/multer": "latest",
252
- tslib: "latest",
253
- typescript: "latest",
254
- ...this.runtimes.get().devDependencies(),
255
- ...this.platforms.get(ctx.platform).devDependencies(ctx)
256
- }, ctx);
257
- }
258
- addFeatures(ctx) {
259
- ctx.features.forEach((value) => {
260
- const feature = FeaturesPrompt_1.FeaturesMap[value.toLowerCase()];
261
- if (feature) {
262
- if (feature.dependencies) {
263
- this.packageJson.addDependencies(feature.dependencies, ctx);
264
- }
265
- if (feature.devDependencies) {
266
- this.packageJson.addDevDependencies(feature.devDependencies, ctx);
267
- }
268
- }
269
- });
270
- if (ctx.features.find((value) => value === FeaturesPrompt_1.FeatureType.GRAPHQL)) {
271
- this.packageJson.addDependencies({
272
- [`apollo-server-${ctx.platform}`]: "2.25.2"
273
- }, ctx);
274
- }
275
- }
276
- generateFiles(ctx) {
277
- const indexCtrlBaseName = (0, path_1.basename)(`${this.outputFilePathPipe.transform({
278
- name: "Index",
279
- type: "controller",
280
- format: ctx.convention
281
- })}.ts`);
282
- const runtime = this.runtimes.get();
283
- const packageManager = this.packageManagers.get();
284
- ctx = {
285
- ...ctx,
286
- node: runtime instanceof NodeRuntime_1.NodeRuntime,
287
- bun: runtime instanceof BunRuntime_1.BunRuntime
288
- };
289
- return this.rootRenderer.renderAll([
290
- ...runtime.files(),
291
- "/init/.dockerignore.hbs",
292
- "/init/.gitignore.hbs",
293
- "/init/.barrelsby.json.hbs",
294
- "/init/processes.config.js.hbs",
295
- "/init/docker-compose.yml.hbs",
296
- {
297
- path: `/init/docker/${packageManager.name}/Dockerfile.hbs`,
298
- output: `Dockerfile`,
299
- replaces: [`docker/${packageManager.name}`]
300
- },
301
- "/init/README.md.hbs",
302
- "/init/tsconfig.compile.json.hbs",
303
- "/init/tsconfig.json.hbs",
304
- "/init/src/index.ts.hbs",
305
- "/init/src/config/envs/index.ts.hbs",
306
- "/init/src/config/logger/index.ts.hbs",
307
- "/init/src/config/index.ts.hbs",
308
- ctx.commands && "/init/src/bin/index.ts.hbs",
309
- ctx.swagger && "/init/views/swagger.ejs.hbs",
310
- ctx.swagger && {
311
- path: "/init/src/controllers/pages/IndexController.ts.hbs",
312
- basename: indexCtrlBaseName,
313
- replaces: [ctx.architecture === ArchitectureConvention_1.ArchitectureConvention.FEATURE ? "controllers" : null]
314
- }
315
- ].filter(Boolean), ctx, {
316
- baseDir: "/init"
317
- });
318
- }
319
- };
320
- tslib_1.__decorate([
321
- (0, cli_core_1.Configuration)(),
322
- tslib_1.__metadata("design:type", Object)
323
- ], InitCmd.prototype, "configuration", void 0);
324
- tslib_1.__decorate([
325
- (0, cli_core_1.Inject)(),
326
- tslib_1.__metadata("design:type", cli_core_1.CliPlugins)
327
- ], InitCmd.prototype, "cliPlugins", void 0);
328
- tslib_1.__decorate([
329
- (0, cli_core_1.Inject)(),
330
- tslib_1.__metadata("design:type", cli_core_1.ProjectPackageJson)
331
- ], InitCmd.prototype, "packageJson", void 0);
332
- tslib_1.__decorate([
333
- (0, cli_core_1.Inject)(),
334
- tslib_1.__metadata("design:type", cli_core_1.PackageManagersModule)
335
- ], InitCmd.prototype, "packageManagers", void 0);
336
- tslib_1.__decorate([
337
- (0, cli_core_1.Inject)(),
338
- tslib_1.__metadata("design:type", RuntimesModule_1.RuntimesModule)
339
- ], InitCmd.prototype, "runtimes", void 0);
340
- tslib_1.__decorate([
341
- (0, cli_core_1.Inject)(),
342
- tslib_1.__metadata("design:type", InitPlatformsModule_1.InitPlatformsModule)
343
- ], InitCmd.prototype, "platforms", void 0);
344
- tslib_1.__decorate([
345
- (0, cli_core_1.CliPackageJson)(),
346
- tslib_1.__metadata("design:type", Object)
347
- ], InitCmd.prototype, "cliPackageJson", void 0);
348
- tslib_1.__decorate([
349
- (0, cli_core_1.Inject)(),
350
- tslib_1.__metadata("design:type", cli_core_1.CliService)
351
- ], InitCmd.prototype, "cliService", void 0);
352
- tslib_1.__decorate([
353
- (0, cli_core_1.Inject)(),
354
- tslib_1.__metadata("design:type", cli_core_1.CliLoadFile)
355
- ], InitCmd.prototype, "cliLoadFile", void 0);
356
- tslib_1.__decorate([
357
- (0, cli_core_1.Inject)(),
358
- tslib_1.__metadata("design:type", cli_core_1.RootRendererService)
359
- ], InitCmd.prototype, "rootRenderer", void 0);
360
- tslib_1.__decorate([
361
- (0, cli_core_1.Inject)(),
362
- tslib_1.__metadata("design:type", OutputFilePathPipe_1.OutputFilePathPipe)
363
- ], InitCmd.prototype, "outputFilePathPipe", void 0);
364
- tslib_1.__decorate([
365
- (0, cli_core_1.Inject)(),
366
- tslib_1.__metadata("design:type", cli_core_1.CliExeca)
367
- ], InitCmd.prototype, "execa", void 0);
368
- tslib_1.__decorate([
369
- (0, cli_core_1.Inject)(),
370
- tslib_1.__metadata("design:type", cli_core_1.CliFs)
371
- ], InitCmd.prototype, "fs", void 0);
372
- InitCmd = tslib_1.__decorate([
373
- (0, cli_core_1.Command)({
374
- name: "init",
375
- description: "Init a new Ts.ED project",
376
- args: {
377
- root: {
378
- type: String,
379
- defaultValue: ".",
380
- description: "Root directory to initialize the Ts.ED project"
381
- }
382
- },
383
- options: {
384
- "-n, --project-name <projectName>": {
385
- type: String,
386
- defaultValue: "",
387
- description: "Set the project name. By default, the project is the same as the name directory."
388
- },
389
- "-a, --arch <architecture>": {
390
- type: String,
391
- defaultValue: ArchitectureConvention_1.ArchitectureConvention.DEFAULT,
392
- description: `Set the default architecture convention (${ArchitectureConvention_1.ArchitectureConvention.DEFAULT} or ${ArchitectureConvention_1.ArchitectureConvention.FEATURE})`
393
- },
394
- "-c, --convention <convention>": {
395
- type: String,
396
- defaultValue: ProjectConvention_1.ProjectConvention.DEFAULT,
397
- description: `Set the default project convention (${ArchitectureConvention_1.ArchitectureConvention.DEFAULT} or ${ArchitectureConvention_1.ArchitectureConvention.FEATURE})`
398
- },
399
- "-p, --platform <platform>": {
400
- type: String,
401
- defaultValue: interfaces_1.PlatformType.EXPRESS,
402
- description: "Set the default platform for Ts.ED (express or koa)"
403
- },
404
- "--features <features...>": {
405
- type: Array,
406
- itemType: String,
407
- defaultValue: [],
408
- description: "List of the Ts.ED features."
409
- },
410
- "--runtime <runtime>": {
411
- itemType: String,
412
- defaultValue: "node",
413
- description: "The default runtime used to run the project"
414
- },
415
- "-m, --package-manager <packageManager>": {
416
- itemType: String,
417
- defaultValue: cli_core_1.PackageManager.YARN,
418
- description: "The default package manager to install the project"
419
- },
420
- "-t, --tsed-version <version>": {
421
- type: String,
422
- defaultValue: constants_1.DEFAULT_TSED_TAGS,
423
- description: "Use a specific version of Ts.ED (format: 5.x.x)."
424
- },
425
- "-f, --file <path>": {
426
- type: String,
427
- description: "Location of a file in which the features are defined."
428
- },
429
- "-s, --skip-prompt": {
430
- type: Boolean,
431
- defaultValue: false,
432
- description: "Skip the prompt."
433
- }
434
- },
435
- disableReadUpPkg: true
436
- })
437
- ], InitCmd);
438
- exports.InitCmd = InitCmd;
439
- //# sourceMappingURL=InitCmd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InitCmd.js","sourceRoot":"","sources":["../../../../src/commands/init/InitCmd.ts"],"names":[],"mappings":"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"}