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,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.DeviceAndroidDebugBridge = void 0;
4
13
  const android_debug_bridge_1 = require("./android-debug-bridge");
@@ -13,20 +22,28 @@ class DeviceAndroidDebugBridge extends android_debug_bridge_1.AndroidDebugBridge
13
22
  this.$staticConfig = $staticConfig;
14
23
  this.$androidDebugBridgeResultHandler = $androidDebugBridgeResultHandler;
15
24
  }
16
- async sendBroadcastToDevice(action, extras) {
17
- extras = extras || {};
18
- const broadcastCommand = ["am", "broadcast", "-a", `${action}`];
19
- _.each(extras, (value, key) => broadcastCommand.push("-e", key, value));
20
- const result = await this.executeShellCommand(broadcastCommand);
21
- this.$logger.trace(`Broadcast result ${result} from ${broadcastCommand}`);
22
- const match = result.match(/Broadcast completed: result=(\d+)/);
23
- if (match) {
24
- return +match[1];
25
- }
26
- this.$errors.fail("Unable to broadcast to android device:\n%s", result);
25
+ sendBroadcastToDevice(action, extras) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ extras = extras || {};
28
+ const broadcastCommand = ["am", "broadcast", "-a", `${action}`];
29
+ _.each(extras, (value, key) => broadcastCommand.push("-e", key, value));
30
+ const result = yield this.executeShellCommand(broadcastCommand);
31
+ this.$logger.trace(`Broadcast result ${result} from ${broadcastCommand}`);
32
+ const match = result.match(/Broadcast completed: result=(\d+)/);
33
+ if (match) {
34
+ return +match[1];
35
+ }
36
+ this.$errors.fail("Unable to broadcast to android device:\n%s", result);
37
+ });
27
38
  }
28
- async composeCommand(params) {
29
- return super.composeCommand(params, this.identifier);
39
+ composeCommand(params) {
40
+ const _super = Object.create(null, {
41
+ composeCommand: { get: () => super.composeCommand }
42
+ });
43
+ return __awaiter(this, void 0, void 0, function* () {
44
+ return _super.composeCommand.call(this, params, this.identifier);
45
+ });
30
46
  }
31
47
  }
32
48
  exports.DeviceAndroidDebugBridge = DeviceAndroidDebugBridge;
49
+ //# sourceMappingURL=device-android-debug-bridge.js.map
@@ -5,6 +5,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
15
+ });
16
+ };
8
17
  Object.defineProperty(exports, "__esModule", { value: true });
9
18
  exports.AndroidGenymotionService = void 0;
10
19
  const constants_1 = require("../../../constants");
@@ -26,35 +35,40 @@ class AndroidGenymotionService {
26
35
  this.$logger = $logger;
27
36
  this.$virtualBoxService = $virtualBoxService;
28
37
  }
29
- async getEmulatorImages(adbDevicesOutput) {
30
- const availableEmulatorsOutput = await this.getEmulatorImagesCore();
31
- const runningEmulatorIds = await this.getRunningEmulatorIds(adbDevicesOutput);
32
- const runningEmulators = await (0, helpers_1.settlePromises)(_.map(runningEmulatorIds, (emulatorId) => this.getRunningEmulatorData(emulatorId, availableEmulatorsOutput.devices)));
33
- const devices = availableEmulatorsOutput.devices.map((emulator) => this.$emulatorHelper.getEmulatorByImageIdentifier(emulator.imageIdentifier, runningEmulators) || emulator);
34
- return {
35
- devices,
36
- errors: availableEmulatorsOutput.errors,
37
- };
38
- }
39
- async getRunningEmulatorIds(adbDevicesOutput) {
40
- const results = await Promise.all(_(adbDevicesOutput)
41
- .filter((r) => !r.match(constants_1.AndroidVirtualDevice.RUNNING_AVD_EMULATOR_REGEX))
42
- .map(async (row) => {
43
- const match = row.match(/^(.+?)\s+device$/);
44
- if (match && match[1]) {
45
- const emulatorId = match[1];
46
- const result = (await this.isGenymotionEmulator(emulatorId))
47
- ? emulatorId
48
- : undefined;
49
- return Promise.resolve(result);
50
- }
51
- return Promise.resolve(undefined);
52
- })
53
- .value());
54
- return _(results)
55
- .filter((r) => !!r)
56
- .map((r) => r.toString())
57
- .value();
38
+ getEmulatorImages(adbDevicesOutput) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const availableEmulatorsOutput = yield this.getEmulatorImagesCore();
41
+ const runningEmulatorIds = yield this.getRunningEmulatorIds(adbDevicesOutput);
42
+ const runningEmulators = yield (0, helpers_1.settlePromises)(_.map(runningEmulatorIds, (emulatorId) => this.getRunningEmulatorData(emulatorId, availableEmulatorsOutput.devices)));
43
+ const devices = availableEmulatorsOutput.devices.map((emulator) => this.$emulatorHelper.getEmulatorByImageIdentifier(emulator.imageIdentifier, runningEmulators) || emulator);
44
+ return {
45
+ devices,
46
+ errors: availableEmulatorsOutput.errors,
47
+ };
48
+ });
49
+ }
50
+ getRunningEmulatorIds(adbDevicesOutput) {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ const results = yield Promise.all(_(adbDevicesOutput)
53
+ .filter((r) => !r.match(constants_1.AndroidVirtualDevice.RUNNING_AVD_EMULATOR_REGEX))
54
+ .map((row) => __awaiter(this, void 0, void 0, function* () {
55
+ const match = row.match(/^(.+?)\s+device$/);
56
+ if (match && match[1]) {
57
+ // possible genymotion emulator
58
+ const emulatorId = match[1];
59
+ const result = (yield this.isGenymotionEmulator(emulatorId))
60
+ ? emulatorId
61
+ : undefined;
62
+ return Promise.resolve(result);
63
+ }
64
+ return Promise.resolve(undefined);
65
+ }))
66
+ .value());
67
+ return _(results)
68
+ .filter((r) => !!r)
69
+ .map((r) => r.toString())
70
+ .value();
71
+ });
58
72
  }
