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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (632) hide show
  1. package/CHANGELOG.md +2571 -0
  2. package/bin/tns +65 -1
  3. package/config/config.json +2 -1
  4. package/config/test-deps-versions-generated.json +1 -1
  5. package/contracts/package.json +4 -0
  6. package/docs/man_pages/project/testing/build-android.md +1 -1
  7. package/lib/android-tools-info.d.ts +19 -0
  8. package/lib/base-package-manager.d.ts +28 -0
  9. package/lib/bootstrap.js +2 -1
  10. package/lib/bun-package-manager.d.ts +16 -0
  11. package/lib/color.d.ts +39 -0
  12. package/lib/commands/add-platform.d.ts +14 -0
  13. package/lib/commands/apple-login.d.ts +14 -0
  14. package/lib/commands/appstore-list.d.ts +21 -0
  15. package/lib/commands/appstore-upload.d.ts +25 -0
  16. package/lib/commands/build.d.ts +58 -0
  17. package/lib/commands/clean.d.ts +21 -0
  18. package/lib/commands/command-base.d.ts +16 -0
  19. package/lib/commands/config.d.ts +30 -0
  20. package/lib/commands/create-project.d.ts +42 -0
  21. package/lib/commands/debug.d.ts +53 -0
  22. package/lib/commands/deploy.d.ts +32 -0
  23. package/lib/commands/embedding/embed.d.ts +27 -0
  24. package/lib/commands/extensibility/install-extension.d.ts +10 -0
  25. package/lib/commands/extensibility/list-extensions.d.ts +9 -0
  26. package/lib/commands/extensibility/uninstall-extension.d.ts +10 -0
  27. package/lib/commands/fonts.d.ts +12 -0
  28. package/lib/commands/generate-assets.d.ts +29 -0
  29. package/lib/commands/generate-help.d.ts +8 -0
  30. package/lib/commands/generate.d.ts +12 -0
  31. package/lib/commands/hooks/common.d.ts +22 -0
  32. package/lib/commands/hooks/hooks-lock.d.ts +24 -0
  33. package/lib/commands/hooks/hooks.d.ts +17 -0
  34. package/lib/commands/info.d.ts +8 -0
  35. package/lib/commands/install.d.ts +25 -0
  36. package/lib/commands/list-platforms.d.ts +11 -0
  37. package/lib/commands/migrate.d.ts +13 -0
  38. package/lib/commands/native-add.d.ts +49 -0
  39. package/lib/commands/platform-clean.d.ts +17 -0
  40. package/lib/commands/plugin/add-plugin.d.ts +13 -0
  41. package/lib/commands/plugin/build-plugin.d.ts +18 -0
  42. package/lib/commands/plugin/create-plugin.d.ts +30 -0
  43. package/lib/commands/plugin/list-plugins.d.ts +12 -0
  44. package/lib/commands/plugin/remove-plugin.d.ts +14 -0
  45. package/lib/commands/plugin/update-plugin.d.ts +13 -0
  46. package/lib/commands/post-install.d.ts +16 -0
  47. package/lib/commands/prepare.d.ts +40 -0
  48. package/lib/commands/prepare.js +0 -5
  49. package/lib/commands/preview.d.ts +18 -0
  50. package/lib/commands/preview.js +1 -0
  51. package/lib/commands/remove-platform.d.ts +14 -0
  52. package/lib/commands/resources/resources-update.d.ts +13 -0
  53. package/lib/commands/run.d.ts +61 -0
  54. package/lib/commands/setup.d.ts +8 -0
  55. package/lib/commands/start.d.ts +9 -0
  56. package/lib/commands/typings.d.ts +22 -0
  57. package/lib/commands/update-platform.d.ts +17 -0
  58. package/lib/commands/update.d.ts +21 -0
  59. package/lib/commands/widget.d.ts +24 -0
  60. package/lib/commands/widget.js +0 -1
  61. package/lib/common/child-process.d.ts +17 -0
  62. package/lib/common/codeGeneration/code-entity.d.ts +22 -0
  63. package/lib/common/codeGeneration/code-printer.d.ts +10 -0
  64. package/lib/common/command-params.d.ts +14 -0
  65. package/lib/common/commands/analytics.d.ts +30 -0
  66. package/lib/common/commands/autocompletion.d.ts +35 -0
  67. package/lib/common/commands/device/device-log-stream.d.ts +16 -0
  68. package/lib/common/commands/device/get-file.d.ts +14 -0
  69. package/lib/common/commands/device/list-applications.d.ts +10 -0
  70. package/lib/common/commands/device/list-devices.d.ts +16 -0
  71. package/lib/common/commands/device/list-files.d.ts +14 -0
  72. package/lib/common/commands/device/put-file.d.ts +14 -0
  73. package/lib/common/commands/device/run-application.d.ts +13 -0
  74. package/lib/common/commands/device/stop-application.d.ts +10 -0
  75. package/lib/common/commands/device/uninstall-application.d.ts +10 -0
  76. package/lib/common/commands/doctor.d.ts +23 -0
  77. package/lib/common/commands/generate-messages.d.ts +13 -0
  78. package/lib/common/commands/help.d.ts +14 -0
  79. package/lib/common/commands/package-manager-get.d.ts +10 -0
  80. package/lib/common/commands/package-manager-set.d.ts +11 -0
  81. package/lib/common/commands/post-install.d.ts +9 -0
  82. package/lib/common/commands/preuninstall.d.ts +16 -0
  83. package/lib/common/commands/proxy/proxy-base.d.ts +13 -0
  84. package/lib/common/commands/proxy/proxy-clear.d.ts +9 -0
  85. package/lib/common/commands/proxy/proxy-get.d.ts +9 -0
  86. package/lib/common/commands/proxy/proxy-set.d.ts +23 -0
  87. package/lib/common/constants.d.ts +117 -0
  88. package/lib/common/contracts/command-registry.d.ts +35 -0
  89. package/lib/common/contracts/command-registry.js +16 -0
  90. package/lib/common/contracts/index.d.ts +5 -0
  91. package/lib/common/contracts/index.js +11 -0
  92. package/lib/common/contracts/key-command-registry.d.ts +7 -0
  93. package/lib/common/contracts/key-command-registry.js +16 -0
  94. package/lib/common/contracts/module-registry.d.ts +4 -0
  95. package/lib/common/contracts/module-registry.js +16 -0
  96. package/lib/common/contracts/public-api-builder.d.ts +5 -0
  97. package/lib/common/contracts/public-api-builder.js +16 -0
  98. package/lib/common/declarations.d.ts +12 -1
  99. package/lib/common/decorators.d.ts +13 -0
  100. package/lib/common/define-command.d.ts +53 -0
  101. package/lib/common/define-command.js +147 -0
  102. package/lib/common/define-hook.d.ts +29 -0
  103. package/lib/common/define-hook.js +101 -0
  104. package/lib/common/definitions/commands.d.ts +7 -0
  105. package/lib/common/definitions/extensibility.d.ts +7 -0
  106. package/lib/common/definitions/key-commands.d.ts +25 -0
  107. package/lib/common/definitions/yok.d.ts +43 -35
  108. package/lib/common/deprecation.d.ts +12 -0
  109. package/lib/common/deprecation.js +56 -0
  110. package/lib/common/di/contract.d.ts +7 -0
  111. package/lib/common/di/contract.js +34 -0
  112. package/lib/common/di/forward-ref.d.ts +2 -0
  113. package/lib/common/di/forward-ref.js +15 -0
  114. package/lib/common/di/index.d.ts +8 -0
  115. package/lib/common/di/index.js +19 -0
  116. package/lib/common/di/inject.d.ts +8 -0
  117. package/lib/common/di/inject.js +41 -0
  118. package/lib/common/di/injector.d.ts +38 -0
  119. package/lib/common/di/injector.js +268 -0
  120. package/lib/common/di/providers.d.ts +30 -0
  121. package/lib/common/di/providers.js +7 -0
  122. package/lib/common/dispatchers.d.ts +21 -0
  123. package/lib/common/enums.d.ts +34 -0
  124. package/lib/common/errors.d.ts +15 -0
  125. package/lib/common/file-system.d.ts +77 -0
  126. package/lib/common/header.d.ts +1 -0
  127. package/lib/common/helpers.d.ts +62 -0
  128. package/lib/common/helpers.js +3 -3
  129. package/lib/common/host-info.d.ts +24 -0
  130. package/lib/common/http-client.d.ts +14 -0
  131. package/lib/common/http-client.js +11 -0
  132. package/lib/common/logger/appenders/cli-appender.d.ts +2 -0
  133. package/lib/common/logger/appenders/emit-appender.d.ts +5 -0
  134. package/lib/common/logger/layouts/cli-layout.d.ts +2 -0
  135. package/lib/common/logger/logger.d.ts +24 -0
  136. package/lib/common/messages/messages.d.ts +7 -0
  137. package/lib/common/mobile/android/android-application-manager.d.ts +31 -0
  138. package/lib/common/mobile/android/android-debug-bridge-result-handler.d.ts +9 -0
  139. package/lib/common/mobile/android/android-debug-bridge.d.ts +24 -0
  140. package/lib/common/mobile/android/android-device-file-system.d.ts +26 -0
  141. package/lib/common/mobile/android/android-device-hash-service.d.ts +23 -0
  142. package/lib/common/mobile/android/android-device.d.ts +24 -0
  143. package/lib/common/mobile/android/android-emulator-services.d.ts +23 -0
  144. package/lib/common/mobile/android/android-ini-file-parser.d.ts +8 -0
  145. package/lib/common/mobile/android/android-log-filter.d.ts +11 -0
  146. package/lib/common/mobile/android/android-virtual-device-service.d.ts +37 -0
  147. package/lib/common/mobile/android/device-android-debug-bridge.d.ts +18 -0
  148. package/lib/common/mobile/android/genymotion/genymotion-service.d.ts +26 -0
  149. package/lib/common/mobile/android/genymotion/virtualbox-service.d.ts +13 -0
  150. package/lib/common/mobile/android/logcat-helper.d.ts +17 -0
  151. package/lib/common/mobile/application-manager-base.d.ts +27 -0
  152. package/lib/common/mobile/device-emitter.d.ts +8 -0
  153. package/lib/common/mobile/device-log-emitter.d.ts +9 -0
  154. package/lib/common/mobile/device-log-provider-base.d.ts +21 -0
  155. package/lib/common/mobile/device-log-provider.d.ts +21 -0
  156. package/lib/common/mobile/device-platforms-constants.d.ts +8 -0
  157. package/lib/common/mobile/emulator-helper.d.ts +32 -0
  158. package/lib/common/mobile/ios/device/ios-application-manager.d.ts +27 -0
  159. package/lib/common/mobile/ios/device/ios-device-file-system.d.ts +19 -0
  160. package/lib/common/mobile/ios/device/ios-device-operations.d.ts +29 -0
  161. package/lib/common/mobile/ios/device/ios-device.d.ts +32 -0
  162. package/lib/common/mobile/ios/ios-device-base.d.ts +24 -0
  163. package/lib/common/mobile/ios/ios-log-filter.d.ts +6 -0
  164. package/lib/common/mobile/ios/simulator/ios-emulator-services.d.ts +1 -0
  165. package/lib/common/mobile/ios/simulator/ios-sim-resolver.d.ts +7 -0
  166. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.d.ts +27 -0
  167. package/lib/common/mobile/ios/simulator/ios-simulator-device.d.ts +27 -0
  168. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.d.ts +16 -0
  169. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.d.ts +15 -0
  170. package/lib/common/mobile/local-to-device-path-data-factory.d.ts +3 -0
  171. package/lib/common/mobile/log-filter.d.ts +13 -0
  172. package/lib/common/mobile/logging-levels.d.ts +4 -0
  173. package/lib/common/mobile/mobile-core/android-device-discovery.d.ts +16 -0
  174. package/lib/common/mobile/mobile-core/android-emulator-discovery.d.ts +11 -0
  175. package/lib/common/mobile/mobile-core/android-process-service.d.ts +33 -0
  176. package/lib/common/mobile/mobile-core/device-discovery.d.ts +12 -0
  177. package/lib/common/mobile/mobile-core/devices-service.d.ts +99 -0
  178. package/lib/common/mobile/mobile-core/ios-device-discovery.d.ts +12 -0
  179. package/lib/common/mobile/mobile-core/ios-simulator-discovery.d.ts +20 -0
  180. package/lib/common/mobile/mobile-helper.d.ts +22 -0
  181. package/lib/common/mobile/wp8/wp8-emulator-services.d.ts +1 -0
  182. package/lib/common/opener.d.ts +4 -0
  183. package/lib/common/os-info.d.ts +7 -0
  184. package/lib/common/plist-parser.d.ts +5 -0
  185. package/lib/common/project-helper.d.ts +15 -0
  186. package/lib/common/prompter.d.ts +23 -0
  187. package/lib/common/queue.d.ts +8 -0
  188. package/lib/common/resource-loader.d.ts +10 -0
  189. package/lib/common/services/analytics/google-analytics-custom-dimensions.d.ts +9 -0
  190. package/lib/common/services/auto-completion-service.d.ts +36 -0
  191. package/lib/common/services/cancellation.d.ts +1 -0
  192. package/lib/common/services/command-definition-adapter.d.ts +6 -0
  193. package/lib/common/services/command-definition-adapter.js +141 -0
  194. package/lib/common/services/commands-service.d.ts +30 -0
  195. package/lib/common/services/commands-service.js +2 -1
  196. package/lib/common/services/help-service.d.ts +46 -0
  197. package/lib/common/services/hooks-service.d.ts +40 -0
  198. package/lib/common/services/hooks-service.js +110 -51
  199. package/lib/common/services/ios-notification-service.d.ts +7 -0
  200. package/lib/common/services/json-file-settings-service.d.ts +24 -0
  201. package/lib/common/services/lock-service.d.ts +18 -0
  202. package/lib/common/services/message-contract-generator.d.ts +8 -0
  203. package/lib/common/services/messages-service.d.ts +15 -0
  204. package/lib/common/services/micro-templating-service.d.ts +12 -0
  205. package/lib/common/services/net-service.d.ts +13 -0
  206. package/lib/common/services/project-files-manager.d.ts +14 -0
  207. package/lib/common/services/project-files-provider-base.d.ts +12 -0
  208. package/lib/common/services/proxy-service.d.ts +12 -0
  209. package/lib/common/services/qr.d.ts +7 -0
  210. package/lib/common/services/settings-service.d.ts +10 -0
  211. package/lib/common/services/xcode-select-service.d.ts +12 -0
  212. package/lib/common/utils.d.ts +10 -0
  213. package/lib/common/validators/project-name-validator.d.ts +18 -0
  214. package/lib/common/validators/validation-result.d.ts +7 -0
  215. package/lib/common/verify-node-version.d.ts +3 -0
  216. package/lib/common/yok.d.ts +60 -0
  217. package/lib/common/yok.js +161 -133
  218. package/lib/config.d.ts +45 -0
  219. package/lib/config.js +2 -1
  220. package/lib/constants-provider.d.ts +4 -0
  221. package/lib/constants.d.ts +331 -0
  222. package/lib/constants.js +7 -2
  223. package/lib/contracts/doctor-service.d.ts +20 -0
  224. package/lib/contracts/doctor-service.js +16 -0
  225. package/lib/contracts/index.d.ts +14 -0
  226. package/lib/contracts/index.js +32 -0
  227. package/lib/contracts/project-name-service.d.ts +5 -0
  228. package/lib/contracts/project-name-service.js +16 -0
  229. package/lib/controllers/build-controller.d.ts +23 -0
  230. package/lib/controllers/debug-controller.d.ts +31 -0
  231. package/lib/controllers/deploy-controller.d.ts +7 -0
  232. package/lib/controllers/migrate-controller.d.ts +67 -0
  233. package/lib/controllers/platform-controller.d.ts +20 -0
  234. package/lib/controllers/prepare-controller.d.ts +45 -0
  235. package/lib/controllers/run-controller.d.ts +57 -0
  236. package/lib/controllers/update-controller-base.d.ts +27 -0
  237. package/lib/controllers/update-controller.d.ts +36 -0
  238. package/lib/data/build-data.d.ts +33 -0
  239. package/lib/data/controller-data-base.d.ts +8 -0
  240. package/lib/data/debug-data.d.ts +2 -0
  241. package/lib/data/platform-data.d.ts +7 -0
  242. package/lib/data/prepare-data.d.ts +22 -0
  243. package/lib/data/run-data.d.ts +6 -0
  244. package/lib/declarations.d.ts +2 -1
  245. package/lib/definitions/ios.d.ts +36 -1
  246. package/lib/definitions/system-warnings.d.ts +4 -0
  247. package/lib/detached-processes/cleanup-js-subprocess.d.ts +2 -0
  248. package/lib/detached-processes/cleanup-process.d.ts +1 -0
  249. package/lib/detached-processes/detached-process-enums.d.ts +18 -0
  250. package/lib/detached-processes/file-log-service.d.ts +7 -0
  251. package/lib/device-path-provider.d.ts +9 -0
  252. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.d.ts +22 -0
  253. package/lib/device-sockets/ios/notification.d.ts +13 -0
  254. package/lib/device-sockets/ios/socket-request-executor.d.ts +11 -0
  255. package/lib/helpers/android-bundle-validator-helper.d.ts +18 -0
  256. package/lib/helpers/deploy-command-helper.d.ts +16 -0
  257. package/lib/helpers/key-command-helper.d.ts +13 -0
  258. package/lib/helpers/livesync-command-helper.d.ts +36 -0
  259. package/lib/helpers/network-connectivity-validator.d.ts +12 -0
  260. package/lib/helpers/options-track-helper.d.ts +14 -0
  261. package/lib/helpers/package-path-helper.d.ts +2 -0
  262. package/lib/helpers/platform-command-helper.d.ts +35 -0
  263. package/lib/helpers/version-validator-helper.d.ts +8 -0
  264. package/lib/key-commands/bootstrap.d.ts +1 -0
  265. package/lib/key-commands/index.d.ts +166 -0
  266. package/lib/nativescript-cli-lib-bootstrap.d.ts +1 -0
  267. package/lib/nativescript-cli-lib.d.ts +1 -0
  268. package/lib/nativescript-cli.d.ts +1 -0
  269. package/lib/node/pbxproj-dom-xcode.d.ts +4 -0
  270. package/lib/node/xcode.d.ts +2 -0
  271. package/lib/node-package-manager.d.ts +16 -0
  272. package/lib/options.d.ts +33 -0
  273. package/lib/options.js +70 -43
  274. package/lib/package-installation-manager.d.ts +30 -0
  275. package/lib/package-manager.d.ts +32 -0
  276. package/lib/platform-command-param.d.ts +10 -0
  277. package/lib/pnpm-package-manager.d.ts +16 -0
  278. package/lib/project-data.d.ts +58 -0
  279. package/lib/providers/project-files-provider.d.ts +12 -0
  280. package/lib/resolvers/livesync-service-resolver.d.ts +9 -0
  281. package/lib/services/analytics/analytics-broker-process.d.ts +1 -0
  282. package/lib/services/analytics/analytics-broker.d.ts +11 -0
  283. package/lib/services/analytics/analytics-service.d.ts +46 -0
  284. package/lib/services/analytics/google-analytics-provider.d.ts +22 -0
  285. package/lib/services/analytics/google-analytics-provider.js +84 -83
  286. package/lib/services/analytics-settings-service.d.ts +1 -0
  287. package/lib/services/android/android-bundle-tool-service.d.ts +27 -0
  288. package/lib/services/android/android-bundle-tool-service.js +102 -3
  289. package/lib/services/android/gradle-build-args-service.d.ts +17 -0
  290. package/lib/services/android/gradle-build-service.d.ts +12 -0
  291. package/lib/services/android/gradle-command-service.d.ts +11 -0
  292. package/lib/services/android-device-debug-service.d.ts +30 -0
  293. package/lib/services/android-plugin-build-service.d.ts +55 -0
  294. package/lib/services/android-project-service.d.ts +75 -0
  295. package/lib/services/android-resources-migration-service.d.ts +17 -0
  296. package/lib/services/apple-portal/apple-portal-application-service.d.ts +12 -0
  297. package/lib/services/apple-portal/apple-portal-cookie-service.d.ts +10 -0
  298. package/lib/services/apple-portal/apple-portal-session-service.d.ts +19 -0
  299. package/lib/services/apple-portal/srp/srp-wrapper.d.ts +29 -0
  300. package/lib/services/assets-generation/assets-generation-service.d.ts +24 -0
  301. package/lib/services/build-artifacts-service.d.ts +16 -0
  302. package/lib/services/build-data-service.d.ts +7 -0
  303. package/lib/services/build-info-file-service.d.ts +16 -0
  304. package/lib/services/bundler/bundler-compiler-service.d.ts +50 -0
  305. package/lib/services/bundler/bundler-compiler-service.js +2 -1
  306. package/lib/services/bundler/bundler.d.ts +75 -0
  307. package/lib/services/cleanup-service.d.ts +29 -0
  308. package/lib/services/cocoapods-platform-manager.d.ts +17 -0
  309. package/lib/services/cocoapods-service.d.ts +47 -0
  310. package/lib/services/debug-data-service.d.ts +7 -0
  311. package/lib/services/debug-service-base.d.ts +12 -0
  312. package/lib/services/device/device-install-app-service.d.ts +19 -0
  313. package/lib/services/doctor-service.d.ts +51 -0
  314. package/lib/services/doctor-service.js +14 -11
  315. package/lib/services/extensibility-service.d.ts +36 -0
  316. package/lib/services/extensibility-service.js +126 -5
  317. package/lib/services/files-hash-service.d.ts +17 -0
  318. package/lib/services/hmr-status-service.d.ts +19 -0
  319. package/lib/services/info-service.d.ts +6 -0
  320. package/lib/services/initialize-service.d.ts +8 -0
  321. package/lib/services/ios/export-options-plist-service.d.ts +13 -0
  322. package/lib/services/ios/ios-signing-service.d.ts +33 -0
  323. package/lib/services/ios/spm-pbxproj-service.d.ts +16 -0
  324. package/lib/services/ios/spm-pbxproj-service.js +234 -0
  325. package/lib/services/ios/spm-service.d.ts +35 -0
  326. package/lib/services/ios/spm-service.js +10 -19
  327. package/lib/services/ios/xcodebuild-args-service.d.ts +20 -0
  328. package/lib/services/ios/xcodebuild-command-service.d.ts +17 -0
  329. package/lib/services/ios/xcodebuild-service.d.ts +13 -0
  330. package/lib/services/ios-debugger-port-service.d.ts +20 -0
  331. package/lib/services/ios-device-debug-service.d.ts +29 -0
  332. package/lib/services/ios-entitlements-service.d.ts +19 -0
  333. package/lib/services/ios-entitlements-service.js +3 -3
  334. package/lib/services/ios-extensions-service.d.ts +12 -0
  335. package/lib/services/ios-log-filter.d.ts +11 -0
  336. package/lib/services/ios-native-target-service.d.ts +14 -0
  337. package/lib/services/ios-project-service.d.ts +108 -0
  338. package/lib/services/ios-project-service.js +2 -2
  339. package/lib/services/ios-provision-service.d.ts +18 -0
  340. package/lib/services/ios-watch-app-service.d.ts +39 -0
  341. package/lib/services/ios-watch-app-service.js +8 -15
  342. package/lib/services/ip-service.d.ts +10 -0
  343. package/lib/services/itmstransporter-service.d.ts +26 -0
  344. package/lib/services/karma-execution.d.ts +1 -0
  345. package/lib/services/livesync/android-device-livesync-service-base.d.ts +19 -0
  346. package/lib/services/livesync/android-device-livesync-service.d.ts +24 -0
  347. package/lib/services/livesync/android-device-livesync-sockets-service.d.ts +36 -0
  348. package/lib/services/livesync/android-livesync-service.d.ts +16 -0
  349. package/lib/services/livesync/android-livesync-tool.d.ts +58 -0
  350. package/lib/services/livesync/device-livesync-service-base.d.ts +13 -0
  351. package/lib/services/livesync/ios-device-livesync-service.d.ts +28 -0
  352. package/lib/services/livesync/ios-livesync-service.d.ts +17 -0
  353. package/lib/services/livesync/livesync-socket.d.ts +5 -0
  354. package/lib/services/livesync/platform-livesync-service-base.d.ts +25 -0
  355. package/lib/services/livesync-process-data-service.d.ts +10 -0
  356. package/lib/services/log-parser-service.d.ts +11 -0
  357. package/lib/services/log-source-map-service.d.ts +28 -0
  358. package/lib/services/marking-mode-service.d.ts +12 -0
  359. package/lib/services/metadata-filtering-service.d.ts +19 -0
  360. package/lib/services/npm-config-service.d.ts +7 -0
  361. package/lib/services/pacote-service.d.ts +16 -0
  362. package/lib/services/performance-service.d.ts +19 -0
  363. package/lib/services/platform/add-platform-service.d.ts +21 -0
  364. package/lib/services/platform/platform-validation-service.d.ts +17 -0
  365. package/lib/services/platform/prepare-native-platform-service.d.ts +15 -0
  366. package/lib/services/platform-environment-requirements.d.ts +15 -0
  367. package/lib/services/platform-project-service-base.d.ts +14 -0
  368. package/lib/services/platforms-data-service.d.ts +9 -0
  369. package/lib/services/plugins-service.d.ts +60 -0
  370. package/lib/services/prepare-data-service.d.ts +7 -0
  371. package/lib/services/project-backup-service.d.ts +12 -0
  372. package/lib/services/project-changes-service.d.ts +30 -0
  373. package/lib/services/project-cleanup-service.d.ts +13 -0
  374. package/lib/services/project-config-service.d.ts +33 -0
  375. package/lib/services/project-config-service.js +33 -11
  376. package/lib/services/project-data-service.d.ts +48 -0
  377. package/lib/services/project-name-service.d.ts +16 -0
  378. package/lib/services/project-name-service.js +4 -4
  379. package/lib/services/project-service.d.ts +34 -0
  380. package/lib/services/project-templates-service.d.ts +18 -0
  381. package/lib/services/qr-code-terminal-service.d.ts +5 -0
  382. package/lib/services/require-service.d.ts +3 -0
  383. package/lib/services/start-service.d.ts +30 -0
  384. package/lib/services/temp-service.d.ts +14 -0
  385. package/lib/services/terminal-spinner-service.d.ts +5 -0
  386. package/lib/services/test-execution-service.d.ts +26 -0
  387. package/lib/services/test-initialization-service.d.ts +10 -0
  388. package/lib/services/timeline-profiler-service.d.ts +18 -0
  389. package/lib/services/user-settings-service.d.ts +14 -0
  390. package/lib/services/versions-service.d.ts +5 -0
  391. package/lib/services/watch-ignore-list-service.d.ts +7 -0
  392. package/lib/services/xcconfig-service.d.ts +15 -0
  393. package/lib/services/xcproj-service.d.ts +1 -0
  394. package/lib/shared-event-bus.d.ts +1 -0
  395. package/lib/sys-info.d.ts +18 -0
  396. package/lib/tools/config-manipulation/config-transformer.d.ts +28 -0
  397. package/lib/tools/config-manipulation/config-transformer.js +15 -7
  398. package/lib/tools/node-modules/node-modules-builder.d.ts +9 -0
  399. package/lib/tools/node-modules/node-modules-dependencies-builder.d.ts +10 -0
  400. package/lib/tools/plist-merge/plist-session.d.ts +30 -0
  401. package/lib/tools/plist-merge/plist-session.js +92 -0
  402. package/lib/yarn-package-manager.d.ts +16 -0
  403. package/lib/yarn2-package-manager.d.ts +18 -0
  404. package/package.json +11 -107
  405. package/postinstall.js +7 -2
  406. package/node_modules/debug/LICENSE +0 -20
  407. package/node_modules/debug/README.md +0 -481
  408. package/node_modules/debug/package.json +0 -64
  409. package/node_modules/debug/src/browser.js +0 -272
  410. package/node_modules/debug/src/common.js +0 -292
  411. package/node_modules/debug/src/index.js +0 -10
  412. package/node_modules/debug/src/node.js +0 -263
  413. package/node_modules/ms/index.js +0 -162
  414. package/node_modules/ms/license.md +0 -21
  415. package/node_modules/ms/package.json +0 -38
  416. package/node_modules/ms/readme.md +0 -59
  417. package/node_modules/universal-analytics/.travis.yml +0 -11
  418. package/node_modules/universal-analytics/AcceptableParams.md +0 -757
  419. package/node_modules/universal-analytics/HISTORY.md +0 -170
  420. package/node_modules/universal-analytics/Makefile +0 -5
  421. package/node_modules/universal-analytics/README.md +0 -651
  422. package/node_modules/universal-analytics/index.js +0 -2
  423. package/node_modules/universal-analytics/lib/config.js +0 -171
  424. package/node_modules/universal-analytics/lib/index.js +0 -563
  425. package/node_modules/universal-analytics/lib/request.js +0 -73
  426. package/node_modules/universal-analytics/lib/utils.js +0 -29
  427. package/node_modules/universal-analytics/package.json +0 -33
  428. package/node_modules/universal-analytics/test/_enqueue.js +0 -144
  429. package/node_modules/universal-analytics/test/event.js +0 -346
  430. package/node_modules/universal-analytics/test/exception.js +0 -233
  431. package/node_modules/universal-analytics/test/index.js +0 -141
  432. package/node_modules/universal-analytics/test/item.js +0 -550
  433. package/node_modules/universal-analytics/test/middleware.js +0 -119
  434. package/node_modules/universal-analytics/test/mocha.opts +0 -3
  435. package/node_modules/universal-analytics/test/pageview.js +0 -286
  436. package/node_modules/universal-analytics/test/send.js +0 -232
  437. package/node_modules/universal-analytics/test/set.js +0 -68
  438. package/node_modules/universal-analytics/test/timing.js +0 -363
  439. package/node_modules/universal-analytics/test/transaction.js +0 -371
  440. package/node_modules/uuid/LICENSE.md +0 -9
  441. package/node_modules/uuid/README.md +0 -510
  442. package/node_modules/uuid/dist/cjs/index.d.ts +0 -15
  443. package/node_modules/uuid/dist/cjs/index.js +0 -31
  444. package/node_modules/uuid/dist/cjs/max.d.ts +0 -2
  445. package/node_modules/uuid/dist/cjs/max.js +0 -3
  446. package/node_modules/uuid/dist/cjs/md5.d.ts +0 -4
  447. package/node_modules/uuid/dist/cjs/md5.js +0 -13
  448. package/node_modules/uuid/dist/cjs/native.d.ts +0 -6
  449. package/node_modules/uuid/dist/cjs/native.js +0 -4
  450. package/node_modules/uuid/dist/cjs/nil.d.ts +0 -2
  451. package/node_modules/uuid/dist/cjs/nil.js +0 -3
  452. package/node_modules/uuid/dist/cjs/package.json +0 -1
  453. package/node_modules/uuid/dist/cjs/parse.d.ts +0 -2
  454. package/node_modules/uuid/dist/cjs/parse.js +0 -11
  455. package/node_modules/uuid/dist/cjs/regex.d.ts +0 -2
  456. package/node_modules/uuid/dist/cjs/regex.js +0 -3
  457. package/node_modules/uuid/dist/cjs/rng.d.ts +0 -1
  458. package/node_modules/uuid/dist/cjs/rng.js +0 -13
  459. package/node_modules/uuid/dist/cjs/sha1.d.ts +0 -4
  460. package/node_modules/uuid/dist/cjs/sha1.js +0 -13
  461. package/node_modules/uuid/dist/cjs/stringify.d.ts +0 -3
  462. package/node_modules/uuid/dist/cjs/stringify.js +0 -39
  463. package/node_modules/uuid/dist/cjs/types.d.ts +0 -21
  464. package/node_modules/uuid/dist/cjs/types.js +0 -2
  465. package/node_modules/uuid/dist/cjs/uuid-bin.js +0 -72
  466. package/node_modules/uuid/dist/cjs/v1.d.ts +0 -11
  467. package/node_modules/uuid/dist/cjs/v1.js +0 -87
  468. package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +0 -2
  469. package/node_modules/uuid/dist/cjs/v1ToV6.js +0 -13
  470. package/node_modules/uuid/dist/cjs/v3.d.ts +0 -9
  471. package/node_modules/uuid/dist/cjs/v3.js +0 -14
  472. package/node_modules/uuid/dist/cjs/v35.d.ts +0 -7
  473. package/node_modules/uuid/dist/cjs/v35.js +0 -41
  474. package/node_modules/uuid/dist/cjs/v4.d.ts +0 -4
  475. package/node_modules/uuid/dist/cjs/v4.js +0 -29
  476. package/node_modules/uuid/dist/cjs/v5.d.ts +0 -9
  477. package/node_modules/uuid/dist/cjs/v5.js +0 -14
  478. package/node_modules/uuid/dist/cjs/v6.d.ts +0 -4
  479. package/node_modules/uuid/dist/cjs/v6.js +0 -19
  480. package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +0 -2
  481. package/node_modules/uuid/dist/cjs/v6ToV1.js +0 -13
  482. package/node_modules/uuid/dist/cjs/v7.d.ts +0 -9
  483. package/node_modules/uuid/dist/cjs/v7.js +0 -69
  484. package/node_modules/uuid/dist/cjs/validate.d.ts +0 -2
  485. package/node_modules/uuid/dist/cjs/validate.js +0 -7
  486. package/node_modules/uuid/dist/cjs/version.d.ts +0 -2
  487. package/node_modules/uuid/dist/cjs/version.js +0 -10
  488. package/node_modules/uuid/dist/cjs-browser/index.d.ts +0 -15
  489. package/node_modules/uuid/dist/cjs-browser/index.js +0 -31
  490. package/node_modules/uuid/dist/cjs-browser/max.d.ts +0 -2
  491. package/node_modules/uuid/dist/cjs-browser/max.js +0 -3
  492. package/node_modules/uuid/dist/cjs-browser/md5.d.ts +0 -2
  493. package/node_modules/uuid/dist/cjs-browser/md5.js +0 -137
  494. package/node_modules/uuid/dist/cjs-browser/native.d.ts +0 -4
  495. package/node_modules/uuid/dist/cjs-browser/native.js +0 -4
  496. package/node_modules/uuid/dist/cjs-browser/nil.d.ts +0 -2
  497. package/node_modules/uuid/dist/cjs-browser/nil.js +0 -3
  498. package/node_modules/uuid/dist/cjs-browser/package.json +0 -1
  499. package/node_modules/uuid/dist/cjs-browser/parse.d.ts +0 -2
  500. package/node_modules/uuid/dist/cjs-browser/parse.js +0 -11
  501. package/node_modules/uuid/dist/cjs-browser/regex.d.ts +0 -2
  502. package/node_modules/uuid/dist/cjs-browser/regex.js +0 -3
  503. package/node_modules/uuid/dist/cjs-browser/rng.d.ts +0 -1
  504. package/node_modules/uuid/dist/cjs-browser/rng.js +0 -14
  505. package/node_modules/uuid/dist/cjs-browser/sha1.d.ts +0 -2
  506. package/node_modules/uuid/dist/cjs-browser/sha1.js +0 -72
  507. package/node_modules/uuid/dist/cjs-browser/stringify.d.ts +0 -3
  508. package/node_modules/uuid/dist/cjs-browser/stringify.js +0 -39
  509. package/node_modules/uuid/dist/cjs-browser/types.d.ts +0 -21
  510. package/node_modules/uuid/dist/cjs-browser/types.js +0 -2
  511. package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +0 -72
  512. package/node_modules/uuid/dist/cjs-browser/v1.d.ts +0 -11
  513. package/node_modules/uuid/dist/cjs-browser/v1.js +0 -87
  514. package/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +0 -2
  515. package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +0 -13
  516. package/node_modules/uuid/dist/cjs-browser/v3.d.ts +0 -9
  517. package/node_modules/uuid/dist/cjs-browser/v3.js +0 -14
  518. package/node_modules/uuid/dist/cjs-browser/v35.d.ts +0 -7
  519. package/node_modules/uuid/dist/cjs-browser/v35.js +0 -41
  520. package/node_modules/uuid/dist/cjs-browser/v4.d.ts +0 -4
  521. package/node_modules/uuid/dist/cjs-browser/v4.js +0 -29
  522. package/node_modules/uuid/dist/cjs-browser/v5.d.ts +0 -9
  523. package/node_modules/uuid/dist/cjs-browser/v5.js +0 -14
  524. package/node_modules/uuid/dist/cjs-browser/v6.d.ts +0 -4
  525. package/node_modules/uuid/dist/cjs-browser/v6.js +0 -19
  526. package/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +0 -2
  527. package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +0 -13
  528. package/node_modules/uuid/dist/cjs-browser/v7.d.ts +0 -9
  529. package/node_modules/uuid/dist/cjs-browser/v7.js +0 -69
  530. package/node_modules/uuid/dist/cjs-browser/validate.d.ts +0 -2
  531. package/node_modules/uuid/dist/cjs-browser/validate.js +0 -7
  532. package/node_modules/uuid/dist/cjs-browser/version.d.ts +0 -2
  533. package/node_modules/uuid/dist/cjs-browser/version.js +0 -10
  534. package/node_modules/uuid/dist/esm/bin/uuid +0 -2
  535. package/node_modules/uuid/dist/esm/index.d.ts +0 -15
  536. package/node_modules/uuid/dist/esm/index.js +0 -14
  537. package/node_modules/uuid/dist/esm/max.d.ts +0 -2
  538. package/node_modules/uuid/dist/esm/max.js +0 -1
  539. package/node_modules/uuid/dist/esm/md5.d.ts +0 -4
  540. package/node_modules/uuid/dist/esm/md5.js +0 -11
  541. package/node_modules/uuid/dist/esm/native.d.ts +0 -6
  542. package/node_modules/uuid/dist/esm/native.js +0 -2
  543. package/node_modules/uuid/dist/esm/nil.d.ts +0 -2
  544. package/node_modules/uuid/dist/esm/nil.js +0 -1
  545. package/node_modules/uuid/dist/esm/parse.d.ts +0 -2
  546. package/node_modules/uuid/dist/esm/parse.js +0 -9
  547. package/node_modules/uuid/dist/esm/regex.d.ts +0 -2
  548. package/node_modules/uuid/dist/esm/regex.js +0 -1
  549. package/node_modules/uuid/dist/esm/rng.d.ts +0 -1
  550. package/node_modules/uuid/dist/esm/rng.js +0 -10
  551. package/node_modules/uuid/dist/esm/sha1.d.ts +0 -4
  552. package/node_modules/uuid/dist/esm/sha1.js +0 -11
  553. package/node_modules/uuid/dist/esm/stringify.d.ts +0 -3
  554. package/node_modules/uuid/dist/esm/stringify.js +0 -35
  555. package/node_modules/uuid/dist/esm/types.d.ts +0 -21
  556. package/node_modules/uuid/dist/esm/uuid-bin.js +0 -70
  557. package/node_modules/uuid/dist/esm/v1.d.ts +0 -11
  558. package/node_modules/uuid/dist/esm/v1.js +0 -83
  559. package/node_modules/uuid/dist/esm/v1ToV6.d.ts +0 -2
  560. package/node_modules/uuid/dist/esm/v1ToV6.js +0 -10
  561. package/node_modules/uuid/dist/esm/v3.d.ts +0 -9
  562. package/node_modules/uuid/dist/esm/v3.js +0 -9
  563. package/node_modules/uuid/dist/esm/v35.d.ts +0 -7
  564. package/node_modules/uuid/dist/esm/v35.js +0 -36
  565. package/node_modules/uuid/dist/esm/v4.d.ts +0 -4
  566. package/node_modules/uuid/dist/esm/v4.js +0 -27
  567. package/node_modules/uuid/dist/esm/v5.d.ts +0 -9
  568. package/node_modules/uuid/dist/esm/v5.js +0 -9
  569. package/node_modules/uuid/dist/esm/v6.d.ts +0 -4
  570. package/node_modules/uuid/dist/esm/v6.js +0 -17
  571. package/node_modules/uuid/dist/esm/v6ToV1.d.ts +0 -2
  572. package/node_modules/uuid/dist/esm/v6ToV1.js +0 -10
  573. package/node_modules/uuid/dist/esm/v7.d.ts +0 -9
  574. package/node_modules/uuid/dist/esm/v7.js +0 -65
  575. package/node_modules/uuid/dist/esm/validate.d.ts +0 -2
  576. package/node_modules/uuid/dist/esm/validate.js +0 -5
  577. package/node_modules/uuid/dist/esm/version.d.ts +0 -2
  578. package/node_modules/uuid/dist/esm/version.js +0 -8
  579. package/node_modules/uuid/dist/esm-browser/index.d.ts +0 -15
  580. package/node_modules/uuid/dist/esm-browser/index.js +0 -14
  581. package/node_modules/uuid/dist/esm-browser/max.d.ts +0 -2
  582. package/node_modules/uuid/dist/esm-browser/max.js +0 -1
  583. package/node_modules/uuid/dist/esm-browser/md5.d.ts +0 -2
  584. package/node_modules/uuid/dist/esm-browser/md5.js +0 -135
  585. package/node_modules/uuid/dist/esm-browser/native.d.ts +0 -4
  586. package/node_modules/uuid/dist/esm-browser/native.js +0 -2
  587. package/node_modules/uuid/dist/esm-browser/nil.d.ts +0 -2
  588. package/node_modules/uuid/dist/esm-browser/nil.js +0 -1
  589. package/node_modules/uuid/dist/esm-browser/parse.d.ts +0 -2
  590. package/node_modules/uuid/dist/esm-browser/parse.js +0 -9
  591. package/node_modules/uuid/dist/esm-browser/regex.d.ts +0 -2
  592. package/node_modules/uuid/dist/esm-browser/regex.js +0 -1
  593. package/node_modules/uuid/dist/esm-browser/rng.d.ts +0 -1
  594. package/node_modules/uuid/dist/esm-browser/rng.js +0 -11
  595. package/node_modules/uuid/dist/esm-browser/sha1.d.ts +0 -2
  596. package/node_modules/uuid/dist/esm-browser/sha1.js +0 -70
  597. package/node_modules/uuid/dist/esm-browser/stringify.d.ts +0 -3
  598. package/node_modules/uuid/dist/esm-browser/stringify.js +0 -35
  599. package/node_modules/uuid/dist/esm-browser/types.d.ts +0 -21
  600. package/node_modules/uuid/dist/esm-browser/uuid-bin.js +0 -70
  601. package/node_modules/uuid/dist/esm-browser/v1.d.ts +0 -11
  602. package/node_modules/uuid/dist/esm-browser/v1.js +0 -83
  603. package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +0 -2
  604. package/node_modules/uuid/dist/esm-browser/v1ToV6.js +0 -10
  605. package/node_modules/uuid/dist/esm-browser/v3.d.ts +0 -9
  606. package/node_modules/uuid/dist/esm-browser/v3.js +0 -9
  607. package/node_modules/uuid/dist/esm-browser/v35.d.ts +0 -7
  608. package/node_modules/uuid/dist/esm-browser/v35.js +0 -36
  609. package/node_modules/uuid/dist/esm-browser/v4.d.ts +0 -4
  610. package/node_modules/uuid/dist/esm-browser/v4.js +0 -27
  611. package/node_modules/uuid/dist/esm-browser/v5.d.ts +0 -9
  612. package/node_modules/uuid/dist/esm-browser/v5.js +0 -9
  613. package/node_modules/uuid/dist/esm-browser/v6.d.ts +0 -4
  614. package/node_modules/uuid/dist/esm-browser/v6.js +0 -17
  615. package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +0 -2
  616. package/node_modules/uuid/dist/esm-browser/v6ToV1.js +0 -10
  617. package/node_modules/uuid/dist/esm-browser/v7.d.ts +0 -9
  618. package/node_modules/uuid/dist/esm-browser/v7.js +0 -65
  619. package/node_modules/uuid/dist/esm-browser/validate.d.ts +0 -2
  620. package/node_modules/uuid/dist/esm-browser/validate.js +0 -5
  621. package/node_modules/uuid/dist/esm-browser/version.d.ts +0 -2
  622. package/node_modules/uuid/dist/esm-browser/version.js +0 -8
  623. package/node_modules/uuid/package.json +0 -132
  624. package/vendor/aab-tool/LICENSE +0 -202
  625. package/vendor/aab-tool/README.txt +0 -1
  626. package/vendor/aab-tool/bundletool.jar +0 -0
  627. /package/{node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts → lib/bootstrap.d.ts} +0 -0
  628. /package/{node_modules/uuid/dist/cjs/uuid-bin.d.ts → lib/commands/test-init.d.ts} +0 -0
  629. /package/{node_modules/uuid/dist/esm-browser/types.js → lib/commands/test.d.ts} +0 -0
  630. /package/{node_modules/uuid/dist/esm-browser/uuid-bin.d.ts → lib/common/bootstrap.d.ts} +0 -0
  631. /package/{node_modules/uuid/dist/esm/types.js → lib/common/common-lib.d.ts} +0 -0
  632. /package/{node_modules/uuid/dist/esm/uuid-bin.d.ts → lib/common/mobile/ios/ios-device-product-name-mapper.d.ts} +0 -0
