nativescript 8.9.0-alpha.3 → 8.9.0-dev.0

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 (342) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/lib/android-tools-info.js +9 -20
  3. package/lib/base-package-manager.js +47 -64
  4. package/lib/bun-package-manager.js +65 -88
  5. package/lib/color.js +2 -2
  6. package/lib/commands/add-platform.js +14 -30
  7. package/lib/commands/apple-login.js +18 -29
  8. package/lib/commands/appstore-list.js +34 -45
  9. package/lib/commands/appstore-upload.js +52 -65
  10. package/lib/commands/build.js +55 -87
  11. package/lib/commands/clean.js +161 -176
  12. package/lib/commands/command-base.js +14 -27
  13. package/lib/commands/config.js +48 -67
  14. package/lib/commands/create-project.js +210 -229
  15. package/lib/commands/debug.js +66 -88
  16. package/lib/commands/deploy.js +28 -44
  17. package/lib/commands/embedding/embed.js +33 -52
  18. package/lib/commands/extensibility/install-extension.js +5 -16
  19. package/lib/commands/extensibility/list-extensions.js +13 -24
  20. package/lib/commands/extensibility/uninstall-extension.js +4 -15
  21. package/lib/commands/fonts.js +30 -41
  22. package/lib/commands/generate-assets.js +13 -28
  23. package/lib/commands/generate-help.js +2 -13
  24. package/lib/commands/generate.js +12 -60
  25. package/lib/commands/info.js +2 -13
  26. package/lib/commands/install.js +34 -49
  27. package/lib/commands/list-platforms.js +14 -25
  28. package/lib/commands/migrate.js +15 -26
  29. package/lib/commands/native-add.js +23 -46
  30. package/lib/commands/platform-clean.js +19 -32
  31. package/lib/commands/plugin/add-plugin.js +12 -25
  32. package/lib/commands/plugin/build-plugin.js +31 -44
  33. package/lib/commands/plugin/create-plugin.js +110 -133
  34. package/lib/commands/plugin/list-plugins.js +22 -33
  35. package/lib/commands/plugin/remove-plugin.js +20 -33
  36. package/lib/commands/plugin/update-plugin.js +20 -33
  37. package/lib/commands/post-install.js +20 -33
  38. package/lib/commands/prepare.js +19 -35
  39. package/lib/commands/preview.js +49 -62
  40. package/lib/commands/remove-platform.js +7 -18
  41. package/lib/commands/resources/resources-update.js +13 -26
  42. package/lib/commands/run.js +55 -76
  43. package/lib/commands/start.js +6 -19
  44. package/lib/commands/test-init.js +123 -134
  45. package/lib/commands/test.js +66 -89
  46. package/lib/commands/typings.js +126 -142
  47. package/lib/commands/update-platform.js +22 -35
  48. package/lib/commands/update.js +30 -43
  49. package/lib/common/child-process.js +53 -72
  50. package/lib/common/codeGeneration/code-entity.js +1 -1
  51. package/lib/common/codeGeneration/code-printer.js +1 -1
  52. package/lib/common/command-params.js +7 -18
  53. package/lib/common/commands/analytics.js +27 -40
  54. package/lib/common/commands/autocompletion.js +39 -56
  55. package/lib/common/commands/device/device-log-stream.js +12 -23
  56. package/lib/common/commands/device/get-file.js +22 -33
  57. package/lib/common/commands/device/list-applications.js +12 -23
  58. package/lib/common/commands/device/list-devices.js +72 -87
  59. package/lib/common/commands/device/list-files.js +23 -34
  60. package/lib/common/commands/device/put-file.js +22 -33
  61. package/lib/common/commands/device/run-application.js +12 -25
  62. package/lib/common/commands/device/stop-application.js +11 -22
  63. package/lib/common/commands/device/uninstall-application.js +6 -17
  64. package/lib/common/commands/generate-messages.js +17 -28
  65. package/lib/common/commands/help.js +20 -33
  66. package/lib/common/commands/package-manager-get.js +6 -17
  67. package/lib/common/commands/package-manager-set.js +9 -20
  68. package/lib/common/commands/post-install.js +2 -13
  69. package/lib/common/commands/preuninstall.js +23 -38
  70. package/lib/common/commands/proxy/proxy-base.js +8 -19
  71. package/lib/common/commands/proxy/proxy-clear.js +4 -15
  72. package/lib/common/commands/proxy/proxy-get.js +3 -14
  73. package/lib/common/commands/proxy/proxy-set.js +87 -100
  74. package/lib/common/constants.js +11 -11
  75. package/lib/common/decorators.js +10 -22
  76. package/lib/common/dispatchers.js +79 -96
  77. package/lib/common/errors.js +89 -104
  78. package/lib/common/file-system.js +108 -130
  79. package/lib/common/header.js +1 -2
  80. package/lib/common/helpers.js +149 -178
  81. package/lib/common/host-info.js +37 -50
  82. package/lib/common/http-client.js +93 -108
  83. package/lib/common/logger/appenders/cli-appender.js +1 -2
  84. package/lib/common/logger/appenders/emit-appender.js +1 -2
  85. package/lib/common/logger/layouts/cli-layout.js +1 -2
  86. package/lib/common/logger/logger.js +4 -4
  87. package/lib/common/mobile/android/android-application-manager.js +121 -142
  88. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -1
  89. package/lib/common/mobile/android/android-debug-bridge.js +87 -112
  90. package/lib/common/mobile/android/android-device-file-system.js +98 -131
  91. package/lib/common/mobile/android/android-device-hash-service.js +50 -75
  92. package/lib/common/mobile/android/android-device.js +68 -85
  93. package/lib/common/mobile/android/android-emulator-services.js +105 -130
  94. package/lib/common/mobile/android/android-ini-file-parser.js +8 -6
  95. package/lib/common/mobile/android/android-log-filter.js +1 -1
  96. package/lib/common/mobile/android/android-virtual-device-service.js +76 -97
  97. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -29
  98. package/lib/common/mobile/android/genymotion/genymotion-service.js +91 -118
  99. package/lib/common/mobile/android/genymotion/virtualbox-service.js +64 -81
  100. package/lib/common/mobile/android/logcat-helper.js +108 -127
  101. package/lib/common/mobile/application-manager-base.js +84 -107
  102. package/lib/common/mobile/device-log-provider-base.js +7 -18
  103. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -108
  104. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -105
  105. package/lib/common/mobile/ios/device/ios-device-operations.js +105 -142
  106. package/lib/common/mobile/ios/device/ios-device.js +20 -36
  107. package/lib/common/mobile/ios/ios-device-base.js +58 -81
  108. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +63 -92
  109. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -1
  110. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +60 -89
  111. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +27 -43
  112. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -62
  113. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -35
  114. package/lib/common/mobile/mobile-core/android-device-discovery.js +43 -62
  115. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +21 -32
  116. package/lib/common/mobile/mobile-core/android-process-service.js +143 -182
  117. package/lib/common/mobile/mobile-core/device-discovery.js +2 -13
  118. package/lib/common/mobile/mobile-core/devices-service.js +386 -436
  119. package/lib/common/mobile/mobile-core/ios-device-discovery.js +24 -35
  120. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +47 -62
  121. package/lib/common/mobile/mobile-helper.js +15 -26
  122. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -52
  123. package/lib/common/opener.js +2 -2
  124. package/lib/common/prompter.js +90 -105
  125. package/lib/common/queue.js +9 -20
  126. package/lib/common/services/auto-completion-service.js +39 -52
  127. package/lib/common/services/cancellation.js +17 -28
  128. package/lib/common/services/commands-service.js +146 -169
  129. package/lib/common/services/help-service.js +132 -157
  130. package/lib/common/services/hooks-service.js +93 -108
  131. package/lib/common/services/ios-notification-service.js +21 -34
  132. package/lib/common/services/json-file-settings-service.js +52 -71
  133. package/lib/common/services/lock-service.js +35 -52
  134. package/lib/common/services/message-contract-generator.js +35 -46
  135. package/lib/common/services/micro-templating-service.js +4 -15
  136. package/lib/common/services/net-service.js +90 -107
  137. package/lib/common/services/project-files-manager.js +10 -23
  138. package/lib/common/services/proxy-service.js +13 -24
  139. package/lib/common/services/qr.js +13 -24
  140. package/lib/common/services/settings-service.js +1 -1
  141. package/lib/common/services/xcode-select-service.js +20 -35
  142. package/lib/common/utils.js +2 -2
  143. package/lib/common/validators/project-name-validator.js +1 -1
  144. package/lib/common/validators/validation-result.js +1 -1
  145. package/lib/common/verify-node-version.js +2 -3
  146. package/lib/common/yok.js +23 -36
  147. package/lib/config.js +36 -51
  148. package/lib/constants.js +24 -24
  149. package/lib/controllers/build-controller.js +82 -99
  150. package/lib/controllers/debug-controller.js +107 -128
  151. package/lib/controllers/deploy-controller.js +15 -23
  152. package/lib/controllers/migrate-controller.js +722 -795
  153. package/lib/controllers/platform-controller.js +70 -85
  154. package/lib/controllers/prepare-controller.js +232 -261
  155. package/lib/controllers/run-controller.js +397 -411
  156. package/lib/controllers/update-controller-base.js +16 -29
  157. package/lib/controllers/update-controller.js +94 -119
  158. package/lib/data/prepare-data.js +4 -1
  159. package/lib/definitions/ios.d.ts +9 -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 +44 -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 +150 -200
  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 +163 -199
  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 +22 -35
  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 +205 -231
  194. package/lib/services/android-project-service.js +126 -171
  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 +195 -214
  198. package/lib/services/apple-portal/srp/srp-wrapper.js +43 -58
  199. package/lib/services/assets-generation/assets-generation-service.js +103 -117
  200. package/lib/services/build-artifacts-service.js +9 -20
  201. package/lib/services/build-info-file-service.js +20 -35
  202. package/lib/services/cleanup-service.js +47 -76
  203. package/lib/services/cocoapods-service.js +111 -132
  204. package/lib/services/device/device-install-app-service.js +54 -71
  205. package/lib/services/doctor-service.js +99 -118
  206. package/lib/services/extensibility-service.js +81 -100
  207. package/lib/services/files-hash-service.js +26 -43
  208. package/lib/services/hmr-status-service.js +1 -1
  209. package/lib/services/initialize-service.js +37 -50
  210. package/lib/services/ios/export-options-plist-service.js +38 -51
  211. package/lib/services/ios/ios-signing-service.js +168 -187
  212. package/lib/services/ios/spm-service.js +43 -53
  213. package/lib/services/ios/xcodebuild-args-service.js +77 -94
  214. package/lib/services/ios/xcodebuild-command-service.js +14 -25
  215. package/lib/services/ios/xcodebuild-service.js +52 -71
  216. package/lib/services/ios-debugger-port-service.js +24 -37
  217. package/lib/services/ios-device-debug-service.js +75 -102
  218. package/lib/services/ios-entitlements-service.js +31 -42
  219. package/lib/services/ios-extensions-service.js +18 -29
  220. package/lib/services/ios-project-service.js +419 -460
  221. package/lib/services/ios-provision-service.js +108 -129
  222. package/lib/services/ios-watch-app-service.js +21 -32
  223. package/lib/services/ip-service.js +38 -53
  224. package/lib/services/itmstransporter-service.js +129 -152
  225. package/lib/services/livesync/android-device-livesync-service-base.js +31 -48
  226. package/lib/services/livesync/android-device-livesync-service.js +120 -149
  227. package/lib/services/livesync/android-device-livesync-sockets-service.js +121 -152
  228. package/lib/services/livesync/android-livesync-service.js +14 -35
  229. package/lib/services/livesync/android-livesync-tool.js +90 -113
  230. package/lib/services/livesync/device-livesync-service-base.js +15 -28
  231. package/lib/services/livesync/ios-device-livesync-service.js +114 -143
  232. package/lib/services/livesync/ios-livesync-service.js +42 -58
  233. package/lib/services/livesync/platform-livesync-service-base.js +94 -119
  234. package/lib/services/log-parser-service.js +1 -1
  235. package/lib/services/log-source-map-service.js +30 -41
  236. package/lib/services/marking-mode-service.js +15 -28
  237. package/lib/services/npm-config-service.js +1 -1
  238. package/lib/services/pacote-service.js +51 -66
  239. package/lib/services/performance-service.js +1 -1
  240. package/lib/services/platform/add-platform-service.js +50 -71
  241. package/lib/services/platform/platform-validation-service.js +22 -33
  242. package/lib/services/platform/prepare-native-platform-service.js +49 -62
  243. package/lib/services/platform-environment-requirements.js +26 -37
  244. package/lib/services/plugins-service.js +122 -147
  245. package/lib/services/project-backup-service.js +1 -1
  246. package/lib/services/project-changes-service.js +124 -141
  247. package/lib/services/project-cleanup-service.js +64 -77
  248. package/lib/services/project-config-service.js +71 -80
  249. package/lib/services/project-data-service.js +101 -118
  250. package/lib/services/project-name-service.js +28 -43
  251. package/lib/services/project-service.js +84 -103
  252. package/lib/services/project-templates-service.js +52 -67
  253. package/lib/services/start-service.js +41 -59
  254. package/lib/services/temp-service.js +8 -21
  255. package/lib/services/terminal-spinner-service.js +15 -26
  256. package/lib/services/test-execution-service.js +59 -72
  257. package/lib/services/test-initialization-service.js +2 -2
  258. package/lib/services/timeline-profiler-service.js +1 -1
  259. package/lib/services/versions-service.js +119 -138
  260. package/lib/services/webpack/webpack-compiler-service.js +214 -234
  261. package/lib/services/xcconfig-service.js +8 -19
  262. package/lib/sys-info.js +45 -62
  263. package/lib/tools/node-modules/node-modules-builder.js +16 -27
  264. package/lib/yarn-package-manager.js +59 -78
  265. package/lib/yarn2-package-manager.js +60 -79
  266. package/package.json +66 -81
  267. package/node_modules/@npmcli/move-file/LICENSE.md +0 -22
  268. package/node_modules/@npmcli/move-file/README.md +0 -69
  269. package/node_modules/@npmcli/move-file/lib/index.js +0 -185
  270. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +0 -21
  271. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +0 -68
  272. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +0 -31
  273. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +0 -29
  274. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +0 -64
  275. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +0 -39
  276. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +0 -23
  277. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +0 -29
  278. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +0 -10
  279. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +0 -44
  280. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +0 -266
  281. package/node_modules/@npmcli/move-file/package.json +0 -47
  282. package/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  283. package/node_modules/balanced-match/LICENSE.md +0 -21
  284. package/node_modules/balanced-match/README.md +0 -97
  285. package/node_modules/balanced-match/index.js +0 -62
  286. package/node_modules/balanced-match/package.json +0 -48
  287. package/node_modules/concat-map/.travis.yml +0 -4
  288. package/node_modules/concat-map/LICENSE +0 -18
  289. package/node_modules/concat-map/README.markdown +0 -62
  290. package/node_modules/concat-map/example/map.js +0 -6
  291. package/node_modules/concat-map/index.js +0 -13
  292. package/node_modules/concat-map/package.json +0 -43
  293. package/node_modules/concat-map/test/map.js +0 -39
  294. package/node_modules/fs.realpath/LICENSE +0 -43
  295. package/node_modules/fs.realpath/README.md +0 -33
  296. package/node_modules/fs.realpath/index.js +0 -66
  297. package/node_modules/fs.realpath/old.js +0 -303
  298. package/node_modules/fs.realpath/package.json +0 -26
  299. package/node_modules/inflight/LICENSE +0 -15
  300. package/node_modules/inflight/README.md +0 -37
  301. package/node_modules/inflight/inflight.js +0 -54
  302. package/node_modules/inflight/package.json +0 -29
  303. package/node_modules/inherits/LICENSE +0 -16
  304. package/node_modules/inherits/README.md +0 -42
  305. package/node_modules/inherits/inherits.js +0 -9
  306. package/node_modules/inherits/inherits_browser.js +0 -27
  307. package/node_modules/inherits/package.json +0 -29
  308. package/node_modules/once/LICENSE +0 -15
  309. package/node_modules/once/README.md +0 -79
  310. package/node_modules/once/once.js +0 -42
  311. package/node_modules/once/package.json +0 -33
  312. package/node_modules/path-is-absolute/index.js +0 -20
  313. package/node_modules/path-is-absolute/license +0 -21
  314. package/node_modules/path-is-absolute/package.json +0 -43
  315. package/node_modules/path-is-absolute/readme.md +0 -59
  316. package/node_modules/rimraf/LICENSE +0 -15
  317. package/node_modules/rimraf/README.md +0 -101
  318. package/node_modules/rimraf/bin.js +0 -68
  319. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +0 -21
  320. package/node_modules/rimraf/node_modules/brace-expansion/README.md +0 -129
  321. package/node_modules/rimraf/node_modules/brace-expansion/index.js +0 -201
  322. package/node_modules/rimraf/node_modules/brace-expansion/package.json +0 -47
  323. package/node_modules/rimraf/node_modules/glob/LICENSE +0 -21
  324. package/node_modules/rimraf/node_modules/glob/README.md +0 -378
  325. package/node_modules/rimraf/node_modules/glob/common.js +0 -238
  326. package/node_modules/rimraf/node_modules/glob/glob.js +0 -790
  327. package/node_modules/rimraf/node_modules/glob/package.json +0 -55
  328. package/node_modules/rimraf/node_modules/glob/sync.js +0 -486
  329. package/node_modules/rimraf/node_modules/minimatch/LICENSE +0 -15
  330. package/node_modules/rimraf/node_modules/minimatch/README.md +0 -230
  331. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +0 -947
  332. package/node_modules/rimraf/node_modules/minimatch/package.json +0 -33
  333. package/node_modules/rimraf/package.json +0 -32
  334. package/node_modules/rimraf/rimraf.js +0 -360
  335. package/node_modules/stringify-package/LICENSE +0 -13
  336. package/node_modules/stringify-package/README.md +0 -55
  337. package/node_modules/stringify-package/index.js +0 -18
  338. package/node_modules/stringify-package/package.json +0 -38
  339. package/node_modules/wrappy/LICENSE +0 -15
  340. package/node_modules/wrappy/README.md +0 -36
  341. package/node_modules/wrappy/package.json +0 -29
  342. package/node_modules/wrappy/wrappy.js +0 -33