59
73
  get pathToEmulatorExecutable() {
60
74
  const searchPaths = this.playerSearchPaths[process.platform];
@@ -64,34 +78,43 @@ class AndroidGenymotionService {
64
78
  startEmulatorArgs(imageIdentifier) {
65
79
  return ["--vm-name", imageIdentifier];
66
80
  }
67
- async getEmulatorImagesCore() {
68
- const output = await this.$virtualBoxService.listVms();
69
- if (output.error) {
70
- return { devices: [], errors: output.error ? [output.error] : [] };
71
- }
72
- const devices = await this.parseListVmsOutput(output.vms);
73
- return { devices, errors: [] };
74
- }
75
- async getRunningEmulatorName(emulatorId) {
76
- const output = await this.$adb.getPropertyValue(emulatorId, "ro.product.model");
77
- this.$logger.trace(output);
78
- return _.first(output.split(os_1.EOL)).trim();
79
- }
80
- async getRunningEmulatorImageIdentifier(emulatorId) {
81
- const adbDevices = await this.$adb.getDevicesSafe();
82
- const emulatorImages = (await this.getEmulatorImages(adbDevices)).devices;
83
- const emulator = await this.getRunningEmulatorData(emulatorId, emulatorImages);
84
- return emulator ? emulator.imageIdentifier : null;
85
- }
86
- async getRunningEmulatorData(runningEmulatorId, availableEmulators) {
87
- const emulatorName = await this.getRunningEmulatorName(runningEmulatorId);
88
- const runningEmulator = this.$emulatorHelper.getEmulatorByIdOrName(emulatorName, availableEmulators);
89
- if (!runningEmulator) {
90
- return null;
91
- }
92
- this.$emulatorHelper.setRunningAndroidEmulatorProperties(runningEmulatorId, runningEmulator);
93
- return runningEmulator;
81
+ getEmulatorImagesCore() {
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ const output = yield this.$virtualBoxService.listVms();
84
+ if (output.error) {
85
+ return { devices: [], errors: output.error ? [output.error] : [] };
86
+ }
87
+ const devices = yield this.parseListVmsOutput(output.vms);
88
+ return { devices, errors: [] };
89
+ });
90
+ }
91
+ getRunningEmulatorName(emulatorId) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ const output = yield this.$adb.getPropertyValue(emulatorId, "ro.product.model");
94
+ this.$logger.trace(output);
95
+ return _.first(output.split(os_1.EOL)).trim();
96
+ });
97
+ }
98
+ getRunningEmulatorImageIdentifier(emulatorId) {
99
+ return __awaiter(this, void 0, void 0, function* () {
100
+ const adbDevices = yield this.$adb.getDevicesSafe();
101
+ const emulatorImages = (yield this.getEmulatorImages(adbDevices)).devices;
102
+ const emulator = yield this.getRunningEmulatorData(emulatorId, emulatorImages);
103
+ return emulator ? emulator.imageIdentifier : null;
104
+ });
105
+ }
106
+ getRunningEmulatorData(runningEmulatorId, availableEmulators) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ const emulatorName = yield this.getRunningEmulatorName(runningEmulatorId);
109
+ const runningEmulator = this.$emulatorHelper.getEmulatorByIdOrName(emulatorName, availableEmulators);
110
+ if (!runningEmulator) {
111
+ return null;
112
+ }
113
+ this.$emulatorHelper.setRunningAndroidEmulatorProperties(runningEmulatorId, runningEmulator);
114
+ return runningEmulator;
115
+ });
94
116
  }
