@akylas/nativescript-cli 8.8.2 → 8.8.3

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 (275) hide show
  1. package/lib/android-tools-info.js +9 -20
  2. package/lib/base-package-manager.js +47 -64
  3. package/lib/bun-package-manager.js +65 -88
  4. package/lib/color.js +2 -2
  5. package/lib/commands/add-platform.js +14 -30
  6. package/lib/commands/apple-login.js +18 -29
  7. package/lib/commands/appstore-list.js +34 -45
  8. package/lib/commands/appstore-upload.js +55 -68
  9. package/lib/commands/build.js +57 -86
  10. package/lib/commands/clean.js +161 -176
  11. package/lib/commands/command-base.js +14 -27
  12. package/lib/commands/config.js +51 -70
  13. package/lib/commands/create-project.js +210 -229
  14. package/lib/commands/debug.js +66 -88
  15. package/lib/commands/deploy.js +28 -44
  16. package/lib/commands/embedding/embed.js +33 -52
  17. package/lib/commands/extensibility/install-extension.js +5 -16
  18. package/lib/commands/extensibility/list-extensions.js +13 -24
  19. package/lib/commands/extensibility/uninstall-extension.js +4 -15
  20. package/lib/commands/fonts.js +30 -41
  21. package/lib/commands/generate-assets.js +13 -28
  22. package/lib/commands/generate-help.js +2 -13
  23. package/lib/commands/generate.js +17 -26
  24. package/lib/commands/info.js +2 -13
  25. package/lib/commands/install.js +34 -49
  26. package/lib/commands/list-platforms.js +14 -25
  27. package/lib/commands/migrate.js +15 -26
  28. package/lib/commands/native-add.js +23 -46
  29. package/lib/commands/platform-clean.js +19 -32
  30. package/lib/commands/plugin/add-plugin.js +12 -25
  31. package/lib/commands/plugin/build-plugin.js +34 -39
  32. package/lib/commands/plugin/create-plugin.js +110 -133
  33. package/lib/commands/plugin/list-plugins.js +22 -33
  34. package/lib/commands/plugin/remove-plugin.js +20 -33
  35. package/lib/commands/plugin/update-plugin.js +20 -33
  36. package/lib/commands/post-install.js +20 -33
  37. package/lib/commands/prepare.js +19 -35
  38. package/lib/commands/preview.js +49 -62
  39. package/lib/commands/remove-platform.js +7 -18
  40. package/lib/commands/resources/resources-update.js +13 -26
  41. package/lib/commands/run.js +55 -76
  42. package/lib/commands/start.js +6 -19
  43. package/lib/commands/test-init.js +123 -134
  44. package/lib/commands/test.js +66 -89
  45. package/lib/commands/typings.js +126 -142
  46. package/lib/commands/update-platform.js +22 -35
  47. package/lib/commands/update.js +30 -43
  48. package/lib/common/child-process.js +53 -72
  49. package/lib/common/codeGeneration/code-entity.js +1 -1
  50. package/lib/common/codeGeneration/code-printer.js +1 -1
  51. package/lib/common/command-params.js +7 -18
  52. package/lib/common/commands/analytics.js +27 -40
  53. package/lib/common/commands/autocompletion.js +39 -56
  54. package/lib/common/commands/device/device-log-stream.js +12 -23
  55. package/lib/common/commands/device/get-file.js +22 -33
  56. package/lib/common/commands/device/list-applications.js +12 -23
  57. package/lib/common/commands/device/list-devices.js +72 -87
  58. package/lib/common/commands/device/list-files.js +23 -34
  59. package/lib/common/commands/device/put-file.js +22 -33
  60. package/lib/common/commands/device/run-application.js +12 -25
  61. package/lib/common/commands/device/stop-application.js +11 -22
  62. package/lib/common/commands/device/uninstall-application.js +6 -17
  63. package/lib/common/commands/generate-messages.js +17 -28
  64. package/lib/common/commands/help.js +20 -33
  65. package/lib/common/commands/package-manager-get.js +6 -17
  66. package/lib/common/commands/package-manager-set.js +9 -20
  67. package/lib/common/commands/post-install.js +2 -13
  68. package/lib/common/commands/preuninstall.js +23 -38
  69. package/lib/common/commands/proxy/proxy-base.js +8 -19
  70. package/lib/common/commands/proxy/proxy-clear.js +4 -15
  71. package/lib/common/commands/proxy/proxy-get.js +3 -14
  72. package/lib/common/commands/proxy/proxy-set.js +87 -100
  73. package/lib/common/constants.js +11 -11
  74. package/lib/common/decorators.js +10 -22
  75. package/lib/common/dispatchers.js +79 -96
  76. package/lib/common/errors.js +89 -104
  77. package/lib/common/file-system.js +106 -127
  78. package/lib/common/header.js +1 -2
  79. package/lib/common/helpers.js +149 -178
  80. package/lib/common/host-info.js +37 -50
  81. package/lib/common/http-client.js +93 -108
  82. package/lib/common/logger/appenders/cli-appender.js +1 -2
  83. package/lib/common/logger/appenders/emit-appender.js +1 -2
  84. package/lib/common/logger/layouts/cli-layout.js +1 -2
  85. package/lib/common/logger/logger.js +1 -1
  86. package/lib/common/mobile/android/android-application-manager.js +121 -142
  87. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -1
  88. package/lib/common/mobile/android/android-debug-bridge.js +87 -112
  89. package/lib/common/mobile/android/android-device-file-system.js +98 -131
  90. package/lib/common/mobile/android/android-device-hash-service.js +50 -75
  91. package/lib/common/mobile/android/android-device.js +74 -91
  92. package/lib/common/mobile/android/android-emulator-services.js +105 -130
  93. package/lib/common/mobile/android/android-log-filter.js +1 -1
  94. package/lib/common/mobile/android/android-virtual-device-service.js +76 -97
  95. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -29
  96. package/lib/common/mobile/android/genymotion/genymotion-service.js +91 -118
  97. package/lib/common/mobile/android/genymotion/virtualbox-service.js +64 -81
  98. package/lib/common/mobile/android/logcat-helper.js +108 -127
  99. package/lib/common/mobile/application-manager-base.js +84 -107
  100. package/lib/common/mobile/device-log-provider-base.js +7 -18
  101. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -108
  102. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -105
  103. package/lib/common/mobile/ios/device/ios-device-operations.js +105 -142
  104. package/lib/common/mobile/ios/device/ios-device.js +20 -36
  105. package/lib/common/mobile/ios/ios-device-base.js +58 -81
  106. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +63 -92
  107. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -1
  108. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +60 -89
  109. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +27 -43
  110. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -62
  111. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -35
  112. package/lib/common/mobile/mobile-core/android-device-discovery.js +43 -62
  113. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +21 -32
  114. package/lib/common/mobile/mobile-core/android-process-service.js +143 -182
  115. package/lib/common/mobile/mobile-core/device-discovery.js +2 -13
  116. package/lib/common/mobile/mobile-core/devices-service.js +385 -436
  117. package/lib/common/mobile/mobile-core/ios-device-discovery.js +24 -35
  118. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +47 -62
  119. package/lib/common/mobile/mobile-helper.js +15 -26
  120. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -52
  121. package/lib/common/opener.js +2 -2
  122. package/lib/common/plist-parser.js +2 -2
  123. package/lib/common/prompter.js +90 -105
  124. package/lib/common/queue.js +9 -20
  125. package/lib/common/services/auto-completion-service.js +39 -52
  126. package/lib/common/services/cancellation.js +17 -28
  127. package/lib/common/services/commands-service.js +146 -169
  128. package/lib/common/services/help-service.js +132 -157
  129. package/lib/common/services/hooks-service.js +93 -108
  130. package/lib/common/services/ios-notification-service.js +21 -34
  131. package/lib/common/services/json-file-settings-service.js +52 -71
  132. package/lib/common/services/lock-service.js +35 -52
  133. package/lib/common/services/message-contract-generator.js +35 -46
  134. package/lib/common/services/micro-templating-service.js +4 -15
  135. package/lib/common/services/net-service.js +90 -107
  136. package/lib/common/services/project-files-manager.js +10 -23
  137. package/lib/common/services/proxy-service.js +13 -24
  138. package/lib/common/services/qr.js +13 -24
  139. package/lib/common/services/settings-service.js +1 -1
  140. package/lib/common/services/xcode-select-service.js +20 -35
  141. package/lib/common/utils.js +2 -2
  142. package/lib/common/validators/project-name-validator.js +1 -1
  143. package/lib/common/validators/validation-result.js +1 -1
  144. package/lib/common/verify-node-version.js +2 -3
  145. package/lib/common/yok.js +23 -36
  146. package/lib/config.js +7 -58
  147. package/lib/constants.js +24 -24
  148. package/lib/controllers/build-controller.js +82 -99
  149. package/lib/controllers/debug-controller.js +107 -128
  150. package/lib/controllers/deploy-controller.js +17 -22
  151. package/lib/controllers/migrate-controller.js +722 -795
  152. package/lib/controllers/platform-controller.js +72 -87
  153. package/lib/controllers/prepare-controller.js +266 -299
  154. package/lib/controllers/run-controller.js +392 -406
  155. package/lib/controllers/update-controller-base.js +16 -29
  156. package/lib/controllers/update-controller.js +94 -119
  157. package/lib/data/prepare-data.js +4 -1
  158. package/lib/definitions/ios-debugger-port-service.d.ts +1 -1
  159. package/lib/definitions/livesync.d.ts +1 -1
  160. package/lib/detached-processes/cleanup-js-subprocess.js +3 -12
  161. package/lib/detached-processes/cleanup-process.js +16 -25
  162. package/lib/device-path-provider.js +23 -34
  163. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +149 -164
  164. package/lib/device-sockets/ios/notification.js +1 -1
  165. package/lib/device-sockets/ios/socket-request-executor.js +24 -39
  166. package/lib/helpers/android-bundle-validator-helper.js +1 -1
  167. package/lib/helpers/deploy-command-helper.js +45 -49
  168. package/lib/helpers/key-command-helper.js +4 -13
  169. package/lib/helpers/livesync-command-helper.js +137 -152
  170. package/lib/helpers/network-connectivity-validator.js +6 -17
  171. package/lib/helpers/options-track-helper.js +6 -17
  172. package/lib/helpers/platform-command-helper.js +99 -120
  173. package/lib/key-commands/index.js +161 -211
  174. package/lib/nativescript-cli.js +5 -14
  175. package/lib/node-package-manager.js +81 -104
  176. package/lib/options.js +3 -12
  177. package/lib/package-installation-manager.js +130 -165
  178. package/lib/package-manager.js +63 -86
  179. package/lib/platform-command-param.js +4 -15
  180. package/lib/pnpm-package-manager.js +59 -78
  181. package/lib/project-data.js +1 -1
  182. package/lib/providers/project-files-provider.js +1 -1
  183. package/lib/services/analytics/analytics-broker-process.js +13 -22
  184. package/lib/services/analytics/analytics-broker.js +17 -30
  185. package/lib/services/analytics/analytics-service.js +161 -198
  186. package/lib/services/analytics/google-analytics-provider.js +41 -56
  187. package/lib/services/analytics-settings-service.js +15 -32
  188. package/lib/services/android/android-bundle-tool-service.js +43 -60
  189. package/lib/services/android/gradle-build-args-service.js +9 -20
  190. package/lib/services/android/gradle-build-service.js +34 -47
  191. package/lib/services/android/gradle-command-service.js +22 -35
  192. package/lib/services/android-device-debug-service.js +90 -117
  193. package/lib/services/android-plugin-build-service.js +230 -256
  194. package/lib/services/android-project-service.js +163 -199
  195. package/lib/services/android-resources-migration-service.js +51 -64
  196. package/lib/services/apple-portal/apple-portal-application-service.js +46 -63
  197. package/lib/services/apple-portal/apple-portal-session-service.js +171 -188
  198. package/lib/services/assets-generation/assets-generation-service.js +98 -115
  199. package/lib/services/build-artifacts-service.js +9 -20
  200. package/lib/services/build-info-file-service.js +20 -35
  201. package/lib/services/cleanup-service.js +47 -76
  202. package/lib/services/cocoapods-service.js +115 -136
  203. package/lib/services/device/device-install-app-service.js +73 -90
  204. package/lib/services/doctor-service.js +99 -118
  205. package/lib/services/extensibility-service.js +81 -100
  206. package/lib/services/files-hash-service.js +26 -43
  207. package/lib/services/hmr-status-service.js +1 -1
  208. package/lib/services/initialize-service.js +37 -50
  209. package/lib/services/ios/export-options-plist-service.js +38 -51
  210. package/lib/services/ios/ios-signing-service.js +161 -180
  211. package/lib/services/ios/spm-service.js +40 -53
  212. package/lib/services/ios/xcodebuild-args-service.js +77 -94
  213. package/lib/services/ios/xcodebuild-command-service.js +14 -25
  214. package/lib/services/ios/xcodebuild-service.js +50 -69
  215. package/lib/services/ios-debugger-port-service.js +23 -36
  216. package/lib/services/ios-device-debug-service.js +75 -102
  217. package/lib/services/ios-entitlements-service.js +31 -42
  218. package/lib/services/ios-extensions-service.js +18 -29
  219. package/lib/services/ios-project-service.js +405 -460
  220. package/lib/services/ios-provision-service.js +108 -129
  221. package/lib/services/ios-watch-app-service.js +21 -32
  222. package/lib/services/ip-service.js +38 -53
  223. package/lib/services/itmstransporter-service.js +129 -152
  224. package/lib/services/livesync/android-device-livesync-service-base.js +31 -48
  225. package/lib/services/livesync/android-device-livesync-service.js +120 -149
  226. package/lib/services/livesync/android-device-livesync-sockets-service.js +121 -152
  227. package/lib/services/livesync/android-livesync-service.js +14 -35
  228. package/lib/services/livesync/android-livesync-tool.js +89 -112
  229. package/lib/services/livesync/device-livesync-service-base.js +15 -28
  230. package/lib/services/livesync/ios-device-livesync-service.js +114 -143
  231. package/lib/services/livesync/ios-livesync-service.js +42 -58
  232. package/lib/services/livesync/platform-livesync-service-base.js +94 -119
  233. package/lib/services/log-parser-service.js +1 -1
  234. package/lib/services/log-source-map-service.js +30 -41
  235. package/lib/services/marking-mode-service.js +15 -28
  236. package/lib/services/npm-config-service.js +1 -1
  237. package/lib/services/pacote-service.js +49 -64
  238. package/lib/services/performance-service.js +1 -1
  239. package/lib/services/platform/add-platform-service.js +50 -71
  240. package/lib/services/platform/platform-validation-service.js +22 -33
  241. package/lib/services/platform/prepare-native-platform-service.js +49 -62
  242. package/lib/services/platform-environment-requirements.js +26 -37
  243. package/lib/services/plugins-service.js +122 -147
  244. package/lib/services/project-backup-service.js +1 -1
  245. package/lib/services/project-changes-service.js +124 -141
  246. package/lib/services/project-cleanup-service.js +64 -77
  247. package/lib/services/project-config-service.js +71 -80
  248. package/lib/services/project-data-service.js +101 -118
  249. package/lib/services/project-name-service.js +28 -43
  250. package/lib/services/project-service.js +84 -103
  251. package/lib/services/project-templates-service.js +52 -67
  252. package/lib/services/start-service.js +41 -59
  253. package/lib/services/temp-service.js +8 -21
  254. package/lib/services/terminal-spinner-service.js +13 -24
  255. package/lib/services/test-execution-service.js +59 -72
  256. package/lib/services/test-initialization-service.js +2 -2
  257. package/lib/services/timeline-profiler-service.js +1 -1
  258. package/lib/services/versions-service.js +119 -138
  259. package/lib/services/webpack/webpack-compiler-service.js +211 -231
  260. package/lib/services/xcconfig-service.js +8 -19
  261. package/lib/sys-info.js +45 -62
  262. package/lib/tools/node-modules/node-modules-builder.js +16 -27
  263. package/lib/yarn-package-manager.js +59 -78
  264. package/lib/yarn2-package-manager.js +60 -79
  265. package/package.json +57 -55
  266. package/vendor/aab-tool/bundletool.jar +0 -0
  267. package/lib/common/resources/platform-tools/android/darwin/NOTICE.txt +0 -3407
  268. package/lib/common/resources/platform-tools/android/darwin/adb +0 -0
  269. package/lib/common/resources/platform-tools/android/linux/NOTICE.txt +0 -4451
  270. package/lib/common/resources/platform-tools/android/linux/adb +0 -0
  271. package/lib/common/resources/platform-tools/android/win32/AdbWinApi.dll +0 -0
  272. package/lib/common/resources/platform-tools/android/win32/AdbWinUsbApi.dll +0 -0
  273. package/lib/common/resources/platform-tools/android/win32/NOTICE.txt +0 -4451
  274. package/lib/common/resources/platform-tools/android/win32/adb.exe +0 -0
  275. package/lib/common/resources/platform-tools/android/win32/fastboot.exe +0 -0
