nativescript 8.9.0-dev.2 → 8.9.0-dev.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/lib/android-tools-info.js +9 -32
  3. package/lib/base-package-manager.js +47 -71
  4. package/lib/bootstrap.js +1 -5
  5. package/lib/bun-package-manager.js +65 -104
  6. package/lib/color.js +2 -5
  7. package/lib/commands/add-platform.js +14 -31
  8. package/lib/commands/apple-login.js +18 -30
  9. package/lib/commands/appstore-list.js +34 -46
  10. package/lib/commands/appstore-upload.js +52 -68
  11. package/lib/commands/build.js +57 -90
  12. package/lib/commands/clean.js +161 -197
  13. package/lib/commands/command-base.js +14 -28
  14. package/lib/commands/config.js +48 -71
  15. package/lib/commands/create-project.js +210 -235
  16. package/lib/commands/debug.js +66 -93
  17. package/lib/commands/deploy.js +30 -47
  18. package/lib/commands/embedding/embed.js +33 -59
  19. package/lib/commands/extensibility/install-extension.js +5 -17
  20. package/lib/commands/extensibility/list-extensions.js +13 -25
  21. package/lib/commands/extensibility/uninstall-extension.js +4 -16
  22. package/lib/commands/fonts.js +30 -42
  23. package/lib/commands/generate-assets.js +13 -29
  24. package/lib/commands/generate-help.js +2 -14
  25. package/lib/commands/generate.js +12 -70
  26. package/lib/commands/info.js +2 -14
  27. package/lib/commands/install.js +34 -50
  28. package/lib/commands/list-platforms.js +14 -26
  29. package/lib/commands/migrate.js +15 -27
  30. package/lib/commands/native-add.js +23 -51
  31. package/lib/commands/platform-clean.js +19 -33
  32. package/lib/commands/plugin/add-plugin.js +12 -26
  33. package/lib/commands/plugin/build-plugin.js +31 -45
  34. package/lib/commands/plugin/create-plugin.js +110 -138
  35. package/lib/commands/plugin/list-plugins.js +22 -34
  36. package/lib/commands/plugin/remove-plugin.js +20 -35
  37. package/lib/commands/plugin/update-plugin.js +20 -34
  38. package/lib/commands/post-install.js +20 -39
  39. package/lib/commands/prepare.js +22 -39
  40. package/lib/commands/preview.js +49 -64
  41. package/lib/commands/remove-platform.js +7 -19
  42. package/lib/commands/resources/resources-update.js +13 -28
  43. package/lib/commands/run.js +55 -77
  44. package/lib/commands/setup.js +0 -1
  45. package/lib/commands/start.js +6 -20
  46. package/lib/commands/test-init.js +123 -138
  47. package/lib/commands/test.js +67 -97
  48. package/lib/commands/typings.js +126 -143
  49. package/lib/commands/update-platform.js +22 -40
  50. package/lib/commands/update.js +30 -45
  51. package/lib/commands/widget.js +390 -352
  52. package/lib/common/bootstrap.js +0 -1
  53. package/lib/common/child-process.js +53 -75
  54. package/lib/common/codeGeneration/code-entity.js +1 -2
  55. package/lib/common/codeGeneration/code-printer.js +1 -2
  56. package/lib/common/command-params.js +7 -19
  57. package/lib/common/commands/analytics.js +27 -43
  58. package/lib/common/commands/autocompletion.js +39 -59
  59. package/lib/common/commands/device/device-log-stream.js +12 -24
  60. package/lib/common/commands/device/get-file.js +22 -35
  61. package/lib/common/commands/device/list-applications.js +12 -24
  62. package/lib/common/commands/device/list-devices.js +72 -90
  63. package/lib/common/commands/device/list-files.js +23 -36
  64. package/lib/common/commands/device/put-file.js +22 -35
  65. package/lib/common/commands/device/run-application.js +12 -26
  66. package/lib/common/commands/device/stop-application.js +11 -23
  67. package/lib/common/commands/device/uninstall-application.js +6 -18
  68. package/lib/common/commands/doctor.js +2 -3
  69. package/lib/common/commands/generate-messages.js +17 -29
  70. package/lib/common/commands/help.js +20 -34
  71. package/lib/common/commands/package-manager-get.js +6 -18
  72. package/lib/common/commands/package-manager-set.js +9 -21
  73. package/lib/common/commands/post-install.js +2 -14
  74. package/lib/common/commands/preuninstall.js +24 -48
  75. package/lib/common/commands/proxy/proxy-base.js +8 -23
  76. package/lib/common/commands/proxy/proxy-clear.js +4 -16
  77. package/lib/common/commands/proxy/proxy-get.js +3 -15
  78. package/lib/common/commands/proxy/proxy-set.js +87 -101
  79. package/lib/common/common-lib.js +0 -1
  80. package/lib/common/constants.js +11 -22
  81. package/lib/common/decorators.js +10 -70
  82. package/lib/common/dispatchers.js +80 -106
  83. package/lib/common/errors.js +91 -116
  84. package/lib/common/file-system.js +108 -141
  85. package/lib/common/header.js +1 -5
  86. package/lib/common/helpers.js +152 -267
  87. package/lib/common/host-info.js +37 -54
  88. package/lib/common/http-client.js +93 -128
  89. package/lib/common/logger/appenders/cli-appender.js +1 -6
  90. package/lib/common/logger/appenders/emit-appender.js +1 -6
  91. package/lib/common/logger/layouts/cli-layout.js +1 -3
  92. package/lib/common/logger/logger.js +4 -9
  93. package/lib/common/messages/messages.js +0 -6
  94. package/lib/common/mobile/android/android-application-manager.js +122 -162
  95. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -2
  96. package/lib/common/mobile/android/android-debug-bridge.js +87 -118
  97. package/lib/common/mobile/android/android-device-file-system.js +98 -135
  98. package/lib/common/mobile/android/android-device-hash-service.js +50 -78
  99. package/lib/common/mobile/android/android-device.js +68 -93
  100. package/lib/common/mobile/android/android-emulator-services.js +105 -131
  101. package/lib/common/mobile/android/android-ini-file-parser.js +0 -9
  102. package/lib/common/mobile/android/android-log-filter.js +1 -5
  103. package/lib/common/mobile/android/android-virtual-device-service.js +76 -123
  104. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -30
  105. package/lib/common/mobile/android/genymotion/genymotion-service.js +91 -123
  106. package/lib/common/mobile/android/genymotion/virtualbox-service.js +64 -92
  107. package/lib/common/mobile/android/logcat-helper.js +108 -140
  108. package/lib/common/mobile/application-manager-base.js +84 -113
  109. package/lib/common/mobile/device-emitter.js +0 -4
  110. package/lib/common/mobile/device-log-emitter.js +0 -1
  111. package/lib/common/mobile/device-log-provider-base.js +7 -19
  112. package/lib/common/mobile/device-log-provider.js +0 -23
  113. package/lib/common/mobile/device-platforms-constants.js +0 -1
  114. package/lib/common/mobile/emulator-helper.js +0 -3
  115. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -111
  116. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -106
  117. package/lib/common/mobile/ios/device/ios-device-operations.js +105 -146
  118. package/lib/common/mobile/ios/device/ios-device.js +20 -40
  119. package/lib/common/mobile/ios/ios-device-base.js +58 -82
  120. package/lib/common/mobile/ios/ios-device-product-name-mapper.js +0 -2
  121. package/lib/common/mobile/ios/ios-log-filter.js +0 -1
  122. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +63 -96
  123. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -2
  124. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +60 -95
  125. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +27 -48
  126. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -63
  127. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -36
  128. package/lib/common/mobile/local-to-device-path-data-factory.js +0 -1
  129. package/lib/common/mobile/log-filter.js +0 -2
  130. package/lib/common/mobile/logging-levels.js +0 -1
  131. package/lib/common/mobile/mobile-core/android-device-discovery.js +43 -64
  132. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +21 -35
  133. package/lib/common/mobile/mobile-core/android-process-service.js +143 -214
  134. package/lib/common/mobile/mobile-core/device-discovery.js +2 -14
  135. package/lib/common/mobile/mobile-core/devices-service.js +386 -505
  136. package/lib/common/mobile/mobile-core/ios-device-discovery.js +24 -37
  137. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +47 -65
  138. package/lib/common/mobile/mobile-helper.js +15 -27
  139. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -53
  140. package/lib/common/opener.js +2 -3
  141. package/lib/common/os-info.js +0 -1
  142. package/lib/common/plist-parser.js +0 -1
  143. package/lib/common/project-helper.js +0 -1
  144. package/lib/common/prompter.js +91 -114
  145. package/lib/common/queue.js +9 -21
  146. package/lib/common/resource-loader.js +0 -1
  147. package/lib/common/services/auto-completion-service.js +40 -65
  148. package/lib/common/services/cancellation.js +17 -29
  149. package/lib/common/services/commands-service.js +146 -180
  150. package/lib/common/services/help-service.js +133 -166
  151. package/lib/common/services/hooks-service.js +93 -121
  152. package/lib/common/services/ios-notification-service.js +21 -35
  153. package/lib/common/services/json-file-settings-service.js +52 -77
  154. package/lib/common/services/lock-service.js +35 -58
  155. package/lib/common/services/message-contract-generator.js +35 -47
  156. package/lib/common/services/messages-service.js +0 -1
  157. package/lib/common/services/micro-templating-service.js +4 -21
  158. package/lib/common/services/net-service.js +90 -110
  159. package/lib/common/services/project-files-manager.js +10 -28
  160. package/lib/common/services/project-files-provider-base.js +0 -1
  161. package/lib/common/services/proxy-service.js +13 -25
  162. package/lib/common/services/qr.js +13 -25
  163. package/lib/common/services/settings-service.js +1 -2
  164. package/lib/common/services/xcode-select-service.js +20 -36
  165. package/lib/common/utils.js +2 -3
  166. package/lib/common/validators/project-name-validator.js +1 -2
  167. package/lib/common/validators/validation-result.js +1 -2
  168. package/lib/common/verify-node-version.js +3 -11
  169. package/lib/common/yok.js +35 -69
  170. package/lib/config.js +36 -72
  171. package/lib/constants-provider.js +0 -1
  172. package/lib/constants.js +24 -77
  173. package/lib/controllers/build-controller.js +82 -100
  174. package/lib/controllers/debug-controller.js +107 -133
  175. package/lib/controllers/deploy-controller.js +15 -24
  176. package/lib/controllers/migrate-controller.js +723 -884
  177. package/lib/controllers/platform-controller.js +71 -94
  178. package/lib/controllers/prepare-controller.js +232 -274
  179. package/lib/controllers/run-controller.js +397 -427
  180. package/lib/controllers/update-controller-base.js +16 -30
  181. package/lib/controllers/update-controller.js +94 -130
  182. package/lib/data/build-data.js +0 -1
  183. package/lib/data/controller-data-base.js +0 -1
  184. package/lib/data/debug-data.js +0 -1
  185. package/lib/data/platform-data.js +0 -1
  186. package/lib/data/prepare-data.js +4 -2
  187. package/lib/data/run-data.js +0 -1
  188. package/lib/definitions/project.d.ts +24 -24
  189. package/lib/detached-processes/cleanup-js-subprocess.js +5 -20
  190. package/lib/detached-processes/cleanup-process.js +30 -43
  191. package/lib/detached-processes/file-log-service.js +1 -2
  192. package/lib/device-path-provider.js +23 -35
  193. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +149 -171
  194. package/lib/device-sockets/ios/notification.js +1 -4
  195. package/lib/device-sockets/ios/socket-request-executor.js +24 -42
  196. package/lib/helpers/android-bundle-validator-helper.js +2 -3
  197. package/lib/helpers/deploy-command-helper.js +44 -50
  198. package/lib/helpers/key-command-helper.js +6 -17
  199. package/lib/helpers/livesync-command-helper.js +137 -155
  200. package/lib/helpers/network-connectivity-validator.js +6 -18
  201. package/lib/helpers/options-track-helper.js +7 -19
  202. package/lib/helpers/package-path-helper.js +0 -1
  203. package/lib/helpers/platform-command-helper.js +101 -127
  204. package/lib/helpers/version-validator-helper.js +0 -1
  205. package/lib/key-commands/bootstrap.js +2 -3
  206. package/lib/key-commands/index.js +154 -205
  207. package/lib/nativescript-cli-lib-bootstrap.js +0 -4
  208. package/lib/nativescript-cli-lib.js +0 -1
  209. package/lib/nativescript-cli.js +6 -24
  210. package/lib/node/pbxproj-dom-xcode.js +0 -1
  211. package/lib/node/xcode.js +0 -1
  212. package/lib/node-package-manager.js +81 -114
  213. package/lib/options.js +122 -156
  214. package/lib/package-installation-manager.js +130 -172
  215. package/lib/package-manager.js +63 -88
  216. package/lib/platform-command-param.js +4 -16
  217. package/lib/pnpm-package-manager.js +59 -81
  218. package/lib/project-data.js +1 -13
  219. package/lib/providers/project-files-provider.js +1 -2
  220. package/lib/resolvers/livesync-service-resolver.js +0 -1
  221. package/lib/services/analytics/analytics-broker-process.js +19 -32
  222. package/lib/services/analytics/analytics-broker.js +17 -31
  223. package/lib/services/analytics/analytics-service.js +170 -210
  224. package/lib/services/analytics/google-analytics-provider.js +43 -59
  225. package/lib/services/analytics-settings-service.js +15 -37
  226. package/lib/services/android/android-bundle-tool-service.js +43 -61
  227. package/lib/services/android/gradle-build-args-service.js +9 -23
  228. package/lib/services/android/gradle-build-service.js +22 -36
  229. package/lib/services/android/gradle-command-service.js +22 -36
  230. package/lib/services/android-device-debug-service.js +90 -123
  231. package/lib/services/android-plugin-build-service.js +205 -260
  232. package/lib/services/android-project-service.js +129 -241
  233. package/lib/services/android-resources-migration-service.js +51 -71
  234. package/lib/services/apple-portal/apple-portal-application-service.js +46 -64
  235. package/lib/services/apple-portal/apple-portal-cookie-service.js +0 -1
  236. package/lib/services/apple-portal/apple-portal-session-service.js +197 -218
  237. package/lib/services/apple-portal/srp/srp-wrapper.js +43 -61
  238. package/lib/services/assets-generation/assets-generation-service.js +103 -128
  239. package/lib/services/build-artifacts-service.js +10 -22
  240. package/lib/services/build-data-service.js +0 -1
  241. package/lib/services/build-info-file-service.js +20 -36
  242. package/lib/services/cleanup-service.js +48 -81
  243. package/lib/services/cocoapods-platform-manager.js +0 -9
  244. package/lib/services/cocoapods-service.js +112 -153
  245. package/lib/services/debug-data-service.js +0 -1
  246. package/lib/services/debug-service-base.js +0 -7
  247. package/lib/services/device/device-install-app-service.js +54 -72
  248. package/lib/services/doctor-service.js +101 -135
  249. package/lib/services/extensibility-service.js +81 -108
  250. package/lib/services/files-hash-service.js +26 -44
  251. package/lib/services/hmr-status-service.js +1 -3
  252. package/lib/services/info-service.js +0 -1
  253. package/lib/services/initialize-service.js +37 -54
  254. package/lib/services/ios/export-options-plist-service.js +38 -55
  255. package/lib/services/ios/ios-signing-service.js +168 -191
  256. package/lib/services/ios/spm-service.js +46 -70
  257. package/lib/services/ios/xcodebuild-args-service.js +77 -103
  258. package/lib/services/ios/xcodebuild-command-service.js +14 -26
  259. package/lib/services/ios/xcodebuild-service.js +52 -72
  260. package/lib/services/ios-debugger-port-service.js +24 -38
  261. package/lib/services/ios-device-debug-service.js +75 -103
  262. package/lib/services/ios-entitlements-service.js +31 -43
  263. package/lib/services/ios-extensions-service.js +18 -30
  264. package/lib/services/ios-log-filter.js +0 -20
  265. package/lib/services/ios-native-target-service.js +4 -6
  266. package/lib/services/ios-project-service.js +452 -603
  267. package/lib/services/ios-provision-service.js +108 -132
  268. package/lib/services/ios-watch-app-service.js +21 -33
  269. package/lib/services/ip-service.js +38 -55
  270. package/lib/services/itmstransporter-service.js +129 -153
  271. package/lib/services/karma-execution.js +0 -2
  272. package/lib/services/livesync/android-device-livesync-service-base.js +31 -49
  273. package/lib/services/livesync/android-device-livesync-service.js +120 -151
  274. package/lib/services/livesync/android-device-livesync-sockets-service.js +121 -155
  275. package/lib/services/livesync/android-livesync-service.js +14 -36
  276. package/lib/services/livesync/android-livesync-tool.js +90 -117
  277. package/lib/services/livesync/device-livesync-service-base.js +15 -30
  278. package/lib/services/livesync/ios-device-livesync-service.js +114 -150
  279. package/lib/services/livesync/ios-livesync-service.js +42 -60
  280. package/lib/services/livesync/livesync-socket.js +0 -1
  281. package/lib/services/livesync/platform-livesync-service-base.js +94 -124
  282. package/lib/services/livesync-process-data-service.js +0 -1
  283. package/lib/services/log-parser-service.js +1 -2
  284. package/lib/services/log-source-map-service.js +30 -56
  285. package/lib/services/marking-mode-service.js +17 -33
  286. package/lib/services/metadata-filtering-service.js +0 -1
  287. package/lib/services/npm-config-service.js +1 -5
  288. package/lib/services/pacote-service.js +49 -71
  289. package/lib/services/performance-service.js +2 -4
  290. package/lib/services/platform/add-platform-service.js +51 -119
  291. package/lib/services/platform/platform-validation-service.js +22 -34
  292. package/lib/services/platform/prepare-native-platform-service.js +49 -65
  293. package/lib/services/platform-environment-requirements.js +27 -43
  294. package/lib/services/platform-project-service-base.js +0 -1
  295. package/lib/services/platforms-data-service.js +0 -1
  296. package/lib/services/plugins-service.js +125 -168
  297. package/lib/services/prepare-data-service.js +0 -1
  298. package/lib/services/project-backup-service.js +1 -5
  299. package/lib/services/project-changes-service.js +124 -152
  300. package/lib/services/project-cleanup-service.js +64 -79
  301. package/lib/services/project-config-service.js +73 -102
  302. package/lib/services/project-data-service.js +108 -154
  303. package/lib/services/project-name-service.js +28 -44
  304. package/lib/services/project-service.js +84 -113
  305. package/lib/services/project-templates-service.js +52 -68
  306. package/lib/services/qr-code-terminal-service.js +0 -1
  307. package/lib/services/require-service.js +0 -1
  308. package/lib/services/start-service.js +41 -60
  309. package/lib/services/temp-service.js +8 -22
  310. package/lib/services/terminal-spinner-service.js +15 -28
  311. package/lib/services/test-execution-service.js +59 -79
  312. package/lib/services/test-initialization-service.js +2 -6
  313. package/lib/services/timeline-profiler-service.js +1 -2
  314. package/lib/services/user-settings-service.js +0 -1
  315. package/lib/services/versions-service.js +119 -140
  316. package/lib/services/watch-ignore-list-service.js +0 -1
  317. package/lib/services/webpack/webpack-compiler-service.js +215 -279
  318. package/lib/services/xcconfig-service.js +8 -21
  319. package/lib/services/xcproj-service.js +0 -1
  320. package/lib/shared-event-bus.js +0 -6
  321. package/lib/sys-info.js +45 -63
  322. package/lib/tools/config-manipulation/config-transformer.js +0 -12
  323. package/lib/tools/node-modules/node-modules-builder.js +16 -28
  324. package/lib/tools/node-modules/node-modules-dependencies-builder.js +0 -6
  325. package/lib/yarn-package-manager.js +59 -79
  326. package/lib/yarn2-package-manager.js +60 -82
  327. package/package.json +65 -80
  328. package/node_modules/@npmcli/move-file/LICENSE.md +0 -22
  329. package/node_modules/@npmcli/move-file/README.md +0 -69
  330. package/node_modules/@npmcli/move-file/lib/index.js +0 -185
  331. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +0 -21
  332. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +0 -68
  333. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +0 -31
  334. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +0 -29
  335. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +0 -64
  336. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +0 -39
  337. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +0 -23
  338. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +0 -29
  339. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +0 -10
  340. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +0 -44
  341. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +0 -266
  342. package/node_modules/@npmcli/move-file/package.json +0 -47
  343. package/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  344. package/node_modules/balanced-match/LICENSE.md +0 -21
  345. package/node_modules/balanced-match/README.md +0 -97
  346. package/node_modules/balanced-match/index.js +0 -62
  347. package/node_modules/balanced-match/package.json +0 -48
  348. package/node_modules/concat-map/.travis.yml +0 -4
  349. package/node_modules/concat-map/LICENSE +0 -18
  350. package/node_modules/concat-map/README.markdown +0 -62
  351. package/node_modules/concat-map/example/map.js +0 -6
  352. package/node_modules/concat-map/index.js +0 -13
  353. package/node_modules/concat-map/package.json +0 -43
  354. package/node_modules/concat-map/test/map.js +0 -39
  355. package/node_modules/fs.realpath/LICENSE +0 -43
  356. package/node_modules/fs.realpath/README.md +0 -33
  357. package/node_modules/fs.realpath/index.js +0 -66
  358. package/node_modules/fs.realpath/old.js +0 -303
  359. package/node_modules/fs.realpath/package.json +0 -26
  360. package/node_modules/inflight/LICENSE +0 -15
  361. package/node_modules/inflight/README.md +0 -37
  362. package/node_modules/inflight/inflight.js +0 -54
  363. package/node_modules/inflight/package.json +0 -29
  364. package/node_modules/inherits/LICENSE +0 -16
  365. package/node_modules/inherits/README.md +0 -42
  366. package/node_modules/inherits/inherits.js +0 -9
  367. package/node_modules/inherits/inherits_browser.js +0 -27
  368. package/node_modules/inherits/package.json +0 -29
  369. package/node_modules/once/LICENSE +0 -15
  370. package/node_modules/once/README.md +0 -79
  371. package/node_modules/once/once.js +0 -42
  372. package/node_modules/once/package.json +0 -33
  373. package/node_modules/path-is-absolute/index.js +0 -20
  374. package/node_modules/path-is-absolute/license +0 -21
  375. package/node_modules/path-is-absolute/package.json +0 -43
  376. package/node_modules/path-is-absolute/readme.md +0 -59
  377. package/node_modules/rimraf/LICENSE +0 -15
  378. package/node_modules/rimraf/README.md +0 -101
  379. package/node_modules/rimraf/bin.js +0 -68
  380. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +0 -21
  381. package/node_modules/rimraf/node_modules/brace-expansion/README.md +0 -129
  382. package/node_modules/rimraf/node_modules/brace-expansion/index.js +0 -201
  383. package/node_modules/rimraf/node_modules/brace-expansion/package.json +0 -47
  384. package/node_modules/rimraf/node_modules/glob/LICENSE +0 -21
  385. package/node_modules/rimraf/node_modules/glob/README.md +0 -378
  386. package/node_modules/rimraf/node_modules/glob/common.js +0 -238
  387. package/node_modules/rimraf/node_modules/glob/glob.js +0 -790
  388. package/node_modules/rimraf/node_modules/glob/package.json +0 -55
  389. package/node_modules/rimraf/node_modules/glob/sync.js +0 -486
  390. package/node_modules/rimraf/node_modules/minimatch/LICENSE +0 -15
  391. package/node_modules/rimraf/node_modules/minimatch/README.md +0 -230
  392. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +0 -947
  393. package/node_modules/rimraf/node_modules/minimatch/package.json +0 -33
  394. package/node_modules/rimraf/package.json +0 -32
  395. package/node_modules/rimraf/rimraf.js +0 -360
  396. package/node_modules/stringify-package/LICENSE +0 -13
  397. package/node_modules/stringify-package/README.md +0 -55
  398. package/node_modules/stringify-package/index.js +0 -18
  399. package/node_modules/stringify-package/package.json +0 -38
  400. package/node_modules/wrappy/LICENSE +0 -15
  401. package/node_modules/wrappy/README.md +0 -36
  402. package/node_modules/wrappy/package.json +0 -29
  403. package/node_modules/wrappy/wrappy.js +0 -33
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.AndroidEmulatorServices = void 0;
13
4
  const constants_1 = require("../../constants");
