nativescript 8.9.0-dev.1 → 8.9.0-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/lib/.d.ts +1 -0
  3. package/lib/android-tools-info.js +32 -9
  4. package/lib/base-package-manager.js +71 -47
  5. package/lib/bootstrap.js +6 -1
  6. package/lib/bun-package-manager.js +104 -65
  7. package/lib/color.js +5 -2
  8. package/lib/commands/add-platform.js +31 -14
  9. package/lib/commands/apple-login.js +30 -18
  10. package/lib/commands/appstore-list.js +46 -34
  11. package/lib/commands/appstore-upload.js +68 -52
  12. package/lib/commands/build.js +90 -57
  13. package/lib/commands/clean.js +197 -161
  14. package/lib/commands/command-base.js +28 -14
  15. package/lib/commands/config.js +71 -48
  16. package/lib/commands/create-project.js +235 -210
  17. package/lib/commands/debug.js +93 -66
  18. package/lib/commands/deploy.js +47 -30
  19. package/lib/commands/embedding/embed.js +59 -33
  20. package/lib/commands/extensibility/install-extension.js +17 -5
  21. package/lib/commands/extensibility/list-extensions.js +25 -13
  22. package/lib/commands/extensibility/uninstall-extension.js +16 -4
  23. package/lib/commands/fonts.js +42 -30
  24. package/lib/commands/generate-assets.js +29 -13
  25. package/lib/commands/generate-help.js +14 -2
  26. package/lib/commands/generate.js +70 -12
  27. package/lib/commands/info.js +14 -2
  28. package/lib/commands/install.js +50 -34
  29. package/lib/commands/list-platforms.js +26 -14
  30. package/lib/commands/migrate.js +27 -15
  31. package/lib/commands/native-add.js +51 -23
  32. package/lib/commands/platform-clean.js +33 -19
  33. package/lib/commands/plugin/add-plugin.js +26 -12
  34. package/lib/commands/plugin/build-plugin.js +45 -31
  35. package/lib/commands/plugin/create-plugin.js +138 -110
  36. package/lib/commands/plugin/list-plugins.js +34 -22
  37. package/lib/commands/plugin/remove-plugin.js +35 -20
  38. package/lib/commands/plugin/update-plugin.js +34 -20
  39. package/lib/commands/post-install.js +39 -20
  40. package/lib/commands/prepare.js +39 -22
  41. package/lib/commands/preview.js +64 -49
  42. package/lib/commands/remove-platform.js +19 -7
  43. package/lib/commands/resources/resources-update.js +28 -13
  44. package/lib/commands/run.js +77 -55
  45. package/lib/commands/setup.js +1 -0
  46. package/lib/commands/start.js +20 -6
  47. package/lib/commands/test-init.js +138 -123
  48. package/lib/commands/test.js +97 -67
  49. package/lib/commands/typings.js +143 -126
  50. package/lib/commands/update-platform.js +40 -22
  51. package/lib/commands/update.js +45 -30
  52. package/lib/commands/widget.js +767 -0
  53. package/lib/common/bootstrap.js +1 -0
  54. package/lib/common/child-process.js +75 -53
  55. package/lib/common/codeGeneration/code-entity.js +2 -1
  56. package/lib/common/codeGeneration/code-printer.js +2 -1
  57. package/lib/common/command-params.js +19 -7
  58. package/lib/common/commands/analytics.js +43 -27
  59. package/lib/common/commands/autocompletion.js +59 -39
  60. package/lib/common/commands/device/device-log-stream.js +24 -12
  61. package/lib/common/commands/device/get-file.js +35 -22
  62. package/lib/common/commands/device/list-applications.js +24 -12
  63. package/lib/common/commands/device/list-devices.js +90 -72
  64. package/lib/common/commands/device/list-files.js +36 -23
  65. package/lib/common/commands/device/put-file.js +35 -22
  66. package/lib/common/commands/device/run-application.js +26 -12
  67. package/lib/common/commands/device/stop-application.js +23 -11
  68. package/lib/common/commands/device/uninstall-application.js +18 -6
  69. package/lib/common/commands/doctor.js +3 -2
  70. package/lib/common/commands/generate-messages.js +29 -17
  71. package/lib/common/commands/help.js +34 -20
  72. package/lib/common/commands/package-manager-get.js +18 -6
  73. package/lib/common/commands/package-manager-set.js +21 -9
  74. package/lib/common/commands/post-install.js +14 -2
  75. package/lib/common/commands/preuninstall.js +48 -24
  76. package/lib/common/commands/proxy/proxy-base.js +23 -8
  77. package/lib/common/commands/proxy/proxy-clear.js +16 -4
  78. package/lib/common/commands/proxy/proxy-get.js +15 -3
  79. package/lib/common/commands/proxy/proxy-set.js +101 -87
  80. package/lib/common/common-lib.js +1 -0
  81. package/lib/common/constants.js +22 -11
  82. package/lib/common/decorators.js +70 -10
  83. package/lib/common/dispatchers.js +106 -80
  84. package/lib/common/errors.js +116 -91
  85. package/lib/common/file-system.js +141 -108
  86. package/lib/common/header.js +5 -1
  87. package/lib/common/helpers.js +267 -152
  88. package/lib/common/host-info.js +54 -37
  89. package/lib/common/http-client.js +128 -93
  90. package/lib/common/logger/appenders/cli-appender.js +6 -1
  91. package/lib/common/logger/appenders/emit-appender.js +6 -1
  92. package/lib/common/logger/layouts/cli-layout.js +3 -1
  93. package/lib/common/logger/logger.js +9 -4
  94. package/lib/common/messages/messages.js +6 -0
  95. package/lib/common/mobile/android/android-application-manager.js +162 -122
  96. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +2 -1
  97. package/lib/common/mobile/android/android-debug-bridge.js +118 -87
  98. package/lib/common/mobile/android/android-device-file-system.js +135 -98
  99. package/lib/common/mobile/android/android-device-hash-service.js +78 -50
  100. package/lib/common/mobile/android/android-device.js +93 -68
  101. package/lib/common/mobile/android/android-emulator-services.js +131 -105
  102. package/lib/common/mobile/android/android-ini-file-parser.js +9 -0
  103. package/lib/common/mobile/android/android-log-filter.js +5 -1
  104. package/lib/common/mobile/android/android-virtual-device-service.js +123 -76
  105. package/lib/common/mobile/android/device-android-debug-bridge.js +30 -13
  106. package/lib/common/mobile/android/genymotion/genymotion-service.js +123 -91
  107. package/lib/common/mobile/android/genymotion/virtualbox-service.js +92 -64
  108. package/lib/common/mobile/android/logcat-helper.js +140 -108
  109. package/lib/common/mobile/application-manager-base.js +113 -84
  110. package/lib/common/mobile/device-emitter.js +4 -0
  111. package/lib/common/mobile/device-log-emitter.js +1 -0
  112. package/lib/common/mobile/device-log-provider-base.js +19 -7
  113. package/lib/common/mobile/device-log-provider.js +23 -0
  114. package/lib/common/mobile/device-platforms-constants.js +1 -0
  115. package/lib/common/mobile/emulator-helper.js +3 -0
  116. package/lib/common/mobile/ios/device/ios-application-manager.js +111 -79
  117. package/lib/common/mobile/ios/device/ios-device-file-system.js +106 -78
  118. package/lib/common/mobile/ios/device/ios-device-operations.js +146 -105
  119. package/lib/common/mobile/ios/device/ios-device.js +40 -20
  120. package/lib/common/mobile/ios/ios-device-base.js +82 -58
  121. package/lib/common/mobile/ios/ios-device-product-name-mapper.js +2 -0
  122. package/lib/common/mobile/ios/ios-log-filter.js +1 -0
  123. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +96 -63
  124. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +2 -1
  125. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +95 -60
  126. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +48 -27
  127. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +63 -37
  128. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +36 -24
  129. package/lib/common/mobile/local-to-device-path-data-factory.js +1 -0
  130. package/lib/common/mobile/log-filter.js +2 -0
  131. package/lib/common/mobile/logging-levels.js +1 -0
  132. package/lib/common/mobile/mobile-core/android-device-discovery.js +64 -43
  133. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +35 -21
  134. package/lib/common/mobile/mobile-core/android-process-service.js +214 -143
  135. package/lib/common/mobile/mobile-core/device-discovery.js +14 -2
  136. package/lib/common/mobile/mobile-core/devices-service.js +505 -386
  137. package/lib/common/mobile/mobile-core/ios-device-discovery.js +37 -24
  138. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +65 -47
  139. package/lib/common/mobile/mobile-helper.js +27 -15
  140. package/lib/common/mobile/wp8/wp8-emulator-services.js +53 -25
  141. package/lib/common/opener.js +3 -2
  142. package/lib/common/os-info.js +1 -0
  143. package/lib/common/plist-parser.js +1 -0
  144. package/lib/common/project-helper.js +1 -0
  145. package/lib/common/prompter.js +114 -91
  146. package/lib/common/queue.js +21 -9
  147. package/lib/common/resource-loader.js +1 -0
  148. package/lib/common/services/auto-completion-service.js +65 -40
  149. package/lib/common/services/cancellation.js +29 -17
  150. package/lib/common/services/commands-service.js +180 -146
  151. package/lib/common/services/help-service.js +166 -133
  152. package/lib/common/services/hooks-service.js +121 -93
  153. package/lib/common/services/ios-notification-service.js +35 -21
  154. package/lib/common/services/json-file-settings-service.js +77 -52
  155. package/lib/common/services/lock-service.js +58 -35
  156. package/lib/common/services/message-contract-generator.js +47 -35
  157. package/lib/common/services/messages-service.js +1 -0
  158. package/lib/common/services/micro-templating-service.js +21 -4
  159. package/lib/common/services/net-service.js +110 -90
  160. package/lib/common/services/project-files-manager.js +28 -10
  161. package/lib/common/services/project-files-provider-base.js +1 -0
  162. package/lib/common/services/proxy-service.js +25 -13
  163. package/lib/common/services/qr.js +25 -13
  164. package/lib/common/services/settings-service.js +2 -1
  165. package/lib/common/services/xcode-select-service.js +36 -20
  166. package/lib/common/utils.js +3 -2
  167. package/lib/common/validators/project-name-validator.js +2 -1
  168. package/lib/common/validators/validation-result.js +2 -1
  169. package/lib/common/verify-node-version.js +11 -3
  170. package/lib/common/yok.js +69 -35
  171. package/lib/config.js +72 -36
  172. package/lib/constants-provider.js +1 -0
  173. package/lib/constants.js +78 -25
  174. package/lib/controllers/build-controller.js +100 -82
  175. package/lib/controllers/debug-controller.js +133 -107
  176. package/lib/controllers/deploy-controller.js +24 -15
  177. package/lib/controllers/migrate-controller.js +884 -723
  178. package/lib/controllers/platform-controller.js +94 -71
  179. package/lib/controllers/prepare-controller.js +274 -232
  180. package/lib/controllers/run-controller.js +427 -397
  181. package/lib/controllers/update-controller-base.js +30 -16
  182. package/lib/controllers/update-controller.js +130 -94
  183. package/lib/data/build-data.js +1 -0
  184. package/lib/data/controller-data-base.js +1 -0
  185. package/lib/data/debug-data.js +1 -0
  186. package/lib/data/platform-data.js +1 -0
  187. package/lib/data/prepare-data.js +2 -4
  188. package/lib/data/run-data.js +1 -0
  189. package/lib/definitions/project.d.ts +26 -0
  190. package/lib/detached-processes/cleanup-js-subprocess.js +20 -5
  191. package/lib/detached-processes/cleanup-process.js +43 -30
  192. package/lib/detached-processes/file-log-service.js +2 -1
  193. package/lib/device-path-provider.js +35 -23
  194. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +171 -149
  195. package/lib/device-sockets/ios/notification.js +4 -1
  196. package/lib/device-sockets/ios/socket-request-executor.js +42 -24
  197. package/lib/helpers/android-bundle-validator-helper.js +3 -2
  198. package/lib/helpers/deploy-command-helper.js +50 -44
  199. package/lib/helpers/key-command-helper.js +17 -6
  200. package/lib/helpers/livesync-command-helper.js +155 -137
  201. package/lib/helpers/network-connectivity-validator.js +18 -6
  202. package/lib/helpers/options-track-helper.js +19 -7
  203. package/lib/helpers/package-path-helper.js +1 -0
  204. package/lib/helpers/platform-command-helper.js +127 -101
  205. package/lib/helpers/version-validator-helper.js +1 -0
  206. package/lib/key-commands/bootstrap.js +3 -2
  207. package/lib/key-commands/index.js +205 -154
  208. package/lib/nativescript-cli-lib-bootstrap.js +4 -0
  209. package/lib/nativescript-cli-lib.js +1 -0
  210. package/lib/nativescript-cli.js +24 -6
  211. package/lib/node/pbxproj-dom-xcode.js +1 -0
  212. package/lib/node/xcode.js +1 -0
  213. package/lib/node-package-manager.js +114 -81
  214. package/lib/options.js +156 -122
  215. package/lib/package-installation-manager.js +172 -130
  216. package/lib/package-manager.js +88 -63
  217. package/lib/platform-command-param.js +16 -4
  218. package/lib/pnpm-package-manager.js +81 -59
  219. package/lib/project-data.js +13 -1
  220. package/lib/providers/project-files-provider.js +2 -1
  221. package/lib/resolvers/livesync-service-resolver.js +1 -0
  222. package/lib/services/analytics/analytics-broker-process.js +32 -19
  223. package/lib/services/analytics/analytics-broker.js +31 -17
  224. package/lib/services/analytics/analytics-service.js +210 -170
  225. package/lib/services/analytics/google-analytics-provider.js +59 -43
  226. package/lib/services/analytics-settings-service.js +37 -15
  227. package/lib/services/android/android-bundle-tool-service.js +61 -43
  228. package/lib/services/android/gradle-build-args-service.js +23 -9
  229. package/lib/services/android/gradle-build-service.js +36 -22
  230. package/lib/services/android/gradle-command-service.js +36 -22
  231. package/lib/services/android-device-debug-service.js +123 -90
  232. package/lib/services/android-plugin-build-service.js +260 -205
  233. package/lib/services/android-project-service.js +241 -129
  234. package/lib/services/android-resources-migration-service.js +71 -51
  235. package/lib/services/apple-portal/apple-portal-application-service.js +64 -46
  236. package/lib/services/apple-portal/apple-portal-cookie-service.js +1 -0
  237. package/lib/services/apple-portal/apple-portal-session-service.js +218 -197
  238. package/lib/services/apple-portal/srp/srp-wrapper.js +61 -43
  239. package/lib/services/assets-generation/assets-generation-service.js +128 -103
  240. package/lib/services/build-artifacts-service.js +22 -10
  241. package/lib/services/build-data-service.js +1 -0
  242. package/lib/services/build-info-file-service.js +36 -20
  243. package/lib/services/cleanup-service.js +81 -48
  244. package/lib/services/cocoapods-platform-manager.js +9 -0
  245. package/lib/services/cocoapods-service.js +153 -112
  246. package/lib/services/debug-data-service.js +1 -0
  247. package/lib/services/debug-service-base.js +7 -0
  248. package/lib/services/device/device-install-app-service.js +72 -54
  249. package/lib/services/doctor-service.js +135 -101
  250. package/lib/services/extensibility-service.js +108 -81
  251. package/lib/services/files-hash-service.js +44 -26
  252. package/lib/services/hmr-status-service.js +3 -1
  253. package/lib/services/info-service.js +1 -0
  254. package/lib/services/initialize-service.js +54 -37
  255. package/lib/services/ios/export-options-plist-service.js +55 -38
  256. package/lib/services/ios/ios-signing-service.js +191 -168
  257. package/lib/services/ios/spm-service.js +70 -46
  258. package/lib/services/ios/xcodebuild-args-service.js +103 -77
  259. package/lib/services/ios/xcodebuild-command-service.js +26 -14
  260. package/lib/services/ios/xcodebuild-service.js +72 -52
  261. package/lib/services/ios-debugger-port-service.js +38 -24
  262. package/lib/services/ios-device-debug-service.js +103 -75
  263. package/lib/services/ios-entitlements-service.js +43 -31
  264. package/lib/services/ios-extensions-service.js +30 -18
  265. package/lib/services/ios-log-filter.js +20 -0
  266. package/lib/services/ios-native-target-service.js +6 -4
  267. package/lib/services/ios-project-service.js +605 -437
  268. package/lib/services/ios-provision-service.js +132 -108
  269. package/lib/services/ios-watch-app-service.js +33 -21
  270. package/lib/services/ip-service.js +55 -38
  271. package/lib/services/itmstransporter-service.js +153 -129
  272. package/lib/services/karma-execution.js +2 -0
  273. package/lib/services/livesync/android-device-livesync-service-base.js +49 -31
  274. package/lib/services/livesync/android-device-livesync-service.js +151 -120
  275. package/lib/services/livesync/android-device-livesync-sockets-service.js +155 -121
  276. package/lib/services/livesync/android-livesync-service.js +36 -14
  277. package/lib/services/livesync/android-livesync-tool.js +117 -90
  278. package/lib/services/livesync/device-livesync-service-base.js +30 -15
  279. package/lib/services/livesync/ios-device-livesync-service.js +150 -114
  280. package/lib/services/livesync/ios-livesync-service.js +60 -42
  281. package/lib/services/livesync/livesync-socket.js +1 -0
  282. package/lib/services/livesync/platform-livesync-service-base.js +124 -94
  283. package/lib/services/livesync-process-data-service.js +1 -0
  284. package/lib/services/log-parser-service.js +2 -1
  285. package/lib/services/log-source-map-service.js +56 -30
  286. package/lib/services/marking-mode-service.js +33 -17
  287. package/lib/services/metadata-filtering-service.js +1 -0
  288. package/lib/services/npm-config-service.js +5 -1
  289. package/lib/services/pacote-service.js +71 -49
  290. package/lib/services/performance-service.js +4 -2
  291. package/lib/services/platform/add-platform-service.js +119 -51
  292. package/lib/services/platform/platform-validation-service.js +34 -22
  293. package/lib/services/platform/prepare-native-platform-service.js +65 -49
  294. package/lib/services/platform-environment-requirements.js +43 -27
  295. package/lib/services/platform-project-service-base.js +1 -0
  296. package/lib/services/platforms-data-service.js +1 -0
  297. package/lib/services/plugins-service.js +168 -125
  298. package/lib/services/prepare-data-service.js +1 -0
  299. package/lib/services/project-backup-service.js +5 -1
  300. package/lib/services/project-changes-service.js +152 -124
  301. package/lib/services/project-cleanup-service.js +79 -64
  302. package/lib/services/project-config-service.js +111 -73
  303. package/lib/services/project-data-service.js +154 -108
  304. package/lib/services/project-name-service.js +44 -28
  305. package/lib/services/project-service.js +113 -84
  306. package/lib/services/project-templates-service.js +68 -52
  307. package/lib/services/qr-code-terminal-service.js +1 -0
  308. package/lib/services/require-service.js +1 -0
  309. package/lib/services/start-service.js +60 -41
  310. package/lib/services/temp-service.js +22 -8
  311. package/lib/services/terminal-spinner-service.js +28 -15
  312. package/lib/services/test-execution-service.js +79 -59
  313. package/lib/services/test-initialization-service.js +6 -2
  314. package/lib/services/timeline-profiler-service.js +2 -1
  315. package/lib/services/user-settings-service.js +1 -0
  316. package/lib/services/versions-service.js +140 -119
  317. package/lib/services/watch-ignore-list-service.js +1 -0
  318. package/lib/services/webpack/webpack-compiler-service.js +279 -215
  319. package/lib/services/xcconfig-service.js +21 -8
  320. package/lib/services/xcproj-service.js +1 -0
  321. package/lib/shared-event-bus.js +6 -0
  322. package/lib/sys-info.js +63 -45
  323. package/lib/tools/config-manipulation/config-transformer.js +21 -0
  324. package/lib/tools/node-modules/node-modules-builder.js +28 -16
  325. package/lib/tools/node-modules/node-modules-dependencies-builder.js +6 -0
  326. package/lib/yarn-package-manager.js +79 -59
  327. package/lib/yarn2-package-manager.js +82 -60
  328. package/node_modules/@npmcli/move-file/LICENSE.md +22 -0
  329. package/node_modules/@npmcli/move-file/README.md +69 -0
  330. package/node_modules/@npmcli/move-file/lib/index.js +185 -0
  331. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +21 -0
  332. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +68 -0
  333. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +31 -0
  334. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +29 -0
  335. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  336. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  337. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +23 -0
  338. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +29 -0
  339. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +10 -0
  340. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +44 -0
  341. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +266 -0
  342. package/node_modules/@npmcli/move-file/package.json +47 -0
  343. package/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  344. package/node_modules/balanced-match/LICENSE.md +21 -0
  345. package/node_modules/balanced-match/README.md +97 -0
  346. package/node_modules/balanced-match/index.js +62 -0
  347. package/node_modules/balanced-match/package.json +48 -0
  348. package/node_modules/concat-map/.travis.yml +4 -0
  349. package/node_modules/concat-map/LICENSE +18 -0
  350. package/node_modules/concat-map/README.markdown +62 -0
  351. package/node_modules/concat-map/example/map.js +6 -0
  352. package/node_modules/concat-map/index.js +13 -0
  353. package/node_modules/concat-map/package.json +43 -0
  354. package/node_modules/concat-map/test/map.js +39 -0
  355. package/node_modules/fs.realpath/LICENSE +43 -0
  356. package/node_modules/fs.realpath/README.md +33 -0
  357. package/node_modules/fs.realpath/index.js +66 -0
  358. package/node_modules/fs.realpath/old.js +303 -0
  359. package/node_modules/fs.realpath/package.json +26 -0
  360. package/node_modules/inflight/LICENSE +15 -0
  361. package/node_modules/inflight/README.md +37 -0
  362. package/node_modules/inflight/inflight.js +54 -0
  363. package/node_modules/inflight/package.json +29 -0
  364. package/node_modules/inherits/LICENSE +16 -0
  365. package/node_modules/inherits/README.md +42 -0
  366. package/node_modules/inherits/inherits.js +9 -0
  367. package/node_modules/inherits/inherits_browser.js +27 -0
  368. package/node_modules/inherits/package.json +29 -0
  369. package/node_modules/once/LICENSE +15 -0
  370. package/node_modules/once/README.md +79 -0
  371. package/node_modules/once/once.js +42 -0
  372. package/node_modules/once/package.json +33 -0
  373. package/node_modules/path-is-absolute/index.js +20 -0
  374. package/node_modules/path-is-absolute/license +21 -0
  375. package/node_modules/path-is-absolute/package.json +43 -0
  376. package/node_modules/path-is-absolute/readme.md +59 -0
  377. package/node_modules/rimraf/LICENSE +15 -0
  378. package/node_modules/rimraf/README.md +101 -0
  379. package/node_modules/rimraf/bin.js +68 -0
  380. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +21 -0
  381. package/node_modules/rimraf/node_modules/brace-expansion/README.md +129 -0
  382. package/node_modules/rimraf/node_modules/brace-expansion/index.js +201 -0
  383. package/node_modules/rimraf/node_modules/brace-expansion/package.json +47 -0
  384. package/node_modules/rimraf/node_modules/glob/LICENSE +21 -0
  385. package/node_modules/rimraf/node_modules/glob/README.md +378 -0
  386. package/node_modules/rimraf/node_modules/glob/common.js +238 -0
  387. package/node_modules/rimraf/node_modules/glob/glob.js +790 -0
  388. package/node_modules/rimraf/node_modules/glob/package.json +55 -0
  389. package/node_modules/rimraf/node_modules/glob/sync.js +486 -0
  390. package/node_modules/rimraf/node_modules/minimatch/LICENSE +15 -0
  391. package/node_modules/rimraf/node_modules/minimatch/README.md +230 -0
  392. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +947 -0
  393. package/node_modules/rimraf/node_modules/minimatch/package.json +33 -0
  394. package/node_modules/rimraf/package.json +32 -0
  395. package/node_modules/rimraf/rimraf.js +360 -0
  396. package/node_modules/stringify-package/LICENSE +13 -0
  397. package/node_modules/stringify-package/README.md +55 -0
  398. package/node_modules/stringify-package/index.js +18 -0
  399. package/node_modules/stringify-package/package.json +38 -0
  400. package/node_modules/wrappy/LICENSE +15 -0
  401. package/node_modules/wrappy/README.md +36 -0
  402. package/node_modules/wrappy/package.json +29 -0
  403. package/node_modules/wrappy/wrappy.js +33 -0
  404. package/package.json +79 -64
