nativescript 8.9.0-dev.1 → 8.9.0-dev.2

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 (404) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/lib/.d.ts +1 -0
  3. package/lib/android-tools-info.js +32 -9
  4. package/lib/base-package-manager.js +71 -47
  5. package/lib/bootstrap.js +6 -1
  6. package/lib/bun-package-manager.js +104 -65
  7. package/lib/color.js +5 -2
  8. package/lib/commands/add-platform.js +31 -14
  9. package/lib/commands/apple-login.js +30 -18
  10. package/lib/commands/appstore-list.js +46 -34
  11. package/lib/commands/appstore-upload.js +68 -52
  12. package/lib/commands/build.js +90 -57
  13. package/lib/commands/clean.js +197 -161
  14. package/lib/commands/command-base.js +28 -14
  15. package/lib/commands/config.js +71 -48
  16. package/lib/commands/create-project.js +235 -210
  17. package/lib/commands/debug.js +93 -66
  18. package/lib/commands/deploy.js +47 -30
  19. package/lib/commands/embedding/embed.js +59 -33
  20. package/lib/commands/extensibility/install-extension.js +17 -5
  21. package/lib/commands/extensibility/list-extensions.js +25 -13
  22. package/lib/commands/extensibility/uninstall-extension.js +16 -4
  23. package/lib/commands/fonts.js +42 -30
  24. package/lib/commands/generate-assets.js +29 -13
  25. package/lib/commands/generate-help.js +14 -2
  26. package/lib/commands/generate.js +70 -12
  27. package/lib/commands/info.js +14 -2
  28. package/lib/commands/install.js +50 -34
  29. package/lib/commands/list-platforms.js +26 -14
  30. package/lib/commands/migrate.js +27 -15
  31. package/lib/commands/native-add.js +51 -23
  32. package/lib/commands/platform-clean.js +33 -19
  33. package/lib/commands/plugin/add-plugin.js +26 -12
  34. package/lib/commands/plugin/build-plugin.js +45 -31
  35. package/lib/commands/plugin/create-plugin.js +138 -110
  36. package/lib/commands/plugin/list-plugins.js +34 -22
  37. package/lib/commands/plugin/remove-plugin.js +35 -20
  38. package/lib/commands/plugin/update-plugin.js +34 -20
  39. package/lib/commands/post-install.js +39 -20
  40. package/lib/commands/prepare.js +39 -22
  41. package/lib/commands/preview.js +64 -49
  42. package/lib/commands/remove-platform.js +19 -7
  43. package/lib/commands/resources/resources-update.js +28 -13
  44. package/lib/commands/run.js +77 -55
  45. package/lib/commands/setup.js +1 -0
  46. package/lib/commands/start.js +20 -6
  47. package/lib/commands/test-init.js +138 -123
  48. package/lib/commands/test.js +97 -67
  49. package/lib/commands/typings.js +143 -126
  50. package/lib/commands/update-platform.js +40 -22
  51. package/lib/commands/update.js +45 -30
  52. package/lib/commands/widget.js +767 -0
  53. package/lib/common/bootstrap.js +1 -0
  54. package/lib/common/child-process.js +75 -53
  55. package/lib/common/codeGeneration/code-entity.js +2 -1
  56. package/lib/common/codeGeneration/code-printer.js +2 -1
  57. package/lib/common/command-params.js +19 -7
  58. package/lib/common/commands/analytics.js +43 -27
  59. package/lib/common/commands/autocompletion.js +59 -39
  60. package/lib/common/commands/device/device-log-stream.js +24 -12
  61. package/lib/common/commands/device/get-file.js +35 -22
  62. package/lib/common/commands/device/list-applications.js +24 -12
  63. package/lib/common/commands/device/list-devices.js +90 -72
  64. package/lib/common/commands/device/list-files.js +36 -23
  65. package/lib/common/commands/device/put-file.js +35 -22
  66. package/lib/common/commands/device/run-application.js +26 -12
  67. package/lib/common/commands/device/stop-application.js +23 -11
  68. package/lib/common/commands/device/uninstall-application.js +18 -6
  69. package/lib/common/commands/doctor.js +3 -2
  70. package/lib/common/commands/generate-messages.js +29 -17
  71. package/lib/common/commands/help.js +34 -20
  72. package/lib/common/commands/package-manager-get.js +18 -6
  73. package/lib/common/commands/package-manager-set.js +21 -9
  74. package/lib/common/commands/post-install.js +14 -2
  75. package/lib/common/commands/preuninstall.js +48 -24
  76. package/lib/common/commands/proxy/proxy-base.js +23 -8
  77. package/lib/common/commands/proxy/proxy-clear.js +16 -4
  78. package/lib/common/commands/proxy/proxy-get.js +15 -3
  79. package/lib/common/commands/proxy/proxy-set.js +101 -87
  80. package/lib/common/common-lib.js +1 -0
  81. package/lib/common/constants.js +22 -11
  82. package/lib/common/decorators.js +70 -10
  83. package/lib/common/dispatchers.js +106 -80
  84. package/lib/common/errors.js +116 -91
  85. package/lib/common/file-system.js +141 -108
  86. package/lib/common/header.js +5 -1
  87. package/lib/common/helpers.js +267 -152
  88. package/lib/common/host-info.js +54 -37
  89. package/lib/common/http-client.js +128 -93
  90. package/lib/common/logger/appenders/cli-appender.js +6 -1
  91. package/lib/common/logger/appenders/emit-appender.js +6 -1
  92. package/lib/common/logger/layouts/cli-layout.js +3 -1
  93. package/lib/common/logger/logger.js +9 -4
  94. package/lib/common/messages/messages.js +6 -0
  95. package/lib/common/mobile/android/android-application-manager.js +162 -122
  96. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +2 -1
  97. package/lib/common/mobile/android/android-debug-bridge.js +118 -87
  98. package/lib/common/mobile/android/android-device-file-system.js +135 -98
  99. package/lib/common/mobile/android/android-device-hash-service.js +78 -50
  100. package/lib/common/mobile/android/android-device.js +93 -68
  101. package/lib/common/mobile/android/android-emulator-services.js +131 -105
  102. package/lib/common/mobile/android/android-ini-file-parser.js +9 -0
  103. package/lib/common/mobile/android/android-log-filter.js +5 -1
  104. package/lib/common/mobile/android/android-virtual-device-service.js +123 -76
  105. package/lib/common/mobile/android/device-android-debug-bridge.js +30 -13
  106. package/lib/common/mobile/android/genymotion/genymotion-service.js +123 -91
  107. package/lib/common/mobile/android/genymotion/virtualbox-service.js +92 -64
  108. package/lib/common/mobile/android/logcat-helper.js +140 -108
  109. package/lib/common/mobile/application-manager-base.js +113 -84
  110. package/lib/common/mobile/device-emitter.js +4 -0
  111. package/lib/common/mobile/device-log-emitter.js +1 -0
  112. package/lib/common/mobile/device-log-provider-base.js +19 -7
  113. package/lib/common/mobile/device-log-provider.js +23 -0
  114. package/lib/common/mobile/device-platforms-constants.js +1 -0
  115. package/lib/common/mobile/emulator-helper.js +3 -0
  116. package/lib/common/mobile/ios/device/ios-application-manager.js +111 -79
  117. package/lib/common/mobile/ios/device/ios-device-file-system.js +106 -78
  118. package/lib/common/mobile/ios/device/ios-device-operations.js +146 -105
  119. package/lib/common/mobile/ios/device/ios-device.js +40 -20
  120. package/lib/common/mobile/ios/ios-device-base.js +82 -58
  121. package/lib/common/mobile/ios/ios-device-product-name-mapper.js +2 -0
  122. package/lib/common/mobile/ios/ios-log-filter.js +1 -0
  123. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +96 -63
  124. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +2 -1
  125. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +95 -60
  126. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +48 -27
  127. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +63 -37
  128. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +36 -24
  129. package/lib/common/mobile/local-to-device-path-data-factory.js +1 -0
  130. package/lib/common/mobile/log-filter.js +2 -0
  131. package/lib/common/mobile/logging-levels.js +1 -0
  132. package/lib/common/mobile/mobile-core/android-device-discovery.js +64 -43
  133. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +35 -21
  134. package/lib/common/mobile/mobile-core/android-process-service.js +214 -143
  135. package/lib/common/mobile/mobile-core/device-discovery.js +14 -2
  136. package/lib/common/mobile/mobile-core/devices-service.js +505 -386
  137. package/lib/common/mobile/mobile-core/ios-device-discovery.js +37 -24
  138. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +65 -47
  139. package/lib/common/mobile/mobile-helper.js +27 -15
  140. package/lib/common/mobile/wp8/wp8-emulator-services.js +53 -25
  141. package/lib/common/opener.js +3 -2
  142. package/lib/common/os-info.js +1 -0
  143. package/lib/common/plist-parser.js +1 -0
  144. package/lib/common/project-helper.js +1 -0
  145. package/lib/common/prompter.js +114 -91
  146. package/lib/common/queue.js +21 -9
  147. package/lib/common/resource-loader.js +1 -0
  148. package/lib/common/services/auto-completion-service.js +65 -40
  149. package/lib/common/services/cancellation.js +29 -17
  150. package/lib/common/services/commands-service.js +180 -146
  151. package/lib/common/services/help-service.js +166 -133
  152. package/lib/common/services/hooks-service.js +121 -93
  153. package/lib/common/services/ios-notification-service.js +35 -21
  154. package/lib/common/services/json-file-settings-service.js +77 -52
  155. package/lib/common/services/lock-service.js +58 -35
  156. package/lib/common/services/message-contract-generator.js +47 -35
  157. package/lib/common/services/messages-service.js +1 -0
  158. package/lib/common/services/micro-templating-service.js +21 -4
  159. package/lib/common/services/net-service.js +110 -90
  160. package/lib/common/services/project-files-manager.js +28 -10
  161. package/lib/common/services/project-files-provider-base.js +1 -0
  162. package/lib/common/services/proxy-service.js +25 -13
  163. package/lib/common/services/qr.js +25 -13
  164. package/lib/common/services/settings-service.js +2 -1
  165. package/lib/common/services/xcode-select-service.js +36 -20
  166. package/lib/common/utils.js +3 -2
  167. package/lib/common/validators/project-name-validator.js +2 -1
  168. package/lib/common/validators/validation-result.js +2 -1
  169. package/lib/common/verify-node-version.js +11 -3
  170. package/lib/common/yok.js +69 -35
  171. package/lib/config.js +72 -36
  172. package/lib/constants-provider.js +1 -0
  173. package/lib/constants.js +78 -25
  174. package/lib/controllers/build-controller.js +100 -82
  175. package/lib/controllers/debug-controller.js +133 -107
  176. package/lib/controllers/deploy-controller.js +24 -15
  177. package/lib/controllers/migrate-controller.js +884 -723
  178. package/lib/controllers/platform-controller.js +94 -71
  179. package/lib/controllers/prepare-controller.js +274 -232
  180. package/lib/controllers/run-controller.js +427 -397
  181. package/lib/controllers/update-controller-base.js +30 -16
  182. package/lib/controllers/update-controller.js +130 -94
  183. package/lib/data/build-data.js +1 -0
  184. package/lib/data/controller-data-base.js +1 -0
  185. package/lib/data/debug-data.js +1 -0
  186. package/lib/data/platform-data.js +1 -0
  187. package/lib/data/prepare-data.js +2 -4
  188. package/lib/data/run-data.js +1 -0
  189. package/lib/definitions/project.d.ts +26 -0
  190. package/lib/detached-processes/cleanup-js-subprocess.js +20 -5
  191. package/lib/detached-processes/cleanup-process.js +43 -30
  192. package/lib/detached-processes/file-log-service.js +2 -1
  193. package/lib/device-path-provider.js +35 -23
  194. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +171 -149
  195. package/lib/device-sockets/ios/notification.js +4 -1
  196. package/lib/device-sockets/ios/socket-request-executor.js +42 -24
  197. package/lib/helpers/android-bundle-validator-helper.js +3 -2
  198. package/lib/helpers/deploy-command-helper.js +50 -44
  199. package/lib/helpers/key-command-helper.js +17 -6
  200. package/lib/helpers/livesync-command-helper.js +155 -137
  201. package/lib/helpers/network-connectivity-validator.js +18 -6
  202. package/lib/helpers/options-track-helper.js +19 -7
  203. package/lib/helpers/package-path-helper.js +1 -0
  204. package/lib/helpers/platform-command-helper.js +127 -101
  205. package/lib/helpers/version-validator-helper.js +1 -0
  206. package/lib/key-commands/bootstrap.js +3 -2
  207. package/lib/key-commands/index.js +205 -154
  208. package/lib/nativescript-cli-lib-bootstrap.js +4 -0
  209. package/lib/nativescript-cli-lib.js +1 -0
  210. package/lib/nativescript-cli.js +24 -6
  211. package/lib/node/pbxproj-dom-xcode.js +1 -0
  212. package/lib/node/xcode.js +1 -0
  213. package/lib/node-package-manager.js +114 -81
  214. package/lib/options.js +156 -122
  215. package/lib/package-installation-manager.js +172 -130
  216. package/lib/package-manager.js +88 -63
  217. package/lib/platform-command-param.js +16 -4
  218. package/lib/pnpm-package-manager.js +81 -59
  219. package/lib/project-data.js +13 -1
  220. package/lib/providers/project-files-provider.js +2 -1
  221. package/lib/resolvers/livesync-service-resolver.js +1 -0
  222. package/lib/services/analytics/analytics-broker-process.js +32 -19
  223. package/lib/services/analytics/analytics-broker.js +31 -17
  224. package/lib/services/analytics/analytics-service.js +210 -170
  225. package/lib/services/analytics/google-analytics-provider.js +59 -43
  226. package/lib/services/analytics-settings-service.js +37 -15
  227. package/lib/services/android/android-bundle-tool-service.js +61 -43
  228. package/lib/services/android/gradle-build-args-service.js +23 -9
  229. package/lib/services/android/gradle-build-service.js +36 -22
  230. package/lib/services/android/gradle-command-service.js +36 -22
  231. package/lib/services/android-device-debug-service.js +123 -90
  232. package/lib/services/android-plugin-build-service.js +260 -205
  233. package/lib/services/android-project-service.js +241 -129
  234. package/lib/services/android-resources-migration-service.js +71 -51
  235. package/lib/services/apple-portal/apple-portal-application-service.js +64 -46
  236. package/lib/services/apple-portal/apple-portal-cookie-service.js +1 -0
  237. package/lib/services/apple-portal/apple-portal-session-service.js +218 -197
  238. package/lib/services/apple-portal/srp/srp-wrapper.js +61 -43
  239. package/lib/services/assets-generation/assets-generation-service.js +128 -103
  240. package/lib/services/build-artifacts-service.js +22 -10
  241. package/lib/services/build-data-service.js +1 -0
  242. package/lib/services/build-info-file-service.js +36 -20
  243. package/lib/services/cleanup-service.js +81 -48
  244. package/lib/services/cocoapods-platform-manager.js +9 -0
  245. package/lib/services/cocoapods-service.js +153 -112
  246. package/lib/services/debug-data-service.js +1 -0
  247. package/lib/services/debug-service-base.js +7 -0
  248. package/lib/services/device/device-install-app-service.js +72 -54
  249. package/lib/services/doctor-service.js +135 -101
  250. package/lib/services/extensibility-service.js +108 -81
  251. package/lib/services/files-hash-service.js +44 -26
  252. package/lib/services/hmr-status-service.js +3 -1
  253. package/lib/services/info-service.js +1 -0
  254. package/lib/services/initialize-service.js +54 -37
  255. package/lib/services/ios/export-options-plist-service.js +55 -38
  256. package/lib/services/ios/ios-signing-service.js +191 -168
  257. package/lib/services/ios/spm-service.js +70 -46
  258. package/lib/services/ios/xcodebuild-args-service.js +103 -77
  259. package/lib/services/ios/xcodebuild-command-service.js +26 -14
  260. package/lib/services/ios/xcodebuild-service.js +72 -52
  261. package/lib/services/ios-debugger-port-service.js +38 -24
  262. package/lib/services/ios-device-debug-service.js +103 -75
  263. package/lib/services/ios-entitlements-service.js +43 -31
  264. package/lib/services/ios-extensions-service.js +30 -18
  265. package/lib/services/ios-log-filter.js +20 -0
  266. package/lib/services/ios-native-target-service.js +6 -4
  267. package/lib/services/ios-project-service.js +605 -437
  268. package/lib/services/ios-provision-service.js +132 -108
  269. package/lib/services/ios-watch-app-service.js +33 -21
  270. package/lib/services/ip-service.js +55 -38
  271. package/lib/services/itmstransporter-service.js +153 -129
  272. package/lib/services/karma-execution.js +2 -0
  273. package/lib/services/livesync/android-device-livesync-service-base.js +49 -31
  274. package/lib/services/livesync/android-device-livesync-service.js +151 -120
  275. package/lib/services/livesync/android-device-livesync-sockets-service.js +155 -121
  276. package/lib/services/livesync/android-livesync-service.js +36 -14
  277. package/lib/services/livesync/android-livesync-tool.js +117 -90
  278. package/lib/services/livesync/device-livesync-service-base.js +30 -15
  279. package/lib/services/livesync/ios-device-livesync-service.js +150 -114
  280. package/lib/services/livesync/ios-livesync-service.js +60 -42
  281. package/lib/services/livesync/livesync-socket.js +1 -0
  282. package/lib/services/livesync/platform-livesync-service-base.js +124 -94
  283. package/lib/services/livesync-process-data-service.js +1 -0
  284. package/lib/services/log-parser-service.js +2 -1
  285. package/lib/services/log-source-map-service.js +56 -30
  286. package/lib/services/marking-mode-service.js +33 -17
  287. package/lib/services/metadata-filtering-service.js +1 -0
  288. package/lib/services/npm-config-service.js +5 -1
  289. package/lib/services/pacote-service.js +71 -49
  290. package/lib/services/performance-service.js +4 -2
  291. package/lib/services/platform/add-platform-service.js +119 -51
  292. package/lib/services/platform/platform-validation-service.js +34 -22
  293. package/lib/services/platform/prepare-native-platform-service.js +65 -49
  294. package/lib/services/platform-environment-requirements.js +43 -27
  295. package/lib/services/platform-project-service-base.js +1 -0
  296. package/lib/services/platforms-data-service.js +1 -0
  297. package/lib/services/plugins-service.js +168 -125
  298. package/lib/services/prepare-data-service.js +1 -0
  299. package/lib/services/project-backup-service.js +5 -1
  300. package/lib/services/project-changes-service.js +152 -124
  301. package/lib/services/project-cleanup-service.js +79 -64
  302. package/lib/services/project-config-service.js +111 -73
  303. package/lib/services/project-data-service.js +154 -108
  304. package/lib/services/project-name-service.js +44 -28
  305. package/lib/services/project-service.js +113 -84
  306. package/lib/services/project-templates-service.js +68 -52
  307. package/lib/services/qr-code-terminal-service.js +1 -0
  308. package/lib/services/require-service.js +1 -0
  309. package/lib/services/start-service.js +60 -41
  310. package/lib/services/temp-service.js +22 -8
  311. package/lib/services/terminal-spinner-service.js +28 -15
  312. package/lib/services/test-execution-service.js +79 -59
  313. package/lib/services/test-initialization-service.js +6 -2
  314. package/lib/services/timeline-profiler-service.js +2 -1
  315. package/lib/services/user-settings-service.js +1 -0
  316. package/lib/services/versions-service.js +140 -119
  317. package/lib/services/watch-ignore-list-service.js +1 -0
  318. package/lib/services/webpack/webpack-compiler-service.js +279 -215
  319. package/lib/services/xcconfig-service.js +21 -8
  320. package/lib/services/xcproj-service.js +1 -0
  321. package/lib/shared-event-bus.js +6 -0
  322. package/lib/sys-info.js +63 -45
  323. package/lib/tools/config-manipulation/config-transformer.js +21 -0
  324. package/lib/tools/node-modules/node-modules-builder.js +28 -16
  325. package/lib/tools/node-modules/node-modules-dependencies-builder.js +6 -0
  326. package/lib/yarn-package-manager.js +79 -59
  327. package/lib/yarn2-package-manager.js +82 -60
  328. package/node_modules/@npmcli/move-file/LICENSE.md +22 -0
  329. package/node_modules/@npmcli/move-file/README.md +69 -0
  330. package/node_modules/@npmcli/move-file/lib/index.js +185 -0
  331. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +21 -0
  332. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +68 -0
  333. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +31 -0
  334. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +29 -0
  335. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  336. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  337. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +23 -0
  338. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +29 -0
  339. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +10 -0
  340. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +44 -0
  341. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +266 -0
  342. package/node_modules/@npmcli/move-file/package.json +47 -0
  343. package/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  344. package/node_modules/balanced-match/LICENSE.md +21 -0
  345. package/node_modules/balanced-match/README.md +97 -0
  346. package/node_modules/balanced-match/index.js +62 -0
  347. package/node_modules/balanced-match/package.json +48 -0
  348. package/node_modules/concat-map/.travis.yml +4 -0
  349. package/node_modules/concat-map/LICENSE +18 -0
  350. package/node_modules/concat-map/README.markdown +62 -0
  351. package/node_modules/concat-map/example/map.js +6 -0
  352. package/node_modules/concat-map/index.js +13 -0
  353. package/node_modules/concat-map/package.json +43 -0
  354. package/node_modules/concat-map/test/map.js +39 -0
  355. package/node_modules/fs.realpath/LICENSE +43 -0
  356. package/node_modules/fs.realpath/README.md +33 -0
  357. package/node_modules/fs.realpath/index.js +66 -0
  358. package/node_modules/fs.realpath/old.js +303 -0
  359. package/node_modules/fs.realpath/package.json +26 -0
  360. package/node_modules/inflight/LICENSE +15 -0
  361. package/node_modules/inflight/README.md +37 -0
  362. package/node_modules/inflight/inflight.js +54 -0
  363. package/node_modules/inflight/package.json +29 -0
  364. package/node_modules/inherits/LICENSE +16 -0
  365. package/node_modules/inherits/README.md +42 -0
  366. package/node_modules/inherits/inherits.js +9 -0
  367. package/node_modules/inherits/inherits_browser.js +27 -0
  368. package/node_modules/inherits/package.json +29 -0
  369. package/node_modules/once/LICENSE +15 -0
  370. package/node_modules/once/README.md +79 -0
  371. package/node_modules/once/once.js +42 -0
  372. package/node_modules/once/package.json +33 -0
  373. package/node_modules/path-is-absolute/index.js +20 -0
  374. package/node_modules/path-is-absolute/license +21 -0
  375. package/node_modules/path-is-absolute/package.json +43 -0
  376. package/node_modules/path-is-absolute/readme.md +59 -0
  377. package/node_modules/rimraf/LICENSE +15 -0
  378. package/node_modules/rimraf/README.md +101 -0
  379. package/node_modules/rimraf/bin.js +68 -0
  380. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +21 -0
  381. package/node_modules/rimraf/node_modules/brace-expansion/README.md +129 -0
  382. package/node_modules/rimraf/node_modules/brace-expansion/index.js +201 -0
  383. package/node_modules/rimraf/node_modules/brace-expansion/package.json +47 -0
  384. package/node_modules/rimraf/node_modules/glob/LICENSE +21 -0
  385. package/node_modules/rimraf/node_modules/glob/README.md +378 -0
  386. package/node_modules/rimraf/node_modules/glob/common.js +238 -0
  387. package/node_modules/rimraf/node_modules/glob/glob.js +790 -0
  388. package/node_modules/rimraf/node_modules/glob/package.json +55 -0
  389. package/node_modules/rimraf/node_modules/glob/sync.js +486 -0
  390. package/node_modules/rimraf/node_modules/minimatch/LICENSE +15 -0
  391. package/node_modules/rimraf/node_modules/minimatch/README.md +230 -0
  392. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +947 -0
  393. package/node_modules/rimraf/node_modules/minimatch/package.json +33 -0
  394. package/node_modules/rimraf/package.json +32 -0
  395. package/node_modules/rimraf/rimraf.js +360 -0
  396. package/node_modules/stringify-package/LICENSE +13 -0
  397. package/node_modules/stringify-package/README.md +55 -0
  398. package/node_modules/stringify-package/index.js +18 -0
  399. package/node_modules/stringify-package/package.json +38 -0
  400. package/node_modules/wrappy/LICENSE +15 -0
  401. package/node_modules/wrappy/README.md +36 -0
  402. package/node_modules/wrappy/package.json +29 -0
  403. package/node_modules/wrappy/wrappy.js +33 -0
  404. package/package.json +79 -64
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.CleanCommand = void 0;
4
13
  const color_1 = require("../color");
