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.AndroidPluginBuildService = void 0;
19
10
  const path = require("path");
@@ -60,28 +51,26 @@ class AndroidPluginBuildService {
60
51
  const manifest = path.join(platformsDir, constants_1.MANIFEST_FILE_NAME);
61
52
  return this.$fs.exists(manifest) ? manifest : null;
62
53
  }
63
- updateManifestContent(oldManifestContent, defaultPackageName) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- let xml = yield this.getXml(oldManifestContent);
66
- let packageName = defaultPackageName;
67
- // if the manifest file is full-featured and declares settings inside the manifest scope
68
- if (xml["manifest"]) {
69
- if (xml["manifest"]["$"]["package"]) {
70
- packageName = xml["manifest"]["$"]["package"];
71
- }
72
- // set the xml as the value to iterate over its properties
73
- xml = xml["manifest"];
74
- }
75
- // if the manifest file doesn't have a <manifest> scope, only the first setting will be picked up
76
- const newManifest = { manifest: {} };
77
- for (const prop in xml) {
78
- newManifest.manifest[prop] = xml[prop];
54
+ async updateManifestContent(oldManifestContent, defaultPackageName) {
55
+ let xml = await this.getXml(oldManifestContent);
56
+ let packageName = defaultPackageName;
57
+ // if the manifest file is full-featured and declares settings inside the manifest scope
58
+ if (xml["manifest"]) {
59
+ if (xml["manifest"]["$"]["package"]) {
60
+ packageName = xml["manifest"]["$"]["package"];
79
61
  }
80
- newManifest.manifest["$"]["package"] = packageName;
81
- const xmlBuilder = new xml2js_1.Builder();
82
- const newManifestContent = xmlBuilder.buildObject(newManifest);
83
- return newManifestContent;
84
- });
62
+ // set the xml as the value to iterate over its properties
63
+ xml = xml["manifest"];
64
+ }
65
+ // if the manifest file doesn't have a <manifest> scope, only the first setting will be picked up
66
+ const newManifest = { manifest: {} };
67
+ for (const prop in xml) {
68
+ newManifest.manifest[prop] = xml[prop];
69
+ }
70
+ newManifest.manifest["$"]["package"] = packageName;
71
+ const xmlBuilder = new xml2js_1.Builder();
72
+ const newManifestContent = xmlBuilder.buildObject(newManifest);
73
+ return newManifestContent;
85
74
  }