117
+ // https://wiki.appcelerator.org/display/guides2/Installing+Genymotion
95
118
  get playerSearchPaths() {
96
119
  return {
97
120
  darwin: [
@@ -105,23 +128,25 @@ class AndroidGenymotionService {
105
128
  ],
106
129
  };
107
130
  }
108
- async parseListVmsOutput(vms) {
109
- const configurationError = await this.getConfigurationError();
110
- const devices = [];
111
- for (const vm of vms) {
112
- try {
113
- const output = await this.$virtualBoxService.enumerateGuestProperties(vm.id);
114
- if (output &&
115
- output.properties &&
116
- output.properties.indexOf("genymotion") !== -1) {
117
- devices.push(this.convertToDeviceInfo(output.properties, vm.id, vm.name, output.error, configurationError));
131
+ parseListVmsOutput(vms) {
132
+ return __awaiter(this, void 0, void 0, function* () {
133
+ const configurationError = yield this.getConfigurationError();
134
+ const devices = [];
135
+ for (const vm of vms) {
136
+ try {
137
+ const output = yield this.$virtualBoxService.enumerateGuestProperties(vm.id);
138
+ if (output &&
139
+ output.properties &&
140
+ output.properties.indexOf("genymotion") !== -1) {
141
+ devices.push(this.convertToDeviceInfo(output.properties, vm.id, vm.name, output.error, configurationError));
142
+ }
143
+ }
144
+ catch (err) {
145
+ this.$logger.trace(`Error while parsing vm ${vm.id}`);
118
146
  }
119
147
  }
120
- catch (err) {
121
- this.$logger.trace(`Error while parsing vm ${vm.id}`);
122
- }
123
- }
124
- return devices;
148
+ return devices;
149
+ });
125
150
  }
126
151
  convertToDeviceInfo(output, id, name, error, configurationError) {
127
152
  return {
@@ -140,22 +165,25 @@ class AndroidGenymotionService {
140
165
  };
141
166
  }
142
167
  getSdkVersion(output) {
168
+ // Example -> Name: android_version, value: 6.0.0, timestamp: 1530090506102029000, flags:
143
169
  const androidApiLevelRow = output
144
170
  .split("\n")
145
171
  .filter((row) => !!row)
146
172
  .find((row) => row.indexOf("Name: android_version") !== -1);
147
173
  return androidApiLevelRow.split(", ")[1].split("value: ")[1];
148
174
  }
149
- async isGenymotionEmulator(emulatorId) {
150
- const manufacturer = await this.$adb.getPropertyValue(emulatorId, "ro.product.manufacturer");
151
- if (manufacturer && manufacturer.match(/^Genymotion/i)) {
152
- return true;
153
- }
154
- const buildProduct = await this.$adb.getPropertyValue(emulatorId, "ro.build.product");
155
- if (buildProduct && _.includes(buildProduct.toLowerCase(), "vbox")) {
156
- return true;
157
- }
158
- return false;
175
+ isGenymotionEmulator(emulatorId) {
176
+ return __awaiter(this, void 0, void 0, function* () {
177
+ const manufacturer = yield this.$adb.getPropertyValue(emulatorId, "ro.product.manufacturer");
178
+ if (manufacturer && manufacturer.match(/^Genymotion/i)) {
179
+ return true;
180
+ }
181
+ const buildProduct = yield this.$adb.getPropertyValue(emulatorId, "ro.build.product");
182
+ if (buildProduct && _.includes(buildProduct.toLowerCase(), "vbox")) {
183
+ return true;
184
+ }
185
+ return false;
186
+ });
159
187
  }
160
188
  getConfigurationPlatformSpecficErrorMessage() {
161
189
  const searchPaths = this.playerSearchPaths[process.platform];
@@ -163,22 +191,26 @@ class AndroidGenymotionService {
163
191
  ${searchPaths.join(os_1.EOL)}
164
192
  In case you have installed Genymotion in a different location, please add the path to player executable to your PATH environment variable.`;
165
193
  }
166
- async getConfigurationError() {
167
- const result = await this.$childProcess.trySpawnFromCloseEvent(this.pathToEmulatorExecutable, [], {}, { throwError: false });
168
- if (result &&
169
- result.stderr &&
170
- result.stderr.indexOf(constants_1.AndroidVirtualDevice.GENYMOTION_DEFAULT_STDERR_STRING) === -1) {
171
- this.$logger.trace("Configuration error for Genymotion", result);
172
- return this.getConfigurationPlatformSpecficErrorMessage();
173
- }
174
- return null;
194
+ getConfigurationError() {
195
+ return __awaiter(this, void 0, void 0, function* () {
196
+ const result = yield this.$childProcess.trySpawnFromCloseEvent(this.pathToEmulatorExecutable, [], {}, { throwError: false });
197
+ // When player is spawned, it always prints message on stderr.
198
+ if (result &&
199
+ result.stderr &&
200
+ result.stderr.indexOf(constants_1.AndroidVirtualDevice.GENYMOTION_DEFAULT_STDERR_STRING) === -1) {
201
+ this.$logger.trace("Configuration error for Genymotion", result);
202
+ return this.getConfigurationPlatformSpecficErrorMessage();
203
+ }
204
+ return null;
205
+ });
175
206
  }
176
207
  }
177
- exports.AndroidGenymotionService = AndroidGenymotionService;
178
208
  __decorate([
179
209
  (0, decorators_1.cache)()
180
210
  ], AndroidGenymotionService.prototype, "getConfigurationPlatformSpecficErrorMessage", null);
181
211
  __decorate([
182
212
  (0, decorators_1.cache)()
183
213
  ], AndroidGenymotionService.prototype, "getConfigurationError", null);
214
+ exports.AndroidGenymotionService = AndroidGenymotionService;
184
215
  yok_1.injector.register("androidGenymotionService", AndroidGenymotionService);
216
+ //# sourceMappingURL=genymotion-service.js.map
@@ -5,6 +5,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
15
+ });
16
+ };
8
17
  Object.defineProperty(exports, "__esModule", { value: true });
9
18
  exports.VirtualBoxService = void 0;
10
19
  const path = require("path");
@@ -20,67 +29,83 @@ class VirtualBoxService {
20
29
  this.$hostInfo = $hostInfo;
21
30
  this.$logger = $logger;
22
31
  }
23
- async listVms() {
24
- let result = null;
25
- let vms = [];
26
- const vBoxManagePath = await this.getvBoxManagePath();
27
- if (vBoxManagePath) {
28
- result = await this.$childProcess.trySpawnFromCloseEvent(vBoxManagePath, [
29
- "list",
30
- "vms",
31
- ]);
32
- if (result && result.stdout) {
33
- vms = result.stdout
34
- .split(os_1.EOL)
35
- .filter((row) => !!row)
36
- .map((row) => {
37
- const [rawName, rawId] = row.split('" ');
38
- const id = rawId.substr(1, rawId.length - 2);
39
- const name = rawName.substr(1, rawName.length - 1);
40
- return { id, name };
41
- });
32
+ listVms() {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ let result = null;
35
+ let vms = [];
36
+ const vBoxManagePath = yield this.getvBoxManagePath();
37
+ if (vBoxManagePath) {
38
+ result = yield this.$childProcess.trySpawnFromCloseEvent(vBoxManagePath, [
39
+ "list",
40
+ "vms",
41
+ ]);
42
+ if (result && result.stdout) {
43
+ vms = result.stdout
44
+ .split(os_1.EOL)
45
+ .filter((row) => !!row)
46
+ .map((row) => {
47
+ // Example row: "Google Nexus 4 - 5.0.0 - API 21 - 768x1280" {9d9beef2-cc60-4a54-bcc0-cc1dbf89811f}
48
+ const [rawName, rawId] = row.split('" ');
49
+ const id = rawId.substr(1, rawId.length - 2);
50
+ const name = rawName.substr(1, rawName.length - 1);
51
+ return { id, name };
52
+ });
53
+ }
42
54
  }
43
- }
44
- return { vms, error: result && result.stderr };
55
+ return { vms, error: result && result.stderr };
56
+ });
45
57
  }
46
- async enumerateGuestProperties(id) {
47
- let result = null;
48
- const vBoxManagePath = await this.getvBoxManagePath();
49
- if (vBoxManagePath) {
50
- result = await this.$childProcess.trySpawnFromCloseEvent(vBoxManagePath, [
51
- "guestproperty",
52
- "enumerate",
53
- id,
54
- ]);
55
- }
56
- return {
57
- properties: result && result.stdout,
58
- error: result && result.stderr,
59
- };
60
- }
61
- async getvBoxManageSearchPaths() {
62
- const searchPaths = {
63
- darwin: ["/usr/local/bin"],
64
- linux: ["/opt", "/opt/local", "/usr", "/usr/local", "~"],
65
- win32: [
66
- `${process.env["PROGRAMFILES"]}\\Oracle\\VirtualBox`,
67
- `${process.env["PROGRAMFILES(X86)"]}\\Oracle\\VirtualBox`,
68
- ],
69
- };
70
- if (this.$hostInfo.isWindows) {
71
- let searchPath = null;
72
- try {
73
- const result = await (0, helpers_1.getWinRegPropertyValue)("\\Software\\Oracle\\VirtualBox", "InstallDir");
74
- searchPath = result && result.value ? result.value : null;
58
+ enumerateGuestProperties(id) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ let result = null;
61
+ const vBoxManagePath = yield this.getvBoxManagePath();
62
+ if (vBoxManagePath) {
63
+ result = yield this.$childProcess.trySpawnFromCloseEvent(vBoxManagePath, [
64
+ "guestproperty",
65
+ "enumerate",
66
+ id,
67
+ ]);
75
68
  }
76
- catch (err) {
77
- this.$logger.trace(`Error while trying to get InstallDir property for \\Software\\Oracle\\VirtualBox. More info: ${err}.`);
78
- }
79
- if (searchPath && !_.includes(searchPaths["win32"], searchPath)) {
80
- searchPaths["win32"].unshift(searchPath);
69
+ return {
70
+ properties: result && result.stdout,
71
+ error: result && result.stderr,
72
+ };
73
+ });
74
+ }
75
+ getvBoxManageSearchPaths() {
76
+ return __awaiter(this, void 0, void 0, function* () {
77
+ const searchPaths = {
78
+ darwin: ["/usr/local/bin"],
79
+ linux: ["/opt", "/opt/local", "/usr", "/usr/local", "~"],
80
+ win32: [
81
+ `${process.env["PROGRAMFILES"]}\\Oracle\\VirtualBox`,
82
+ `${process.env["PROGRAMFILES(X86)"]}\\Oracle\\VirtualBox`,
83
+ ],
84
+ };
85
+ if (this.$hostInfo.isWindows) {
86
+ let searchPath = null;
87
+ try {
88
+ /* This can be used as interface!!!!
89
+ arch:null
90
+ hive:"HKLM"
91
+ host:""
92
+ key:"\Software\Oracle\VirtualBox"
93
+ name:"InstallDir"
94
+ type:"REG_SZ"
95
+ value:"C:\Program Files\Oracle\VirtualBox\"
96
+ */
97
+ const result = yield (0, helpers_1.getWinRegPropertyValue)("\\Software\\Oracle\\VirtualBox", "InstallDir");
98
+ searchPath = result && result.value ? result.value : null;
99
+ }
100
+ catch (err) {
101
+ this.$logger.trace(`Error while trying to get InstallDir property for \\Software\\Oracle\\VirtualBox. More info: ${err}.`);
102
+ }
103
+ if (searchPath && !_.includes(searchPaths["win32"], searchPath)) {
104
+ searchPaths["win32"].unshift(searchPath);
105
+ }
81
106
  }
82
- }
83
- return searchPaths;
107
+ return searchPaths;
108
+ });
84
109
  }
85
110
  get vBoxManageExecutableNames() {
86
111
  return {
@@ -89,16 +114,19 @@ class VirtualBoxService {
89
114
  win32: "VBoxManage.exe",
90
115
  };
91
116
  }
92
- async getvBoxManagePath() {
93
- const searchPaths = (await this.getvBoxManageSearchPaths())[process.platform];
94
- const result = searchPaths
95
- .map((searchPath) => path.join(searchPath, this.vBoxManageExecutableNames[process.platform]))
96
- .find((searchPath) => this.$fs.exists(searchPath));
97
- return result;
117
+ getvBoxManagePath() {
118
+ return __awaiter(this, void 0, void 0, function* () {
119
+ const searchPaths = (yield this.getvBoxManageSearchPaths())[process.platform];
120
+ const result = searchPaths
121
+ .map((searchPath) => path.join(searchPath, this.vBoxManageExecutableNames[process.platform]))
122
+ .find((searchPath) => this.$fs.exists(searchPath));
123
+ return result;
124
+ });
98
125
  }
99
126
  }
100
- exports.VirtualBoxService = VirtualBoxService;
101
127
  __decorate([
102
128
  (0, decorators_1.cache)()
103
129
  ], VirtualBoxService.prototype, "getvBoxManagePath", null);
130
+ exports.VirtualBoxService = VirtualBoxService;
104
131
  yok_1.injector.register("virtualBoxService", VirtualBoxService);
132
+ //# sourceMappingURL=virtualbox-service.js.map