@@ -0,0 +1,15 @@
1
+ import { IErrors, IFileSystem, IProjectHelper } from "./declarations";
2
+ import { IOptions } from "../declarations";
3
+ export declare class ProjectHelper implements IProjectHelper {
4
+ private $logger;
5
+ private $fs;
6
+ private $staticConfig;
7
+ private $errors;
8
+ private $options;
9
+ constructor($logger: ILogger, $fs: IFileSystem, $staticConfig: Config.IStaticConfig, $errors: IErrors, $options: IOptions);
10
+ private cachedProjectDir;
11
+ get projectDir(): string;
12
+ generateDefaultAppId(appName: string, baseAppId: string): string;
13
+ sanitizeName(appName: string): string;
14
+ private isProjectFileCorrect;
15
+ }
@@ -0,0 +1,23 @@
1
+ import { IAllowEmpty, IPrompterOptions, IPrompterQuestion } from "./declarations";
2
+ export declare class Prompter implements IPrompter {
3
+ private ctrlcReader;
4
+ private muteStreamInstance;
5
+ dispose(): void;
6
+ get(questions: IPrompterQuestion[]): Promise<any>;
7
+ getPassword(message: string, options?: IAllowEmpty): Promise<string>;
8
+ getString(message: string, options?: IPrompterOptions): Promise<string>;
9
+ promptForChoice(promptMessage: string, choices: string[] | {
10
+ title: string;
11
+ description?: string;
12
+ value?: string;
13
+ }[], multiple?: boolean, options?: any): Promise<string>;
14
+ promptForDetailedChoice(promptMessage: string, choices: {
15
+ key: string;
16
+ description: string;
17
+ }[]): Promise<string>;
18
+ confirm(message: string, defaultAction?: () => boolean): Promise<boolean>;
19
+ private muteStdout;
20
+ private unmuteStdout;
21
+ private cleanEventListeners;
22
+ private cleanListener;
23
+ }
@@ -0,0 +1,8 @@
1
+ import { IQueue } from "./declarations";
2
+ export declare class Queue<T> implements IQueue<T> {
3
+ private items?;
4
+ private promiseResolve;
5
+ constructor(items?: T[]);
6
+ enqueue(item: T): void;
7
+ dequeue(): Promise<T>;
8
+ }
@@ -0,0 +1,10 @@
1
+ import { IResourceLoader, IFileSystem } from "./declarations";
2
+ export declare class ResourceLoader implements IResourceLoader {
3
+ private $fs;
4
+ private $staticConfig;
5
+ constructor($fs: IFileSystem, $staticConfig: Config.IStaticConfig);
6
+ resolvePath(resourcePath: string): string;
7
+ openFile(resourcePath: string): NodeJS.ReadableStream;
8
+ readText(resourcePath: string): string;
9
+ readJson(resourcePath: string): any;
10
+ }
@@ -0,0 +1,9 @@
1
+ export declare enum GoogleAnalyticsCustomDimensions {
2
+ cliVersion = "cd1",
3
+ projectType = "cd2",
4
+ clientID = "cd3",
5
+ sessionID = "cd4",
6
+ client = "cd5",
7
+ nodeVersion = "cd6",
8
+ isShared = "cd9"
9
+ }
@@ -0,0 +1,36 @@
1
+ import { IAutoCompletionService, IFileSystem, IChildProcess, IHostInfo } from "../declarations";
2
+ export declare class AutoCompletionService implements IAutoCompletionService {
3
+ private $fs;
4
+ private $childProcess;
5
+ private $logger;
6
+ private $staticConfig;
7
+ private $hostInfo;
8
+ private scriptsOk;
9
+ private scriptsUpdated;
10
+ private static COMPLETION_START_COMMENT_PATTERN;
11
+ private static COMPLETION_END_COMMENT_PATTERN;
12
+ private static TABTAB_COMPLETION_START_REGEX_PATTERN;
13
+ private static TABTAB_COMPLETION_END_REGEX_PATTERN;
14
+ private static GENERATED_TABTAB_COMPLETION_END;
15
+ private static GENERATED_TABTAB_COMPLETION_START;
16
+ constructor($fs: IFileSystem, $childProcess: IChildProcess, $logger: ILogger, $staticConfig: Config.IStaticConfig, $hostInfo: IHostInfo);
17
+ disableAnalytics: boolean;
18
+ private get shellProfiles();
19
+ private get cliRunCommandsFile();
20
+ private getTabTabObsoleteRegex;
21
+ private getTabTabCompletionsRegex;
22
+ private removeObsoleteAutoCompletion;
23
+ private removeOboleteTabTabCompletion;
24
+ private get completionAliasDefinition();
25
+ private get completionShellScriptContent();
26
+ isAutoCompletionEnabled(): boolean;
27
+ disableAutoCompletion(): void;
28
+ enableAutoCompletion(): Promise<void>;
29
+ isObsoleteAutoCompletionEnabled(): boolean;
30
+ private isNewAutoCompletionEnabledInFile;
31
+ private isObsoleteAutoCompletionEnabledInFile;
32
+ private addAutoCompletionToShellScript;
33
+ private removeAutoCompletionFromShellScript;
34
+ private updateCLIShellScript;
35
+ private getHomePath;
36
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ import { IInjector } from "../definitions/yok";
2
+ import { ICommand } from "../definitions/commands";
3
+ import { CommandDefinition, CommandOptionsSchema, DefinedCommand } from "../define-command";
4
+ export declare function createCommandFromDefinition<TSchema extends CommandOptionsSchema>(definition: CommandDefinition<TSchema>, targetInjector?: IInjector): ICommand;
5
+ export declare function registerDefinitionAs<TSchema extends CommandOptionsSchema>(name: string, definition: DefinedCommand<TSchema>, targetInjector?: IInjector): void;
6
+ export declare function registerCommandDefinition<TSchema extends CommandOptionsSchema>(definition: DefinedCommand<TSchema>, targetInjector?: IInjector): void;
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createCommandFromDefinition = createCommandFromDefinition;
4
+ exports.registerDefinitionAs = registerDefinitionAs;
5
+ exports.registerCommandDefinition = registerCommandDefinition;
6
+ const enums_1 = require("../enums");
7
+ const yok_1 = require("../yok");
8
+ const inject_1 = require("../di/inject");
9
+ const command_registry_1 = require("../contracts/command-registry");
10
+ const define_command_1 = require("../define-command");
11
+ const OPTION_TYPES = {
12
+ boolean: enums_1.OptionType.Boolean,
13
+ string: enums_1.OptionType.String,
14
+ number: enums_1.OptionType.Number,
15
+ array: enums_1.OptionType.Array,
16
+ };
17
+ const compileOptions = (schema) => {
18
+ const dashedOptions = {};
19
+ for (const optionName of Object.keys(schema)) {
20
+ const spec = schema[optionName];
21
+ const dashedOption = {
22
+ type: OPTION_TYPES[spec.type],
23
+ hasSensitiveValue: spec.hasSensitiveValue === true,
24
+ };
25
+ if (spec.default !== undefined) {
26
+ dashedOption.default = spec.default;
27
+ }
28
+ if (spec.alias !== undefined) {
29
+ dashedOption.alias = spec.alias;
30
+ }
31
+ if (spec.description !== undefined) {
32
+ dashedOption.describe = spec.description;
33
+ }
34
+ dashedOptions[optionName] = dashedOption;
35
+ }
36
+ return dashedOptions;
37
+ };
38
+ const aliasList = (alias) => alias === undefined ? [] : Array.isArray(alias) ? alias : [alias];
39
+ const warnOnCliOptionCollisions = (targetInjector, definition, schema, optionsService) => {
40
+ const cliOptions = optionsService && optionsService.options;
41
+ if (!cliOptions) {
42
+ return;
43
+ }
44
+ const cliSpellings = {};
45
+ for (const cliName of Object.keys(cliOptions)) {
46
+ cliSpellings[cliName] = cliName;
47
+ for (const alias of aliasList(cliOptions[cliName].alias)) {
48
+ cliSpellings[alias] = cliName;
49
+ }
50
+ }
51
+ const collisions = [];
52
+ for (const optionName of Object.keys(schema)) {
53
+ if (cliSpellings[optionName]) {
54
+ collisions.push(`'--${optionName}' with the CLI option '--${cliSpellings[optionName]}'`);
55
+ }
56
+ for (const alias of aliasList(schema[optionName].alias)) {
57
+ if (cliSpellings[alias]) {
58
+ collisions.push(`alias '-${alias}' of '--${optionName}' with the CLI option '--${cliSpellings[alias]}'`);
59
+ }
60
+ }
61
+ }
62
+ if (!collisions.length) {
63
+ return;
64
+ }
65
+ const logger = targetInjector.get("logger", { optional: true });
66
+ if (!logger) {
67
+ return;
68
+ }
69
+ const commandName = Array.isArray(definition.name)
70
+ ? definition.name[0]
71
+ : definition.name;
72
+ logger.warn(`Command '${commandName}' declares options that collide with CLI-wide ` +
73
+ `ones: ${collisions.join("; ")}. The command's declaration wins while ` +
74
+ `the command runs; rename them to avoid it.`);
75
+ };
76
+ function createCommandFromDefinition(definition, targetInjector = yok_1.injector) {
77
+ const schema = definition.options || {};
78
+ const optionNames = Object.keys(schema);
79
+ const dashedOptions = compileOptions(schema);
80
+ const optionsService = optionNames.length
81
+ ? targetInjector.resolve("options")
82
+ : null;
83
+ warnOnCliOptionCollisions(targetInjector, definition, schema, optionsService);
84
+ const commandName = Array.isArray(definition.name)
85
+ ? definition.name[0]
86
+ : definition.name;
87
+ const fail = (message) => {
88
+ if (typeof message !== "string" || !message.trim()) {
89
+ throw new Error(`ctx.fail() for command '${commandName}' requires a non-empty message.`);
90
+ }
91
+ const errors = targetInjector.resolve("errors");
92
+ return errors.failWithHelp(message);
93
+ };
94
+ const buildContext = (args) => {
95
+ const options = {};
96
+ for (const optionName of optionNames) {
97
+ options[optionName] = optionsService[optionName];
98
+ }
99
+ return { args, options, fail };
100
+ };
101
+ const acceptsArguments = definition.arguments === "any";
102
+ return {
103
+ allowedParameters: [],
104
+ dashedOptions,
105
+ ...(definition.disableAnalytics === undefined
106
+ ? {}
107
+ : { disableAnalytics: definition.disableAnalytics }),
108
+ ...(definition.enableHooks === undefined
109
+ ? {}
110
+ : { enableHooks: definition.enableHooks }),
111
+ canExecute: async (args) => {
112
+ if (!acceptsArguments && args.length) {
113
+ fail("This command doesn't accept parameters.");
114
+ }
115
+ const refine = definition.canExecute;
116
+ if (!refine) {
117
+ return true;
118
+ }
119
+ return await (0, inject_1.runInInjectionContext)(targetInjector, () => refine.call(definition, buildContext(args)));
120
+ },
121
+ execute: async (args) => {
122
+ await (0, inject_1.runInInjectionContext)(targetInjector, () => definition.run(buildContext(args)));
123
+ },
124
+ };
125
+ }
126
+ function registerDefinitionAs(name, definition, targetInjector = yok_1.injector) {
127
+ const registry = targetInjector.get(command_registry_1.CommandRegistry);
128
+ registry.registerCommand(name, () => createCommandFromDefinition(definition, targetInjector));
129
+ }
130
+ function registerCommandDefinition(definition, targetInjector = yok_1.injector) {
131
+ if (!(0, define_command_1.isCommandDefinition)(definition)) {
132
+ throw new Error("registerCommandDefinition() takes the result of defineCommand(); " +
133
+ "the value passed carries no command-definition marker.");
134
+ }
135
+ const names = Array.isArray(definition.name)
136
+ ? definition.name
137
+ : [definition.name];
138
+ for (const name of names) {
139
+ registerDefinitionAs(name, definition, targetInjector);
140
+ }
141
+ }
@@ -0,0 +1,30 @@
1
+ import { IOptions, IOptionsTracker } from "../../declarations";
2
+ import { IErrors, IHooksService } from "../declarations";
3
+ import { IInjector } from "../definitions/yok";
4
+ import { IExtensibilityService } from "../definitions/extensibility";
5
+ export declare class CommandsService implements ICommandsService {
6
+ private $errors;
7
+ private $hooksService;
8
+ private $injector;
9
+ private $logger;
10
+ private $options;
11
+ private $staticConfig;
12
+ private $extensibilityService;
13
+ private $optionsTracker;
14
+ get currentCommandData(): ICommandData;
15
+ private commands;
16
+ constructor($errors: IErrors, $hooksService: IHooksService, $injector: IInjector, $logger: ILogger, $options: IOptions, $staticConfig: Config.IStaticConfig, $extensibilityService: IExtensibilityService, $optionsTracker: IOptionsTracker);
17
+ allCommands(opts: {
18
+ includeDevCommands: boolean;
19
+ }): string[];
20
+ executeCommandUnchecked(commandName: string, commandArguments: string[]): Promise<boolean>;
21
+ private printHelpSuggestion;
22
+ private executeCommandAction;
23
+ private tryExecuteCommandAction;
24
+ tryExecuteCommand(commandName: string, commandArguments: string[]): Promise<void>;
25
+ private canExecuteCommand;
26
+ private validateMandatoryParams;
27
+ private validateCommandArguments;
28
+ private tryMatchCommand;
29
+ private beautifyCommandName;
30
+ }
@@ -87,7 +87,8 @@ class CommandsService {
87
87
  }
88
88
  async tryExecuteCommandAction(commandName, commandArguments) {
89
89
  const command = this.$injector.resolveCommand(commandName);
90
- if (!command || !command.isHierarchicalCommand) {
90
+ if (!command ||
91
+ (!command.isHierarchicalCommand && !command.skipOptionsValidation)) {
91
92
  const dashedOptions = command ? command.dashedOptions : null;
92
93
  this.$options.validateOptions(dashedOptions);
93
94
  }
@@ -0,0 +1,46 @@
1
+ import { IHelpService, IErrors, IFileSystem, IMicroTemplateService } from "../declarations";
2
+ import { IInjector } from "../definitions/yok";
3
+ import { IExtensibilityService } from "../definitions/extensibility";
4
+ import { IOpener } from "../../declarations";
5
+ export declare class HelpService implements IHelpService {
6
+ private $logger;
7
+ private $injector;
8
+ private $errors;
9
+ private $fs;
10
+ private $staticConfig;
11
+ private $extensibilityService;
12
+ private $microTemplateService;
13
+ private $opener;
14
+ private static MARKDOWN_FILE_EXTENSION;
15
+ private static HTML_FILE_EXTENSION;
16
+ private static MAN_PAGE_NAME_REGEX;
17
+ private static HTML_COMMAND_HELP_REGEX;
18
+ private static RELATIVE_PATH_TO_STYLES_CSS_REGEX;
19
+ private static RELATIVE_PATH_TO_IMAGES_REGEX;
20
+ private static RELATIVE_PATH_TO_INDEX_REGEX;
21
+ private static EXTENSION_NAME_REGEX;
22
+ private static MARKDOWN_LINK_REGEX;
23
+ private static SPAN_REGEX;
24
+ private static NEW_LINE_REGEX;
25
+ private get newLineRegex();
26
+ private pathToManPages;
27
+ private pathToHtmlPages;
28
+ private get pathToStylesCss();
29
+ private get pathToBasicPage();
30
+ private get pathToBasicPageForExtensions();
31
+ private pathToImages;
32
+ private get pathToIndexHtml();
33
+ constructor($logger: ILogger, $injector: IInjector, $errors: IErrors, $fs: IFileSystem, $staticConfig: Config.IStaticConfig, $extensibilityService: IExtensibilityService, $microTemplateService: IMicroTemplateService, $opener: IOpener);
34
+ openHelpForCommandInBrowser(commandData: ICommandData): Promise<void>;
35
+ generateHtmlPages(): Promise<void>;
36
+ showCommandLineHelp(commandData: ICommandData): Promise<void>;
37
+ private getCommandLineHelpForCommand;
38
+ private createHtmlPage;
39
+ private convertCommandNameToFileName;
40
+ private throwMissingCommandError;
41
+ private static getHtmlDirFullPath;
42
+ private getHelpFile;
43
+ private getHelpFileFromExtensions;
44
+ private tryOpeningSelectedPage;
45
+ private readMdFileForCommand;
46
+ }
@@ -0,0 +1,40 @@
1
+ import type { HookMiddleware } from "../define-hook";
2
+ import { IOptions, IPerformanceService } from "../../declarations";
3
+ import { IHooksService, IDictionary, IChildProcess, IFileSystem, IErrors, IProjectHelper, IHookExecutionOptions } from "../declarations";
4
+ import { IProjectConfigService } from "../../definitions/project";
5
+ import { IInjector } from "../definitions/yok";
6
+ export declare class HooksService implements IHooksService {
7
+ private $childProcess;
8
+ private $fs;
9
+ private $logger;
10
+ private $errors;
11
+ private $config;
12
+ private $staticConfig;
13
+ private $injector;
14
+ private $projectHelper;
15
+ private $options;
16
+ private $performanceService;
17
+ private $projectConfigService;
18
+ private static HOOKS_DIRECTORY_NAME;
19
+ private cachedHooks;
20
+ private hooksDirectories;
21
+ constructor($childProcess: IChildProcess, $fs: IFileSystem, $logger: ILogger, $errors: IErrors, $config: Config.IConfig, $staticConfig: Config.IStaticConfig, $injector: IInjector, $projectHelper: IProjectHelper, $options: IOptions, $performanceService: IPerformanceService, $projectConfigService: IProjectConfigService);
22
+ get hookArgsName(): string;
23
+ private initialize;
24
+ private static formatHookName;
25
+ executeBeforeHooks(commandName: string, hookArguments?: IDictionary<any>, options?: IHookExecutionOptions): Promise<HookMiddleware[]>;
26
+ executeAfterHooks(commandName: string, hookArguments?: IDictionary<any>): Promise<void>;
27
+ private executeHooks;
28
+ private isESModule;
29
+ private executeHook;
30
+ private executeHookDefinition;
31
+ private executeHooksInDirectory;
32
+ private getCustomHooksByName;
33
+ private getHooksByName;
34
+ private getHooksInDirectory;
35
+ private prepareEnvironment;
36
+ private getSheBangInterpreter;
37
+ private getBaseFilename;
38
+ private shouldExecuteInProcess;
39
+ private validateHookArguments;
40
+ }
@@ -11,6 +11,9 @@ const path = require("path");
11
11
  const util = require("util");
12
12
  const _ = require("lodash");
13
13
  const helpers_1 = require("../helpers");
14
+ const deprecation_1 = require("../deprecation");
15
+ const define_hook_1 = require("../define-hook");
16
+ const inject_1 = require("../di/inject");
14
17
  const constants_1 = require("../../constants");
15
18
  const yok_1 = require("../yok");
16
19
  const color_1 = require("../../color");
@@ -54,17 +57,17 @@ class HooksService {
54
57
  static formatHookName(commandName) {
55
58
  return commandName.replace(/\|[\s\S]*$/, "");
56
59
  }
57
- executeBeforeHooks(commandName, hookArguments) {
60
+ executeBeforeHooks(commandName, hookArguments, options) {
58
61
  const beforeHookName = `before-${HooksService.formatHookName(commandName)}`;
59
62
  const traceMessage = `BeforeHookName for command ${commandName} is ${beforeHookName}`;
60
- return this.executeHooks(beforeHookName, traceMessage, hookArguments);
63
+ return this.executeHooks(beforeHookName, traceMessage, hookArguments, !!(options && options.consumesMiddlewares));
61
64
  }
62
65
  executeAfterHooks(commandName, hookArguments) {
63
66
  const afterHookName = `after-${HooksService.formatHookName(commandName)}`;
64
67
  const traceMessage = `AfterHookName for command ${commandName} is ${afterHookName}`;
65
- return this.executeHooks(afterHookName, traceMessage, hookArguments);
68
+ return this.executeHooks(afterHookName, traceMessage, hookArguments, false);
66
69
  }
67
- async executeHooks(hookName, traceMessage, hookArguments) {
70
+ async executeHooks(hookName, traceMessage, hookArguments, consumesMiddlewares) {
68
71
  if (this.$config.DISABLE_HOOKS || !this.$options.hooks) {
69
72
  return;
70
73
  }
@@ -80,11 +83,11 @@ class HooksService {
80
83
  const results = [];
81
84
  try {
82
85
  for (const hooksDirectory of this.hooksDirectories) {
83
- results.push(await this.executeHooksInDirectory(hooksDirectory, hookName, hookArguments));
86
+ results.push(await this.executeHooksInDirectory(hooksDirectory, hookName, hookArguments, consumesMiddlewares));
84
87
  }
85
88
  const customHooks = this.getCustomHooksByName(hookName);
86
89
  for (const hook of customHooks) {
87
- results.push(await this.executeHook(this.$projectHelper.projectDir, hookName, hook, hookArguments));
90
+ results.push(await this.executeHook(this.$projectHelper.projectDir, hookName, hook, hookArguments, consumesMiddlewares));
88
91
  }
89
92
  }
90
93
  catch (err) {
@@ -97,7 +100,8 @@ class HooksService {
97
100
  const ext = path.extname(hook.fullPath).toLowerCase();
98
101
  return ext === ".mjs";
99
102
  }
100
- async executeHook(directoryPath, hookName, hook, hookArguments) {
103
+ async executeHook(directoryPath, hookName, hook, hookArguments, consumesMiddlewares) {
104
+ var _a;
101
105
  hookArguments = hookArguments || {};
102
106
  let result;
103
107
  const relativePath = path.relative(directoryPath, hook.fullPath);
@@ -123,37 +127,62 @@ class HooksService {
123
127
  hookEntryPoint = hookFn;
124
128
  }
125
129
  else {
126
- hookEntryPoint = require(hook.fullPath);
130
+ const hookModule = require(hook.fullPath);
131
+ hookEntryPoint =
132
+ hookModule && typeof hookModule.default === "function"
133
+ ? hookModule.default
134
+ : hookModule;
127
135
  }
128
- this.$logger.trace(`Validating ${hookName} arguments.`);
129
- const invalidArguments = this.validateHookArguments(hookEntryPoint, hook.fullPath);
130
- if (invalidArguments.length) {
131
- this.$logger.warn(`${hook.fullPath} will NOT be executed because it has invalid arguments - ${color_1.color.grey(invalidArguments.join(", "))}.`);
132
- return;
136
+ const definitionCandidate = (_a = (hookEntryPoint && hookEntryPoint.default)) !== null && _a !== void 0 ? _a : hookEntryPoint;
137
+ if (Array.isArray(definitionCandidate)) {
138
+ throw new Error(`${hook.fullPath} exports an array, which is not a supported hook entry point. Export a single hook definition or function per file.`);
139
+ }
140
+ if ((0, define_hook_1.isHookDefinition)(definitionCandidate)) {
141
+ result = await this.executeHookDefinition(definitionCandidate, hookName, hook, hookArguments, consumesMiddlewares);
133
142
  }
134
- const projectDataHookArg = hookArguments["hookArgs"] && hookArguments["hookArgs"]["projectData"];
135
- if (projectDataHookArg) {
136
- hookArguments["projectData"] = hookArguments["$projectData"] =
137
- projectDataHookArg;
143
+ else if (typeof hookEntryPoint !== "function") {
144
+ this.$logger.warn(`${hook.fullPath} will NOT be executed because it does not export a function.`);
145
+ return;
138
146
  }
139
- const maybePromise = this.$injector.resolve(hookEntryPoint, hookArguments);
140
- if (maybePromise) {
141
- this.$logger.trace("Hook promises to signal completion");
142
- try {
143
- result = await maybePromise;
147
+ else {
148
+ this.$logger.trace(`Validating ${hookName} arguments.`);
149
+ const invalidArguments = this.validateHookArguments(hookEntryPoint, hook.fullPath);
150
+ if (invalidArguments.length) {
151
+ this.$logger.warn(`${hook.fullPath} will NOT be executed because it has invalid arguments - ${color_1.color.grey(invalidArguments.join(", "))}.`);
152
+ return;
153
+ }
154
+ const projectDataHookArg = hookArguments["hookArgs"] && hookArguments["hookArgs"]["projectData"];
155
+ if (projectDataHookArg) {
156
+ hookArguments["projectData"] = hookArguments["$projectData"] =
157
+ projectDataHookArg;
144
158
  }
145
- catch (err) {
146
- if (err &&
147
- _.isBoolean(err.stopExecution) &&
148
- err.errorAsWarning === true) {
149
- this.$logger.warn(err.message || err);
159
+ const usesParamNameInjection = (hookEntryPoint.$inject.args).some((argument) => argument !== this.hookArgsName);
160
+ if (usesParamNameInjection) {
161
+ (0, deprecation_1.reportDeprecation)({
162
+ api: "hooks.param-name-signature",
163
+ detail: hook.fullPath,
164
+ logger: this.$logger,
165
+ });
166
+ }
167
+ const maybePromise = this.$injector.resolve(hookEntryPoint, hookArguments);
168
+ if (maybePromise) {
169
+ this.$logger.trace("Hook promises to signal completion");
170
+ try {
171
+ result = await maybePromise;
150
172
  }
151
- else {
152
- this.$logger.error(err);
153
- throw err || new Error(`Failed to execute hook: ${hook.fullPath}.`);
173
+ catch (err) {
174
+ if (err &&
175
+ _.isBoolean(err.stopExecution) &&
176
+ err.errorAsWarning === true) {
177
+ this.$logger.warn(err.message || err);
178
+ }
179
+ else {
180
+ this.$logger.error(err);
181
+ throw (err || new Error(`Failed to execute hook: ${hook.fullPath}.`));
182
+ }
154
183
  }
184
+ this.$logger.trace("Hook completed");
155
185
  }
156
- this.$logger.trace("Hook completed");
157
186
  }
158
187
  }
159
188
  else {
@@ -172,18 +201,47 @@ class HooksService {
172
201
  ]);
173
202
  return result;
174
203
  }
175
- async executeHooksInDirectory(directoryPath, hookName, hookArguments) {
204
+ async executeHookDefinition(definition, hookName, hook, hookArguments, consumesMiddlewares) {
205
+ if (definition.name !== hookName) {
206
+ this.$logger.warn(`${hook.fullPath} will NOT be executed: it defines the "${definition.name}" hook but is placed at the "${hookName}" hook point.`);
207
+ return;
208
+ }
209
+ const { context, middlewares } = (0, define_hook_1.createHookInvocation)(hookArguments, {
210
+ hookName,
211
+ consumesMiddlewares,
212
+ });
213
+ try {
214
+ const returnedValue = await (0, inject_1.runInInjectionContext)(this.$injector, () => definition.run(context));
215
+ if (typeof returnedValue === "function") {
216
+ this.$logger.warn(`${hook.fullPath} returned a function. Returning a middleware is the legacy convention and is ignored for hook definitions — use ctx.wrap() instead.`);
217
+ }
218
+ }
219
+ catch (err) {
220
+ if (err &&
221
+ _.isBoolean(err.stopExecution) &&
222
+ err.errorAsWarning === true) {
223
+ this.$logger.warn(err.message || err);
224
+ }
225
+ else {
226
+ this.$logger.error(err);
227
+ throw err || new Error(`Failed to execute hook: ${hook.fullPath}.`);
228
+ }
229
+ }
230
+ this.$logger.trace("Hook completed");
231
+ return middlewares.length ? middlewares : undefined;
232
+ }
233
+ async executeHooksInDirectory(directoryPath, hookName, hookArguments, consumesMiddlewares) {
176
234
  hookArguments = hookArguments || {};
177
235
  const results = [];
178
236
  const hooks = this.getHooksByName(directoryPath, hookName);
179
237
  for (let i = 0; i < hooks.length; ++i) {
180
238
  const hook = hooks[i];
181
- const result = await this.executeHook(directoryPath, hookName, hook, hookArguments);
239
+ const result = await this.executeHook(directoryPath, hookName, hook, hookArguments, consumesMiddlewares);
182
240
  if (result) {
183
241
  results.push(result);
184
242
  }
185
243
  }
186
- return results;
244
+ return _.flatten(results);
187
245
  }
188
246
  getCustomHooksByName(hookName) {
189
247
  const hooks = [];
@@ -266,26 +324,27 @@ class HooksService {
266
324
  }
267
325
  shouldExecuteInProcess(scriptSource) {
268
326
  try {
269
- const esprima = require("esprima");
270
- const ast = esprima.parse(scriptSource);
271
- let inproc = false;
272
- ast.body.forEach((statement) => {
273
- if (statement.type !== "ExpressionStatement" ||
274
- statement.expression.type !== "AssignmentExpression") {
275
- return;
327
+ const ts = require("typescript");
328
+ const sourceFile = ts.createSourceFile("hook.js", scriptSource, ts.ScriptTarget.Latest, false, ts.ScriptKind.JS);
329
+ const isExportsTarget = (node) => {
330
+ if (!ts.isPropertyAccessExpression(node)) {
331
+ return false;
276
332
  }
277
- const left = statement.expression.left;
278
- if (left.type === "MemberExpression" &&
279
- left.object &&
280
- left.object.type === "Identifier" &&
281
- left.object.name === "module" &&
282
- left.property &&
283
- left.property.type === "Identifier" &&
284
- left.property.name === "exports") {
285
- inproc = true;
333
+ if (!ts.isIdentifier(node.expression)) {
334
+ return false;
286
335
  }
336
+ const object = node.expression.text;
337
+ const property = node.name.text;
338
+ return ((object === "module" && property === "exports") ||
339
+ (object === "exports" && property === "default"));
340
+ };
341
+ return sourceFile.statements.some((statement) => {
342
+ return (ts.isExpressionStatement(statement) &&
343
+ ts.isBinaryExpression(statement.expression) &&
344
+ statement.expression.operatorToken.kind ===
345
+ ts.SyntaxKind.EqualsToken &&
346
+ isExportsTarget(statement.expression.left));
287
347
  });
288
- return inproc;
289
348
  }
290
349
  catch (err) {
291
350
  return false;
@@ -0,0 +1,7 @@
1
+ import { IiOSNotificationService } from "../declarations";
2
+ export declare class IOSNotificationService implements IiOSNotificationService {
3
+ private $iosDeviceOperations;
4
+ constructor($iosDeviceOperations: IIOSDeviceOperations);
5
+ awaitNotification(deviceIdentifier: string, socket: number, timeout: number): Promise<string>;
6
+ postNotification(deviceIdentifier: string, notification: string, commandType?: string): Promise<number>;
7
+ }