@@ -27,111 +18,99 @@ class AndroidEmulatorServices {
27
18
  this.$logger = $logger;
28
19
  this.$utils = $utils;
29
20
  }
30
- getEmulatorImages() {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- const adbDevicesOutput = yield this.$adb.getDevicesSafe();
33
- const avdAvailableEmulatorsOutput = yield this.$androidVirtualDeviceService.getEmulatorImages(adbDevicesOutput);
34
- const genyAvailableDevicesOutput = yield this.$androidGenymotionService.getEmulatorImages(adbDevicesOutput);
35
- const devices = _.concat(avdAvailableEmulatorsOutput.devices, genyAvailableDevicesOutput.devices).filter((item) => !!item);
36
- return {
37
- devices,
38
- errors: avdAvailableEmulatorsOutput.errors.concat(genyAvailableDevicesOutput.errors),
39
- };
40
- });
21
+ async getEmulatorImages() {
22
+ const adbDevicesOutput = await this.$adb.getDevicesSafe();
23
+ const avdAvailableEmulatorsOutput = await this.$androidVirtualDeviceService.getEmulatorImages(adbDevicesOutput);
24
+ const genyAvailableDevicesOutput = await this.$androidGenymotionService.getEmulatorImages(adbDevicesOutput);
25
+ const devices = _.concat(avdAvailableEmulatorsOutput.devices, genyAvailableDevicesOutput.devices).filter((item) => !!item);
26
+ return {
27
+ devices,
28
+ errors: avdAvailableEmulatorsOutput.errors.concat(genyAvailableDevicesOutput.errors),
29
+ };
41
30
  }
