nativescript 8.9.0-dev.2 → 8.9.0-dev.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 (345) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/docs/man_pages/project/configuration/widget-ios.md +24 -0
  3. package/docs/man_pages/project/configuration/widget.md +24 -0
  4. package/docs/man_pages/start.md +1 -1
  5. package/lib/android-tools-info.js +11 -22
  6. package/lib/base-package-manager.js +53 -70
  7. package/lib/bun-package-manager.js +75 -98
  8. package/lib/color.js +4 -4
  9. package/lib/commands/add-platform.js +14 -30
  10. package/lib/commands/apple-login.js +18 -29
  11. package/lib/commands/appstore-list.js +34 -45
  12. package/lib/commands/appstore-upload.js +54 -67
  13. package/lib/commands/build.js +55 -87
  14. package/lib/commands/clean.js +169 -184
  15. package/lib/commands/command-base.js +14 -27
  16. package/lib/commands/config.js +49 -68
  17. package/lib/commands/create-project.js +215 -234
  18. package/lib/commands/debug.js +66 -88
  19. package/lib/commands/deploy.js +28 -44
  20. package/lib/commands/embedding/embed.js +37 -56
  21. package/lib/commands/extensibility/install-extension.js +5 -16
  22. package/lib/commands/extensibility/list-extensions.js +13 -24
  23. package/lib/commands/extensibility/uninstall-extension.js +4 -15
  24. package/lib/commands/fonts.js +30 -41
  25. package/lib/commands/generate-assets.js +13 -28
  26. package/lib/commands/generate-help.js +2 -13
  27. package/lib/commands/generate.js +49 -60
  28. package/lib/commands/info.js +2 -13
  29. package/lib/commands/install.js +34 -49
  30. package/lib/commands/list-platforms.js +14 -25
  31. package/lib/commands/migrate.js +15 -26
  32. package/lib/commands/native-add.js +23 -46
  33. package/lib/commands/platform-clean.js +19 -32
  34. package/lib/commands/plugin/add-plugin.js +12 -25
  35. package/lib/commands/plugin/build-plugin.js +31 -44
  36. package/lib/commands/plugin/create-plugin.js +114 -137
  37. package/lib/commands/plugin/list-plugins.js +22 -33
  38. package/lib/commands/plugin/remove-plugin.js +21 -34
  39. package/lib/commands/plugin/update-plugin.js +20 -33
  40. package/lib/commands/post-install.js +25 -38
  41. package/lib/commands/prepare.js +19 -35
  42. package/lib/commands/preview.js +50 -63
  43. package/lib/commands/remove-platform.js +7 -18
  44. package/lib/commands/resources/resources-update.js +14 -27
  45. package/lib/commands/run.js +55 -76
  46. package/lib/commands/start.js +6 -19
  47. package/lib/commands/test-init.js +126 -137
  48. package/lib/commands/test.js +72 -95
  49. package/lib/commands/typings.js +126 -142
  50. package/lib/commands/update-platform.js +26 -39
  51. package/lib/commands/update.js +31 -44
  52. package/lib/commands/widget.js +408 -357
  53. package/lib/common/child-process.js +53 -72
  54. package/lib/common/codeGeneration/code-entity.js +1 -1
  55. package/lib/common/codeGeneration/code-printer.js +1 -1
  56. package/lib/common/command-params.js +7 -18
  57. package/lib/common/commands/analytics.js +29 -42
  58. package/lib/common/commands/autocompletion.js +41 -58
  59. package/lib/common/commands/device/device-log-stream.js +12 -23
  60. package/lib/common/commands/device/get-file.js +23 -34
  61. package/lib/common/commands/device/list-applications.js +12 -23
  62. package/lib/common/commands/device/list-devices.js +72 -87
  63. package/lib/common/commands/device/list-files.js +24 -35
  64. package/lib/common/commands/device/put-file.js +23 -34
  65. package/lib/common/commands/device/run-application.js +12 -25
  66. package/lib/common/commands/device/stop-application.js +11 -22
  67. package/lib/common/commands/device/uninstall-application.js +6 -17
  68. package/lib/common/commands/generate-messages.js +17 -28
  69. package/lib/common/commands/help.js +20 -33
  70. package/lib/common/commands/package-manager-get.js +6 -17
  71. package/lib/common/commands/package-manager-set.js +9 -20
  72. package/lib/common/commands/post-install.js +2 -13
  73. package/lib/common/commands/preuninstall.js +27 -42
  74. package/lib/common/commands/proxy/proxy-base.js +11 -22
  75. package/lib/common/commands/proxy/proxy-clear.js +4 -15
  76. package/lib/common/commands/proxy/proxy-get.js +3 -14
  77. package/lib/common/commands/proxy/proxy-set.js +87 -100
  78. package/lib/common/constants.js +11 -11
  79. package/lib/common/decorators.js +10 -22
  80. package/lib/common/dispatchers.js +84 -101
  81. package/lib/common/errors.js +92 -107
  82. package/lib/common/file-system.js +110 -132
  83. package/lib/common/header.js +1 -2
  84. package/lib/common/helpers.js +149 -178
  85. package/lib/common/host-info.js +40 -53
  86. package/lib/common/http-client.js +104 -119
  87. package/lib/common/logger/appenders/cli-appender.js +1 -2
  88. package/lib/common/logger/appenders/emit-appender.js +1 -2
  89. package/lib/common/logger/layouts/cli-layout.js +1 -2
  90. package/lib/common/logger/logger.js +4 -4
  91. package/lib/common/mobile/android/android-application-manager.js +138 -159
  92. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -1
  93. package/lib/common/mobile/android/android-debug-bridge.js +92 -117
  94. package/lib/common/mobile/android/android-device-file-system.js +101 -134
  95. package/lib/common/mobile/android/android-device-hash-service.js +52 -77
  96. package/lib/common/mobile/android/android-device.js +73 -90
  97. package/lib/common/mobile/android/android-emulator-services.js +105 -130
  98. package/lib/common/mobile/android/android-log-filter.js +1 -1
  99. package/lib/common/mobile/android/android-virtual-device-service.js +78 -99
  100. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -29
  101. package/lib/common/mobile/android/genymotion/genymotion-service.js +94 -121
  102. package/lib/common/mobile/android/genymotion/virtualbox-service.js +74 -91
  103. package/lib/common/mobile/android/logcat-helper.js +114 -133
  104. package/lib/common/mobile/application-manager-base.js +89 -112
  105. package/lib/common/mobile/device-log-provider-base.js +7 -18
  106. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -108
  107. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -105
  108. package/lib/common/mobile/ios/device/ios-device-operations.js +106 -143
  109. package/lib/common/mobile/ios/device/ios-device.js +20 -36
  110. package/lib/common/mobile/ios/ios-device-base.js +58 -81
  111. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +66 -95
  112. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -1
  113. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +61 -90
  114. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +31 -47
  115. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -62
  116. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -35
  117. package/lib/common/mobile/mobile-core/android-device-discovery.js +44 -63
  118. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +23 -34
  119. package/lib/common/mobile/mobile-core/android-process-service.js +174 -213
  120. package/lib/common/mobile/mobile-core/device-discovery.js +2 -13
  121. package/lib/common/mobile/mobile-core/devices-service.js +400 -450
  122. package/lib/common/mobile/mobile-core/ios-device-discovery.js +25 -36
  123. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +49 -64
  124. package/lib/common/mobile/mobile-helper.js +15 -26
  125. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -52
  126. package/lib/common/opener.js +2 -2
  127. package/lib/common/prompter.js +91 -106
  128. package/lib/common/queue.js +9 -20
  129. package/lib/common/services/auto-completion-service.js +40 -53
  130. package/lib/common/services/cancellation.js +17 -28
  131. package/lib/common/services/commands-service.js +156 -179
  132. package/lib/common/services/help-service.js +130 -155
  133. package/lib/common/services/hooks-service.js +99 -114
  134. package/lib/common/services/ios-notification-service.js +21 -34
  135. package/lib/common/services/json-file-settings-service.js +56 -75
  136. package/lib/common/services/lock-service.js +35 -52
  137. package/lib/common/services/message-contract-generator.js +35 -46
  138. package/lib/common/services/micro-templating-service.js +6 -17
  139. package/lib/common/services/net-service.js +92 -109
  140. package/lib/common/services/project-files-manager.js +10 -23
  141. package/lib/common/services/proxy-service.js +13 -24
  142. package/lib/common/services/qr.js +13 -24
  143. package/lib/common/services/settings-service.js +1 -1
  144. package/lib/common/services/xcode-select-service.js +20 -35
  145. package/lib/common/utils.js +2 -2
  146. package/lib/common/validators/project-name-validator.js +1 -1
  147. package/lib/common/validators/validation-result.js +1 -1
  148. package/lib/common/verify-node-version.js +2 -3
  149. package/lib/common/yok.js +25 -38
  150. package/lib/config.js +41 -56
  151. package/lib/constants.js +24 -24
  152. package/lib/controllers/build-controller.js +82 -99
  153. package/lib/controllers/debug-controller.js +111 -132
  154. package/lib/controllers/deploy-controller.js +15 -23
  155. package/lib/controllers/migrate-controller.js +780 -853
  156. package/lib/controllers/platform-controller.js +74 -89
  157. package/lib/controllers/prepare-controller.js +241 -270
  158. package/lib/controllers/run-controller.js +411 -425
  159. package/lib/controllers/update-controller-base.js +16 -29
  160. package/lib/controllers/update-controller.js +101 -126
  161. package/lib/data/prepare-data.js +4 -1
  162. package/lib/definitions/project.d.ts +24 -24
  163. package/lib/detached-processes/cleanup-js-subprocess.js +3 -12
  164. package/lib/detached-processes/cleanup-process.js +16 -25
  165. package/lib/device-path-provider.js +23 -34
  166. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +155 -170
  167. package/lib/device-sockets/ios/notification.js +1 -1
  168. package/lib/device-sockets/ios/socket-request-executor.js +26 -41
  169. package/lib/helpers/android-bundle-validator-helper.js +1 -1
  170. package/lib/helpers/deploy-command-helper.js +44 -49
  171. package/lib/helpers/key-command-helper.js +4 -13
  172. package/lib/helpers/livesync-command-helper.js +138 -153
  173. package/lib/helpers/network-connectivity-validator.js +6 -17
  174. package/lib/helpers/options-track-helper.js +6 -17
  175. package/lib/helpers/platform-command-helper.js +103 -124
  176. package/lib/key-commands/index.js +150 -200
  177. package/lib/nativescript-cli.js +5 -14
  178. package/lib/node-package-manager.js +90 -113
  179. package/lib/options.js +4 -13
  180. package/lib/package-installation-manager.js +132 -167
  181. package/lib/package-manager.js +64 -87
  182. package/lib/platform-command-param.js +4 -15
  183. package/lib/pnpm-package-manager.js +60 -79
  184. package/lib/project-data.js +1 -1
  185. package/lib/providers/project-files-provider.js +1 -1
  186. package/lib/services/analytics/analytics-broker-process.js +13 -22
  187. package/lib/services/analytics/analytics-broker.js +17 -30
  188. package/lib/services/analytics/analytics-service.js +165 -201
  189. package/lib/services/analytics/google-analytics-provider.js +41 -56
  190. package/lib/services/analytics-settings-service.js +15 -32
  191. package/lib/services/android/android-bundle-tool-service.js +43 -60
  192. package/lib/services/android/gradle-build-args-service.js +10 -21
  193. package/lib/services/android/gradle-build-service.js +22 -35
  194. package/lib/services/android/gradle-command-service.js +22 -35
  195. package/lib/services/android-device-debug-service.js +92 -119
  196. package/lib/services/android-plugin-build-service.js +219 -245
  197. package/lib/services/android-project-service.js +134 -179
  198. package/lib/services/android-resources-migration-service.js +57 -70
  199. package/lib/services/apple-portal/apple-portal-application-service.js +46 -63
  200. package/lib/services/apple-portal/apple-portal-session-service.js +196 -215
  201. package/lib/services/apple-portal/srp/srp-wrapper.js +45 -60
  202. package/lib/services/assets-generation/assets-generation-service.js +114 -128
  203. package/lib/services/build-artifacts-service.js +9 -20
  204. package/lib/services/build-info-file-service.js +20 -35
  205. package/lib/services/cleanup-service.js +47 -76
  206. package/lib/services/cocoapods-service.js +124 -145
  207. package/lib/services/device/device-install-app-service.js +54 -71
  208. package/lib/services/doctor-service.js +106 -125
  209. package/lib/services/extensibility-service.js +87 -106
  210. package/lib/services/files-hash-service.js +26 -43
  211. package/lib/services/hmr-status-service.js +1 -1
  212. package/lib/services/initialize-service.js +38 -51
  213. package/lib/services/ios/export-options-plist-service.js +41 -54
  214. package/lib/services/ios/ios-signing-service.js +171 -190
  215. package/lib/services/ios/spm-service.js +52 -65
  216. package/lib/services/ios/xcodebuild-args-service.js +77 -94
  217. package/lib/services/ios/xcodebuild-command-service.js +14 -25
  218. package/lib/services/ios/xcodebuild-service.js +52 -71
  219. package/lib/services/ios-debugger-port-service.js +24 -37
  220. package/lib/services/ios-device-debug-service.js +75 -102
  221. package/lib/services/ios-entitlements-service.js +31 -42
  222. package/lib/services/ios-extensions-service.js +18 -29
  223. package/lib/services/ios-project-service.js +530 -591
  224. package/lib/services/ios-provision-service.js +110 -131
  225. package/lib/services/ios-watch-app-service.js +21 -32
  226. package/lib/services/ip-service.js +39 -54
  227. package/lib/services/itmstransporter-service.js +129 -152
  228. package/lib/services/livesync/android-device-livesync-service-base.js +31 -48
  229. package/lib/services/livesync/android-device-livesync-service.js +121 -150
  230. package/lib/services/livesync/android-device-livesync-sockets-service.js +123 -154
  231. package/lib/services/livesync/android-livesync-service.js +14 -35
  232. package/lib/services/livesync/android-livesync-tool.js +90 -113
  233. package/lib/services/livesync/device-livesync-service-base.js +16 -29
  234. package/lib/services/livesync/ios-device-livesync-service.js +120 -149
  235. package/lib/services/livesync/ios-livesync-service.js +43 -59
  236. package/lib/services/livesync/platform-livesync-service-base.js +98 -123
  237. package/lib/services/log-parser-service.js +1 -1
  238. package/lib/services/log-source-map-service.js +31 -42
  239. package/lib/services/marking-mode-service.js +17 -30
  240. package/lib/services/npm-config-service.js +1 -1
  241. package/lib/services/pacote-service.js +54 -69
  242. package/lib/services/performance-service.js +1 -1
  243. package/lib/services/platform/add-platform-service.js +57 -78
  244. package/lib/services/platform/platform-validation-service.js +22 -33
  245. package/lib/services/platform/prepare-native-platform-service.js +51 -64
  246. package/lib/services/platform-environment-requirements.js +27 -38
  247. package/lib/services/plugins-service.js +126 -151
  248. package/lib/services/project-backup-service.js +1 -1
  249. package/lib/services/project-changes-service.js +126 -143
  250. package/lib/services/project-cleanup-service.js +65 -78
  251. package/lib/services/project-config-service.js +78 -88
  252. package/lib/services/project-data-service.js +112 -129
  253. package/lib/services/project-name-service.js +28 -43
  254. package/lib/services/project-service.js +90 -109
  255. package/lib/services/project-templates-service.js +52 -67
  256. package/lib/services/start-service.js +41 -59
  257. package/lib/services/temp-service.js +8 -21
  258. package/lib/services/terminal-spinner-service.js +15 -26
  259. package/lib/services/test-execution-service.js +64 -77
  260. package/lib/services/test-initialization-service.js +2 -2
  261. package/lib/services/timeline-profiler-service.js +1 -1
  262. package/lib/services/versions-service.js +120 -139
  263. package/lib/services/webpack/webpack-compiler-service.js +228 -251
  264. package/lib/services/xcconfig-service.js +8 -19
  265. package/lib/sys-info.js +45 -62
  266. package/lib/tools/node-modules/node-modules-builder.js +16 -27
  267. package/lib/yarn-package-manager.js +59 -78
  268. package/lib/yarn2-package-manager.js +62 -81
  269. package/package.json +67 -82
  270. package/node_modules/@npmcli/move-file/LICENSE.md +0 -22
  271. package/node_modules/@npmcli/move-file/README.md +0 -69
  272. package/node_modules/@npmcli/move-file/lib/index.js +0 -185
  273. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +0 -21
  274. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +0 -68
  275. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +0 -31
  276. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +0 -29
  277. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +0 -64
  278. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +0 -39
  279. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +0 -23
  280. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +0 -29
  281. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +0 -10
  282. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +0 -44
  283. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +0 -266
  284. package/node_modules/@npmcli/move-file/package.json +0 -47
  285. package/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  286. package/node_modules/balanced-match/LICENSE.md +0 -21
  287. package/node_modules/balanced-match/README.md +0 -97
  288. package/node_modules/balanced-match/index.js +0 -62
  289. package/node_modules/balanced-match/package.json +0 -48
  290. package/node_modules/concat-map/.travis.yml +0 -4
  291. package/node_modules/concat-map/LICENSE +0 -18
  292. package/node_modules/concat-map/README.markdown +0 -62
  293. package/node_modules/concat-map/example/map.js +0 -6
  294. package/node_modules/concat-map/index.js +0 -13
  295. package/node_modules/concat-map/package.json +0 -43
  296. package/node_modules/concat-map/test/map.js +0 -39
  297. package/node_modules/fs.realpath/LICENSE +0 -43
  298. package/node_modules/fs.realpath/README.md +0 -33
  299. package/node_modules/fs.realpath/index.js +0 -66
  300. package/node_modules/fs.realpath/old.js +0 -303
  301. package/node_modules/fs.realpath/package.json +0 -26
  302. package/node_modules/inflight/LICENSE +0 -15
  303. package/node_modules/inflight/README.md +0 -37
  304. package/node_modules/inflight/inflight.js +0 -54
  305. package/node_modules/inflight/package.json +0 -29
  306. package/node_modules/inherits/LICENSE +0 -16
  307. package/node_modules/inherits/README.md +0 -42
  308. package/node_modules/inherits/inherits.js +0 -9
  309. package/node_modules/inherits/inherits_browser.js +0 -27
  310. package/node_modules/inherits/package.json +0 -29
  311. package/node_modules/once/LICENSE +0 -15
  312. package/node_modules/once/README.md +0 -79
  313. package/node_modules/once/once.js +0 -42
  314. package/node_modules/once/package.json +0 -33
  315. package/node_modules/path-is-absolute/index.js +0 -20
  316. package/node_modules/path-is-absolute/license +0 -21
  317. package/node_modules/path-is-absolute/package.json +0 -43
  318. package/node_modules/path-is-absolute/readme.md +0 -59
  319. package/node_modules/rimraf/LICENSE +0 -15
  320. package/node_modules/rimraf/README.md +0 -101
  321. package/node_modules/rimraf/bin.js +0 -68
  322. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +0 -21
  323. package/node_modules/rimraf/node_modules/brace-expansion/README.md +0 -129
  324. package/node_modules/rimraf/node_modules/brace-expansion/index.js +0 -201
  325. package/node_modules/rimraf/node_modules/brace-expansion/package.json +0 -47
  326. package/node_modules/rimraf/node_modules/glob/LICENSE +0 -21
  327. package/node_modules/rimraf/node_modules/glob/README.md +0 -378
  328. package/node_modules/rimraf/node_modules/glob/common.js +0 -238
  329. package/node_modules/rimraf/node_modules/glob/glob.js +0 -790
  330. package/node_modules/rimraf/node_modules/glob/package.json +0 -55
  331. package/node_modules/rimraf/node_modules/glob/sync.js +0 -486
  332. package/node_modules/rimraf/node_modules/minimatch/LICENSE +0 -15
  333. package/node_modules/rimraf/node_modules/minimatch/README.md +0 -230
  334. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +0 -947
  335. package/node_modules/rimraf/node_modules/minimatch/package.json +0 -33
  336. package/node_modules/rimraf/package.json +0 -32
  337. package/node_modules/rimraf/rimraf.js +0 -360
  338. package/node_modules/stringify-package/LICENSE +0 -13
  339. package/node_modules/stringify-package/README.md +0 -55
  340. package/node_modules/stringify-package/index.js +0 -18
  341. package/node_modules/stringify-package/package.json +0 -38
  342. package/node_modules/wrappy/LICENSE +0 -15
  343. package/node_modules/wrappy/README.md +0 -36
  344. package/node_modules/wrappy/package.json +0 -29
  345. package/node_modules/wrappy/wrappy.js +0 -33
