nativescript 8.9.0-alpha.2 → 8.9.0-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (345) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/lib/android-tools-info.js +9 -20
  3. package/lib/base-package-manager.js +47 -64
  4. package/lib/bun-package-manager.js +65 -88
  5. package/lib/color.js +2 -2
  6. package/lib/commands/add-platform.js +14 -30
  7. package/lib/commands/apple-login.js +18 -29
  8. package/lib/commands/appstore-list.js +34 -45
  9. package/lib/commands/appstore-upload.js +52 -65
  10. package/lib/commands/build.js +55 -87
  11. package/lib/commands/clean.js +161 -176
  12. package/lib/commands/command-base.js +14 -27
  13. package/lib/commands/config.js +48 -67
  14. package/lib/commands/create-project.js +211 -230
  15. package/lib/commands/debug.js +66 -88
  16. package/lib/commands/deploy.js +28 -44
  17. package/lib/commands/embedding/embed.js +33 -52
  18. package/lib/commands/extensibility/install-extension.js +5 -16
  19. package/lib/commands/extensibility/list-extensions.js +13 -24
  20. package/lib/commands/extensibility/uninstall-extension.js +4 -15
  21. package/lib/commands/fonts.js +30 -41
  22. package/lib/commands/generate-assets.js +13 -28
  23. package/lib/commands/generate-help.js +2 -13
  24. package/lib/commands/generate.js +12 -60
  25. package/lib/commands/info.js +2 -13
  26. package/lib/commands/install.js +34 -49
  27. package/lib/commands/list-platforms.js +14 -25
  28. package/lib/commands/migrate.js +15 -26
  29. package/lib/commands/native-add.js +23 -46
  30. package/lib/commands/platform-clean.js +19 -32
  31. package/lib/commands/plugin/add-plugin.js +12 -25
  32. package/lib/commands/plugin/build-plugin.js +31 -44
  33. package/lib/commands/plugin/create-plugin.js +110 -133
  34. package/lib/commands/plugin/list-plugins.js +22 -33
  35. package/lib/commands/plugin/remove-plugin.js +20 -33
  36. package/lib/commands/plugin/update-plugin.js +20 -33
  37. package/lib/commands/post-install.js +20 -33
  38. package/lib/commands/prepare.js +19 -35
  39. package/lib/commands/preview.js +49 -62
  40. package/lib/commands/remove-platform.js +7 -18
  41. package/lib/commands/resources/resources-update.js +13 -26
  42. package/lib/commands/run.js +55 -76
  43. package/lib/commands/start.js +6 -19
  44. package/lib/commands/test-init.js +123 -134
  45. package/lib/commands/test.js +66 -89
  46. package/lib/commands/typings.js +126 -142
  47. package/lib/commands/update-platform.js +22 -35
  48. package/lib/commands/update.js +30 -43
  49. package/lib/common/child-process.js +53 -72
  50. package/lib/common/codeGeneration/code-entity.js +1 -1
  51. package/lib/common/codeGeneration/code-printer.js +1 -1
  52. package/lib/common/command-params.js +7 -18
  53. package/lib/common/commands/analytics.js +27 -40
  54. package/lib/common/commands/autocompletion.js +39 -56
  55. package/lib/common/commands/device/device-log-stream.js +12 -23
  56. package/lib/common/commands/device/get-file.js +22 -33
  57. package/lib/common/commands/device/list-applications.js +12 -23
  58. package/lib/common/commands/device/list-devices.js +72 -87
  59. package/lib/common/commands/device/list-files.js +23 -34
  60. package/lib/common/commands/device/put-file.js +22 -33
  61. package/lib/common/commands/device/run-application.js +12 -25
  62. package/lib/common/commands/device/stop-application.js +11 -22
  63. package/lib/common/commands/device/uninstall-application.js +6 -17
  64. package/lib/common/commands/generate-messages.js +17 -28
  65. package/lib/common/commands/help.js +20 -33
  66. package/lib/common/commands/package-manager-get.js +6 -17
  67. package/lib/common/commands/package-manager-set.js +9 -20
  68. package/lib/common/commands/post-install.js +2 -13
  69. package/lib/common/commands/preuninstall.js +23 -38
  70. package/lib/common/commands/proxy/proxy-base.js +8 -19
  71. package/lib/common/commands/proxy/proxy-clear.js +4 -15
  72. package/lib/common/commands/proxy/proxy-get.js +3 -14
  73. package/lib/common/commands/proxy/proxy-set.js +87 -100
  74. package/lib/common/constants.js +11 -11
  75. package/lib/common/decorators.js +10 -22
  76. package/lib/common/dispatchers.js +79 -96
  77. package/lib/common/errors.js +89 -104
  78. package/lib/common/file-system.js +108 -130
  79. package/lib/common/header.js +1 -2
  80. package/lib/common/helpers.js +149 -178
  81. package/lib/common/host-info.js +37 -50
  82. package/lib/common/http-client.js +93 -108
  83. package/lib/common/logger/appenders/cli-appender.js +1 -2
  84. package/lib/common/logger/appenders/emit-appender.js +1 -2
  85. package/lib/common/logger/layouts/cli-layout.js +1 -2
  86. package/lib/common/logger/logger.js +4 -4
  87. package/lib/common/mobile/android/android-application-manager.js +121 -142
  88. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +1 -1
  89. package/lib/common/mobile/android/android-debug-bridge.js +87 -112
  90. package/lib/common/mobile/android/android-device-file-system.js +98 -131
  91. package/lib/common/mobile/android/android-device-hash-service.js +50 -75
  92. package/lib/common/mobile/android/android-device.js +68 -85
  93. package/lib/common/mobile/android/android-emulator-services.js +105 -130
  94. package/lib/common/mobile/android/android-ini-file-parser.js +8 -6
  95. package/lib/common/mobile/android/android-log-filter.js +1 -1
  96. package/lib/common/mobile/android/android-virtual-device-service.js +76 -97
  97. package/lib/common/mobile/android/device-android-debug-bridge.js +13 -29
  98. package/lib/common/mobile/android/genymotion/genymotion-service.js +91 -118
  99. package/lib/common/mobile/android/genymotion/virtualbox-service.js +64 -81
  100. package/lib/common/mobile/android/logcat-helper.js +108 -127
  101. package/lib/common/mobile/application-manager-base.js +84 -107
  102. package/lib/common/mobile/device-log-provider-base.js +7 -18
  103. package/lib/common/mobile/ios/device/ios-application-manager.js +79 -108
  104. package/lib/common/mobile/ios/device/ios-device-file-system.js +78 -105
  105. package/lib/common/mobile/ios/device/ios-device-operations.js +105 -142
  106. package/lib/common/mobile/ios/device/ios-device.js +20 -36
  107. package/lib/common/mobile/ios/ios-device-base.js +58 -81
  108. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +63 -92
  109. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +1 -1
  110. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +60 -89
  111. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +27 -43
  112. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +37 -62
  113. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +24 -35
  114. package/lib/common/mobile/mobile-core/android-device-discovery.js +43 -62
  115. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +21 -32
  116. package/lib/common/mobile/mobile-core/android-process-service.js +143 -182
  117. package/lib/common/mobile/mobile-core/device-discovery.js +2 -13
  118. package/lib/common/mobile/mobile-core/devices-service.js +386 -436
  119. package/lib/common/mobile/mobile-core/ios-device-discovery.js +24 -35
  120. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +47 -62
  121. package/lib/common/mobile/mobile-helper.js +15 -26
  122. package/lib/common/mobile/wp8/wp8-emulator-services.js +25 -52
  123. package/lib/common/opener.js +2 -2
  124. package/lib/common/prompter.js +90 -105
  125. package/lib/common/queue.js +9 -20
  126. package/lib/common/services/auto-completion-service.js +39 -52
  127. package/lib/common/services/cancellation.js +17 -28
  128. package/lib/common/services/commands-service.js +146 -169
  129. package/lib/common/services/help-service.js +132 -157
  130. package/lib/common/services/hooks-service.js +93 -108
  131. package/lib/common/services/ios-notification-service.js +21 -34
  132. package/lib/common/services/json-file-settings-service.js +52 -71
  133. package/lib/common/services/lock-service.js +35 -52
  134. package/lib/common/services/message-contract-generator.js +35 -46
  135. package/lib/common/services/micro-templating-service.js +4 -15
  136. package/lib/common/services/net-service.js +90 -107
  137. package/lib/common/services/project-files-manager.js +10 -23
  138. package/lib/common/services/proxy-service.js +13 -24
  139. package/lib/common/services/qr.js +13 -24
  140. package/lib/common/services/settings-service.js +1 -1
  141. package/lib/common/services/xcode-select-service.js +20 -35
  142. package/lib/common/utils.js +2 -2
  143. package/lib/common/validators/project-name-validator.js +1 -1
  144. package/lib/common/validators/validation-result.js +1 -1
  145. package/lib/common/verify-node-version.js +2 -3
  146. package/lib/common/yok.js +23 -36
  147. package/lib/config.js +36 -51
  148. package/lib/constants.js +24 -24
  149. package/lib/controllers/build-controller.js +82 -99
  150. package/lib/controllers/debug-controller.js +107 -128
  151. package/lib/controllers/deploy-controller.js +15 -23
  152. package/lib/controllers/migrate-controller.js +722 -795
  153. package/lib/controllers/platform-controller.js +70 -85
  154. package/lib/controllers/prepare-controller.js +232 -261
  155. package/lib/controllers/run-controller.js +397 -411
  156. package/lib/controllers/update-controller-base.js +16 -29
  157. package/lib/controllers/update-controller.js +94 -119
  158. package/lib/data/prepare-data.js +4 -1
  159. package/lib/definitions/ios.d.ts +9 -1
  160. package/lib/detached-processes/cleanup-js-subprocess.js +3 -12
  161. package/lib/detached-processes/cleanup-process.js +16 -25
  162. package/lib/device-path-provider.js +23 -34
  163. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +149 -164
  164. package/lib/device-sockets/ios/notification.js +1 -1
  165. package/lib/device-sockets/ios/socket-request-executor.js +24 -39
  166. package/lib/helpers/android-bundle-validator-helper.js +1 -1
  167. package/lib/helpers/deploy-command-helper.js +44 -49
  168. package/lib/helpers/key-command-helper.js +4 -13
  169. package/lib/helpers/livesync-command-helper.js +137 -152
  170. package/lib/helpers/network-connectivity-validator.js +6 -17
  171. package/lib/helpers/options-track-helper.js +6 -17
  172. package/lib/helpers/platform-command-helper.js +99 -120
  173. package/lib/key-commands/index.js +150 -200
  174. package/lib/nativescript-cli.js +5 -14
  175. package/lib/node-package-manager.js +81 -104
  176. package/lib/options.js +3 -12
  177. package/lib/package-installation-manager.js +130 -165
  178. package/lib/package-manager.js +63 -86
  179. package/lib/platform-command-param.js +4 -15
  180. package/lib/pnpm-package-manager.js +59 -78
  181. package/lib/project-data.js +1 -1
  182. package/lib/providers/project-files-provider.js +1 -1
  183. package/lib/services/analytics/analytics-broker-process.js +13 -22
  184. package/lib/services/analytics/analytics-broker.js +17 -30
  185. package/lib/services/analytics/analytics-service.js +163 -199
  186. package/lib/services/analytics/google-analytics-provider.js +41 -56
  187. package/lib/services/analytics-settings-service.js +15 -32
  188. package/lib/services/android/android-bundle-tool-service.js +43 -60
  189. package/lib/services/android/gradle-build-args-service.js +9 -20
  190. package/lib/services/android/gradle-build-service.js +22 -35
  191. package/lib/services/android/gradle-command-service.js +22 -35
  192. package/lib/services/android-device-debug-service.js +90 -117
  193. package/lib/services/android-plugin-build-service.js +205 -231
  194. package/lib/services/android-project-service.js +126 -171
  195. package/lib/services/android-resources-migration-service.js +51 -64
  196. package/lib/services/apple-portal/apple-portal-application-service.js +46 -63
  197. package/lib/services/apple-portal/apple-portal-session-service.js +195 -214
  198. package/lib/services/apple-portal/srp/srp-wrapper.js +43 -58
  199. package/lib/services/assets-generation/assets-generation-service.js +103 -117
  200. package/lib/services/build-artifacts-service.js +9 -20
  201. package/lib/services/build-info-file-service.js +20 -35
  202. package/lib/services/cleanup-service.js +47 -76
  203. package/lib/services/cocoapods-service.js +111 -132
  204. package/lib/services/device/device-install-app-service.js +54 -71
  205. package/lib/services/doctor-service.js +99 -118
  206. package/lib/services/extensibility-service.js +81 -100
  207. package/lib/services/files-hash-service.js +26 -43
  208. package/lib/services/hmr-status-service.js +1 -1
  209. package/lib/services/initialize-service.js +37 -50
  210. package/lib/services/ios/export-options-plist-service.js +38 -51
  211. package/lib/services/ios/ios-signing-service.js +168 -187
  212. package/lib/services/ios/spm-service.js +43 -53
  213. package/lib/services/ios/xcodebuild-args-service.js +77 -94
  214. package/lib/services/ios/xcodebuild-command-service.js +14 -25
  215. package/lib/services/ios/xcodebuild-service.js +52 -71
  216. package/lib/services/ios-debugger-port-service.js +24 -37
  217. package/lib/services/ios-device-debug-service.js +75 -102
  218. package/lib/services/ios-entitlements-service.js +31 -42
  219. package/lib/services/ios-extensions-service.js +18 -29
  220. package/lib/services/ios-project-service.js +419 -460
  221. package/lib/services/ios-provision-service.js +108 -129
  222. package/lib/services/ios-watch-app-service.js +21 -32
  223. package/lib/services/ip-service.js +38 -53
  224. package/lib/services/itmstransporter-service.js +129 -152
  225. package/lib/services/livesync/android-device-livesync-service-base.js +31 -48
  226. package/lib/services/livesync/android-device-livesync-service.js +120 -149
  227. package/lib/services/livesync/android-device-livesync-sockets-service.js +121 -152
  228. package/lib/services/livesync/android-livesync-service.js +14 -35
  229. package/lib/services/livesync/android-livesync-tool.js +90 -113
  230. package/lib/services/livesync/device-livesync-service-base.js +15 -28
  231. package/lib/services/livesync/ios-device-livesync-service.js +114 -143
  232. package/lib/services/livesync/ios-livesync-service.js +42 -58
  233. package/lib/services/livesync/platform-livesync-service-base.js +94 -119
  234. package/lib/services/log-parser-service.js +1 -1
  235. package/lib/services/log-source-map-service.js +30 -41
  236. package/lib/services/marking-mode-service.js +15 -28
  237. package/lib/services/npm-config-service.js +1 -1
  238. package/lib/services/pacote-service.js +51 -66
  239. package/lib/services/performance-service.js +1 -1
  240. package/lib/services/platform/add-platform-service.js +50 -71
  241. package/lib/services/platform/platform-validation-service.js +22 -33
  242. package/lib/services/platform/prepare-native-platform-service.js +49 -62
  243. package/lib/services/platform-environment-requirements.js +26 -37
  244. package/lib/services/plugins-service.js +122 -147
  245. package/lib/services/project-backup-service.js +1 -1
  246. package/lib/services/project-changes-service.js +124 -141
  247. package/lib/services/project-cleanup-service.js +64 -77
  248. package/lib/services/project-config-service.js +71 -80
  249. package/lib/services/project-data-service.js +101 -118
  250. package/lib/services/project-name-service.js +28 -43
  251. package/lib/services/project-service.js +84 -103
  252. package/lib/services/project-templates-service.js +52 -67
  253. package/lib/services/start-service.js +41 -59
  254. package/lib/services/temp-service.js +8 -21
  255. package/lib/services/terminal-spinner-service.js +15 -26
  256. package/lib/services/test-execution-service.js +59 -72
  257. package/lib/services/test-initialization-service.js +2 -2
  258. package/lib/services/timeline-profiler-service.js +1 -1
  259. package/lib/services/versions-service.js +119 -138
  260. package/lib/services/webpack/webpack-compiler-service.js +214 -234
  261. package/lib/services/xcconfig-service.js +8 -19
  262. package/lib/sys-info.js +45 -62
  263. package/lib/tools/node-modules/node-modules-builder.js +16 -27
  264. package/lib/yarn-package-manager.js +59 -78
  265. package/lib/yarn2-package-manager.js +60 -79
  266. package/package.json +66 -81
  267. package/node_modules/@npmcli/move-file/LICENSE.md +0 -22
  268. package/node_modules/@npmcli/move-file/README.md +0 -69
  269. package/node_modules/@npmcli/move-file/lib/index.js +0 -185
  270. package/node_modules/@npmcli/move-file/node_modules/mkdirp/CHANGELOG.md +0 -15
  271. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +0 -21
  272. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +0 -68
  273. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +0 -31
  274. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +0 -29
  275. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +0 -64
  276. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +0 -39
  277. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +0 -23
  278. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +0 -29
  279. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +0 -10
  280. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +0 -44
  281. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +0 -266
  282. package/node_modules/@npmcli/move-file/package.json +0 -47
  283. package/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  284. package/node_modules/balanced-match/LICENSE.md +0 -21
  285. package/node_modules/balanced-match/README.md +0 -97
  286. package/node_modules/balanced-match/index.js +0 -62
  287. package/node_modules/balanced-match/package.json +0 -48
  288. package/node_modules/concat-map/.travis.yml +0 -4
  289. package/node_modules/concat-map/LICENSE +0 -18
  290. package/node_modules/concat-map/README.markdown +0 -62
  291. package/node_modules/concat-map/example/map.js +0 -6
  292. package/node_modules/concat-map/index.js +0 -13
  293. package/node_modules/concat-map/package.json +0 -43
  294. package/node_modules/concat-map/test/map.js +0 -39
  295. package/node_modules/fs.realpath/LICENSE +0 -43
  296. package/node_modules/fs.realpath/README.md +0 -33
  297. package/node_modules/fs.realpath/index.js +0 -66
  298. package/node_modules/fs.realpath/old.js +0 -303
  299. package/node_modules/fs.realpath/package.json +0 -26
  300. package/node_modules/inflight/LICENSE +0 -15
  301. package/node_modules/inflight/README.md +0 -37
  302. package/node_modules/inflight/inflight.js +0 -54
  303. package/node_modules/inflight/package.json +0 -29
  304. package/node_modules/inherits/LICENSE +0 -16
  305. package/node_modules/inherits/README.md +0 -42
  306. package/node_modules/inherits/inherits.js +0 -9
  307. package/node_modules/inherits/inherits_browser.js +0 -27
  308. package/node_modules/inherits/package.json +0 -29
  309. package/node_modules/once/LICENSE +0 -15
  310. package/node_modules/once/README.md +0 -79
  311. package/node_modules/once/once.js +0 -42
  312. package/node_modules/once/package.json +0 -33
  313. package/node_modules/path-is-absolute/index.js +0 -20
  314. package/node_modules/path-is-absolute/license +0 -21
  315. package/node_modules/path-is-absolute/package.json +0 -43
  316. package/node_modules/path-is-absolute/readme.md +0 -59
  317. package/node_modules/rimraf/CHANGELOG.md +0 -65
  318. package/node_modules/rimraf/LICENSE +0 -15
  319. package/node_modules/rimraf/README.md +0 -101
  320. package/node_modules/rimraf/bin.js +0 -68
  321. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +0 -21
  322. package/node_modules/rimraf/node_modules/brace-expansion/README.md +0 -129
  323. package/node_modules/rimraf/node_modules/brace-expansion/index.js +0 -201
  324. package/node_modules/rimraf/node_modules/brace-expansion/package.json +0 -47
  325. package/node_modules/rimraf/node_modules/glob/LICENSE +0 -21
  326. package/node_modules/rimraf/node_modules/glob/README.md +0 -378
  327. package/node_modules/rimraf/node_modules/glob/common.js +0 -238
  328. package/node_modules/rimraf/node_modules/glob/glob.js +0 -790
  329. package/node_modules/rimraf/node_modules/glob/package.json +0 -55
  330. package/node_modules/rimraf/node_modules/glob/sync.js +0 -486
  331. package/node_modules/rimraf/node_modules/minimatch/LICENSE +0 -15
  332. package/node_modules/rimraf/node_modules/minimatch/README.md +0 -230
  333. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +0 -947
  334. package/node_modules/rimraf/node_modules/minimatch/package.json +0 -33
  335. package/node_modules/rimraf/package.json +0 -32
  336. package/node_modules/rimraf/rimraf.js +0 -360
  337. package/node_modules/stringify-package/CHANGELOG.md +0 -16
  338. package/node_modules/stringify-package/LICENSE +0 -13
  339. package/node_modules/stringify-package/README.md +0 -55
  340. package/node_modules/stringify-package/index.js +0 -18
  341. package/node_modules/stringify-package/package.json +0 -38
  342. package/node_modules/wrappy/LICENSE +0 -15
  343. package/node_modules/wrappy/README.md +0 -36
  344. package/node_modules/wrappy/package.json +0 -29
  345. package/node_modules/wrappy/wrappy.js +0 -33
