@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
@@ -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.AndroidLiveSyncService = void 0;
19
10
  const android_device_livesync_service_1 = require("./android-device-livesync-service");
@@ -36,35 +27,24 @@ class AndroidLiveSyncService extends platform_livesync_service_base_1.PlatformLi
36
27
  }
37
28
  return this.$injector.resolve(android_device_livesync_service_1.AndroidDeviceLiveSyncService, { device, data });
38
29
  }
39
- liveSyncWatchAction(device, liveSyncInfo) {
40
- const _super = Object.create(null, {
41
- liveSyncWatchAction: { get: () => super.liveSyncWatchAction }
42
- });
43
- return __awaiter(this, void 0, void 0, function* () {
44
- const liveSyncResult = yield _super.liveSyncWatchAction.call(this, device, liveSyncInfo);
45
- const result = yield this.finalizeSync(device, liveSyncInfo.projectData, liveSyncResult);
46
- return result;
47
- });
30
+ async liveSyncWatchAction(device, liveSyncInfo) {
31
+ const liveSyncResult = await super.liveSyncWatchAction(device, liveSyncInfo);
32
+ const result = await this.finalizeSync(device, liveSyncInfo.projectData, liveSyncResult);
33
+ return result;
48
34
  }
49
- fullSync(syncInfo) {
50
- const _super = Object.create(null, {
51
- fullSync: { get: () => super.fullSync }
52
- });
53
- return __awaiter(this, void 0, void 0, function* () {
54
- const liveSyncResult = yield _super.fullSync.call(this, syncInfo);
55
- const result = yield this.finalizeSync(syncInfo.device, syncInfo.projectData, liveSyncResult);
56
- return result;
57
- });
35
+ async fullSync(syncInfo) {
36
+ const liveSyncResult = await super.fullSync(syncInfo);
37
+ const result = await this.finalizeSync(syncInfo.device, syncInfo.projectData, liveSyncResult);
38
+ return result;
58
39
  }
59
- finalizeSync(device, projectData, liveSyncResult) {
60
- return __awaiter(this, void 0, void 0, function* () {
61
- const liveSyncService = (this.getDeviceLiveSyncService(device, projectData));
62
- const finalizeResult = yield liveSyncService.finalizeSync(liveSyncResult, projectData);
63
- const result = _.extend(liveSyncResult, finalizeResult);
64
- return result;
65
- });
40
+ async finalizeSync(device, projectData, liveSyncResult) {
41
+ const liveSyncService = (this.getDeviceLiveSyncService(device, projectData));
42
+ const finalizeResult = await liveSyncService.finalizeSync(liveSyncResult, projectData);
43
+ const result = _.extend(liveSyncResult, finalizeResult);
44
+ return result;
66
45
  }
67
46
  }
47
+ exports.AndroidLiveSyncService = AndroidLiveSyncService;
68
48
  AndroidLiveSyncService.MIN_SOCKETS_LIVESYNC_RUNTIME_VERSION = "4.2.0-2018-07-20-02";
69
49
  __decorate([
70
50
  (0, decorators_1.performanceLog)()
@@ -72,5 +52,4 @@ __decorate([
72
52
  __decorate([
73
53
  (0, decorators_1.performanceLog)()
74
54
  ], AndroidLiveSyncService.prototype, "fullSync", null);
75
- exports.AndroidLiveSyncService = AndroidLiveSyncService;
76
55
  yok_1.injector.register("androidLiveSyncService", AndroidLiveSyncService);
@@ -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.AndroidLivesyncTool = void 0;
13
4
  const path = require("path");
@@ -36,79 +27,69 @@ class AndroidLivesyncTool {
36
27
  this.socketError = null;
37
28
  this.socketConnection = null;
38
29
  }
39
- connect(configuration) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- if (!configuration.appIdentifier) {
42
- this.$errors.fail(AndroidLivesyncTool.APP_IDENTIFIER_MISSING_ERROR);
43
- }
44
- if (!configuration.appPlatformsPath) {
45
- this.$errors.fail(AndroidLivesyncTool.APP_PLATFORMS_PATH_MISSING_ERROR);
46
- }
47
- if (this.socketConnection) {
48
- this.$errors.fail(AndroidLivesyncTool.SOCKET_CONNECTION_ALREADY_EXISTS_ERROR);
49
- }
50
- if (!configuration.localHostAddress) {
51
- configuration.localHostAddress =
52
- process.env.NATIVESCRIPT_LIVESYNC_ADDRESS || DEFAULT_LOCAL_HOST_ADDRESS;
53
- }
54
- const connectTimeout = configuration.connectTimeout || TRY_CONNECT_TIMEOUT;
55
- this.configuration = configuration;
56
- this.socketError = null;
57
- const port = yield this.$androidProcessService.forwardFreeTcpToAbstractPort({
58
- deviceIdentifier: configuration.deviceIdentifier,
59
- appIdentifier: configuration.appIdentifier,
60
- abstractPort: `localabstract:${configuration.appIdentifier}-livesync`,
61
- });
62
- const connectionResult = yield this.connectEventuallyUntilTimeout(this.createSocket.bind(this, port), connectTimeout, configuration);
63
- this.handleConnection(connectionResult);
30
+ async connect(configuration) {
31
+ if (!configuration.appIdentifier) {
32
+ this.$errors.fail(AndroidLivesyncTool.APP_IDENTIFIER_MISSING_ERROR);
33
+ }
34
+ if (!configuration.appPlatformsPath) {
35
+ this.$errors.fail(AndroidLivesyncTool.APP_PLATFORMS_PATH_MISSING_ERROR);
36
+ }
37
+ if (this.socketConnection) {
38
+ this.$errors.fail(AndroidLivesyncTool.SOCKET_CONNECTION_ALREADY_EXISTS_ERROR);
39
+ }
40
+ if (!configuration.localHostAddress) {
41
+ configuration.localHostAddress =
42
+ process.env.NATIVESCRIPT_LIVESYNC_ADDRESS || DEFAULT_LOCAL_HOST_ADDRESS;
43
+ }
44
+ const connectTimeout = configuration.connectTimeout || TRY_CONNECT_TIMEOUT;
45
+ this.configuration = configuration;
46
+ this.socketError = null;
47
+ const port = await this.$androidProcessService.forwardFreeTcpToAbstractPort({
48
+ deviceIdentifier: configuration.deviceIdentifier,
49
+ appIdentifier: configuration.appIdentifier,
50
+ abstractPort: `localabstract:${configuration.appIdentifier}-livesync`,
64
51
  });
52
+ const connectionResult = await this.connectEventuallyUntilTimeout(this.createSocket.bind(this, port), connectTimeout, configuration);
53
+ this.handleConnection(connectionResult);
65
54
  }
66
- sendFile(filePath) {
67
- return __awaiter(this, void 0, void 0, function* () {
68
- yield this.sendFileHeader(filePath);
69
- yield this.sendFileContent(filePath);
70
- });
55
+ async sendFile(filePath) {
56
+ await this.sendFileHeader(filePath);
57
+ await this.sendFileContent(filePath);
71
58
  }
72
- sendFiles(filePaths) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- for (const filePath of filePaths) {
75
- if (this.$fs.getLsStats(filePath).isFile()) {
76
- if (!this.$fs.exists(filePath)) {
77
- this.$errors.fail(`${filePath} doesn't exist.`);
78
- }
79
- yield this.sendFile(filePath);
59
+ async sendFiles(filePaths) {
60
+ for (const filePath of filePaths) {
61
+ if (this.$fs.getLsStats(filePath).isFile()) {
62
+ if (!this.$fs.exists(filePath)) {
63
+ this.$errors.fail(`${filePath} doesn't exist.`);
80
64
  }
65
+ await this.sendFile(filePath);
81
66
  }
82
- });
67
+ }
83
68
  }
84
69
  sendDirectory(directoryPath) {
85
70
  const list = this.$fs.enumerateFilesInDirectorySync(directoryPath);
86
71
  return this.sendFiles(list);
87
72
  }
88
- removeFile(filePath) {
89
- return __awaiter(this, void 0, void 0, function* () {
90
- this.verifyActiveConnection();
91
- const filePathData = this.getFilePathData(filePath);
92
- const headerBuffer = Buffer.alloc(PROTOCOL_OPERATION_LENGTH_SIZE +
93
- SIZE_BYTE_LENGTH +
94
- filePathData.filePathLengthSize +
95
- filePathData.filePathLengthBytes);
96
- let offset = 0;
97
- offset += headerBuffer.write(AndroidLivesyncTool.DELETE_FILE_OPERATION.toString(), offset, PROTOCOL_OPERATION_LENGTH_SIZE);
98
- offset = headerBuffer.writeInt8(filePathData.filePathLengthSize, offset);
99
- offset += headerBuffer.write(filePathData.filePathLengthString, offset, filePathData.filePathLengthSize);
100
- headerBuffer.write(filePathData.relativeFilePath, offset, filePathData.filePathLengthBytes);
101
- const hash = crypto.createHash("md5").update(headerBuffer).digest();
102
- yield this.writeToSocket(headerBuffer);
103
- yield this.writeToSocket(hash);
104
- });
73
+ async removeFile(filePath) {
74
+ this.verifyActiveConnection();
75
+ const filePathData = this.getFilePathData(filePath);
76
+ const headerBuffer = Buffer.alloc(PROTOCOL_OPERATION_LENGTH_SIZE +
77
+ SIZE_BYTE_LENGTH +
78
+ filePathData.filePathLengthSize +
79
+ filePathData.filePathLengthBytes);
80
+ let offset = 0;
81
+ offset += headerBuffer.write(AndroidLivesyncTool.DELETE_FILE_OPERATION.toString(), offset, PROTOCOL_OPERATION_LENGTH_SIZE);
82
+ offset = headerBuffer.writeInt8(filePathData.filePathLengthSize, offset);
83
+ offset += headerBuffer.write(filePathData.filePathLengthString, offset, filePathData.filePathLengthSize);
84
+ headerBuffer.write(filePathData.relativeFilePath, offset, filePathData.filePathLengthBytes);
85
+ const hash = crypto.createHash("md5").update(headerBuffer).digest();
86
+ await this.writeToSocket(headerBuffer);
87
+ await this.writeToSocket(hash);
105
88
  }
106
- removeFiles(files) {
107
- return __awaiter(this, void 0, void 0, function* () {
108
- for (const file of files) {
109
- yield this.removeFile(file);
110
- }
111
- });
89
+ async removeFiles(files) {
90
+ for (const file of files) {
91
+ await this.removeFile(file);
92
+ }
112
93
  }
113
94
  generateOperationIdentifier() {
114
95
  return crypto.randomBytes(16).toString("hex");
@@ -168,37 +149,35 @@ class AndroidLivesyncTool {
168
149
  hasConnection() {
169
150
  return !!this.socketConnection;
170
151
  }
171
- sendFileHeader(filePath) {
172
- return __awaiter(this, void 0, void 0, function* () {
173
- this.verifyActiveConnection();
174
- const filePathData = this.getFilePathData(filePath);
175
- const stats = this.$fs.getFsStats(filePathData.filePath);
176
- const fileContentLengthBytes = stats.size;
177
- const fileContentLengthString = fileContentLengthBytes.toString();
178
- const fileContentLengthSize = Buffer.byteLength(fileContentLengthString);
179
- const headerBuffer = Buffer.alloc(PROTOCOL_OPERATION_LENGTH_SIZE +
180
- SIZE_BYTE_LENGTH +
181
- filePathData.filePathLengthSize +
182
- filePathData.filePathLengthBytes +
183
- SIZE_BYTE_LENGTH +
184
- fileContentLengthSize);
185
- if (filePathData.filePathLengthSize > 255) {
186
- this.$errors.fail("File name size is longer that 255 digits.");
187
- }
188
- else if (fileContentLengthSize > 255) {
189
- this.$errors.fail("File name size is longer that 255 digits.");
190
- }
191
- let offset = 0;
192
- offset += headerBuffer.write(AndroidLivesyncTool.CREATE_FILE_OPERATION.toString(), offset, PROTOCOL_OPERATION_LENGTH_SIZE);
193
- offset = headerBuffer.writeUInt8(filePathData.filePathLengthSize, offset);
194
- offset += headerBuffer.write(filePathData.filePathLengthString, offset, filePathData.filePathLengthSize);
195
- offset += headerBuffer.write(filePathData.relativeFilePath, offset, filePathData.filePathLengthBytes);
196
- offset = headerBuffer.writeUInt8(fileContentLengthSize, offset);
197
- headerBuffer.write(fileContentLengthString, offset, fileContentLengthSize);
198
- const hash = crypto.createHash("md5").update(headerBuffer).digest();
199
- yield this.writeToSocket(headerBuffer);
200
- yield this.writeToSocket(hash);
201
- });
152
+ async sendFileHeader(filePath) {
153
+ this.verifyActiveConnection();
154
+ const filePathData = this.getFilePathData(filePath);
155
+ const stats = this.$fs.getFsStats(filePathData.filePath);
156
+ const fileContentLengthBytes = stats.size;
157
+ const fileContentLengthString = fileContentLengthBytes.toString();
158
+ const fileContentLengthSize = Buffer.byteLength(fileContentLengthString);
159
+ const headerBuffer = Buffer.alloc(PROTOCOL_OPERATION_LENGTH_SIZE +
160
+ SIZE_BYTE_LENGTH +
161
+ filePathData.filePathLengthSize +
162
+ filePathData.filePathLengthBytes +
163
+ SIZE_BYTE_LENGTH +
164
+ fileContentLengthSize);
165
+ if (filePathData.filePathLengthSize > 255) {
166
+ this.$errors.fail("File name size is longer that 255 digits.");
167
+ }
168
+ else if (fileContentLengthSize > 255) {
169
+ this.$errors.fail("File name size is longer that 255 digits.");
170
+ }
171
+ let offset = 0;
172
+ offset += headerBuffer.write(AndroidLivesyncTool.CREATE_FILE_OPERATION.toString(), offset, PROTOCOL_OPERATION_LENGTH_SIZE);
173
+ offset = headerBuffer.writeUInt8(filePathData.filePathLengthSize, offset);
174
+ offset += headerBuffer.write(filePathData.filePathLengthString, offset, filePathData.filePathLengthSize);
175
+ offset += headerBuffer.write(filePathData.relativeFilePath, offset, filePathData.filePathLengthBytes);
176
+ offset = headerBuffer.writeUInt8(fileContentLengthSize, offset);
177
+ headerBuffer.write(fileContentLengthString, offset, fileContentLengthSize);
178
+ const hash = crypto.createHash("md5").update(headerBuffer).digest();
179
+ await this.writeToSocket(headerBuffer);
180
+ await this.writeToSocket(hash);
202
181
  }
203
182
  sendFileContent(filePath) {
204
183
  return new Promise((resolve, reject) => {
@@ -270,14 +249,14 @@ class AndroidLivesyncTool {
270
249
  connectEventuallyUntilTimeout(factory, timeout, configuration) {
271
250
  return new Promise((resolve, reject) => {
272
251
  let lastKnownError, isConnected = false;
273
- const connectionTimer = setTimeout(() => __awaiter(this, void 0, void 0, function* () {
252
+ const connectionTimer = setTimeout(async () => {
274
253
  if (!isConnected) {
275
254
  isConnected = true;
276
255
  if (this.pendingConnectionData &&
277
256
  this.pendingConnectionData.socketTimer) {
278
257
  clearTimeout(this.pendingConnectionData.socketTimer);
279
258
  }
280
- const applicationPid = yield this.$androidProcessService.getAppProcessId(configuration.deviceIdentifier, configuration.appIdentifier);
259
+ const applicationPid = await this.$androidProcessService.getAppProcessId(configuration.deviceIdentifier, configuration.appIdentifier);
281
260
  if (!applicationPid) {
282
261
  this.$logger.trace("In Android LiveSync tool, lastKnownError is: ", lastKnownError);
283
262
  this.$logger.info(color_1.color.yellow(`Application ${configuration.appIdentifier} is not running on device ${configuration.deviceIdentifier}.`));
@@ -294,7 +273,7 @@ class AndroidLivesyncTool {
294
273
  }
295
274
  this.pendingConnectionData = null;
296
275
  }
297
- }), timeout);
276
+ }, timeout);
298
277
  this.pendingConnectionData = {
299
278
  connectionTimer,
300
279
  rejectHandler: reject,
@@ -402,14 +381,13 @@ class AndroidLivesyncTool {
402
381
  const relativeFilePath = path.relative(this.configuration.appPlatformsPath, filePath);
403
382
  return this.$mobileHelper.buildDevicePath(relativeFilePath);
404
383
  }
405
- writeToSocket(data) {
406
- return __awaiter(this, void 0, void 0, function* () {
407
- this.verifyActiveConnection();
408
- const result = yield this.socketConnection.writeAsync(data);
409
- return result;
410
- });
384
+ async writeToSocket(data) {
385
+ this.verifyActiveConnection();
386
+ const result = await this.socketConnection.writeAsync(data);
387
+ return result;
411
388
  }
412
389
  }
390
+ exports.AndroidLivesyncTool = AndroidLivesyncTool;
413
391
  AndroidLivesyncTool.DELETE_FILE_OPERATION = 7;
414
392
  AndroidLivesyncTool.CREATE_FILE_OPERATION = 8;
415
393
  AndroidLivesyncTool.DO_SYNC_OPERATION = 9;
@@ -423,5 +401,4 @@ AndroidLivesyncTool.APP_PLATFORMS_PATH_MISSING_ERROR = 'You need to provide "app
423
401
  AndroidLivesyncTool.SOCKET_CONNECTION_ALREADY_EXISTS_ERROR = "Socket connection already exists.";
424
402
  AndroidLivesyncTool.SOCKET_CONNECTION_TIMED_OUT_ERROR = "Socket connection timed out.";
425
403
  AndroidLivesyncTool.NO_SOCKET_CONNECTION_AVAILABLE_ERROR = "No socket connection available.";
426
- exports.AndroidLivesyncTool = AndroidLivesyncTool;
427
404
  yok_1.injector.register("androidLivesyncTool", AndroidLivesyncTool);
@@ -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.DeviceLiveSyncServiceBase = void 0;
19
10
  const decorators_1 = require("../../common/decorators");
@@ -38,27 +29,24 @@ class DeviceLiveSyncServiceBase {
38
29
  const fastSyncFileExtensions = DeviceLiveSyncServiceBase.FAST_SYNC_FILE_EXTENSIONS.concat(platformData.fastLivesyncFileExtensions);
39
30
  return fastSyncFileExtensions;
40
31
  }
41
- transferFiles(deviceAppData, localToDevicePaths, projectFilesPath, projectData, liveSyncDeviceDescriptor, options) {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- let transferredFiles = [];
44
- if (options.isFullSync) {
45
- transferredFiles = yield this.device.fileSystem.transferDirectory(deviceAppData, localToDevicePaths, projectFilesPath);
46
- }
47
- else {
48
- transferredFiles = yield this.device.fileSystem.transferFiles(deviceAppData, localToDevicePaths);
49
- }
50
- return transferredFiles;
51
- });
32
+ async transferFiles(deviceAppData, localToDevicePaths, projectFilesPath, projectData, liveSyncDeviceDescriptor, options) {
33
+ let transferredFiles = [];
34
+ if (options.isFullSync) {
35
+ transferredFiles = await this.device.fileSystem.transferDirectory(deviceAppData, localToDevicePaths, projectFilesPath);
36
+ }
37
+ else {
38
+ transferredFiles = await this.device.fileSystem.transferFiles(deviceAppData, localToDevicePaths);
39
+ }
40
+ return transferredFiles;
52
41
  }
53
- finalizeSync(liveSyncInfo, projectData) {
54
- return __awaiter(this, void 0, void 0, function* () {
55
- return {
56
- didRefresh: true,
57
- operationId: "",
58
- };
59
- });
42
+ async finalizeSync(liveSyncInfo, projectData) {
43
+ return {
44
+ didRefresh: true,
45
+ operationId: "",
46
+ };
60
47
  }
61
48
  }
49
+ exports.DeviceLiveSyncServiceBase = DeviceLiveSyncServiceBase;
62
50
  DeviceLiveSyncServiceBase.FAST_SYNC_FILE_EXTENSIONS = [".css", ".xml", ".html"];
63
51
  __decorate([
64
52
  (0, decorators_1.cache)()
@@ -66,4 +54,3 @@ __decorate([
66
54
  __decorate([
67
55
  (0, decorators_2.performanceLog)()
68
56
  ], DeviceLiveSyncServiceBase.prototype, "transferFiles", null);
69
- exports.DeviceLiveSyncServiceBase = DeviceLiveSyncServiceBase;