@@ -1,27 +1,40 @@
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
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.TerminalSpinnerService = void 0;
4
- const ora_1 = require("ora");
13
+ const ora = require("ora");
5
14
  const yok_1 = require("../common/yok");
6
15
  class TerminalSpinnerService {
7
16
  createSpinner(spinnerOptions = {}) {
17
+ // @ts-expect-error - options are readonly, however we still want to override them before passing them on...
8
18
  spinnerOptions.stream = spinnerOptions.stream || process.stdout;
9
- return (0, ora_1.default)(spinnerOptions);
19
+ return ora(spinnerOptions);
10
20
  }
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;
21
+ execute(spinnerOptions, action) {
22
+ return __awaiter(this, void 0, void 0, function* () {
23
+ const spinner = this.createSpinner(spinnerOptions);
24
+ spinner.start();
25
+ let result = null;
26
+ try {
27
+ result = yield action();
28
+ }
29
+ catch (err) {
30
+ spinner.fail();
31
+ return null;
32
+ }
33
+ spinner.succeed();
34
+ return result;
35
+ });
24
36
  }
25
37
  }
26
38
  exports.TerminalSpinnerService = TerminalSpinnerService;
27
39
  yok_1.injector.register("terminalSpinnerService", TerminalSpinnerService);
40
+ //# sourceMappingURL=terminal-spinner-service.js.map
@@ -1,4 +1,13 @@
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
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.TestExecutionService = void 0;
4
13
  const constants = require("../constants");
