@akylas/nativescript-cli 8.8.2 → 8.8.4

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 (275) hide show
  1. package/lib/android-tools-info.js +9 -20
  2. package/lib/base-package-manager.js +47 -64
  3. package/lib/bun-package-manager.js +65 -88
  4. package/lib/color.js +2 -2
  5. package/lib/commands/add-platform.js +14 -30
  6. package/lib/commands/apple-login.js +18 -29
  7. package/lib/commands/appstore-list.js +34 -45
  8. package/lib/commands/appstore-upload.js +55 -68
  9. package/lib/commands/build.js +57 -86
  10. package/lib/commands/clean.js +161 -176
  11. package/lib/commands/command-base.js +14 -27
  12. package/lib/commands/config.js +51 -70
  13. package/lib/commands/create-project.js +210 -229
  14. package/lib/commands/debug.js +66 -88
  15. package/lib/commands/deploy.js +28 -44
  16. package/lib/commands/embedding/embed.js +33 -52
  17. package/lib/commands/extensibility/install-extension.js +5 -16
  18. package/lib/commands/extensibility/list-extensions.js +13 -24
  19. package/lib/commands/extensibility/uninstall-extension.js +4 -15
  20. package/lib/commands/fonts.js +30 -41
  21. package/lib/commands/generate-assets.js +13 -28
  22. package/lib/commands/generate-help.js +2 -13
  23. package/lib/commands/generate.js +17 -26
  24. package/lib/commands/info.js +2 -13
  25. package/lib/commands/install.js +34 -49
  26. package/lib/commands/list-platforms.js +14 -25
  27. package/lib/commands/migrate.js +15 -26
  28. package/lib/commands/native-add.js +23 -46
  29. package/lib/commands/platform-clean.js +19 -32
  30. package/lib/commands/plugin/add-plugin.js +12 -25
  31. package/lib/commands/plugin/build-plugin.js +34 -39
  32. package/lib/commands/plugin/create-plugin.js +110 -133
  33. package/lib/commands/plugin/list-plugins.js +22 -33
  34. package/lib/commands/plugin/remove-plugin.js +20 -33
  35. package/lib/commands/plugin/update-plugin.js +20 -33
  36. package/lib/commands/post-install.js +20 -33
  37. package/lib/commands/prepare.js +19 -35
  38. package/lib/commands/preview.js +49 -62
  39. package/lib/commands/remove-platform.js +7 -18
  40. package/lib/commands/resources/resources-update.js +13 -26
  41. package/lib/commands/run.js +55 -76
  42. package/lib/commands/start.js +6 -19
  43. package/lib/commands/test-init.js +123 -134
  44. package/lib/commands/test.js +66 -89
  45. package/lib/commands/typings.js +126 -142
  46. package/lib/commands/update-platform.js +22 -35
  47. package/lib/commands/update.js +30 -43
  48. package/lib/common/child-process.js +53 -72
  49. package/lib/common/codeGeneration/code-entity.js +1 -1
  50. package/lib/common/codeGeneration/code-printer.js +1 -1
  51. package/lib/common/command-params.js +7 -18
  52. package/lib/common/commands/analytics.js +27 -40
  53. package/lib/common/commands/autocompletion.js +39 -56
  54. package/lib/common/commands/device/device-log-stream.js +12 -23
  55. package/lib/common/commands/device/get-file.js +22 -33
  56. package/lib/common/commands/device/list-applications.js +12 -23
  57. package/lib/common/commands/device/list-devices.js +72 -87
  58. package/lib/common/commands/device/list-files.js +23 -34
  59. package/lib/common/commands/device/put-file.js +22 -33
  60. package/lib/common/commands/device/run-application.js +12 -25
  61. package/lib/common/commands/device/stop-application.js +11 -22
  62. package/lib/common/commands/device/uninstall-application.js +6 -17
  63. package/lib/common/commands/generate-messages.js +17 -28
  64. package/lib/common/commands/help.js +20 -33
  65. package/lib/common/commands/package-manager-get.js +6 -17
  66. package/lib/common/commands/package-manager-set.js +9 -20
  67. package/lib/common/commands/post-install.js +2 -13
  68. package/lib/common/commands/preuninstall.js +23 -38
  69. package/lib/common/commands/proxy/proxy-base.js +8 -19
  70. package/lib/common/commands/proxy/proxy-clear.js +4 -15
  71. package/lib/common/commands/proxy/proxy-get.js +3 -14
  72. package/lib/common/commands/proxy/proxy-set.js +87 -100
  73. package/lib/common/constants.js +11 -11
  74. package/lib/common/decorators.js +10 -22
  75. package/lib/common/dispatchers.js +79 -96
  76. package/lib/common/errors.js +89 -104
  77. package/lib/common/file-system.js +106 -127
  78. package/lib/common/header.js +1 -2
  79. package/lib/common/helpers.js +149 -178
  80. package/lib/common/host-info.js +37 -50
  81. package/lib/common/http-client.js +93 -108
  82. package/lib/common/logger/appenders/cli-appender.js +1 -2
  83. package/lib/common/logger/appenders/emit-appender.js +1 -2
  84. package/lib/common/logger/layouts/cli-layout.js +1 -2
  85. package/lib/common/logger/logger.js +1 -1
  86. package/lib/common/mobile/android/android-application-manager.js +121 -142
  87. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -1
  88. package/lib/common/mobile/android/android-debug-bridge.js +87 -112
  89. package/lib/common/mobile/android/android-device-file-system.js +98 -131
  90. package/lib/common/mobile/android/android-device-hash-service.js +50 -75
  91. package/lib/common/mobile/android/android-device.js +74 -91
  92. package/lib/common/mobile/android/android-emulator-services.js +105 -130
  93. package/lib/common/mobile/android/android-log-filter.js +1 -1
  94. package/lib/common/mobile/android/android-virtual-device-service.js +76 -97
  95. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -29
  96. package/lib/common/mobile/android/genymotion/genymotion-service.js +91 -118
  97. package/lib/common/mobile/android/genymotion/virtualbox-service.js +64 -81
  98. package/lib/common/mobile/android/logcat-helper.js +108 -127
  99. package/lib/common/mobile/application-manager-base.js +84 -107
  100. package/lib/common/mobile/device-log-provider-base.js +7 -18
  101. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -108
  102. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -105
  103. package/lib/common/mobile/ios/device/ios-device-operations.js +105 -142
  104. package/lib/common/mobile/ios/device/ios-device.js +20 -36
  105. package/lib/common/mobile/ios/ios-device-base.js +58 -81
  106. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +63 -92
  107. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -1
  108. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +60 -89
  109. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +27 -43
  110. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -62
  111. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -35
  112. package/lib/common/mobile/mobile-core/android-device-discovery.js +43 -62
  113. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +21 -32
  114. package/lib/common/mobile/mobile-core/android-process-service.js +143 -182
  115. package/lib/common/mobile/mobile-core/device-discovery.js +2 -13
  116. package/lib/common/mobile/mobile-core/devices-service.js +385 -436
  117. package/lib/common/mobile/mobile-core/ios-device-discovery.js +24 -35
  118. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +47 -62
  119. package/lib/common/mobile/mobile-helper.js +15 -26
  120. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -52
  121. package/lib/common/opener.js +2 -2
  122. package/lib/common/plist-parser.js +3 -3
  123. package/lib/common/prompter.js +90 -105
  124. package/lib/common/queue.js +9 -20
  125. package/lib/common/services/auto-completion-service.js +39 -52
  126. package/lib/common/services/cancellation.js +17 -28
  127. package/lib/common/services/commands-service.js +146 -169
  128. package/lib/common/services/help-service.js +132 -157
  129. package/lib/common/services/hooks-service.js +93 -108
  130. package/lib/common/services/ios-notification-service.js +21 -34
  131. package/lib/common/services/json-file-settings-service.js +52 -71
  132. package/lib/common/services/lock-service.js +35 -52
  133. package/lib/common/services/message-contract-generator.js +35 -46
  134. package/lib/common/services/micro-templating-service.js +4 -15
  135. package/lib/common/services/net-service.js +90 -107
  136. package/lib/common/services/project-files-manager.js +10 -23
  137. package/lib/common/services/proxy-service.js +13 -24
  138. package/lib/common/services/qr.js +13 -24
  139. package/lib/common/services/settings-service.js +1 -1
  140. package/lib/common/services/xcode-select-service.js +20 -35
  141. package/lib/common/utils.js +2 -2
  142. package/lib/common/validators/project-name-validator.js +1 -1
  143. package/lib/common/validators/validation-result.js +1 -1
  144. package/lib/common/verify-node-version.js +2 -3
  145. package/lib/common/yok.js +23 -36
  146. package/lib/config.js +7 -58
  147. package/lib/constants.js +24 -24
  148. package/lib/controllers/build-controller.js +82 -99
  149. package/lib/controllers/debug-controller.js +107 -128
  150. package/lib/controllers/deploy-controller.js +17 -22
  151. package/lib/controllers/migrate-controller.js +722 -795
  152. package/lib/controllers/platform-controller.js +72 -87
  153. package/lib/controllers/prepare-controller.js +266 -299
  154. package/lib/controllers/run-controller.js +392 -406
  155. package/lib/controllers/update-controller-base.js +16 -29
  156. package/lib/controllers/update-controller.js +94 -119
  157. package/lib/data/prepare-data.js +4 -1
  158. package/lib/definitions/ios-debugger-port-service.d.ts +1 -1
  159. package/lib/definitions/livesync.d.ts +1 -1
  160. package/lib/detached-processes/cleanup-js-subprocess.js +3 -12
  161. package/lib/detached-processes/cleanup-process.js +16 -25
  162. package/lib/device-path-provider.js +23 -34
  163. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +149 -164
  164. package/lib/device-sockets/ios/notification.js +1 -1
  165. package/lib/device-sockets/ios/socket-request-executor.js +24 -39
  166. package/lib/helpers/android-bundle-validator-helper.js +1 -1
  167. package/lib/helpers/deploy-command-helper.js +45 -49
  168. package/lib/helpers/key-command-helper.js +4 -13
  169. package/lib/helpers/livesync-command-helper.js +137 -152
  170. package/lib/helpers/network-connectivity-validator.js +6 -17
  171. package/lib/helpers/options-track-helper.js +6 -17
  172. package/lib/helpers/platform-command-helper.js +99 -120
  173. package/lib/key-commands/index.js +161 -211
  174. package/lib/nativescript-cli.js +5 -14
  175. package/lib/node-package-manager.js +81 -104
  176. package/lib/options.js +3 -12
  177. package/lib/package-installation-manager.js +130 -165
  178. package/lib/package-manager.js +63 -86
  179. package/lib/platform-command-param.js +4 -15
  180. package/lib/pnpm-package-manager.js +59 -78
  181. package/lib/project-data.js +1 -1
  182. package/lib/providers/project-files-provider.js +1 -1
  183. package/lib/services/analytics/analytics-broker-process.js +13 -22
  184. package/lib/services/analytics/analytics-broker.js +17 -30
  185. package/lib/services/analytics/analytics-service.js +161 -198
  186. package/lib/services/analytics/google-analytics-provider.js +41 -56
  187. package/lib/services/analytics-settings-service.js +15 -32
  188. package/lib/services/android/android-bundle-tool-service.js +43 -60
  189. package/lib/services/android/gradle-build-args-service.js +9 -20
  190. package/lib/services/android/gradle-build-service.js +34 -47
  191. package/lib/services/android/gradle-command-service.js +22 -35
  192. package/lib/services/android-device-debug-service.js +90 -117
  193. package/lib/services/android-plugin-build-service.js +230 -256
  194. package/lib/services/android-project-service.js +163 -199
  195. package/lib/services/android-resources-migration-service.js +51 -64
  196. package/lib/services/apple-portal/apple-portal-application-service.js +46 -63
  197. package/lib/services/apple-portal/apple-portal-session-service.js +171 -188
  198. package/lib/services/assets-generation/assets-generation-service.js +98 -115
  199. package/lib/services/build-artifacts-service.js +9 -20
  200. package/lib/services/build-info-file-service.js +20 -35
  201. package/lib/services/cleanup-service.js +47 -76
  202. package/lib/services/cocoapods-service.js +115 -136
  203. package/lib/services/device/device-install-app-service.js +73 -90
  204. package/lib/services/doctor-service.js +99 -118
  205. package/lib/services/extensibility-service.js +81 -100
  206. package/lib/services/files-hash-service.js +26 -43
  207. package/lib/services/hmr-status-service.js +1 -1
  208. package/lib/services/initialize-service.js +37 -50
  209. package/lib/services/ios/export-options-plist-service.js +38 -51
  210. package/lib/services/ios/ios-signing-service.js +161 -180
  211. package/lib/services/ios/spm-service.js +40 -53
  212. package/lib/services/ios/xcodebuild-args-service.js +77 -94
  213. package/lib/services/ios/xcodebuild-command-service.js +14 -25
  214. package/lib/services/ios/xcodebuild-service.js +50 -69
  215. package/lib/services/ios-debugger-port-service.js +23 -36
  216. package/lib/services/ios-device-debug-service.js +75 -102
  217. package/lib/services/ios-entitlements-service.js +31 -42
  218. package/lib/services/ios-extensions-service.js +18 -29
  219. package/lib/services/ios-project-service.js +405 -460
  220. package/lib/services/ios-provision-service.js +108 -129
  221. package/lib/services/ios-watch-app-service.js +21 -32
  222. package/lib/services/ip-service.js +38 -53
  223. package/lib/services/itmstransporter-service.js +129 -152
  224. package/lib/services/livesync/android-device-livesync-service-base.js +31 -48
  225. package/lib/services/livesync/android-device-livesync-service.js +120 -149
  226. package/lib/services/livesync/android-device-livesync-sockets-service.js +121 -152
  227. package/lib/services/livesync/android-livesync-service.js +14 -35
  228. package/lib/services/livesync/android-livesync-tool.js +89 -112
  229. package/lib/services/livesync/device-livesync-service-base.js +15 -28
  230. package/lib/services/livesync/ios-device-livesync-service.js +114 -143
  231. package/lib/services/livesync/ios-livesync-service.js +42 -58
  232. package/lib/services/livesync/platform-livesync-service-base.js +94 -119
  233. package/lib/services/log-parser-service.js +1 -1
  234. package/lib/services/log-source-map-service.js +30 -41
  235. package/lib/services/marking-mode-service.js +15 -28
  236. package/lib/services/npm-config-service.js +1 -1
  237. package/lib/services/pacote-service.js +49 -64
  238. package/lib/services/performance-service.js +1 -1
  239. package/lib/services/platform/add-platform-service.js +50 -71
  240. package/lib/services/platform/platform-validation-service.js +22 -33
  241. package/lib/services/platform/prepare-native-platform-service.js +49 -62
  242. package/lib/services/platform-environment-requirements.js +26 -37
  243. package/lib/services/plugins-service.js +122 -147
  244. package/lib/services/project-backup-service.js +1 -1
  245. package/lib/services/project-changes-service.js +124 -141
  246. package/lib/services/project-cleanup-service.js +64 -77
  247. package/lib/services/project-config-service.js +71 -80
  248. package/lib/services/project-data-service.js +101 -118
  249. package/lib/services/project-name-service.js +28 -43
  250. package/lib/services/project-service.js +84 -103
  251. package/lib/services/project-templates-service.js +52 -67
  252. package/lib/services/start-service.js +41 -59
  253. package/lib/services/temp-service.js +8 -21
  254. package/lib/services/terminal-spinner-service.js +13 -24
  255. package/lib/services/test-execution-service.js +59 -72
  256. package/lib/services/test-initialization-service.js +2 -2
  257. package/lib/services/timeline-profiler-service.js +1 -1
  258. package/lib/services/versions-service.js +119 -138
  259. package/lib/services/webpack/webpack-compiler-service.js +211 -231
  260. package/lib/services/xcconfig-service.js +8 -19
  261. package/lib/sys-info.js +45 -62
  262. package/lib/tools/node-modules/node-modules-builder.js +16 -27
  263. package/lib/yarn-package-manager.js +59 -78
  264. package/lib/yarn2-package-manager.js +60 -79
  265. package/package.json +56 -54
  266. package/vendor/aab-tool/bundletool.jar +0 -0
  267. package/lib/common/resources/platform-tools/android/darwin/NOTICE.txt +0 -3407
  268. package/lib/common/resources/platform-tools/android/darwin/adb +0 -0
  269. package/lib/common/resources/platform-tools/android/linux/NOTICE.txt +0 -4451
  270. package/lib/common/resources/platform-tools/android/linux/adb +0 -0
  271. package/lib/common/resources/platform-tools/android/win32/AdbWinApi.dll +0 -0
  272. package/lib/common/resources/platform-tools/android/win32/AdbWinUsbApi.dll +0 -0
  273. package/lib/common/resources/platform-tools/android/win32/NOTICE.txt +0 -4451
  274. package/lib/common/resources/platform-tools/android/win32/adb.exe +0 -0
  275. package/lib/common/resources/platform-tools/android/win32/fastboot.exe +0 -0