42
- getRunningEmulatorIds() {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- const adbDevicesOutput = yield this.$adb.getDevicesSafe();
45
- const avds = yield this.$androidVirtualDeviceService.getRunningEmulatorIds(adbDevicesOutput);
46
- const genies = yield this.$androidGenymotionService.getRunningEmulatorIds(adbDevicesOutput);
47
- return avds.concat(genies);
48
- });
31
+ async getRunningEmulatorIds() {
32
+ const adbDevicesOutput = await this.$adb.getDevicesSafe();
33
+ const avds = await this.$androidVirtualDeviceService.getRunningEmulatorIds(adbDevicesOutput);
34
+ const genies = await this.$androidGenymotionService.getRunningEmulatorIds(adbDevicesOutput);
35
+ return avds.concat(genies);
49
36
  }
50
- getRunningEmulatorName(emulatorId) {
51
- return __awaiter(this, void 0, void 0, function* () {
52
- let result = yield this.$androidVirtualDeviceService.getRunningEmulatorName(emulatorId);
53
- if (!result) {
54
- result = yield this.$androidGenymotionService.getRunningEmulatorName(emulatorId);
55
- }
56
- return result;
57
- });
37
+ async getRunningEmulatorName(emulatorId) {
38
+ let result = await this.$androidVirtualDeviceService.getRunningEmulatorName(emulatorId);
39
+ if (!result) {
40
+ result = await this.$androidGenymotionService.getRunningEmulatorName(emulatorId);
41
+ }
42
+ return result;
58
43
  }
59
- getRunningEmulatorImageIdentifier(emulatorId) {
60
- return __awaiter(this, void 0, void 0, function* () {
61
- let result = yield this.$androidVirtualDeviceService.getRunningEmulatorImageIdentifier(emulatorId);
62
- if (!result) {
63
- result = yield this.$androidGenymotionService.getRunningEmulatorImageIdentifier(emulatorId);
64
- }
65
- return result;
66
- });
44
+ async getRunningEmulatorImageIdentifier(emulatorId) {
45
+ let result = await this.$androidVirtualDeviceService.getRunningEmulatorImageIdentifier(emulatorId);
46
+ if (!result) {
47
+ result = await this.$androidGenymotionService.getRunningEmulatorImageIdentifier(emulatorId);
48
+ }
49
+ return result;
67
50
  }
68
- startEmulator(options) {
69
- return __awaiter(this, void 0, void 0, function* () {
70
- const output = yield this.startEmulatorCore(options);
71
- let bootToCompleteOutput = null;
72
- if (output && output.runningEmulator) {
73
- bootToCompleteOutput = yield this.waitForEmulatorBootToComplete(output.runningEmulator, output.endTimeEpoch, options.timeout);
74
- }
75
- return {
76
- errors: ((output && output.errors) || []).concat((bootToCompleteOutput && bootToCompleteOutput.errors) || []),
77
- };
78
- });
51
+ async startEmulator(options) {
52
+ const output = await this.startEmulatorCore(options);
53
+ let bootToCompleteOutput = null;
54
+ if (output && output.runningEmulator) {
55
+ bootToCompleteOutput = await this.waitForEmulatorBootToComplete(output.runningEmulator, output.endTimeEpoch, options.timeout);
56
+ }
57
+ return {
58
+ errors: ((output && output.errors) || []).concat((bootToCompleteOutput && bootToCompleteOutput.errors) || []),
59
+ };
79
60
  }
80
61
  detach(deviceInfo) {
81
62
  this.$androidVirtualDeviceService.detach(deviceInfo);
82
63
  }
83
- startEmulatorCore(options) {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- const timeout = options.timeout || constants_1.AndroidVirtualDevice.TIMEOUT_SECONDS;
86
- const endTimeEpoch = (0, helpers_1.getCurrentEpochTime)() + this.$utils.getMilliSecondsTimeout(timeout);
87
- const availableEmulators = (yield this.getEmulatorImages()).devices;
88
- let emulator = this.$emulatorHelper.getEmulatorByStartEmulatorOptions(options, availableEmulators);
89
- if (!emulator &&
90
- !options.emulatorIdOrName &&
91
- !options.imageIdentifier &&
92
- !options.emulator) {
93
- emulator = this.getBestFit(availableEmulators);
94
- }
95
- if (!emulator) {
96
- return {
97
- runningEmulator: null,
98
- errors: [
99
- `No emulator image available for device identifier '${options.emulatorIdOrName || options.imageIdentifier}'.`,
100
- ],
101
- endTimeEpoch,
102
- };
103
- }
104
- if (emulator.errorHelp) {
105
- return {
106
- runningEmulator: null,
107
- errors: [emulator.errorHelp],
108
- endTimeEpoch,
109
- };
110
- }
111
- this.spawnEmulator(emulator);
112
- const isInfiniteWait = this.$utils.getMilliSecondsTimeout(timeout) === 0;
113
- let hasTimeLeft = (0, helpers_1.getCurrentEpochTime)() < endTimeEpoch;
114
- while (hasTimeLeft || isInfiniteWait) {
115
- const emulators = (yield this.getEmulatorImages()).devices;
116
- const newEmulator = _.find(emulators, (e) => e.imageIdentifier === emulator.imageIdentifier);
117
- if (newEmulator && this.$emulatorHelper.isEmulatorRunning(newEmulator)) {
118
- return {
119
- runningEmulator: newEmulator,
120
- errors: [],
121
- endTimeEpoch,
122
- };
123
- }
124
- yield (0, helpers_1.sleep)(10000); // the emulator definitely takes its time to wake up
125
- hasTimeLeft = (0, helpers_1.getCurrentEpochTime)() < endTimeEpoch;
126
- }
127
- if (!hasTimeLeft && !isInfiniteWait) {
64
+ async startEmulatorCore(options) {
65
+ const timeout = options.timeout || constants_1.AndroidVirtualDevice.TIMEOUT_SECONDS;
66
+ const endTimeEpoch = (0, helpers_1.getCurrentEpochTime)() + this.$utils.getMilliSecondsTimeout(timeout);
67
+ const availableEmulators = (await this.getEmulatorImages()).devices;
68
+ let emulator = this.$emulatorHelper.getEmulatorByStartEmulatorOptions(options, availableEmulators);
69
+ if (!emulator &&
70
+ !options.emulatorIdOrName &&
71
+ !options.imageIdentifier &&
72
+ !options.emulator) {
73
+ emulator = this.getBestFit(availableEmulators);
74
+ }
75
+ if (!emulator) {
76
+ return {
77
+ runningEmulator: null,
78
+ errors: [
79
+ `No emulator image available for device identifier '${options.emulatorIdOrName || options.imageIdentifier}'.`,
80
+ ],
81
+ endTimeEpoch,
82
+ };
83
+ }
84
+ if (emulator.errorHelp) {
85
+ return {
86
+ runningEmulator: null,
87
+ errors: [emulator.errorHelp],
88
+ endTimeEpoch,
89
+ };
90
+ }
91
+ this.spawnEmulator(emulator);
92
+ const isInfiniteWait = this.$utils.getMilliSecondsTimeout(timeout) === 0;
93
+ let hasTimeLeft = (0, helpers_1.getCurrentEpochTime)() < endTimeEpoch;
94
+ while (hasTimeLeft || isInfiniteWait) {
95
+ const emulators = (await this.getEmulatorImages()).devices;
96
+ const newEmulator = _.find(emulators, (e) => e.imageIdentifier === emulator.imageIdentifier);
97
+ if (newEmulator && this.$emulatorHelper.isEmulatorRunning(newEmulator)) {
128
98
  return {
129
- runningEmulator: null,
130
- errors: [constants_1.AndroidVirtualDevice.UNABLE_TO_START_EMULATOR_MESSAGE],
99
+ runningEmulator: newEmulator,
100
+ errors: [],
131
101
  endTimeEpoch,
132
102
  };
133
103
  }
134
- });
104
+ await (0, helpers_1.sleep)(10000);
105
+ hasTimeLeft = (0, helpers_1.getCurrentEpochTime)() < endTimeEpoch;
106
+ }
107
+ if (!hasTimeLeft && !isInfiniteWait) {
108
+ return {
109
+ runningEmulator: null,
110
+ errors: [constants_1.AndroidVirtualDevice.UNABLE_TO_START_EMULATOR_MESSAGE],
111
+ endTimeEpoch,
112
+ };
113
+ }
135
114
  }
136
115
  spawnEmulator(emulator) {
137
116
  let pathToEmulatorExecutable = null;
@@ -169,38 +148,33 @@ class AndroidEmulatorServices {
169
148
  const bestVersion = best && best.version && semver.coerce(best.version);
170
149
  return bestVersion && semver.gte(bestVersion, minVersion) ? best : null;
171
150
  }
172
- waitForEmulatorBootToComplete(emulator, endTimeEpoch, timeout) {
173
- return __awaiter(this, void 0, void 0, function* () {
174
- this.$logger.info("Waiting for emulator device initialization...", {
175
- [constants_2.LoggerConfigData.skipNewLine]: true,
176
- });
177
- const isInfiniteWait = this.$utils.getMilliSecondsTimeout(timeout || constants_1.AndroidVirtualDevice.TIMEOUT_SECONDS) === 0;
178
- while ((0, helpers_1.getCurrentEpochTime)() < endTimeEpoch || isInfiniteWait) {
179
- const isEmulatorBootCompleted = yield this.isEmulatorBootCompleted(emulator.identifier);
180
- if (isEmulatorBootCompleted) {
181
- this.$logger.info(os_1.EOL, { [constants_2.LoggerConfigData.skipNewLine]: true });
182
- return {
183
- runningEmulator: emulator,
184
- errors: [],
185
- };
186
- }
187
- this.$logger.info(".", { [constants_2.LoggerConfigData.skipNewLine]: true });
188
- yield (0, helpers_1.sleep)(10000);
189
- }
190
- return {
191
- runningEmulator: null,
192
- errors: [constants_1.AndroidVirtualDevice.UNABLE_TO_START_EMULATOR_MESSAGE],
193
- };
151
+ async waitForEmulatorBootToComplete(emulator, endTimeEpoch, timeout) {
152
+ this.$logger.info("Waiting for emulator device initialization...", {
153
+ [constants_2.LoggerConfigData.skipNewLine]: true,
194
154
  });
155
+ const isInfiniteWait = this.$utils.getMilliSecondsTimeout(timeout || constants_1.AndroidVirtualDevice.TIMEOUT_SECONDS) === 0;
156
+ while ((0, helpers_1.getCurrentEpochTime)() < endTimeEpoch || isInfiniteWait) {
157
+ const isEmulatorBootCompleted = await this.isEmulatorBootCompleted(emulator.identifier);
158
+ if (isEmulatorBootCompleted) {
159
+ this.$logger.info(os_1.EOL, { [constants_2.LoggerConfigData.skipNewLine]: true });
160
+ return {
161
+ runningEmulator: emulator,
162
+ errors: [],
163
+ };
164
+ }
165
+ this.$logger.info(".", { [constants_2.LoggerConfigData.skipNewLine]: true });
166
+ await (0, helpers_1.sleep)(10000);
167
+ }
168
+ return {
169
+ runningEmulator: null,
170
+ errors: [constants_1.AndroidVirtualDevice.UNABLE_TO_START_EMULATOR_MESSAGE],
171
+ };
195
172
  }
196
- isEmulatorBootCompleted(emulatorId) {
197
- return __awaiter(this, void 0, void 0, function* () {
198
- const output = yield this.$adb.getPropertyValue(emulatorId, "dev.bootcomplete");
199
- const matches = output.match("1");
200
- return matches && matches.length > 0;
201
- });
173
+ async isEmulatorBootCompleted(emulatorId) {
174
+ const output = await this.$adb.getPropertyValue(emulatorId, "dev.bootcomplete");
175
+ const matches = output.match("1");
176
+ return matches && matches.length > 0;
202
177
  }
203
178
  }
204
179
  exports.AndroidEmulatorServices = AndroidEmulatorServices;
205
180
  yok_1.injector.register("androidEmulatorServices", AndroidEmulatorServices);
206
- //# sourceMappingURL=android-emulator-services.js.map
@@ -12,8 +12,6 @@ class AndroidIniFileParser {
12
12
  if (!this.$fs.exists(iniFilePath)) {
13
13
  return null;
14
14
  }
15
- // avd files can have different encoding, defined on the first line.
16
- // find which one it is (if any) and use it to correctly read the file contents
17
15
  const encoding = this.getAvdEncoding(iniFilePath);
18
16
  const contents = this.$fs.readText(iniFilePath, encoding).split("\n");
19
17
  return _.reduce(contents, (result, line) => {
@@ -46,8 +44,6 @@ class AndroidIniFileParser {
46
44
  }, Object.create(null));
47
45
  }
48
46
  getAvdEncoding(avdName) {
49
- // avd files can have different encoding, defined on the first line.
50
- // find which one it is (if any) and use it to correctly read the file contents
51
47
  let encoding = "utf8";
52
48
  let contents = this.$fs.readText(avdName, "ascii");
53
49
  if (contents.length > 0) {
@@ -61,22 +57,18 @@ class AndroidIniFileParser {
61
57
  }
62
58
  return encoding;
63
59
  }
64
- // Android L is not written as a number in the .ini files, and we need to convert it
65
60
  readTargetNum(target) {
66
61
  const platform = target.replace("android-", "");
67
62
  let platformNumber = +platform;
68
63
  if (isNaN(platformNumber)) {
69
- // this may be a google image
70
64
  const googlePlatform = target.split(":")[2];
71
65
  if (googlePlatform) {
72
66
  platformNumber = +googlePlatform;
73
67
  }
74
68
  else if (platform === "L") {
75
- // Android SDK 20 preview
76
69
  platformNumber = 20;
77
70
  }
78
71
  else if (platform === "MNC") {
79
- // Android M preview
80
72
  platformNumber = 22;
81
73
  }
82
74
  }
@@ -85,4 +77,3 @@ class AndroidIniFileParser {
85
77
  }
86
78
  exports.AndroidIniFileParser = AndroidIniFileParser;
87
79
  yok_1.injector.register("androidIniFileParser", AndroidIniFileParser);
88
- //# sourceMappingURL=android-ini-file-parser.js.map
@@ -36,11 +36,7 @@ class AndroidLogFilter {
36
36
  return consoleLogMessage;
37
37
  }
38
38
  }
39
- //sample line is "I/Web Console( 4438): Received Event: deviceready at file:///storage/emulated/0/Icenium/com.telerik.TestApp/js/index.js:48"
39
+ exports.AndroidLogFilter = AndroidLogFilter;
40
40
  AndroidLogFilter.LINE_REGEX = /.\/(.+?)\s*\(\s*\d+?\): (.*)/;
41
- // sample line is "11-23 12:39:07.310 1584 1597 I art : Background sticky concurrent mark sweep GC freed 21966(1780KB) AllocSpace objects, 4(80KB) LOS objects, 77% free, 840KB/3MB, paused 4.018ms total 158.629ms"
42
- // or '12-28 10:45:08.020 3329 3329 W chromium: [WARNING:data_reduction_proxy_settings.cc(328)] SPDY proxy OFF at startup'
43
41
  AndroidLogFilter.API_LEVEL_23_LINE_REGEX = /.+?\s+?(?:[A-Z]\s+?)([A-Za-z \.]+?)\s*?\: (.*)/;
44
- exports.AndroidLogFilter = AndroidLogFilter;
45
42
  yok_1.injector.register("androidLogFilter", AndroidLogFilter);
46
- //# sourceMappingURL=android-log-filter.js.map
@@ -5,15 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
- return new (P || (P = Promise))(function (resolve, reject) {
11
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15
- });
16
- };
17
8
  Object.defineProperty(exports, "__esModule", { value: true });
18
9
  exports.AndroidVirtualDeviceService = void 0;
19
10
  const net = require("net");
@@ -39,44 +30,38 @@ class AndroidVirtualDeviceService {
39
30
  this.mapEmulatorIdToImageIdentifier = {};
40
31
  this.androidHome = process.env.ANDROID_HOME;
41
32
  }
42
- getEmulatorImages(adbDevicesOutput) {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- const availableEmulatorsOutput = yield this.getEmulatorImagesCore();
45
- const avds = availableEmulatorsOutput.devices;
46
- const runningEmulatorIds = yield this.getRunningEmulatorIds(adbDevicesOutput);
47
- const runningEmulators = yield (0, helpers_1.settlePromises)(_.map(runningEmulatorIds, (emulatorId) => this.getRunningEmulatorData(emulatorId, avds)));
48
- const devices = availableEmulatorsOutput.devices.map((emulator) => this.$emulatorHelper.getEmulatorByImageIdentifier(emulator.imageIdentifier, runningEmulators) || emulator);
49
- return {
50
- devices,
51
- errors: availableEmulatorsOutput.errors,
52
- };
53
- });
54
- }
55
- getRunningEmulatorIds(adbDevicesOutput) {
56
- return __awaiter(this, void 0, void 0, function* () {
57
- const emulatorIds = _.reduce(adbDevicesOutput, (result, device) => {
58
- const rx = device.match(constants_1.AndroidVirtualDevice.RUNNING_AVD_EMULATOR_REGEX);
59
- if (rx && rx[1]) {
60
- result.push(rx[1]);
61
- }
62
- return result;
63
- }, []);
64
- return emulatorIds;
65
- });
33
+ async getEmulatorImages(adbDevicesOutput) {
34
+ const availableEmulatorsOutput = await this.getEmulatorImagesCore();
35
+ const avds = availableEmulatorsOutput.devices;
36
+ const runningEmulatorIds = await this.getRunningEmulatorIds(adbDevicesOutput);
37
+ const runningEmulators = await (0, helpers_1.settlePromises)(_.map(runningEmulatorIds, (emulatorId) => this.getRunningEmulatorData(emulatorId, avds)));
38
+ const devices = availableEmulatorsOutput.devices.map((emulator) => this.$emulatorHelper.getEmulatorByImageIdentifier(emulator.imageIdentifier, runningEmulators) || emulator);
39
+ return {
40
+ devices,
41
+ errors: availableEmulatorsOutput.errors,
42
+ };
66
43
  }
67
- getRunningEmulatorName(emulatorId) {
68
- return __awaiter(this, void 0, void 0, function* () {
69
- const imageIdentifier = yield this.getRunningEmulatorImageIdentifier(emulatorId);
70
- const iniFilePath = path.join(this.pathToAvdHomeDir, `${imageIdentifier}.ini`);
71
- const iniFileInfo = this.$androidIniFileParser.parseIniFile(iniFilePath);
72
- let result = imageIdentifier;
73
- if (iniFileInfo && iniFileInfo.path) {
74
- const configIniFileInfo = this.$androidIniFileParser.parseIniFile(path.join(iniFileInfo.path, constants_1.AndroidVirtualDevice.CONFIG_INI_FILE_NAME));
75
- result =
76
- (configIniFileInfo && configIniFileInfo.displayName) || imageIdentifier;
44
+ async getRunningEmulatorIds(adbDevicesOutput) {
45
+ const emulatorIds = _.reduce(adbDevicesOutput, (result, device) => {
46
+ const rx = device.match(constants_1.AndroidVirtualDevice.RUNNING_AVD_EMULATOR_REGEX);
47
+ if (rx && rx[1]) {
48
+ result.push(rx[1]);
77
49
  }
78
50
  return result;
79
- });
51
+ }, []);
52
+ return emulatorIds;
53
+ }
54
+ async getRunningEmulatorName(emulatorId) {
55
+ const imageIdentifier = await this.getRunningEmulatorImageIdentifier(emulatorId);
56
+ const iniFilePath = path.join(this.pathToAvdHomeDir, `${imageIdentifier}.ini`);
57
+ const iniFileInfo = this.$androidIniFileParser.parseIniFile(iniFilePath);
58
+ let result = imageIdentifier;
59
+ if (iniFileInfo && iniFileInfo.path) {
60
+ const configIniFileInfo = this.$androidIniFileParser.parseIniFile(path.join(iniFileInfo.path, constants_1.AndroidVirtualDevice.CONFIG_INI_FILE_NAME));
61
+ result =
62
+ (configIniFileInfo && configIniFileInfo.displayName) || imageIdentifier;
63
+ }
64
+ return result;
80
65
  }
81
66
  startEmulatorArgs(imageIdentifier) {
82
67
  return ["-avd", imageIdentifier];
@@ -84,9 +69,6 @@ class AndroidVirtualDeviceService {
84
69
  get pathToEmulatorExecutable() {
85
70
  const emulatorExecutableName = "emulator";
86
71
  if (this.androidHome) {
87
- // Check https://developer.android.com/studio/releases/sdk-tools.html (25.3.0)
88
- // Since this version of SDK tools, the emulator is a separate package.
89
- // However the emulator executable still exists in the "tools" dir.
90
72
  const pathToEmulatorFromAndroidStudio = path.join(this.androidHome, emulatorExecutableName, emulatorExecutableName);
91
73
  const realFilePath = this.$hostInfo.isWindows
92
74
  ? `${pathToEmulatorFromAndroidStudio}.exe`
@@ -126,17 +108,6 @@ class AndroidVirtualDeviceService {
126
108
  client.on("data", (data) => {
127
109
  output += data.toString();
128
110
  const imageIdentifier = this.getImageIdentifierFromClientOutput(output);
129
- // old output should look like:
130
- // Android Console: type 'help' for a list of commands
131
- // OK
132
- // <Name of image>
133
- // OK
134
- // new output should look like:
135
- // Android Console: type 'help' for a list of commands
136
- // OK
137
- // a\u001b[K\u001b[Dav\u001b[K\u001b[D\u001b[Davd\u001b...
138
- // <Name of image>
139
- // OK
140
111
  if (imageIdentifier && !isResolved) {
141
112
  this.mapEmulatorIdToImageIdentifier[emulatorId] = imageIdentifier;
142
113
  this.clearNetConnection(client, timer);
@@ -154,64 +125,56 @@ class AndroidVirtualDeviceService {
154
125
  delete this.mapEmulatorIdToImageIdentifier[deviceInfo.identifier];
155
126
  }
156
127
  }
157
- getEmulatorImagesCore() {
158
- return __awaiter(this, void 0, void 0, function* () {
159
- let result = null;
160
- let devices = [];
161
- let errors = [];
162
- const canExecuteAvdManagerCommand = yield this.canExecuteAvdManagerCommand();
163
- if (!canExecuteAvdManagerCommand) {
164
- errors = [
165
- "Unable to execute avdmanager, ensure JAVA_HOME is set and points to correct directory",
166
- ];
167
- }
168
- if (canExecuteAvdManagerCommand) {
169
- const sanitizedPathToAvdManagerExecutable = this.$hostInfo.isWindows
170
- ? (0, helpers_1.quoteString)(this.pathToAvdManagerExecutable)
171
- : this.pathToAvdManagerExecutable;
172
- result = yield this.$childProcess.trySpawnFromCloseEvent(sanitizedPathToAvdManagerExecutable, ["list", "avds"], { shell: this.$hostInfo.isWindows });
173
- }
174
- else if (this.pathToAndroidExecutable &&
175
- this.$fs.exists(this.pathToAndroidExecutable)) {
176
- result = yield this.$childProcess.trySpawnFromCloseEvent(this.pathToAndroidExecutable, ["list", "avd"]);
177
- }
178
- if (result && result.stdout) {
179
- devices = this.parseListAvdsOutput(result.stdout);
180
- errors = result && result.stderr ? [result.stderr] : [];
128
+ async getEmulatorImagesCore() {
129
+ let result = null;
130
+ let devices = [];
131
+ let errors = [];
132
+ const canExecuteAvdManagerCommand = await this.canExecuteAvdManagerCommand();
133
+ if (!canExecuteAvdManagerCommand) {
134
+ errors = [
135
+ "Unable to execute avdmanager, ensure JAVA_HOME is set and points to correct directory",
136
+ ];
137
+ }
138
+ if (canExecuteAvdManagerCommand) {
139
+ const sanitizedPathToAvdManagerExecutable = this.$hostInfo.isWindows
140
+ ? (0, helpers_1.quoteString)(this.pathToAvdManagerExecutable)
141
+ : this.pathToAvdManagerExecutable;
142
+ result = await this.$childProcess.trySpawnFromCloseEvent(sanitizedPathToAvdManagerExecutable, ["list", "avds"], { shell: this.$hostInfo.isWindows });
143
+ }
144
+ else if (this.pathToAndroidExecutable &&
145
+ this.$fs.exists(this.pathToAndroidExecutable)) {
146
+ result = await this.$childProcess.trySpawnFromCloseEvent(this.pathToAndroidExecutable, ["list", "avd"]);
147
+ }
148
+ if (result && result.stdout) {
149
+ devices = this.parseListAvdsOutput(result.stdout);
150
+ errors = result && result.stderr ? [result.stderr] : [];
151
+ }
152
+ else {
153
+ devices = this.listAvdsFromDirectory();
154
+ }
155
+ return { devices, errors };
156
+ }
157
+ async canExecuteAvdManagerCommand() {
158
+ let canExecute = false;
159
+ if (this.pathToAvdManagerExecutable &&
160
+ this.$fs.exists(this.pathToAvdManagerExecutable)) {
161
+ if (process.env.JAVA_HOME) {
162
+ canExecute = !!(await this.$sysInfo.getJavaVersionFromJavaHome());
181
163
  }
182
164
  else {
183
- devices = this.listAvdsFromDirectory();
184
- }
185
- return { devices, errors };
186
- });
187
- }
188
- canExecuteAvdManagerCommand() {
189
- return __awaiter(this, void 0, void 0, function* () {
190
- let canExecute = false;
191
- if (this.pathToAvdManagerExecutable &&
192
- this.$fs.exists(this.pathToAvdManagerExecutable)) {
193
- if (process.env.JAVA_HOME) {
194
- // In case JAVA_HOME is set, but it points to incorrect directory (i.e. there's no java in $JAVA_HOME/bin/java), avdmanager will fail
195
- // no matter if you have correct java in PATH.
196
- canExecute = !!(yield this.$sysInfo.getJavaVersionFromJavaHome());
197
- }
198
- else {
199
- canExecute = !!(yield this.$sysInfo.getJavaVersionFromPath());
200
- }
165
+ canExecute = !!(await this.$sysInfo.getJavaVersionFromPath());
201
166
  }
202
- return canExecute;
203
- });
167
+ }
168
+ return canExecute;
204
169
  }
205
- getRunningEmulatorData(runningEmulatorId, availableEmulators) {
206
- return __awaiter(this, void 0, void 0, function* () {
207
- const imageIdentifier = yield this.getRunningEmulatorImageIdentifier(runningEmulatorId);
208
- const runningEmulator = this.$emulatorHelper.getEmulatorByImageIdentifier(imageIdentifier, availableEmulators);
209
- if (!runningEmulator) {
210
- return null;
211
- }
212
- this.$emulatorHelper.setRunningAndroidEmulatorProperties(runningEmulatorId, runningEmulator);
213
- return runningEmulator;
214
- });
170
+ async getRunningEmulatorData(runningEmulatorId, availableEmulators) {
171
+ const imageIdentifier = await this.getRunningEmulatorImageIdentifier(runningEmulatorId);
172
+ const runningEmulator = this.$emulatorHelper.getEmulatorByImageIdentifier(imageIdentifier, availableEmulators);
173
+ if (!runningEmulator) {
174
+ return null;
175
+ }
176
+ this.$emulatorHelper.setRunningAndroidEmulatorProperties(runningEmulatorId, runningEmulator);
177
+ return runningEmulator;
215
178
  }
216
179
  get pathToAvdManagerExecutable() {
217
180
  let avdManagerPath = null;
@@ -267,13 +230,6 @@ class AndroidVirtualDeviceService {
267
230
  const avdOutput = output.split(constants_1.AndroidVirtualDevice.AVAILABLE_AVDS_MESSAGE);
268
231
  const availableDevices = avdOutput && avdOutput[1] && avdOutput[1].trim();
269
232
  if (availableDevices) {
270
- // In some cases `avdmanager list avds` command prints:
271
- // `The following Android Virtual Devices could not be loaded:
272
- // Name: Pixel_2_XL_API_28
273
- // Path: /Users/<username>/.android/avd/Pixel_2_XL_API_28.avd
274
- // Error: Google pixel_2_xl no longer exists as a device`
275
- // These devices sometimes are valid so try to parse them.
276
- // Also these devices are printed at the end of the output and are separated with 2 new lines from the valid devices output.
277
233
  const parts = availableDevices.split(/(?:\r?\n){2}/);
278
234
  const items = [parts[0], parts[1]].filter((item) => !!item);
279
235
  for (const item of items) {
@@ -290,7 +246,6 @@ class AndroidVirtualDeviceService {
290
246
  }
291
247
  getAvdManagerDeviceInfo(output) {
292
248
  const avdManagerDeviceInfo = Object.create(null);
293
- // Split by `\n`, not EOL as the avdmanager and android executables print results with `\n` only even on Windows
294
249
  _.reduce(output.split("\n"), (result, row) => {
295
250
  const [key, value] = row.split(": ").map((part) => part.trim());
296
251
  switch (key) {
@@ -337,7 +292,6 @@ class AndroidVirtualDeviceService {
337
292
  };
338
293
  }
339
294
  getImageIdentifierFromClientOutput(output) {
340
- // The lines should be trimmed after the split because the output has \r\n and when using split(EOL) on mac each line ends with \r.
341
295
  const lines = _.map(output.split(os_1.EOL), (line) => line.trim());
342
296
  const firstIndexOfOk = _.indexOf(lines, "OK");
343
297
  if (firstIndexOfOk < 0) {
@@ -366,6 +320,7 @@ class AndroidVirtualDeviceService {
366
320
  }
367
321
  }
368
322
  }
323
+ exports.AndroidVirtualDeviceService = AndroidVirtualDeviceService;
369
324
  __decorate([
370
325
  (0, decorators_1.cache)()
371
326
  ], AndroidVirtualDeviceService.prototype, "pathToEmulatorExecutable", null);
@@ -384,6 +339,4 @@ __decorate([
384
339
  __decorate([
385
340
  (0, decorators_1.cache)()
386
341
  ], AndroidVirtualDeviceService.prototype, "getConfigurationError", null);
387
- exports.AndroidVirtualDeviceService = AndroidVirtualDeviceService;
388
342
  yok_1.injector.register("androidVirtualDeviceService", AndroidVirtualDeviceService);
389
- //# sourceMappingURL=android-virtual-device-service.js.map