nativescript 9.1.0-alpha.16 → 9.1.0-alpha.17

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 (632) hide show
  1. package/CHANGELOG.md +2571 -0
  2. package/bin/tns +65 -1
  3. package/config/config.json +2 -1
  4. package/config/test-deps-versions-generated.json +1 -1
  5. package/contracts/package.json +4 -0
  6. package/docs/man_pages/project/testing/build-android.md +1 -1
  7. package/lib/android-tools-info.d.ts +19 -0
  8. package/lib/base-package-manager.d.ts +28 -0
  9. package/lib/bootstrap.js +2 -1
  10. package/lib/bun-package-manager.d.ts +16 -0
  11. package/lib/color.d.ts +39 -0
  12. package/lib/commands/add-platform.d.ts +14 -0
  13. package/lib/commands/apple-login.d.ts +14 -0
  14. package/lib/commands/appstore-list.d.ts +21 -0
  15. package/lib/commands/appstore-upload.d.ts +25 -0
  16. package/lib/commands/build.d.ts +58 -0
  17. package/lib/commands/clean.d.ts +21 -0
  18. package/lib/commands/command-base.d.ts +16 -0
  19. package/lib/commands/config.d.ts +30 -0
  20. package/lib/commands/create-project.d.ts +42 -0
  21. package/lib/commands/debug.d.ts +53 -0
  22. package/lib/commands/deploy.d.ts +32 -0
  23. package/lib/commands/embedding/embed.d.ts +27 -0
  24. package/lib/commands/extensibility/install-extension.d.ts +10 -0
  25. package/lib/commands/extensibility/list-extensions.d.ts +9 -0
  26. package/lib/commands/extensibility/uninstall-extension.d.ts +10 -0
  27. package/lib/commands/fonts.d.ts +12 -0
  28. package/lib/commands/generate-assets.d.ts +29 -0
  29. package/lib/commands/generate-help.d.ts +8 -0
  30. package/lib/commands/generate.d.ts +12 -0
  31. package/lib/commands/hooks/common.d.ts +22 -0
  32. package/lib/commands/hooks/hooks-lock.d.ts +24 -0
  33. package/lib/commands/hooks/hooks.d.ts +17 -0
  34. package/lib/commands/info.d.ts +8 -0
  35. package/lib/commands/install.d.ts +25 -0
  36. package/lib/commands/list-platforms.d.ts +11 -0
  37. package/lib/commands/migrate.d.ts +13 -0
  38. package/lib/commands/native-add.d.ts +49 -0
  39. package/lib/commands/platform-clean.d.ts +17 -0
  40. package/lib/commands/plugin/add-plugin.d.ts +13 -0
  41. package/lib/commands/plugin/build-plugin.d.ts +18 -0
  42. package/lib/commands/plugin/create-plugin.d.ts +30 -0
  43. package/lib/commands/plugin/list-plugins.d.ts +12 -0
  44. package/lib/commands/plugin/remove-plugin.d.ts +14 -0
  45. package/lib/commands/plugin/update-plugin.d.ts +13 -0
  46. package/lib/commands/post-install.d.ts +16 -0
  47. package/lib/commands/prepare.d.ts +40 -0
  48. package/lib/commands/prepare.js +0 -5
  49. package/lib/commands/preview.d.ts +18 -0
  50. package/lib/commands/preview.js +1 -0
  51. package/lib/commands/remove-platform.d.ts +14 -0
  52. package/lib/commands/resources/resources-update.d.ts +13 -0
  53. package/lib/commands/run.d.ts +61 -0
  54. package/lib/commands/setup.d.ts +8 -0
  55. package/lib/commands/start.d.ts +9 -0
  56. package/lib/commands/typings.d.ts +22 -0
  57. package/lib/commands/update-platform.d.ts +17 -0
  58. package/lib/commands/update.d.ts +21 -0
  59. package/lib/commands/widget.d.ts +24 -0
  60. package/lib/commands/widget.js +0 -1
  61. package/lib/common/child-process.d.ts +17 -0
  62. package/lib/common/codeGeneration/code-entity.d.ts +22 -0
  63. package/lib/common/codeGeneration/code-printer.d.ts +10 -0
  64. package/lib/common/command-params.d.ts +14 -0
  65. package/lib/common/commands/analytics.d.ts +30 -0
  66. package/lib/common/commands/autocompletion.d.ts +35 -0
  67. package/lib/common/commands/device/device-log-stream.d.ts +16 -0
  68. package/lib/common/commands/device/get-file.d.ts +14 -0
  69. package/lib/common/commands/device/list-applications.d.ts +10 -0
  70. package/lib/common/commands/device/list-devices.d.ts +16 -0
  71. package/lib/common/commands/device/list-files.d.ts +14 -0
  72. package/lib/common/commands/device/put-file.d.ts +14 -0
  73. package/lib/common/commands/device/run-application.d.ts +13 -0
  74. package/lib/common/commands/device/stop-application.d.ts +10 -0
  75. package/lib/common/commands/device/uninstall-application.d.ts +10 -0
  76. package/lib/common/commands/doctor.d.ts +23 -0
  77. package/lib/common/commands/generate-messages.d.ts +13 -0
  78. package/lib/common/commands/help.d.ts +14 -0
  79. package/lib/common/commands/package-manager-get.d.ts +10 -0
  80. package/lib/common/commands/package-manager-set.d.ts +11 -0
  81. package/lib/common/commands/post-install.d.ts +9 -0
  82. package/lib/common/commands/preuninstall.d.ts +16 -0
  83. package/lib/common/commands/proxy/proxy-base.d.ts +13 -0
  84. package/lib/common/commands/proxy/proxy-clear.d.ts +9 -0
  85. package/lib/common/commands/proxy/proxy-get.d.ts +9 -0
  86. package/lib/common/commands/proxy/proxy-set.d.ts +23 -0
  87. package/lib/common/constants.d.ts +117 -0
  88. package/lib/common/contracts/command-registry.d.ts +35 -0
  89. package/lib/common/contracts/command-registry.js +16 -0
  90. package/lib/common/contracts/index.d.ts +5 -0
  91. package/lib/common/contracts/index.js +11 -0
  92. package/lib/common/contracts/key-command-registry.d.ts +7 -0
  93. package/lib/common/contracts/key-command-registry.js +16 -0
  94. package/lib/common/contracts/module-registry.d.ts +4 -0
  95. package/lib/common/contracts/module-registry.js +16 -0
  96. package/lib/common/contracts/public-api-builder.d.ts +5 -0
  97. package/lib/common/contracts/public-api-builder.js +16 -0
  98. package/lib/common/declarations.d.ts +12 -1
  99. package/lib/common/decorators.d.ts +13 -0
  100. package/lib/common/define-command.d.ts +53 -0
  101. package/lib/common/define-command.js +147 -0
  102. package/lib/common/define-hook.d.ts +29 -0
  103. package/lib/common/define-hook.js +101 -0
  104. package/lib/common/definitions/commands.d.ts +7 -0
  105. package/lib/common/definitions/extensibility.d.ts +7 -0
  106. package/lib/common/definitions/key-commands.d.ts +25 -0
  107. package/lib/common/definitions/yok.d.ts +43 -35
  108. package/lib/common/deprecation.d.ts +12 -0
  109. package/lib/common/deprecation.js +56 -0
  110. package/lib/common/di/contract.d.ts +7 -0
  111. package/lib/common/di/contract.js +34 -0
  112. package/lib/common/di/forward-ref.d.ts +2 -0
  113. package/lib/common/di/forward-ref.js +15 -0
  114. package/lib/common/di/index.d.ts +8 -0
  115. package/lib/common/di/index.js +19 -0
  116. package/lib/common/di/inject.d.ts +8 -0
  117. package/lib/common/di/inject.js +41 -0
  118. package/lib/common/di/injector.d.ts +38 -0
  119. package/lib/common/di/injector.js +268 -0
  120. package/lib/common/di/providers.d.ts +30 -0
  121. package/lib/common/di/providers.js +7 -0
  122. package/lib/common/dispatchers.d.ts +21 -0
  123. package/lib/common/enums.d.ts +34 -0
  124. package/lib/common/errors.d.ts +15 -0
  125. package/lib/common/file-system.d.ts +77 -0
  126. package/lib/common/header.d.ts +1 -0
  127. package/lib/common/helpers.d.ts +62 -0
  128. package/lib/common/helpers.js +3 -3
  129. package/lib/common/host-info.d.ts +24 -0
  130. package/lib/common/http-client.d.ts +14 -0
  131. package/lib/common/http-client.js +11 -0
  132. package/lib/common/logger/appenders/cli-appender.d.ts +2 -0
  133. package/lib/common/logger/appenders/emit-appender.d.ts +5 -0
  134. package/lib/common/logger/layouts/cli-layout.d.ts +2 -0
  135. package/lib/common/logger/logger.d.ts +24 -0
  136. package/lib/common/messages/messages.d.ts +7 -0
  137. package/lib/common/mobile/android/android-application-manager.d.ts +31 -0
  138. package/lib/common/mobile/android/android-debug-bridge-result-handler.d.ts +9 -0
  139. package/lib/common/mobile/android/android-debug-bridge.d.ts +24 -0
  140. package/lib/common/mobile/android/android-device-file-system.d.ts +26 -0
  141. package/lib/common/mobile/android/android-device-hash-service.d.ts +23 -0
  142. package/lib/common/mobile/android/android-device.d.ts +24 -0
  143. package/lib/common/mobile/android/android-emulator-services.d.ts +23 -0
  144. package/lib/common/mobile/android/android-ini-file-parser.d.ts +8 -0
  145. package/lib/common/mobile/android/android-log-filter.d.ts +11 -0
  146. package/lib/common/mobile/android/android-virtual-device-service.d.ts +37 -0
  147. package/lib/common/mobile/android/device-android-debug-bridge.d.ts +18 -0
  148. package/lib/common/mobile/android/genymotion/genymotion-service.d.ts +26 -0
  149. package/lib/common/mobile/android/genymotion/virtualbox-service.d.ts +13 -0
  150. package/lib/common/mobile/android/logcat-helper.d.ts +17 -0
  151. package/lib/common/mobile/application-manager-base.d.ts +27 -0
  152. package/lib/common/mobile/device-emitter.d.ts +8 -0
  153. package/lib/common/mobile/device-log-emitter.d.ts +9 -0
  154. package/lib/common/mobile/device-log-provider-base.d.ts +21 -0
  155. package/lib/common/mobile/device-log-provider.d.ts +21 -0
  156. package/lib/common/mobile/device-platforms-constants.d.ts +8 -0
  157. package/lib/common/mobile/emulator-helper.d.ts +32 -0
  158. package/lib/common/mobile/ios/device/ios-application-manager.d.ts +27 -0
  159. package/lib/common/mobile/ios/device/ios-device-file-system.d.ts +19 -0
  160. package/lib/common/mobile/ios/device/ios-device-operations.d.ts +29 -0
  161. package/lib/common/mobile/ios/device/ios-device.d.ts +32 -0
  162. package/lib/common/mobile/ios/ios-device-base.d.ts +24 -0
  163. package/lib/common/mobile/ios/ios-log-filter.d.ts +6 -0
  164. package/lib/common/mobile/ios/simulator/ios-emulator-services.d.ts +1 -0
  165. package/lib/common/mobile/ios/simulator/ios-sim-resolver.d.ts +7 -0
  166. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.d.ts +27 -0
  167. package/lib/common/mobile/ios/simulator/ios-simulator-device.d.ts +27 -0
  168. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.d.ts +16 -0
  169. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.d.ts +15 -0
  170. package/lib/common/mobile/local-to-device-path-data-factory.d.ts +3 -0
  171. package/lib/common/mobile/log-filter.d.ts +13 -0
  172. package/lib/common/mobile/logging-levels.d.ts +4 -0
  173. package/lib/common/mobile/mobile-core/android-device-discovery.d.ts +16 -0
  174. package/lib/common/mobile/mobile-core/android-emulator-discovery.d.ts +11 -0
  175. package/lib/common/mobile/mobile-core/android-process-service.d.ts +33 -0
  176. package/lib/common/mobile/mobile-core/device-discovery.d.ts +12 -0
  177. package/lib/common/mobile/mobile-core/devices-service.d.ts +99 -0
  178. package/lib/common/mobile/mobile-core/ios-device-discovery.d.ts +12 -0
  179. package/lib/common/mobile/mobile-core/ios-simulator-discovery.d.ts +20 -0
  180. package/lib/common/mobile/mobile-helper.d.ts +22 -0
  181. package/lib/common/mobile/wp8/wp8-emulator-services.d.ts +1 -0
  182. package/lib/common/opener.d.ts +4 -0
  183. package/lib/common/os-info.d.ts +7 -0
  184. package/lib/common/plist-parser.d.ts +5 -0
  185. package/lib/common/project-helper.d.ts +15 -0
  186. package/lib/common/prompter.d.ts +23 -0
  187. package/lib/common/queue.d.ts +8 -0
  188. package/lib/common/resource-loader.d.ts +10 -0
  189. package/lib/common/services/analytics/google-analytics-custom-dimensions.d.ts +9 -0
  190. package/lib/common/services/auto-completion-service.d.ts +36 -0
  191. package/lib/common/services/cancellation.d.ts +1 -0
  192. package/lib/common/services/command-definition-adapter.d.ts +6 -0
  193. package/lib/common/services/command-definition-adapter.js +141 -0
  194. package/lib/common/services/commands-service.d.ts +30 -0
  195. package/lib/common/services/commands-service.js +2 -1
  196. package/lib/common/services/help-service.d.ts +46 -0
  197. package/lib/common/services/hooks-service.d.ts +40 -0
  198. package/lib/common/services/hooks-service.js +110 -51
  199. package/lib/common/services/ios-notification-service.d.ts +7 -0
  200. package/lib/common/services/json-file-settings-service.d.ts +24 -0
  201. package/lib/common/services/lock-service.d.ts +18 -0
  202. package/lib/common/services/message-contract-generator.d.ts +8 -0
  203. package/lib/common/services/messages-service.d.ts +15 -0
  204. package/lib/common/services/micro-templating-service.d.ts +12 -0
  205. package/lib/common/services/net-service.d.ts +13 -0
  206. package/lib/common/services/project-files-manager.d.ts +14 -0
  207. package/lib/common/services/project-files-provider-base.d.ts +12 -0
  208. package/lib/common/services/proxy-service.d.ts +12 -0
  209. package/lib/common/services/qr.d.ts +7 -0
  210. package/lib/common/services/settings-service.d.ts +10 -0
  211. package/lib/common/services/xcode-select-service.d.ts +12 -0
  212. package/lib/common/utils.d.ts +10 -0
  213. package/lib/common/validators/project-name-validator.d.ts +18 -0
  214. package/lib/common/validators/validation-result.d.ts +7 -0
  215. package/lib/common/verify-node-version.d.ts +3 -0
  216. package/lib/common/yok.d.ts +60 -0
  217. package/lib/common/yok.js +161 -133
  218. package/lib/config.d.ts +45 -0
  219. package/lib/config.js +2 -1
  220. package/lib/constants-provider.d.ts +4 -0
  221. package/lib/constants.d.ts +331 -0
  222. package/lib/constants.js +7 -2
  223. package/lib/contracts/doctor-service.d.ts +20 -0
  224. package/lib/contracts/doctor-service.js +16 -0
  225. package/lib/contracts/index.d.ts +14 -0
  226. package/lib/contracts/index.js +32 -0
  227. package/lib/contracts/project-name-service.d.ts +5 -0
  228. package/lib/contracts/project-name-service.js +16 -0
  229. package/lib/controllers/build-controller.d.ts +23 -0
  230. package/lib/controllers/debug-controller.d.ts +31 -0
  231. package/lib/controllers/deploy-controller.d.ts +7 -0
  232. package/lib/controllers/migrate-controller.d.ts +67 -0
  233. package/lib/controllers/platform-controller.d.ts +20 -0
  234. package/lib/controllers/prepare-controller.d.ts +45 -0
  235. package/lib/controllers/run-controller.d.ts +57 -0
  236. package/lib/controllers/update-controller-base.d.ts +27 -0
  237. package/lib/controllers/update-controller.d.ts +36 -0
  238. package/lib/data/build-data.d.ts +33 -0
  239. package/lib/data/controller-data-base.d.ts +8 -0
  240. package/lib/data/debug-data.d.ts +2 -0
  241. package/lib/data/platform-data.d.ts +7 -0
  242. package/lib/data/prepare-data.d.ts +22 -0
  243. package/lib/data/run-data.d.ts +6 -0
  244. package/lib/declarations.d.ts +2 -1
  245. package/lib/definitions/ios.d.ts +36 -1
  246. package/lib/definitions/system-warnings.d.ts +4 -0
  247. package/lib/detached-processes/cleanup-js-subprocess.d.ts +2 -0
  248. package/lib/detached-processes/cleanup-process.d.ts +1 -0
  249. package/lib/detached-processes/detached-process-enums.d.ts +18 -0
  250. package/lib/detached-processes/file-log-service.d.ts +7 -0
  251. package/lib/device-path-provider.d.ts +9 -0
  252. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.d.ts +22 -0
  253. package/lib/device-sockets/ios/notification.d.ts +13 -0
  254. package/lib/device-sockets/ios/socket-request-executor.d.ts +11 -0
  255. package/lib/helpers/android-bundle-validator-helper.d.ts +18 -0
  256. package/lib/helpers/deploy-command-helper.d.ts +16 -0
  257. package/lib/helpers/key-command-helper.d.ts +13 -0
  258. package/lib/helpers/livesync-command-helper.d.ts +36 -0
  259. package/lib/helpers/network-connectivity-validator.d.ts +12 -0
  260. package/lib/helpers/options-track-helper.d.ts +14 -0
  261. package/lib/helpers/package-path-helper.d.ts +2 -0
  262. package/lib/helpers/platform-command-helper.d.ts +35 -0
  263. package/lib/helpers/version-validator-helper.d.ts +8 -0
  264. package/lib/key-commands/bootstrap.d.ts +1 -0
  265. package/lib/key-commands/index.d.ts +166 -0
  266. package/lib/nativescript-cli-lib-bootstrap.d.ts +1 -0
  267. package/lib/nativescript-cli-lib.d.ts +1 -0
  268. package/lib/nativescript-cli.d.ts +1 -0
  269. package/lib/node/pbxproj-dom-xcode.d.ts +4 -0
  270. package/lib/node/xcode.d.ts +2 -0
  271. package/lib/node-package-manager.d.ts +16 -0
  272. package/lib/options.d.ts +33 -0
  273. package/lib/options.js +70 -43
  274. package/lib/package-installation-manager.d.ts +30 -0
  275. package/lib/package-manager.d.ts +32 -0
  276. package/lib/platform-command-param.d.ts +10 -0
  277. package/lib/pnpm-package-manager.d.ts +16 -0
  278. package/lib/project-data.d.ts +58 -0
  279. package/lib/providers/project-files-provider.d.ts +12 -0
  280. package/lib/resolvers/livesync-service-resolver.d.ts +9 -0
  281. package/lib/services/analytics/analytics-broker-process.d.ts +1 -0
  282. package/lib/services/analytics/analytics-broker.d.ts +11 -0
  283. package/lib/services/analytics/analytics-service.d.ts +46 -0
  284. package/lib/services/analytics/google-analytics-provider.d.ts +22 -0
  285. package/lib/services/analytics/google-analytics-provider.js +84 -83
  286. package/lib/services/analytics-settings-service.d.ts +1 -0
  287. package/lib/services/android/android-bundle-tool-service.d.ts +27 -0
  288. package/lib/services/android/android-bundle-tool-service.js +102 -3
  289. package/lib/services/android/gradle-build-args-service.d.ts +17 -0
  290. package/lib/services/android/gradle-build-service.d.ts +12 -0
  291. package/lib/services/android/gradle-command-service.d.ts +11 -0
  292. package/lib/services/android-device-debug-service.d.ts +30 -0
  293. package/lib/services/android-plugin-build-service.d.ts +55 -0
  294. package/lib/services/android-project-service.d.ts +75 -0
  295. package/lib/services/android-resources-migration-service.d.ts +17 -0
  296. package/lib/services/apple-portal/apple-portal-application-service.d.ts +12 -0
  297. package/lib/services/apple-portal/apple-portal-cookie-service.d.ts +10 -0
  298. package/lib/services/apple-portal/apple-portal-session-service.d.ts +19 -0
  299. package/lib/services/apple-portal/srp/srp-wrapper.d.ts +29 -0
  300. package/lib/services/assets-generation/assets-generation-service.d.ts +24 -0
  301. package/lib/services/build-artifacts-service.d.ts +16 -0
  302. package/lib/services/build-data-service.d.ts +7 -0
  303. package/lib/services/build-info-file-service.d.ts +16 -0
  304. package/lib/services/bundler/bundler-compiler-service.d.ts +50 -0
  305. package/lib/services/bundler/bundler-compiler-service.js +2 -1
  306. package/lib/services/bundler/bundler.d.ts +75 -0
  307. package/lib/services/cleanup-service.d.ts +29 -0
  308. package/lib/services/cocoapods-platform-manager.d.ts +17 -0
  309. package/lib/services/cocoapods-service.d.ts +47 -0
  310. package/lib/services/debug-data-service.d.ts +7 -0
  311. package/lib/services/debug-service-base.d.ts +12 -0
  312. package/lib/services/device/device-install-app-service.d.ts +19 -0
  313. package/lib/services/doctor-service.d.ts +51 -0
  314. package/lib/services/doctor-service.js +14 -11
  315. package/lib/services/extensibility-service.d.ts +36 -0
  316. package/lib/services/extensibility-service.js +126 -5
  317. package/lib/services/files-hash-service.d.ts +17 -0
  318. package/lib/services/hmr-status-service.d.ts +19 -0
  319. package/lib/services/info-service.d.ts +6 -0
  320. package/lib/services/initialize-service.d.ts +8 -0
  321. package/lib/services/ios/export-options-plist-service.d.ts +13 -0
  322. package/lib/services/ios/ios-signing-service.d.ts +33 -0
  323. package/lib/services/ios/spm-pbxproj-service.d.ts +16 -0
  324. package/lib/services/ios/spm-pbxproj-service.js +234 -0
  325. package/lib/services/ios/spm-service.d.ts +35 -0
  326. package/lib/services/ios/spm-service.js +10 -19
  327. package/lib/services/ios/xcodebuild-args-service.d.ts +20 -0
  328. package/lib/services/ios/xcodebuild-command-service.d.ts +17 -0
  329. package/lib/services/ios/xcodebuild-service.d.ts +13 -0
  330. package/lib/services/ios-debugger-port-service.d.ts +20 -0
  331. package/lib/services/ios-device-debug-service.d.ts +29 -0
  332. package/lib/services/ios-entitlements-service.d.ts +19 -0
  333. package/lib/services/ios-entitlements-service.js +3 -3
  334. package/lib/services/ios-extensions-service.d.ts +12 -0
  335. package/lib/services/ios-log-filter.d.ts +11 -0
  336. package/lib/services/ios-native-target-service.d.ts +14 -0
  337. package/lib/services/ios-project-service.d.ts +108 -0
  338. package/lib/services/ios-project-service.js +2 -2
  339. package/lib/services/ios-provision-service.d.ts +18 -0
  340. package/lib/services/ios-watch-app-service.d.ts +39 -0
  341. package/lib/services/ios-watch-app-service.js +8 -15
  342. package/lib/services/ip-service.d.ts +10 -0
  343. package/lib/services/itmstransporter-service.d.ts +26 -0
  344. package/lib/services/karma-execution.d.ts +1 -0
  345. package/lib/services/livesync/android-device-livesync-service-base.d.ts +19 -0
  346. package/lib/services/livesync/android-device-livesync-service.d.ts +24 -0
  347. package/lib/services/livesync/android-device-livesync-sockets-service.d.ts +36 -0
  348. package/lib/services/livesync/android-livesync-service.d.ts +16 -0
  349. package/lib/services/livesync/android-livesync-tool.d.ts +58 -0
  350. package/lib/services/livesync/device-livesync-service-base.d.ts +13 -0
  351. package/lib/services/livesync/ios-device-livesync-service.d.ts +28 -0
  352. package/lib/services/livesync/ios-livesync-service.d.ts +17 -0
  353. package/lib/services/livesync/livesync-socket.d.ts +5 -0
  354. package/lib/services/livesync/platform-livesync-service-base.d.ts +25 -0
  355. package/lib/services/livesync-process-data-service.d.ts +10 -0
  356. package/lib/services/log-parser-service.d.ts +11 -0
  357. package/lib/services/log-source-map-service.d.ts +28 -0
  358. package/lib/services/marking-mode-service.d.ts +12 -0
  359. package/lib/services/metadata-filtering-service.d.ts +19 -0
  360. package/lib/services/npm-config-service.d.ts +7 -0
  361. package/lib/services/pacote-service.d.ts +16 -0
  362. package/lib/services/performance-service.d.ts +19 -0
  363. package/lib/services/platform/add-platform-service.d.ts +21 -0
  364. package/lib/services/platform/platform-validation-service.d.ts +17 -0
  365. package/lib/services/platform/prepare-native-platform-service.d.ts +15 -0
  366. package/lib/services/platform-environment-requirements.d.ts +15 -0
  367. package/lib/services/platform-project-service-base.d.ts +14 -0
  368. package/lib/services/platforms-data-service.d.ts +9 -0
  369. package/lib/services/plugins-service.d.ts +60 -0
  370. package/lib/services/prepare-data-service.d.ts +7 -0
  371. package/lib/services/project-backup-service.d.ts +12 -0
  372. package/lib/services/project-changes-service.d.ts +30 -0
  373. package/lib/services/project-cleanup-service.d.ts +13 -0
  374. package/lib/services/project-config-service.d.ts +33 -0
  375. package/lib/services/project-config-service.js +33 -11
  376. package/lib/services/project-data-service.d.ts +48 -0
  377. package/lib/services/project-name-service.d.ts +16 -0
  378. package/lib/services/project-name-service.js +4 -4
  379. package/lib/services/project-service.d.ts +34 -0
  380. package/lib/services/project-templates-service.d.ts +18 -0
  381. package/lib/services/qr-code-terminal-service.d.ts +5 -0
  382. package/lib/services/require-service.d.ts +3 -0
  383. package/lib/services/start-service.d.ts +30 -0
  384. package/lib/services/temp-service.d.ts +14 -0
  385. package/lib/services/terminal-spinner-service.d.ts +5 -0
  386. package/lib/services/test-execution-service.d.ts +26 -0
  387. package/lib/services/test-initialization-service.d.ts +10 -0
  388. package/lib/services/timeline-profiler-service.d.ts +18 -0
  389. package/lib/services/user-settings-service.d.ts +14 -0
  390. package/lib/services/versions-service.d.ts +5 -0
  391. package/lib/services/watch-ignore-list-service.d.ts +7 -0
  392. package/lib/services/xcconfig-service.d.ts +15 -0
  393. package/lib/services/xcproj-service.d.ts +1 -0
  394. package/lib/shared-event-bus.d.ts +1 -0
  395. package/lib/sys-info.d.ts +18 -0
  396. package/lib/tools/config-manipulation/config-transformer.d.ts +28 -0
  397. package/lib/tools/config-manipulation/config-transformer.js +15 -7
  398. package/lib/tools/node-modules/node-modules-builder.d.ts +9 -0
  399. package/lib/tools/node-modules/node-modules-dependencies-builder.d.ts +10 -0
  400. package/lib/tools/plist-merge/plist-session.d.ts +30 -0
  401. package/lib/tools/plist-merge/plist-session.js +92 -0
  402. package/lib/yarn-package-manager.d.ts +16 -0
  403. package/lib/yarn2-package-manager.d.ts +18 -0
  404. package/package.json +11 -107
  405. package/postinstall.js +7 -2
  406. package/node_modules/debug/LICENSE +0 -20
  407. package/node_modules/debug/README.md +0 -481
  408. package/node_modules/debug/package.json +0 -64
  409. package/node_modules/debug/src/browser.js +0 -272
  410. package/node_modules/debug/src/common.js +0 -292
  411. package/node_modules/debug/src/index.js +0 -10
  412. package/node_modules/debug/src/node.js +0 -263
  413. package/node_modules/ms/index.js +0 -162
  414. package/node_modules/ms/license.md +0 -21
  415. package/node_modules/ms/package.json +0 -38
  416. package/node_modules/ms/readme.md +0 -59
  417. package/node_modules/universal-analytics/.travis.yml +0 -11
  418. package/node_modules/universal-analytics/AcceptableParams.md +0 -757
  419. package/node_modules/universal-analytics/HISTORY.md +0 -170
  420. package/node_modules/universal-analytics/Makefile +0 -5
  421. package/node_modules/universal-analytics/README.md +0 -651
  422. package/node_modules/universal-analytics/index.js +0 -2
  423. package/node_modules/universal-analytics/lib/config.js +0 -171
  424. package/node_modules/universal-analytics/lib/index.js +0 -563
  425. package/node_modules/universal-analytics/lib/request.js +0 -73
  426. package/node_modules/universal-analytics/lib/utils.js +0 -29
  427. package/node_modules/universal-analytics/package.json +0 -33
  428. package/node_modules/universal-analytics/test/_enqueue.js +0 -144
  429. package/node_modules/universal-analytics/test/event.js +0 -346
  430. package/node_modules/universal-analytics/test/exception.js +0 -233
  431. package/node_modules/universal-analytics/test/index.js +0 -141
  432. package/node_modules/universal-analytics/test/item.js +0 -550
  433. package/node_modules/universal-analytics/test/middleware.js +0 -119
  434. package/node_modules/universal-analytics/test/mocha.opts +0 -3
  435. package/node_modules/universal-analytics/test/pageview.js +0 -286
  436. package/node_modules/universal-analytics/test/send.js +0 -232
  437. package/node_modules/universal-analytics/test/set.js +0 -68
  438. package/node_modules/universal-analytics/test/timing.js +0 -363
  439. package/node_modules/universal-analytics/test/transaction.js +0 -371
  440. package/node_modules/uuid/LICENSE.md +0 -9
  441. package/node_modules/uuid/README.md +0 -510
  442. package/node_modules/uuid/dist/cjs/index.d.ts +0 -15
  443. package/node_modules/uuid/dist/cjs/index.js +0 -31
  444. package/node_modules/uuid/dist/cjs/max.d.ts +0 -2
  445. package/node_modules/uuid/dist/cjs/max.js +0 -3
  446. package/node_modules/uuid/dist/cjs/md5.d.ts +0 -4
  447. package/node_modules/uuid/dist/cjs/md5.js +0 -13
  448. package/node_modules/uuid/dist/cjs/native.d.ts +0 -6
  449. package/node_modules/uuid/dist/cjs/native.js +0 -4
  450. package/node_modules/uuid/dist/cjs/nil.d.ts +0 -2
  451. package/node_modules/uuid/dist/cjs/nil.js +0 -3
  452. package/node_modules/uuid/dist/cjs/package.json +0 -1
  453. package/node_modules/uuid/dist/cjs/parse.d.ts +0 -2
  454. package/node_modules/uuid/dist/cjs/parse.js +0 -11
  455. package/node_modules/uuid/dist/cjs/regex.d.ts +0 -2
  456. package/node_modules/uuid/dist/cjs/regex.js +0 -3
  457. package/node_modules/uuid/dist/cjs/rng.d.ts +0 -1
  458. package/node_modules/uuid/dist/cjs/rng.js +0 -13
  459. package/node_modules/uuid/dist/cjs/sha1.d.ts +0 -4
  460. package/node_modules/uuid/dist/cjs/sha1.js +0 -13
  461. package/node_modules/uuid/dist/cjs/stringify.d.ts +0 -3
  462. package/node_modules/uuid/dist/cjs/stringify.js +0 -39
  463. package/node_modules/uuid/dist/cjs/types.d.ts +0 -21
  464. package/node_modules/uuid/dist/cjs/types.js +0 -2
  465. package/node_modules/uuid/dist/cjs/uuid-bin.js +0 -72
  466. package/node_modules/uuid/dist/cjs/v1.d.ts +0 -11
  467. package/node_modules/uuid/dist/cjs/v1.js +0 -87
  468. package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +0 -2
  469. package/node_modules/uuid/dist/cjs/v1ToV6.js +0 -13
  470. package/node_modules/uuid/dist/cjs/v3.d.ts +0 -9
  471. package/node_modules/uuid/dist/cjs/v3.js +0 -14
  472. package/node_modules/uuid/dist/cjs/v35.d.ts +0 -7
  473. package/node_modules/uuid/dist/cjs/v35.js +0 -41
  474. package/node_modules/uuid/dist/cjs/v4.d.ts +0 -4
  475. package/node_modules/uuid/dist/cjs/v4.js +0 -29
  476. package/node_modules/uuid/dist/cjs/v5.d.ts +0 -9
  477. package/node_modules/uuid/dist/cjs/v5.js +0 -14
  478. package/node_modules/uuid/dist/cjs/v6.d.ts +0 -4
  479. package/node_modules/uuid/dist/cjs/v6.js +0 -19
  480. package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +0 -2
  481. package/node_modules/uuid/dist/cjs/v6ToV1.js +0 -13
  482. package/node_modules/uuid/dist/cjs/v7.d.ts +0 -9
  483. package/node_modules/uuid/dist/cjs/v7.js +0 -69
  484. package/node_modules/uuid/dist/cjs/validate.d.ts +0 -2
  485. package/node_modules/uuid/dist/cjs/validate.js +0 -7
  486. package/node_modules/uuid/dist/cjs/version.d.ts +0 -2
  487. package/node_modules/uuid/dist/cjs/version.js +0 -10
  488. package/node_modules/uuid/dist/cjs-browser/index.d.ts +0 -15
  489. package/node_modules/uuid/dist/cjs-browser/index.js +0 -31
  490. package/node_modules/uuid/dist/cjs-browser/max.d.ts +0 -2
  491. package/node_modules/uuid/dist/cjs-browser/max.js +0 -3
  492. package/node_modules/uuid/dist/cjs-browser/md5.d.ts +0 -2
  493. package/node_modules/uuid/dist/cjs-browser/md5.js +0 -137
  494. package/node_modules/uuid/dist/cjs-browser/native.d.ts +0 -4
  495. package/node_modules/uuid/dist/cjs-browser/native.js +0 -4
  496. package/node_modules/uuid/dist/cjs-browser/nil.d.ts +0 -2
  497. package/node_modules/uuid/dist/cjs-browser/nil.js +0 -3
  498. package/node_modules/uuid/dist/cjs-browser/package.json +0 -1
  499. package/node_modules/uuid/dist/cjs-browser/parse.d.ts +0 -2
  500. package/node_modules/uuid/dist/cjs-browser/parse.js +0 -11
  501. package/node_modules/uuid/dist/cjs-browser/regex.d.ts +0 -2
  502. package/node_modules/uuid/dist/cjs-browser/regex.js +0 -3
  503. package/node_modules/uuid/dist/cjs-browser/rng.d.ts +0 -1
  504. package/node_modules/uuid/dist/cjs-browser/rng.js +0 -14
  505. package/node_modules/uuid/dist/cjs-browser/sha1.d.ts +0 -2
  506. package/node_modules/uuid/dist/cjs-browser/sha1.js +0 -72
  507. package/node_modules/uuid/dist/cjs-browser/stringify.d.ts +0 -3
  508. package/node_modules/uuid/dist/cjs-browser/stringify.js +0 -39
  509. package/node_modules/uuid/dist/cjs-browser/types.d.ts +0 -21
  510. package/node_modules/uuid/dist/cjs-browser/types.js +0 -2
  511. package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +0 -72
  512. package/node_modules/uuid/dist/cjs-browser/v1.d.ts +0 -11
  513. package/node_modules/uuid/dist/cjs-browser/v1.js +0 -87
  514. package/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +0 -2
  515. package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +0 -13
  516. package/node_modules/uuid/dist/cjs-browser/v3.d.ts +0 -9
  517. package/node_modules/uuid/dist/cjs-browser/v3.js +0 -14
  518. package/node_modules/uuid/dist/cjs-browser/v35.d.ts +0 -7
  519. package/node_modules/uuid/dist/cjs-browser/v35.js +0 -41
  520. package/node_modules/uuid/dist/cjs-browser/v4.d.ts +0 -4
  521. package/node_modules/uuid/dist/cjs-browser/v4.js +0 -29
  522. package/node_modules/uuid/dist/cjs-browser/v5.d.ts +0 -9
  523. package/node_modules/uuid/dist/cjs-browser/v5.js +0 -14
  524. package/node_modules/uuid/dist/cjs-browser/v6.d.ts +0 -4
  525. package/node_modules/uuid/dist/cjs-browser/v6.js +0 -19
  526. package/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +0 -2
  527. package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +0 -13
  528. package/node_modules/uuid/dist/cjs-browser/v7.d.ts +0 -9
  529. package/node_modules/uuid/dist/cjs-browser/v7.js +0 -69
  530. package/node_modules/uuid/dist/cjs-browser/validate.d.ts +0 -2
  531. package/node_modules/uuid/dist/cjs-browser/validate.js +0 -7
  532. package/node_modules/uuid/dist/cjs-browser/version.d.ts +0 -2
  533. package/node_modules/uuid/dist/cjs-browser/version.js +0 -10
  534. package/node_modules/uuid/dist/esm/bin/uuid +0 -2
  535. package/node_modules/uuid/dist/esm/index.d.ts +0 -15
  536. package/node_modules/uuid/dist/esm/index.js +0 -14
  537. package/node_modules/uuid/dist/esm/max.d.ts +0 -2
  538. package/node_modules/uuid/dist/esm/max.js +0 -1
  539. package/node_modules/uuid/dist/esm/md5.d.ts +0 -4
  540. package/node_modules/uuid/dist/esm/md5.js +0 -11
  541. package/node_modules/uuid/dist/esm/native.d.ts +0 -6
  542. package/node_modules/uuid/dist/esm/native.js +0 -2
  543. package/node_modules/uuid/dist/esm/nil.d.ts +0 -2
  544. package/node_modules/uuid/dist/esm/nil.js +0 -1
  545. package/node_modules/uuid/dist/esm/parse.d.ts +0 -2
  546. package/node_modules/uuid/dist/esm/parse.js +0 -9
  547. package/node_modules/uuid/dist/esm/regex.d.ts +0 -2
  548. package/node_modules/uuid/dist/esm/regex.js +0 -1
  549. package/node_modules/uuid/dist/esm/rng.d.ts +0 -1
  550. package/node_modules/uuid/dist/esm/rng.js +0 -10
  551. package/node_modules/uuid/dist/esm/sha1.d.ts +0 -4
  552. package/node_modules/uuid/dist/esm/sha1.js +0 -11
  553. package/node_modules/uuid/dist/esm/stringify.d.ts +0 -3
  554. package/node_modules/uuid/dist/esm/stringify.js +0 -35
  555. package/node_modules/uuid/dist/esm/types.d.ts +0 -21
  556. package/node_modules/uuid/dist/esm/uuid-bin.js +0 -70
  557. package/node_modules/uuid/dist/esm/v1.d.ts +0 -11
  558. package/node_modules/uuid/dist/esm/v1.js +0 -83
  559. package/node_modules/uuid/dist/esm/v1ToV6.d.ts +0 -2
  560. package/node_modules/uuid/dist/esm/v1ToV6.js +0 -10
  561. package/node_modules/uuid/dist/esm/v3.d.ts +0 -9
  562. package/node_modules/uuid/dist/esm/v3.js +0 -9
  563. package/node_modules/uuid/dist/esm/v35.d.ts +0 -7
  564. package/node_modules/uuid/dist/esm/v35.js +0 -36
  565. package/node_modules/uuid/dist/esm/v4.d.ts +0 -4
  566. package/node_modules/uuid/dist/esm/v4.js +0 -27
  567. package/node_modules/uuid/dist/esm/v5.d.ts +0 -9
  568. package/node_modules/uuid/dist/esm/v5.js +0 -9
  569. package/node_modules/uuid/dist/esm/v6.d.ts +0 -4
  570. package/node_modules/uuid/dist/esm/v6.js +0 -17
  571. package/node_modules/uuid/dist/esm/v6ToV1.d.ts +0 -2
  572. package/node_modules/uuid/dist/esm/v6ToV1.js +0 -10
  573. package/node_modules/uuid/dist/esm/v7.d.ts +0 -9
  574. package/node_modules/uuid/dist/esm/v7.js +0 -65
  575. package/node_modules/uuid/dist/esm/validate.d.ts +0 -2
  576. package/node_modules/uuid/dist/esm/validate.js +0 -5
  577. package/node_modules/uuid/dist/esm/version.d.ts +0 -2
  578. package/node_modules/uuid/dist/esm/version.js +0 -8
  579. package/node_modules/uuid/dist/esm-browser/index.d.ts +0 -15
  580. package/node_modules/uuid/dist/esm-browser/index.js +0 -14
  581. package/node_modules/uuid/dist/esm-browser/max.d.ts +0 -2
  582. package/node_modules/uuid/dist/esm-browser/max.js +0 -1
  583. package/node_modules/uuid/dist/esm-browser/md5.d.ts +0 -2
  584. package/node_modules/uuid/dist/esm-browser/md5.js +0 -135
  585. package/node_modules/uuid/dist/esm-browser/native.d.ts +0 -4
  586. package/node_modules/uuid/dist/esm-browser/native.js +0 -2
  587. package/node_modules/uuid/dist/esm-browser/nil.d.ts +0 -2
  588. package/node_modules/uuid/dist/esm-browser/nil.js +0 -1
  589. package/node_modules/uuid/dist/esm-browser/parse.d.ts +0 -2
  590. package/node_modules/uuid/dist/esm-browser/parse.js +0 -9
  591. package/node_modules/uuid/dist/esm-browser/regex.d.ts +0 -2
  592. package/node_modules/uuid/dist/esm-browser/regex.js +0 -1
  593. package/node_modules/uuid/dist/esm-browser/rng.d.ts +0 -1
  594. package/node_modules/uuid/dist/esm-browser/rng.js +0 -11
  595. package/node_modules/uuid/dist/esm-browser/sha1.d.ts +0 -2
  596. package/node_modules/uuid/dist/esm-browser/sha1.js +0 -70
  597. package/node_modules/uuid/dist/esm-browser/stringify.d.ts +0 -3
  598. package/node_modules/uuid/dist/esm-browser/stringify.js +0 -35
  599. package/node_modules/uuid/dist/esm-browser/types.d.ts +0 -21
  600. package/node_modules/uuid/dist/esm-browser/uuid-bin.js +0 -70
  601. package/node_modules/uuid/dist/esm-browser/v1.d.ts +0 -11
  602. package/node_modules/uuid/dist/esm-browser/v1.js +0 -83
  603. package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +0 -2
  604. package/node_modules/uuid/dist/esm-browser/v1ToV6.js +0 -10
  605. package/node_modules/uuid/dist/esm-browser/v3.d.ts +0 -9
  606. package/node_modules/uuid/dist/esm-browser/v3.js +0 -9
  607. package/node_modules/uuid/dist/esm-browser/v35.d.ts +0 -7
  608. package/node_modules/uuid/dist/esm-browser/v35.js +0 -36
  609. package/node_modules/uuid/dist/esm-browser/v4.d.ts +0 -4
  610. package/node_modules/uuid/dist/esm-browser/v4.js +0 -27
  611. package/node_modules/uuid/dist/esm-browser/v5.d.ts +0 -9
  612. package/node_modules/uuid/dist/esm-browser/v5.js +0 -9
  613. package/node_modules/uuid/dist/esm-browser/v6.d.ts +0 -4
  614. package/node_modules/uuid/dist/esm-browser/v6.js +0 -17
  615. package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +0 -2
  616. package/node_modules/uuid/dist/esm-browser/v6ToV1.js +0 -10
  617. package/node_modules/uuid/dist/esm-browser/v7.d.ts +0 -9
  618. package/node_modules/uuid/dist/esm-browser/v7.js +0 -65
  619. package/node_modules/uuid/dist/esm-browser/validate.d.ts +0 -2
  620. package/node_modules/uuid/dist/esm-browser/validate.js +0 -5
  621. package/node_modules/uuid/dist/esm-browser/version.d.ts +0 -2
  622. package/node_modules/uuid/dist/esm-browser/version.js +0 -8
  623. package/node_modules/uuid/package.json +0 -132
  624. package/vendor/aab-tool/LICENSE +0 -202
  625. package/vendor/aab-tool/README.txt +0 -1
  626. package/vendor/aab-tool/bundletool.jar +0 -0
  627. /package/{node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts → lib/bootstrap.d.ts} +0 -0
  628. /package/{node_modules/uuid/dist/cjs/uuid-bin.d.ts → lib/commands/test-init.d.ts} +0 -0
  629. /package/{node_modules/uuid/dist/esm-browser/types.js → lib/commands/test.d.ts} +0 -0
  630. /package/{node_modules/uuid/dist/esm-browser/uuid-bin.d.ts → lib/common/bootstrap.d.ts} +0 -0
  631. /package/{node_modules/uuid/dist/esm/types.js → lib/common/common-lib.d.ts} +0 -0
  632. /package/{node_modules/uuid/dist/esm/uuid-bin.d.ts → lib/common/mobile/ios/ios-device-product-name-mapper.d.ts} +0 -0
