@modern-js/utils 1.3.6 → 1.3.7-alpha.prebundle.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 (353) hide show
  1. package/.eslintrc.js +9 -0
  2. package/CHANGELOG.md +6 -0
  3. package/compiled/browserslist/index.d.ts +178 -0
  4. package/compiled/browserslist/index.js +1 -0
  5. package/compiled/browserslist/license +20 -0
  6. package/compiled/browserslist/package.json +1 -0
  7. package/compiled/chalk/index.d.ts +415 -0
  8. package/compiled/chalk/index.js +1 -0
  9. package/compiled/chalk/license +9 -0
  10. package/compiled/chalk/package.json +1 -0
  11. package/compiled/chokidar/anymatch/index.d.ts +19 -0
  12. package/compiled/chokidar/fsevents.node +0 -0
  13. package/compiled/chokidar/index.js +40 -0
  14. package/compiled/chokidar/license +21 -0
  15. package/compiled/chokidar/package.json +1 -0
  16. package/compiled/chokidar/types/index.d.ts +188 -0
  17. package/compiled/commander/index.js +1 -0
  18. package/compiled/commander/license +22 -0
  19. package/compiled/commander/package.json +1 -0
  20. package/compiled/commander/typings/index.d.ts +774 -0
  21. package/compiled/debug/index.d.ts +54 -0
  22. package/compiled/debug/index.js +1 -0
  23. package/compiled/debug/license +20 -0
  24. package/compiled/debug/ms/index.d.ts +25 -0
  25. package/compiled/debug/package.json +1 -0
  26. package/compiled/execa/index.d.ts +564 -0
  27. package/compiled/execa/index.js +1 -0
  28. package/compiled/execa/license +9 -0
  29. package/compiled/execa/package.json +1 -0
  30. package/compiled/filesize/filesize.d.ts +131 -0
  31. package/compiled/filesize/index.js +9 -0
  32. package/compiled/filesize/license +28 -0
  33. package/compiled/filesize/package.json +1 -0
  34. package/compiled/fs-extra/index.d.ts +563 -0
  35. package/compiled/fs-extra/index.js +1 -0
  36. package/compiled/fs-extra/license +15 -0
  37. package/compiled/fs-extra/package.json +1 -0
  38. package/compiled/glob/index.d.ts +91 -0
  39. package/compiled/glob/index.js +1 -0
  40. package/compiled/glob/license +21 -0
  41. package/compiled/glob/minimatch/index.d.ts +204 -0
  42. package/compiled/glob/package.json +1 -0
  43. package/compiled/gzip-size/index.d.ts +96 -0
  44. package/compiled/gzip-size/index.js +1 -0
  45. package/compiled/gzip-size/license +9 -0
  46. package/compiled/gzip-size/package.json +1 -0
  47. package/compiled/import-lazy/index.d.ts +26 -0
  48. package/compiled/import-lazy/index.js +1 -0
  49. package/compiled/import-lazy/license +9 -0
  50. package/compiled/import-lazy/package.json +1 -0
  51. package/compiled/js-yaml/index.d.ts +154 -0
  52. package/compiled/js-yaml/index.js +1 -0
  53. package/compiled/js-yaml/license +21 -0
  54. package/compiled/js-yaml/package.json +1 -0
  55. package/compiled/lodash/common/array.d.ts +2126 -0
  56. package/compiled/lodash/common/collection.d.ts +1930 -0
  57. package/compiled/lodash/common/common.d.ts +280 -0
  58. package/compiled/lodash/common/date.d.ts +23 -0
  59. package/compiled/lodash/common/function.d.ts +1446 -0
  60. package/compiled/lodash/common/lang.d.ts +1693 -0
  61. package/compiled/lodash/common/math.d.ts +405 -0
  62. package/compiled/lodash/common/number.d.ts +131 -0
  63. package/compiled/lodash/common/object.d.ts +2519 -0
  64. package/compiled/lodash/common/seq.d.ts +210 -0
  65. package/compiled/lodash/common/string.d.ts +788 -0
  66. package/compiled/lodash/common/util.d.ts +1220 -0
  67. package/compiled/lodash/index.d.ts +46 -0
  68. package/compiled/lodash/index.js +9 -0
  69. package/compiled/lodash/license +47 -0
  70. package/compiled/lodash/package.json +1 -0
  71. package/compiled/pkg-up/index.d.ts +48 -0
  72. package/compiled/pkg-up/index.js +1 -0
  73. package/compiled/pkg-up/license +9 -0
  74. package/compiled/pkg-up/package.json +1 -0
  75. package/compiled/recursive-readdir/index.d.ts +21 -0
  76. package/compiled/recursive-readdir/index.js +1 -0
  77. package/compiled/recursive-readdir/license +21 -0
  78. package/compiled/recursive-readdir/package.json +1 -0
  79. package/compiled/signale/index.d.ts +162 -0
  80. package/compiled/signale/index.js +1 -0
  81. package/compiled/signale/package.json +1 -0
  82. package/compiled/strip-ansi/index.d.ts +17 -0
  83. package/compiled/strip-ansi/index.js +1 -0
  84. package/compiled/strip-ansi/license +9 -0
  85. package/compiled/strip-ansi/package.json +1 -0
  86. package/compiled/upath/index.js +1 -0
  87. package/compiled/upath/license +22 -0
  88. package/compiled/upath/package.json +1 -0
  89. package/compiled/upath/upath.d.ts +241 -0
  90. package/dist/{types/FileSizeReporter.d.ts → FileSizeReporter.d.ts} +5 -5
  91. package/dist/FileSizeReporter.js +151 -0
  92. package/dist/{types/alias.d.ts → alias.d.ts} +12 -14
  93. package/dist/alias.js +62 -0
  94. package/dist/applyOptionsChain.d.ts +6 -0
  95. package/dist/applyOptionsChain.js +30 -0
  96. package/dist/clearConsole.d.ts +1 -0
  97. package/dist/clearConsole.js +9 -0
  98. package/dist/{types/compatRequire.d.ts → compatRequire.d.ts} +1 -1
  99. package/dist/compatRequire.js +28 -0
  100. package/dist/compiled/upath/index.d.ts +225 -0
  101. package/dist/compiled/upath/index.js +1 -0
  102. package/dist/compiled.d.ts +21 -0
  103. package/dist/compiled.js +33 -0
  104. package/dist/constants.d.ts +209 -0
  105. package/dist/constants.js +264 -0
  106. package/dist/{js/modern/debug.js → debug.d.ts} +1 -3
  107. package/dist/debug.js +11 -0
  108. package/dist/emptyDir.d.ts +1 -0
  109. package/dist/emptyDir.js +19 -0
  110. package/dist/{types/ensureAbsolutePath.d.ts → ensureAbsolutePath.d.ts} +1 -1
  111. package/dist/ensureAbsolutePath.js +15 -0
  112. package/dist/{types/findExists.d.ts → findExists.d.ts} +1 -1
  113. package/dist/findExists.js +21 -0
  114. package/dist/{types/format.d.ts → format.d.ts} +5 -5
  115. package/dist/format.js +113 -0
  116. package/dist/{types/generateMetaTags.d.ts → generateMetaTags.d.ts} +3 -3
  117. package/dist/generateMetaTags.js +48 -0
  118. package/dist/{types/getBrowserslist.d.ts → getBrowserslist.d.ts} +1 -1
  119. package/dist/getBrowserslist.js +7 -0
  120. package/dist/{types/getCacheIdentifier.d.ts → getCacheIdentifier.d.ts} +3 -3
  121. package/dist/getCacheIdentifier.js +24 -0
  122. package/dist/{types/getEntryOptions.d.ts → getEntryOptions.d.ts} +1 -1
  123. package/dist/getEntryOptions.js +26 -0
  124. package/dist/{types/getPackageManager.d.ts → getPackageManager.d.ts} +1 -1
  125. package/dist/getPackageManager.js +47 -0
  126. package/dist/{types/getPort.d.ts → getPort.d.ts} +1 -1
  127. package/dist/getPort.js +62 -0
  128. package/dist/{types/import.d.ts → import.d.ts} +2 -2
  129. package/dist/import.js +10 -0
  130. package/dist/index.d.ts +31 -0
  131. package/dist/index.js +43 -0
  132. package/dist/{types/is → is}/index.d.ts +1 -4
  133. package/dist/is/index.js +82 -0
  134. package/dist/{types/is → is}/node-env.d.ts +1 -1
  135. package/dist/is/node-env.js +12 -0
  136. package/dist/is/platform.d.ts +2 -0
  137. package/dist/is/platform.js +10 -0
  138. package/dist/{types/is → is}/type.d.ts +1 -1
  139. package/dist/is/type.js +38 -0
  140. package/dist/logger.d.ts +63 -0
  141. package/dist/logger.js +128 -0
  142. package/dist/{types/monorepo.d.ts → monorepo.d.ts} +3 -3
  143. package/dist/monorepo.js +80 -0
  144. package/dist/{types/nodeEnv.d.ts → nodeEnv.d.ts} +1 -1
  145. package/dist/nodeEnv.js +49 -0
  146. package/dist/{types/path.d.ts → path.d.ts} +1 -1
  147. package/dist/path.js +14 -0
  148. package/dist/{types/pkgUp.d.ts → pkgUp.d.ts} +1 -1
  149. package/dist/pkgUp.js +8 -0
  150. package/dist/{types/prettyInstructions.d.ts → prettyInstructions.d.ts} +2 -2
  151. package/dist/prettyInstructions.js +64 -0
  152. package/dist/{types/printBuildError.d.ts → printBuildError.d.ts} +1 -1
  153. package/dist/printBuildError.js +43 -0
  154. package/dist/{types/readTsConfig.d.ts → readTsConfig.d.ts} +1 -1
  155. package/dist/readTsConfig.js +19 -0
  156. package/dist/{types/removeSlash.d.ts → removeSlash.d.ts} +1 -1
  157. package/dist/removeSlash.js +9 -0
  158. package/dist/{types/runtimeExports.d.ts → runtimeExports.d.ts} +3 -3
  159. package/dist/runtimeExports.js +53 -0
  160. package/dist/src/FileSizeReporter.d.ts +16 -0
  161. package/dist/src/FileSizeReporter.js +152 -0
  162. package/dist/src/alias.d.ts +21 -0
  163. package/dist/src/alias.js +62 -0
  164. package/dist/src/applyOptionsChain.d.ts +6 -0
  165. package/dist/src/applyOptionsChain.js +30 -0
  166. package/dist/src/clearConsole.d.ts +1 -0
  167. package/dist/src/clearConsole.js +9 -0
  168. package/dist/src/compatRequire.d.ts +8 -0
  169. package/dist/src/compatRequire.js +28 -0
  170. package/dist/src/compiled.d.ts +7 -0
  171. package/dist/src/compiled.js +19 -0
  172. package/dist/src/constants.d.ts +209 -0
  173. package/dist/src/constants.js +264 -0
  174. package/dist/{types → src}/debug.d.ts +1 -2
  175. package/dist/src/debug.js +14 -0
  176. package/dist/src/emptyDir.d.ts +1 -0
  177. package/dist/src/emptyDir.js +22 -0
  178. package/dist/{js/modern/ensureAbsolutePath.js → src/ensureAbsolutePath.d.ts} +1 -3
  179. package/dist/src/ensureAbsolutePath.js +15 -0
  180. package/dist/src/findExists.d.ts +6 -0
  181. package/dist/src/findExists.js +21 -0
  182. package/dist/src/format.d.ts +16 -0
  183. package/dist/src/format.js +115 -0
  184. package/dist/src/generateMetaTags.d.ts +16 -0
  185. package/dist/src/generateMetaTags.js +48 -0
  186. package/dist/src/getBrowserslist.d.ts +2 -0
  187. package/dist/src/getBrowserslist.js +7 -0
  188. package/dist/src/getCacheIdentifier.d.ts +7 -0
  189. package/dist/src/getCacheIdentifier.js +24 -0
  190. package/dist/src/getEntryOptions.d.ts +1 -0
  191. package/dist/src/getEntryOptions.js +26 -0
  192. package/dist/src/getPackageManager.d.ts +1 -0
  193. package/dist/src/getPackageManager.js +47 -0
  194. package/dist/src/getPort.d.ts +7 -0
  195. package/dist/src/getPort.js +62 -0
  196. package/dist/src/import.d.ts +5 -0
  197. package/dist/src/import.js +10 -0
  198. package/dist/{types → src}/index.d.ts +2 -3
  199. package/dist/src/index.js +57 -0
  200. package/dist/src/is/index.d.ts +34 -0
  201. package/dist/src/is/index.js +82 -0
  202. package/dist/src/is/node-env.d.ts +4 -0
  203. package/dist/src/is/node-env.js +12 -0
  204. package/dist/src/is/platform.d.ts +2 -0
  205. package/dist/src/is/platform.js +10 -0
  206. package/dist/src/is/type.d.ts +8 -0
  207. package/dist/src/is/type.js +38 -0
  208. package/dist/src/logger.d.ts +63 -0
  209. package/dist/src/logger.js +129 -0
  210. package/dist/src/monorepo.d.ts +11 -0
  211. package/dist/src/monorepo.js +81 -0
  212. package/dist/src/nodeEnv.d.ts +3 -0
  213. package/dist/src/nodeEnv.js +52 -0
  214. package/dist/src/path.d.ts +3 -0
  215. package/dist/src/path.js +14 -0
  216. package/dist/src/prettyInstructions.d.ts +6 -0
  217. package/dist/src/prettyInstructions.js +64 -0
  218. package/dist/src/printBuildError.d.ts +8 -0
  219. package/dist/src/printBuildError.js +43 -0
  220. package/dist/src/readTsConfig.d.ts +2 -0
  221. package/dist/src/readTsConfig.js +19 -0
  222. package/dist/src/removeSlash.d.ts +3 -0
  223. package/dist/src/removeSlash.js +9 -0
  224. package/dist/src/runtimeExports.d.ts +4 -0
  225. package/dist/src/runtimeExports.js +53 -0
  226. package/dist/{types → src}/wait.d.ts +1 -1
  227. package/dist/src/wait.js +7 -0
  228. package/dist/{types → src}/watch.d.ts +3 -3
  229. package/dist/src/watch.js +65 -0
  230. package/dist/wait.d.ts +2 -0
  231. package/dist/wait.js +7 -0
  232. package/dist/watch.d.ts +8 -0
  233. package/dist/watch.js +64 -0
  234. package/jest.config.js +0 -1
  235. package/package.json +55 -39
  236. package/tests/debug.test.ts +2 -2
  237. package/tests/is.test.ts +27 -0
  238. package/tests/isPlatform.test.ts +19 -0
  239. package/tests/prettyInstructions.test.ts +1 -1
  240. package/tsconfig.json +3 -5
  241. package/dist/js/modern/FileSizeReporter.js +0 -156
  242. package/dist/js/modern/alias.js +0 -74
  243. package/dist/js/modern/applyOptionsChain.js +0 -27
  244. package/dist/js/modern/chalk.js +0 -2
  245. package/dist/js/modern/clearConsole.js +0 -5
  246. package/dist/js/modern/compatRequire.js +0 -26
  247. package/dist/js/modern/constants.js +0 -333
  248. package/dist/js/modern/emptyDir.js +0 -6
  249. package/dist/js/modern/findExists.js +0 -16
  250. package/dist/js/modern/format.js +0 -137
  251. package/dist/js/modern/generateMetaTags.js +0 -49
  252. package/dist/js/modern/getBrowserslist.js +0 -5
  253. package/dist/js/modern/getCacheIdentifier.js +0 -20
  254. package/dist/js/modern/getEntryOptions.js +0 -24
  255. package/dist/js/modern/getPackageManager.js +0 -37
  256. package/dist/js/modern/getPort.js +0 -52
  257. package/dist/js/modern/import.js +0 -11
  258. package/dist/js/modern/index.js +0 -34
  259. package/dist/js/modern/is/index.js +0 -77
  260. package/dist/js/modern/is/node-env.js +0 -5
  261. package/dist/js/modern/is/platform.js +0 -2
  262. package/dist/js/modern/is/type.js +0 -27
  263. package/dist/js/modern/logger.js +0 -152
  264. package/dist/js/modern/monorepo.js +0 -84
  265. package/dist/js/modern/nodeEnv.js +0 -31
  266. package/dist/js/modern/path.js +0 -5
  267. package/dist/js/modern/pkgUp.js +0 -2
  268. package/dist/js/modern/prettyInstructions.js +0 -79
  269. package/dist/js/modern/printBuildError.js +0 -40
  270. package/dist/js/modern/readTsConfig.js +0 -13
  271. package/dist/js/modern/removeSlash.js +0 -3
  272. package/dist/js/modern/runtimeExports.js +0 -52
  273. package/dist/js/modern/wait.js +0 -5
  274. package/dist/js/modern/watch.js +0 -43
  275. package/dist/js/node/FileSizeReporter.js +0 -175
  276. package/dist/js/node/alias.js +0 -97
  277. package/dist/js/node/applyOptionsChain.js +0 -37
  278. package/dist/js/node/chalk.js +0 -15
  279. package/dist/js/node/clearConsole.js +0 -14
  280. package/dist/js/node/compatRequire.js +0 -41
  281. package/dist/js/node/constants.js +0 -353
  282. package/dist/js/node/debug.js +0 -19
  283. package/dist/js/node/emptyDir.js +0 -18
  284. package/dist/js/node/ensureAbsolutePath.js +0 -20
  285. package/dist/js/node/findExists.js +0 -27
  286. package/dist/js/node/format.js +0 -141
  287. package/dist/js/node/generateMetaTags.js +0 -58
  288. package/dist/js/node/getBrowserslist.js +0 -17
  289. package/dist/js/node/getCacheIdentifier.js +0 -27
  290. package/dist/js/node/getEntryOptions.js +0 -35
  291. package/dist/js/node/getPackageManager.js +0 -51
  292. package/dist/js/node/getPort.js +0 -67
  293. package/dist/js/node/import.js +0 -19
  294. package/dist/js/node/index.js +0 -465
  295. package/dist/js/node/is/index.js +0 -150
  296. package/dist/js/node/is/node-env.js +0 -23
  297. package/dist/js/node/is/platform.js +0 -14
  298. package/dist/js/node/is/type.js +0 -48
  299. package/dist/js/node/logger.js +0 -162
  300. package/dist/js/node/monorepo.js +0 -118
  301. package/dist/js/node/nodeEnv.js +0 -45
  302. package/dist/js/node/path.js +0 -24
  303. package/dist/js/node/pkgUp.js +0 -15
  304. package/dist/js/node/prettyInstructions.js +0 -95
  305. package/dist/js/node/printBuildError.js +0 -52
  306. package/dist/js/node/readTsConfig.js +0 -28
  307. package/dist/js/node/removeSlash.js +0 -18
  308. package/dist/js/node/runtimeExports.js +0 -68
  309. package/dist/js/node/wait.js +0 -12
  310. package/dist/js/node/watch.js +0 -61
  311. package/dist/js/treeshaking/FileSizeReporter.js +0 -185
  312. package/dist/js/treeshaking/alias.js +0 -72
  313. package/dist/js/treeshaking/applyOptionsChain.js +0 -31
  314. package/dist/js/treeshaking/chalk.js +0 -2
  315. package/dist/js/treeshaking/clearConsole.js +0 -5
  316. package/dist/js/treeshaking/compatRequire.js +0 -29
  317. package/dist/js/treeshaking/constants.js +0 -333
  318. package/dist/js/treeshaking/debug.js +0 -10
  319. package/dist/js/treeshaking/emptyDir.js +0 -37
  320. package/dist/js/treeshaking/ensureAbsolutePath.js +0 -11
  321. package/dist/js/treeshaking/findExists.js +0 -33
  322. package/dist/js/treeshaking/format.js +0 -167
  323. package/dist/js/treeshaking/generateMetaTags.js +0 -55
  324. package/dist/js/treeshaking/getBrowserslist.js +0 -7
  325. package/dist/js/treeshaking/getCacheIdentifier.js +0 -35
  326. package/dist/js/treeshaking/getEntryOptions.js +0 -26
  327. package/dist/js/treeshaking/getPackageManager.js +0 -101
  328. package/dist/js/treeshaking/getPort.js +0 -103
  329. package/dist/js/treeshaking/import.js +0 -11
  330. package/dist/js/treeshaking/index.js +0 -34
  331. package/dist/js/treeshaking/is/index.js +0 -81
  332. package/dist/js/treeshaking/is/node-env.js +0 -13
  333. package/dist/js/treeshaking/is/platform.js +0 -6
  334. package/dist/js/treeshaking/is/type.js +0 -29
  335. package/dist/js/treeshaking/logger.js +0 -188
  336. package/dist/js/treeshaking/monorepo.js +0 -95
  337. package/dist/js/treeshaking/nodeEnv.js +0 -108
  338. package/dist/js/treeshaking/path.js +0 -11
  339. package/dist/js/treeshaking/pkgUp.js +0 -2
  340. package/dist/js/treeshaking/prettyInstructions.js +0 -100
  341. package/dist/js/treeshaking/printBuildError.js +0 -40
  342. package/dist/js/treeshaking/readTsConfig.js +0 -13
  343. package/dist/js/treeshaking/removeSlash.js +0 -9
  344. package/dist/js/treeshaking/runtimeExports.js +0 -61
  345. package/dist/js/treeshaking/wait.js +0 -8
  346. package/dist/js/treeshaking/watch.js +0 -112
  347. package/dist/types/applyOptionsChain.d.ts +0 -6
  348. package/dist/types/chalk.d.ts +0 -2
  349. package/dist/types/clearConsole.d.ts +0 -1
  350. package/dist/types/constants.d.ts +0 -219
  351. package/dist/types/emptyDir.d.ts +0 -1
  352. package/dist/types/is/platform.d.ts +0 -2
  353. package/dist/types/logger.d.ts +0 -63