@@ -17,6 +26,18 @@ function bytesToHumanReadable(bytes) {
17
26
  }
18
27
  return `${bytes.toFixed(2)} ${units[unit]}`;
19
28
  }
29
+ /**
30
+ * A helper function to map an array of values to promises with a concurrency limit.
31
+ * The mapper function should return a promise. It will be called for each value in the values array.
32
+ * The concurrency limit is the number of promises that can be running at the same time.
33
+ *
34
+ * This function will return a promise that resolves when all values have been mapped.
35
+ *
36
+ * @param values A static array of values to map to promises
37
+ * @param mapper A function that maps a value to a promise
38
+ * @param concurrency The number of promises that can be running at the same time
39
+ * @returns Promise<void>
40
+ */
20
41
  function promiseMap(values, mapper, concurrency = 10) {
21
42
  let index = 0;
22
43
  let pending = 0;
@@ -54,184 +75,199 @@ class CleanCommand {
54
75
  this.$staticConfig = $staticConfig;
55
76
  this.allowedParameters = [];
56
77
  }
57
- async execute(args) {
78
+ execute(args) {
58
79
  var _a, _b;
59
- const isDryRun = (_a = this.$options.dryRun) !== null && _a !== void 0 ? _a : false;
60
- const isJSON = (_b = this.$options.json) !== null && _b !== void 0 ? _b : false;
61
- const spinner = this.$terminalSpinnerService.createSpinner({
62
- isSilent: isJSON,
63
- });
64
- if (!this.$projectService.isValidNativeScriptProject()) {
65
- return this.cleanMultipleProjects(spinner);
66
- }
67
- spinner.start("Cleaning project...\n");
68
- let pathsToClean = [
69
- constants.HOOKS_DIR_NAME,
70
- constants.PLATFORMS_DIR_NAME,
71
- constants.NODE_MODULES_FOLDER_NAME,
72
- constants.PACKAGE_LOCK_JSON_FILE_NAME,
73
- ];
74
- try {
75
- const overridePathsToClean = this.$projectConfigService.getValue("cli.pathsToClean");
76
- const additionalPaths = this.$projectConfigService.getValue("cli.additionalPathsToClean");
77
- if (Array.isArray(overridePathsToClean)) {
78
- pathsToClean = overridePathsToClean;
79
- }
80
- if (Array.isArray(additionalPaths)) {
81
- pathsToClean.push(...additionalPaths);
80
+ return __awaiter(this, void 0, void 0, function* () {
81
+ const isDryRun = (_a = this.$options.dryRun) !== null && _a !== void 0 ? _a : false;
82
+ const isJSON = (_b = this.$options.json) !== null && _b !== void 0 ? _b : false;
83
+ const spinner = this.$terminalSpinnerService.createSpinner({
84
+ isSilent: isJSON,
85
+ });
86
+ if (!this.$projectService.isValidNativeScriptProject()) {
87
+ return this.cleanMultipleProjects(spinner);
82
88
  }
83
- }
84
- catch (err) {
85
- }
86
- const res = await this.$projectCleanupService.clean(pathsToClean, {
87
- dryRun: isDryRun,
88
- silent: isJSON,
89
- stats: isJSON,
90
- });
91
- if (res.stats && isJSON) {
92
- console.log(JSON.stringify({
93
- ok: res.ok,
94
- dryRun: isDryRun,
95
- stats: Object.fromEntries(res.stats.entries()),
96
- }, null, 2));
97
- return;
98
- }
99
- if (res.ok) {
100
- spinner.succeed("Project successfully cleaned.");
101
- }
102
- else {
103
- spinner.fail(color_1.color.red("Project unsuccessfully cleaned."));
104
- }
105
- }
106
- async cleanMultipleProjects(spinner) {
107
- if (!(0, helpers_1.isInteractive)() || this.$options.json) {
108
- this.$logger.warn("No project found in the current directory.");
109
- return;
110
- }
111
- const shouldScan = await this.$prompter.confirm("No project found in the current directory. Would you like to scan for all projects in sub-directories instead?");
112
- if (!shouldScan) {
113
- return;
114
- }
115
- spinner.start("Scanning for projects... Please wait.");
116
- const paths = await this.getNSProjectPathsInDirectory();
117
- spinner.succeed(`Found ${paths.length} projects.`);
118
- let computed = 0;
119
- const updateProgress = () => {
120
- const current = color_1.color.grey(`${computed}/${paths.length}`);
121
- spinner.start(`Gathering cleanable sizes. This may take a while... ${current}`);
122
- };
123
- updateProgress();
124
- const projects = new Map();
125
- await promiseMap(paths, (p) => {
126
- return this.$childProcess
127
- .exec(`node ${this.$staticConfig.cliBinPath} clean --dry-run --json --disable-analytics`, {
128
- cwd: p,
129
- })
130
- .then((res) => {
131
- const paths = JSON.parse(res).stats;
132
- return Object.values(paths).reduce((a, b) => a + b, 0);
133
- })
134
- .catch((err) => {
135
- this.$logger.trace("Failed to get project size for %s, Error is:", p, err);
136
- return -1;
137
- })
138
- .then((size) => {
139
- if (size > 0 || size === -1) {
140
- projects.set(p, size);
89
+ spinner.start("Cleaning project...\n");
90
+ let pathsToClean = [
91
+ constants.HOOKS_DIR_NAME,
92
+ constants.PLATFORMS_DIR_NAME,
93
+ constants.NODE_MODULES_FOLDER_NAME,
94
+ constants.PACKAGE_LOCK_JSON_FILE_NAME,
95
+ ];
96
+ try {
97
+ const overridePathsToClean = this.$projectConfigService.getValue("cli.pathsToClean");
98
+ const additionalPaths = this.$projectConfigService.getValue("cli.additionalPathsToClean");
99
+ // allow overriding default paths to clean
100
+ if (Array.isArray(overridePathsToClean)) {
101
+ pathsToClean = overridePathsToClean;
102
+ }
103
+ if (Array.isArray(additionalPaths)) {
104
+ pathsToClean.push(...additionalPaths);
141
105
  }
142
- computed++;
143
- updateProgress();
144
- });
145
- }, os.cpus().length);
146
- spinner.clear();
147
- spinner.stop();
148
- this.$logger.clearScreen();
149
- const totalSize = Array.from(projects.values())
150
- .filter((s) => s > 0)
151
- .reduce((a, b) => a + b, 0);
152
- const pathsToClean = await this.$prompter.promptForChoice(`Found ${projects.size} cleanable project(s) with a total size of: ${color_1.color.green(bytesToHumanReadable(totalSize))}. Select projects to clean`, Array.from(projects.keys()).map((p) => {
153
- const size = projects.get(p);
154
- let description;
155
- if (size === -1) {
156
- description = " - could not get size";
157
106
  }
158
- else {
159
- description = ` - ${bytesToHumanReadable(size)}`;
107
+ catch (err) {
108
+ // ignore
160
109
  }
161
- return {
162
- title: `${p}${color_1.color.grey(description)}`,
163
- value: p,
164
- };
165
- }), true, {
166
- optionsPerPage: process.stdout.rows - 6,
167
- });
168
- this.$logger.clearScreen();
169
- spinner.warn(`This will run "${color_1.color.yellow(`ns clean`)}" in all the selected projects and ${color_1.color.red.bold("delete files from your system")}!`);
170
- spinner.warn(`This action cannot be undone!`);
171
- let confirmed = await this.$prompter.confirm("Are you sure you want to clean the selected projects?");
172
- if (!confirmed) {
173
- return;
174
- }
175
- spinner.info("Cleaning... This might take a while...");
176
- let totalSizeCleaned = 0;
177
- for (let i = 0; i < pathsToClean.length; i++) {
178
- const currentPath = pathsToClean[i];
179
- spinner.start(`Cleaning ${color_1.color.cyan(currentPath)}... ${i + 1}/${pathsToClean.length}`);
180
- const ok = await this.$childProcess
181
- .exec(`node ${this.$staticConfig.cliBinPath} clean ${this.$options.dryRun ? "--dry-run" : ""} --json --disable-analytics`, {
182
- cwd: currentPath,
183
- })
184
- .then((res) => {
185
- const cleanupRes = JSON.parse(res);
186
- return cleanupRes.ok;
187
- })
188
- .catch((err) => {
189
- this.$logger.trace('Failed to clean project "%s"', currentPath, err);
190
- return false;
110
+ const res = yield this.$projectCleanupService.clean(pathsToClean, {
111
+ dryRun: isDryRun,
112
+ silent: isJSON,
113
+ stats: isJSON,
191
114
  });
192
- if (ok) {
193
- const cleanedSize = projects.get(currentPath);
194
- const cleanedSizeStr = color_1.color.grey(`- ${bytesToHumanReadable(cleanedSize)}`);
195
- spinner.succeed(`Cleaned ${color_1.color.cyan(currentPath)} ${cleanedSizeStr}`);
196
- totalSizeCleaned += cleanedSize;
115
+ if (res.stats && isJSON) {
116
+ console.log(JSON.stringify({
117
+ ok: res.ok,
118
+ dryRun: isDryRun,
119
+ stats: Object.fromEntries(res.stats.entries()),
120
+ }, null, 2));
121
+ return;
122
+ }
123
+ if (res.ok) {
124
+ spinner.succeed("Project successfully cleaned.");
197
125
  }
198
126
  else {
199
- spinner.fail(`Failed to clean ${color_1.color.cyan(currentPath)} - skipped`);
127
+ spinner.fail(color_1.color.red("Project unsuccessfully cleaned."));
200
128
  }
201
- }
202
- spinner.clear();
203
- spinner.stop();
204
- spinner.succeed(`Done! We've just freed up ${color_1.color.green(bytesToHumanReadable(totalSizeCleaned))}! Woohoo! 🎉`);
205
- if (this.$options.dryRun) {
206
- spinner.info('Note: the "--dry-run" flag was used, so no files were actually deleted.');
207
- }
129
+ });
208
130
  }
209
- async getNSProjectPathsInDirectory(dir = process.cwd()) {
210
- let nsDirs = [];
211
- const getFiles = async (dir) => {
212
- if (dir.includes("node_modules")) {
131
+ cleanMultipleProjects(spinner) {
132
+ return __awaiter(this, void 0, void 0, function* () {
133
+ if (!(0, helpers_1.isInteractive)() || this.$options.json) {
134
+ // interactive terminal is required, and we can't output json in an interactive command.
135
+ this.$logger.warn("No project found in the current directory.");
136
+ return;
137
+ }
138
+ const shouldScan = yield this.$prompter.confirm("No project found in the current directory. Would you like to scan for all projects in sub-directories instead?");
139
+ if (!shouldScan) {
213
140
  return;
214
141
  }
215
- const dirents = await (0, promises_1.readdir)(dir, { withFileTypes: true }).catch((err) => {
216
- this.$logger.trace('Failed to read directory "%s". Error is:', dir, err);
217
- return [];
142
+ spinner.start("Scanning for projects... Please wait.");
143
+ const paths = yield this.getNSProjectPathsInDirectory();
144
+ spinner.succeed(`Found ${paths.length} projects.`);
145
+ let computed = 0;
146
+ const updateProgress = () => {
147
+ const current = color_1.color.grey(`${computed}/${paths.length}`);
148
+ spinner.start(`Gathering cleanable sizes. This may take a while... ${current}`);
149
+ };
150
+ // update the progress initially
151
+ updateProgress();
152
+ const projects = new Map();
153
+ yield promiseMap(paths, (p) => {
154
+ return this.$childProcess
155
+ .exec(`node ${this.$staticConfig.cliBinPath} clean --dry-run --json --disable-analytics`, {
156
+ cwd: p,
157
+ })
158
+ .then((res) => {
159
+ const paths = JSON.parse(res).stats;
160
+ return Object.values(paths).reduce((a, b) => a + b, 0);
161
+ })
162
+ .catch((err) => {
163
+ this.$logger.trace("Failed to get project size for %s, Error is:", p, err);
164
+ return -1;
165
+ })
166
+ .then((size) => {
167
+ if (size > 0 || size === -1) {
168
+ // only store size if it's larger than 0 or -1 (error while getting size)
169
+ projects.set(p, size);
170
+ }
171
+ // update the progress after each processed project
172
+ computed++;
173
+ updateProgress();
174
+ });
175
+ }, os.cpus().length);
176
+ spinner.clear();
177
+ spinner.stop();
178
+ this.$logger.clearScreen();
179
+ const totalSize = Array.from(projects.values())
180
+ .filter((s) => s > 0)
181
+ .reduce((a, b) => a + b, 0);
182
+ const pathsToClean = yield this.$prompter.promptForChoice(`Found ${projects.size} cleanable project(s) with a total size of: ${color_1.color.green(bytesToHumanReadable(totalSize))}. Select projects to clean`, Array.from(projects.keys()).map((p) => {
183
+ const size = projects.get(p);
184
+ let description;
185
+ if (size === -1) {
186
+ description = " - could not get size";
187
+ }
188
+ else {
189
+ description = ` - ${bytesToHumanReadable(size)}`;
190
+ }
191
+ return {
192
+ title: `${p}${color_1.color.grey(description)}`,
193
+ value: p,
194
+ };
195
+ }), true, {
196
+ optionsPerPage: process.stdout.rows - 6, // 6 lines are taken up by the instructions
218
197
  });
219
- const hasNSConfig = dirents.some((ent) => ent.name.includes("nativescript.config.ts") ||
220
- ent.name.includes("nativescript.config.js"));
221
- if (hasNSConfig) {
222
- nsDirs.push(dir);
198
+ this.$logger.clearScreen();
199
+ spinner.warn(`This will run "${color_1.color.yellow(`ns clean`)}" in all the selected projects and ${color_1.color.red.bold("delete files from your system")}!`);
200
+ spinner.warn(`This action cannot be undone!`);
201
+ let confirmed = yield this.$prompter.confirm("Are you sure you want to clean the selected projects?");
202
+ if (!confirmed) {
223
203
  return;
224
204
  }
225
- await Promise.all(dirents.map((dirent) => {
226
- const res = (0, path_1.resolve)(dir, dirent.name);
227
- if (dirent.isDirectory()) {
228
- return getFiles(res);
205
+ spinner.info("Cleaning... This might take a while...");
206
+ let totalSizeCleaned = 0;
207
+ for (let i = 0; i < pathsToClean.length; i++) {
208
+ const currentPath = pathsToClean[i];
209
+ spinner.start(`Cleaning ${color_1.color.cyan(currentPath)}... ${i + 1}/${pathsToClean.length}`);
210
+ const ok = yield this.$childProcess
211
+ .exec(`node ${this.$staticConfig.cliBinPath} clean ${this.$options.dryRun ? "--dry-run" : ""} --json --disable-analytics`, {
212
+ cwd: currentPath,
213
+ })
214
+ .then((res) => {
215
+ const cleanupRes = JSON.parse(res);
216
+ return cleanupRes.ok;
217
+ })
218
+ .catch((err) => {
219
+ this.$logger.trace('Failed to clean project "%s"', currentPath, err);
220
+ return false;
221
+ });
222
+ if (ok) {
223
+ const cleanedSize = projects.get(currentPath);
224
+ const cleanedSizeStr = color_1.color.grey(`- ${bytesToHumanReadable(cleanedSize)}`);
225
+ spinner.succeed(`Cleaned ${color_1.color.cyan(currentPath)} ${cleanedSizeStr}`);
226
+ totalSizeCleaned += cleanedSize;
229
227
  }
230
- }));
231
- };
232
- await getFiles(dir);
233
- return nsDirs;
228
+ else {
229
+ spinner.fail(`Failed to clean ${color_1.color.cyan(currentPath)} - skipped`);
230
+ }
231
+ }
232
+ spinner.clear();
233
+ spinner.stop();
234
+ spinner.succeed(`Done! We've just freed up ${color_1.color.green(bytesToHumanReadable(totalSizeCleaned))}! Woohoo! 🎉`);
235
+ if (this.$options.dryRun) {
236
+ spinner.info('Note: the "--dry-run" flag was used, so no files were actually deleted.');
237
+ }
238
+ });
239
+ }
240
+ getNSProjectPathsInDirectory(dir = process.cwd()) {
241
+ return __awaiter(this, void 0, void 0, function* () {
242
+ let nsDirs = [];
243
+ const getFiles = (dir) => __awaiter(this, void 0, void 0, function* () {
244
+ if (dir.includes("node_modules")) {
245
+ // skip traversing node_modules
246
+ return;
247
+ }
248
+ const dirents = yield (0, promises_1.readdir)(dir, { withFileTypes: true }).catch((err) => {
249
+ this.$logger.trace('Failed to read directory "%s". Error is:', dir, err);
250
+ return [];
251
+ });
252
+ const hasNSConfig = dirents.some((ent) => ent.name.includes("nativescript.config.ts") ||
253
+ ent.name.includes("nativescript.config.js"));
254
+ if (hasNSConfig) {
255
+ nsDirs.push(dir);
256
+ // found a NativeScript project, stop traversing
257
+ return;
258
+ }
259
+ yield Promise.all(dirents.map((dirent) => {
260
+ const res = (0, path_1.resolve)(dir, dirent.name);
261
+ if (dirent.isDirectory()) {
262
+ return getFiles(res);
263
+ }
264
+ }));
265
+ });
266
+ yield getFiles(dir);
267
+ return nsDirs;
268
+ });
234
269
  }
235
270
  }
236
271
  exports.CleanCommand = CleanCommand;
237
272
  yok_1.injector.registerCommand("clean", CleanCommand);
273
+ //# sourceMappingURL=clean.js.map
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.ValidatePlatformCommandBase = void 0;
4
13
  class ValidatePlatformCommandBase {
@@ -8,21 +17,25 @@ class ValidatePlatformCommandBase {
8
17
  this.$platformValidationService = $platformValidationService;
9
18
  this.$projectData = $projectData;
10
19
  }
11
- async canExecuteCommandBase(platform, options) {
12
- options = options || {};
13
- const validatePlatformOutput = await this.validatePlatformBase(platform, options.notConfiguredEnvOptions);
14
- const canExecute = this.canExecuteCommand(validatePlatformOutput);
15
- let result = canExecute;
16
- if (canExecute && options.validateOptions) {
17
- result = await this.$platformValidationService.validateOptions(this.$options.provision, this.$options.teamId, this.$projectData, platform);
18
- }
19
- return result;
20
+ canExecuteCommandBase(platform, options) {
21
+ return __awaiter(this, void 0, void 0, function* () {
22
+ options = options || {};
23
+ const validatePlatformOutput = yield this.validatePlatformBase(platform, options.notConfiguredEnvOptions);
24
+ const canExecute = this.canExecuteCommand(validatePlatformOutput);
25
+ let result = canExecute;
26
+ if (canExecute && options.validateOptions) {
27
+ result = yield this.$platformValidationService.validateOptions(this.$options.provision, this.$options.teamId, this.$projectData, platform);
28
+ }
29
+ return result;
30
+ });
20
31
  }
21
- async validatePlatformBase(platform, notConfiguredEnvOptions) {
22
- const platformData = this.$platformsDataService.getPlatformData(platform, this.$projectData);
23
- const platformProjectService = platformData.platformProjectService;
24
- const result = await platformProjectService.validate(this.$projectData, this.$options, notConfiguredEnvOptions);
25
- return result;
32
+ validatePlatformBase(platform, notConfiguredEnvOptions) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ const platformData = this.$platformsDataService.getPlatformData(platform, this.$projectData);
35
+ const platformProjectService = platformData.platformProjectService;
36
+ const result = yield platformProjectService.validate(this.$projectData, this.$options, notConfiguredEnvOptions);
37
+ return result;
38
+ });
26
39
  }
27
40
  canExecuteCommand(validatePlatformOutput) {
28
41
  return (validatePlatformOutput &&
@@ -31,3 +44,4 @@ class ValidatePlatformCommandBase {
31
44
  }
32
45
  }
33
46
  exports.ValidatePlatformCommandBase = ValidatePlatformCommandBase;
47
+ //# sourceMappingURL=command-base.js.map
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.ConfigSetCommand = exports.ConfigGetCommand = exports.ConfigListCommand = void 0;
4
13
  const yok_1 = require("../common/yok");
@@ -9,14 +18,16 @@ class ConfigListCommand {
9
18
  this.$logger = $logger;
10
19
  this.allowedParameters = [];
11
20
  }
12
- async execute(args) {
13
- try {
14
- const config = this.$projectConfigService.readConfig();
15
- this.$logger.info(this.getValueString(config));
16
- }
17
- catch (error) {
18
- this.$logger.info("Failed to read config. Error is: ", error);
19
- }
21
+ execute(args) {
22
+ return __awaiter(this, void 0, void 0, function* () {
23
+ try {
24
+ const config = this.$projectConfigService.readConfig();
25
+ this.$logger.info(this.getValueString(config));
26
+ }
27
+ catch (error) {
28
+ this.$logger.info("Failed to read config. Error is: ", error);
29
+ }
30
+ });
20
31
  }
21
32
  getValueString(value, depth = 0) {
22
33
  const indent = () => " ".repeat(depth);
@@ -25,6 +36,7 @@ class ConfigListCommand {
25
36
  Object.keys(value)
26
37
  .map((key) => {
27
38
  return (color_1.color.green(`${indent()}${key}: `) +
39
+ // @ts-ignore
28
40
  this.getValueString(value[key], depth + 1));
29
41
  })
30
42
  .join("\n"));
@@ -42,20 +54,25 @@ class ConfigGetCommand {
42
54
  this.$errors = $errors;
43
55
  this.allowedParameters = [];
44
56
  }
45
- async execute(args) {
46
- try {
47
- const [key] = args;
48
- const current = this.$projectConfigService.getValue(key);
49
- this.$logger.info(current);
50
- }
51
- catch (err) {
52
- }
57
+ execute(args) {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ try {
60
+ const [key] = args;
61
+ const current = this.$projectConfigService.getValue(key);
62
+ this.$logger.info(current);
63
+ }
64
+ catch (err) {
65
+ // ignore
66
+ }
67
+ });
53
68
  }
54
- async canExecute(args) {
55
- if (!args[0]) {
56
- this.$errors.failWithHelp("You must specify a key. Eg: ios.id");
57
- }
58
- return true;
69
+ canExecute(args) {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ if (!args[0]) {
72
+ this.$errors.failWithHelp("You must specify a key. Eg: ios.id");
73
+ }
74
+ return true;
75
+ });
59
76
  }
60
77
  }
61
78
  exports.ConfigGetCommand = ConfigGetCommand;
@@ -66,40 +83,45 @@ class ConfigSetCommand {
66
83
  this.$errors = $errors;
67
84
  this.allowedParameters = [];
68
85
  }
69
- async execute(args) {
70
- const [key, value] = args;
71
- const current = this.$projectConfigService.getValue(key);
72
- if (current && typeof current === "object") {
73
- this.$errors.fail(`Unable to change object values. Please update individual values instead.\nEg: ns config set android.codeCache true`);
74
- }
75
- const convertedValue = this.getConvertedValue(value);
76
- const existingKey = current !== undefined;
77
- const keyDisplay = color_1.color.green(key);
78
- const currentDisplay = color_1.color.yellow(current);
79
- const updatedDisplay = color_1.color.cyan(convertedValue);
80
- this.$logger.info(`${existingKey ? "Updating" : "Setting"} ${keyDisplay}${existingKey ? ` from ${currentDisplay} ` : " "}to ${updatedDisplay}`);
81
- try {
82
- await this.$projectConfigService.setValue(key, convertedValue);
83
- this.$logger.info("Done");
84
- }
85
- catch (error) {
86
- this.$logger.info("Could not update conifg. Error is: ", error);
87
- }
86
+ execute(args) {
87
+ return __awaiter(this, void 0, void 0, function* () {
88
+ const [key, value] = args;
89
+ const current = this.$projectConfigService.getValue(key);
90
+ if (current && typeof current === "object") {
91
+ this.$errors.fail(`Unable to change object values. Please update individual values instead.\nEg: ns config set android.codeCache true`);
92
+ }
93
+ const convertedValue = this.getConvertedValue(value);
94
+ const existingKey = current !== undefined;
95
+ const keyDisplay = color_1.color.green(key);
96
+ const currentDisplay = color_1.color.yellow(current);
97
+ const updatedDisplay = color_1.color.cyan(convertedValue);
98
+ this.$logger.info(`${existingKey ? "Updating" : "Setting"} ${keyDisplay}${existingKey ? ` from ${currentDisplay} ` : " "}to ${updatedDisplay}`);
99
+ try {
100
+ yield this.$projectConfigService.setValue(key, convertedValue);
101
+ this.$logger.info("Done");
102
+ }
103
+ catch (error) {
104
+ this.$logger.info("Could not update conifg. Error is: ", error);
105
+ }
106
+ });
88
107
  }
89
- async canExecute(args) {
90
- if (!args[0]) {
91
- this.$errors.failWithHelp("You must specify a key. Eg: ios.id");
92
- }
93
- if (!args[1]) {
94
- this.$errors.failWithHelp("You must specify a value.");
95
- }
96
- return true;
108
+ canExecute(args) {
109
+ return __awaiter(this, void 0, void 0, function* () {
110
+ if (!args[0]) {
111
+ this.$errors.failWithHelp("You must specify a key. Eg: ios.id");
112
+ }
113
+ if (!args[1]) {
114
+ this.$errors.failWithHelp("You must specify a value.");
115
+ }
116
+ return true;
117
+ });
97
118
  }
98
119
  getConvertedValue(v) {
99
120
  try {
100
121
  return JSON.parse(v);
101
122
  }
102
123
  catch (e) {
124
+ // just treat it as a string
103
125
  return `${v}`;
104
126
  }
105
127
  }
@@ -108,3 +130,4 @@ exports.ConfigSetCommand = ConfigSetCommand;
108
130
  yok_1.injector.registerCommand("config|*list", ConfigListCommand);
109
131
  yok_1.injector.registerCommand("config|get", ConfigGetCommand);
110
132
  yok_1.injector.registerCommand("config|set", ConfigSetCommand);
133
+ //# sourceMappingURL=config.js.map