@@ -12,7 +12,55 @@ const _ = require("lodash");
12
12
  const decorators_1 = require("../common/decorators");
13
13
  const constants = require("../constants");
14
14
  const helpers_1 = require("../common/helpers");
15
+ const deprecation_1 = require("../common/deprecation");
15
16
  const yok_1 = require("../common/yok");
17
+ const constants_1 = require("../common/constants");
18
+ const inject_1 = require("../common/di/inject");
19
+ const contracts_1 = require("../common/contracts");
20
+ const define_command_1 = require("../common/define-command");
21
+ const command_definition_adapter_1 = require("../common/services/command-definition-adapter");
22
+ function isNonEmptyString(value) {
23
+ return typeof value === "string" && value.trim().length > 0;
24
+ }
25
+ function isCommandsMap(commands) {
26
+ return !!commands && typeof commands === "object" && !Array.isArray(commands);
27
+ }
28
+ function getEntryModulePath(value) {
29
+ if (isNonEmptyString(value)) {
30
+ return value;
31
+ }
32
+ if (value &&
33
+ typeof value === "object" &&
34
+ !Array.isArray(value) &&
35
+ isNonEmptyString(value.path)) {
36
+ return value.path;
37
+ }
38
+ return null;
39
+ }
40
+ const isDefaultCommandName = (name) => name.indexOf(constants_1.CommandsDelimiters.DefaultHierarchicalCommand) !== -1;
41
+ function describeRejection(rejection) {
42
+ switch (rejection.reason) {
43
+ case "invalid-name":
44
+ return rejection.detail;
45
+ case "claimed":
46
+ return `it is already registered by extension ${rejection.owner}`;
47
+ case "built-in":
48
+ return "it is already provided by the CLI";
49
+ case "subcommand-parent":
50
+ return "it is already in use as the parent of its subcommands";
51
+ case "parent-is-command":
52
+ return `'${rejection.parent}' is already registered as a command of its own, so the subcommand could never be reached`;
53
+ }
54
+ }
55
+ function getDeclaredCommandNames(commands, opts) {
56
+ if (Array.isArray(commands)) {
57
+ return opts && opts.copy ? commands.slice() : commands;
58
+ }
59
+ if (isCommandsMap(commands)) {
60
+ return _.keys(commands);
61
+ }
62
+ return null;
63
+ }
16
64
  class ExtensibilityService {
17
65
  get pathToPackageJson() {
18
66
  return path.join(this.pathToExtensions, constants.PACKAGE_JSON_FILE_NAME);
@@ -24,13 +72,15 @@ class ExtensibilityService {
24
72
  set pathToExtensions(pathToExtensions) {
25
73
  this.customPathToExtensions = pathToExtensions;
26
74
  }
27
- constructor($fs, $logger, $packageManager, $settingsService, $requireService) {
75
+ constructor($fs, $logger, $packageManager, $settingsService, $requireService, $injector) {
28
76
  this.$fs = $fs;
29
77
  this.$logger = $logger;
30
78
  this.$packageManager = $packageManager;
31
79
  this.$settingsService = $settingsService;
32
80
  this.$requireService = $requireService;
81
+ this.$injector = $injector;
33
82
  this.customPathToExtensions = null;
83
+ this.commandRegistry = (0, inject_1.inject)(contracts_1.CommandRegistry);
34
84
  }
35
85
  async installExtension(extensionName) {
36
86
  this.$logger.trace(`Start installation of extension '${extensionName}'.`);
@@ -83,18 +133,36 @@ class ExtensibilityService {
83
133
  packageJsonData.nativescript &&
84
134
  packageJsonData.nativescript.docs &&
85
135
  path.join(pathToExtension, packageJsonData.nativescript.docs);
86
- return {
136
+ const result = {
87
137
  extensionName: packageJsonData.name,
88
138
  version: packageJsonData.version,
89
139
  docs,
90
140
  pathToExtension,
91
141
  };
142
+ const commands = getDeclaredCommandNames(packageJsonData &&
143
+ packageJsonData.nativescript &&
144
+ packageJsonData.nativescript.commands);
145
+ if (commands) {
146
+ result.commands = commands;
147
+ }
148
+ return result;
92
149
  }
93
150
  async loadExtension(extensionName) {
94
151
  try {
95
152
  await this.assertExtensionIsInstalled(extensionName);
96
153
  const pathToExtension = this.getPathToExtension(extensionName);
97
- this.$requireService.require(pathToExtension);
154
+ const commandsMap = this.getDeclaredCommandsMap(extensionName);
155
+ if (commandsMap) {
156
+ this.registerDeclaredCommands(extensionName, pathToExtension, commandsMap);
157
+ }
158
+ else {
159
+ (0, deprecation_1.reportDeprecation)({
160
+ api: "extensions.require-time-registration",
161
+ detail: extensionName,
162
+ logger: this.$logger,
163
+ });
164
+ this.$requireService.require(pathToExtension);
165
+ }
98
166
  return this.getInstalledExtensionData(extensionName);
99
167
  }
100
168
  catch (error) {
@@ -121,9 +189,9 @@ class ExtensibilityService {
121
189
  try {
122
190
  const registryData = await this.$packageManager.getRegistryPackageData(extensionName);
123
191
  const latestPackageData = registryData.versions[registryData["dist-tags"].latest];
124
- const commands = latestPackageData &&
192
+ const commands = getDeclaredCommandNames(latestPackageData &&
125
193
  latestPackageData.nativescript &&
126
- latestPackageData.nativescript.commands;
194
+ latestPackageData.nativescript.commands, { copy: true });
127
195
  if (commands && commands.length) {
128
196
  _.filter(commands, (command) => command.indexOf(inputOpts.defaultCommandDelimiter) !== -1).forEach((defaultCommand) => {
129
197
  commands.push(defaultCommand.replace(defaultCommandRegExp, ""));
@@ -151,6 +219,59 @@ class ExtensibilityService {
151
219
  }
152
220
  return null;
153
221
  }
222
+ getDeclaredCommandsMap(extensionName) {
223
+ let commands;
224
+ try {
225
+ const packageJsonData = this.getExtensionPackageJsonData(extensionName);
226
+ commands =
227
+ packageJsonData &&
228
+ packageJsonData.nativescript &&
229
+ packageJsonData.nativescript.commands;
230
+ }
231
+ catch (err) {
232
+ this.$logger.trace(`Unable to read the package.json of extension ${extensionName}. Error is: ${err}`);
233
+ return null;
234
+ }
235
+ return isCommandsMap(commands) ? commands : null;
236
+ }
237
+ registerDeclaredCommands(extensionName, pathToExtension, commands) {
238
+ const commandNames = _.sortBy(_.keys(commands), (commandName) => isDefaultCommandName(commandName) ? 0 : 1);
239
+ for (const commandName of commandNames) {
240
+ const modulePath = getEntryModulePath(commands[commandName]);
241
+ if (!isNonEmptyString(commandName) || !modulePath) {
242
+ this.$logger.warn(`Extension ${extensionName} declares an invalid command in its nativescript.commands: '${commandName}': ${JSON.stringify(commands[commandName])}. The command name must be a non-empty string and its value either the path to its module or an object with a non-empty 'path'. Skipping this command.`);
243
+ continue;
244
+ }
245
+ const absoluteModulePath = path.join(pathToExtension, modulePath);
246
+ const result = this.commandRegistry.registerDeferredCommand(commandName, {
247
+ owner: extensionName,
248
+ source: absoluteModulePath,
249
+ load: () => this.loadDeclaredCommand(extensionName, commandName, absoluteModulePath),
250
+ });
251
+ if (!result.registered) {
252
+ this.$logger.warn(`Extension ${extensionName} is unable to register command '${commandName}': ${describeRejection(result.rejection)}.`);
253
+ }
254
+ }
255
+ }
256
+ loadDeclaredCommand(extensionName, commandName, absoluteModulePath) {
257
+ var _a;
258
+ const exported = require(absoluteModulePath);
259
+ const candidate = (_a = (exported && exported.default)) !== null && _a !== void 0 ? _a : exported;
260
+ if (!(0, define_command_1.isCommandDefinition)(candidate)) {
261
+ return;
262
+ }
263
+ this.warnOnDeclaredNameMismatch(extensionName, commandName, absoluteModulePath, candidate);
264
+ (0, command_definition_adapter_1.registerDefinitionAs)(commandName, candidate, this.$injector);
265
+ }
266
+ warnOnDeclaredNameMismatch(extensionName, commandName, absoluteModulePath, definition) {
267
+ const declaredNames = Array.isArray(definition.name)
268
+ ? definition.name
269
+ : [definition.name];
270
+ if (_.includes(declaredNames, commandName)) {
271
+ return;
272
+ }
273
+ this.$logger.warn(`Extension ${extensionName} declares command '${commandName}' in its package.json, but the definition in ${absoluteModulePath} names itself '${declaredNames.join("', '")}'. The command runs as '${commandName}' - the manifest decides how it is invoked.`);
274
+ }
154
275
  getPathToExtension(extensionName) {
155
276
  return path.join(this.pathToExtensions, constants.NODE_MODULES_FOLDER_NAME, extensionName);
156
277
  }
@@ -0,0 +1,17 @@
1
+ import { IFilesHashService } from "../definitions/files-hash-service";
2
+ import { IPlatformData } from "../definitions/platform";
3
+ import { IFileSystem, IStringDictionary } from "../common/declarations";
4
+ import { IOptions } from "../declarations";
5
+ export declare class FilesHashService implements IFilesHashService {
6
+ private $fs;
7
+ private $logger;
8
+ private $options;
9
+ constructor($fs: IFileSystem, $logger: ILogger, $options: IOptions);
10
+ generateHashes(files: string[]): Promise<IStringDictionary>;
11
+ generateHashesForProject(platformData: IPlatformData): Promise<IStringDictionary>;
12
+ saveHashesForProject(platformData: IPlatformData, hashesFileDirectory: string): Promise<IStringDictionary>;
13
+ getChanges(files: string[], oldHashes: IStringDictionary): Promise<IStringDictionary>;
14
+ hasChangesInShasums(oldHashes: IStringDictionary, newHashes: IStringDictionary): boolean;
15
+ saveHashes(hashes: IStringDictionary, hashesFileDirectory: string): void;
16
+ getChangesInShasums(oldHashes: IStringDictionary, newHashes: IStringDictionary): IStringDictionary;
17
+ }
@@ -0,0 +1,19 @@
1
+ export declare class HmrStatusService implements IHmrStatusService {
2
+ private $logParserService;
3
+ private $devicePlatformsConstants;
4
+ private $logger;
5
+ static HMR_STATUS_LOG_REGEX: RegExp;
6
+ static STARTED_MESSAGE: string;
7
+ static SUCCESS_MESSAGE: string;
8
+ static FAILED_MESSAGE: string;
9
+ private hashOperationStatuses;
10
+ private intervals;
11
+ constructor($logParserService: ILogParserService, $devicePlatformsConstants: Mobile.IDevicePlatformsConstants, $logger: ILogger);
12
+ getHmrStatus(deviceId: string, operationHash: string): Promise<number>;
13
+ watchHmrStatus(deviceId: string, operationHash: string): void;
14
+ attachToHmrStatusEvent(): void;
15
+ private handleAppCrash;
16
+ private handleHmrStatusFound;
17
+ private getStatusByKey;
18
+ private setData;
19
+ }
@@ -0,0 +1,6 @@
1
+ import { IInfoService, IVersionsService } from "../declarations";
2
+ export declare class InfoService implements IInfoService {
3
+ private $versionsService;
4
+ constructor($versionsService: IVersionsService);
5
+ printComponentsInfo(): Promise<void>;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { IInitializeOptions, IInitializeService } from "../definitions/initialize-service";
2
+ import { IInjector } from "../common/definitions/yok";
3
+ export declare class InitializeService implements IInitializeService {
4
+ private $injector;
5
+ constructor($injector: IInjector);
6
+ initialize(initOpts?: IInitializeOptions): Promise<void>;
7
+ private showWarnings;
8
+ }
@@ -0,0 +1,13 @@
1
+ import { IProjectData, IBuildConfig } from "../../definitions/project";
2
+ import { IFileSystem } from "../../common/declarations";
3
+ import { ITempService } from "../../definitions/temp-service";
4
+ export declare class ExportOptionsPlistService implements IExportOptionsPlistService {
5
+ private $fs;
6
+ private $tempService;
7
+ private $projectData;
8
+ constructor($fs: IFileSystem, $tempService: ITempService, $projectData: IProjectData);
9
+ private getExtensionProvisions;
10
+ createDevelopmentExportOptionsPlist(archivePath: string, projectData: IProjectData, buildConfig: IBuildConfig): Promise<IExportOptionsPlistOutput>;
11
+ createDistributionExportOptionsPlist(archivePath: string, projectData: IProjectData, buildConfig: IBuildConfig): Promise<IExportOptionsPlistOutput>;
12
+ private getExportOptionsMethod;
13
+ }
@@ -0,0 +1,33 @@
1
+ import * as mobileProvisionFinder from "ios-mobileprovision-finder";
2
+ import { IOSProvisionService } from "../ios-provision-service";
3
+ import { IOSBuildData } from "../../data/build-data";
4
+ import { IOptions, IXcconfigService, IXcprojService } from "../../declarations";
5
+ import { IProjectData } from "../../definitions/project";
6
+ import { IErrors, IFileSystem } from "../../common/declarations";
7
+ export declare class IOSSigningService implements IiOSSigningService {
8
+ private $errors;
9
+ private $fs;
10
+ private $iOSProvisionService;
11
+ private $logger;
12
+ private $options;
13
+ private $pbxprojDomXcode;
14
+ private $prompter;
15
+ private $xcconfigService;
16
+ private $xcprojService;
17
+ constructor($errors: IErrors, $fs: IFileSystem, $iOSProvisionService: IOSProvisionService, $logger: ILogger, $options: IOptions, $pbxprojDomXcode: IPbxprojDomXcode, $prompter: IPrompter, $xcconfigService: IXcconfigService, $xcprojService: IXcprojService);
18
+ setupSigningForDevice(projectRoot: string, projectData: IProjectData, iOSBuildData: IOSBuildData): Promise<void>;
19
+ setupSigningFromTeam(projectRoot: string, projectData: IProjectData, teamId: string): Promise<void>;
20
+ setupSigningFromProvision(projectRoot: string, projectData: IProjectData, provision?: string, mobileProvisionData?: mobileProvisionFinder.provision.MobileProvision): Promise<void>;
21
+ private getExtensionNames;
22
+ private getExtensionsManualSigningConfiguration;
23
+ private getManualSigningConfiguration;
24
+ private getBuildXCConfigFilePath;
25
+ private getPbxProjPath;
26
+ private readTeamIdFromFile;
27
+ private getDevelopmentTeam;
28
+ private readXCConfigDevelopmentTeam;
29
+ private readXCConfigProvisioningProfile;
30
+ private readXCConfigProvisioningProfileForIPhoneOs;
31
+ private readXCConfigProvisioningProfileSpecifier;
32
+ private readXCConfigProvisioningProfileSpecifierForIPhoneOs;
33
+ }
@@ -0,0 +1,16 @@
1
+ import { IFileSystem } from "../../common/declarations";
2
+ export declare class SPMPbxprojService implements ISPMPbxprojService {
3
+ private $fs;
4
+ private $logger;
5
+ private $xcode;
6
+ constructor($fs: IFileSystem, $logger: ILogger, $xcode: IXcode);
7
+ addPackages(projectRoot: string, assignments: IosSPMPackageAssignment[]): boolean;
8
+ private findPbxProjPath;
9
+ private findTargetId;
10
+ private addPackageToTarget;
11
+ private findFrameworksBuildPhase;
12
+ private addOrUpdateArrayEntry;
13
+ private addOrUpdateEntry;
14
+ private findUuidByComment;
15
+ }
16
+ export declare function classifyVersion(version: string): Record<string, string>;
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SPMPbxprojService = void 0;
4
+ exports.classifyVersion = classifyVersion;
5
+ const path = require("path");
6
+ const semver = require("semver");
7
+ const yok_1 = require("../../common/yok");
8
+ class SPMPbxprojService {
9
+ constructor($fs, $logger, $xcode) {
10
+ this.$fs = $fs;
11
+ this.$logger = $logger;
12
+ this.$xcode = $xcode;
13
+ }
14
+ addPackages(projectRoot, assignments) {
15
+ if (!assignments.length) {
16
+ return false;
17
+ }
18
+ const pbxProjPath = this.findPbxProjPath(projectRoot);
19
+ if (!pbxProjPath) {
20
+ this.$logger.trace(`SPM: no Xcode project found under ${projectRoot}; skipping.`);
21
+ return false;
22
+ }
23
+ const project = new this.$xcode.project(pbxProjPath);
24
+ project.parseSync();
25
+ let added = false;
26
+ for (const { targetName, package: pkg } of assignments) {
27
+ const targetId = this.findTargetId(project, targetName);
28
+ if (!targetId) {
29
+ this.$logger.warn(`SPM: target "${targetName}" not found in ${path.basename(pbxProjPath)} — skipping package "${pkg.name}".`);
30
+ continue;
31
+ }
32
+ if (this.addPackageToTarget(project, targetId, pkg, projectRoot)) {
33
+ added = true;
34
+ }
35
+ }
36
+ if (!added) {
37
+ return false;
38
+ }
39
+ this.$fs.writeFile(pbxProjPath, project.writeSync({ omitEmptyValues: true }));
40
+ return true;
41
+ }
42
+ findPbxProjPath(projectRoot) {
43
+ if (!this.$fs.exists(projectRoot)) {
44
+ return null;
45
+ }
46
+ const xcodeprojName = this.$fs
47
+ .readDirectory(projectRoot)
48
+ .find((entry) => entry.endsWith(".xcodeproj"));
49
+ if (!xcodeprojName) {
50
+ return null;
51
+ }
52
+ const pbxProjPath = path.join(projectRoot, xcodeprojName, "project.pbxproj");
53
+ return this.$fs.exists(pbxProjPath) ? pbxProjPath : null;
54
+ }
55
+ findTargetId(project, targetName) {
56
+ var _a, _b;
57
+ const targets = (_a = project.pbxNativeTargetSection()) !== null && _a !== void 0 ? _a : {};
58
+ for (const key of Object.keys(targets)) {
59
+ if (key.endsWith("_comment")) {
60
+ continue;
61
+ }
62
+ const name = (_b = targets[key]) === null || _b === void 0 ? void 0 : _b.name;
63
+ if (name === targetName || name === `"${targetName}"`) {
64
+ return key;
65
+ }
66
+ }
67
+ return null;
68
+ }
69
+ addPackageToTarget(project, targetId, pkg, projectRoot) {
70
+ var _a, _b, _c, _d;
71
+ const target = project.pbxNativeTargetSection()[targetId];
72
+ const frameworkBuildPhaseObj = this.findFrameworksBuildPhase(project, target);
73
+ if (!frameworkBuildPhaseObj) {
74
+ this.$logger.warn(`SPM: target for package "${pkg.name}" has no Frameworks build phase — skipping.`);
75
+ return false;
76
+ }
77
+ const firstProject = project.getFirstProject().firstProject;
78
+ const packageReferences = ((_a = firstProject["packageReferences"]) !== null && _a !== void 0 ? _a : (firstProject["packageReferences"] = []));
79
+ const packageProductReferences = ((_b = target["packageProductDependencies"]) !== null && _b !== void 0 ? _b : (target["packageProductDependencies"] = []));
80
+ const frameworkBuildPhaseFiles = ((_c = frameworkBuildPhaseObj["files"]) !== null && _c !== void 0 ? _c : (frameworkBuildPhaseObj["files"] = []));
81
+ let packageReferenceComment;
82
+ let packageReferenceSection;
83
+ let packageReferenceSectionContent;
84
+ if ("path" in pkg) {
85
+ const relativePath = path.relative(projectRoot, path.resolve(projectRoot, pkg.path));
86
+ packageReferenceComment = `XCLocalSwiftPackageReference "${relativePath}"`;
87
+ packageReferenceSection = "XCLocalSwiftPackageReference";
88
+ packageReferenceSectionContent = {
89
+ isa: packageReferenceSection,
90
+ relativePath: JSON.stringify(relativePath),
91
+ };
92
+ }
93
+ else {
94
+ packageReferenceComment = `XCRemoteSwiftPackageReference "${pkg.name}"`;
95
+ packageReferenceSection = "XCRemoteSwiftPackageReference";
96
+ packageReferenceSectionContent = {
97
+ isa: packageReferenceSection,
98
+ repositoryURL: JSON.stringify(pkg.repositoryURL),
99
+ requirement: quoteValuesForPbxproj(classifyVersion(pkg.version)),
100
+ };
101
+ }
102
+ const { uuid: spmPackageReferenceUUID, comment: spmPackageReferenceComment, } = this.addOrUpdateEntry(project, packageReferenceSection, packageReferenceComment, packageReferenceSectionContent);
103
+ this.addOrUpdateArrayEntry(packageReferences, spmPackageReferenceUUID, {
104
+ value: spmPackageReferenceUUID,
105
+ comment: packageReferenceComment,
106
+ });
107
+ for (const lib of (_d = pkg.libs) !== null && _d !== void 0 ? _d : []) {
108
+ const { uuid: spmProductDependencyUUID } = this.addOrUpdateEntry(project, "XCSwiftPackageProductDependency", lib, {
109
+ isa: "XCSwiftPackageProductDependency",
110
+ package: spmPackageReferenceUUID,
111
+ package_comment: spmPackageReferenceComment,
112
+ productName: lib,
113
+ }, (existing) => existing.package === spmPackageReferenceUUID);
114
+ const libComment = `${lib} in Frameworks`;
115
+ const { uuid: spmBuildFileUuid } = this.addOrUpdateEntry(project, "PBXBuildFile", libComment, {
116
+ isa: "PBXBuildFile",
117
+ productRef: spmProductDependencyUUID,
118
+ productRef_comment: lib,
119
+ }, (existing) => existing.productRef === spmProductDependencyUUID);
120
+ this.addOrUpdateArrayEntry(packageProductReferences, spmProductDependencyUUID, {
121
+ value: spmProductDependencyUUID,
122
+ comment: lib,
123
+ });
124
+ this.addOrUpdateArrayEntry(frameworkBuildPhaseFiles, spmBuildFileUuid, {
125
+ value: spmBuildFileUuid,
126
+ comment: libComment,
127
+ });
128
+ }
129
+ return true;
130
+ }
131
+ findFrameworksBuildPhase(project, target) {
132
+ var _a, _b;
133
+ const section = (_a = project.hash.project.objects["PBXFrameworksBuildPhase"]) !== null && _a !== void 0 ? _a : {};
134
+ for (const phase of (_b = target.buildPhases) !== null && _b !== void 0 ? _b : []) {
135
+ const phaseObj = section[phase.value];
136
+ if (phaseObj) {
137
+ return phaseObj;
138
+ }
139
+ }
140
+ return null;
141
+ }
142
+ addOrUpdateArrayEntry(array, lookupValue, value) {
143
+ const existing = array.find((entry) => entry.value === lookupValue);
144
+ if (existing) {
145
+ Object.assign(existing, value);
146
+ return;
147
+ }
148
+ array.push(value);
149
+ }
150
+ addOrUpdateEntry(project, section, entryComment, entry, matches) {
151
+ var _a, _b;
152
+ var _c;
153
+ const pbxSection = ((_a = (_c = project.hash.project.objects)[section]) !== null && _a !== void 0 ? _a : (_c[section] = {}));
154
+ const entryUuid = (_b = this.findUuidByComment(project, section, entryComment, matches)) !== null && _b !== void 0 ? _b : project.generateUuid();
155
+ pbxSection[`${entryUuid}_comment`] = entryComment;
156
+ pbxSection[entryUuid] = entry;
157
+ return { uuid: entryUuid, comment: entryComment };
158
+ }
159
+ findUuidByComment(project, section, comment, matches) {
160
+ var _a;
161
+ const pbxSection = (_a = project.hash.project.objects[section]) !== null && _a !== void 0 ? _a : {};
162
+ const commentKey = Object.keys(pbxSection).find((key) => {
163
+ if (!key.endsWith("_comment") || pbxSection[key] !== comment) {
164
+ return false;
165
+ }
166
+ if (!matches) {
167
+ return true;
168
+ }
169
+ const existing = pbxSection[key.replace(/_comment$/, "")];
170
+ return existing != null && matches(existing);
171
+ });
172
+ return commentKey ? commentKey.replace(/_comment$/, "") : null;
173
+ }
174
+ }
175
+ exports.SPMPbxprojService = SPMPbxprojService;
176
+ function classifyVersion(version) {
177
+ var _a, _b;
178
+ if (version.startsWith("#")) {
179
+ return {
180
+ kind: "revision",
181
+ revision: version.replace("#", ""),
182
+ };
183
+ }
184
+ if (semver.valid(version)) {
185
+ return {
186
+ kind: "exactVersion",
187
+ version,
188
+ };
189
+ }
190
+ const range = semver.validRange(version);
191
+ if (range) {
192
+ const minimumVersion = (_a = semver.minVersion(range)) === null || _a === void 0 ? void 0 : _a.version;
193
+ if (version.startsWith("^")) {
194
+ return {
195
+ kind: "upToNextMajorVersion",
196
+ minimumVersion,
197
+ };
198
+ }
199
+ if (version.startsWith("~")) {
200
+ return {
201
+ kind: "upToNextMinorVersion",
202
+ minimumVersion,
203
+ };
204
+ }
205
+ const maximumVersion = (_b = semver.coerce(version.replace(minimumVersion !== null && minimumVersion !== void 0 ? minimumVersion : "", ""))) === null || _b === void 0 ? void 0 : _b.version;
206
+ if (maximumVersion && maximumVersion !== minimumVersion) {
207
+ return {
208
+ kind: "versionRange",
209
+ minimumVersion,
210
+ maximumVersion,
211
+ };
212
+ }
213
+ return {
214
+ kind: "upToNextMajorVersion",
215
+ minimumVersion,
216
+ };
217
+ }
218
+ return {
219
+ kind: "branch",
220
+ branch: version,
221
+ };
222
+ }
223
+ const UNQUOTED_PBX_VALUE = /^[A-Za-z0-9_$./]+$/;
224
+ function quoteValuesForPbxproj(obj) {
225
+ const result = {};
226
+ for (const [key, value] of Object.entries(obj)) {
227
+ result[key] =
228
+ typeof value === "string" && !UNQUOTED_PBX_VALUE.test(value)
229
+ ? JSON.stringify(value)
230
+ : value;
231
+ }
232
+ return result;
233
+ }
234
+ yok_1.injector.register("spmPbxprojService", SPMPbxprojService);
@@ -0,0 +1,35 @@
1
+ import { IProjectConfigService, IProjectData } from "../../definitions/project";
2
+ import { IPlatformData } from "../../definitions/platform";
3
+ import { IFileSystem } from "../../common/declarations";
4
+ import { ITerminalSpinnerService } from "../../definitions/terminal-spinner-service";
5
+ export declare class SPMService implements ISPMService {
6
+ private $logger;
7
+ private $fs;
8
+ private $projectConfigService;
9
+ private $terminalSpinnerService;
10
+ private $xcodebuildCommandService;
11
+ private $xcodebuildArgsService;
12
+ private $spmPbxprojService;
13
+ private static readonly SWIFTPM_REPO_CACHE;
14
+ private static readonly LARGE_CLONE_NOTE_BYTES;
15
+ private static readonly OUTPUT_TAIL_LINES;
16
+ constructor($logger: ILogger, $fs: IFileSystem, $projectConfigService: IProjectConfigService, $terminalSpinnerService: ITerminalSpinnerService, $xcodebuildCommandService: IXcodebuildCommandService, $xcodebuildArgsService: IXcodebuildArgsService, $spmPbxprojService: ISPMPbxprojService);
17
+ getSPMPackages(projectData: IProjectData, platform: string): IosSPMPackage[];
18
+ private mergePluginSPMPackages;
19
+ applySPMPackages(platformData: IPlatformData, projectData: IProjectData, pluginSpmPackages?: IosSPMPackage[]): Promise<void>;
20
+ resolveSPMDependencies(platformData: IPlatformData, projectData: IProjectData, options?: {
21
+ showProgress?: boolean;
22
+ }): Promise<void>;
23
+ ensureSPMDependenciesResolved(platformData: IPlatformData, projectData: IProjectData): Promise<void>;
24
+ private describeSPMActivity;
25
+ private describePackageActivity;
26
+ private shortenPackageRef;
27
+ private formatElapsed;
28
+ private formatPackageListing;
29
+ private describePackageSource;
30
+ private getPackageCloneSizeBytes;
31
+ private getDirectorySizeBytes;
32
+ private formatBytes;
33
+ private hasSPMReferences;
34
+ private arePackagesResolved;
35
+ }
@@ -2,19 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SPMService = void 0;
4
4
  const yok_1 = require("../../common/yok");
5
- const trapezedev_project_1 = require("@nstudio/trapezedev-project");
6
5
  const color_1 = require("../../color");
7
6
  const path = require("path");
8
7
  const os = require("os");
9
8
  const fs = require("fs");
10
9
  class SPMService {
11
- constructor($logger, $fs, $projectConfigService, $terminalSpinnerService, $xcodebuildCommandService, $xcodebuildArgsService) {
10
+ constructor($logger, $fs, $projectConfigService, $terminalSpinnerService, $xcodebuildCommandService, $xcodebuildArgsService, $spmPbxprojService) {
12
11
  this.$logger = $logger;
13
12
  this.$fs = $fs;
14
13
  this.$projectConfigService = $projectConfigService;
15
14
  this.$terminalSpinnerService = $terminalSpinnerService;
16
15
  this.$xcodebuildCommandService = $xcodebuildCommandService;
17
16
  this.$xcodebuildArgsService = $xcodebuildArgsService;
17
+ this.$spmPbxprojService = $spmPbxprojService;
18
18
  }
19
19
  getSPMPackages(projectData, platform) {
20
20
  const spmPackages = this.$projectConfigService.getValue(`${platform}.SPMPackages`, []);
@@ -48,17 +48,7 @@ class SPMService {
48
48
  return;
49
49
  }
50
50
  this.$logger.info(this.formatPackageListing(spmPackages));
51
- const project = new trapezedev_project_1.MobileProject(platformData.projectRoot, {
52
- ios: {
53
- path: ".",
54
- },
55
- enableAndroid: false,
56
- });
57
- await project.load();
58
- if (!project.ios) {
59
- this.$logger.trace("SPM: no iOS project found via trapeze.");
60
- return;
61
- }
51
+ const assignments = [];
62
52
  for (const pkg of spmPackages) {
63
53
  if ("path" in pkg) {
64
54
  this.$logger.trace("SPM: resolving path for package: ", pkg.path);
@@ -68,14 +58,15 @@ class SPMService {
68
58
  }
69
59
  }
70
60
  this.$logger.trace(`SPM: adding package ${pkg.name} to project.`, pkg);
71
- await project.ios.addSPMPackage(projectData.projectName, pkg);
72
- if ((_a = pkg.targets) === null || _a === void 0 ? void 0 : _a.length) {
73
- for (const target of pkg.targets) {
74
- await project.ios.addSPMPackage(target, pkg);
75
- }
61
+ assignments.push({ targetName: projectData.projectName, package: pkg });
62
+ for (const target of (_a = pkg.targets) !== null && _a !== void 0 ? _a : []) {
63
+ assignments.push({ targetName: target, package: pkg });
76
64
  }
77
65
  }
78
- await project.commit();
66
+ if (!this.$spmPbxprojService.addPackages(platformData.projectRoot, assignments)) {
67
+ this.$logger.trace("SPM: no packages were applied to the project.");
68
+ return;
69
+ }
79
70
  await this.resolveSPMDependencies(platformData, projectData, {
80
71
  showProgress: true,
81
72
  });
@@ -0,0 +1,20 @@
1
+ import { IIOSWatchAppService, IProjectData, IBuildConfig } from "../../definitions/project";
2
+ import { IXcconfigService } from "../../declarations";
3
+ import { IPlatformData } from "../../definitions/platform";
4
+ import { IFileSystem } from "../../common/declarations";
5
+ export declare class XcodebuildArgsService implements IXcodebuildArgsService {
6
+ private $devicePlatformsConstants;
7
+ private $devicesService;
8
+ private $fs;
9
+ private $iOSWatchAppService;
10
+ private $logger;
11
+ private $xcconfigService;
12
+ constructor($devicePlatformsConstants: Mobile.IDevicePlatformsConstants, $devicesService: Mobile.IDevicesService, $fs: IFileSystem, $iOSWatchAppService: IIOSWatchAppService, $logger: ILogger, $xcconfigService: IXcconfigService);
13
+ getBuildForSimulatorArgs(platformData: IPlatformData, projectData: IProjectData, buildConfig: IBuildConfig): Promise<string[]>;
14
+ getBuildForDeviceArgs(platformData: IPlatformData, projectData: IProjectData, buildConfig: IBuildConfig): Promise<string[]>;
15
+ private getArchitecturesArgs;
16
+ getXcodeProjectArgs(platformData: IPlatformData, projectData: IProjectData): string[];
17
+ private getBuildLoggingArgs;
18
+ private getBuildCommonArgs;
19
+ private getArchitecturesFromConnectedDevices;
20
+ }