@lakutata/cli 1.0.37 → 2.1.0-alpha.5

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 (234) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/README.md +6 -26
  3. package/dist/CLIApp.d.ts +3 -0
  4. package/dist/CLIApp.d.ts.map +1 -0
  5. package/dist/CLIApp.js +75 -0
  6. package/dist/controllers/CommandLineController.d.ts +20 -0
  7. package/dist/controllers/CommandLineController.d.ts.map +1 -0
  8. package/dist/controllers/CommandLineController.js +61 -0
  9. package/dist/lib/ProjectTypeConfig.d.ts +8 -0
  10. package/dist/lib/ProjectTypeConfig.d.ts.map +1 -0
  11. package/dist/lib/ProjectTypeConfig.js +17 -0
  12. package/dist/lib/SpecialChar.d.ts +9 -0
  13. package/dist/lib/SpecialChar.d.ts.map +1 -0
  14. package/dist/lib/SpecialChar.js +11 -0
  15. package/dist/lib/components/DeGitPuller.d.ts +19 -0
  16. package/dist/lib/components/DeGitPuller.d.ts.map +1 -0
  17. package/dist/lib/components/DeGitPuller.js +65 -0
  18. package/dist/lib/components/Spinner.d.ts +23 -0
  19. package/dist/lib/components/Spinner.d.ts.map +1 -0
  20. package/dist/lib/components/Spinner.js +61 -0
  21. package/dist/lib/providers/Creator.d.ts +38 -0
  22. package/dist/lib/providers/Creator.d.ts.map +1 -0
  23. package/dist/lib/providers/Creator.js +142 -0
  24. package/dist/lib/providers/Information.d.ts +91 -0
  25. package/dist/lib/providers/Information.d.ts.map +1 -0
  26. package/dist/lib/providers/Information.js +222 -0
  27. package/dist/options/CreateProjectOptions.d.ts +15 -0
  28. package/dist/options/CreateProjectOptions.d.ts.map +1 -0
  29. package/dist/options/CreateProjectOptions.js +86 -0
  30. package/dist/options/LakutataInfoOptions.d.ts +4 -0
  31. package/dist/options/LakutataInfoOptions.d.ts.map +1 -0
  32. package/dist/options/LakutataInfoOptions.js +7 -0
  33. package/package.json +31 -56
  34. package/tsconfig.json +3 -33
  35. package/.eslintrc.json +0 -47
  36. package/.idea/codeStyles/Project.xml +0 -18
  37. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  38. package/.idea/dbnavigator.xml +0 -457
  39. package/.idea/inspectionProfiles/Project_Default.xml +0 -10
  40. package/.idea/lakutata-cli.iml +0 -14
  41. package/.idea/modules.xml +0 -8
  42. package/.idea/vcs.xml +0 -6
  43. package/LICENSE +0 -21
  44. package/assets/lakutata-banner.png +0 -0
  45. package/assets/lakutata_logo.jpg +0 -0
  46. package/build/CLI.d.ts +0 -2
  47. package/build/CLI.js +0 -13
  48. package/build/CLI.js.map +0 -1
  49. package/build/Deploy.d.ts +0 -1
  50. package/build/Deploy.js +0 -129
  51. package/build/Deploy.js.map +0 -1
  52. package/build/constants/GitIgnore.d.ts +0 -1
  53. package/build/constants/GitIgnore.js +0 -157
  54. package/build/constants/GitIgnore.js.map +0 -1
  55. package/build/constants/LicenseList.d.ts +0 -4
  56. package/build/constants/LicenseList.js +0 -68
  57. package/build/constants/LicenseList.js.map +0 -1
  58. package/build/interfaces/IApplicationInfo.d.ts +0 -4
  59. package/build/interfaces/IApplicationInfo.js +0 -3
  60. package/build/interfaces/IApplicationInfo.js.map +0 -1
  61. package/build/interfaces/IComponentInfo.d.ts +0 -4
  62. package/build/interfaces/IComponentInfo.js +0 -3
  63. package/build/interfaces/IComponentInfo.js.map +0 -1
  64. package/build/interfaces/IGenerator.d.ts +0 -3
  65. package/build/interfaces/IGenerator.js +0 -3
  66. package/build/interfaces/IGenerator.js.map +0 -1
  67. package/build/interfaces/IModuleInfo.d.ts +0 -4
  68. package/build/interfaces/IModuleInfo.js +0 -3
  69. package/build/interfaces/IModuleInfo.js.map +0 -1
  70. package/build/interfaces/IPluginInfo.d.ts +0 -4
  71. package/build/interfaces/IPluginInfo.js +0 -3
  72. package/build/interfaces/IPluginInfo.js.map +0 -1
  73. package/build/interfaces/IPreparePackageConfigOptions.d.ts +0 -19
  74. package/build/interfaces/IPreparePackageConfigOptions.js +0 -3
  75. package/build/interfaces/IPreparePackageConfigOptions.js.map +0 -1
  76. package/build/interfaces/IProjectGeneratorOptions.d.ts +0 -16
  77. package/build/interfaces/IProjectGeneratorOptions.js +0 -3
  78. package/build/interfaces/IProjectGeneratorOptions.js.map +0 -1
  79. package/build/interfaces/IProjectInfo.d.ts +0 -14
  80. package/build/interfaces/IProjectInfo.js +0 -3
  81. package/build/interfaces/IProjectInfo.js.map +0 -1
  82. package/build/lib/LatestVersion.d.ts +0 -1
  83. package/build/lib/LatestVersion.js +0 -13
  84. package/build/lib/LatestVersion.js.map +0 -1
  85. package/build/lib/generators/application/ApplicationGenerator.d.ts +0 -18
  86. package/build/lib/generators/application/ApplicationGenerator.js +0 -84
  87. package/build/lib/generators/application/ApplicationGenerator.js.map +0 -1
  88. package/build/lib/generators/application/files/AppFile.d.ts +0 -8
  89. package/build/lib/generators/application/files/AppFile.js +0 -36
  90. package/build/lib/generators/application/files/AppFile.js.map +0 -1
  91. package/build/lib/generators/application/files/ConfigFile.d.ts +0 -9
  92. package/build/lib/generators/application/files/ConfigFile.js +0 -81
  93. package/build/lib/generators/application/files/ConfigFile.js.map +0 -1
  94. package/build/lib/generators/component/ComponentGenerator.d.ts +0 -17
  95. package/build/lib/generators/component/ComponentGenerator.js +0 -75
  96. package/build/lib/generators/component/ComponentGenerator.js.map +0 -1
  97. package/build/lib/generators/component/files/ComponentFile.d.ts +0 -8
  98. package/build/lib/generators/component/files/ComponentFile.js +0 -45
  99. package/build/lib/generators/component/files/ComponentFile.js.map +0 -1
  100. package/build/lib/generators/component/files/ComponentTestFile.d.ts +0 -8
  101. package/build/lib/generators/component/files/ComponentTestFile.js +0 -35
  102. package/build/lib/generators/component/files/ComponentTestFile.js.map +0 -1
  103. package/build/lib/generators/module/ModuleGenerator.d.ts +0 -17
  104. package/build/lib/generators/module/ModuleGenerator.js +0 -85
  105. package/build/lib/generators/module/ModuleGenerator.js.map +0 -1
  106. package/build/lib/generators/module/files/ModuleFile.d.ts +0 -8
  107. package/build/lib/generators/module/files/ModuleFile.js +0 -116
  108. package/build/lib/generators/module/files/ModuleFile.js.map +0 -1
  109. package/build/lib/generators/module/files/ModuleTestFile.d.ts +0 -8
  110. package/build/lib/generators/module/files/ModuleTestFile.js +0 -35
  111. package/build/lib/generators/module/files/ModuleTestFile.js.map +0 -1
  112. package/build/lib/generators/plugin/PluginGenerator.d.ts +0 -17
  113. package/build/lib/generators/plugin/PluginGenerator.js +0 -75
  114. package/build/lib/generators/plugin/PluginGenerator.js.map +0 -1
  115. package/build/lib/generators/plugin/files/PluginFile.d.ts +0 -8
  116. package/build/lib/generators/plugin/files/PluginFile.js +0 -50
  117. package/build/lib/generators/plugin/files/PluginFile.js.map +0 -1
  118. package/build/lib/generators/plugin/files/PluginTestFile.d.ts +0 -8
  119. package/build/lib/generators/plugin/files/PluginTestFile.js +0 -35
  120. package/build/lib/generators/plugin/files/PluginTestFile.js.map +0 -1
  121. package/build/lib/generators/project/ProjectGenerator.d.ts +0 -27
  122. package/build/lib/generators/project/ProjectGenerator.js +0 -157
  123. package/build/lib/generators/project/ProjectGenerator.js.map +0 -1
  124. package/build/lib/generators/project/ProjectSourceFile.d.ts +0 -5
  125. package/build/lib/generators/project/ProjectSourceFile.js +0 -7
  126. package/build/lib/generators/project/ProjectSourceFile.js.map +0 -1
  127. package/build/lib/generators/project/configs/ProjectEslintrcConfig.d.ts +0 -37
  128. package/build/lib/generators/project/configs/ProjectEslintrcConfig.js +0 -51
  129. package/build/lib/generators/project/configs/ProjectEslintrcConfig.js.map +0 -1
  130. package/build/lib/generators/project/configs/ProjectPackageConfig.d.ts +0 -1
  131. package/build/lib/generators/project/configs/ProjectPackageConfig.js +0 -32
  132. package/build/lib/generators/project/configs/ProjectPackageConfig.js.map +0 -1
  133. package/build/lib/generators/project/configs/ProjectTypescriptConfig.d.ts +0 -25
  134. package/build/lib/generators/project/configs/ProjectTypescriptConfig.js +0 -39
  135. package/build/lib/generators/project/configs/ProjectTypescriptConfig.js.map +0 -1
  136. package/build/lib/manipulators/CreateComponentManipulator.d.ts +0 -3
  137. package/build/lib/manipulators/CreateComponentManipulator.js +0 -71
  138. package/build/lib/manipulators/CreateComponentManipulator.js.map +0 -1
  139. package/build/lib/manipulators/CreateDockerFileManipulator.d.ts +0 -3
  140. package/build/lib/manipulators/CreateDockerFileManipulator.js +0 -124
  141. package/build/lib/manipulators/CreateDockerFileManipulator.js.map +0 -1
  142. package/build/lib/manipulators/CreateModuleManipulator.d.ts +0 -3
  143. package/build/lib/manipulators/CreateModuleManipulator.js +0 -142
  144. package/build/lib/manipulators/CreateModuleManipulator.js.map +0 -1
  145. package/build/lib/manipulators/CreatePluginManipulator.d.ts +0 -3
  146. package/build/lib/manipulators/CreatePluginManipulator.js +0 -76
  147. package/build/lib/manipulators/CreatePluginManipulator.js.map +0 -1
  148. package/build/lib/manipulators/CreateProcessManipulator.d.ts +0 -3
  149. package/build/lib/manipulators/CreateProcessManipulator.js +0 -61
  150. package/build/lib/manipulators/CreateProcessManipulator.js.map +0 -1
  151. package/build/lib/manipulators/CreateThreadManipulator.d.ts +0 -3
  152. package/build/lib/manipulators/CreateThreadManipulator.js +0 -61
  153. package/build/lib/manipulators/CreateThreadManipulator.js.map +0 -1
  154. package/build/lib/manipulators/application/ApplicationIndexManipulator.d.ts +0 -1
  155. package/build/lib/manipulators/application/ApplicationIndexManipulator.js +0 -162
  156. package/build/lib/manipulators/application/ApplicationIndexManipulator.js.map +0 -1
  157. package/build/lib/menus/MainMenu.d.ts +0 -1
  158. package/build/lib/menus/MainMenu.js +0 -160
  159. package/build/lib/menus/MainMenu.js.map +0 -1
  160. package/build/lib/menus/initializeMenus/InitializeApplicationProject.d.ts +0 -1
  161. package/build/lib/menus/initializeMenus/InitializeApplicationProject.js +0 -93
  162. package/build/lib/menus/initializeMenus/InitializeApplicationProject.js.map +0 -1
  163. package/build/lib/menus/initializeMenus/InitializeComponentProject.d.ts +0 -1
  164. package/build/lib/menus/initializeMenus/InitializeComponentProject.js +0 -93
  165. package/build/lib/menus/initializeMenus/InitializeComponentProject.js.map +0 -1
  166. package/build/lib/menus/initializeMenus/InitializeModuleProject.d.ts +0 -1
  167. package/build/lib/menus/initializeMenus/InitializeModuleProject.js +0 -93
  168. package/build/lib/menus/initializeMenus/InitializeModuleProject.js.map +0 -1
  169. package/build/lib/menus/initializeMenus/InitializePluginProject.d.ts +0 -1
  170. package/build/lib/menus/initializeMenus/InitializePluginProject.js +0 -93
  171. package/build/lib/menus/initializeMenus/InitializePluginProject.js.map +0 -1
  172. package/build/lib/menus/manipulateMenus/ManipulateApplicationProject.d.ts +0 -1
  173. package/build/lib/menus/manipulateMenus/ManipulateApplicationProject.js +0 -60
  174. package/build/lib/menus/manipulateMenus/ManipulateApplicationProject.js.map +0 -1
  175. package/build/lib/menus/manipulateMenus/ManipulateComponentProject.d.ts +0 -1
  176. package/build/lib/menus/manipulateMenus/ManipulateComponentProject.js +0 -9
  177. package/build/lib/menus/manipulateMenus/ManipulateComponentProject.js.map +0 -1
  178. package/build/lib/menus/manipulateMenus/ManipulateModuleProject.d.ts +0 -1
  179. package/build/lib/menus/manipulateMenus/ManipulateModuleProject.js +0 -49
  180. package/build/lib/menus/manipulateMenus/ManipulateModuleProject.js.map +0 -1
  181. package/build/lib/menus/manipulateMenus/ManipulatePluginProject.d.ts +0 -1
  182. package/build/lib/menus/manipulateMenus/ManipulatePluginProject.js +0 -9
  183. package/build/lib/menus/manipulateMenus/ManipulatePluginProject.js.map +0 -1
  184. package/src/CLI.ts +0 -7
  185. package/src/Deploy.ts +0 -124
  186. package/src/constants/GitIgnore.ts +0 -153
  187. package/src/constants/LicenseList.ts +0 -64
  188. package/src/interfaces/IApplicationInfo.ts +0 -5
  189. package/src/interfaces/IComponentInfo.ts +0 -5
  190. package/src/interfaces/IGenerator.ts +0 -3
  191. package/src/interfaces/IModuleInfo.ts +0 -5
  192. package/src/interfaces/IPluginInfo.ts +0 -5
  193. package/src/interfaces/IPreparePackageConfigOptions.ts +0 -11
  194. package/src/interfaces/IProjectGeneratorOptions.ts +0 -15
  195. package/src/interfaces/IProjectInfo.ts +0 -10
  196. package/src/lib/LatestVersion.ts +0 -6
  197. package/src/lib/generators/application/ApplicationGenerator.ts +0 -97
  198. package/src/lib/generators/application/files/AppFile.ts +0 -35
  199. package/src/lib/generators/application/files/ConfigFile.ts +0 -82
  200. package/src/lib/generators/component/ComponentGenerator.ts +0 -87
  201. package/src/lib/generators/component/files/ComponentFile.ts +0 -45
  202. package/src/lib/generators/component/files/ComponentTestFile.ts +0 -36
  203. package/src/lib/generators/module/ModuleGenerator.ts +0 -97
  204. package/src/lib/generators/module/files/ModuleFile.ts +0 -116
  205. package/src/lib/generators/module/files/ModuleTestFile.ts +0 -36
  206. package/src/lib/generators/plugin/PluginGenerator.ts +0 -87
  207. package/src/lib/generators/plugin/files/PluginFile.ts +0 -50
  208. package/src/lib/generators/plugin/files/PluginTestFile.ts +0 -36
  209. package/src/lib/generators/project/ProjectGenerator.ts +0 -205
  210. package/src/lib/generators/project/ProjectSourceFile.ts +0 -7
  211. package/src/lib/generators/project/configs/ProjectEslintrcConfig.ts +0 -47
  212. package/src/lib/generators/project/configs/ProjectPackageConfig.ts +0 -28
  213. package/src/lib/generators/project/configs/ProjectTypescriptConfig.ts +0 -35
  214. package/src/lib/manipulators/CreateComponentManipulator.ts +0 -66
  215. package/src/lib/manipulators/CreateDockerFileManipulator.ts +0 -121
  216. package/src/lib/manipulators/CreateModuleManipulator.ts +0 -137
  217. package/src/lib/manipulators/CreatePluginManipulator.ts +0 -71
  218. package/src/lib/manipulators/CreateProcessManipulator.ts +0 -56
  219. package/src/lib/manipulators/CreateThreadManipulator.ts +0 -56
  220. package/src/lib/manipulators/application/ApplicationIndexManipulator.ts +0 -169
  221. package/src/lib/menus/MainMenu.ts +0 -148
  222. package/src/lib/menus/initializeMenus/InitializeApplicationProject.ts +0 -84
  223. package/src/lib/menus/initializeMenus/InitializeComponentProject.ts +0 -84
  224. package/src/lib/menus/initializeMenus/InitializeModuleProject.ts +0 -84
  225. package/src/lib/menus/initializeMenus/InitializePluginProject.ts +0 -84
  226. package/src/lib/menus/manipulateMenus/ManipulateApplicationProject.ts +0 -60
  227. package/src/lib/menus/manipulateMenus/ManipulateComponentProject.ts +0 -13
  228. package/src/lib/menus/manipulateMenus/ManipulateModuleProject.ts +0 -49
  229. package/src/lib/menus/manipulateMenus/ManipulatePluginProject.ts +0 -13
  230. package/src/tests/generators/GenerateApplication.spec.ts +0 -16
  231. package/src/tests/generators/GenerateComponent.spec.ts +0 -16
  232. package/src/tests/generators/GenerateModule.spec.ts +0 -16
  233. package/src/tests/generators/GeneratePlugin.spec.ts +0 -16
  234. package/typings.d.ts +0 -4