@@ -0,0 +1,47 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.getPackageManager = void 0;
16
+ const os_1 = __importDefault(require("os"));
17
+ const path_1 = __importDefault(require("path"));
18
+ const fs_extra_1 = __importDefault(require("fs-extra"));
19
+ const nodeEnv_1 = require("./nodeEnv");
20
+ const MAX_TIMES = 5;
21
+ function getPackageManager(cwd = process.cwd()) {
22
+ return __awaiter(this, void 0, void 0, function* () {
23
+ let appDirectory = cwd;
24
+ let times = 0;
25
+ while (os_1.default.homedir() !== appDirectory && times < MAX_TIMES) {
26
+ times++;
27
+ if (fs_extra_1.default.existsSync(path_1.default.resolve(appDirectory, 'pnpm-lock.yaml'))) {
28
+ return 'pnpm';
29
+ }
30
+ if (fs_extra_1.default.existsSync(path_1.default.resolve(appDirectory, 'yarn.lock'))) {
31
+ return 'yarn';
32
+ }
33
+ if (fs_extra_1.default.existsSync(path_1.default.resolve(appDirectory, 'package-lock.json'))) {
34
+ return 'npm';
35
+ }
36
+ appDirectory = path_1.default.join(appDirectory, '..');
37
+ }
38
+ if (yield (0, nodeEnv_1.canUsePnpm)()) {
39
+ return 'pnpm';
40
+ }
41
+ if (yield (0, nodeEnv_1.canUseYarn)()) {
42
+ return 'yarn';
43
+ }
44
+ return 'npm';
45
+ });
46
+ }
47
+ exports.getPackageManager = getPackageManager;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Get available free port.
3
+ * @param port - Current port want to use.
4
+ * @param tryLimits - Maximum number of retries.
5
+ * @returns Available port number.
6
+ */
7
+ export declare const getPort: (port: string | number, tryLimits?: number) => Promise<number>;
@@ -0,0 +1,62 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.getPort = void 0;
16
+ const net_1 = __importDefault(require("net"));
17
+ const compiled_1 = require("./compiled");
18
+ const logger_1 = require("./logger");
19
+ /**
20
+ * Get available free port.
21
+ * @param port - Current port want to use.
22
+ * @param tryLimits - Maximum number of retries.
23
+ * @returns Available port number.
24
+ */
25
+ /* eslint-disable no-param-reassign, @typescript-eslint/no-loop-func */
26
+ const getPort = (port, tryLimits = 20) => __awaiter(void 0, void 0, void 0, function* () {
27
+ if (typeof port === 'string') {
28
+ port = parseInt(port, 10);
29
+ }
30
+ const original = port;
31
+ let found = false;
32
+ let attempts = 0;
33
+ while (!found && attempts <= tryLimits) {
34
+ try {
35
+ yield new Promise((resolve, reject) => {
36
+ const server = net_1.default.createServer();
37
+ server.unref();
38
+ server.on('error', reject);
39
+ server.listen({
40
+ port,
41
+ host: '0.0.0.0',
42
+ }, () => {
43
+ found = true;
44
+ server.close(resolve);
45
+ });
46
+ });
47
+ }
48
+ catch (e) {
49
+ if (e.code !== 'EADDRINUSE') {
50
+ throw e;
51
+ }
52
+ port++;
53
+ attempts++;
54
+ }
55
+ }
56
+ if (port !== original) {
57
+ logger_1.logger.info(compiled_1.chalk.red(`Something is already running on port ${original}. ${compiled_1.chalk.yellow(`Use port ${port} instead.`)}`));
58
+ }
59
+ return port;
60
+ });
61
+ exports.getPort = getPort;
62
+ /* eslint-enable no-param-reassign, @typescript-eslint/no-loop-func */
@@ -0,0 +1,5 @@
1
+ declare const lazy: (moduleName: string, requireFn: (id: string) => unknown) => any;
2
+ export { lazy as lazyImport };
3
+ export declare const Import: {
4
+ lazy: (moduleName: string, requireFn: (id: string) => unknown) => any;
5
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Import = exports.lazyImport = void 0;
4
+ // cover: https://rushstack.io/pages/api/node-core-library.import.lazy/
5
+ const lazy = (moduleName, requireFn) => {
6
+ const importLazyLocal = require('../compiled/import-lazy')(requireFn);
7
+ return importLazyLocal(moduleName);
8
+ };
9
+ exports.lazyImport = lazy;
10
+ exports.Import = { lazy };
@@ -1,5 +1,5 @@
1
1
  export * as fs from 'fs-extra';
2
- export * from './chalk';
2
+ export * from './compiled';
3
3
  export * from './format';
4
4
  export * from './FileSizeReporter';
5
5
  export * from './printBuildError';
@@ -12,7 +12,6 @@ export * from './constants';
12
12
  export * from './ensureAbsolutePath';
13
13
  export * from './getCacheIdentifier';
14
14
  export * from './clearConsole';
15
- export * from './pkgUp';
16
15
  export * from './applyOptionsChain';
17
16
  export * from './getBrowserslist';
18
17
  export * from './removeSlash';
@@ -30,4 +29,4 @@ export * from './import';
30
29
  export * from './watch';
31
30
  export * from './nodeEnv';
32
31
  export * from './wait';
33
- export * from './emptyDir';
32
+ export * from './emptyDir';
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.fs = void 0;
26
+ exports.fs = __importStar(require("fs-extra"));
27
+ __exportStar(require("./compiled"), exports);
28
+ __exportStar(require("./format"), exports);
29
+ __exportStar(require("./FileSizeReporter"), exports);
30
+ __exportStar(require("./printBuildError"), exports);
31
+ __exportStar(require("./debug"), exports);
32
+ __exportStar(require("./findExists"), exports);
33
+ __exportStar(require("./is"), exports);
34
+ __exportStar(require("./compatRequire"), exports);
35
+ __exportStar(require("./logger"), exports);
36
+ __exportStar(require("./constants"), exports);
37
+ __exportStar(require("./ensureAbsolutePath"), exports);
38
+ __exportStar(require("./getCacheIdentifier"), exports);
39
+ __exportStar(require("./clearConsole"), exports);
40
+ __exportStar(require("./applyOptionsChain"), exports);
41
+ __exportStar(require("./getBrowserslist"), exports);
42
+ __exportStar(require("./removeSlash"), exports);
43
+ __exportStar(require("./getEntryOptions"), exports);
44
+ __exportStar(require("./getPort"), exports);
45
+ __exportStar(require("./monorepo"), exports);
46
+ __exportStar(require("./getPackageManager"), exports);
47
+ __exportStar(require("./runtimeExports"), exports);
48
+ __exportStar(require("./readTsConfig"), exports);
49
+ __exportStar(require("./path"), exports);
50
+ __exportStar(require("./generateMetaTags"), exports);
51
+ __exportStar(require("./prettyInstructions"), exports);
52
+ __exportStar(require("./alias"), exports);
53
+ __exportStar(require("./import"), exports);
54
+ __exportStar(require("./watch"), exports);
55
+ __exportStar(require("./nodeEnv"), exports);
56
+ __exportStar(require("./wait"), exports);
57
+ __exportStar(require("./emptyDir"), exports);
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Check if the package name is in dependencies or devDependencies.
3
+ *
4
+ * @param appDirectory - Project root directory.
5
+ * @param name - Package name.
6
+ * @returns True if the name is in dependencies or devDependencies, false otherwise.
7
+ */
8
+ export declare const isDepExists: (appDirectory: string, name: string) => boolean;
9
+ /**
10
+ * Is typescript project.
11
+ *
12
+ * @param root - App directory.
13
+ * @returns Whether to use typescript.
14
+ */
15
+ export declare const isTypescript: (root: string) => boolean;
16
+ /**
17
+ * Is Empty object
18
+ *
19
+ * @param o - Any object.
20
+ * @returns Whether it is empty object.
21
+ */
22
+ export declare const isEmpty: (o: Record<string, unknown>) => boolean;
23
+ /**
24
+ * Is SSR project
25
+ *
26
+ * @param config - User config.
27
+ * @returns Whether to use server side render.
28
+ */
29
+ export declare const isSSR: (config: any) => boolean;
30
+ export declare const isUseSSRBundle: (config: any) => boolean;
31
+ export declare const isFastRefresh: () => boolean;
32
+ export * from './node-env';
33
+ export * from './platform';
34
+ export * from './type';
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ var __importDefault = (this && this.__importDefault) || function (mod) {
13
+ return (mod && mod.__esModule) ? mod : { "default": mod };
14
+ };
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.isFastRefresh = exports.isUseSSRBundle = exports.isSSR = exports.isEmpty = exports.isTypescript = exports.isDepExists = void 0;
17
+ const fs_1 = __importDefault(require("fs"));
18
+ const path_1 = __importDefault(require("path"));
19
+ const node_env_1 = require("./node-env");
20
+ /**
21
+ * Check if the package name is in dependencies or devDependencies.
22
+ *
23
+ * @param appDirectory - Project root directory.
24
+ * @param name - Package name.
25
+ * @returns True if the name is in dependencies or devDependencies, false otherwise.
26
+ */
27
+ const isDepExists = (appDirectory, name) => {
28
+ const json = require(path_1.default.resolve(appDirectory, './package.json'));
29
+ const { dependencies = {}, devDependencies = {} } = json;
30
+ return (dependencies.hasOwnProperty(name) || devDependencies.hasOwnProperty(name));
31
+ };
32
+ exports.isDepExists = isDepExists;
33
+ /**
34
+ * Is typescript project.
35
+ *
36
+ * @param root - App directory.
37
+ * @returns Whether to use typescript.
38
+ */
39
+ const isTypescript = (root) => fs_1.default.existsSync(path_1.default.resolve(root, './tsconfig.json'));
40
+ exports.isTypescript = isTypescript;
41
+ /**
42
+ * Is Empty object
43
+ *
44
+ * @param o - Any object.
45
+ * @returns Whether it is empty object.
46
+ */
47
+ const isEmpty = (o) => Object.entries(o).length === 0 && o.constructor === Object;
48
+ exports.isEmpty = isEmpty;
49
+ /**
50
+ * Is SSR project
51
+ *
52
+ * @param config - User config.
53
+ * @returns Whether to use server side render.
54
+ */
55
+ const isSSR = (config) => {
56
+ const { server } = config;
57
+ if (server === null || server === void 0 ? void 0 : server.ssr) {
58
+ return true;
59
+ }
60
+ if ((server === null || server === void 0 ? void 0 : server.ssrByEntries) && !(0, exports.isEmpty)(server.ssrByEntries)) {
61
+ for (const name of Object.keys(server.ssrByEntries)) {
62
+ if (server.ssrByEntries[name]) {
63
+ return true;
64
+ }
65
+ }
66
+ }
67
+ return false;
68
+ };
69
+ exports.isSSR = isSSR;
70
+ const isUseSSRBundle = (config) => {
71
+ const { output } = config;
72
+ if (output === null || output === void 0 ? void 0 : output.ssg) {
73
+ return true;
74
+ }
75
+ return (0, exports.isSSR)(config);
76
+ };
77
+ exports.isUseSSRBundle = isUseSSRBundle;
78
+ const isFastRefresh = () => (0, node_env_1.isDev)() && process.env.FAST_REFRESH !== 'false';
79
+ exports.isFastRefresh = isFastRefresh;
80
+ __exportStar(require("./node-env"), exports);
81
+ __exportStar(require("./platform"), exports);
82
+ __exportStar(require("./type"), exports);
@@ -0,0 +1,4 @@
1
+ export declare const isDev: () => boolean;
2
+ export declare const isProd: () => boolean;
3
+ export declare const isTest: () => boolean;
4
+ export declare const isProdProfile: () => boolean;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isProdProfile = exports.isTest = exports.isProd = exports.isDev = void 0;
4
+ const isDev = () => process.env.NODE_ENV === 'development';
5
+ exports.isDev = isDev;
6
+ const isProd = () => process.env.NODE_ENV === 'production';
7
+ exports.isProd = isProd;
8
+ const isTest = () => process.env.NODE_ENV === 'test';
9
+ exports.isTest = isTest;
10
+ // Variable used for enabling profiling in Production.
11
+ const isProdProfile = () => (0, exports.isProd)() && process.argv.includes('--profile');
12
+ exports.isProdProfile = isProdProfile;
@@ -0,0 +1,2 @@
1
+ export declare const isNodeJS: () => boolean;
2
+ export declare const isBrowser: () => boolean;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isBrowser = exports.isNodeJS = void 0;
4
+ const isNodeJS = () => typeof process !== 'undefined' &&
5
+ process.versions != null &&
6
+ process.versions.node != null &&
7
+ process.versions.electron == null;
8
+ exports.isNodeJS = isNodeJS;
9
+ const isBrowser = () => typeof window !== 'undefined';
10
+ exports.isBrowser = isBrowser;
@@ -0,0 +1,8 @@
1
+ export declare function isString(str: any): str is string;
2
+ export declare function isUndefined(obj: any): obj is undefined;
3
+ export declare function isArray(obj: unknown): obj is any[];
4
+ export declare function isFunction(func: any): func is Function;
5
+ export declare function isObject(obj: unknown): obj is Record<string, any>;
6
+ export declare function isPlainObject(obj: unknown): obj is Record<string, any>;
7
+ export declare function isPromise(obj: any): obj is Promise<any>;
8
+ export declare function isRegExp(obj: any): obj is RegExp;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isRegExp = exports.isPromise = exports.isPlainObject = exports.isObject = exports.isFunction = exports.isArray = exports.isUndefined = exports.isString = void 0;
4
+ function isString(str) {
5
+ return typeof str === 'string';
6
+ }
7
+ exports.isString = isString;
8
+ function isUndefined(obj) {
9
+ return typeof obj === 'undefined';
10
+ }
11
+ exports.isUndefined = isUndefined;
12
+ function isArray(obj) {
13
+ return Array.isArray(obj);
14
+ }
15
+ exports.isArray = isArray;
16
+ // eslint-disable-next-line @typescript-eslint/ban-types
17
+ function isFunction(func) {
18
+ return typeof func === 'function';
19
+ }
20
+ exports.isFunction = isFunction;
21
+ function isObject(obj) {
22
+ return obj !== null && typeof obj === 'object';
23
+ }
24
+ exports.isObject = isObject;
25
+ function isPlainObject(obj) {
26
+ return (isObject(obj) && Object.prototype.toString.call(obj) === '[object Object]');
27
+ }
28
+ exports.isPlainObject = isPlainObject;
29
+ function isPromise(obj) {
30
+ return (Boolean(obj) &&
31
+ (typeof obj === 'object' || typeof obj === 'function') &&
32
+ typeof obj.then === 'function');
33
+ }
34
+ exports.isPromise = isPromise;
35
+ function isRegExp(obj) {
36
+ return Object.prototype.toString.call(obj) === '[object RegExp]';
37
+ }
38
+ exports.isRegExp = isRegExp;
@@ -0,0 +1,63 @@
1
+ import { Color } from '../compiled/chalk';
2
+ declare type LogLevel = 'debug' | 'info' | 'warn' | 'error';
3
+ interface LoggerConfiguration {
4
+ color?: typeof Color;
5
+ label?: string;
6
+ level?: LogLevel;
7
+ }
8
+ interface InstanceConfiguration {
9
+ displayLabel?: boolean;
10
+ underlineLabel?: boolean;
11
+ uppercaseLabel?: boolean;
12
+ }
13
+ interface ConstructorOptions {
14
+ config?: InstanceConfiguration;
15
+ types?: Record<string, LoggerConfiguration>;
16
+ }
17
+ declare type LoggerFunction = (message?: number | string | Error, ...args: any[]) => void;
18
+ declare const LOG_TYPES: {
19
+ error: {
20
+ color: string;
21
+ label: string;
22
+ level: string;
23
+ };
24
+ info: {
25
+ color: string;
26
+ label: string;
27
+ level: string;
28
+ };
29
+ warn: {
30
+ color: string;
31
+ label: string;
32
+ level: string;
33
+ };
34
+ debug: {
35
+ color: string;
36
+ label: string;
37
+ level: string;
38
+ };
39
+ log: {
40
+ level: string;
41
+ };
42
+ };
43
+ declare class Logger {
44
+ private readonly logCount;
45
+ private history;
46
+ private readonly config;
47
+ private readonly types;
48
+ private readonly longestLabel;
49
+ [key: string]: any;
50
+ constructor(options?: ConstructorOptions);
51
+ private retainLog;
52
+ private _log;
53
+ private getLongestLabel;
54
+ private get longestUnderlinedLabel();
55
+ getRetainedLogs(type: string): string[];
56
+ clearRetainedLogs(type: string): void;
57
+ }
58
+ declare type LoggerInterface = {
59
+ [key in keyof typeof LOG_TYPES]: LoggerFunction;
60
+ };
61
+ declare const logger: Logger & LoggerInterface;
62
+ export { logger };
63
+ export type { LoggerInterface };
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.logger = void 0;
7
+ const chalk_1 = __importDefault(require("../compiled/chalk"));
8
+ const { grey, underline } = chalk_1.default;
9
+ const LOG_TYPES = {
10
+ error: {
11
+ color: 'red',
12
+ label: 'error',
13
+ level: 'error',
14
+ },
15
+ info: {
16
+ color: 'blue',
17
+ label: 'info',
18
+ level: 'info',
19
+ },
20
+ warn: {
21
+ color: 'yellow',
22
+ label: 'warning',
23
+ level: 'warn',
24
+ },
25
+ debug: {
26
+ color: 'red',
27
+ label: 'debug',
28
+ level: 'debug',
29
+ },
30
+ log: { level: 'info' },
31
+ };
32
+ const DEFAULT_CONFIG = {
33
+ displayLabel: true,
34
+ underlineLabel: true,
35
+ uppercaseLabel: false,
36
+ };
37
+ class Logger {
38
+ constructor(options = {}) {
39
+ this.logCount = 200;
40
+ this.history = {};
41
+ this.config = Object.assign(Object.assign({}, DEFAULT_CONFIG), (options.config || {}));
42
+ this.types = Object.assign(Object.assign({}, LOG_TYPES), (options.types || {}));
43
+ this.longestLabel = this.getLongestLabel();
44
+ Object.keys(this.types).forEach(type => {
45
+ this[type] = this._log.bind(this, type);
46
+ });
47
+ }
48
+ retainLog(type, message) {
49
+ if (!this.history[type]) {
50
+ this.history[type] = [];
51
+ }
52
+ this.history[type].push(message);
53
+ while (this.history[type].length > this.logCount) {
54
+ this.history[type].shift();
55
+ }
56
+ }
57
+ // eslint-disable-next-line max-statements
58
+ _log(type, message) {
59
+ if (message === undefined) {
60
+ // eslint-disable-next-line no-console
61
+ console.log();
62
+ return;
63
+ }
64
+ let label = '';
65
+ let text = '';
66
+ const logType = this.types[type];
67
+ if (this.config.displayLabel && logType.label) {
68
+ label = this.config.uppercaseLabel
69
+ ? logType.label.toUpperCase()
70
+ : logType.label;
71
+ if (this.config.underlineLabel) {
72
+ label = underline(label).padEnd(this.longestUnderlinedLabel.length + 1);
73
+ }
74
+ else {
75
+ label = label.padEnd(this.longestLabel.length + 1);
76
+ }
77
+ label = logType.color ? chalk_1.default[logType.color](label) : label;
78
+ }
79
+ if (message instanceof Error) {
80
+ if (message.stack) {
81
+ const [name, ...rest] = message.stack.split('\n');
82
+ text = `${name}\n${grey(rest.join('\n'))}`;
83
+ }
84
+ else {
85
+ text = message.message;
86
+ }
87
+ }
88
+ else {
89
+ text = `${message}`;
90
+ }
91
+ // only retain logs of warn/error level
92
+ if (logType.level === 'warn' || logType.level === 'error') {
93
+ // retain log text without label
94
+ this.retainLog(type, text);
95
+ }
96
+ const log = label.length > 0 ? `${label} ${text}` : text;
97
+ // eslint-disable-next-line no-console
98
+ console.log(log);
99
+ }
100
+ getLongestLabel() {
101
+ let longestLabel = '';
102
+ Object.keys(this.types).forEach(type => {
103
+ const { label = '' } = this.types[type];
104
+ if (label.length > longestLabel.length) {
105
+ longestLabel = label;
106
+ }
107
+ });
108
+ return longestLabel;
109
+ }
110
+ get longestUnderlinedLabel() {
111
+ return underline(this.longestLabel);
112
+ }
113
+ getRetainedLogs(type) {
114
+ return this.history[type] || [];
115
+ }
116
+ clearRetainedLogs(type) {
117
+ if (type) {
118
+ if (this.history[type]) {
119
+ this.history[type] = [];
120
+ }
121
+ }
122
+ else {
123
+ this.history = {};
124
+ }
125
+ }
126
+ }
127
+ const logger = new Logger();
128
+ exports.logger = logger;
129
+ logger.Logger = Logger;
@@ -0,0 +1,11 @@
1
+ import path from 'path';
2
+ export declare const isLerna: (root: string) => boolean;
3
+ export declare const isYarnWorkspaces: (root: string) => boolean;
4
+ export declare const isPnpmWorkspaces: (root: string) => boolean;
5
+ export declare const isMonorepo: (root: string) => boolean;
6
+ export declare const isModernjsMonorepo: (root: string) => boolean;
7
+ export declare const findMonorepoRoot: (appDirectory: string, maxDepth?: number) => string | undefined;
8
+ export declare const getMonorepoPackages: (root: string) => {
9
+ name: string;
10
+ path: string;
11
+ }[];