86
75
  createManifestContent(packageName) {
87
76
  const newManifest = {
@@ -92,18 +81,16 @@ class AndroidPluginBuildService {
92
81
  const newManifestContent = xmlBuilder.buildObject(newManifest);
93
82
  return newManifestContent;
94
83
  }
95
- getXml(stringContent) {
96
- return __awaiter(this, void 0, void 0, function* () {
97
- const promise = new Promise((resolve, reject) => (0, xml2js_1.parseString)(stringContent, (err, result) => {
98
- if (err) {
99
- reject(err);
100
- }
101
- else {
102
- resolve(result);
103
- }
104
- }));
105
- return promise;
106
- });
84
+ async getXml(stringContent) {
85
+ const promise = new Promise((resolve, reject) => (0, xml2js_1.parseString)(stringContent, (err, result) => {
86
+ if (err) {
87
+ reject(err);
88
+ }
89
+ else {
90
+ resolve(result);
91
+ }
92
+ }));
93
+ return promise;
107
94
  }
108
95
  getIncludeGradleCompileDependenciesScope(includeGradleFileContent) {
109
96
  const indexOfDependenciesScope = includeGradleFileContent.indexOf("dependencies");
@@ -156,41 +143,39 @@ class AndroidPluginBuildService {
156
143
  * @param {string} options.aarOutputDir - The path where the aar should be copied after a successful build.
157
144
  * @param {string} options.tempPluginDirPath - The path where the android plugin will be built.
158
145
  */
159
- buildAar(options) {
160
- return __awaiter(this, void 0, void 0, function* () {
161
- this.validateOptions(options);
162
- const manifestFilePath = this.getManifest(options.platformsAndroidDirPath);
163
- const androidSourceDirectories = this.getAndroidSourceDirectories(options.platformsAndroidDirPath);
164
- const shortPluginName = (0, helpers_1.getShortPluginName)(options.pluginName);
165
- const pluginTempDir = path.join(options.tempPluginDirPath, shortPluginName);
166
- const pluginSourceFileHashesInfo = yield this.getSourceFilesHashes(options.platformsAndroidDirPath, shortPluginName);
167
- const shouldBuildAar = yield this.shouldBuildAar({
168
- manifestFilePath,
169
- androidSourceDirectories,
170
- pluginTempDir,
171
- pluginSourceDir: options.platformsAndroidDirPath,
172
- shortPluginName,
173
- fileHashesInfo: pluginSourceFileHashesInfo,
174
- });
175
- if (shouldBuildAar) {
176
- this.cleanPluginDir(pluginTempDir);
177
- const pluginTempMainSrcDir = path.join(pluginTempDir, "src", "main");
178
- yield this.updateManifest(manifestFilePath, pluginTempMainSrcDir, shortPluginName);
179
- this.copySourceSetDirectories(androidSourceDirectories, pluginTempMainSrcDir);
180
- yield this.setupGradle(pluginTempDir, options.platformsAndroidDirPath, options.projectDir, options.pluginName);
181
- yield this.buildPlugin({
182
- gradlePath: options.gradlePath,
183
- gradleArgs: options.gradleArgs,
184
- pluginDir: pluginTempDir,
185
- pluginName: options.pluginName,
186
- projectDir: options.projectDir,
187
- });
188
- this.$watchIgnoreListService.addFileToIgnoreList(path.join(options.aarOutputDir, `${shortPluginName}.aar`));
189
- this.copyAar(shortPluginName, pluginTempDir, options.aarOutputDir);
190
- this.writePluginHashInfo(pluginSourceFileHashesInfo, pluginTempDir);
191
- }
192
- return shouldBuildAar;
146
+ async buildAar(options) {
147
+ this.validateOptions(options);
148
+ const manifestFilePath = this.getManifest(options.platformsAndroidDirPath);
149
+ const androidSourceDirectories = this.getAndroidSourceDirectories(options.platformsAndroidDirPath);
150
+ const shortPluginName = (0, helpers_1.getShortPluginName)(options.pluginName);
151
+ const pluginTempDir = path.join(options.tempPluginDirPath, shortPluginName);
152
+ const pluginSourceFileHashesInfo = await this.getSourceFilesHashes(options.platformsAndroidDirPath, shortPluginName);
153
+ const shouldBuildAar = await this.shouldBuildAar({
154
+ manifestFilePath,
155
+ androidSourceDirectories,
156
+ pluginTempDir,
157
+ pluginSourceDir: options.platformsAndroidDirPath,
158
+ shortPluginName,
159
+ fileHashesInfo: pluginSourceFileHashesInfo,
193
160
  });
161
+ if (shouldBuildAar) {
162
+ this.cleanPluginDir(pluginTempDir);
163
+ const pluginTempMainSrcDir = path.join(pluginTempDir, "src", "main");
164
+ await this.updateManifest(manifestFilePath, pluginTempMainSrcDir, shortPluginName);
165
+ this.copySourceSetDirectories(androidSourceDirectories, pluginTempMainSrcDir);
166
+ await this.setupGradle(pluginTempDir, options.platformsAndroidDirPath, options.projectDir, options.pluginName);
167
+ await this.buildPlugin({
168
+ gradlePath: options.gradlePath,
169
+ gradleArgs: options.gradleArgs,
170
+ pluginDir: pluginTempDir,
171
+ pluginName: options.pluginName,
172
+ projectDir: options.projectDir,
173
+ });
174
+ this.$watchIgnoreListService.addFileToIgnoreList(path.join(options.aarOutputDir, `${shortPluginName}.aar`));
175
+ this.copyAar(shortPluginName, pluginTempDir, options.aarOutputDir);
176
+ this.writePluginHashInfo(pluginSourceFileHashesInfo, pluginTempDir);
177
+ }
178
+ return shouldBuildAar;
194
179
  }
195
180
  cleanPluginDir(pluginTempDir) {
196
181
  // In case plugin was already built in the current process, we need to clean the old sources as they may break the new build.
@@ -206,50 +191,46 @@ class AndroidPluginBuildService {
206
191
  const buildDataFile = this.getPathToPluginBuildDataFile(pluginTempDir);
207
192
  this.$fs.writeJson(buildDataFile, fileHashesInfo);
208
193
  }
209
- shouldBuildAar(opts) {
210
- return __awaiter(this, void 0, void 0, function* () {
211
- let shouldBuildAar = !!opts.manifestFilePath || !!opts.androidSourceDirectories.length;
212
- if (shouldBuildAar &&
213
- this.$fs.exists(opts.pluginTempDir) &&
214
- this.$fs.exists(path.join(opts.pluginSourceDir, `${opts.shortPluginName}.aar`))) {
215
- const buildDataFile = this.getPathToPluginBuildDataFile(opts.pluginTempDir);
216
- if (this.$fs.exists(buildDataFile)) {
217
- const oldHashes = this.$fs.readJson(buildDataFile);
218
- shouldBuildAar = this.$filesHashService.hasChangesInShasums(oldHashes, opts.fileHashesInfo);
219
- }
194
+ async shouldBuildAar(opts) {
195
+ let shouldBuildAar = !!opts.manifestFilePath || !!opts.androidSourceDirectories.length;
196
+ if (shouldBuildAar &&
197
+ this.$fs.exists(opts.pluginTempDir) &&
198
+ this.$fs.exists(path.join(opts.pluginSourceDir, `${opts.shortPluginName}.aar`))) {
199
+ const buildDataFile = this.getPathToPluginBuildDataFile(opts.pluginTempDir);
200
+ if (this.$fs.exists(buildDataFile)) {
201
+ const oldHashes = this.$fs.readJson(buildDataFile);
202
+ shouldBuildAar = this.$filesHashService.hasChangesInShasums(oldHashes, opts.fileHashesInfo);
220
203
  }
221
- return shouldBuildAar;
222
- });
204
+ }
205
+ return shouldBuildAar;
223
206
  }
224
207
  getPathToPluginBuildDataFile(pluginDir) {
225
208
  return path.join(pluginDir, constants_1.PLUGIN_BUILD_DATA_FILENAME);
226
209
  }
227
- updateManifest(manifestFilePath, pluginTempMainSrcDir, shortPluginName) {
228
- return __awaiter(this, void 0, void 0, function* () {
229
- let updatedManifestContent;
230
- this.$fs.ensureDirectoryExists(pluginTempMainSrcDir);
231
- const defaultPackageName = "org.nativescript." + shortPluginName;
232
- if (manifestFilePath) {
233
- let androidManifestContent;
234
- try {
235
- androidManifestContent = this.$fs.readText(manifestFilePath);
236
- }
237
- catch (err) {
238
- this.$errors.fail(`Failed to fs.readFileSync the manifest file located at ${manifestFilePath}. Error is: ${err.toString()}`);
239
- }
240
- updatedManifestContent = yield this.updateManifestContent(androidManifestContent, defaultPackageName);
241
- }
242
- else {
243
- updatedManifestContent = this.createManifestContent(defaultPackageName);
244
- }
245
- const pathToTempAndroidManifest = path.join(pluginTempMainSrcDir, constants_1.MANIFEST_FILE_NAME);
210
+ async updateManifest(manifestFilePath, pluginTempMainSrcDir, shortPluginName) {
211
+ let updatedManifestContent;
212
+ this.$fs.ensureDirectoryExists(pluginTempMainSrcDir);
213
+ const defaultPackageName = "org.nativescript." + shortPluginName;
214
+ if (manifestFilePath) {
215
+ let androidManifestContent;
246
216
  try {
247
- this.$fs.writeFile(pathToTempAndroidManifest, updatedManifestContent);
217
+ androidManifestContent = this.$fs.readText(manifestFilePath);
248
218
  }
249
- catch (e) {
250
- this.$errors.fail(`Failed to write the updated AndroidManifest in the new location - ${pathToTempAndroidManifest}. Error is: ${e.toString()}`);
219
+ catch (err) {
220
+ this.$errors.fail(`Failed to fs.readFileSync the manifest file located at ${manifestFilePath}. Error is: ${err.toString()}`);
251
221
  }
252
- });
222
+ updatedManifestContent = await this.updateManifestContent(androidManifestContent, defaultPackageName);
223
+ }
224
+ else {
225
+ updatedManifestContent = this.createManifestContent(defaultPackageName);
226
+ }
227
+ const pathToTempAndroidManifest = path.join(pluginTempMainSrcDir, constants_1.MANIFEST_FILE_NAME);
228
+ try {
229
+ this.$fs.writeFile(pathToTempAndroidManifest, updatedManifestContent);
230
+ }
231
+ catch (e) {
232
+ this.$errors.fail(`Failed to write the updated AndroidManifest in the new location - ${pathToTempAndroidManifest}. Error is: ${e.toString()}`);
233
+ }
253
234
  }
254
235
  copySourceSetDirectories(androidSourceSetDirectories, pluginTempMainSrcDir) {
255
236
  for (const dir of androidSourceSetDirectories) {
@@ -259,69 +240,63 @@ class AndroidPluginBuildService {
259
240
  this.$fs.copyFile(path.join(dir, "*"), destination);
260
241
  }
261
242
  }
262
- setupGradle(pluginTempDir, platformsAndroidDirPath, projectDir, pluginName) {
263
- return __awaiter(this, void 0, void 0, function* () {
264
- const gradleTemplatePath = path.resolve(path.join(__dirname, "../../vendor/gradle-plugin"));
265
- const allGradleTemplateFiles = path.join(gradleTemplatePath, "*");
266
- const buildGradlePath = path.join(pluginTempDir, "build.gradle");
267
- const settingsGradlePath = path.join(pluginTempDir, "settings.gradle");
268
- this.$fs.copyFile(allGradleTemplateFiles, pluginTempDir);
269
- this.addCompileDependencies(platformsAndroidDirPath, buildGradlePath);
270
- const runtimeGradleVersions = yield this.getRuntimeGradleVersions(projectDir);
271
- this.replaceGradleVersion(pluginTempDir, runtimeGradleVersions.gradleVersion);
272
- this.replaceGradleAndroidPluginVersion(buildGradlePath, runtimeGradleVersions.gradleAndroidPluginVersion);
273
- this.replaceFileContent(buildGradlePath, "{{pluginName}}", pluginName);
274
- this.replaceFileContent(settingsGradlePath, "{{pluginName}}", pluginName);
275
- // gets the package from the AndroidManifest to use as the namespace or fallback to the `org.nativescript.${shortPluginName}`
276
- const shortPluginName = (0, helpers_1.getShortPluginName)(pluginName);
277
- const manifestPath = path.join(pluginTempDir, "src", "main", "AndroidManifest.xml");
278
- const manifestContent = this.$fs.readText(manifestPath);
279
- let packageName = `org.nativescript.${shortPluginName}`;
280
- const xml = yield this.getXml(manifestContent);
281
- if (xml["manifest"]) {
282
- if (xml["manifest"]["$"]["package"]) {
283
- packageName = xml["manifest"]["$"]["package"];
284
- }
285
- }
286
- this.replaceFileContent(buildGradlePath, "{{pluginNamespace}}", packageName);
287
- });
288
- }
289
- getRuntimeGradleVersions(projectDir) {
290
- return __awaiter(this, void 0, void 0, function* () {
291
- let runtimeGradleVersions = null;
292
- if (projectDir) {
293
- const projectData = this.$projectDataService.getProjectData(projectDir);
294
- const platformData = this.$platformsDataService.getPlatformData(this.$devicePlatformsConstants.Android, projectData);
295
- const projectRuntimeVersion = platformData.platformProjectService.getFrameworkVersion(projectData);
296
- runtimeGradleVersions = yield this.getGradleVersions(projectRuntimeVersion);
297
- this.$logger.trace(`Got gradle versions ${JSON.stringify(runtimeGradleVersions)} from runtime v${projectRuntimeVersion}`);
243
+ async setupGradle(pluginTempDir, platformsAndroidDirPath, projectDir, pluginName) {
244
+ const gradleTemplatePath = path.resolve(path.join(__dirname, "../../vendor/gradle-plugin"));
245
+ const allGradleTemplateFiles = path.join(gradleTemplatePath, "*");
246
+ const buildGradlePath = path.join(pluginTempDir, "build.gradle");
247
+ const settingsGradlePath = path.join(pluginTempDir, "settings.gradle");
248
+ this.$fs.copyFile(allGradleTemplateFiles, pluginTempDir);
249
+ this.addCompileDependencies(platformsAndroidDirPath, buildGradlePath);
250
+ const runtimeGradleVersions = await this.getRuntimeGradleVersions(projectDir);
251
+ this.replaceGradleVersion(pluginTempDir, runtimeGradleVersions.gradleVersion);
252
+ this.replaceGradleAndroidPluginVersion(buildGradlePath, runtimeGradleVersions.gradleAndroidPluginVersion);
253
+ this.replaceFileContent(buildGradlePath, "{{pluginName}}", pluginName);
254
+ this.replaceFileContent(settingsGradlePath, "{{pluginName}}", pluginName);
255
+ // gets the package from the AndroidManifest to use as the namespace or fallback to the `org.nativescript.${shortPluginName}`
256
+ const shortPluginName = (0, helpers_1.getShortPluginName)(pluginName);
257
+ const manifestPath = path.join(pluginTempDir, "src", "main", "AndroidManifest.xml");
258
+ const manifestContent = this.$fs.readText(manifestPath);
259
+ let packageName = `org.nativescript.${shortPluginName}`;
260
+ const xml = await this.getXml(manifestContent);
261
+ if (xml["manifest"]) {
262
+ if (xml["manifest"]["$"]["package"]) {
263
+ packageName = xml["manifest"]["$"]["package"];
298
264
  }
299
- if (!runtimeGradleVersions) {
300
- const latestRuntimeVersion = yield this.getLatestRuntimeVersion();
301
- runtimeGradleVersions = yield this.getGradleVersions(latestRuntimeVersion);
302
- this.$logger.trace(`Got gradle versions ${JSON.stringify(runtimeGradleVersions)} from the latest runtime v${latestRuntimeVersion}`);
303
- }
304
- return runtimeGradleVersions || {};
305
- });
265
+ }
266
+ this.replaceFileContent(buildGradlePath, "{{pluginNamespace}}", packageName);
267
+ }
268
+ async getRuntimeGradleVersions(projectDir) {
269
+ let runtimeGradleVersions = null;
270
+ if (projectDir) {
271
+ const projectData = this.$projectDataService.getProjectData(projectDir);
272
+ const platformData = this.$platformsDataService.getPlatformData(this.$devicePlatformsConstants.Android, projectData);
273
+ const projectRuntimeVersion = platformData.platformProjectService.getFrameworkVersion(projectData);
274
+ runtimeGradleVersions = await this.getGradleVersions(projectRuntimeVersion);
275
+ this.$logger.trace(`Got gradle versions ${JSON.stringify(runtimeGradleVersions)} from runtime v${projectRuntimeVersion}`);
276
+ }
277
+ if (!runtimeGradleVersions) {
278
+ const latestRuntimeVersion = await this.getLatestRuntimeVersion();
279
+ runtimeGradleVersions = await this.getGradleVersions(latestRuntimeVersion);
280
+ this.$logger.trace(`Got gradle versions ${JSON.stringify(runtimeGradleVersions)} from the latest runtime v${latestRuntimeVersion}`);
281
+ }
282
+ return runtimeGradleVersions || {};
306
283
  }
307
- getLatestRuntimeVersion() {
284
+ async getLatestRuntimeVersion() {
308
285
  var _a;
309
- return __awaiter(this, void 0, void 0, function* () {
310
- let runtimeVersion = null;
311
- try {
312
- let result = yield this.$packageManager.view(constants_1.SCOPED_ANDROID_RUNTIME_NAME, {
313
- "dist-tags": true,
314
- });
315
- result = (_a = result === null || result === void 0 ? void 0 : result["dist-tags"]) !== null && _a !== void 0 ? _a : result;
316
- runtimeVersion = result.latest;
317
- }
318
- catch (err) {
319
- this.$logger.trace(`Error while getting latest android runtime version from view command: ${err}`);
320
- const registryData = yield this.$packageManager.getRegistryPackageData(constants_1.SCOPED_ANDROID_RUNTIME_NAME);
321
- runtimeVersion = registryData["dist-tags"].latest;
322
- }
323
- return runtimeVersion;
324
- });
286
+ let runtimeVersion = null;
287
+ try {
288
+ let result = await this.$packageManager.view(constants_1.SCOPED_ANDROID_RUNTIME_NAME, {
289
+ "dist-tags": true,
290
+ });
291
+ result = (_a = result === null || result === void 0 ? void 0 : result["dist-tags"]) !== null && _a !== void 0 ? _a : result;
292
+ runtimeVersion = result.latest;
293
+ }
294
+ catch (err) {
295
+ this.$logger.trace(`Error while getting latest android runtime version from view command: ${err}`);
296
+ const registryData = await this.$packageManager.getRegistryPackageData(constants_1.SCOPED_ANDROID_RUNTIME_NAME);
297
+ runtimeVersion = registryData["dist-tags"].latest;
298
+ }
299
+ return runtimeVersion;
325
300
  }
326
301
  getLocalGradleVersions() {
327
302
  // try reading from installed runtime first before reading from the npm registry...
@@ -351,46 +326,44 @@ class AndroidPluginBuildService {
351
326
  }
352
327
  return null;
353
328
  }
354
- getGradleVersions(runtimeVersion) {
329
+ async getGradleVersions(runtimeVersion) {
355
330
  var _a, _b;
356
- return __awaiter(this, void 0, void 0, function* () {
357
- let runtimeGradleVersions = null;
358
- const localVersionInfo = this.getLocalGradleVersions();
359
- if (localVersionInfo) {
360
- return localVersionInfo;
361
- }
362
- // fallback to reading from npm...
363
- try {
364
- let output = yield this.$packageManager.view(`${constants_1.SCOPED_ANDROID_RUNTIME_NAME}@${runtimeVersion}`, { version_info: true });
365
- output = (_a = output === null || output === void 0 ? void 0 : output["version_info"]) !== null && _a !== void 0 ? _a : output;
366
- if (!output) {
367
- /**
368
- * fallback to the old 'gradle' key in package.json
369
- *
370
- * format:
371
- *
372
- * gradle: { version: '6.4', android: '3.6.4' }
373
- *
374
- */
375
- output = yield this.$packageManager.view(`${constants_1.SCOPED_ANDROID_RUNTIME_NAME}@${runtimeVersion}`, { gradle: true });
376
- output = (_b = output === null || output === void 0 ? void 0 : output["gradle"]) !== null && _b !== void 0 ? _b : output;
377
- const { version, android } = output;
378
- // covert output to the new format...
379
- output = {
380
- gradle: version,
381
- gradleAndroid: android,
382
- };
383
- }
384
- runtimeGradleVersions = { versions: output };
385
- }
386
- catch (err) {
387
- this.$logger.trace(`Error while getting gradle data for android runtime from view command: ${err}`);
388
- const registryData = yield this.$packageManager.getRegistryPackageData(constants_1.SCOPED_ANDROID_RUNTIME_NAME);
389
- runtimeGradleVersions = registryData.versions[runtimeVersion];
331
+ let runtimeGradleVersions = null;
332
+ const localVersionInfo = this.getLocalGradleVersions();
333
+ if (localVersionInfo) {
334
+ return localVersionInfo;
335
+ }
336
+ // fallback to reading from npm...
337
+ try {
338
+ let output = await this.$packageManager.view(`${constants_1.SCOPED_ANDROID_RUNTIME_NAME}@${runtimeVersion}`, { version_info: true });
339
+ output = (_a = output === null || output === void 0 ? void 0 : output["version_info"]) !== null && _a !== void 0 ? _a : output;
340
+ if (!output) {
341
+ /**
342
+ * fallback to the old 'gradle' key in package.json
343
+ *
344
+ * format:
345
+ *
346
+ * gradle: { version: '6.4', android: '3.6.4' }
347
+ *
348
+ */
349
+ output = await this.$packageManager.view(`${constants_1.SCOPED_ANDROID_RUNTIME_NAME}@${runtimeVersion}`, { gradle: true });
350
+ output = (_b = output === null || output === void 0 ? void 0 : output["gradle"]) !== null && _b !== void 0 ? _b : output;
351
+ const { version, android } = output;
352
+ // covert output to the new format...
353
+ output = {
354
+ gradle: version,
355
+ gradleAndroid: android,
356
+ };
390
357
  }
391
- const result = this.getGradleVersionsCore(runtimeGradleVersions);
392
- return result;
393
- });
358
+ runtimeGradleVersions = { versions: output };
359
+ }
360
+ catch (err) {
361
+ this.$logger.trace(`Error while getting gradle data for android runtime from view command: ${err}`);
362
+ const registryData = await this.$packageManager.getRegistryPackageData(constants_1.SCOPED_ANDROID_RUNTIME_NAME);
363
+ runtimeGradleVersions = registryData.versions[runtimeVersion];
364
+ }
365
+ const result = this.getGradleVersionsCore(runtimeGradleVersions);
366
+ return result;
394
367
  }
395
368
  getGradleVersionsCore(packageData) {
396
369
  const packageJsonGradle = packageData && packageData.versions;
@@ -480,42 +453,43 @@ class AndroidPluginBuildService {
480
453
  }
481
454
  return false;
482
455
  }
483
- buildPlugin(pluginBuildSettings) {
456
+ async buildPlugin(pluginBuildSettings) {
484
457
  var _a;
485
- return __awaiter(this, void 0, void 0, function* () {
486
- const gradlew = (_a = pluginBuildSettings.gradlePath) !== null && _a !== void 0 ? _a : (this.$hostInfo.isWindows ? "gradlew.bat" : "./gradlew");
487
- const localArgs = [
488
- "-p",
489
- pluginBuildSettings.pluginDir,
490
- "assembleRelease",
491
- `-PtempBuild=true`,
492
- `-PappPath=${this.$projectData.getAppDirectoryPath()}`,
493
- `-PappResourcesPath=${this.$projectData.getAppResourcesDirectoryPath()}`,
494
- ];
495
- if (pluginBuildSettings.gradleArgs) {
496
- localArgs.push(pluginBuildSettings.gradleArgs);
497
- }
498
- if (this.$logger.getLevel() === "INFO") {
499
- localArgs.push("--quiet");
500
- }
501
- const opts = {
502
- cwd: pluginBuildSettings.pluginDir,
503
- stdio: "inherit",
504
- shell: this.$hostInfo.isWindows,
458
+ const gradlew = (_a = pluginBuildSettings.gradlePath) !== null && _a !== void 0 ? _a : (this.$hostInfo.isWindows ? "gradlew.bat" : "./gradlew");
459
+ const localArgs = [
460
+ "-p",
461
+ pluginBuildSettings.pluginDir,
462
+ "assembleRelease",
463
+ `-PtempBuild=true`,
464
+ `-PappPath=${this.$projectData.getAppDirectoryPath()}`,
465
+ `-PappResourcesPath=${this.$projectData.getAppResourcesDirectoryPath()}`,
466
+ ];
467
+ if (pluginBuildSettings.gradleArgs) {
468
+ localArgs.push(pluginBuildSettings.gradleArgs);
469
+ }
470
+ if (this.$logger.getLevel() === "INFO") {
471
+ localArgs.push("--quiet");
472
+ }
473
+ const opts = {
474
+ cwd: pluginBuildSettings.pluginDir,
475
+ stdio: "inherit",
476
+ shell: this.$hostInfo.isWindows,
477
+ };
478
+ if (this.$options.hostProjectPath) {
479
+ opts.env = {
480
+ USER_PROJECT_PLATFORMS_ANDROID: path.resolve((0, process_1.cwd)(), this.$options.hostProjectPath), // TODO: couldn't `hostProjectPath` have an absolute path already?
481
+ ...process.env, // TODO: any other way to pass automatically the current process.env?
505
482
  };
506
- if (this.$options.hostProjectPath) {
507
- opts.env = Object.assign({ USER_PROJECT_PLATFORMS_ANDROID: path.resolve((0, process_1.cwd)(), this.$options.hostProjectPath) }, process.env);
508
- }
509
- try {
510
- const sanitizedArgs = this.$hostInfo.isWindows
511
- ? localArgs.map((arg) => (0, helpers_1.quoteString)(arg))
512
- : localArgs;
513
- yield this.$childProcess.spawnFromEvent(gradlew, sanitizedArgs, "close", opts);
514
- }
515
- catch (err) {
516
- this.$errors.fail(`Failed to build plugin ${pluginBuildSettings.pluginName} : \n${err}`);
517
- }
518
- });
483
+ }
484
+ try {
485
+ const sanitizedArgs = this.$hostInfo.isWindows
486
+ ? localArgs.map((arg) => (0, helpers_1.quoteString)(arg))
487
+ : localArgs;
488
+ await this.$childProcess.spawnFromEvent(gradlew, sanitizedArgs, "close", opts);
489
+ }
490
+ catch (err) {
491
+ this.$errors.fail(`Failed to build plugin ${pluginBuildSettings.pluginName} : \n${err}`);
492
+ }
519
493
  }
520
494
  validateOptions(options) {
521
495
  if (!options) {
@@ -541,6 +515,7 @@ class AndroidPluginBuildService {
541
515
  }
542
516
  }
543
517
  }
518
+ exports.AndroidPluginBuildService = AndroidPluginBuildService;
544
519
  AndroidPluginBuildService.MANIFEST_ROOT = {
545
520
  $: {
546
521
  "xmlns:android": "http://schemas.android.com/apk/res/android",
@@ -549,6 +524,5 @@ AndroidPluginBuildService.MANIFEST_ROOT = {
549
524
  __decorate([
550
525
  (0, helpers_1.hook)("buildAndroidPlugin")
551
526
  ], AndroidPluginBuildService.prototype, "buildPlugin", null);
552
- exports.AndroidPluginBuildService = AndroidPluginBuildService;
553
527
  yok_1.injector.register("androidPluginBuildService", AndroidPluginBuildService);
554
528
  //# sourceMappingURL=android-plugin-build-service.js.map