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
package/lib/common/yok.js CHANGED
@@ -1,14 +1,28 @@
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
- exports.Yok = exports.injector = void 0;
4
- exports.register = register;
5
- exports.setGlobalInjector = setGlobalInjector;
12
+ exports.setGlobalInjector = exports.Yok = exports.register = exports.injector = void 0;
6
13
  const path = require("path");
7
14
  const _ = require("lodash");
8
15
  const helpers_1 = require("./helpers");
9
16
  const constants_1 = require("./constants");
10
17
  let indent = "";
11
18
  function trace(formatStr, ...args) {
19
+ // uncomment following lines when debugging dependency injection
20
+ // const items: any[] = [];
21
+ // for (let _i = 1; _i < arguments.length; _i++) {
22
+ // items[_i - 1] = arguments[_i];
23
+ // }
24
+ // const util = require("util");
25
+ // console.log(util.format.apply(util, [indent + formatStr].concat(args)));
12
26
  }
13
27
  function pushIndent() {
14
28
  indent += " ";
@@ -26,9 +40,11 @@ function forEachName(names, action) {
26
40
  }
27
41
  function register(...rest) {
28
42
  return function (target) {
43
+ // TODO: Check if 'rest' has more arguments that have to be registered
29
44
  exports.injector.register(rest[0], target);
30
45
  };
31
46
  }
47
+ exports.register = register;
32
48
  class Yok {
33
49
  constructor() {
34
50
  this.overrideAlreadyRequiredModule = false;
@@ -44,7 +60,7 @@ class Yok {
44
60
  }
45
61
  requireCommand(names, file) {
46
62
  forEachName(names, (commandName) => {
47
- const commands = commandName.split("|");
63
+ const commands = commandName.split("|" /* CommandsDelimiters.HierarchicalCommand */);
48
64
  if (commands.length > 1) {
49
65
  if (_.startsWith(commands[1], "*") &&
50
66
  this.modules[this.createCommandName(commands[0])]) {
@@ -54,7 +70,7 @@ class Yok {
54
70
  if (!this.hierarchicalCommands[parentCommandName]) {
55
71
  this.hierarchicalCommands[parentCommandName] = [];
56
72
  }
57
- this.hierarchicalCommands[parentCommandName].push(_.tail(commands).join("|"));
73
+ this.hierarchicalCommands[parentCommandName].push(_.tail(commands).join("|" /* CommandsDelimiters.HierarchicalCommand */));
58
74
  }
59
75
  if (commands.length > 1 &&
60
76
  !this.modules[this.createCommandName(commands[0])]) {
@@ -125,7 +141,7 @@ class Yok {
125
141
  }
126
142
  registerCommand(names, resolver) {
127
143
  forEachName(names, (name) => {
128
- const commands = name.split("|");
144
+ const commands = name.split("|" /* CommandsDelimiters.HierarchicalCommand */);
129
145
  this.register(this.createCommandName(name), resolver);
130
146
  if (commands.length > 1) {
131
147
  this.createHierarchicalCommand(commands[0]);
@@ -137,7 +153,7 @@ class Yok {
137
153
  }
138
154
  getDefaultCommand(name, commandArguments) {
139
155
  const subCommands = this.hierarchicalCommands[name];
140
- const defaultCommand = _.find(subCommands, (command) => _.some(command.split("|"), (c) => _.startsWith(c, "*")));
156
+ const defaultCommand = _.find(subCommands, (command) => _.some(command.split("|" /* CommandsDelimiters.HierarchicalCommand */), (c) => _.startsWith(c, "*" /* CommandsDelimiters.DefaultCommandSymbol */)));
141
157
  return defaultCommand;
142
158
  }
143
159
  buildHierarchicalCommand(parentCommandName, commandLineArguments) {
@@ -153,7 +169,7 @@ class Yok {
153
169
  remainingArguments = _.tail(remainingArguments);
154
170
  if ((matchingSubCommandName = _.find(subCommands, (sc) => sc === currentSubCommandName ||
155
171
  sc ===
156
- `${"*"}${currentSubCommandName}`))) {
172
+ `${"*" /* CommandsDelimiters.DefaultCommandSymbol */}${currentSubCommandName}`))) {
157
173
  finalSubCommandName = matchingSubCommandName;
158
174
  finalRemainingArguments = remainingArguments;
159
175
  }
@@ -162,8 +178,8 @@ class Yok {
162
178
  finalSubCommandName =
163
179
  this.getDefaultCommand(parentCommandName, commandLineArguments) || "";
164
180
  finalRemainingArguments = _.difference(commandLineArguments, finalSubCommandName
165
- .split("|")
166
- .map((command) => _.startsWith(command, "*")
181
+ .split("|" /* CommandsDelimiters.HierarchicalCommand */)
182
+ .map((command) => _.startsWith(command, "*" /* CommandsDelimiters.DefaultCommandSymbol */)
167
183
  ? command.substr(1)
168
184
  : command));
169
185
  }
@@ -179,7 +195,7 @@ class Yok {
179
195
  return {
180
196
  disableAnalytics: true,
181
197
  isHierarchicalCommand: true,
182
- execute: async (args) => {
198
+ execute: (args) => __awaiter(this, void 0, void 0, function* () {
183
199
  const commandsService = exports.injector.resolve("commandsService");
184
200
  let commandName = null;
185
201
  const defaultCommand = this.getDefaultCommand(name, args);
@@ -194,7 +210,9 @@ class Yok {
194
210
  commandName = defaultCommand
195
211
  ? this.getHierarchicalCommandName(name, defaultCommand)
196
212
  : "help";
197
- if (_.includes(this.hierarchicalCommands[name], "*" + args[0])) {
213
+ // If we'll execute the default command, but it's full name had been written by the user
214
+ // for example "tns run ios", we have to remove the "ios" option from the arguments that we'll pass to the command.
215
+ if (_.includes(this.hierarchicalCommands[name], "*" /* CommandsDelimiters.DefaultCommandSymbol */ + args[0])) {
198
216
  commandArguments = _.tail(args);
199
217
  }
200
218
  else {
@@ -203,41 +221,47 @@ class Yok {
203
221
  }
204
222
  }
205
223
  else {
224
+ //Execute only default command without arguments
206
225
  if (defaultCommand) {
207
226
  commandName = this.getHierarchicalCommandName(name, defaultCommand);
208
227
  }
209
228
  else {
210
229
  commandName = "help";
230
+ // Show command-line help
211
231
  const options = this.resolve("options");
212
232
  options.help = true;
213
233
  }
214
234
  }
215
- await commandsService.tryExecuteCommand(commandName, commandName === "help" ? [name] : commandArguments);
216
- },
235
+ yield commandsService.tryExecuteCommand(commandName, commandName === "help" ? [name] : commandArguments);
236
+ }),
217
237
  };
218
238
  };
219
239
  exports.injector.registerCommand(name, factory);
220
240
  }
221
241
  getHierarchicalCommandName(parentCommandName, subCommandName) {
222
- return [parentCommandName, subCommandName].join("|");
223
- }
224
- async isValidHierarchicalCommand(commandName, commandArguments) {
225
- if (_.includes(Object.keys(this.hierarchicalCommands), commandName)) {
226
- const subCommands = this.hierarchicalCommands[commandName];
227
- if (subCommands) {
228
- const fullCommandName = this.buildHierarchicalCommand(commandName, commandArguments);
229
- if (!fullCommandName) {
230
- const errors = exports.injector.resolve("errors");
231
- errors.failWithHelp(constants_1.ERROR_NO_VALID_SUBCOMMAND_FORMAT, commandName);
242
+ return [parentCommandName, subCommandName].join("|" /* CommandsDelimiters.HierarchicalCommand */);
243
+ }
244
+ isValidHierarchicalCommand(commandName, commandArguments) {
245
+ return __awaiter(this, void 0, void 0, function* () {
246
+ if (_.includes(Object.keys(this.hierarchicalCommands), commandName)) {
247
+ const subCommands = this.hierarchicalCommands[commandName];
248
+ if (subCommands) {
249
+ const fullCommandName = this.buildHierarchicalCommand(commandName, commandArguments);
250
+ if (!fullCommandName) {
251
+ // In case buildHierarchicalCommand doesn't find a valid command
252
+ // there isn't a valid command or default with those arguments
253
+ const errors = exports.injector.resolve("errors");
254
+ errors.failWithHelp(constants_1.ERROR_NO_VALID_SUBCOMMAND_FORMAT, commandName);
255
+ }
256
+ return true;
232
257
  }
233
- return true;
234
258
  }
235
- }
236
- return false;
259
+ return false;
260
+ });
237
261
  }
238
262
  isDefaultCommand(commandName) {
239
- return (commandName.indexOf("*") > 0 &&
240
- commandName.indexOf("|") > 0);
263
+ return (commandName.indexOf("*" /* CommandsDelimiters.DefaultCommandSymbol */) > 0 &&
264
+ commandName.indexOf("|" /* CommandsDelimiters.HierarchicalCommand */) > 0);
241
265
  }
242
266
  register(name, resolver, shared) {
243
267
  shared = shared === undefined ? true : shared;
@@ -284,6 +308,12 @@ class Yok {
284
308
  return this.resolveByName(param, ctorArguments);
285
309
  }
286
310
  }
311
+ /* Regex to match dynamic calls in the following format:
312
+ #{moduleName.functionName} or
313
+ #{moduleName.functionName(param1)} or
314
+ #{moduleName.functionName(param1, param2)} - multiple parameters separated with comma are supported
315
+ Check dynamicCall method for sample usage of this regular expression and see how to determine the passed parameters
316
+ */
287
317
  get dynamicCallRegex() {
288
318
  return /#{([^.]+)\.([^}]+?)(\((.+)\))*}/;
289
319
  }
@@ -295,12 +325,14 @@ class Yok {
295
325
  }
296
326
  return module[parsed[2]].apply(module, args);
297
327
  }
298
- async dynamicCall(call, args) {
299
- const data = this.getDynamicCallData(call, args);
300
- if ((0, helpers_1.isPromise)(data)) {
301
- return await data;
302
- }
303
- return data;
328
+ dynamicCall(call, args) {
329
+ return __awaiter(this, void 0, void 0, function* () {
330
+ const data = this.getDynamicCallData(call, args);
331
+ if ((0, helpers_1.isPromise)(data)) {
332
+ return yield data;
333
+ }
334
+ return data;
335
+ });
304
336
  }
305
337
  resolveConstructor(ctor, ctorArguments) {
306
338
  (0, helpers_1.annotate)(ctor);
@@ -411,3 +443,5 @@ function setGlobalInjector(inj) {
411
443
  global.$injector = exports.injector = inj;
412
444
  return inj;
413
445
  }
446
+ exports.setGlobalInjector = setGlobalInjector;
447
+ //# sourceMappingURL=yok.js.map
package/lib/config.js CHANGED
@@ -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.StaticConfig = exports.Configuration = void 0;
4
13
  const path = require("path");
@@ -7,8 +16,10 @@ const os = require("os");
7
16
  const _ = require("lodash");
8
17
  const yok_1 = require("./common/yok");
9
18
  class Configuration {
19
+ /*don't require logger and everything that has logger as dependency in config.js due to cyclic dependency*/
10
20
  constructor($fs) {
11
21
  this.$fs = $fs;
22
+ // User specific config
12
23
  this.DEBUG = false;
13
24
  this.ANDROID_DEBUG_UI = null;
14
25
  this.USE_POD_SANDBOX = false;
@@ -47,6 +58,7 @@ class StaticConfig {
47
58
  this._userAgent = null;
48
59
  }
49
60
  get disableCommandHooks() {
61
+ // Never set this to false because it will duplicate execution of hooks realized through method decoration
50
62
  return true;
51
63
  }
52
64
  get HTML_CLI_HELPERS_DIR() {
@@ -58,14 +70,16 @@ class StaticConfig {
58
70
  get PATH_TO_BOOTSTRAP() {
59
71
  return path.join(__dirname, "bootstrap.js");
60
72
  }
61
- async getAdbFilePath() {
62
- if (!this._adbFilePath) {
63
- const androidToolsInfo = this.$injector.resolve("androidToolsInfo");
64
- this._adbFilePath =
65
- (await androidToolsInfo.getPathToAdbFromAndroidHome()) ||
66
- (await this.getAdbFilePathCore());
67
- }
68
- return this._adbFilePath;
73
+ getAdbFilePath() {
74
+ return __awaiter(this, void 0, void 0, function* () {
75
+ if (!this._adbFilePath) {
76
+ const androidToolsInfo = this.$injector.resolve("androidToolsInfo");
77
+ this._adbFilePath =
78
+ (yield androidToolsInfo.getPathToAdbFromAndroidHome()) ||
79
+ (yield this.getAdbFilePathCore());
80
+ }
81
+ return this._adbFilePath;
82
+ });
69
83
  }
70
84
  get USER_AGENT_NAME() {
71
85
  if (!this._userAgent) {
@@ -85,38 +99,60 @@ class StaticConfig {
85
99
  get HTML_COMMON_HELPERS_DIR() {
86
100
  return path.join(__dirname, "common", "docs", "helpers");
87
101
  }
88
- async getAdbFilePathCore() {
89
- const $childProcess = this.$injector.resolve("$childProcess");
90
- try {
91
- const proc = await $childProcess.spawnFromEvent("adb", ["version"], "exit", undefined, { throwError: false });
92
- if (proc.stderr) {
93
- return await this.spawnPrivateAdb();
102
+ getAdbFilePathCore() {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ const $childProcess = this.$injector.resolve("$childProcess");
105
+ try {
106
+ // Do NOT use the adb wrapper because it will end blow up with Segmentation fault because the wrapper uses this method!!!
107
+ const proc = yield $childProcess.spawnFromEvent("adb", ["version"], "exit", undefined, { throwError: false });
108
+ if (proc.stderr) {
109
+ return yield this.spawnPrivateAdb();
110
+ }
94
111
  }
95
- }
96
- catch (e) {
97
- if (e.code === "ENOENT") {
98
- return await this.spawnPrivateAdb();
112
+ catch (e) {
113
+ if (e.code === "ENOENT") {
114
+ return yield this.spawnPrivateAdb();
115
+ }
99
116
  }
100
- }
101
- return "adb";
102
- }
103
- async spawnPrivateAdb() {
104
- const $fs = this.$injector.resolve("$fs"), $childProcess = this.$injector.resolve("$childProcess"), $hostInfo = this.$injector.resolve("$hostInfo");
105
- const defaultAdbDirPath = path.join(__dirname, "common", "resources", "platform-tools", "android", process.platform);
106
- const pathToPackageJson = path.join(__dirname, "..", "package.json");
107
- const nsCliVersion = require(pathToPackageJson).version;
108
- const tmpDir = path.join(os.tmpdir(), `nativescript-cli-${nsCliVersion}`);
109
- $fs.createDirectory(tmpDir);
110
- const targetAdb = path.join(tmpDir, "adb");
111
- if (!$fs.exists(tmpDir) || !$fs.readDirectory(tmpDir).length) {
112
- shelljs.cp(path.join(defaultAdbDirPath, "*"), tmpDir);
113
- if (!$hostInfo.isWindows) {
114
- shelljs.chmod("+x", targetAdb);
117
+ return "adb";
118
+ });
119
+ }
120
+ /*
121
+ Problem:
122
+ 1. Adb forks itself as a server which keeps running until adb kill-server is invoked or crashes
123
+ 2. On Windows running processes lock their image files due to memory mapping. Locked files prevent their parent directories from deletion and cannot be overwritten.
124
+ 3. Update and uninstall scenarios are broken
125
+ Solution:
126
+ - Copy adb and associated files into a temporary directory. Let this copy of adb run persistently
127
+ - On Posix OSes, immediately delete the file to not take file space
128
+ - Tie common lib version to updates of adb, so that when we integrate a newer adb we can use it
129
+ - Adb is named differently on OSes and may have additional files. The code is hairy to accommodate these differences
130
+ */
131
+ spawnPrivateAdb() {
132
+ return __awaiter(this, void 0, void 0, function* () {
133
+ const $fs = this.$injector.resolve("$fs"), $childProcess = this.$injector.resolve("$childProcess"), $hostInfo = this.$injector.resolve("$hostInfo");
134
+ // prepare the directory to host our copy of adb
135
+ const defaultAdbDirPath = path.join(__dirname, "common", "resources", "platform-tools", "android", process.platform);
136
+ const pathToPackageJson = path.join(__dirname, "..", "package.json");
137
+ const nsCliVersion = require(pathToPackageJson).version;
138
+ const tmpDir = path.join(os.tmpdir(), `nativescript-cli-${nsCliVersion}`);
139
+ $fs.createDirectory(tmpDir);
140
+ // copy the adb and associated files
141
+ const targetAdb = path.join(tmpDir, "adb");
142
+ // In case directory is missing or it's empty, copy the new adb
143
+ if (!$fs.exists(tmpDir) || !$fs.readDirectory(tmpDir).length) {
144
+ shelljs.cp(path.join(defaultAdbDirPath, "*"), tmpDir); // deliberately ignore copy errors
145
+ // adb loses its executable bit when packed inside electron asar file. Manually fix the issue
146
+ if (!$hostInfo.isWindows) {
147
+ shelljs.chmod("+x", targetAdb);
148
+ }
115
149
  }
116
- }
117
- await $childProcess.spawnFromEvent(targetAdb, ["start-server"], "exit");
118
- return targetAdb;
150
+ // let adb start its global server
151
+ yield $childProcess.spawnFromEvent(targetAdb, ["start-server"], "exit");
152
+ return targetAdb;
153
+ });
119
154
  }
120
155
  }
121
156
  exports.StaticConfig = StaticConfig;
122
157
  yok_1.injector.register("staticConfig", StaticConfig);
158
+ //# sourceMappingURL=config.js.map
@@ -10,3 +10,4 @@ class Constants {
10
10
  }
11
11
  exports.Constants = Constants;
12
12
  yok_1.injector.register("constants", Constants);
13
+ //# sourceMappingURL=constants-provider.js.map