@@ -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.IOSDeviceLiveSyncService = void 0;
19
10
  const constants = require("../../constants");
@@ -45,122 +36,106 @@ class IOSDeviceLiveSyncService extends device_livesync_service_base_1.DeviceLive
45
36
  const canRefresh = semver.gte(semver.coerce(currentRuntimeVersion), IOSDeviceLiveSyncService.MIN_RUNTIME_VERSION_WITH_REFRESH_NOTIFICATION);
46
37
  return canRefresh;
47
38
  }
48
- setupSocketIfNeeded(projectData) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- // TODO: persist the sockets per app in order to support LiveSync on multiple apps on the same device
51
- if (this.socket) {
52
- return true;
53
- }
54
- const appId = projectData.projectIdentifiers.ios;
55
- try {
56
- // TODO: temp workaround till we setup the sockets along with the app start
57
- const ensureAppStarted = true;
58
- this.socket = yield this.device.getDebugSocket(appId, projectData.projectName, projectData.projectDir, ensureAppStarted);
59
- }
60
- catch (err) {
61
- this.$logger.trace(`Error while connecting to the debug socket. Error is:`, err);
62
- }
63
- if (!this.socket) {
64
- return false;
65
- }
66
- this.attachEventHandlers();
39
+ async setupSocketIfNeeded(projectData) {
40
+ // TODO: persist the sockets per app in order to support LiveSync on multiple apps on the same device
41
+ if (this.socket) {
67
42
  return true;
68
- });
43
+ }
44
+ const appId = projectData.projectIdentifiers.ios;
45
+ try {
46
+ // TODO: temp workaround till we setup the sockets along with the app start
47
+ const ensureAppStarted = true;
48
+ this.socket = await this.device.getDebugSocket(appId, projectData.projectName, projectData.projectDir, ensureAppStarted);
49
+ }
50
+ catch (err) {
51
+ this.$logger.trace(`Error while connecting to the debug socket. Error is:`, err);
52
+ }
53
+ if (!this.socket) {
54
+ return false;
55
+ }
56
+ this.attachEventHandlers();
57
+ return true;
69
58
  }