@@ -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.AndroidBundleToolService = void 0;
13
4
  const path_1 = require("path");
@@ -21,60 +12,52 @@ class AndroidBundleToolService {
21
12
  this.$errors = $errors;
22
13
  this.aabToolPath = (0, path_1.resolve)((0, path_1.join)(__dirname, "../../../vendor/aab-tool/bundletool.jar"));
23
14
  }
24
- buildApks(options) {
25
- return __awaiter(this, void 0, void 0, function* () {
26
- if (!(0, helpers_1.hasValidAndroidSigning)(options.signingData)) {
27
- this.$errors.fail(`Unable to build "apks" without a full signing information.`);
28
- }
29
- const aabToolResult = yield this.execBundleTool([
30
- "build-apks",
31
- "--bundle",
32
- options.aabFilePath,
33
- "--output",
34
- options.apksOutputPath,
35
- "--ks",
36
- options.signingData.keyStorePath,
37
- "--ks-pass",
38
- `pass:${options.signingData.keyStorePassword}`,
39
- "--ks-key-alias",
40
- options.signingData.keyStoreAlias,
41
- "--key-pass",
42
- `pass:${options.signingData.keyStoreAliasPassword}`,
43
- ]);
44
- if (aabToolResult.exitCode !== 0 && aabToolResult.stderr) {
45
- this.$errors.fail(`Unable to build "apks" from the provided "aab". Error: ${aabToolResult.stderr}`);
46
- }
47
- });
15
+ async buildApks(options) {
16
+ if (!(0, helpers_1.hasValidAndroidSigning)(options.signingData)) {
17
+ this.$errors.fail(`Unable to build "apks" without a full signing information.`);
18
+ }
19
+ const aabToolResult = await this.execBundleTool([
20
+ "build-apks",
21
+ "--bundle",
22
+ options.aabFilePath,
23
+ "--output",
24
+ options.apksOutputPath,
25
+ "--ks",
26
+ options.signingData.keyStorePath,
27
+ "--ks-pass",
28
+ `pass:${options.signingData.keyStorePassword}`,
29
+ "--ks-key-alias",
30
+ options.signingData.keyStoreAlias,
31
+ "--key-pass",
32
+ `pass:${options.signingData.keyStoreAliasPassword}`,
33
+ ]);
34
+ if (aabToolResult.exitCode !== 0 && aabToolResult.stderr) {
35
+ this.$errors.fail(`Unable to build "apks" from the provided "aab". Error: ${aabToolResult.stderr}`);
36
+ }
48
37
  }
49
- installApks(options) {
50
- return __awaiter(this, void 0, void 0, function* () {
51
- const aabToolResult = yield this.execBundleTool([
52
- "install-apks",
53
- "--apks",
54
- options.apksFilePath,
55
- "--device-id",
56
- options.deviceId,
57
- ]);
58
- if (aabToolResult.exitCode !== 0 && aabToolResult.stderr) {
59
- this.$errors.fail(`Unable to install "apks" on device "${options.deviceId}". Error: ${aabToolResult.stderr}`);
60
- }
61
- });
38
+ async installApks(options) {
39
+ const aabToolResult = await this.execBundleTool([
40
+ "install-apks",
41
+ "--apks",
42
+ options.apksFilePath,
43
+ "--device-id",
44
+ options.deviceId,
45
+ ]);
46
+ if (aabToolResult.exitCode !== 0 && aabToolResult.stderr) {
47
+ this.$errors.fail(`Unable to install "apks" on device "${options.deviceId}". Error: ${aabToolResult.stderr}`);
48
+ }
62
49
  }
63
- execBundleTool(args) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- const javaPath = yield this.getJavaPath();
66
- const defaultArgs = ["-jar", this.aabToolPath];
67
- const result = yield this.$childProcess.trySpawnFromCloseEvent(javaPath, _.concat(defaultArgs, args));
68
- return result;
69
- });
50
+ async execBundleTool(args) {
51
+ const javaPath = await this.getJavaPath();
52
+ const defaultArgs = ["-jar", this.aabToolPath];
53
+ const result = await this.$childProcess.trySpawnFromCloseEvent(javaPath, _.concat(defaultArgs, args));
54
+ return result;
70
55
  }