@@ -20,70 +29,79 @@ class TestExecutionService {
20
29
  this.$childProcess = $childProcess;
21
30
  this.allowedParameters = [];
22
31
  }
23
- async startKarmaServer(platform, liveSyncInfo, deviceDescriptors) {
24
- platform = platform.toLowerCase();
25
- this.platform = platform;
26
- const projectData = this.$projectDataService.getProjectData(liveSyncInfo.projectDir);
27
- await this.$pluginsService.ensureAllDependenciesAreInstalled(projectData);
28
- const karmaConfig = this.getKarmaConfiguration(platform, projectData);
29
- const karmaRunner = this.$childProcess.spawn(process.execPath, [path.join(__dirname, "karma-execution.js")], { stdio: ["inherit", "inherit", "inherit", "ipc"] });
30
- const launchKarmaTests = async (karmaData) => {
31
- this.$logger.trace("## Unit-testing: Parent process received message", karmaData);
32
- let port;
33
- if (karmaData.url) {
34
- port = karmaData.url.port;
35
- const socketIoJsUrl = `http://${karmaData.url.host}/socket.io/socket.io.js`;
36
- const socketIoJs = (await this.$httpClient.httpRequest(socketIoJsUrl))
37
- .body;
38
- this.$fs.writeFile(path.join(liveSyncInfo.projectDir, TestExecutionService.SOCKETIO_JS_FILE_NAME), JSON.parse(socketIoJs));
39
- }
40
- if (karmaData.launcherConfig) {
41
- const configOptions = JSON.parse(karmaData.launcherConfig);
42
- const configJs = this.generateConfig(port, configOptions);
43
- this.$fs.writeFile(path.join(liveSyncInfo.projectDir, TestExecutionService.CONFIG_FILE_NAME), configJs);
44
- }
45
- await this.$runController.run({
46
- liveSyncInfo,
47
- deviceDescriptors,
48
- });
49
- };
50
- karmaRunner.on("message", (karmaData) => {
51
- this.$logger.trace(`The received message from karma is: `, karmaData);
52
- if (!karmaData.launcherConfig && !karmaData.url) {
53
- return;
54
- }
55
- launchKarmaTests(karmaData).catch((result) => {
56
- this.$logger.error(result);
57
- process.exit(130);
58
- });
59
- });
60
- return new Promise((resolve, reject) => {
61
- karmaRunner.on("exit", (exitCode) => {
62
- if (exitCode !== 0) {
63
- const testError = new Error("Test run failed.");
64
- reject(testError);
32
+ startKarmaServer(platform, liveSyncInfo, deviceDescriptors) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ platform = platform.toLowerCase();
35
+ this.platform = platform;
36
+ const projectData = this.$projectDataService.getProjectData(liveSyncInfo.projectDir);
37
+ // We need the dependencies installed here, so we can start the Karma server.
38
+ yield this.$pluginsService.ensureAllDependenciesAreInstalled(projectData);
39
+ const karmaConfig = this.getKarmaConfiguration(platform, projectData);
40
+ // In case you want to debug the unit test runner, add "--inspect-brk=<port>" as a first element in the array of args.
41
+ const karmaRunner = this.$childProcess.spawn(process.execPath, [path.join(__dirname, "karma-execution.js")], { stdio: ["inherit", "inherit", "inherit", "ipc"] });
42
+ const launchKarmaTests = (karmaData) => __awaiter(this, void 0, void 0, function* () {
43
+ this.$logger.trace("## Unit-testing: Parent process received message", karmaData);
44
+ let port;
45
+ if (karmaData.url) {
46
+ port = karmaData.url.port;
47
+ const socketIoJsUrl = `http://${karmaData.url.host}/socket.io/socket.io.js`;
48
+ const socketIoJs = (yield this.$httpClient.httpRequest(socketIoJsUrl))
49
+ .body;
50
+ this.$fs.writeFile(path.join(liveSyncInfo.projectDir, TestExecutionService.SOCKETIO_JS_FILE_NAME), JSON.parse(socketIoJs));
65
51
  }
66
- else {
67
- resolve();
52
+ if (karmaData.launcherConfig) {
53
+ const configOptions = JSON.parse(karmaData.launcherConfig);
54
+ const configJs = this.generateConfig(port, configOptions);
55
+ this.$fs.writeFile(path.join(liveSyncInfo.projectDir, TestExecutionService.CONFIG_FILE_NAME), configJs);
68
56
  }
57
+ // Prepare the project AFTER the TestExecutionService.CONFIG_FILE_NAME file is created in node_modules
58
+ // so it will be sent to device.
59
+ yield this.$runController.run({
60
+ liveSyncInfo,
61
+ deviceDescriptors,
62
+ });
63
+ });
64
+ karmaRunner.on("message", (karmaData) => {
65
+ this.$logger.trace(`The received message from karma is: `, karmaData);
66
+ if (!karmaData.launcherConfig && !karmaData.url) {
67
+ return;
68
+ }
69
+ launchKarmaTests(karmaData).catch((result) => {
70
+ this.$logger.error(result);
71
+ process.exit(130 /* ErrorCodes.KARMA_FAIL */);
72
+ });
73
+ });
74
+ return new Promise((resolve, reject) => {
75
+ karmaRunner.on("exit", (exitCode) => {
76
+ if (exitCode !== 0) {
77
+ //End our process with a non-zero exit code
78
+ const testError = new Error("Test run failed.");
79
+ reject(testError);
80
+ }
81
+ else {
82
+ resolve();
83
+ }
84
+ });
85
+ karmaRunner.send({ karmaConfig: karmaConfig });
69
86
  });
70
- karmaRunner.send({ karmaConfig: karmaConfig });
71
87
  });
72
88
  }
73
- async canStartKarmaServer(projectData) {
74
- let canStartKarmaServer = true;
75
- const requiredDependencies = ["@nativescript/unit-test-runner"];
76
- _.each(requiredDependencies, (dep) => {
77
- if (!projectData.dependencies[dep] && !projectData.devDependencies[dep]) {
78
- canStartKarmaServer = false;
79
- return;
80
- }
81
- });
82
- const pathToKarma = (0, package_path_helper_1.resolvePackagePath)("karma", {
83
- paths: [projectData.projectDir],
89
+ canStartKarmaServer(projectData) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ let canStartKarmaServer = true;
92
+ const requiredDependencies = ["@nativescript/unit-test-runner"]; // we need @nativescript/unit-test-runner at the local level because of hooks!
93
+ _.each(requiredDependencies, (dep) => {
94
+ if (!projectData.dependencies[dep] && !projectData.devDependencies[dep]) {
95
+ canStartKarmaServer = false;
96
+ return;
97
+ }
98
+ });
99
+ const pathToKarma = (0, package_path_helper_1.resolvePackagePath)("karma", {
100
+ paths: [projectData.projectDir],
101
+ });
102
+ canStartKarmaServer = canStartKarmaServer && !!pathToKarma;
103
+ return canStartKarmaServer;
84
104
  });
85
- canStartKarmaServer = canStartKarmaServer && !!pathToKarma;
86
- return canStartKarmaServer;
87
105
  }
88
106
  generateConfig(port, options) {
89
107
  const nics = os.networkInterfaces();
@@ -121,6 +139,7 @@ class TestExecutionService {
121
139
  karmaConfig.logLevel = "DEBUG";
122
140
  }
123
141
  if (!this.$options.watch) {
142
+ // Setting singleRun to true will automatically start the tests when new browser (device in our case) is registered in karma.
124
143
  karmaConfig.singleRun = true;
125
144
  }
126
145
  if (this.$options.debugBrk) {
@@ -135,7 +154,8 @@ class TestExecutionService {
135
154
  return karmaConfig;
136
155
  }
137
156
  }
138
- exports.TestExecutionService = TestExecutionService;
139
157
  TestExecutionService.CONFIG_FILE_NAME = `node_modules/${constants.TEST_RUNNER_NAME}/config.js`;
140
158
  TestExecutionService.SOCKETIO_JS_FILE_NAME = `node_modules/${constants.TEST_RUNNER_NAME}/socket.io.js`;
159
+ exports.TestExecutionService = TestExecutionService;
141
160
  yok_1.injector.register("testExecutionService", TestExecutionService);
161
+ //# sourceMappingURL=test-execution-service.js.map
@@ -30,10 +30,13 @@ class TestInitializationService {
30
30
  if (!dependencyVersion) {
31
31
  this.$errors.fail(`'${dependency}' is not a registered dependency.`);
32
32
  }
33
- return { ...dependency, version: dependencyVersion };
33
+ return Object.assign(Object.assign({}, dependency), { version: dependencyVersion });
34
34
  });
35
35
  return targetFrameworkDependencies;
36
36
  }
37
+ /**
38
+ * This method is used from test-init.md file so it is not allowed to use "this" inside the method's body.
39
+ */
37
40
  getFrameworkNames() {
38
41
  const configsPath = path.join(__dirname, "..", "..", "config");
39
42
  const dependenciesPath = path.join(configsPath, "test-dependencies.json");
@@ -44,11 +47,12 @@ class TestInitializationService {
44
47
  return frameworks;
45
48
  }
46
49
  }
47
- exports.TestInitializationService = TestInitializationService;
48
50
  __decorate([
49
51
  (0, decorators_1.cache)()
50
52
  ], TestInitializationService.prototype, "getDependencies", null);
51
53
  __decorate([
52
54
  (0, decorators_1.cache)()
53
55
  ], TestInitializationService.prototype, "getFrameworkNames", null);
56
+ exports.TestInitializationService = TestInitializationService;
54
57
  yok_1.injector.register("testInitializationService", TestInitializationService);
58
+ //# sourceMappingURL=test-initialization-service.js.map
@@ -93,8 +93,9 @@ class TimelineProfilerService {
93
93
  process.exit();
94
94
  }
95
95
  }
96
- exports.TimelineProfilerService = TimelineProfilerService;
97
96
  __decorate([
98
97
  (0, decorators_1.cache)()
99
98
  ], TimelineProfilerService.prototype, "isEnabled", null);
99
+ exports.TimelineProfilerService = TimelineProfilerService;
100
100
  yok_1.injector.register("timelineProfilerService", TimelineProfilerService);
101
+ //# sourceMappingURL=timeline-profiler-service.js.map
@@ -32,3 +32,4 @@ class UserSettingsService {
32
32
  }
33
33
  exports.UserSettingsService = UserSettingsService;
34
34
  yok_1.injector.register("userSettingsService", UserSettingsService);
35
+ //# sourceMappingURL=user-settings-service.js.map
@@ -1,4 +1,13 @@
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
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.VersionInformationType = void 0;
4
13
  const constants = require("../constants");
@@ -12,7 +21,7 @@ var VersionInformationType;
12
21
  VersionInformationType["UpToDate"] = "UpToDate";
13
22
  VersionInformationType["UpdateAvailable"] = "UpdateAvailable";
14
23
  VersionInformationType["NotInstalled"] = "NotInstalled";
15
- })(VersionInformationType || (exports.VersionInformationType = VersionInformationType = {}));
24
+ })(VersionInformationType = exports.VersionInformationType || (exports.VersionInformationType = {}));
16
25
  class VersionsService {
17
26
  constructor($fs, $packageInstallationManager, $injector, $logger, $staticConfig, $pluginsService, $projectDataService, $terminalSpinnerService) {
18
27
  this.$fs = $fs;
@@ -25,136 +34,147 @@ class VersionsService {
25
34
  this.$terminalSpinnerService = $terminalSpinnerService;
26
35
  this.projectData = this.getProjectData();
27
36
  }
28
- async getNativescriptCliVersion() {
29
- const currentCliVersion = this.$staticConfig.version;
30
- const latestCliVersion = await this.$packageInstallationManager.getLatestVersion(constants.NATIVESCRIPT_KEY_NAME);
31
- return {
32
- componentName: constants.NATIVESCRIPT_KEY_NAME,
33
- currentVersion: currentCliVersion,
34
- latestVersion: latestCliVersion,
35
- };
37
+ getNativescriptCliVersion() {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ const currentCliVersion = this.$staticConfig.version;
40
+ const latestCliVersion = yield this.$packageInstallationManager.getLatestVersion(constants.NATIVESCRIPT_KEY_NAME);
41
+ return {
42
+ componentName: constants.NATIVESCRIPT_KEY_NAME,
43
+ currentVersion: currentCliVersion,
44
+ latestVersion: latestCliVersion,
45
+ };
46
+ });
36
47
  }
37
- async getTnsCoreModulesVersion() {
38
- const latestTnsCoreModulesVersion = await this.$packageInstallationManager.getLatestVersion(constants.TNS_CORE_MODULES_NAME);
39
- const nativescriptCoreModulesInfo = {
40
- componentName: constants.TNS_CORE_MODULES_NAME,
41
- latestVersion: latestTnsCoreModulesVersion,
42
- };
43
- const versionInformations = [];
44
- if (this.projectData) {
45
- const nodeModulesPath = path.join(this.projectData.projectDir, constants.NODE_MODULES_FOLDER_NAME);
46
- const scopedPackagePath = path.join(nodeModulesPath, constants.SCOPED_TNS_CORE_MODULES);
47
- const tnsCoreModulesPath = path.join(nodeModulesPath, constants.TNS_CORE_MODULES_NAME);
48
- const dependsOnNonScopedPackage = !!this.projectData.dependencies[constants.TNS_CORE_MODULES_NAME];
49
- const dependsOnScopedPackage = !!this.projectData.dependencies[constants.SCOPED_TNS_CORE_MODULES];
50
- if (!this.$fs.exists(nodeModulesPath) ||
51
- (dependsOnNonScopedPackage && !this.$fs.exists(tnsCoreModulesPath)) ||
52
- (dependsOnScopedPackage && !this.$fs.exists(scopedPackagePath))) {
53
- await this.$pluginsService.ensureAllDependenciesAreInstalled(this.projectData);
48
+ getTnsCoreModulesVersion() {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ const latestTnsCoreModulesVersion = yield this.$packageInstallationManager.getLatestVersion(constants.TNS_CORE_MODULES_NAME);
51
+ const nativescriptCoreModulesInfo = {
52
+ componentName: constants.TNS_CORE_MODULES_NAME,
53
+ latestVersion: latestTnsCoreModulesVersion,
54
+ };
55
+ const versionInformations = [];
56
+ if (this.projectData) {
57
+ const nodeModulesPath = path.join(this.projectData.projectDir, constants.NODE_MODULES_FOLDER_NAME);
58
+ const scopedPackagePath = path.join(nodeModulesPath, constants.SCOPED_TNS_CORE_MODULES);
59
+ const tnsCoreModulesPath = path.join(nodeModulesPath, constants.TNS_CORE_MODULES_NAME);
60
+ const dependsOnNonScopedPackage = !!this.projectData.dependencies[constants.TNS_CORE_MODULES_NAME];
61
+ const dependsOnScopedPackage = !!this.projectData.dependencies[constants.SCOPED_TNS_CORE_MODULES];
62
+ // ensure the dependencies are installed, so we can get their actual versions from node_modules
63
+ if (!this.$fs.exists(nodeModulesPath) ||
64
+ (dependsOnNonScopedPackage && !this.$fs.exists(tnsCoreModulesPath)) ||
65
+ (dependsOnScopedPackage && !this.$fs.exists(scopedPackagePath))) {
66
+ yield this.$pluginsService.ensureAllDependenciesAreInstalled(this.projectData);
67
+ }
68
+ if (dependsOnNonScopedPackage && this.$fs.exists(tnsCoreModulesPath)) {
69
+ const currentTnsCoreModulesVersion = this.$fs.readJson(path.join(tnsCoreModulesPath, constants.PACKAGE_JSON_FILE_NAME)).version;
70
+ nativescriptCoreModulesInfo.currentVersion = currentTnsCoreModulesVersion;
71
+ versionInformations.push(nativescriptCoreModulesInfo);
72
+ }
73
+ if (dependsOnScopedPackage && this.$fs.exists(scopedPackagePath)) {
74
+ const scopedModulesInformation = {
75
+ componentName: constants.SCOPED_TNS_CORE_MODULES,
76
+ latestVersion: yield this.$packageInstallationManager.getLatestVersion(constants.SCOPED_TNS_CORE_MODULES),
77
+ };
78
+ const currentScopedPackageVersion = this.$fs.readJson(path.join(scopedPackagePath, constants.PACKAGE_JSON_FILE_NAME)).version;
79
+ scopedModulesInformation.currentVersion = currentScopedPackageVersion;
80
+ versionInformations.push(scopedModulesInformation);
81
+ }
54
82
  }
55
- if (dependsOnNonScopedPackage && this.$fs.exists(tnsCoreModulesPath)) {
56
- const currentTnsCoreModulesVersion = this.$fs.readJson(path.join(tnsCoreModulesPath, constants.PACKAGE_JSON_FILE_NAME)).version;
57
- nativescriptCoreModulesInfo.currentVersion = currentTnsCoreModulesVersion;
83
+ else {
58
84
  versionInformations.push(nativescriptCoreModulesInfo);
59
85
  }
60
- if (dependsOnScopedPackage && this.$fs.exists(scopedPackagePath)) {
61
- const scopedModulesInformation = {
62
- componentName: constants.SCOPED_TNS_CORE_MODULES,
63
- latestVersion: await this.$packageInstallationManager.getLatestVersion(constants.SCOPED_TNS_CORE_MODULES),
64
- };
65
- const currentScopedPackageVersion = this.$fs.readJson(path.join(scopedPackagePath, constants.PACKAGE_JSON_FILE_NAME)).version;
66
- scopedModulesInformation.currentVersion = currentScopedPackageVersion;
67
- versionInformations.push(scopedModulesInformation);
68
- }
69
- }
70
- else {
71
- versionInformations.push(nativescriptCoreModulesInfo);
72
- }
73
- return versionInformations;
74
- }
75
- async getRuntimesVersions(platform) {
76
- const iosRuntime = this.$projectDataService.getRuntimePackage(this.projectData.projectDir, "ios");
77
- const androidRuntime = this.$projectDataService.getRuntimePackage(this.projectData.projectDir, "android");
78
- let runtimes = [];
79
- if (!platform) {
80
- runtimes = [iosRuntime, androidRuntime];
81
- }
82
- else if (platform === "ios") {
83
- runtimes.push(iosRuntime);
84
- }
85
- else if (platform === "android") {
86
- runtimes.push(androidRuntime);
87
- }
88
- const runtimesVersions = await Promise.all(runtimes.map(async (runtime) => {
89
- const latestVersion = await this.$packageInstallationManager.getLatestVersion(runtime.name);
90
- const runtimeInformation = {
91
- componentName: runtime.name,
92
- currentVersion: runtime.version,
93
- latestVersion,
94
- };
95
- return runtimeInformation;
96
- }));
97
- return runtimesVersions;
86
+ return versionInformations;
87
+ });
98
88
  }
99
- async getAllComponentsVersions(platform) {
100
- try {
101
- let allComponents = [];
102
- const nativescriptCliInformation = await this.getNativescriptCliVersion();
103
- if (nativescriptCliInformation) {
104
- allComponents.push(nativescriptCliInformation);
89
+ getRuntimesVersions(platform) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ const iosRuntime = this.$projectDataService.getRuntimePackage(this.projectData.projectDir, "ios" /* constants.PlatformTypes.ios */);
92
+ const androidRuntime = this.$projectDataService.getRuntimePackage(this.projectData.projectDir, "android" /* constants.PlatformTypes.android */);
93
+ let runtimes = [];
94
+ if (!platform) {
95
+ runtimes = [iosRuntime, androidRuntime];
105
96
  }
106
- if (this.projectData) {
107
- const nativescriptCoreModulesInformation = await this.getTnsCoreModulesVersion();
108
- if (nativescriptCoreModulesInformation) {
109
- allComponents.push(...nativescriptCoreModulesInformation);
110
- }
111
- const runtimesVersions = await this.getRuntimesVersions(platform);
112
- allComponents = allComponents.concat(runtimesVersions);
97
+ else if (platform === "ios" /* PlatformTypes.ios */) {
98
+ runtimes.push(iosRuntime);
113
99
  }
114
- return allComponents.map((componentInformation) => {
115
- if (componentInformation.currentVersion) {
116
- if (this.hasUpdate(componentInformation)) {
117
- componentInformation.type = VersionInformationType.UpdateAvailable;
118
- componentInformation.message = `${VersionsService.UPDATE_AVAILABLE_MESSAGE} for component ${componentInformation.componentName}. Your current version is ${componentInformation.currentVersion} and the latest available version is ${componentInformation.latestVersion}.`;
100
+ else if (platform === "android" /* PlatformTypes.android */) {
101
+ runtimes.push(androidRuntime);
102
+ }
103
+ const runtimesVersions = yield Promise.all(runtimes.map((runtime) => __awaiter(this, void 0, void 0, function* () {
104
+ const latestVersion = yield this.$packageInstallationManager.getLatestVersion(runtime.name);
105
+ const runtimeInformation = {
106
+ componentName: runtime.name,
107
+ currentVersion: runtime.version,
108
+ latestVersion,
109
+ };
110
+ return runtimeInformation;
111
+ })));
112
+ return runtimesVersions;
113
+ });
114
+ }
115
+ getAllComponentsVersions(platform) {
116
+ return __awaiter(this, void 0, void 0, function* () {
117
+ try {
118
+ let allComponents = [];
119
+ const nativescriptCliInformation = yield this.getNativescriptCliVersion();
120
+ if (nativescriptCliInformation) {
121
+ allComponents.push(nativescriptCliInformation);
122
+ }
123
+ if (this.projectData) {
124
+ const nativescriptCoreModulesInformation = yield this.getTnsCoreModulesVersion();
125
+ if (nativescriptCoreModulesInformation) {
126
+ allComponents.push(...nativescriptCoreModulesInformation);
127
+ }
128
+ const runtimesVersions = yield this.getRuntimesVersions(platform);
129
+ allComponents = allComponents.concat(runtimesVersions);
130
+ }
131
+ return allComponents.map((componentInformation) => {
132
+ if (componentInformation.currentVersion) {
133
+ if (this.hasUpdate(componentInformation)) {
134
+ componentInformation.type = VersionInformationType.UpdateAvailable;
135
+ componentInformation.message = `${VersionsService.UPDATE_AVAILABLE_MESSAGE} for component ${componentInformation.componentName}. Your current version is ${componentInformation.currentVersion} and the latest available version is ${componentInformation.latestVersion}.`;
136
+ }
137
+ else {
138
+ componentInformation.type = VersionInformationType.UpToDate;
139
+ componentInformation.message = `Component ${componentInformation.componentName} has ${componentInformation.currentVersion} version and is ${VersionsService.UP_TO_DATE_MESSAGE}.`;
140
+ }
119
141
  }
120
142
  else {
121
- componentInformation.type = VersionInformationType.UpToDate;
122
- componentInformation.message = `Component ${componentInformation.componentName} has ${componentInformation.currentVersion} version and is ${VersionsService.UP_TO_DATE_MESSAGE}.`;
143
+ componentInformation.type = VersionInformationType.NotInstalled;
144
+ componentInformation.message = `Component ${componentInformation.componentName} is ${VersionsService.NOT_INSTALLED_MESSAGE}.`;
123
145
  }
124
- }
125
- else {
126
- componentInformation.type = VersionInformationType.NotInstalled;
127
- componentInformation.message = `Component ${componentInformation.componentName} is ${VersionsService.NOT_INSTALLED_MESSAGE}.`;
128
- }
129
- return componentInformation;
130
- });
131
- }
132
- catch (error) {
133
- this.$logger.trace("Error while trying to get component information. Error is: ", error);
134
- return [];
135
- }
146
+ return componentInformation;
147
+ });
148
+ }
149
+ catch (error) {
150
+ this.$logger.trace("Error while trying to get component information. Error is: ", error);
151
+ return [];
152
+ }
153
+ });
136
154
  }
137
- async printVersionsInformation(platform) {
138
- const versionsInformation = await this.$terminalSpinnerService.execute({
139
- text: `Getting NativeScript components versions information...`,
140
- }, () => this.getAllComponentsVersions(platform));
141
- if (!helpers.isInteractive()) {
142
- versionsInformation.map((componentInformation) => this.$logger.info(componentInformation.message));
143
- }
144
- _.forEach(versionsInformation, (componentInformation) => {
145
- const spinner = this.$terminalSpinnerService.createSpinner();
146
- spinner.text = componentInformation.message;
147
- switch (componentInformation.type) {
148
- case VersionInformationType.UpToDate:
149
- spinner.succeed();
150
- break;
151
- case VersionInformationType.UpdateAvailable:
152
- spinner.warn();
153
- break;
154
- case VersionInformationType.NotInstalled:
155
- spinner.fail();
156
- break;
155
+ printVersionsInformation(platform) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ const versionsInformation = yield this.$terminalSpinnerService.execute({
158
+ text: `Getting NativeScript components versions information...`,
159
+ }, () => this.getAllComponentsVersions(platform));
160
+ if (!helpers.isInteractive()) {
161
+ versionsInformation.map((componentInformation) => this.$logger.info(componentInformation.message));
157
162
  }
163
+ _.forEach(versionsInformation, (componentInformation) => {
164
+ const spinner = this.$terminalSpinnerService.createSpinner();
165
+ spinner.text = componentInformation.message;
166
+ switch (componentInformation.type) {
167
+ case VersionInformationType.UpToDate:
168
+ spinner.succeed();
169
+ break;
170
+ case VersionInformationType.UpdateAvailable:
171
+ spinner.warn();
172
+ break;
173
+ case VersionInformationType.NotInstalled:
174
+ spinner.fail();
175
+ break;
176
+ }
177
+ });
158
178
  });
159
179
  }
160
180
  getProjectData() {
@@ -175,3 +195,4 @@ VersionsService.UP_TO_DATE_MESSAGE = "up to date";
175
195
  VersionsService.UPDATE_AVAILABLE_MESSAGE = "Update available";
176
196
  VersionsService.NOT_INSTALLED_MESSAGE = "not installed";
177
197
  yok_1.injector.register("versionsService", VersionsService);
198
+ //# sourceMappingURL=versions-service.js.map
@@ -18,3 +18,4 @@ class WatchIgnoreListService {
18
18
  }
19
19
  exports.WatchIgnoreListService = WatchIgnoreListService;
20
20
  yok_1.injector.register("watchIgnoreListService", WatchIgnoreListService);
21
+ //# sourceMappingURL=watch-ignore-list-service.js.map