70
- removeFiles(deviceAppData, localToDevicePaths) {
71
- return __awaiter(this, void 0, void 0, function* () {
72
- yield Promise.all(_.map(localToDevicePaths, (localToDevicePathData) => this.device.fileSystem.deleteFile(localToDevicePathData.getDevicePath(), deviceAppData.appIdentifier)));
73
- });
59
+ async removeFiles(deviceAppData, localToDevicePaths) {
60
+ await Promise.all(_.map(localToDevicePaths, (localToDevicePathData) => this.device.fileSystem.deleteFile(localToDevicePathData.getDevicePath(), deviceAppData.appIdentifier)));
74
61
  }
75
- shouldRestart(projectData, liveSyncInfo) {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- let shouldRestart = false;
78
- const deviceAppData = liveSyncInfo.deviceAppData;
79
- const localToDevicePaths = liveSyncInfo.modifiedFilesData;
80
- if (liveSyncInfo.isFullSync || liveSyncInfo.waitForDebugger) {
62
+ async shouldRestart(projectData, liveSyncInfo) {
63
+ let shouldRestart = false;
64
+ const deviceAppData = liveSyncInfo.deviceAppData;
65
+ const localToDevicePaths = liveSyncInfo.modifiedFilesData;
66
+ if (liveSyncInfo.isFullSync || liveSyncInfo.waitForDebugger) {
67
+ shouldRestart = true;
68
+ }
69
+ else {
70
+ const canExecuteFastSync = this.canExecuteFastSyncForPaths(liveSyncInfo, localToDevicePaths, projectData, deviceAppData.platform);
71
+ const isRefreshConnectionSetup = this.canRefreshWithNotification(projectData, liveSyncInfo) ||
72
+ (!this.device.isOnlyWiFiConnected && this.socket);
73
+ if (!canExecuteFastSync || !isRefreshConnectionSetup) {
81
74
  shouldRestart = true;
82
75
  }
83
- else {
84
- const canExecuteFastSync = this.canExecuteFastSyncForPaths(liveSyncInfo, localToDevicePaths, projectData, deviceAppData.platform);
85
- const isRefreshConnectionSetup = this.canRefreshWithNotification(projectData, liveSyncInfo) ||
86
- (!this.device.isOnlyWiFiConnected && this.socket);
87
- if (!canExecuteFastSync || !isRefreshConnectionSetup) {
88
- shouldRestart = true;
89
- }
90
- }
91
- return shouldRestart;
92
- });
76
+ }
77
+ return shouldRestart;
93
78
  }
94
- tryRefreshApplication(projectData, liveSyncInfo) {
95
- return __awaiter(this, void 0, void 0, function* () {
96
- let didRefresh = true;
97
- const localToDevicePaths = liveSyncInfo.modifiedFilesData;
98
- let scriptRelatedFiles = [];
99
- constants.LIVESYNC_EXCLUDED_FILE_PATTERNS.forEach((pattern) => (scriptRelatedFiles = _.concat(scriptRelatedFiles, localToDevicePaths.filter((file) => (0, minimatch_1.minimatch)(file.getDevicePath(), pattern, { nocase: true })))));
100
- const scriptFiles = _.filter(localToDevicePaths, (localToDevicePath) => _.endsWith(localToDevicePath.getDevicePath(), ".js"));
101
- const otherFiles = _.difference(localToDevicePaths, _.concat(scriptFiles, scriptRelatedFiles));
102
- try {
103
- if (otherFiles.length) {
104
- didRefresh = yield this.refreshApplicationCore(projectData, liveSyncInfo);
105
- }
79
+ async tryRefreshApplication(projectData, liveSyncInfo) {
80
+ let didRefresh = true;
81
+ const localToDevicePaths = liveSyncInfo.modifiedFilesData;
82
+ let scriptRelatedFiles = [];
83
+ constants.LIVESYNC_EXCLUDED_FILE_PATTERNS.forEach((pattern) => (scriptRelatedFiles = _.concat(scriptRelatedFiles, localToDevicePaths.filter((file) => (0, minimatch_1.minimatch)(file.getDevicePath(), pattern, { nocase: true })))));
84
+ const scriptFiles = _.filter(localToDevicePaths, (localToDevicePath) => _.endsWith(localToDevicePath.getDevicePath(), ".js"));
85
+ const otherFiles = _.difference(localToDevicePaths, _.concat(scriptFiles, scriptRelatedFiles));
86
+ try {
87
+ if (otherFiles.length) {
88
+ didRefresh = await this.refreshApplicationCore(projectData, liveSyncInfo);
106
89
  }
107
- catch (e) {
108
- didRefresh = false;
109
- }
110
- return didRefresh;
111
- });
90
+ }
91
+ catch (e) {
92
+ didRefresh = false;
93
+ }
94
+ return didRefresh;
112
95
  }
113
- refreshApplicationCore(projectData, liveSyncInfo) {
114
- return __awaiter(this, void 0, void 0, function* () {
115
- let didRefresh = true;
116
- if (this.canRefreshWithNotification(projectData, liveSyncInfo)) {
117
- didRefresh = yield this.refreshWithNotification(projectData);
96
+ async refreshApplicationCore(projectData, liveSyncInfo) {
97
+ let didRefresh = true;
98
+ if (this.canRefreshWithNotification(projectData, liveSyncInfo)) {
99
+ didRefresh = await this.refreshWithNotification(projectData);
100
+ }
101
+ else {
102
+ if (await this.setupSocketIfNeeded(projectData)) {
103
+ await this.reloadPage();
118
104
  }
119
105
  else {
120
- if (yield this.setupSocketIfNeeded(projectData)) {
121
- yield this.reloadPage();
122
- }
123
- else {
124
- didRefresh = false;
125
- }
106
+ didRefresh = false;
126
107
  }
127
- return didRefresh;
128
- });
108
+ }
109
+ return didRefresh;
129
110
  }
130
- refreshWithNotification(projectData) {
131
- return __awaiter(this, void 0, void 0, function* () {
132
- let didRefresh = false;
133
- yield this.$lockService.executeActionWithLock(() => __awaiter(this, void 0, void 0, function* () {
134
- didRefresh = yield this.$iOSSocketRequestExecutor.executeRefreshRequest(this.device, 5, projectData.projectIdentifiers.ios);
135
- }), `ios-device-livesync-${this.device.deviceInfo.identifier}-${projectData.projectIdentifiers.ios}.lock`);
136
- return didRefresh;
137
- });
111
+ async refreshWithNotification(projectData) {
112
+ let didRefresh = false;
113
+ await this.$lockService.executeActionWithLock(async () => {
114
+ didRefresh = await this.$iOSSocketRequestExecutor.executeRefreshRequest(this.device, 5, projectData.projectIdentifiers.ios);
115
+ }, `ios-device-livesync-${this.device.deviceInfo.identifier}-${projectData.projectIdentifiers.ios}.lock`);
116
+ return didRefresh;
138
117
  }
139
- restartApplication(projectData, liveSyncInfo) {
140
- return __awaiter(this, void 0, void 0, function* () {
141
- yield this.device.applicationManager.restartApplication({
142
- appId: liveSyncInfo.deviceAppData.appIdentifier,
143
- projectName: projectData.projectName,
144
- waitForDebugger: liveSyncInfo.waitForDebugger,
145
- projectDir: projectData.projectDir,
146
- });
147
- if (liveSyncInfo.useHotModuleReload) {
148
- // enable HOT updates
149
- yield this.setupSocketIfNeeded(projectData);
150
- }
118
+ async restartApplication(projectData, liveSyncInfo) {
119
+ await this.device.applicationManager.restartApplication({
120
+ appId: liveSyncInfo.deviceAppData.appIdentifier,
121
+ projectName: projectData.projectName,
122
+ waitForDebugger: liveSyncInfo.waitForDebugger,
123
+ projectDir: projectData.projectDir,
151
124
  });
125
+ if (liveSyncInfo.useHotModuleReload) {
126
+ // enable HOT updates
127
+ await this.setupSocketIfNeeded(projectData);
128
+ }
152
129
  }
153
- reloadPage() {
154
- return __awaiter(this, void 0, void 0, function* () {
155
- const message = JSON.stringify({
156
- method: "Page.reload",
157
- params: {
158
- ignoreCache: false,
159
- },
160
- id: ++currentPageReloadId,
161
- });
162
- yield this.sendMessage(message);
130
+ async reloadPage() {
131
+ const message = JSON.stringify({
132
+ method: "Page.reload",
133
+ params: {
134
+ ignoreCache: false,
135
+ },
136
+ id: ++currentPageReloadId,
163
137
  });
138
+ await this.sendMessage(message);
164
139
  }
165
140
  attachEventHandlers() {
166
141
  this.socket.on("close", (hadError) => {
@@ -174,52 +149,48 @@ class IOSDeviceLiveSyncService extends device_livesync_service_base_1.DeviceLive
174
149
  this.$logger.trace(`Socket sent data: ${data.toString()}`);
175
150
  });
176
151
  }
177
- sendMessage(message) {
178
- return __awaiter(this, void 0, void 0, function* () {
179
- try {
180
- yield new Promise((resolve, reject) => {
181
- let isResolved = false;
182
- const length = Buffer.byteLength(message, "utf16le");
183
- const payload = Buffer.allocUnsafe(length + 4);
184
- payload.writeInt32BE(length, 0);
185
- payload.write(message, 4, length, "utf16le");
186
- const errorCallback = (error) => {
187
- if (!isResolved) {
188
- isResolved = true;
189
- reject(error);
190
- }
191
- };
192
- this.socket.once("error", errorCallback);
193
- this.socket.write(payload, "utf16le", () => {
194
- this.socket.removeListener("error", errorCallback);
195
- if (!isResolved) {
196
- isResolved = true;
197
- resolve();
198
- }
199
- });
152
+ async sendMessage(message) {
153
+ try {
154
+ await new Promise((resolve, reject) => {
155
+ let isResolved = false;
156
+ const length = Buffer.byteLength(message, "utf16le");
157
+ const payload = Buffer.allocUnsafe(length + 4);
158
+ payload.writeInt32BE(length, 0);
159
+ payload.write(message, 4, length, "utf16le");
160
+ const errorCallback = (error) => {
161
+ if (!isResolved) {
162
+ isResolved = true;
163
+ reject(error);
164
+ }
165
+ };
166
+ this.socket.once("error", errorCallback);
167
+ this.socket.write(payload, "utf16le", () => {
168
+ this.socket.removeListener("error", errorCallback);
169
+ if (!isResolved) {
170
+ isResolved = true;
171
+ resolve();
172
+ }
200
173
  });
201
- }
202
- catch (error) {
203
- this.$logger.trace("Error while sending message:", error);
204
- yield this.destroySocket();
205
- }
206
- });
174
+ });
175
+ }
176
+ catch (error) {
177
+ this.$logger.trace("Error while sending message:", error);
178
+ await this.destroySocket();
179
+ }
207
180
  }
208
- destroySocket() {
209
- return __awaiter(this, void 0, void 0, function* () {
210
- if (this.socket) {
211
- // we do not support LiveSync on multiple apps on the same device
212
- // in order to do that, we should cache the socket per app
213
- // and destroy just the current app socket when possible
214
- yield this.device.destroyAllSockets();
215
- this.socket = null;
216
- }
217
- });
181
+ async destroySocket() {
182
+ if (this.socket) {
183
+ // we do not support LiveSync on multiple apps on the same device
184
+ // in order to do that, we should cache the socket per app
185
+ // and destroy just the current app socket when possible
186
+ await this.device.destroyAllSockets();
187
+ this.socket = null;
188
+ }
218
189
  }
219
190
  }
191
+ exports.IOSDeviceLiveSyncService = IOSDeviceLiveSyncService;
220
192
  IOSDeviceLiveSyncService.MIN_RUNTIME_VERSION_WITH_REFRESH_NOTIFICATION = "6.1.0";
221
193
  __decorate([
222
194
  (0, decorators_1.performanceLog)()
223
195
  ], IOSDeviceLiveSyncService.prototype, "removeFiles", null);
224
- exports.IOSDeviceLiveSyncService = IOSDeviceLiveSyncService;
225
196
  //# sourceMappingURL=ios-device-livesync-service.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.IOSLiveSyncService = void 0;
19
10
  const path = require("path");
@@ -31,67 +22,60 @@ class IOSLiveSyncService extends platform_livesync_service_base_1.PlatformLiveSy
31
22
  this.$injector = $injector;
32
23
  this.$tempService = $tempService;
33
24
  }
34
- fullSync(syncInfo) {
35
- const _super = Object.create(null, {
36
- fullSync: { get: () => super.fullSync }
25
+ async fullSync(syncInfo) {
26
+ const device = syncInfo.device;
27
+ if (device.isEmulator) {
28
+ return super.fullSync(syncInfo);
29
+ }
30
+ const projectData = syncInfo.projectData;
31
+ const platformData = this.$platformsDataService.getPlatformData(device.deviceInfo.platform, projectData);
32
+ const deviceAppData = await this.getAppData(syncInfo);
33
+ const projectFilesPath = path.join(platformData.appDestinationDirectoryPath, constants_1.APP_FOLDER_NAME);
34
+ const tempZip = await this.$tempService.path({
35
+ prefix: "sync",
36
+ suffix: ".zip",
37
37
  });
38
- return __awaiter(this, void 0, void 0, function* () {
39
- const device = syncInfo.device;
40
- if (device.isEmulator) {
41
- return _super.fullSync.call(this, syncInfo);
42
- }
43
- const projectData = syncInfo.projectData;
44
- const platformData = this.$platformsDataService.getPlatformData(device.deviceInfo.platform, projectData);
45
- const deviceAppData = yield this.getAppData(syncInfo);
46
- const projectFilesPath = path.join(platformData.appDestinationDirectoryPath, constants_1.APP_FOLDER_NAME);
47
- const tempZip = yield this.$tempService.path({
48
- prefix: "sync",
49
- suffix: ".zip",
50
- });
51
- this.$logger.trace("Creating zip file: " + tempZip);
52
- const filesToTransfer = this.$fs.enumerateFilesInDirectorySync(projectFilesPath);
53
- yield this.$fs.zipFiles(tempZip, filesToTransfer, (res) => {
54
- return path.join(constants_1.APP_FOLDER_NAME, path.relative(projectFilesPath, res));
55
- });
56
- yield device.fileSystem.transferFiles(deviceAppData, [
57
- {
58
- getLocalPath: () => tempZip,
59
- getDevicePath: () => deviceAppData.deviceSyncZipPath,
60
- getRelativeToProjectBasePath: () => "../sync.zip",
61
- deviceProjectRootPath: yield deviceAppData.getDeviceProjectRootPath(),
62
- },
63
- ]);
64
- yield deviceAppData.device.applicationManager.setTransferredAppFiles(filesToTransfer);
65
- return {
66
- deviceAppData,
67
- isFullSync: true,
68
- modifiedFilesData: [],
69
- useHotModuleReload: syncInfo.useHotModuleReload,
70
- };
38
+ this.$logger.trace("Creating zip file: " + tempZip);
39
+ const filesToTransfer = this.$fs.enumerateFilesInDirectorySync(projectFilesPath);
40
+ await this.$fs.zipFiles(tempZip, filesToTransfer, (res) => {
41
+ return path.join(constants_1.APP_FOLDER_NAME, path.relative(projectFilesPath, res));
71
42
  });
43
+ await device.fileSystem.transferFiles(deviceAppData, [
44
+ {
45
+ getLocalPath: () => tempZip,
46
+ getDevicePath: () => deviceAppData.deviceSyncZipPath,
47
+ getRelativeToProjectBasePath: () => "../sync.zip",
48
+ deviceProjectRootPath: await deviceAppData.getDeviceProjectRootPath(),
49
+ },
50
+ ]);
51
+ await deviceAppData.device.applicationManager.setTransferredAppFiles(filesToTransfer);
52
+ return {
53
+ deviceAppData,
54
+ isFullSync: true,
55
+ modifiedFilesData: [],
56
+ useHotModuleReload: syncInfo.useHotModuleReload,
57
+ };
72
58
  }
73
- syncAfterInstall(device, liveSyncInfo) {
74
- return __awaiter(this, void 0, void 0, function* () {
75
- if (!device.isEmulator) {
76
- // In this case we should execute fullsync because iOS Runtime requires the full content of app dir to be extracted in the root of sync dir.
77
- yield this.fullSync({
78
- projectData: liveSyncInfo.projectData,
79
- device,
80
- liveSyncDeviceData: liveSyncInfo.liveSyncDeviceData,
81
- watch: true,
82
- useHotModuleReload: liveSyncInfo.useHotModuleReload,
83
- });
84
- }
85
- });
59
+ async syncAfterInstall(device, liveSyncInfo) {
60
+ if (!device.isEmulator) {
61
+ // In this case we should execute fullsync because iOS Runtime requires the full content of app dir to be extracted in the root of sync dir.
62
+ await this.fullSync({
63
+ projectData: liveSyncInfo.projectData,
64
+ device,
65
+ liveSyncDeviceData: liveSyncInfo.liveSyncDeviceData,
66
+ watch: true,
67
+ useHotModuleReload: liveSyncInfo.useHotModuleReload,
68
+ });
69
+ }
86
70
  }
87
71
  _getDeviceLiveSyncService(device, data) {
88
72
  const service = this.$injector.resolve(ios_device_livesync_service_1.IOSDeviceLiveSyncService, { device, data });
89
73
  return service;
90
74
  }
91
75
  }
76
+ exports.IOSLiveSyncService = IOSLiveSyncService;
92
77
  __decorate([
93
78
  (0, decorators_1.performanceLog)()
94
79
  ], IOSLiveSyncService.prototype, "fullSync", null);
95
- exports.IOSLiveSyncService = IOSLiveSyncService;
96
80
  yok_1.injector.register("iOSLiveSyncService", IOSLiveSyncService);
97
81
  //# sourceMappingURL=ios-livesync-service.js.map