@@ -1,13 +1,4 @@
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
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.JsonFileSettingsService = void 0;
13
4
  const path = require("path");
@@ -26,49 +17,43 @@ class JsonFileSettingsService {
26
17
  this.jsonSettingsData = null;
27
18
  this.jsonSettingsFilePath = jsonFileSettingsPath;
28
19
  }
29
- getSettingValue(settingName, cacheOpts) {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- const action = () => __awaiter(this, void 0, void 0, function* () {
32
- yield this.loadUserSettingsFile();
33
- if (this.jsonSettingsData && _.has(this.jsonSettingsData, settingName)) {
34
- const data = this.jsonSettingsData[settingName];
35
- const dataToReturn = data.modifiedByCacheMechanism ? data.value : data;
36
- if (cacheOpts && cacheOpts.cacheTimeout) {
37
- if (!data.modifiedByCacheMechanism) {
38
- return null;
39
- }
40
- const currentTime = Date.now();
41
- if (currentTime - data.time > cacheOpts.cacheTimeout) {
42
- return null;
43
- }
20
+ async getSettingValue(settingName, cacheOpts) {
21
+ const action = async () => {
22
+ await this.loadUserSettingsFile();
23
+ if (this.jsonSettingsData && _.has(this.jsonSettingsData, settingName)) {
24
+ const data = this.jsonSettingsData[settingName];
25
+ const dataToReturn = data.modifiedByCacheMechanism ? data.value : data;
26
+ if (cacheOpts && cacheOpts.cacheTimeout) {
27
+ if (!data.modifiedByCacheMechanism) {
28
+ return null;
29
+ }
30
+ const currentTime = Date.now();
31
+ if (currentTime - data.time > cacheOpts.cacheTimeout) {
32
+ return null;
44
33
  }
45
- return dataToReturn;
46
34
  }
47
- return null;
48
- });
49
- return this.$lockService.executeActionWithLock(action, this.lockFilePath);
50
- });
35
+ return dataToReturn;
36
+ }
37
+ return null;
38
+ };
39
+ return this.$lockService.executeActionWithLock(action, this.lockFilePath);
51
40
  }
52
- saveSetting(key, value, cacheOpts) {
53
- return __awaiter(this, void 0, void 0, function* () {
54
- const settingObject = {};
55
- settingObject[key] = value;
56
- return this.saveSettings(settingObject, cacheOpts);
57
- });
41
+ async saveSetting(key, value, cacheOpts) {
42
+ const settingObject = {};
43
+ settingObject[key] = value;
44
+ return this.saveSettings(settingObject, cacheOpts);
58
45
  }
59
- removeSetting(key) {
60
- return __awaiter(this, void 0, void 0, function* () {
61
- const action = () => __awaiter(this, void 0, void 0, function* () {
62
- yield this.loadUserSettingsFile();
63
- delete this.jsonSettingsData[key];
64
- yield this.saveSettings();
65
- });
66
- return this.$lockService.executeActionWithLock(action, this.lockFilePath);
67
- });
46
+ async removeSetting(key) {
47
+ const action = async () => {
48
+ await this.loadUserSettingsFile();
49
+ delete this.jsonSettingsData[key];
50
+ await this.saveSettings();
51
+ };
52
+ return this.$lockService.executeActionWithLock(action, this.lockFilePath);
68
53
  }
69
54
  saveSettings(data, cacheOpts) {
70
- const action = () => __awaiter(this, void 0, void 0, function* () {
71
- yield this.loadUserSettingsFile();
55
+ const action = async () => {
56
+ await this.loadUserSettingsFile();
72
57
  this.jsonSettingsData = this.jsonSettingsData || {};
73
58
  _(data)
74
59
  .keys()
@@ -85,36 +70,32 @@ class JsonFileSettingsService {
85
70
  : data[propertyName];
86
71
  });
87
72
  this.$fs.writeJson(this.jsonSettingsFilePath, this.jsonSettingsData);
88
- });
73
+ };
89
74
  return this.$lockService.executeActionWithLock(action, this.lockFilePath);
90
75
  }
91
- loadUserSettingsFile() {
92
- return __awaiter(this, void 0, void 0, function* () {
93
- if (!this.jsonSettingsData) {
94
- yield this.loadUserSettingsData();
95
- }
96
- });
76
+ async loadUserSettingsFile() {
77
+ if (!this.jsonSettingsData) {
78
+ await this.loadUserSettingsData();
79
+ }
97
80
  }
98
- loadUserSettingsData() {
99
- return __awaiter(this, void 0, void 0, function* () {
100
- if (!this.$fs.exists(this.jsonSettingsFilePath)) {
101
- const unexistingDirs = this.getUnexistingDirectories(this.jsonSettingsFilePath);
102
- this.$fs.writeFile(this.jsonSettingsFilePath, null);
103
- if (process.env.SUDO_USER) {
104
- for (const dir of unexistingDirs) {
105
- yield this.$fs.setCurrentUserAsOwner(dir, process.env.SUDO_USER);
106
- }
81
+ async loadUserSettingsData() {
82
+ if (!this.$fs.exists(this.jsonSettingsFilePath)) {
83
+ const unexistingDirs = this.getUnexistingDirectories(this.jsonSettingsFilePath);
84
+ this.$fs.writeFile(this.jsonSettingsFilePath, null);
85
+ if (process.env.SUDO_USER) {
86
+ for (const dir of unexistingDirs) {
87
+ await this.$fs.setCurrentUserAsOwner(dir, process.env.SUDO_USER);
107
88
  }
108
89
  }
109
- const data = this.$fs.readText(this.jsonSettingsFilePath);
110
- try {
111
- this.jsonSettingsData = (0, helpers_1.parseJson)(data);
112
- }
113
- catch (err) {
114
- this.$logger.trace(`Error while trying to parseJson ${data} data from ${this.jsonSettingsFilePath} file. Err is: ${err}`);
115
- this.$fs.deleteFile(this.jsonSettingsFilePath);
116
- }
117
- });
90
+ }
91
+ const data = this.$fs.readText(this.jsonSettingsFilePath);
92
+ try {
93
+ this.jsonSettingsData = (0, helpers_1.parseJson)(data);
94
+ }
95
+ catch (err) {
96
+ this.$logger.trace(`Error while trying to parseJson ${data} data from ${this.jsonSettingsFilePath} file. Err is: ${err}`);
97
+ this.$fs.deleteFile(this.jsonSettingsFilePath);
98
+ }
118
99
  }
119
100
  getUnexistingDirectories(filePath) {
120
101
  const unexistingDirs = [];
@@ -5,15 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
- return new (P || (P = Promise))(function (resolve, reject) {
11
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15
- });
16
- };
17
8
  Object.defineProperty(exports, "__esModule", { value: true });
18
9
  exports.LockService = void 0;
19
10
  const lockfile = require("proper-lockfile");
@@ -42,51 +33,43 @@ class LockService {
42
33
  this.$settingsService = $settingsService;
43
34
  this.$cleanupService = $cleanupService;
44
35
  }
45
- executeActionWithLock(action, lockFilePath, lockOpts) {
46
- return __awaiter(this, void 0, void 0, function* () {
47
- const releaseFunc = yield this.lock(lockFilePath, lockOpts);
48
- try {
49
- const result = yield action();
50
- return result;
51
- }
52
- finally {
53
- releaseFunc();
54
- }
55
- });
36
+ async executeActionWithLock(action, lockFilePath, lockOpts) {
37
+ const releaseFunc = await this.lock(lockFilePath, lockOpts);
38
+ try {
39
+ const result = await action();
40
+ return result;
41
+ }
42
+ finally {
43
+ releaseFunc();
44
+ }
56
45
  }
57
- lock(lockFilePath, lockOpts) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- const { filePath, fileOpts } = this.getLockFileSettings(lockFilePath, lockOpts);
60
- for (const pathToClean of this.getPathsForCleanupAction(filePath)) {
61
- yield this.$cleanupService.addCleanupDeleteAction(pathToClean);
62
- }
63
- this.$fs.writeFile(filePath, "");
64
- try {
65
- const releaseFunc = yield lockfile.lock(filePath, fileOpts);
66
- return () => __awaiter(this, void 0, void 0, function* () {
67
- yield releaseFunc();
68
- yield this.cleanLock(filePath);
69
- });
70
- }
71
- catch (err) {
72
- throw new Error(`Timeout while waiting for lock "${filePath}"`);
73
- }
74
- });
46
+ async lock(lockFilePath, lockOpts) {
47
+ const { filePath, fileOpts } = this.getLockFileSettings(lockFilePath, lockOpts);
48
+ for (const pathToClean of this.getPathsForCleanupAction(filePath)) {
49
+ await this.$cleanupService.addCleanupDeleteAction(pathToClean);
50
+ }
51
+ this.$fs.writeFile(filePath, "");
52
+ try {
53
+ const releaseFunc = await lockfile.lock(filePath, fileOpts);
54
+ return async () => {
55
+ await releaseFunc();
56
+ await this.cleanLock(filePath);
57
+ };
58
+ }
59
+ catch (err) {
60
+ throw new Error(`Timeout while waiting for lock "${filePath}"`);
61
+ }
75
62
  }
76
- unlock(lockFilePath) {
77
- return __awaiter(this, void 0, void 0, function* () {
78
- const { filePath } = this.getLockFileSettings(lockFilePath);
79
- lockfile.unlockSync(filePath);
80
- yield this.cleanLock(filePath);
81
- });
63
+ async unlock(lockFilePath) {
64
+ const { filePath } = this.getLockFileSettings(lockFilePath);
65
+ lockfile.unlockSync(filePath);
66
+ await this.cleanLock(filePath);
82
67
  }
83
- cleanLock(lockPath) {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- this.$fs.deleteFile(lockPath);
86
- for (const filePath of this.getPathsForCleanupAction(lockPath)) {
87
- yield this.$cleanupService.removeCleanupDeleteAction(filePath);
88
- }
89
- });
68
+ async cleanLock(lockPath) {
69
+ this.$fs.deleteFile(lockPath);
70
+ for (const filePath of this.getPathsForCleanupAction(lockPath)) {
71
+ await this.$cleanupService.removeCleanupDeleteAction(filePath);
72
+ }
90
73
  }
91
74
  getPathsForCleanupAction(lockPath) {
92
75
  return [lockPath, `${lockPath}.lock`];
@@ -121,9 +104,9 @@ class LockService {
121
104
  return filePath;
122
105
  }
123
106
  }
107
+ exports.LockService = LockService;
124
108
  __decorate([
125
109
  (0, decorators_1.cache)()
126
110
  ], LockService.prototype, "defaultLockFilePath", null);
127
- exports.LockService = LockService;
128
111
  yok_1.injector.register("lockService", LockService);
129
112
  yok_1.injector.register("lockfile", LockService);
@@ -1,13 +1,4 @@
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
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.MessageContractGenerator = void 0;
13
4
  const code_entity_1 = require("../codeGeneration/code-entity");
@@ -19,45 +10,43 @@ class MessageContractGenerator {
19
10
  this.$fs = $fs;
20
11
  this.$messagesService = $messagesService;
21
12
  }
22
- generate() {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- const interfacesFile = new code_entity_1.Block();
25
- const implementationsFile = new code_entity_1.Block();
26
- implementationsFile.writeLine("//");
27
- implementationsFile.writeLine("// automatically generated code; do not edit manually!");
28
- implementationsFile.writeLine("//");
29
- implementationsFile.writeLine("/* tslint:disable:all */");
30
- implementationsFile.writeLine("");
31
- interfacesFile.writeLine("//");
32
- interfacesFile.writeLine("// automatically generated code; do not edit manually!");
33
- interfacesFile.writeLine("//");
34
- interfacesFile.writeLine("/* tslint:disable:all */");
35
- const messagesClass = new code_entity_1.Block("export class Messages implements IMessages");
36
- const messagesInterface = new code_entity_1.Block("interface IMessages");
37
- _.each(this.$messagesService.pathsToMessageJsonFiles, (jsonFilePath) => {
38
- const jsonContents = this.$fs.readJson(jsonFilePath), implementationBlock = new code_entity_1.Block(), interfaceBlock = new code_entity_1.Block();
39
- this.generateFileRecursive(jsonContents, "", implementationBlock, 0, {
40
- shouldGenerateInterface: false,
41
- });
42
- this.generateFileRecursive(jsonContents, "", interfaceBlock, 0, {
43
- shouldGenerateInterface: true,
44
- });
45
- messagesClass.addBlock(implementationBlock);
46
- messagesInterface.addBlock(interfaceBlock);
13
+ async generate() {
14
+ const interfacesFile = new code_entity_1.Block();
15
+ const implementationsFile = new code_entity_1.Block();
16
+ implementationsFile.writeLine("//");
17
+ implementationsFile.writeLine("// automatically generated code; do not edit manually!");
18
+ implementationsFile.writeLine("//");
19
+ implementationsFile.writeLine("/* tslint:disable:all */");
20
+ implementationsFile.writeLine("");
21
+ interfacesFile.writeLine("//");
22
+ interfacesFile.writeLine("// automatically generated code; do not edit manually!");
23
+ interfacesFile.writeLine("//");
24
+ interfacesFile.writeLine("/* tslint:disable:all */");
25
+ const messagesClass = new code_entity_1.Block("export class Messages implements IMessages");
26
+ const messagesInterface = new code_entity_1.Block("interface IMessages");
27
+ _.each(this.$messagesService.pathsToMessageJsonFiles, (jsonFilePath) => {
28
+ const jsonContents = this.$fs.readJson(jsonFilePath), implementationBlock = new code_entity_1.Block(), interfaceBlock = new code_entity_1.Block();
29
+ this.generateFileRecursive(jsonContents, "", implementationBlock, 0, {
30
+ shouldGenerateInterface: false,
47
31
  });
48
- interfacesFile.addBlock(messagesInterface);
49
- interfacesFile.writeLine("/* tslint:enable */");
50
- interfacesFile.writeLine("");
51
- implementationsFile.addBlock(messagesClass);
52
- implementationsFile.writeLine("$injector.register('messages', Messages);");
53
- implementationsFile.writeLine("/* tslint:enable */");
54
- implementationsFile.writeLine("");
55
- const codePrinter = new code_printer_1.CodePrinter();
56
- return {
57
- interfaceFile: codePrinter.composeBlock(interfacesFile),
58
- implementationFile: codePrinter.composeBlock(implementationsFile),
59
- };
32
+ this.generateFileRecursive(jsonContents, "", interfaceBlock, 0, {
33
+ shouldGenerateInterface: true,
34
+ });
35
+ messagesClass.addBlock(implementationBlock);
36
+ messagesInterface.addBlock(interfaceBlock);
60
37
  });
38
+ interfacesFile.addBlock(messagesInterface);
39
+ interfacesFile.writeLine("/* tslint:enable */");
40
+ interfacesFile.writeLine("");
41
+ implementationsFile.addBlock(messagesClass);
42
+ implementationsFile.writeLine("$injector.register('messages', Messages);");
43
+ implementationsFile.writeLine("/* tslint:enable */");
44
+ implementationsFile.writeLine("");
45
+ const codePrinter = new code_printer_1.CodePrinter();
46
+ return {
47
+ interfaceFile: codePrinter.composeBlock(interfacesFile),
48
+ implementationFile: codePrinter.composeBlock(implementationsFile),
49
+ };
61
50
  }
62
51
  generateFileRecursive(jsonContents, propertyValue, block, depth, options) {
63
52
  _.each(jsonContents, (val, key) => {
@@ -1,13 +1,4 @@
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
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.MicroTemplateService = void 0;
13
4
  const util = require("util");
@@ -20,12 +11,10 @@ class MicroTemplateService {
20
11
  this.$injector = $injector;
21
12
  this.dynamicCallRegex = new RegExp(util.format("(%s)", this.$injector.dynamicCallRegex.source), "g");
22
13
  }
23
- parseContent(data, options) {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- const localVariables = this.getLocalVariables(options);
26
- const compiledTemplate = _.template(data.replace(this.dynamicCallRegex, 'this.$injector.getDynamicCallData("$1")'));
27
- return yield compiledTemplate.apply(this, [localVariables]);
28
- });
14
+ async parseContent(data, options) {
15
+ const localVariables = this.getLocalVariables(options);
16
+ const compiledTemplate = _.template(data.replace(this.dynamicCallRegex, 'this.$injector.getDynamicCallData("$1")'));
17
+ return await compiledTemplate.apply(this, [localVariables]);
29
18
  }
30
19
  isPlatform(...args) {
31
20
  const platform = os.platform().toLowerCase();
@@ -1,13 +1,4 @@
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
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.Net = void 0;
13
4
  const net = require("net");
@@ -21,117 +12,109 @@ class Net {
21
12
  this.$logger = $logger;
22
13
  this.$osInfo = $osInfo;
23
14
  }
24
- getFreePort() {
25
- return __awaiter(this, void 0, void 0, function* () {
26
- const server = net.createServer((sock) => {
15
+ async getFreePort() {
16
+ const server = net.createServer((sock) => {
17
+ });
18
+ return new Promise((resolve, reject) => {
19
+ let isResolved = false;
20
+ server.listen(0, () => {
21
+ const portUsed = server.address().port;
22
+ server.close();
23
+ if (!isResolved) {
24
+ isResolved = true;
25
+ resolve(portUsed);
26
+ }
27
27
  });
28
- return new Promise((resolve, reject) => {
29
- let isResolved = false;
30
- server.listen(0, () => {
31
- const portUsed = server.address().port;
32
- server.close();
33
- if (!isResolved) {
34
- isResolved = true;
35
- resolve(portUsed);
36
- }
37
- });
38
- server.on("error", (err) => {
39
- if (!isResolved) {
40
- isResolved = true;
41
- reject(err);
42
- }
43
- });
28
+ server.on("error", (err) => {
29
+ if (!isResolved) {
30
+ isResolved = true;
31
+ reject(err);
32
+ }
44
33
  });
45
34
  });
46
35
  }
47
- isPortAvailable(port) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- return new Promise((resolve, reject) => {
50
- let isResolved = false;
51
- const server = net.createServer();
52
- server.on("error", (err) => {
53
- if (!isResolved) {
54
- isResolved = true;
55
- resolve(false);
56
- }
57
- });
58
- server.once("close", () => {
59
- if (!isResolved) {
60
- isResolved = true;
61
- resolve(true);
62
- }
63
- });
64
- server.on("listening", (err) => {
65
- if (err && !isResolved) {
66
- isResolved = true;
67
- resolve(true);
68
- }
69
- server.close();
70
- });
71
- server.listen(port, "localhost");
36
+ async isPortAvailable(port) {
37
+ return new Promise((resolve, reject) => {
38
+ let isResolved = false;
39
+ const server = net.createServer();
40
+ server.on("error", (err) => {
41
+ if (!isResolved) {
42
+ isResolved = true;
43
+ resolve(false);
44
+ }
72
45
  });
46
+ server.once("close", () => {
47
+ if (!isResolved) {
48
+ isResolved = true;
49
+ resolve(true);
50
+ }
51
+ });
52
+ server.on("listening", (err) => {
53
+ if (err && !isResolved) {
54
+ isResolved = true;
55
+ resolve(true);
56
+ }
57
+ server.close();
58
+ });
59
+ server.listen(port, "localhost");
73
60
  });
74
61
  }
75
- getAvailablePortInRange(startPort, endPort) {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- endPort = endPort || 65534;
78
- while (!(yield this.isPortAvailable(startPort))) {
79
- startPort++;
80
- if (startPort > endPort) {
81
- this.$errors.fail("Unable to find free local port.");
82
- }
62
+ async getAvailablePortInRange(startPort, endPort) {
63
+ endPort = endPort || 65534;
64
+ while (!(await this.isPortAvailable(startPort))) {
65
+ startPort++;
66
+ if (startPort > endPort) {
67
+ this.$errors.fail("Unable to find free local port.");
83
68
  }
84
- return startPort;
85
- });
69
+ }
70
+ return startPort;
86
71
  }
87
- waitForPortToListen(waitForPortListenData) {
88
- return __awaiter(this, void 0, void 0, function* () {
89
- if (!waitForPortListenData) {
90
- this.$errors.fail("You must pass port and timeout for check.");
72
+ async waitForPortToListen(waitForPortListenData) {
73
+ if (!waitForPortListenData) {
74
+ this.$errors.fail("You must pass port and timeout for check.");
75
+ }
76
+ const { timeout, port } = waitForPortListenData;
77
+ const interval = waitForPortListenData.interval || Net.DEFAULT_INTERVAL;
78
+ const endTime = new Date().getTime() + timeout;
79
+ const platformData = {
80
+ darwin: {
81
+ command: "netstat -f inet -p tcp -anL",
82
+ regex: new RegExp(`\\.${port}\\b`, "g"),
83
+ },
84
+ linux: {
85
+ command: "netstat -tnl",
86
+ regex: new RegExp(`:${port}\\s`, "g"),
87
+ },
88
+ win32: {
89
+ command: "netstat -ant -p tcp",
90
+ regex: new RegExp(`TCP\\s+(\\d+\\.){3}\\d+:${port}.*?LISTEN`, "g"),
91
+ },
92
+ };
93
+ const platform = this.$osInfo.platform();
94
+ const currentPlatformData = platformData[platform];
95
+ if (!currentPlatformData) {
96
+ this.$errors.fail(`Unable to check for free ports on ${platform}. Supported platforms are: ${_.keys(platformData).join(", ")}`);
97
+ }
98
+ while (true) {
99
+ const { command, regex } = currentPlatformData;
100
+ try {
101
+ const result = await this.$childProcess.exec(command);
102
+ if (result && !!result.match(regex)) {
103
+ return true;
104
+ }
91
105
  }
92
- const { timeout, port } = waitForPortListenData;
93
- const interval = waitForPortListenData.interval || Net.DEFAULT_INTERVAL;
94
- const endTime = new Date().getTime() + timeout;
95
- const platformData = {
96
- darwin: {
97
- command: "netstat -f inet -p tcp -anL",
98
- regex: new RegExp(`\\.${port}\\b`, "g"),
99
- },
100
- linux: {
101
- command: "netstat -tnl",
102
- regex: new RegExp(`:${port}\\s`, "g"),
103
- },
104
- win32: {
105
- command: "netstat -ant -p tcp",
106
- regex: new RegExp(`TCP\\s+(\\d+\\.){3}\\d+:${port}.*?LISTEN`, "g"),
107
- },
108
- };
109
- const platform = this.$osInfo.platform();
110
- const currentPlatformData = platformData[platform];
111
- if (!currentPlatformData) {
112
- this.$errors.fail(`Unable to check for free ports on ${platform}. Supported platforms are: ${_.keys(platformData).join(", ")}`);
106
+ catch (err) {
107
+ this.$logger.trace(`Error while calling '${command}': ${err}`);
113
108
  }
114
- while (true) {
115
- const { command, regex } = currentPlatformData;
116
- try {
117
- const result = yield this.$childProcess.exec(command);
118
- if (result && !!result.match(regex)) {
119
- return true;
120
- }
121
- }
122
- catch (err) {
123
- this.$logger.trace(`Error while calling '${command}': ${err}`);
124
- }
125
- const currentTime = new Date().getTime();
126
- if (currentTime >= endTime) {
127
- break;
128
- }
129
- yield (0, helpers_1.sleep)(interval);
109
+ const currentTime = new Date().getTime();
110
+ if (currentTime >= endTime) {
111
+ break;
130
112
  }
131
- return false;
132
- });
113
+ await (0, helpers_1.sleep)(interval);
114
+ }
115
+ return false;
133
116
  }
134
117
  }
135
- Net.DEFAULT_INTERVAL = 1000;
136
118
  exports.Net = Net;
119
+ Net.DEFAULT_INTERVAL = 1000;
137
120
  yok_1.injector.register("net", Net);