nativescript 8.9.0-dev.0 → 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 (405) 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/ios.d.ts +4 -2
  190. package/lib/definitions/project.d.ts +26 -0
  191. package/lib/detached-processes/cleanup-js-subprocess.js +20 -5
  192. package/lib/detached-processes/cleanup-process.js +43 -30
  193. package/lib/detached-processes/file-log-service.js +2 -1
  194. package/lib/device-path-provider.js +35 -23
  195. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +171 -149
  196. package/lib/device-sockets/ios/notification.js +4 -1
  197. package/lib/device-sockets/ios/socket-request-executor.js +42 -24
  198. package/lib/helpers/android-bundle-validator-helper.js +3 -2
  199. package/lib/helpers/deploy-command-helper.js +50 -44
  200. package/lib/helpers/key-command-helper.js +17 -6
  201. package/lib/helpers/livesync-command-helper.js +155 -137
  202. package/lib/helpers/network-connectivity-validator.js +18 -6
  203. package/lib/helpers/options-track-helper.js +19 -7
  204. package/lib/helpers/package-path-helper.js +1 -0
  205. package/lib/helpers/platform-command-helper.js +127 -101
  206. package/lib/helpers/version-validator-helper.js +1 -0
  207. package/lib/key-commands/bootstrap.js +3 -2
  208. package/lib/key-commands/index.js +205 -154
  209. package/lib/nativescript-cli-lib-bootstrap.js +4 -0
  210. package/lib/nativescript-cli-lib.js +1 -0
  211. package/lib/nativescript-cli.js +24 -6
  212. package/lib/node/pbxproj-dom-xcode.js +1 -0
  213. package/lib/node/xcode.js +1 -0
  214. package/lib/node-package-manager.js +114 -81
  215. package/lib/options.js +156 -122
  216. package/lib/package-installation-manager.js +172 -130
  217. package/lib/package-manager.js +88 -63
  218. package/lib/platform-command-param.js +16 -4
  219. package/lib/pnpm-package-manager.js +81 -59
  220. package/lib/project-data.js +13 -1
  221. package/lib/providers/project-files-provider.js +2 -1
  222. package/lib/resolvers/livesync-service-resolver.js +1 -0
  223. package/lib/services/analytics/analytics-broker-process.js +32 -19
  224. package/lib/services/analytics/analytics-broker.js +31 -17
  225. package/lib/services/analytics/analytics-service.js +210 -170
  226. package/lib/services/analytics/google-analytics-provider.js +59 -43
  227. package/lib/services/analytics-settings-service.js +37 -15
  228. package/lib/services/android/android-bundle-tool-service.js +61 -43
  229. package/lib/services/android/gradle-build-args-service.js +23 -9
  230. package/lib/services/android/gradle-build-service.js +36 -22
  231. package/lib/services/android/gradle-command-service.js +36 -22
  232. package/lib/services/android-device-debug-service.js +123 -90
  233. package/lib/services/android-plugin-build-service.js +260 -205
  234. package/lib/services/android-project-service.js +241 -129
  235. package/lib/services/android-resources-migration-service.js +71 -51
  236. package/lib/services/apple-portal/apple-portal-application-service.js +64 -46
  237. package/lib/services/apple-portal/apple-portal-cookie-service.js +1 -0
  238. package/lib/services/apple-portal/apple-portal-session-service.js +218 -197
  239. package/lib/services/apple-portal/srp/srp-wrapper.js +61 -43
  240. package/lib/services/assets-generation/assets-generation-service.js +128 -103
  241. package/lib/services/build-artifacts-service.js +22 -10
  242. package/lib/services/build-data-service.js +1 -0
  243. package/lib/services/build-info-file-service.js +36 -20
  244. package/lib/services/cleanup-service.js +81 -48
  245. package/lib/services/cocoapods-platform-manager.js +9 -0
  246. package/lib/services/cocoapods-service.js +153 -112
  247. package/lib/services/debug-data-service.js +1 -0
  248. package/lib/services/debug-service-base.js +7 -0
  249. package/lib/services/device/device-install-app-service.js +72 -54
  250. package/lib/services/doctor-service.js +135 -101
  251. package/lib/services/extensibility-service.js +108 -81
  252. package/lib/services/files-hash-service.js +44 -26
  253. package/lib/services/hmr-status-service.js +3 -1
  254. package/lib/services/info-service.js +1 -0
  255. package/lib/services/initialize-service.js +54 -37
  256. package/lib/services/ios/export-options-plist-service.js +55 -38
  257. package/lib/services/ios/ios-signing-service.js +191 -168
  258. package/lib/services/ios/spm-service.js +73 -43
  259. package/lib/services/ios/xcodebuild-args-service.js +103 -77
  260. package/lib/services/ios/xcodebuild-command-service.js +26 -14
  261. package/lib/services/ios/xcodebuild-service.js +72 -52
  262. package/lib/services/ios-debugger-port-service.js +38 -24
  263. package/lib/services/ios-device-debug-service.js +103 -75
  264. package/lib/services/ios-entitlements-service.js +43 -31
  265. package/lib/services/ios-extensions-service.js +30 -18
  266. package/lib/services/ios-log-filter.js +20 -0
  267. package/lib/services/ios-native-target-service.js +6 -4
  268. package/lib/services/ios-project-service.js +605 -437
  269. package/lib/services/ios-provision-service.js +132 -108
  270. package/lib/services/ios-watch-app-service.js +33 -21
  271. package/lib/services/ip-service.js +55 -38
  272. package/lib/services/itmstransporter-service.js +153 -129
  273. package/lib/services/karma-execution.js +2 -0
  274. package/lib/services/livesync/android-device-livesync-service-base.js +49 -31
  275. package/lib/services/livesync/android-device-livesync-service.js +151 -120
  276. package/lib/services/livesync/android-device-livesync-sockets-service.js +155 -121
  277. package/lib/services/livesync/android-livesync-service.js +36 -14
  278. package/lib/services/livesync/android-livesync-tool.js +117 -90
  279. package/lib/services/livesync/device-livesync-service-base.js +30 -15
  280. package/lib/services/livesync/ios-device-livesync-service.js +150 -114
  281. package/lib/services/livesync/ios-livesync-service.js +60 -42
  282. package/lib/services/livesync/livesync-socket.js +1 -0
  283. package/lib/services/livesync/platform-livesync-service-base.js +124 -94
  284. package/lib/services/livesync-process-data-service.js +1 -0
  285. package/lib/services/log-parser-service.js +2 -1
  286. package/lib/services/log-source-map-service.js +56 -30
  287. package/lib/services/marking-mode-service.js +33 -17
  288. package/lib/services/metadata-filtering-service.js +1 -0
  289. package/lib/services/npm-config-service.js +5 -1
  290. package/lib/services/pacote-service.js +73 -51
  291. package/lib/services/performance-service.js +4 -2
  292. package/lib/services/platform/add-platform-service.js +119 -51
  293. package/lib/services/platform/platform-validation-service.js +34 -22
  294. package/lib/services/platform/prepare-native-platform-service.js +65 -49
  295. package/lib/services/platform-environment-requirements.js +43 -27
  296. package/lib/services/platform-project-service-base.js +1 -0
  297. package/lib/services/platforms-data-service.js +1 -0
  298. package/lib/services/plugins-service.js +168 -125
  299. package/lib/services/prepare-data-service.js +1 -0
  300. package/lib/services/project-backup-service.js +5 -1
  301. package/lib/services/project-changes-service.js +152 -124
  302. package/lib/services/project-cleanup-service.js +79 -64
  303. package/lib/services/project-config-service.js +111 -73
  304. package/lib/services/project-data-service.js +154 -108
  305. package/lib/services/project-name-service.js +44 -28
  306. package/lib/services/project-service.js +113 -84
  307. package/lib/services/project-templates-service.js +68 -52
  308. package/lib/services/qr-code-terminal-service.js +1 -0
  309. package/lib/services/require-service.js +1 -0
  310. package/lib/services/start-service.js +60 -41
  311. package/lib/services/temp-service.js +22 -8
  312. package/lib/services/terminal-spinner-service.js +28 -15
  313. package/lib/services/test-execution-service.js +79 -59
  314. package/lib/services/test-initialization-service.js +6 -2
  315. package/lib/services/timeline-profiler-service.js +2 -1
  316. package/lib/services/user-settings-service.js +1 -0
  317. package/lib/services/versions-service.js +140 -119
  318. package/lib/services/watch-ignore-list-service.js +1 -0
  319. package/lib/services/webpack/webpack-compiler-service.js +279 -215
  320. package/lib/services/xcconfig-service.js +21 -8
  321. package/lib/services/xcproj-service.js +1 -0
  322. package/lib/shared-event-bus.js +6 -0
  323. package/lib/sys-info.js +63 -45
  324. package/lib/tools/config-manipulation/config-transformer.js +21 -0
  325. package/lib/tools/node-modules/node-modules-builder.js +28 -16
  326. package/lib/tools/node-modules/node-modules-dependencies-builder.js +6 -0
  327. package/lib/yarn-package-manager.js +79 -59
  328. package/lib/yarn2-package-manager.js +82 -60
  329. package/node_modules/@npmcli/move-file/LICENSE.md +22 -0
  330. package/node_modules/@npmcli/move-file/README.md +69 -0
  331. package/node_modules/@npmcli/move-file/lib/index.js +185 -0
  332. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +21 -0
  333. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +68 -0
  334. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +31 -0
  335. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +29 -0
  336. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  337. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  338. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +23 -0
  339. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +29 -0
  340. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +10 -0
  341. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +44 -0
  342. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +266 -0
  343. package/node_modules/@npmcli/move-file/package.json +47 -0
  344. package/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  345. package/node_modules/balanced-match/LICENSE.md +21 -0
  346. package/node_modules/balanced-match/README.md +97 -0
  347. package/node_modules/balanced-match/index.js +62 -0
  348. package/node_modules/balanced-match/package.json +48 -0
  349. package/node_modules/concat-map/.travis.yml +4 -0
  350. package/node_modules/concat-map/LICENSE +18 -0
  351. package/node_modules/concat-map/README.markdown +62 -0
  352. package/node_modules/concat-map/example/map.js +6 -0
  353. package/node_modules/concat-map/index.js +13 -0
  354. package/node_modules/concat-map/package.json +43 -0
  355. package/node_modules/concat-map/test/map.js +39 -0
  356. package/node_modules/fs.realpath/LICENSE +43 -0
  357. package/node_modules/fs.realpath/README.md +33 -0
  358. package/node_modules/fs.realpath/index.js +66 -0
  359. package/node_modules/fs.realpath/old.js +303 -0
  360. package/node_modules/fs.realpath/package.json +26 -0
  361. package/node_modules/inflight/LICENSE +15 -0
  362. package/node_modules/inflight/README.md +37 -0
  363. package/node_modules/inflight/inflight.js +54 -0
  364. package/node_modules/inflight/package.json +29 -0
  365. package/node_modules/inherits/LICENSE +16 -0
  366. package/node_modules/inherits/README.md +42 -0
  367. package/node_modules/inherits/inherits.js +9 -0
  368. package/node_modules/inherits/inherits_browser.js +27 -0
  369. package/node_modules/inherits/package.json +29 -0
  370. package/node_modules/once/LICENSE +15 -0
  371. package/node_modules/once/README.md +79 -0
  372. package/node_modules/once/once.js +42 -0
  373. package/node_modules/once/package.json +33 -0
  374. package/node_modules/path-is-absolute/index.js +20 -0
  375. package/node_modules/path-is-absolute/license +21 -0
  376. package/node_modules/path-is-absolute/package.json +43 -0
  377. package/node_modules/path-is-absolute/readme.md +59 -0
  378. package/node_modules/rimraf/LICENSE +15 -0
  379. package/node_modules/rimraf/README.md +101 -0
  380. package/node_modules/rimraf/bin.js +68 -0
  381. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +21 -0
  382. package/node_modules/rimraf/node_modules/brace-expansion/README.md +129 -0
  383. package/node_modules/rimraf/node_modules/brace-expansion/index.js +201 -0
  384. package/node_modules/rimraf/node_modules/brace-expansion/package.json +47 -0
  385. package/node_modules/rimraf/node_modules/glob/LICENSE +21 -0
  386. package/node_modules/rimraf/node_modules/glob/README.md +378 -0
  387. package/node_modules/rimraf/node_modules/glob/common.js +238 -0
  388. package/node_modules/rimraf/node_modules/glob/glob.js +790 -0
  389. package/node_modules/rimraf/node_modules/glob/package.json +55 -0
  390. package/node_modules/rimraf/node_modules/glob/sync.js +486 -0
  391. package/node_modules/rimraf/node_modules/minimatch/LICENSE +15 -0
  392. package/node_modules/rimraf/node_modules/minimatch/README.md +230 -0
  393. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +947 -0
  394. package/node_modules/rimraf/node_modules/minimatch/package.json +33 -0
  395. package/node_modules/rimraf/package.json +32 -0
  396. package/node_modules/rimraf/rimraf.js +360 -0
  397. package/node_modules/stringify-package/LICENSE +13 -0
  398. package/node_modules/stringify-package/README.md +55 -0
  399. package/node_modules/stringify-package/index.js +18 -0
  400. package/node_modules/stringify-package/package.json +38 -0
  401. package/node_modules/wrappy/LICENSE +15 -0
  402. package/node_modules/wrappy/README.md +36 -0
  403. package/node_modules/wrappy/package.json +29 -0
  404. package/node_modules/wrappy/wrappy.js +33 -0
  405. 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