@akylas/nativescript-cli 8.7.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 (295) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/docs/man_pages/project/configuration/native/native-add-java.md +32 -0
  3. package/docs/man_pages/project/configuration/native/native-add-kotlin.md +34 -0
  4. package/docs/man_pages/project/configuration/native/native-add-objective-c.md +34 -0
  5. package/docs/man_pages/project/configuration/native/native-add-swift.md +32 -0
  6. package/docs/man_pages/project/configuration/native/native-add.md +31 -0
  7. package/docs/man_pages/project/configuration/native/native.md +31 -0
  8. package/lib/.d.ts +2 -0
  9. package/lib/android-tools-info.js +9 -20
  10. package/lib/base-package-manager.js +47 -64
  11. package/lib/bootstrap.js +8 -0
  12. package/lib/bun-package-manager.js +65 -88
  13. package/lib/color.js +2 -2
  14. package/lib/commands/add-platform.js +14 -30
  15. package/lib/commands/apple-login.js +18 -29
  16. package/lib/commands/appstore-list.js +34 -45
  17. package/lib/commands/appstore-upload.js +55 -68
  18. package/lib/commands/build.js +57 -86
  19. package/lib/commands/clean.js +161 -176
  20. package/lib/commands/command-base.js +14 -27
  21. package/lib/commands/config.js +51 -70
  22. package/lib/commands/create-project.js +210 -229
  23. package/lib/commands/debug.js +66 -88
  24. package/lib/commands/deploy.js +28 -44
  25. package/lib/commands/embedding/embed.js +72 -0
  26. package/lib/commands/extensibility/install-extension.js +5 -16
  27. package/lib/commands/extensibility/list-extensions.js +13 -24
  28. package/lib/commands/extensibility/uninstall-extension.js +4 -15
  29. package/lib/commands/fonts.js +30 -41
  30. package/lib/commands/generate-assets.js +13 -28
  31. package/lib/commands/generate-help.js +2 -13
  32. package/lib/commands/generate.js +17 -26
  33. package/lib/commands/info.js +2 -13
  34. package/lib/commands/install.js +34 -49
  35. package/lib/commands/list-platforms.js +14 -25
  36. package/lib/commands/migrate.js +15 -26
  37. package/lib/commands/native-add.js +277 -0
  38. package/lib/commands/platform-clean.js +19 -32
  39. package/lib/commands/plugin/add-plugin.js +12 -25
  40. package/lib/commands/plugin/build-plugin.js +34 -45
  41. package/lib/commands/plugin/create-plugin.js +110 -133
  42. package/lib/commands/plugin/list-plugins.js +22 -33
  43. package/lib/commands/plugin/remove-plugin.js +20 -33
  44. package/lib/commands/plugin/update-plugin.js +20 -33
  45. package/lib/commands/post-install.js +20 -33
  46. package/lib/commands/prepare.js +28 -35
  47. package/lib/commands/preview.js +49 -62
  48. package/lib/commands/remove-platform.js +7 -18
  49. package/lib/commands/resources/resources-update.js +13 -26
  50. package/lib/commands/run.js +55 -76
  51. package/lib/commands/start.js +6 -19
  52. package/lib/commands/test-init.js +123 -134
  53. package/lib/commands/test.js +66 -89
  54. package/lib/commands/typings.js +126 -142
  55. package/lib/commands/update-platform.js +22 -35
  56. package/lib/commands/update.js +30 -43
  57. package/lib/common/child-process.js +53 -72
  58. package/lib/common/codeGeneration/code-entity.js +1 -1
  59. package/lib/common/codeGeneration/code-printer.js +1 -1
  60. package/lib/common/command-params.js +7 -18
  61. package/lib/common/commands/analytics.js +27 -40
  62. package/lib/common/commands/autocompletion.js +39 -56
  63. package/lib/common/commands/device/device-log-stream.js +12 -23
  64. package/lib/common/commands/device/get-file.js +22 -33
  65. package/lib/common/commands/device/list-applications.js +12 -23
  66. package/lib/common/commands/device/list-devices.js +72 -87
  67. package/lib/common/commands/device/list-files.js +23 -34
  68. package/lib/common/commands/device/put-file.js +22 -33
  69. package/lib/common/commands/device/run-application.js +12 -25
  70. package/lib/common/commands/device/stop-application.js +11 -22
  71. package/lib/common/commands/device/uninstall-application.js +6 -17
  72. package/lib/common/commands/generate-messages.js +17 -28
  73. package/lib/common/commands/help.js +20 -33
  74. package/lib/common/commands/package-manager-get.js +6 -17
  75. package/lib/common/commands/package-manager-set.js +9 -20
  76. package/lib/common/commands/post-install.js +2 -13
  77. package/lib/common/commands/preuninstall.js +23 -38
  78. package/lib/common/commands/proxy/proxy-base.js +8 -19
  79. package/lib/common/commands/proxy/proxy-clear.js +4 -15
  80. package/lib/common/commands/proxy/proxy-get.js +3 -14
  81. package/lib/common/commands/proxy/proxy-set.js +87 -100
  82. package/lib/common/constants.js +11 -11
  83. package/lib/common/decorators.js +10 -22
  84. package/lib/common/dispatchers.js +79 -96
  85. package/lib/common/errors.js +89 -104
  86. package/lib/common/file-system.js +106 -127
  87. package/lib/common/header.js +1 -2
  88. package/lib/common/helpers.js +149 -178
  89. package/lib/common/host-info.js +37 -50
  90. package/lib/common/http-client.js +93 -108
  91. package/lib/common/logger/appenders/cli-appender.js +1 -2
  92. package/lib/common/logger/appenders/emit-appender.js +1 -2
  93. package/lib/common/logger/layouts/cli-layout.js +1 -2
  94. package/lib/common/logger/logger.js +1 -1
  95. package/lib/common/mobile/android/android-application-manager.js +121 -142
  96. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -1
  97. package/lib/common/mobile/android/android-debug-bridge.js +87 -112
  98. package/lib/common/mobile/android/android-device-file-system.js +98 -131
  99. package/lib/common/mobile/android/android-device-hash-service.js +50 -75
  100. package/lib/common/mobile/android/android-device.js +74 -91
  101. package/lib/common/mobile/android/android-emulator-services.js +105 -130
  102. package/lib/common/mobile/android/android-log-filter.js +1 -1
  103. package/lib/common/mobile/android/android-virtual-device-service.js +76 -94
  104. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -29
  105. package/lib/common/mobile/android/genymotion/genymotion-service.js +91 -118
  106. package/lib/common/mobile/android/genymotion/virtualbox-service.js +64 -81
  107. package/lib/common/mobile/android/logcat-helper.js +108 -118
  108. package/lib/common/mobile/application-manager-base.js +84 -107
  109. package/lib/common/mobile/device-log-provider-base.js +7 -18
  110. package/lib/common/mobile/emulator-helper.js +1 -0
  111. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -108
  112. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -105
  113. package/lib/common/mobile/ios/device/ios-device-operations.js +105 -142
  114. package/lib/common/mobile/ios/device/ios-device.js +20 -36
  115. package/lib/common/mobile/ios/ios-device-base.js +58 -81
  116. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +63 -92
  117. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -1
  118. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +60 -89
  119. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +27 -43
  120. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -62
  121. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -35
  122. package/lib/common/mobile/mobile-core/android-device-discovery.js +43 -62
  123. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +21 -32
  124. package/lib/common/mobile/mobile-core/android-process-service.js +143 -182
  125. package/lib/common/mobile/mobile-core/device-discovery.js +2 -13
  126. package/lib/common/mobile/mobile-core/devices-service.js +385 -436
  127. package/lib/common/mobile/mobile-core/ios-device-discovery.js +24 -35
  128. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +47 -62
  129. package/lib/common/mobile/mobile-helper.js +15 -26
  130. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -52
  131. package/lib/common/opener.js +2 -2
  132. package/lib/common/plist-parser.js +2 -2
  133. package/lib/common/prompter.js +90 -105
  134. package/lib/common/queue.js +9 -20
  135. package/lib/common/services/auto-completion-service.js +39 -52
  136. package/lib/common/services/cancellation.js +17 -28
  137. package/lib/common/services/commands-service.js +146 -169
  138. package/lib/common/services/help-service.js +132 -157
  139. package/lib/common/services/hooks-service.js +93 -108
  140. package/lib/common/services/ios-notification-service.js +21 -34
  141. package/lib/common/services/json-file-settings-service.js +52 -71
  142. package/lib/common/services/lock-service.js +35 -52
  143. package/lib/common/services/message-contract-generator.js +35 -46
  144. package/lib/common/services/micro-templating-service.js +4 -15
  145. package/lib/common/services/net-service.js +90 -107
  146. package/lib/common/services/project-files-manager.js +10 -23
  147. package/lib/common/services/proxy-service.js +13 -24
  148. package/lib/common/services/qr.js +13 -24
  149. package/lib/common/services/settings-service.js +1 -1
  150. package/lib/common/services/xcode-select-service.js +20 -35
  151. package/lib/common/utils.js +7 -0
  152. package/lib/common/validators/project-name-validator.js +1 -1
  153. package/lib/common/validators/validation-result.js +1 -1
  154. package/lib/common/verify-node-version.js +2 -3
  155. package/lib/common/yok.js +23 -36
  156. package/lib/config.js +7 -58
  157. package/lib/constants.js +24 -24
  158. package/lib/controllers/build-controller.js +82 -99
  159. package/lib/controllers/debug-controller.js +107 -128
  160. package/lib/controllers/deploy-controller.js +17 -22
  161. package/lib/controllers/migrate-controller.js +727 -800
  162. package/lib/controllers/platform-controller.js +72 -83
  163. package/lib/controllers/prepare-controller.js +264 -250
  164. package/lib/controllers/run-controller.js +392 -406
  165. package/lib/controllers/update-controller-base.js +16 -29
  166. package/lib/controllers/update-controller.js +94 -119
  167. package/lib/data/build-data.js +2 -0
  168. package/lib/data/prepare-data.js +5 -1
  169. package/lib/declarations.d.ts +14 -3
  170. package/lib/definitions/android-plugin-migrator.d.ts +1 -0
  171. package/lib/definitions/ios-debugger-port-service.d.ts +1 -1
  172. package/lib/definitions/livesync.d.ts +1 -1
  173. package/lib/definitions/platform.d.ts +1 -0
  174. package/lib/definitions/prepare.d.ts +3 -0
  175. package/lib/definitions/project.d.ts +5 -0
  176. package/lib/detached-processes/cleanup-js-subprocess.js +3 -12
  177. package/lib/detached-processes/cleanup-process.js +16 -25
  178. package/lib/device-path-provider.js +23 -34
  179. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +149 -164
  180. package/lib/device-sockets/ios/notification.js +1 -1
  181. package/lib/device-sockets/ios/socket-request-executor.js +24 -39
  182. package/lib/helpers/android-bundle-validator-helper.js +1 -1
  183. package/lib/helpers/deploy-command-helper.js +45 -49
  184. package/lib/helpers/key-command-helper.js +4 -13
  185. package/lib/helpers/livesync-command-helper.js +137 -152
  186. package/lib/helpers/network-connectivity-validator.js +6 -17
  187. package/lib/helpers/options-track-helper.js +6 -17
  188. package/lib/helpers/platform-command-helper.js +102 -114
  189. package/lib/key-commands/index.js +161 -211
  190. package/lib/nativescript-cli.js +5 -14
  191. package/lib/node-package-manager.js +81 -104
  192. package/lib/options.js +12 -14
  193. package/lib/package-installation-manager.js +130 -165
  194. package/lib/package-manager.js +63 -86
  195. package/lib/platform-command-param.js +4 -15
  196. package/lib/pnpm-package-manager.js +59 -78
  197. package/lib/project-data.js +5 -2
  198. package/lib/providers/project-files-provider.js +2 -2
  199. package/lib/services/analytics/analytics-broker-process.js +13 -22
  200. package/lib/services/analytics/analytics-broker.js +17 -30
  201. package/lib/services/analytics/analytics-service.js +161 -198
  202. package/lib/services/analytics/google-analytics-provider.js +41 -56
  203. package/lib/services/analytics-settings-service.js +15 -32
  204. package/lib/services/android/android-bundle-tool-service.js +43 -60
  205. package/lib/services/android/gradle-build-args-service.js +13 -23
  206. package/lib/services/android/gradle-build-service.js +34 -47
  207. package/lib/services/android/gradle-command-service.js +23 -32
  208. package/lib/services/android-device-debug-service.js +90 -117
  209. package/lib/services/android-plugin-build-service.js +233 -247
  210. package/lib/services/android-project-service.js +180 -219
  211. package/lib/services/android-resources-migration-service.js +51 -64
  212. package/lib/services/apple-portal/apple-portal-application-service.js +46 -63
  213. package/lib/services/apple-portal/apple-portal-session-service.js +171 -188
  214. package/lib/services/assets-generation/assets-generation-service.js +100 -113
  215. package/lib/services/build-artifacts-service.js +9 -20
  216. package/lib/services/build-info-file-service.js +20 -35
  217. package/lib/services/cleanup-service.js +47 -76
  218. package/lib/services/cocoapods-service.js +118 -133
  219. package/lib/services/device/device-install-app-service.js +73 -90
  220. package/lib/services/doctor-service.js +99 -118
  221. package/lib/services/extensibility-service.js +81 -100
  222. package/lib/services/files-hash-service.js +28 -44
  223. package/lib/services/hmr-status-service.js +1 -1
  224. package/lib/services/initialize-service.js +37 -50
  225. package/lib/services/ios/export-options-plist-service.js +38 -51
  226. package/lib/services/ios/ios-signing-service.js +161 -180
  227. package/lib/services/ios/spm-service.js +40 -53
  228. package/lib/services/ios/xcodebuild-args-service.js +77 -94
  229. package/lib/services/ios/xcodebuild-command-service.js +14 -25
  230. package/lib/services/ios/xcodebuild-service.js +50 -69
  231. package/lib/services/ios-debugger-port-service.js +23 -36
  232. package/lib/services/ios-device-debug-service.js +75 -102
  233. package/lib/services/ios-entitlements-service.js +31 -42
  234. package/lib/services/ios-extensions-service.js +18 -29
  235. package/lib/services/ios-project-service.js +418 -440
  236. package/lib/services/ios-provision-service.js +108 -129
  237. package/lib/services/ios-watch-app-service.js +21 -32
  238. package/lib/services/ip-service.js +38 -53
  239. package/lib/services/itmstransporter-service.js +129 -152
  240. package/lib/services/livesync/android-device-livesync-service-base.js +31 -48
  241. package/lib/services/livesync/android-device-livesync-service.js +120 -149
  242. package/lib/services/livesync/android-device-livesync-sockets-service.js +123 -155
  243. package/lib/services/livesync/android-livesync-service.js +16 -37
  244. package/lib/services/livesync/android-livesync-tool.js +89 -112
  245. package/lib/services/livesync/device-livesync-service-base.js +15 -28
  246. package/lib/services/livesync/ios-device-livesync-service.js +114 -143
  247. package/lib/services/livesync/ios-livesync-service.js +44 -60
  248. package/lib/services/livesync/platform-livesync-service-base.js +96 -120
  249. package/lib/services/log-parser-service.js +1 -1
  250. package/lib/services/log-source-map-service.js +33 -43
  251. package/lib/services/marking-mode-service.js +15 -28
  252. package/lib/services/npm-config-service.js +1 -1
  253. package/lib/services/pacote-service.js +49 -64
  254. package/lib/services/performance-service.js +1 -1
  255. package/lib/services/platform/add-platform-service.js +53 -69
  256. package/lib/services/platform/platform-validation-service.js +22 -33
  257. package/lib/services/platform/prepare-native-platform-service.js +50 -60
  258. package/lib/services/platform-environment-requirements.js +29 -38
  259. package/lib/services/plugins-service.js +128 -147
  260. package/lib/services/project-backup-service.js +1 -1
  261. package/lib/services/project-changes-service.js +129 -139
  262. package/lib/services/project-cleanup-service.js +64 -77
  263. package/lib/services/project-config-service.js +71 -80
  264. package/lib/services/project-data-service.js +116 -139
  265. package/lib/services/project-name-service.js +28 -43
  266. package/lib/services/project-service.js +84 -103
  267. package/lib/services/project-templates-service.js +52 -67
  268. package/lib/services/start-service.js +41 -59
  269. package/lib/services/temp-service.js +8 -21
  270. package/lib/services/terminal-spinner-service.js +13 -24
  271. package/lib/services/test-execution-service.js +59 -72
  272. package/lib/services/test-initialization-service.js +2 -2
  273. package/lib/services/timeline-profiler-service.js +1 -1
  274. package/lib/services/versions-service.js +119 -138
  275. package/lib/services/webpack/webpack-compiler-service.js +212 -224
  276. package/lib/services/xcconfig-service.js +8 -19
  277. package/lib/services/xcproj-service.js +12 -0
  278. package/lib/sys-info.js +45 -62
  279. package/lib/tools/node-modules/node-modules-builder.js +16 -27
  280. package/lib/yarn-package-manager.js +59 -78
  281. package/lib/yarn2-package-manager.js +60 -79
  282. package/package.json +59 -57
  283. package/vendor/aab-tool/README.txt +1 -1
  284. package/vendor/aab-tool/bundletool.jar +0 -0
  285. package/vendor/gradle-app/app/build.gradle +12 -4
  286. package/vendor/gradle-plugin/build.gradle +12 -4
  287. package/lib/common/resources/platform-tools/android/darwin/NOTICE.txt +0 -3407
  288. package/lib/common/resources/platform-tools/android/darwin/adb +0 -0
  289. package/lib/common/resources/platform-tools/android/linux/NOTICE.txt +0 -4451
  290. package/lib/common/resources/platform-tools/android/linux/adb +0 -0
  291. package/lib/common/resources/platform-tools/android/win32/AdbWinApi.dll +0 -0
  292. package/lib/common/resources/platform-tools/android/win32/AdbWinUsbApi.dll +0 -0
  293. package/lib/common/resources/platform-tools/android/win32/NOTICE.txt +0 -4451
  294. package/lib/common/resources/platform-tools/android/win32/adb.exe +0 -0
  295. 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;