71
- getJavaPath() {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- if (!this.javaPath) {
74
- this.javaPath = yield this.$sysInfo.getJavaPath();
75
- }
76
- return this.javaPath;
77
- });
56
+ async getJavaPath() {
57
+ if (!this.javaPath) {
58
+ this.javaPath = await this.$sysInfo.getJavaPath();
59
+ }
60
+ return this.javaPath;
78
61
  }
79
62
  }
80
63
  exports.AndroidBundleToolService = AndroidBundleToolService;
@@ -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.GradleBuildArgsService = void 0;
13
4
  const path = require("path");
@@ -22,18 +13,16 @@ class GradleBuildArgsService {
22
13
  this.$projectData = $projectData;
23
14
  this.$logger = $logger;
24
15
  }
25
- getBuildTaskArgs(buildData) {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- const args = this.getBaseTaskArgs(buildData);
28
- args.unshift(this.getBuildTaskName(buildData));
29
- if (yield this.$analyticsService.isEnabled(this.$staticConfig.TRACK_FEATURE_USAGE_SETTING_NAME)) {
30
- args.push("-PgatherAnalyticsData=true");
31
- }
32
- yield this.$hooksService.executeBeforeHooks("build-task-args", {
33
- hookArgs: { args },
34
- });
35
- return args;
16
+ async getBuildTaskArgs(buildData) {
17
+ const args = this.getBaseTaskArgs(buildData);
18
+ args.unshift(this.getBuildTaskName(buildData));
19
+ if (await this.$analyticsService.isEnabled(this.$staticConfig.TRACK_FEATURE_USAGE_SETTING_NAME)) {
20
+ args.push("-PgatherAnalyticsData=true");
21
+ }
22
+ await this.$hooksService.executeBeforeHooks("build-task-args", {
23
+ hookArgs: { args },
36
24
  });
25
+ return args;
37
26
  }
38
27
  getCleanTaskArgs(buildData) {
39
28
  const args = this.getBaseTaskArgs(buildData);
@@ -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.GradleBuildService = void 0;
13
4
  const helpers_1 = require("../../common/helpers");
@@ -22,46 +13,42 @@ class GradleBuildService extends events_1.EventEmitter {
22
13
  this.$gradleCommandService = $gradleCommandService;
23
14
  this.$devicesService = $devicesService;
24
15
  }
25
- buildProject(projectRoot, buildData) {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- const buildTaskArgs = yield this.$gradleBuildArgsService.getBuildTaskArgs(buildData);
28
- if (buildData.buildFilterDevicesArch) {
29
- let devices = this.$devicesService.getDevicesForPlatform(buildData.platform);
30
- if (buildData.emulator) {
31
- devices = devices.filter((d) => d.isEmulator);
32
- }
33
- const abis = devices
34
- .map((d) => d.deviceInfo.abis.filter((a) => !!a && a.length)[0])
35
- .filter((a) => !!a);
36
- if (abis.length > 0 &&
37
- buildTaskArgs.findIndex((b) => b.startsWith("-PabiFilters")) === -1) {
38
- buildTaskArgs.push(`-PabiFilters=${abis.join(",")}`);
39
- }
16
+ async buildProject(projectRoot, buildData) {
17
+ const buildTaskArgs = await this.$gradleBuildArgsService.getBuildTaskArgs(buildData);
18
+ if (buildData.buildFilterDevicesArch) {
19
+ let devices = this.$devicesService.getDevicesForPlatform(buildData.platform);
20
+ if (buildData.emulator) {
21
+ devices = devices.filter((d) => d.isEmulator);
40
22
  }
41
- const spawnOptions = {
42
- emitOptions: { eventName: constants.BUILD_OUTPUT_EVENT_NAME },
43
- throwError: true,
44
- };
45
- const gradleCommandOptions = {
46
- cwd: projectRoot,
47
- message: "Gradle build...",
48
- stdio: buildData.buildOutputStdio,
49
- gradlePath: buildData.gradlePath,
50
- spawnOptions,
51
- };
52
- yield (0, helpers_1.attachAwaitDetach)(constants.BUILD_OUTPUT_EVENT_NAME, this.$childProcess, (data) => this.emit(constants.BUILD_OUTPUT_EVENT_NAME, data), this.$gradleCommandService.executeCommand(buildTaskArgs, gradleCommandOptions));
53
- });
23
+ const abis = devices
24
+ .map((d) => d.deviceInfo.abis.filter((a) => !!a && a.length)[0])
25
+ .filter((a) => !!a);
26
+ if (abis.length > 0 &&
27
+ buildTaskArgs.findIndex((b) => b.startsWith("-PabiFilters")) === -1) {
28
+ buildTaskArgs.push(`-PabiFilters=${abis.join(",")}`);
29
+ }
30
+ }
31
+ const spawnOptions = {
32
+ emitOptions: { eventName: constants.BUILD_OUTPUT_EVENT_NAME },
33
+ throwError: true,
34
+ };
35
+ const gradleCommandOptions = {
36
+ cwd: projectRoot,
37
+ message: "Gradle build...",
38
+ stdio: buildData.buildOutputStdio,
39
+ gradlePath: buildData.gradlePath,
40
+ spawnOptions,
41
+ };
42
+ await (0, helpers_1.attachAwaitDetach)(constants.BUILD_OUTPUT_EVENT_NAME, this.$childProcess, (data) => this.emit(constants.BUILD_OUTPUT_EVENT_NAME, data), this.$gradleCommandService.executeCommand(buildTaskArgs, gradleCommandOptions));
54
43
  }
55
- cleanProject(projectRoot, buildData) {
56
- return __awaiter(this, void 0, void 0, function* () {
57
- const cleanTaskArgs = this.$gradleBuildArgsService.getCleanTaskArgs(buildData);
58
- const gradleCommandOptions = {
59
- cwd: projectRoot,
60
- message: "Gradle clean...",
61
- gradlePath: buildData.gradlePath,
62
- };
63
- yield this.$gradleCommandService.executeCommand(cleanTaskArgs, gradleCommandOptions);
64
- });
44
+ async cleanProject(projectRoot, buildData) {
45
+ const cleanTaskArgs = this.$gradleBuildArgsService.getCleanTaskArgs(buildData);
46
+ const gradleCommandOptions = {
47
+ cwd: projectRoot,
48
+ message: "Gradle clean...",
49
+ gradlePath: buildData.gradlePath,
50
+ };
51
+ await this.$gradleCommandService.executeCommand(cleanTaskArgs, gradleCommandOptions);
65
52
  }
66
53
  }
67
54
  exports.GradleBuildService = GradleBuildService;
@@ -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.GradleCommandService = void 0;
13
4
  const yok_1 = require("../../common/yok");
@@ -19,34 +10,30 @@ class GradleCommandService {
19
10
  this.$hostInfo = $hostInfo;
20
11
  this.$logger = $logger;
21
12
  }
22
- executeCommand(gradleArgs, options) {
13
+ async executeCommand(gradleArgs, options) {
23
14
  var _a;
24
- return __awaiter(this, void 0, void 0, function* () {
25
- const { message, cwd, stdio, spawnOptions } = options;
26
- this.$logger.info(message);
27
- const childProcessOptions = {
28
- cwd,
29
- stdio: stdio || "inherit",
30
- shell: this.$hostInfo.isWindows,
31
- };
32
- const gradleExecutable = (_a = options.gradlePath) !== null && _a !== void 0 ? _a : (this.$hostInfo.isWindows ? "gradlew.bat" : "./gradlew");
33
- const sanitizedGradleArgs = this.$hostInfo.isWindows
34
- ? gradleArgs.map((arg) => (0, helpers_1.quoteString)(arg))
35
- : gradleArgs;
36
- const result = yield this.executeCommandSafe(gradleExecutable, sanitizedGradleArgs, childProcessOptions, spawnOptions);
37
- return result;
38
- });
15
+ const { message, cwd, stdio, spawnOptions } = options;
16
+ this.$logger.info(message);
17
+ const childProcessOptions = {
18
+ cwd,
19
+ stdio: stdio || "inherit",
20
+ shell: this.$hostInfo.isWindows,
21
+ };
22
+ const gradleExecutable = (_a = options.gradlePath) !== null && _a !== void 0 ? _a : (this.$hostInfo.isWindows ? "gradlew.bat" : "./gradlew");
23
+ const sanitizedGradleArgs = this.$hostInfo.isWindows
24
+ ? gradleArgs.map((arg) => (0, helpers_1.quoteString)(arg))
25
+ : gradleArgs;
26
+ const result = await this.executeCommandSafe(gradleExecutable, sanitizedGradleArgs, childProcessOptions, spawnOptions);
27
+ return result;
39
28
  }
40
- executeCommandSafe(gradleExecutable, gradleArgs, childProcessOptions, spawnOptions) {
41
- return __awaiter(this, void 0, void 0, function* () {
42
- try {
43
- const result = yield this.$childProcess.spawnFromEvent(gradleExecutable, gradleArgs, "close", childProcessOptions, spawnOptions);
44
- return result;
45
- }
46
- catch (err) {
47
- this.$errors.fail(err.message);
48
- }
49
- });
29
+ async executeCommandSafe(gradleExecutable, gradleArgs, childProcessOptions, spawnOptions) {
30
+ try {
31
+ const result = await this.$childProcess.spawnFromEvent(gradleExecutable, gradleArgs, "close", childProcessOptions, spawnOptions);
32
+ return result;
33
+ }
34
+ catch (err) {
35
+ this.$errors.fail(err.message);
36
+ }
50
37
  }
51
38
  }
52
39
  exports.GradleCommandService = GradleCommandService;
@@ -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.AndroidDeviceDebugService = void 0;
19
10
  const helpers_1 = require("../common/helpers");
@@ -39,135 +30,117 @@ class AndroidDeviceDebugService extends debug_service_base_1.DebugServiceBase {
39
30
  this.$deviceLogProvider = $deviceLogProvider;
40
31
  this.deviceIdentifier = device.deviceInfo.identifier;
41
32
  }
42
- debug(debugData, debugOptions) {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- this._packageName = debugData.applicationIdentifier;
45
- const result = yield this.debugCore(debugData.applicationIdentifier, debugOptions);
46
- if (debugOptions.start && !debugOptions.justlaunch) {
47
- const pid = yield this.$androidProcessService.getAppProcessId(this.deviceIdentifier, debugData.applicationIdentifier);
48
- if (pid) {
49
- this.$deviceLogProvider.setApplicationPidForDevice(this.deviceIdentifier, pid);
50
- this.$deviceLogProvider.setProjectDirForDevice(this.device.deviceInfo.identifier, debugData.projectDir);
51
- const device = yield this.$devicesService.getDevice(this.deviceIdentifier);
52
- yield device.openDeviceLogStream();
53
- }
33
+ async debug(debugData, debugOptions) {
34
+ this._packageName = debugData.applicationIdentifier;
35
+ const result = await this.debugCore(debugData.applicationIdentifier, debugOptions);
36
+ if (debugOptions.start && !debugOptions.justlaunch) {
37
+ const pid = await this.$androidProcessService.getAppProcessId(this.deviceIdentifier, debugData.applicationIdentifier);
38
+ if (pid) {
39
+ this.$deviceLogProvider.setApplicationPidForDevice(this.deviceIdentifier, pid);
40
+ this.$deviceLogProvider.setProjectDirForDevice(this.device.deviceInfo.identifier, debugData.projectDir);
41
+ const device = await this.$devicesService.getDevice(this.deviceIdentifier);
42
+ await device.openDeviceLogStream();
54
43
  }
55
- return result;
56
- });
44
+ }
45
+ return result;
57
46
  }
58
47
  debugStop() {
59
48
  return this.removePortForwarding();
60
49
  }
61
- removePortForwarding(packageName) {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- const port = yield this.getForwardedDebugPort(this.device.deviceInfo.identifier, packageName || this._packageName);
64
- return this.device.adb.executeCommand([
65
- "forward",
66
- "--remove",
67
- `tcp:${port}`,
68
- ]);
69
- });
50
+ async removePortForwarding(packageName) {
51
+ const port = await this.getForwardedDebugPort(this.device.deviceInfo.identifier, packageName || this._packageName);
52
+ return this.device.adb.executeCommand([
53
+ "forward",
54
+ "--remove",
55
+ `tcp:${port}`,
56
+ ]);
70
57
  }
71
- getForwardedDebugPort(deviceId, packageName) {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- let port = -1;
74
- const forwardsResult = yield this.device.adb.executeCommand([
75
- "forward",
76
- "--list",
77
- ]);
78
- const unixSocketName = `${packageName}-inspectorServer`;
79
- const regexp = new RegExp(`(?:${deviceId} tcp:)([\\d]+)(?= localabstract:${unixSocketName})`, "g");
80
- const match = regexp.exec(forwardsResult);
81
- if (match) {
82
- port = parseInt(match[1]);
83
- }
84
- else {
85
- port = yield this.$net.getAvailablePortInRange(40000);
86
- yield this.unixSocketForward(port, `${unixSocketName}`);
87
- }
88
- yield this.$cleanupService.addCleanupCommand({
89
- command: yield this.$staticConfig.getAdbFilePath(),
90
- args: ["-s", deviceId, "forward", "--remove", `tcp:${port}`],
91
- });
92
- return port;
58
+ async getForwardedDebugPort(deviceId, packageName) {
59
+ let port = -1;
60
+ const forwardsResult = await this.device.adb.executeCommand([
61
+ "forward",
62
+ "--list",
63
+ ]);
64
+ const unixSocketName = `${packageName}-inspectorServer`;
65
+ const regexp = new RegExp(`(?:${deviceId} tcp:)([\\d]+)(?= localabstract:${unixSocketName})`, "g");
66
+ const match = regexp.exec(forwardsResult);
67
+ if (match) {
68
+ port = parseInt(match[1]);
69
+ }
70
+ else {
71
+ port = await this.$net.getAvailablePortInRange(40000);
72
+ await this.unixSocketForward(port, `${unixSocketName}`);
73
+ }
74
+ await this.$cleanupService.addCleanupCommand({
75
+ command: await this.$staticConfig.getAdbFilePath(),
76
+ args: ["-s", deviceId, "forward", "--remove", `tcp:${port}`],
93
77
  });
78
+ return port;
94
79
  }
95
- unixSocketForward(local, remote) {
96
- return __awaiter(this, void 0, void 0, function* () {
97
- yield this.device.adb.executeCommand([
98
- "forward",
99
- `tcp:${local}`,
100
- `localabstract:${remote}`,
101
- ]);
102
- });
80
+ async unixSocketForward(local, remote) {
81
+ await this.device.adb.executeCommand([
82
+ "forward",
83
+ `tcp:${local}`,
84
+ `localabstract:${remote}`,
85
+ ]);
103
86
  }
104
- debugCore(appId, debugOptions) {
105
- return __awaiter(this, void 0, void 0, function* () {
106
- const result = { debugUrl: null };
107
- if (debugOptions.stop) {
108
- yield this.removePortForwarding();
109
- return result;
110
- }
111
- yield this.validateRunningApp(this.deviceIdentifier, appId);
112
- if (debugOptions.debugBrk) {
113
- yield this.waitForDebugServer(appId);
114
- }
115
- const debugPort = yield this.getForwardedDebugPort(this.deviceIdentifier, appId);
116
- yield this.printDebugPort(this.deviceIdentifier, debugPort);
117
- result.debugUrl = this.getChromeDebugUrl(debugOptions, debugPort);
87
+ async debugCore(appId, debugOptions) {
88
+ const result = { debugUrl: null };
89
+ if (debugOptions.stop) {
90
+ await this.removePortForwarding();
118
91
  return result;
119
- });
92
+ }
93
+ await this.validateRunningApp(this.deviceIdentifier, appId);
94
+ if (debugOptions.debugBrk) {
95
+ await this.waitForDebugServer(appId);
96
+ }
97
+ const debugPort = await this.getForwardedDebugPort(this.deviceIdentifier, appId);
98
+ await this.printDebugPort(this.deviceIdentifier, debugPort);
99
+ result.debugUrl = this.getChromeDebugUrl(debugOptions, debugPort);
100
+ return result;
120
101
  }
121
- printDebugPort(deviceId, port) {
122
- return __awaiter(this, void 0, void 0, function* () {
123
- this.$logger.info("device: " + deviceId + " debug port: " + port + "\n");
124
- });
102
+ async printDebugPort(deviceId, port) {
103
+ this.$logger.info("device: " + deviceId + " debug port: " + port + "\n");
125
104
  }
126
- validateRunningApp(deviceId, packageName) {
127
- return __awaiter(this, void 0, void 0, function* () {
128
- if (!(yield this.isAppRunning(packageName, deviceId))) {
129
- this.$errors.fail(`The application ${packageName} does not appear to be running on ${deviceId} or is not built with debugging enabled. Try starting the application manually.`);
130
- }
131
- });
105
+ async validateRunningApp(deviceId, packageName) {
106
+ if (!(await this.isAppRunning(packageName, deviceId))) {
107
+ this.$errors.fail(`The application ${packageName} does not appear to be running on ${deviceId} or is not built with debugging enabled. Try starting the application manually.`);
108
+ }
132
109
  }
133
- waitForDebugServer(appId) {
134
- return __awaiter(this, void 0, void 0, function* () {
135
- const debuggerStartedFilePath = `${constants_1.LiveSyncPaths.ANDROID_TMP_DIR_NAME}/${appId}-debugger-started`;
136
- const waitText = `0 ${debuggerStartedFilePath}`;
137
- let maxWait = 12;
138
- let debuggerStarted = false;
139
- while (maxWait > 0 && !debuggerStarted) {
140
- const forwardsResult = yield this.device.adb.executeShellCommand([
141
- "ls",
142
- "-s",
143
- debuggerStartedFilePath,
144
- ]);
145
- maxWait--;
146
- debuggerStarted = forwardsResult.indexOf(waitText) === -1;
147
- if (!debuggerStarted) {
148
- yield (0, helpers_1.sleep)(500);
149
- }
150
- }
151
- if (debuggerStarted) {
152
- this.$logger.info("# NativeScript Debugger started #");
153
- }
154
- else {
155
- this.$logger.warn("# NativeScript Debugger did not start in time #");
110
+ async waitForDebugServer(appId) {
111
+ const debuggerStartedFilePath = `${constants_1.LiveSyncPaths.ANDROID_TMP_DIR_NAME}/${appId}-debugger-started`;
112
+ const waitText = `0 ${debuggerStartedFilePath}`;
113
+ let maxWait = 12;
114
+ let debuggerStarted = false;
115
+ while (maxWait > 0 && !debuggerStarted) {
116
+ const forwardsResult = await this.device.adb.executeShellCommand([
117
+ "ls",
118
+ "-s",
119
+ debuggerStartedFilePath,
120
+ ]);
121
+ maxWait--;
122
+ debuggerStarted = forwardsResult.indexOf(waitText) === -1;
123
+ if (!debuggerStarted) {
124
+ await (0, helpers_1.sleep)(500);
156
125
  }
157
- });
126
+ }
127
+ if (debuggerStarted) {
128
+ this.$logger.info("# NativeScript Debugger started #");
129
+ }
130
+ else {
131
+ this.$logger.warn("# NativeScript Debugger did not start in time #");
132
+ }
158
133
  }
159
- isAppRunning(appIdentifier, deviceIdentifier) {
160
- return __awaiter(this, void 0, void 0, function* () {
161
- const debuggableApps = yield this.$androidProcessService.getDebuggableApps(deviceIdentifier);
162
- return !!_.find(debuggableApps, (a) => a.appIdentifier === appIdentifier);
163
- });
134
+ async isAppRunning(appIdentifier, deviceIdentifier) {
135
+ const debuggableApps = await this.$androidProcessService.getDebuggableApps(deviceIdentifier);
136
+ return !!_.find(debuggableApps, (a) => a.appIdentifier === appIdentifier);
164
137
  }
165
138
  }
139
+ exports.AndroidDeviceDebugService = AndroidDeviceDebugService;
166
140
  __decorate([
167
141
  (0, decorators_1.performanceLog)()
168
142
  ], AndroidDeviceDebugService.prototype, "debug", null);
169
143
  __decorate([
170
144
  (0, decorators_1.performanceLog)()
171
145
  ], AndroidDeviceDebugService.prototype, "debugCore", null);
172
- exports.AndroidDeviceDebugService = AndroidDeviceDebugService;
173
146
  yok_1.injector.register("androidDeviceDebugService", AndroidDeviceDebugService, false);