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.CleanupService = void 0;
19
10
  const path = require("path");
@@ -26,89 +17,69 @@ class CleanupService {
26
17
  this.shouldDispose = true;
27
18
  this.pathToCleanupLogFile = $options.cleanupLogFile;
28
19
  }
29
- addCleanupCommand(commandInfo) {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- const cleanupProcess = yield this.getCleanupProcess();
32
- cleanupProcess.send({
33
- messageType: "AddCleanCommand" /* CleanupProcessMessage.AddCleanCommand */,
34
- commandInfo,
35
- });
20
+ async addCleanupCommand(commandInfo) {
21
+ const cleanupProcess = await this.getCleanupProcess();
22
+ cleanupProcess.send({
23
+ messageType: "AddCleanCommand" /* CleanupProcessMessage.AddCleanCommand */,
24
+ commandInfo,
36
25
  });
37
26
  }
38
- removeCleanupCommand(commandInfo) {
39
- return __awaiter(this, void 0, void 0, function* () {
40
- const cleanupProcess = yield this.getCleanupProcess();
41
- cleanupProcess.send({
42
- messageType: "RemoveCleanCommand" /* CleanupProcessMessage.RemoveCleanCommand */,
43
- commandInfo,
44
- });
27
+ async removeCleanupCommand(commandInfo) {
28
+ const cleanupProcess = await this.getCleanupProcess();
29
+ cleanupProcess.send({
30
+ messageType: "RemoveCleanCommand" /* CleanupProcessMessage.RemoveCleanCommand */,
31
+ commandInfo,
45
32
  });
46
33
  }
47
- addRequest(requestInfo) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const cleanupProcess = yield this.getCleanupProcess();
50
- cleanupProcess.send({
51
- messageType: "AddRequest" /* CleanupProcessMessage.AddRequest */,
52
- requestInfo,
53
- });
34
+ async addRequest(requestInfo) {
35
+ const cleanupProcess = await this.getCleanupProcess();
36
+ cleanupProcess.send({
37
+ messageType: "AddRequest" /* CleanupProcessMessage.AddRequest */,
38
+ requestInfo,
54
39
  });
55
40
  }
56
- removeRequest(requestInfo) {
57
- return __awaiter(this, void 0, void 0, function* () {
58
- const cleanupProcess = yield this.getCleanupProcess();
59
- cleanupProcess.send({
60
- messageType: "RemoveRequest" /* CleanupProcessMessage.RemoveRequest */,
61
- requestInfo,
62
- });
41
+ async removeRequest(requestInfo) {
42
+ const cleanupProcess = await this.getCleanupProcess();
43
+ cleanupProcess.send({
44
+ messageType: "RemoveRequest" /* CleanupProcessMessage.RemoveRequest */,
45
+ requestInfo,
63
46
  });
64
47
  }
65
- addCleanupDeleteAction(filePath) {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- const cleanupProcess = yield this.getCleanupProcess();
68
- cleanupProcess.send({
69
- messageType: "AddDeleteFileAction" /* CleanupProcessMessage.AddDeleteFileAction */,
70
- filePath,
71
- });
48
+ async addCleanupDeleteAction(filePath) {
49
+ const cleanupProcess = await this.getCleanupProcess();
50
+ cleanupProcess.send({
51
+ messageType: "AddDeleteFileAction" /* CleanupProcessMessage.AddDeleteFileAction */,
52
+ filePath,
72
53
  });
73
54
  }
74
- removeCleanupDeleteAction(filePath) {
75
- return __awaiter(this, void 0, void 0, function* () {
76
- const cleanupProcess = yield this.getCleanupProcess();
77
- cleanupProcess.send({
78
- messageType: "RemoveDeleteFileAction" /* CleanupProcessMessage.RemoveDeleteFileAction */,
79
- filePath,
80
- });
55
+ async removeCleanupDeleteAction(filePath) {
56
+ const cleanupProcess = await this.getCleanupProcess();
57
+ cleanupProcess.send({
58
+ messageType: "RemoveDeleteFileAction" /* CleanupProcessMessage.RemoveDeleteFileAction */,
59
+ filePath,
81
60
  });
82
61
  }
83
- addCleanupJS(jsCommand) {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- const cleanupProcess = yield this.getCleanupProcess();
86
- cleanupProcess.send({
87
- messageType: "AddJSFileToRequire" /* CleanupProcessMessage.AddJSFileToRequire */,
88
- jsCommand,
89
- });
62
+ async addCleanupJS(jsCommand) {
63
+ const cleanupProcess = await this.getCleanupProcess();
64
+ cleanupProcess.send({
65
+ messageType: "AddJSFileToRequire" /* CleanupProcessMessage.AddJSFileToRequire */,
66
+ jsCommand,
90
67
  });
91
68
  }
92
- removeCleanupJS(jsCommand) {
93
- return __awaiter(this, void 0, void 0, function* () {
94
- const cleanupProcess = yield this.getCleanupProcess();
95
- cleanupProcess.send({
96
- messageType: "RemoveJSFileToRequire" /* CleanupProcessMessage.RemoveJSFileToRequire */,
97
- jsCommand,
98
- });
69
+ async removeCleanupJS(jsCommand) {
70
+ const cleanupProcess = await this.getCleanupProcess();
71
+ cleanupProcess.send({
72
+ messageType: "RemoveJSFileToRequire" /* CleanupProcessMessage.RemoveJSFileToRequire */,
73
+ jsCommand,
99
74
  });
100
75
  }
101
- addKillProcess(pid) {
102
- return __awaiter(this, void 0, void 0, function* () {
103
- const killSpawnCommandInfo = this.getKillProcesSpawnInfo(pid);
104
- yield this.addCleanupCommand(killSpawnCommandInfo);
105
- });
76
+ async addKillProcess(pid) {
77
+ const killSpawnCommandInfo = this.getKillProcesSpawnInfo(pid);
78
+ await this.addCleanupCommand(killSpawnCommandInfo);
106
79
  }
107
- removeKillProcess(pid) {
108
- return __awaiter(this, void 0, void 0, function* () {
109
- const killSpawnCommandInfo = this.getKillProcesSpawnInfo(pid);
110
- yield this.removeCleanupCommand(killSpawnCommandInfo);
111
- });
80
+ async removeKillProcess(pid) {
81
+ const killSpawnCommandInfo = this.getKillProcesSpawnInfo(pid);
82
+ await this.removeCleanupCommand(killSpawnCommandInfo);
112
83
  }
113
84
  setCleanupLogFile(filePath) {
114
85
  this.pathToCleanupLogFile = filePath;
@@ -186,6 +157,7 @@ class CleanupService {
186
157
  };
187
158
  }
188
159
  }
160
+ exports.CleanupService = CleanupService;
189
161
  CleanupService.CLEANUP_PROCESS_START_TIMEOUT = 10 * 1000;
190
162
  __decorate([
191
163
  (0, decorators_1.exported)("cleanupService")
@@ -193,6 +165,5 @@ __decorate([
193
165
  __decorate([
194
166
  (0, decorators_1.cache)()
195
167
  ], CleanupService.prototype, "getCleanupProcess", null);
196
- exports.CleanupService = CleanupService;
197
168
  yok_1.injector.register("cleanupService", CleanupService);
198
169
  //# sourceMappingURL=cleanup-service.js.map
@@ -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.CocoaPodsService = void 0;
13
4
  const os_1 = require("os");
@@ -38,81 +29,74 @@ class CocoaPodsService {
38
29
  getProjectPodfilePath(projectRoot) {
39
30
  return path.join(projectRoot, constants_1.PODFILE_NAME);
40
31
  }
41
- executePodInstall(projectRoot, xcodeProjPath) {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- this.$logger.info("Installing pods...");
44
- let podTool = this.$config.USE_POD_SANDBOX ? "sandbox-pod" : "pod";
45
- const args = ["install"];
46
- if (process.platform === "darwin" && process.arch === "arm64") {
47
- // check if pod is installed as an x86_64 binary or a native arm64 one
48
- // we run the following:
49
- // arch -x86_64 pod --version
50
- // if it's an arm64 binary, we'll get something like this as a result:
51
- // arch: posix_spawnp: pod: Bad CPU type in executable
52
- // in which case, we should run it natively.
53
- const res = yield this.$childProcess
54
- .exec("arch -x86_64 pod --version", null, {
55
- showStderr: true,
56
- })
57
- .then((res) => res.stdout + " " + res.stderr)
58
- .catch((err) => err.message);
59
- if (!res.includes("Bad CPU type in executable")) {
60
- this.$logger.trace("Running on arm64 but pod is installed under rosetta2 - running pod through rosetta2");
61
- args.unshift(podTool);
62
- args.unshift("-x86_64");
63
- podTool = "arch";
64
- }
32
+ async executePodInstall(projectRoot, xcodeProjPath) {
33
+ this.$logger.info("Installing pods...");
34
+ let podTool = this.$config.USE_POD_SANDBOX ? "sandbox-pod" : "pod";
35
+ const args = ["install"];
36
+ if (process.platform === "darwin" && process.arch === "arm64") {
37
+ // check if pod is installed as an x86_64 binary or a native arm64 one
38
+ // we run the following:
39
+ // arch -x86_64 pod --version
40
+ // if it's an arm64 binary, we'll get something like this as a result:
41
+ // arch: posix_spawnp: pod: Bad CPU type in executable
42
+ // in which case, we should run it natively.
43
+ const res = await this.$childProcess
44
+ .exec("arch -x86_64 pod --version", null, {
45
+ showStderr: true,
46
+ })
47
+ .then((res) => res.stdout + " " + res.stderr)
48
+ .catch((err) => err.message);
49
+ if (!res.includes("Bad CPU type in executable")) {
50
+ this.$logger.trace("Running on arm64 but pod is installed under rosetta2 - running pod through rosetta2");
51
+ args.unshift(podTool);
52
+ args.unshift("-x86_64");
53
+ podTool = "arch";
65
54
  }
66
- // cocoapods print a lot of non-error information on stderr. Pipe the `stderr` to `stdout`, so we won't polute CLI's stderr output.
67
- const podInstallResult = yield this.$childProcess.spawnFromEvent(podTool, args, "close", { cwd: projectRoot, stdio: ["pipe", process.stdout, process.stdout] }, { throwError: false });
68
- if (podInstallResult.exitCode !== 0) {
69
- // https://github.com/CocoaPods/CocoaPods/blob/92aaf0f1120d32f3487960b485fb69fcaf61486c/lib/cocoapods/resolver.rb#L498
70
- // TODO add article
71
- const versionResolutionHint = podInstallResult.exitCode === 31
72
- ? `For more information on resolving CocoaPod issues in NativeScript read.`
73
- : "";
74
- this.$errors.fail(`'${podTool} install' command failed.${podInstallResult.stderr ? " Error is: " + podInstallResult.stderr : ""}
55
+ }
56
+ // cocoapods print a lot of non-error information on stderr. Pipe the `stderr` to `stdout`, so we won't polute CLI's stderr output.
57
+ const podInstallResult = await this.$childProcess.spawnFromEvent(podTool, args, "close", { cwd: projectRoot, stdio: ["pipe", process.stdout, process.stdout] }, { throwError: false });
58
+ if (podInstallResult.exitCode !== 0) {
59
+ // https://github.com/CocoaPods/CocoaPods/blob/92aaf0f1120d32f3487960b485fb69fcaf61486c/lib/cocoapods/resolver.rb#L498
60
+ // TODO add article
61
+ const versionResolutionHint = podInstallResult.exitCode === 31
62
+ ? `For more information on resolving CocoaPod issues in NativeScript read.`
63
+ : "";
64
+ this.$errors.fail(`'${podTool} install' command failed.${podInstallResult.stderr ? " Error is: " + podInstallResult.stderr : ""}
75
65
  ${versionResolutionHint}`);
76
- }
77
- return podInstallResult;
78
- });
66
+ }
67
+ return podInstallResult;
79
68
  }
80
- mergePodXcconfigFile(projectData, platformData) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const podFilesRootDirName = path.join("Pods", "Target Support Files", `Pods-${projectData.projectName}`);
83
- const podFolder = path.join(platformData.projectRoot, podFilesRootDirName);
84
- if (this.$fs.exists(podFolder)) {
85
- const pluginsXcconfigFilePaths = this.$xcconfigService.getPluginsXcconfigFilePaths(platformData.projectRoot);
86
- for (const configuration in pluginsXcconfigFilePaths) {
87
- const pluginsXcconfigFilePath = pluginsXcconfigFilePaths[configuration];
88
- const podXcconfigFilePath = path.join(podFolder, `Pods-${projectData.projectName}.${configuration}.xcconfig`);
89
- yield this.$xcconfigService.mergeFiles(podXcconfigFilePath, pluginsXcconfigFilePath);
90
- }
69
+ async mergePodXcconfigFile(projectData, platformData) {
70
+ const podFilesRootDirName = path.join("Pods", "Target Support Files", `Pods-${projectData.projectName}`);
71
+ const podFolder = path.join(platformData.projectRoot, podFilesRootDirName);
72
+ if (this.$fs.exists(podFolder)) {
73
+ const pluginsXcconfigFilePaths = this.$xcconfigService.getPluginsXcconfigFilePaths(platformData.projectRoot);
74
+ for (const configuration in pluginsXcconfigFilePaths) {
75
+ const pluginsXcconfigFilePath = pluginsXcconfigFilePaths[configuration];
76
+ const podXcconfigFilePath = path.join(podFolder, `Pods-${projectData.projectName}.${configuration}.xcconfig`);
77
+ await this.$xcconfigService.mergeFiles(podXcconfigFilePath, pluginsXcconfigFilePath);
91
78
  }
92
- });
79
+ }
93
80
  }
94
- applyPodfileFromAppResources(projectData, platformData) {
95
- return __awaiter(this, void 0, void 0, function* () {
96
- const { projectRoot, normalizedPlatformName } = platformData;
97
- const mainPodfilePath = path.join(projectData.appResourcesDirectoryPath, normalizedPlatformName, constants_1.PODFILE_NAME);
98
- const projectPodfilePath = this.getProjectPodfilePath(projectRoot);
99
- if (this.$fs.exists(projectPodfilePath) ||
100
- this.$fs.exists(mainPodfilePath)) {
101
- yield this.applyPodfileToProject(constants_1.NS_BASE_PODFILE, mainPodfilePath, projectData, platformData);
102
- }
103
- });
81
+ async applyPodfileFromAppResources(projectData, platformData) {
82
+ const { projectRoot, normalizedPlatformName } = platformData;
83
+ const mainPodfilePath = path.join(projectData.appResourcesDirectoryPath, normalizedPlatformName, constants_1.PODFILE_NAME);
84
+ const projectPodfilePath = this.getProjectPodfilePath(projectRoot);
85
+ if (this.$fs.exists(projectPodfilePath) ||
86
+ this.$fs.exists(mainPodfilePath)) {
87
+ await this.applyPodfileToProject(constants_1.NS_BASE_PODFILE, mainPodfilePath, projectData, platformData);
88
+ }
104
89
  }
105
- applyPodfileArchExclusions(projectData, platformData) {
106
- return __awaiter(this, void 0, void 0, function* () {
107
- const xcodeVersionData = yield this.$xcodeSelectService.getXcodeVersion();
108
- // only apply EXCLUDED_ARCHS workaround on XCode 12
109
- if (+xcodeVersionData.major !== 12) {
110
- return;
111
- }
112
- const { projectRoot } = platformData;
113
- const exclusionsPodfile = path.join(projectRoot, "Podfile-exclusions");
114
- if (!this.$fs.exists(exclusionsPodfile)) {
115
- const exclusions = `
90
+ async applyPodfileArchExclusions(projectData, platformData) {
91
+ const xcodeVersionData = await this.$xcodeSelectService.getXcodeVersion();
92
+ // only apply EXCLUDED_ARCHS workaround on XCode 12
93
+ if (+xcodeVersionData.major !== 12) {
94
+ return;
95
+ }
96
+ const { projectRoot } = platformData;
97
+ const exclusionsPodfile = path.join(projectRoot, "Podfile-exclusions");
98
+ if (!this.$fs.exists(exclusionsPodfile)) {
99
+ const exclusions = `
116
100
  post_install do |installer|
117
101
  installer.pods_project.build_configurations.each do |config|
118
102
  config.build_settings.delete "VALID_ARCHS"
@@ -121,78 +105,73 @@ post_install do |installer|
121
105
  config.build_settings["EXCLUDED_ARCHS[sdk=iphoneos*]"] = "i386 armv6 armv7 armv7s armv8 x86_64"
122
106
  end
123
107
  end`.trim();
124
- this.$fs.writeFile(exclusionsPodfile, exclusions);
125
- }
126
- yield this.applyPodfileToProject("NativeScript-CLI-Architecture-Exclusions", exclusionsPodfile, projectData, platformData);
127
- // clean up
128
- this.$fs.deleteFile(exclusionsPodfile);
129
- });
108
+ this.$fs.writeFile(exclusionsPodfile, exclusions);
109
+ }
110
+ await this.applyPodfileToProject("NativeScript-CLI-Architecture-Exclusions", exclusionsPodfile, projectData, platformData);
111
+ // clean up
112
+ this.$fs.deleteFile(exclusionsPodfile);
130
113
  }
131
- applyPodfileFromExtensions(projectData, platformData) {
132
- return __awaiter(this, void 0, void 0, function* () {
133
- const extensionFolderPath = path.join(projectData.getAppResourcesDirectoryPath(), constants.iOSAppResourcesFolderName, constants.NATIVE_EXTENSION_FOLDER);
134
- const projectPodfilePath = this.getProjectPodfilePath(platformData.projectRoot);
135
- if (!this.$fs.exists(extensionFolderPath) ||
136
- !this.$fs.exists(projectPodfilePath)) {
137
- return;
114
+ async applyPodfileFromExtensions(projectData, platformData) {
115
+ const extensionFolderPath = path.join(projectData.getAppResourcesDirectoryPath(), constants.iOSAppResourcesFolderName, constants.NATIVE_EXTENSION_FOLDER);
116
+ const projectPodfilePath = this.getProjectPodfilePath(platformData.projectRoot);
117
+ if (!this.$fs.exists(extensionFolderPath) ||
118
+ !this.$fs.exists(projectPodfilePath)) {
119
+ return;
120
+ }
121
+ let projectPodFileContent = this.$fs.readText(projectPodfilePath);
122
+ const extensionsPodfile = this.$fs
123
+ .readDirectory(extensionFolderPath)
124
+ .filter((name) => {
125
+ const extensionPath = path.join(extensionFolderPath, name);
126
+ const stats = this.$fs.getFsStats(extensionPath);
127
+ return stats.isDirectory() && !name.startsWith(".");
128
+ })
129
+ .map((name) => ({
130
+ targetName: name,
131
+ podfilePath: path.join(extensionFolderPath, name, constants.PODFILE_NAME),
132
+ }));
133
+ extensionsPodfile.forEach(({ targetName, podfilePath }) => {
134
+ // Remove the data between #Begin Podfile and #EndPodfile
135
+ const regExpToRemove = new RegExp(`${this.getExtensionPodfileHeader(podfilePath, targetName)}[\\s\\S]*?${this.getExtensionPodfileEnd()}`, "mg");
136
+ projectPodFileContent = projectPodFileContent.replace(regExpToRemove, "");
137
+ if (this.$fs.exists(podfilePath)) {
138
+ const podfileContentWithoutTarget = this.$fs.readText(podfilePath);
139
+ const podFileContent = this.getExtensionPodfileHeader(podfilePath, targetName) +
140
+ os_1.EOL +
141
+ podfileContentWithoutTarget +
142
+ os_1.EOL +
143
+ this.getExtensionPodfileEnd();
144
+ projectPodFileContent += os_1.EOL + podFileContent;
138
145
  }
139
- let projectPodFileContent = this.$fs.readText(projectPodfilePath);
140
- const extensionsPodfile = this.$fs
141
- .readDirectory(extensionFolderPath)
142
- .filter((name) => {
143
- const extensionPath = path.join(extensionFolderPath, name);
144
- const stats = this.$fs.getFsStats(extensionPath);
145
- return stats.isDirectory() && !name.startsWith(".");
146
- })
147
- .map((name) => ({
148
- targetName: name,
149
- podfilePath: path.join(extensionFolderPath, name, constants.PODFILE_NAME),
150
- }));
151
- extensionsPodfile.forEach(({ targetName, podfilePath }) => {
152
- // Remove the data between #Begin Podfile and #EndPodfile
153
- const regExpToRemove = new RegExp(`${this.getExtensionPodfileHeader(podfilePath, targetName)}[\\s\\S]*?${this.getExtensionPodfileEnd()}`, "mg");
154
- projectPodFileContent = projectPodFileContent.replace(regExpToRemove, "");
155
- if (this.$fs.exists(podfilePath)) {
156
- const podfileContentWithoutTarget = this.$fs.readText(podfilePath);
157
- const podFileContent = this.getExtensionPodfileHeader(podfilePath, targetName) +
158
- os_1.EOL +
159
- podfileContentWithoutTarget +
160
- os_1.EOL +
161
- this.getExtensionPodfileEnd();
162
- projectPodFileContent += os_1.EOL + podFileContent;
163
- }
164
- });
165
- this.$fs.writeFile(projectPodfilePath, projectPodFileContent);
166
146
  });
147
+ this.$fs.writeFile(projectPodfilePath, projectPodFileContent);
167
148
  }
168
- applyPodfileToProject(moduleName, podfilePath, projectData, platformData) {
169
- return __awaiter(this, void 0, void 0, function* () {
170
- const nativeProjectPath = platformData.projectRoot;
171
- if (!this.$fs.exists(podfilePath)) {
172
- this.removePodfileFromProject(moduleName, podfilePath, projectData, nativeProjectPath);
173
- return;
174
- }
175
- const { podfileContent, replacedFunctions, podfilePlatformData } = this.buildPodfileContent(podfilePath, moduleName, projectData, platformData);
176
- const pathToProjectPodfile = this.getProjectPodfilePath(nativeProjectPath);
177
- const projectPodfileContent = this.$fs.exists(pathToProjectPodfile)
178
- ? this.$fs.readText(pathToProjectPodfile).trim()
149
+ async applyPodfileToProject(moduleName, podfilePath, projectData, platformData) {
150
+ const nativeProjectPath = platformData.projectRoot;
151
+ if (!this.$fs.exists(podfilePath)) {
152
+ this.removePodfileFromProject(moduleName, podfilePath, projectData, nativeProjectPath);
153
+ return;
154
+ }
155
+ const { podfileContent, replacedFunctions, podfilePlatformData } = this.buildPodfileContent(podfilePath, moduleName, projectData, platformData);
156
+ const pathToProjectPodfile = this.getProjectPodfilePath(nativeProjectPath);
157
+ const projectPodfileContent = this.$fs.exists(pathToProjectPodfile)
158
+ ? this.$fs.readText(pathToProjectPodfile).trim()
159
+ : "";
160
+ if (projectPodfileContent.indexOf(podfileContent) === -1) {
161
+ // Remove old occurences of the plugin from the project's Podfile.
162
+ this.removePodfileFromProject(moduleName, podfilePath, projectData, nativeProjectPath);
163
+ let finalPodfileContent = this.$fs.exists(pathToProjectPodfile)
164
+ ? this.getPodfileContentWithoutTarget(projectData, this.$fs.readText(pathToProjectPodfile))
179
165
  : "";
180
- if (projectPodfileContent.indexOf(podfileContent) === -1) {
181
- // Remove old occurences of the plugin from the project's Podfile.
182
- this.removePodfileFromProject(moduleName, podfilePath, projectData, nativeProjectPath);
183
- let finalPodfileContent = this.$fs.exists(pathToProjectPodfile)
184
- ? this.getPodfileContentWithoutTarget(projectData, this.$fs.readText(pathToProjectPodfile))
185
- : "";
186
- if (podfileContent.indexOf(CocoaPodsService.PODFILE_POST_INSTALL_SECTION_NAME) !== -1) {
187
- finalPodfileContent = this.addPostInstallHook(replacedFunctions, finalPodfileContent, podfileContent);
188
- }
189
- if (podfilePlatformData) {
190
- finalPodfileContent = this.$cocoaPodsPlatformManager.addPlatformSection(projectData, podfilePlatformData, finalPodfileContent);
191
- }
192
- finalPodfileContent = `${finalPodfileContent.trim()}${os_1.EOL}${os_1.EOL}${podfileContent.trim()}${os_1.EOL}`;
193
- this.saveProjectPodfile(projectData, finalPodfileContent, nativeProjectPath);
166
+ if (podfileContent.indexOf(CocoaPodsService.PODFILE_POST_INSTALL_SECTION_NAME) !== -1) {
167
+ finalPodfileContent = this.addPostInstallHook(replacedFunctions, finalPodfileContent, podfileContent);
194
168
  }
195
- });
169
+ if (podfilePlatformData) {
170
+ finalPodfileContent = this.$cocoaPodsPlatformManager.addPlatformSection(projectData, podfilePlatformData, finalPodfileContent);
171
+ }
172
+ finalPodfileContent = `${finalPodfileContent.trim()}${os_1.EOL}${os_1.EOL}${podfileContent.trim()}${os_1.EOL}`;
173
+ this.saveProjectPodfile(projectData, finalPodfileContent, nativeProjectPath);
174
+ }
196
175
  }
197
176
  removePodfileFromProject(moduleName, podfilePath, projectData, projectRoot) {
198
177
  if (this.$fs.exists(this.getProjectPodfilePath(projectRoot))) {
@@ -367,8 +346,8 @@ end`.trim();
367
346
  return pods;
368
347
  }
369
348
  }
349
+ exports.CocoaPodsService = CocoaPodsService;
370
350
  CocoaPodsService.PODFILE_POST_INSTALL_SECTION_NAME = "post_install";
371
351
  CocoaPodsService.INSTALLER_BLOCK_PARAMETER_NAME = "installer";
372
- exports.CocoaPodsService = CocoaPodsService;
373
352
  yok_1.injector.register("cocoapodsService", CocoaPodsService);
374
353
  //# sourceMappingURL=cocoapods-service.js.map
@@ -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.DeviceInstallAppService = void 0;
13
4
  const constants_1 = require("../../constants");
@@ -24,72 +15,64 @@ class DeviceInstallAppService {
24
15
  this.$projectDataService = $projectDataService;
25
16
  this.$platformsDataService = $platformsDataService;
26
17
  }
27
- installOnDevice(device, buildData, packageFile) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- this.$logger.info(`Installing on device ${device.deviceInfo.identifier}...`);
30
- const platform = device.deviceInfo.platform.toLowerCase();
31
- const projectData = this.$projectDataService.getProjectData(buildData.projectDir);
32
- const platformData = this.$platformsDataService.getPlatformData(platform, projectData);
33
- yield this.$analyticsService.trackEventActionInGoogleAnalytics({
34
- action: "Deploy" /* TrackActionNames.Deploy */,
35
- device,
36
- projectDir: projectData.projectDir,
37
- });
38
- if (!packageFile) {
39
- packageFile = yield this.$buildArtifactsService.getLatestAppPackagePath(platformData, buildData);
40
- }
41
- yield platformData.platformProjectService.cleanDeviceTempFolder(device.deviceInfo.identifier, projectData);
42
- const appIdentifier = projectData.projectIdentifiers[platform];
43
- const outputFilePath = buildData.outputPath || platformData.getBuildOutputPath(buildData);
44
- yield device.applicationManager.reinstallApplication(appIdentifier, packageFile, buildData);
45
- yield this.updateHashesOnDevice({
46
- device,
47
- appIdentifier,
48
- outputFilePath,
49
- platformData,
50
- });
51
- if (!buildData.release) {
52
- yield this.$buildInfoFileService.saveDeviceBuildInfo(device, projectData, outputFilePath);
53
- }
54
- this.$logger.info(`Successfully installed on device with identifier '${device.deviceInfo.identifier}'.`);
18
+ async installOnDevice(device, buildData, packageFile) {
19
+ this.$logger.info(`Installing on device ${device.deviceInfo.identifier}...`);
20
+ const platform = device.deviceInfo.platform.toLowerCase();
21
+ const projectData = this.$projectDataService.getProjectData(buildData.projectDir);
22
+ const platformData = this.$platformsDataService.getPlatformData(platform, projectData);
23
+ await this.$analyticsService.trackEventActionInGoogleAnalytics({
24
+ action: "Deploy" /* TrackActionNames.Deploy */,
25
+ device,
26
+ projectDir: projectData.projectDir,
55
27
  });
56
- }
57
- installOnDeviceIfNeeded(device, buildData, packageFile) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- const shouldInstall = yield this.shouldInstall(device, buildData);
60
- if (shouldInstall) {
61
- yield this.installOnDevice(device, buildData, packageFile);
62
- }
28
+ if (!packageFile) {
29
+ packageFile = await this.$buildArtifactsService.getLatestAppPackagePath(platformData, buildData);
30
+ }
31
+ await platformData.platformProjectService.cleanDeviceTempFolder(device.deviceInfo.identifier, projectData);
32
+ const appIdentifier = projectData.projectIdentifiers[platform];
33
+ const outputFilePath = buildData.outputPath || platformData.getBuildOutputPath(buildData);
34
+ await device.applicationManager.reinstallApplication(appIdentifier, packageFile, buildData);
35
+ await this.updateHashesOnDevice({
36
+ device,
37
+ appIdentifier,
38
+ outputFilePath,
39
+ platformData,
63
40
  });
41
+ if (!buildData.release) {
42
+ await this.$buildInfoFileService.saveDeviceBuildInfo(device, projectData, outputFilePath);
43
+ }
44
+ this.$logger.info(`Successfully installed on device with identifier '${device.deviceInfo.identifier}'.`);
64
45
  }
65
- shouldInstall(device, buildData) {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- const projectData = this.$projectDataService.getProjectData(buildData.projectDir);
68
- const platformData = this.$platformsDataService.getPlatformData(device.deviceInfo.platform, projectData);
69
- const platform = device.deviceInfo.platform;
70
- if (!(yield device.applicationManager.isApplicationInstalled(projectData.projectIdentifiers[platform.toLowerCase()]))) {
71
- return true;
72
- }
73
- const deviceBuildInfo = yield this.$buildInfoFileService.getDeviceBuildInfo(device, projectData);
74
- const localBuildInfo = this.$buildInfoFileService.getLocalBuildInfo(platformData, Object.assign(Object.assign({}, buildData), { buildForDevice: !device.isEmulator }));
75
- return (!localBuildInfo ||
76
- !deviceBuildInfo ||
77
- deviceBuildInfo.buildTime !== localBuildInfo.buildTime);
78
- });
46
+ async installOnDeviceIfNeeded(device, buildData, packageFile) {
47
+ const shouldInstall = await this.shouldInstall(device, buildData);
48
+ if (shouldInstall) {
49
+ await this.installOnDevice(device, buildData, packageFile);
50
+ }
79
51
  }
80
- updateHashesOnDevice(data) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const { device, appIdentifier, platformData, outputFilePath } = data;
83
- if (!this.$mobileHelper.isAndroidPlatform(platformData.normalizedPlatformName)) {
84
- return;
85
- }
86
- let hashes = {};
87
- const hashesFilePath = path.join(outputFilePath, constants_1.HASHES_FILE_NAME);
88
- if (this.$fs.exists(hashesFilePath)) {
89
- hashes = this.$fs.readJson(hashesFilePath);
90
- }
91
- yield device.fileSystem.updateHashesOnDevice(hashes, appIdentifier);
92
- });
52
+ async shouldInstall(device, buildData) {
53
+ const projectData = this.$projectDataService.getProjectData(buildData.projectDir);
54
+ const platformData = this.$platformsDataService.getPlatformData(device.deviceInfo.platform, projectData);
55
+ const platform = device.deviceInfo.platform;
56
+ if (!(await device.applicationManager.isApplicationInstalled(projectData.projectIdentifiers[platform.toLowerCase()]))) {
57
+ return true;
58
+ }
59
+ const deviceBuildInfo = await this.$buildInfoFileService.getDeviceBuildInfo(device, projectData);
60
+ const localBuildInfo = this.$buildInfoFileService.getLocalBuildInfo(platformData, { ...buildData, buildForDevice: !device.isEmulator });
61
+ return (!localBuildInfo ||
62
+ !deviceBuildInfo ||
63
+ deviceBuildInfo.buildTime !== localBuildInfo.buildTime);
64
+ }
65
+ async updateHashesOnDevice(data) {
66
+ const { device, appIdentifier, platformData, outputFilePath } = data;
67
+ if (!this.$mobileHelper.isAndroidPlatform(platformData.normalizedPlatformName)) {
68
+ return;
69
+ }
70
+ let hashes = {};
71
+ const hashesFilePath = path.join(outputFilePath, constants_1.HASHES_FILE_NAME);
72
+ if (this.$fs.exists(hashesFilePath)) {
73
+ hashes = this.$fs.readJson(hashesFilePath);
74
+ }
75
+ await device.fileSystem.updateHashesOnDevice(hashes, appIdentifier);
93
76
  }
94
77
  }
95
78
  exports.DeviceInstallAppService = DeviceInstallAppService;