@@ -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.PlatformCommandHelper = void 0;
13
4
  const path = require("path");
@@ -31,87 +22,79 @@ class PlatformCommandHelper {
31
22
  this.$projectDataService = $projectDataService;
32
23
  this.$tempService = $tempService;
33
24
  }
34
- addPlatforms(platforms, projectData, frameworkPath) {
35
- return __awaiter(this, void 0, void 0, function* () {
36
- if (this.$options.hostProjectPath) {
37
- this.$logger.info("Ignoring platform add becuase of --hostProjectPath flag");
38
- return;
39
- }
40
- const platformsDir = projectData.platformsDir;
41
- this.$fs.ensureDirectoryExists(platformsDir);
42
- for (const platform of platforms) {
43
- this.$platformValidationService.validatePlatform(platform, projectData);
44
- const platformPath = path.join(projectData.platformsDir, platform);
45
- const isPlatformAdded = this.isPlatformAdded(platform, platformPath, projectData);
46
- if (isPlatformAdded) {
47
- this.$errors.fail(`Platform ${platform} already added`);
48
- }
49
- yield this.$platformController.addPlatform({
50
- projectDir: projectData.projectDir,
51
- platform,
52
- frameworkPath,
53
- });
25
+ async addPlatforms(platforms, projectData, frameworkPath) {
26
+ if (this.$options.hostProjectPath) {
27
+ this.$logger.info("Ignoring platform add becuase of --hostProjectPath flag");
28
+ return;
29
+ }
30
+ const platformsDir = projectData.platformsDir;
31
+ this.$fs.ensureDirectoryExists(platformsDir);
32
+ for (const platform of platforms) {
33
+ this.$platformValidationService.validatePlatform(platform, projectData);
34
+ const platformPath = path.join(projectData.platformsDir, platform);
35
+ const isPlatformAdded = this.isPlatformAdded(platform, platformPath, projectData);
36
+ if (isPlatformAdded) {
37
+ this.$errors.fail(`Platform ${platform} already added`);
54
38
  }
55
- });
39
+ await this.$platformController.addPlatform({
40
+ projectDir: projectData.projectDir,
41
+ platform,
42
+ frameworkPath,
43
+ });
44
+ }
56
45
  }
57
- cleanPlatforms(platforms, projectData, framworkPath) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- for (const platform of platforms) {
60
- const version = this.getCurrentPlatformVersion(platform, projectData);
61
- yield this.removePlatforms([platform], projectData);
62
- const platformParam = version ? `${platform}@${version}` : platform;
63
- yield this.addPlatforms([platformParam], projectData, framworkPath);
64
- }
65
- });
46
+ async cleanPlatforms(platforms, projectData, framworkPath) {
47
+ for (const platform of platforms) {
48
+ const version = this.getCurrentPlatformVersion(platform, projectData);
49
+ await this.removePlatforms([platform], projectData);
50
+ const platformParam = version ? `${platform}@${version}` : platform;
51
+ await this.addPlatforms([platformParam], projectData, framworkPath);
52
+ }
66
53
  }