package/CHANGELOG.md ADDED
@@ -0,0 +1,63 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
+
6
+ # [2.1.0-alpha.5](https://github.com/lakutata/lakutata-packages/compare/@lakutata/cli@2.1.0-alpha.4...@lakutata/cli@2.1.0-alpha.5) (2024-04-15)
7
+
8
+
9
+ ### Features
10
+
11
+ * **cli:** add clean, build, and rebuild scripts ([8d145cf](https://github.com/lakutata/lakutata-packages/commit/8d145cf70b753975c0e204b772074a2786887dbb))
12
+
13
+
14
+
15
+
16
+
17
+ # [2.1.0-alpha.4](https://github.com/lakutata/lakutata-packages/compare/@lakutata/cli@2.1.0-alpha.3...@lakutata/cli@2.1.0-alpha.4) (2024-04-15)
18
+
19
+ **Note:** Version bump only for package @lakutata/cli
20
+
21
+
22
+
23
+
24
+
25
+ # [2.1.0-alpha.3](https://github.com/lakutata/lakutata-packages/compare/@lakutata/cli@2.1.0-alpha.2...@lakutata/cli@2.1.0-alpha.3) (2024-04-15)
26
+
27
+
28
+ ### Features
29
+
30
+ * Update Spinner.ts to use arrow function in setInterval ([ec3df2e](https://github.com/lakutata/lakutata-packages/commit/ec3df2e26ced10af012ed9cf6e50e108ac8205cc))
31
+
32
+
33
+
34
+
35
+
36
+ # [2.1.0-alpha.2](https://github.com/lakutata/lakutata-packages/compare/@lakutata/cli@2.1.0-alpha.1...@lakutata/cli@2.1.0-alpha.2) (2024-04-15)
37
+
38
+
39
+ ### Features
40
+
41
+ * Update Spinner component ([fad870c](https://github.com/lakutata/lakutata-packages/commit/fad870cbcd912340c8eb9ae50286c805ca4079dd))
42
+
43
+
44
+
45
+
46
+
47
+ # [2.1.0-alpha.1](https://github.com/lakutata/lakutata-packages/compare/@lakutata/cli@2.1.0-alpha.0...@lakutata/cli@2.1.0-alpha.1) (2024-04-15)
48
+
49
+
50
+ ### Features
51
+
52
+ * Implement log-update in Spinner component ([ceaf657](https://github.com/lakutata/lakutata-packages/commit/ceaf6570770fce60c0fda4a46957994350f3965b))
53
+
54
+
55
+
56
+
57
+
58
+ # [2.1.0-alpha.0](https://github.com/lakutata/lakutata-packages/compare/@lakutata/cli@2.0.1-alpha.0...@lakutata/cli@2.1.0-alpha.0) (2024-04-15)
59
+
60
+
61
+ ### Features
62
+
63
+ * **cli:** add create and info command ([670a1fc](https://github.com/lakutata/lakutata-packages/commit/670a1fcfbd38f39e6395647ffacb3867011882d7))
package/README.md CHANGED
@@ -1,31 +1,11 @@
1
- <div style="text-align:center">
2
- <img src="https://gitee.com/nnxr/lakutata-cli/raw/master/assets/lakutata-banner.png" />
3
- </div>
1
+ # `@lakutata/cli`
4
2
 
5
- [![NPM Version](https://img.shields.io/npm/v/@lakutata/cli?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata/cli)
6
- [![NODE Version](https://img.shields.io/node/v/@lakutata/cli?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata/cli)
7
- [![Known Vulnerabilities](https://snyk.io/test/npm/@lakutata/cli/badge.svg?style=flat-square)](https://snyk.io/test/npm/@lakutata/cli)
8
- [![NPM Download](https://img.shields.io/npm/dm/@lakutata/cli?style=flat-square)](https://npmjs.org/package/@lakutata/cli)
3
+ > TODO: description
9
4
 
10
- ## Install
5
+ ## Usage
11
6
 
12
- npm install -g @lakutata/cli
13
-
14
- ## Quickstart
15
-
16
- Follow the commands listed below.
17
-
18
- ```bash
19
- $ cd target-directory
20
- $ lakutata
21
7
  ```
8
+ const cli = require('@lakutata/cli');
22
9
 
23
- > Node.js >= 12.22.1 required.
24
-
25
- ## How to Contribute
26
-
27
- Please let us know how can we help. Do check out [issues](https://gitee.com/nnxr/lakutata-cli/issues) for bug reports or suggestions first.
28
-
29
- ## License
30
-
31
- [MIT](LICENSE)
10
+ // TODO: DEMONSTRATE API
11
+ ```
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=CLIApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CLIApp.d.ts","sourceRoot":"","sources":["../src/CLIApp.ts"],"names":[],"mappings":""}
package/dist/CLIApp.js ADDED
@@ -0,0 +1,75 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const commander_1 = require("commander");
5
+ const CommandLineController_1 = require("./controllers/CommandLineController");
6
+ const Information_1 = require("./lib/providers/Information");
7
+ const package_json_1 = require("lakutata/package.json");
8
+ const Creator_1 = require("./lib/providers/Creator");
9
+ const DeGitPuller_1 = require("./lib/components/DeGitPuller");
10
+ const Spinner_1 = require("./lib/components/Spinner");
11
+ const cli_spinners_1 = require("cli-spinners");
12
+ const lakutata_1 = require("lakutata");
13
+ const entrypoint_1 = require("lakutata/com/entrypoint");
14
+ lakutata_1.Application.run(async () => ({
15
+ id: 'cli.lakutata.app',
16
+ name: 'Lakutata-CLI',
17
+ components: {
18
+ puller: {
19
+ class: DeGitPuller_1.DeGitPuller,
20
+ cache: false,
21
+ verbose: true,
22
+ force: true,
23
+ repo: 'lakutata/lakutata-template'
24
+ },
25
+ spinner: {
26
+ class: Spinner_1.Spinner,
27
+ style: cli_spinners_1.dots
28
+ },
29
+ entrypoint: (0, entrypoint_1.BuildEntrypoints)({
30
+ cli: (0, entrypoint_1.BuildCLIEntrypoint)((module, cliMap, handler, registerDestroy) => {
31
+ const CLIProgram = new commander_1.Command();
32
+ cliMap.forEach((dtoJsonSchema, command) => {
33
+ const cmd = new commander_1.Command(command).description(dtoJsonSchema.description);
34
+ for (const property in dtoJsonSchema.properties) {
35
+ const attr = dtoJsonSchema.properties[property];
36
+ const optionsArgs = [`--${property} <${attr.type}>`, attr.description];
37
+ if (Array.isArray(dtoJsonSchema.required) && dtoJsonSchema.required.includes(property)) {
38
+ optionsArgs[1] = `(required) ${optionsArgs[1]}`;
39
+ cmd.requiredOption(...optionsArgs);
40
+ }
41
+ else {
42
+ cmd.option(...optionsArgs);
43
+ }
44
+ }
45
+ cmd.action(async (args) => await handler(new entrypoint_1.CLIContext({
46
+ command: command,
47
+ data: args
48
+ })));
49
+ CLIProgram.addCommand(cmd);
50
+ });
51
+ CLIProgram.parse();
52
+ })
53
+ })
54
+ },
55
+ providers: {
56
+ creator: {
57
+ class: Creator_1.Creator
58
+ },
59
+ info: {
60
+ class: Information_1.Information,
61
+ name: package_json_1.name,
62
+ version: package_json_1.version,
63
+ description: package_json_1.description,
64
+ license: package_json_1.license,
65
+ currentDirectory: __dirname,
66
+ workingDirectory: process.cwd()
67
+ }
68
+ },
69
+ controllers: [CommandLineController_1.CommandLineController],
70
+ bootstrap: ['entrypoint']
71
+ }))
72
+ .onUncaughtException((error) => {
73
+ console.error(`error: ${error.message}`);
74
+ return process.exit(1);
75
+ });
@@ -0,0 +1,20 @@
1
+ import { CreateProjectOptions } from '../options/CreateProjectOptions';
2
+ import { LakutataInfoOptions } from '../options/LakutataInfoOptions';
3
+ import { Information } from '../lib/providers/Information';
4
+ import { Creator } from '../lib/providers/Creator';
5
+ import { type ActionPattern, Controller } from 'lakutata';
6
+ export declare class CommandLineController extends Controller {
7
+ protected readonly projectCreator: Creator;
8
+ protected readonly frameworkInfo: Information;
9
+ /**
10
+ * Create project
11
+ * @param inp
12
+ */
13
+ create(inp: ActionPattern<CreateProjectOptions>): Promise<void>;
14
+ /**
15
+ * Show framework info
16
+ * @param inp
17
+ */
18
+ info(inp: ActionPattern<LakutataInfoOptions>): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=CommandLineController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandLineController.d.ts","sourceRoot":"","sources":["../../src/controllers/CommandLineController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAC,mBAAmB,EAAC,MAAM,gCAAgC,CAAA;AAClE,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAC,OAAO,EAAC,MAAM,0BAA0B,CAAA;AAChD,OAAO,EAAC,KAAK,aAAa,EAAE,UAAU,EAAC,MAAM,UAAU,CAAA;AAIvD,qBAAa,qBAAsB,SAAQ,UAAU;IAGjD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAG1C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAA;IAE7C;;;OAGG;IAEU,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;;OAGG;IAEU,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAG5E"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CommandLineController = void 0;
13
+ const CreateProjectOptions_1 = require("../options/CreateProjectOptions");
14
+ const LakutataInfoOptions_1 = require("../options/LakutataInfoOptions");
15
+ const Information_1 = require("../lib/providers/Information");
16
+ const Creator_1 = require("../lib/providers/Creator");
17
+ const lakutata_1 = require("lakutata");
18
+ const di_1 = require("lakutata/decorator/di");
19
+ const ctrl_1 = require("lakutata/decorator/ctrl");
20
+ class CommandLineController extends lakutata_1.Controller {
21
+ /**
22
+ * Create project
23
+ * @param inp
24
+ */
25
+ async create(inp) {
26
+ await this.projectCreator.create(inp);
27
+ }
28
+ /**
29
+ * Show framework info
30
+ * @param inp
31
+ */
32
+ async info(inp) {
33
+ await this.frameworkInfo.print();
34
+ }
35
+ }
36
+ exports.CommandLineController = CommandLineController;
37
+ __decorate([
38
+ (0, di_1.Inject)('creator'),
39
+ __metadata("design:type", Creator_1.Creator)
40
+ ], CommandLineController.prototype, "projectCreator", void 0);
41
+ __decorate([
42
+ (0, di_1.Inject)('info'),
43
+ __metadata("design:type", Information_1.Information
44
+ /**
45
+ * Create project
46
+ * @param inp
47
+ */
48
+ )
49
+ ], CommandLineController.prototype, "frameworkInfo", void 0);
50
+ __decorate([
51
+ (0, ctrl_1.CLIAction)('create', CreateProjectOptions_1.CreateProjectOptions.description('create a Lakutata project')),
52
+ __metadata("design:type", Function),
53
+ __metadata("design:paramtypes", [Object]),
54
+ __metadata("design:returntype", Promise)
55
+ ], CommandLineController.prototype, "create", null);
56
+ __decorate([
57
+ (0, ctrl_1.CLIAction)('info', LakutataInfoOptions_1.LakutataInfoOptions.description('show Lakutata framework info')),
58
+ __metadata("design:type", Function),
59
+ __metadata("design:paramtypes", [Object]),
60
+ __metadata("design:returntype", Promise)
61
+ ], CommandLineController.prototype, "info", null);
@@ -0,0 +1,8 @@
1
+ interface ProjectTypeBranch {
2
+ [type: string]: {
3
+ branch: string;
4
+ };
5
+ }
6
+ export declare const ProjectTypeConfig: ProjectTypeBranch;
7
+ export {};
8
+ //# sourceMappingURL=ProjectTypeConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectTypeConfig.d.ts","sourceRoot":"","sources":["../../src/lib/ProjectTypeConfig.ts"],"names":[],"mappings":"AAAA,UAAU,iBAAiB;IACvB,CAAC,IAAI,EAAE,MAAM,GAAG;QACZ,MAAM,EAAE,MAAM,CAAA;KACjB,CAAA;CACJ;AAED,eAAO,MAAM,iBAAiB,EAAE,iBAa/B,CAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectTypeConfig = void 0;
4
+ exports.ProjectTypeConfig = {
5
+ plain: {
6
+ branch: 'main'
7
+ },
8
+ cli: {
9
+ branch: 'cli'
10
+ },
11
+ api: {
12
+ branch: 'api'
13
+ },
14
+ electron: {
15
+ branch: 'electron'
16
+ }
17
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * ✓
3
+ */
4
+ export declare const charCheck: string;
5
+ /**
6
+ * ✗
7
+ */
8
+ export declare const charCross: string;
9
+ //# sourceMappingURL=SpecialChar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpecialChar.d.ts","sourceRoot":"","sources":["../../src/lib/SpecialChar.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,MAAiB,CAAA;AACzC;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,MAAiB,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.charCross = exports.charCheck = void 0;
4
+ /**
5
+ * ✓
6
+ */
7
+ exports.charCheck = '\u2713';
8
+ /**
9
+ * ✗
10
+ */
11
+ exports.charCross = '\u2717';
@@ -0,0 +1,19 @@
1
+ import { Component } from 'lakutata';
2
+ export declare class DeGitPuller extends Component {
3
+ protected readonly cache: boolean;
4
+ protected readonly verbose: boolean;
5
+ protected readonly force: boolean;
6
+ protected readonly repo: string;
7
+ /**
8
+ * get git source
9
+ * @param branch
10
+ */
11
+ getGitSource(branch: string): string;
12
+ /**
13
+ * Exec pull
14
+ * @param branch
15
+ * @param localTarget
16
+ */
17
+ pull(branch: string, localTarget: string): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=DeGitPuller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeGitPuller.d.ts","sourceRoot":"","sources":["../../../src/lib/components/DeGitPuller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,SAAS,EAAM,MAAM,UAAU,CAAA;AAGvC,qBACa,WAAY,SAAQ,SAAS;IAGtC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAQ;IAGzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAO;IAG1C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAO;IAGxC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAE/B;;;OAGG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI3C;;;;OAIG;IACU,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAOxE"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DeGitPuller = void 0;
16
+ const degit_1 = __importDefault(require("degit"));
17
+ const di_1 = require("lakutata/decorator/di");
18
+ const lakutata_1 = require("lakutata");
19
+ let DeGitPuller = class DeGitPuller extends lakutata_1.Component {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.cache = false;
23
+ this.verbose = true;
24
+ this.force = true;
25
+ }
26
+ /**
27
+ * get git source
28
+ * @param branch
29
+ */
30
+ getGitSource(branch) {
31
+ return `${this.repo}#${branch}`;
32
+ }
33
+ /**
34
+ * Exec pull
35
+ * @param branch
36
+ * @param localTarget
37
+ */
38
+ async pull(branch, localTarget) {
39
+ await (0, degit_1.default)(this.getGitSource(branch), {
40
+ cache: this.cache,
41
+ verbose: this.verbose,
42
+ force: this.force
43
+ }).clone(localTarget);
44
+ }
45
+ };
46
+ exports.DeGitPuller = DeGitPuller;
47
+ __decorate([
48
+ (0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(false)),
49
+ __metadata("design:type", Boolean)
50
+ ], DeGitPuller.prototype, "cache", void 0);
51
+ __decorate([
52
+ (0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(true)),
53
+ __metadata("design:type", Boolean)
54
+ ], DeGitPuller.prototype, "verbose", void 0);
55
+ __decorate([
56
+ (0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(true)),
57
+ __metadata("design:type", Boolean)
58
+ ], DeGitPuller.prototype, "force", void 0);
59
+ __decorate([
60
+ (0, di_1.Configurable)(lakutata_1.DTO.String().required()),
61
+ __metadata("design:type", String)
62
+ ], DeGitPuller.prototype, "repo", void 0);
63
+ exports.DeGitPuller = DeGitPuller = __decorate([
64
+ (0, di_1.Singleton)()
65
+ ], DeGitPuller);
@@ -0,0 +1,23 @@
1
+ /// <reference types="node" />
2
+ import { type Spinner as CliSpinner } from 'cli-spinners';
3
+ import { Component } from 'lakutata';
4
+ export declare class Spinner extends Component {
5
+ protected readonly style: CliSpinner;
6
+ protected spinnerInterval: NodeJS.Timeout | null;
7
+ protected logUpdate: any;
8
+ /**
9
+ * Initializer
10
+ * @protected
11
+ */
12
+ protected init(): Promise<void>;
13
+ /**
14
+ * Start spinner
15
+ * @param description
16
+ */
17
+ start(description?: string | (() => string)): void;
18
+ /**
19
+ * Stop spinner
20
+ */
21
+ stop(): void;
22
+ }
23
+ //# sourceMappingURL=Spinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Spinner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,KAAK,OAAO,IAAI,UAAU,EAAO,MAAM,cAAc,CAAA;AAE7D,OAAO,EAAC,SAAS,EAAC,MAAM,UAAU,CAAA;AAGlC,qBACa,OAAQ,SAAQ,SAAS;IAGlC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAO;IAE3C,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAO;IAEvD,SAAS,CAAC,SAAS,EAAE,GAAG,CAAA;IAExB;;;OAGG;cACa,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC;;;OAGG;IACI,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI;IAUzD;;OAEG;IACI,IAAI,IAAI,IAAI;CAOtB"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Spinner = void 0;
13
+ const cli_spinners_1 = require("cli-spinners");
14
+ const di_1 = require("lakutata/decorator/di");
15
+ const lakutata_1 = require("lakutata");
16
+ const helper_1 = require("lakutata/helper");
17
+ let Spinner = class Spinner extends lakutata_1.Component {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.style = cli_spinners_1.dots;
21
+ this.spinnerInterval = null;
22
+ }
23
+ /**
24
+ * Initializer
25
+ * @protected
26
+ */
27
+ async init() {
28
+ this.logUpdate = (0, helper_1.As)(await import('log-update'));
29
+ }
30
+ /**
31
+ * Start spinner
32
+ * @param description
33
+ */
34
+ start(description) {
35
+ this.stop();
36
+ let i = 0;
37
+ this.spinnerInterval = setInterval(() => {
38
+ const { frames } = this.style;
39
+ const text = description ? `${frames[i = ++i % frames.length]} ${typeof description === 'function' ? description() : description}` : frames[i = ++i % frames.length];
40
+ this.logUpdate(text);
41
+ }, cli_spinners_1.dots.interval);
42
+ }
43
+ /**
44
+ * Stop spinner
45
+ */
46
+ stop() {
47
+ if (this.spinnerInterval) {
48
+ clearInterval(this.spinnerInterval);
49
+ this.spinnerInterval = null;
50
+ this.logUpdate.clear();
51
+ }
52
+ }
53
+ };
54
+ exports.Spinner = Spinner;
55
+ __decorate([
56
+ (0, di_1.Configurable)(),
57
+ __metadata("design:type", Object)
58
+ ], Spinner.prototype, "style", void 0);
59
+ exports.Spinner = Spinner = __decorate([
60
+ (0, di_1.Singleton)()
61
+ ], Spinner);
@@ -0,0 +1,38 @@
1
+ import { Information } from './Information.js';
2
+ import { DeGitPuller } from '../components/DeGitPuller.js';
3
+ import { Spinner } from '../components/Spinner.js';
4
+ import { CreateProjectOptions } from '../../options/CreateProjectOptions.js';
5
+ import { Application, Provider } from 'lakutata';
6
+ import { Logger } from 'lakutata/com/logger';
7
+ export declare class Creator extends Provider {
8
+ protected readonly app: Application;
9
+ protected readonly log: Logger;
10
+ protected readonly spinner: Spinner;
11
+ protected readonly puller: DeGitPuller;
12
+ protected readonly frameworkInfo: Information;
13
+ /**
14
+ * Check if the target path exists
15
+ * @param targetDirectory
16
+ * @param initOnly
17
+ * @protected
18
+ */
19
+ protected checkTargetPathExistence(targetDirectory: string, initOnly: boolean): Promise<void>;
20
+ /**
21
+ * Check target path is a valid directory
22
+ * @param targetDirectory
23
+ * @protected
24
+ */
25
+ protected checkTargetPathIsDirectory(targetDirectory: string): Promise<void>;
26
+ /**
27
+ * Check target directory is empty, if the target directory is not empty, throw error and exit
28
+ * @param targetDirectory
29
+ * @protected
30
+ */
31
+ protected checkTargetDirectoryIsEmpty(targetDirectory: string): Promise<void>;
32
+ /**
33
+ * Exec create
34
+ * @param options
35
+ */
36
+ create(options: CreateProjectOptions): Promise<void>;
37
+ }
38
+ //# sourceMappingURL=Creator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Creator.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/Creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAC,OAAO,EAAC,MAAM,0BAA0B,CAAA;AAChD,OAAO,EAAC,oBAAoB,EAAC,MAAM,uCAAuC,CAAA;AAM1E,OAAO,EAAC,WAAW,EAAE,QAAQ,EAAC,MAAM,UAAU,CAAA;AAE9C,OAAO,EAAC,MAAM,EAAC,MAAM,qBAAqB,CAAA;AAM1C,qBAAa,OAAQ,SAAQ,QAAQ;IAGjC,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAA;IAGnC,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IAG9B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IAGnC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAGtC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAA;IAE7C;;;;;OAKG;cACa,wBAAwB,CAAC,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnG;;;;OAIG;cACa,0BAA0B,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASlF;;;;OAIG;cACa,2BAA2B,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASnF;;;OAGG;IAEU,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;CAyCpE"}