@@ -5,15 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
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
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
- return new (P || (P = Promise))(function (resolve, reject) {
11
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15
- });
16
- };
17
8
  Object.defineProperty(exports, "__esModule", { value: true });
18
9
  exports.ProjectService = void 0;
19
10
  const constants = require("../constants");
@@ -41,60 +32,56 @@ class ProjectService {
41
32
  this.$staticConfig = $staticConfig;
42
33
  this.$childProcess = $childProcess;
43
34
  }
44
- validateProjectName(opts) {
45
- return __awaiter(this, void 0, void 0, function* () {
46
- let projectName = opts.projectName;
47
- if (!projectName) {
48
- this.$errors.failWithHelp("You must specify <App name> when creating a new project.");
49
- }
50
- projectName = yield this.$projectNameService.ensureValidName(projectName, {
51
- force: opts.force,
52
- });
53
- const projectDir = this.getValidProjectDir(opts.pathToProject, projectName);
54
- if (this.$fs.exists(projectDir) && !this.$fs.isEmptyDir(projectDir)) {
55
- this.$errors.fail("Path already exists and is not empty %s", projectDir);
56
- }
57
- return projectName;
35
+ async validateProjectName(opts) {
36
+ let projectName = opts.projectName;
37
+ if (!projectName) {
38
+ this.$errors.failWithHelp("You must specify <App name> when creating a new project.");
39
+ }
40
+ projectName = await this.$projectNameService.ensureValidName(projectName, {
41
+ force: opts.force,
58
42
  });
43
+ const projectDir = this.getValidProjectDir(opts.pathToProject, projectName);
44
+ if (this.$fs.exists(projectDir) && !this.$fs.isEmptyDir(projectDir)) {
45
+ this.$errors.fail("Path already exists and is not empty %s", projectDir);
46
+ }
47
+ return projectName;
59
48
  }
60
- createProject(projectOptions) {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- const projectName = yield this.validateProjectName({
63
- projectName: projectOptions.projectName,
64
- force: projectOptions.force,
65
- pathToProject: projectOptions.pathToProject,
66
- });
67
- const projectDir = this.getValidProjectDir(projectOptions.pathToProject, projectName);
68
- this.$fs.createDirectory(projectDir);
69
- const appId = projectOptions.appId ||
70
- this.$projectHelper.generateDefaultAppId(projectName, constants.DEFAULT_APP_IDENTIFIER_PREFIX);
71
- this.$logger.trace(`Creating a new NativeScript project with name ${projectName} and id ${appId} at location ${projectDir}`);
72
- const projectCreationData = yield this.createProjectCore({
73
- template: projectOptions.template,
74
- projectDir,
75
- ignoreScripts: projectOptions.ignoreScripts,
76
- appId: appId,
77
- projectName,
78
- });
79
- if (this.$options.git) {
80
- try {
81
- if (!this.$options.force) {
82
- const git = (0, simple_git_1.default)(projectDir);
83
- if (yield git.checkIsRepo()) {
84
- throw new Error("Already part of a git repository.");
85
- }
49
+ async createProject(projectOptions) {
50
+ const projectName = await this.validateProjectName({
51
+ projectName: projectOptions.projectName,
52
+ force: projectOptions.force,
53
+ pathToProject: projectOptions.pathToProject,
54
+ });
55
+ const projectDir = this.getValidProjectDir(projectOptions.pathToProject, projectName);
56
+ this.$fs.createDirectory(projectDir);
57
+ const appId = projectOptions.appId ||
58
+ this.$projectHelper.generateDefaultAppId(projectName, constants.DEFAULT_APP_IDENTIFIER_PREFIX);
59
+ this.$logger.trace(`Creating a new NativeScript project with name ${projectName} and id ${appId} at location ${projectDir}`);
60
+ const projectCreationData = await this.createProjectCore({
61
+ template: projectOptions.template,
62
+ projectDir,
63
+ ignoreScripts: projectOptions.ignoreScripts,
64
+ appId: appId,
65
+ projectName,
66
+ });
67
+ if (this.$options.git) {
68
+ try {
69
+ if (!this.$options.force) {
70
+ const git = (0, simple_git_1.default)(projectDir);
71
+ if (await git.checkIsRepo()) {
72
+ throw new Error("Already part of a git repository.");
86
73
  }
87
- yield this.$childProcess.exec(`git init ${projectDir}`);
88
- yield this.$childProcess.exec(`git -C ${projectDir} add --all`);
89
- yield this.$childProcess.exec(`git -C ${projectDir} commit --no-verify -m "init"`);
90
- }
91
- catch (err) {
92
- this.$logger.trace("Unable to initialize git repository. Error is: ", err);
93
74
  }
75
+ await this.$childProcess.exec(`git init ${projectDir}`);
76
+ await this.$childProcess.exec(`git -C ${projectDir} add --all`);
77
+ await this.$childProcess.exec(`git -C ${projectDir} commit --no-verify -m "init"`);
94
78
  }
95
- this.$logger.trace(`Project ${projectName} was successfully created.`);
96
- return projectCreationData;
97
- });
79
+ catch (err) {
80
+ this.$logger.trace("Unable to initialize git repository. Error is: ", err);
81
+ }
82
+ }
83
+ this.$logger.trace(`Project ${projectName} was successfully created.`);
84
+ return projectCreationData;
98
85
  }
99
86
  isValidNativeScriptProject(pathToProject) {
100
87
  try {
@@ -113,54 +100,48 @@ class ProjectService {
113
100
  const projectDir = path.join(selectedPath, projectName);
114
101
  return projectDir;
115
102
  }
116
- createProjectCore(projectCreationSettings) {
117
- return __awaiter(this, void 0, void 0, function* () {
118
- const { template, projectDir, appId, projectName, ignoreScripts, } = projectCreationSettings;
119
- try {
120
- const templateData = yield this.$projectTemplatesService.prepareTemplate(template, projectDir);
121
- yield this.extractTemplate(projectDir, templateData);
122
- this.alterPackageJsonData(projectCreationSettings);
123
- this.$projectConfigService.writeDefaultConfig(projectDir, appId);
124
- yield this.ensureAppResourcesExist(projectDir);
125
- yield this.$packageManager.install(projectDir, projectDir, {
126
- disableNpmInstall: false,
127
- frameworkPath: null,
128
- ignoreScripts,
129
- });
130
- }
131
- catch (err) {
132
- this.$fs.deleteDirectory(projectDir);
133
- throw err;
134
- }
135
- yield this.$hooksService.executeAfterHooks(constants_1.Hooks.createProject, {
136
- hookArgs: projectCreationSettings,
103
+ async createProjectCore(projectCreationSettings) {
104
+ const { template, projectDir, appId, projectName, ignoreScripts, } = projectCreationSettings;
105
+ try {
106
+ const templateData = await this.$projectTemplatesService.prepareTemplate(template, projectDir);
107
+ await this.extractTemplate(projectDir, templateData);
108
+ this.alterPackageJsonData(projectCreationSettings);
109
+ this.$projectConfigService.writeDefaultConfig(projectDir, appId);
110
+ await this.ensureAppResourcesExist(projectDir);
111
+ await this.$packageManager.install(projectDir, projectDir, {
112
+ disableNpmInstall: false,
113
+ frameworkPath: null,
114
+ ignoreScripts,
137
115
  });
138
- return { projectName, projectDir };
116
+ }
117
+ catch (err) {
118
+ this.$fs.deleteDirectory(projectDir);
119
+ throw err;
120
+ }
121
+ await this.$hooksService.executeAfterHooks(constants_1.Hooks.createProject, {
122
+ hookArgs: projectCreationSettings,
139
123
  });
124
+ return { projectName, projectDir };
140
125
  }
141
- extractTemplate(projectDir, templateData) {
142
- return __awaiter(this, void 0, void 0, function* () {
143
- this.$fs.ensureDirectoryExists(projectDir);
144
- const fullTemplateName = templateData.version
145
- ? `${templateData.templateName}@${templateData.version}`
146
- : templateData.templateName;
147
- yield this.$pacoteService.extractPackage(fullTemplateName, projectDir);
148
- });
126
+ async extractTemplate(projectDir, templateData) {
127
+ this.$fs.ensureDirectoryExists(projectDir);
128
+ const fullTemplateName = templateData.version
129
+ ? `${templateData.templateName}@${templateData.version}`
130
+ : templateData.templateName;
131
+ await this.$pacoteService.extractPackage(fullTemplateName, projectDir);
149
132
  }
150
- ensureAppResourcesExist(projectDir) {
151
- return __awaiter(this, void 0, void 0, function* () {
152
- const projectData = this.$projectDataService.getProjectData(projectDir);
153
- const appResourcesDestinationPath = projectData.getAppResourcesDirectoryPath(projectDir);
154
- if (!this.$fs.exists(appResourcesDestinationPath)) {
155
- this.$logger.trace("Project does not have App_Resources - fetching from default template.");
156
- this.$fs.createDirectory(appResourcesDestinationPath);
157
- const tempDir = yield this.$tempService.mkdirSync("ns-default-template");
158
- yield this.$pacoteService.extractPackage(constants.RESERVED_TEMPLATE_NAMES["default"], tempDir);
159
- const templateProjectData = this.$projectDataService.getProjectData(tempDir);
160
- const templateAppResourcesDir = templateProjectData.getAppResourcesDirectoryPath(tempDir);
161
- this.$fs.copyFile(path.join(templateAppResourcesDir, "*"), appResourcesDestinationPath);
162
- }
163
- });
133
+ async ensureAppResourcesExist(projectDir) {
134
+ const projectData = this.$projectDataService.getProjectData(projectDir);
135
+ const appResourcesDestinationPath = projectData.getAppResourcesDirectoryPath(projectDir);
136
+ if (!this.$fs.exists(appResourcesDestinationPath)) {
137
+ this.$logger.trace("Project does not have App_Resources - fetching from default template.");
138
+ this.$fs.createDirectory(appResourcesDestinationPath);
139
+ const tempDir = await this.$tempService.mkdirSync("ns-default-template");
140
+ await this.$pacoteService.extractPackage(constants.RESERVED_TEMPLATE_NAMES["default"], tempDir);
141
+ const templateProjectData = this.$projectDataService.getProjectData(tempDir);
142
+ const templateAppResourcesDir = templateProjectData.getAppResourcesDirectoryPath(tempDir);
143
+ this.$fs.copyFile(path.join(templateAppResourcesDir, "*"), appResourcesDestinationPath);
144
+ }
164
145
  }
165
146
  alterPackageJsonData(projectCreationSettings) {
166
147
  const { projectDir, projectName } = projectCreationSettings;
@@ -184,6 +165,7 @@ class ProjectService {
184
165
  this.$fs.writeJson(projectFilePath, packageJsonData);
185
166
  }
186
167
  }
168
+ exports.ProjectService = ProjectService;
187
169
  __decorate([
188
170
  (0, decorators_1.exported)("projectService"),
189
171
  (0, decorators_2.performanceLog)()
@@ -200,5 +182,4 @@ __decorate([
200
182
  __decorate([
201
183
  (0, decorators_2.performanceLog)()
202
184
  ], ProjectService.prototype, "alterPackageJsonData", null);
203
- exports.ProjectService = ProjectService;
204
185
  yok_1.injector.register("projectService", ProjectService);
@@ -5,15 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
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
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
- return new (P || (P = Promise))(function (resolve, reject) {
11
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15
- });
16
- };
17
8
  Object.defineProperty(exports, "__esModule", { value: true });
18
9
  exports.ProjectTemplatesService = void 0;
19
10
  const path = require("path");
@@ -32,49 +23,45 @@ class ProjectTemplatesService {
32
23
  this.$staticConfig = $staticConfig;
33
24
  this.templatePackageContents = {};
34
25
  }
35
- prepareTemplate(templateValue, projectDir) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- if (!templateValue) {
38
- templateValue = constants.RESERVED_TEMPLATE_NAMES["default"];
39
- }
40
- const templateNameParts = yield this.$packageManager.getPackageNameParts(templateValue);
41
- templateValue =
42
- constants.RESERVED_TEMPLATE_NAMES[templateNameParts.name] ||
43
- templateNameParts.name;
44
- const version = yield this.getDesiredVersion(templateValue, templateNameParts.version);
45
- const fullTemplateName = yield this.$packageManager.getPackageFullName({
46
- name: templateValue,
47
- version: version,
48
- });
49
- const templatePackageJsonContent = yield this.getTemplatePackageJsonContent(fullTemplateName);
50
- const templateNameToBeTracked = this.getTemplateNameToBeTracked(templateValue, templatePackageJsonContent);
51
- if (templateNameToBeTracked) {
52
- yield this.$analyticsService.trackEventActionInGoogleAnalytics({
53
- action: "Create project",
54
- isForDevice: null,
55
- additionalData: templateNameToBeTracked,
56
- });
57
- yield this.$analyticsService.trackEventActionInGoogleAnalytics({
58
- action: "Using Template",
59
- additionalData: templateNameToBeTracked,
60
- });
61
- }
62
- return {
63
- templateName: templateValue,
64
- templatePackageJsonContent,
65
- version,
66
- };
26
+ async prepareTemplate(templateValue, projectDir) {
27
+ if (!templateValue) {
28
+ templateValue = constants.RESERVED_TEMPLATE_NAMES["default"];
29
+ }
30
+ const templateNameParts = await this.$packageManager.getPackageNameParts(templateValue);
31
+ templateValue =
32
+ constants.RESERVED_TEMPLATE_NAMES[templateNameParts.name] ||
33
+ templateNameParts.name;
34
+ const version = await this.getDesiredVersion(templateValue, templateNameParts.version);
35
+ const fullTemplateName = await this.$packageManager.getPackageFullName({
36
+ name: templateValue,
37
+ version: version,
67
38
  });
39
+ const templatePackageJsonContent = await this.getTemplatePackageJsonContent(fullTemplateName);
40
+ const templateNameToBeTracked = this.getTemplateNameToBeTracked(templateValue, templatePackageJsonContent);
41
+ if (templateNameToBeTracked) {
42
+ await this.$analyticsService.trackEventActionInGoogleAnalytics({
43
+ action: "Create project",
44
+ isForDevice: null,
45
+ additionalData: templateNameToBeTracked,
46
+ });
47
+ await this.$analyticsService.trackEventActionInGoogleAnalytics({
48
+ action: "Using Template",
49
+ additionalData: templateNameToBeTracked,
50
+ });
51
+ }
52
+ return {
53
+ templateName: templateValue,
54
+ templatePackageJsonContent,
55
+ version,
56
+ };
68
57
  }
69
- getTemplatePackageJsonContent(templateName) {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- if (!this.templatePackageContents[templateName]) {
72
- this.templatePackageContents[templateName] = yield this.$pacoteService.manifest(templateName, {
73
- fullMetadata: true,
74
- });
75
- }
76
- return this.templatePackageContents[templateName];
77
- });
58
+ async getTemplatePackageJsonContent(templateName) {
59
+ if (!this.templatePackageContents[templateName]) {
60
+ this.templatePackageContents[templateName] = await this.$pacoteService.manifest(templateName, {
61
+ fullMetadata: true,
62
+ });
63
+ }
64
+ return this.templatePackageContents[templateName];
78
65
  }
79
66
  getTemplateNameToBeTracked(templateName, packageJsonContent) {
80
67
  try {
@@ -89,26 +76,24 @@ class ProjectTemplatesService {
89
76
  this.$logger.trace(`Unable to get template name to be tracked, error is: ${err}`);
90
77
  }
91
78
  }
92
- getDesiredVersion(templateName, defaultVersion) {
93
- return __awaiter(this, void 0, void 0, function* () {
94
- if (defaultVersion) {
95
- return defaultVersion;
96
- }
97
- if (this.$fs.exists(templateName)) {
98
- return "";
99
- }
100
- try {
101
- const cliMajorVersion = semver.parse(semver.coerce(this.$staticConfig.version)).major;
102
- return `^${cliMajorVersion}.0.0`;
103
- }
104
- catch (err) {
105
- return this.$packageInstallationManager.getLatestCompatibleVersionSafe(templateName);
106
- }
107
- });
79
+ async getDesiredVersion(templateName, defaultVersion) {
80
+ if (defaultVersion) {
81
+ return defaultVersion;
82
+ }
83
+ if (this.$fs.exists(templateName)) {
84
+ return "";
85
+ }
86
+ try {
87
+ const cliMajorVersion = semver.parse(semver.coerce(this.$staticConfig.version)).major;
88
+ return `^${cliMajorVersion}.0.0`;
89
+ }
90
+ catch (err) {
91
+ return this.$packageInstallationManager.getLatestCompatibleVersionSafe(templateName);
92
+ }
108
93
  }
109
94
  }
95
+ exports.ProjectTemplatesService = ProjectTemplatesService;
110
96
  __decorate([
111
97
  (0, decorators_1.performanceLog)()
112
98
  ], ProjectTemplatesService.prototype, "prepareTemplate", null);
113
- exports.ProjectTemplatesService = ProjectTemplatesService;
114
99
  yok_1.injector.register("projectTemplatesService", ProjectTemplatesService);
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  const yok_1 = require("../common/yok");
13
4
  class StartService {
@@ -27,57 +18,48 @@ class StartService {
27
18
  format(data, platform) {
28
19
  return data;
29
20
  }
30
- runForPlatform(platform) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- const platformLowerCase = platform.toLowerCase();
33
- this[platformLowerCase] = this.$childProcess.spawn("node", [this.$staticConfig.cliBinPath, "run", platform.toLowerCase()], {
34
- cwd: this.$projectData.projectDir,
35
- stdio: ["ipc"],
36
- env: Object.assign({ FORCE_COLOR: 1, HIDE_HEADER: true, NS_IS_INTERACTIVE: true }, process.env),
37
- });
38
- this[platformLowerCase].stdout.on("data", (data) => {
39
- process.stdout.write(this.format(data, platform));
40
- });
41
- this[platformLowerCase].stderr.on("data", (data) => {
42
- process.stderr.write(this.format(data, platform));
43
- });
21
+ async runForPlatform(platform) {
22
+ const platformLowerCase = platform.toLowerCase();
23
+ this[platformLowerCase] = this.$childProcess.spawn("node", [this.$staticConfig.cliBinPath, "run", platform.toLowerCase()], {
24
+ cwd: this.$projectData.projectDir,
25
+ stdio: ["ipc"],
26
+ env: {
27
+ FORCE_COLOR: 1,
28
+ HIDE_HEADER: true,
29
+ NS_IS_INTERACTIVE: true,
30
+ ...process.env,
31
+ },
44
32
  });
45
- }
46
- runIOS() {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- this.runForPlatform(this.$devicePlatformsConstants.iOS);
33
+ this[platformLowerCase].stdout.on("data", (data) => {
34
+ process.stdout.write(this.format(data, platform));
49
35
  });
50
- }
51
- runVisionOS() {
52
- return __awaiter(this, void 0, void 0, function* () {
53
- this.runForPlatform(this.$devicePlatformsConstants.visionOS);
36
+ this[platformLowerCase].stderr.on("data", (data) => {
37
+ process.stderr.write(this.format(data, platform));
54
38
  });
55
39
  }
56
- runAndroid() {
57
- return __awaiter(this, void 0, void 0, function* () {
58
- this.runForPlatform(this.$devicePlatformsConstants.Android);
59
- });
40
+ async runIOS() {
41
+ this.runForPlatform(this.$devicePlatformsConstants.iOS);
60
42
  }
61
- stopIOS() {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- if (this.ios) {
64
- this.ios.kill("SIGINT");
65
- }
66
- });
43
+ async runVisionOS() {
44
+ this.runForPlatform(this.$devicePlatformsConstants.visionOS);
67
45
  }
68
- stopVisionOS() {
69
- return __awaiter(this, void 0, void 0, function* () {
70
- if (this.visionos) {
71
- this.visionos.kill("SIGINT");
72
- }
73
- });
46
+ async runAndroid() {
47
+ this.runForPlatform(this.$devicePlatformsConstants.Android);
74
48
  }
75
- stopAndroid() {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- if (this.android) {
78
- this.android.kill("SIGINT");
79
- }
80
- });
49
+ async stopIOS() {
50
+ if (this.ios) {
51
+ this.ios.kill("SIGINT");
52
+ }
53
+ }
54
+ async stopVisionOS() {
55
+ if (this.visionos) {
56
+ this.visionos.kill("SIGINT");
57
+ }
58
+ }
59
+ async stopAndroid() {
60
+ if (this.android) {
61
+ this.android.kill("SIGINT");
62
+ }
81
63
  }
82
64
  start() {
83
65
  this.addKeyCommandOverrides();
@@ -87,16 +69,16 @@ class StartService {
87
69
  addKeyCommandOverrides() {
88
70
  const keys = ["w", "r", "R"];
89
71
  for (let key of keys) {
90
- this.$keyCommandHelper.addOverride(key, () => __awaiter(this, void 0, void 0, function* () {
72
+ this.$keyCommandHelper.addOverride(key, async () => {
91
73
  var _a, _b;
92
74
  (_a = this.ios) === null || _a === void 0 ? void 0 : _a.send(key);
93
75
  (_b = this.android) === null || _b === void 0 ? void 0 : _b.send(key);
94
76
  return false;
95
- }));
77
+ });
96
78
  }
97
- this.$keyCommandHelper.addOverride("c", () => __awaiter(this, void 0, void 0, function* () {
98
- yield this.stopIOS();
99
- yield this.stopAndroid();
79
+ this.$keyCommandHelper.addOverride("c", async () => {
80
+ await this.stopIOS();
81
+ await this.stopAndroid();
100
82
  const clean = this.$childProcess.spawn("node", [
101
83
  this.$staticConfig.cliBinPath,
102
84
  "clean",
@@ -109,7 +91,7 @@ class StartService {
109
91
  }
110
92
  });
111
93
  return false;
112
- }));
94
+ });
113
95
  }
114
96
  }
115
97
  exports.default = StartService;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.TempService = void 0;
13
4
  const temp = require("temp");
@@ -17,19 +8,15 @@ class TempService {
17
8
  this.$cleanupService = $cleanupService;
18
9
  temp.track();
19
10
  }
20
- mkdirSync(affixes) {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- const pathToDir = temp.mkdirSync(affixes);
23
- yield this.$cleanupService.addCleanupDeleteAction(pathToDir);
24
- return pathToDir;
25
- });
11
+ async mkdirSync(affixes) {
12
+ const pathToDir = temp.mkdirSync(affixes);
13
+ await this.$cleanupService.addCleanupDeleteAction(pathToDir);
14
+ return pathToDir;
26
15
  }
27
- path(options) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- const pathToFile = temp.path(options);
30
- yield this.$cleanupService.addCleanupDeleteAction(pathToFile);
31
- return pathToFile;
32
- });
16
+ async path(options) {
17
+ const pathToFile = temp.path(options);
18
+ await this.$cleanupService.addCleanupDeleteAction(pathToFile);
19
+ return pathToFile;
33
20
  }
34
21
  }
35
22
  exports.TempService = TempService;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.TerminalSpinnerService = void 0;
13
4
  const ora = require("ora");
@@ -17,21 +8,19 @@ class TerminalSpinnerService {
17
8
  spinnerOptions.stream = spinnerOptions.stream || process.stdout;
18
9
  return ora(spinnerOptions);
19
10
  }
20
- execute(spinnerOptions, action) {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- const spinner = this.createSpinner(spinnerOptions);
23
- spinner.start();
24
- let result = null;
25
- try {
26
- result = yield action();
27
- }
28
- catch (err) {
29
- spinner.fail();
30
- return null;
31
- }
32
- spinner.succeed();
33
- return result;
34
- });
11
+ async execute(spinnerOptions, action) {
12
+ const spinner = this.createSpinner(spinnerOptions);
13
+ spinner.start();
14
+ let result = null;
15
+ try {
16
+ result = await action();
17
+ }
18
+ catch (err) {
19
+ spinner.fail();
20
+ return null;
21
+ }
22
+ spinner.succeed();
23
+ return result;
35
24
  }
36
25
  }
37
26
  exports.TerminalSpinnerService = TerminalSpinnerService;