67
- removePlatforms(platforms, projectData) {
68
- return __awaiter(this, void 0, void 0, function* () {
69
- if (this.$options.hostProjectPath) {
70
- this.$logger.info("Ignoring platform remove becuase of --native-host flag");
71
- return;
54
+ async removePlatforms(platforms, projectData) {
55
+ if (this.$options.hostProjectPath) {
56
+ this.$logger.info("Ignoring platform remove becuase of --native-host flag");
57
+ return;
58
+ }
59
+ for (const platform of platforms) {
60
+ this.$platformValidationService.validatePlatformInstalled(platform, projectData);
61
+ const platformData = this.$platformsDataService.getPlatformData(platform, projectData);
62
+ let errorMessage;
63
+ try {
64
+ await platformData.platformProjectService.stopServices(platformData.projectRoot);
72
65
  }
73
- for (const platform of platforms) {
74
- this.$platformValidationService.validatePlatformInstalled(platform, projectData);
75
- const platformData = this.$platformsDataService.getPlatformData(platform, projectData);
76
- let errorMessage;
77
- try {
78
- yield platformData.platformProjectService.stopServices(platformData.projectRoot);
79
- }
80
- catch (err) {
81
- errorMessage = err.message;
82
- }
83
- try {
84
- const platformDir = path.join(projectData.platformsDir, platform.toLowerCase());
85
- this.$fs.deleteDirectory(platformDir);
86
- yield this.$packageInstallationManager.uninstall(platformData.frameworkPackageName, projectData.projectDir);
87
- this.$logger.info(`Platform ${platform} successfully removed.`);
88
- }
89
- catch (err) {
90
- this.$logger.error(`Failed to remove ${platform} platform with errors:`);
91
- if (errorMessage) {
92
- this.$logger.error(errorMessage);
93
- }
94
- this.$errors.fail(err.message);
66
+ catch (err) {
67
+ errorMessage = err.message;
68
+ }
69
+ try {
70
+ const platformDir = path.join(projectData.platformsDir, platform.toLowerCase());
71
+ this.$fs.deleteDirectory(platformDir);
72
+ await this.$packageInstallationManager.uninstall(platformData.frameworkPackageName, projectData.projectDir);
73
+ this.$logger.info(`Platform ${platform} successfully removed.`);
74
+ }
75
+ catch (err) {
76
+ this.$logger.error(`Failed to remove ${platform} platform with errors:`);
77
+ if (errorMessage) {
78
+ this.$logger.error(errorMessage);
95
79
  }
80
+ this.$errors.fail(err.message);
96
81
  }
97
- });
82
+ }
98
83
  }
99
- updatePlatforms(platforms, projectData) {
100
- return __awaiter(this, void 0, void 0, function* () {
101
- for (const platformParam of platforms) {
102
- const data = platformParam.split("@"), platform = data[0], version = data[1];
103
- const hasPlatformDirectory = this.$fs.exists(path.join(projectData.platformsDir, platform.toLowerCase()));
104
- if (hasPlatformDirectory) {
105
- yield this.updatePlatform(platform, version, projectData);
106
- }
107
- else {
108
- yield this.$platformController.addPlatform({
109
- projectDir: projectData.projectDir,
110
- platform: platformParam,
111
- });
112
- }
84
+ async updatePlatforms(platforms, projectData) {
85
+ for (const platformParam of platforms) {
86
+ const data = platformParam.split("@"), platform = data[0], version = data[1];
87
+ const hasPlatformDirectory = this.$fs.exists(path.join(projectData.platformsDir, platform.toLowerCase()));
88
+ if (hasPlatformDirectory) {
89
+ await this.updatePlatform(platform, version, projectData);
113
90
  }
114
- });
91
+ else {
92
+ await this.$platformController.addPlatform({
93
+ projectDir: projectData.projectDir,
94
+ platform: platformParam,
95
+ });
96
+ }
97
+ }
115
98
  }
116
99
  getInstalledPlatforms(projectData) {
117
100
  if (!this.$fs.exists(projectData.platformsDir)) {
@@ -151,46 +134,42 @@ class PlatformCommandHelper {
151
134
  return (prepareInfo.nativePlatformStatus !==
152
135
  "1");
153
136
  }
154
- updatePlatform(platform, version, projectData) {
155
- return __awaiter(this, void 0, void 0, function* () {
156
- const platformData = this.$platformsDataService.getPlatformData(platform, projectData);
157
- const data = this.$projectDataService.getRuntimePackage(projectData.projectDir, platformData.platformNameLowerCase);
158
- const currentVersion = data && data.version ? data.version : "0.2.0";
159
- const installedModuleDir = yield this.$tempService.mkdirSync("runtime-to-update");
160
- let newVersion = version === constants.PackageVersion.NEXT
161
- ? yield this.$packageInstallationManager.getNextVersion(platformData.frameworkPackageName)
162
- : version ||
163
- (yield this.$packageInstallationManager.getLatestCompatibleVersion(platformData.frameworkPackageName));
164
- yield this.$pacoteService.extractPackage(`${platformData.frameworkPackageName}@${newVersion}`, installedModuleDir);
165
- const cachedPackageData = this.$fs.readJson(path.join(installedModuleDir, "package.json"));
166
- newVersion = (cachedPackageData && cachedPackageData.version) || newVersion;
167
- if (!semver.valid(newVersion)) {
168
- this.$errors.fail("The version %s is not valid. The version should consists from 3 parts separated by dot.", newVersion);
169
- }
170
- if (!semver.gt(currentVersion, newVersion)) {
171
- yield this.updatePlatformCore(platformData, { currentVersion, newVersion }, projectData);
172
- }
173
- else if (semver.eq(currentVersion, newVersion)) {
174
- this.$errors.fail("Current and new version are the same.");
175
- }
176
- else {
177
- this.$errors.fail(`Your current version: ${currentVersion} is higher than the one you're trying to install ${newVersion}.`);
178
- }
179
- });
137
+ async updatePlatform(platform, version, projectData) {
138
+ const platformData = this.$platformsDataService.getPlatformData(platform, projectData);
139
+ const data = this.$projectDataService.getRuntimePackage(projectData.projectDir, platformData.platformNameLowerCase);
140
+ const currentVersion = data && data.version ? data.version : "0.2.0";
141
+ const installedModuleDir = await this.$tempService.mkdirSync("runtime-to-update");
142
+ let newVersion = version === constants.PackageVersion.NEXT
143
+ ? await this.$packageInstallationManager.getNextVersion(platformData.frameworkPackageName)
144
+ : version ||
145
+ (await this.$packageInstallationManager.getLatestCompatibleVersion(platformData.frameworkPackageName));
146
+ await this.$pacoteService.extractPackage(`${platformData.frameworkPackageName}@${newVersion}`, installedModuleDir);
147
+ const cachedPackageData = this.$fs.readJson(path.join(installedModuleDir, "package.json"));
148
+ newVersion = (cachedPackageData && cachedPackageData.version) || newVersion;
149
+ if (!semver.valid(newVersion)) {
150
+ this.$errors.fail("The version %s is not valid. The version should consists from 3 parts separated by dot.", newVersion);
151
+ }
152
+ if (!semver.gt(currentVersion, newVersion)) {
153
+ await this.updatePlatformCore(platformData, { currentVersion, newVersion }, projectData);
154
+ }
155
+ else if (semver.eq(currentVersion, newVersion)) {
156
+ this.$errors.fail("Current and new version are the same.");
157
+ }
158
+ else {
159
+ this.$errors.fail(`Your current version: ${currentVersion} is higher than the one you're trying to install ${newVersion}.`);
160
+ }
180
161
  }
181
- updatePlatformCore(platformData, updateOptions, projectData) {
182
- return __awaiter(this, void 0, void 0, function* () {
183
- let packageName = platformData.normalizedPlatformName.toLowerCase();
184
- yield this.removePlatforms([packageName], projectData);
185
- packageName = updateOptions.newVersion
186
- ? `${packageName}@${updateOptions.newVersion}`
187
- : packageName;
188
- yield this.$platformController.addPlatform({
189
- projectDir: projectData.projectDir,
190
- platform: packageName,
191
- });
192
- this.$logger.info("Successfully updated to version ", updateOptions.newVersion);
162
+ async updatePlatformCore(platformData, updateOptions, projectData) {
163
+ let packageName = platformData.normalizedPlatformName.toLowerCase();
164
+ await this.removePlatforms([packageName], projectData);
165
+ packageName = updateOptions.newVersion
166
+ ? `${packageName}@${updateOptions.newVersion}`
167
+ : packageName;
168
+ await this.$platformController.addPlatform({
169
+ projectDir: projectData.projectDir,
170
+ platform: packageName,
193
171
  });
172
+ this.$logger.info("Successfully updated to version ", updateOptions.newVersion);
194
173
  }
195
174
  isPlatformPrepared(platform, projectData) {
196
175
  const platformData = this.$platformsDataService.getPlatformData(platform, projectData);