mathjs 10.0.0 → 10.6.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1084) hide show
  1. package/CONTRIBUTING.md +14 -10
  2. package/HISTORY.md +209 -0
  3. package/NOTICE +1 -1
  4. package/README.md +23 -3
  5. package/bin/cli.js +1 -1
  6. package/lib/browser/math.js +9 -8
  7. package/lib/browser/math.js.map +1 -1
  8. package/lib/cjs/core/create.js +4 -4
  9. package/lib/cjs/core/function/import.js +3 -3
  10. package/lib/cjs/core/function/typed.js +2 -2
  11. package/lib/cjs/defaultInstance.js +3 -3
  12. package/lib/cjs/entry/allFactoriesAny.js +1 -1
  13. package/lib/cjs/entry/allFactoriesNumber.js +1 -1
  14. package/lib/cjs/entry/configReadonly.js +1 -1
  15. package/lib/cjs/entry/dependenciesAny/dependenciesCeil.generated.js +6 -0
  16. package/lib/cjs/entry/dependenciesAny/dependenciesCumSum.generated.js +26 -0
  17. package/lib/cjs/entry/dependenciesAny/dependenciesCumSumTransform.generated.js +26 -0
  18. package/lib/cjs/entry/dependenciesAny/dependenciesDet.generated.js +5 -2
  19. package/lib/cjs/entry/dependenciesAny/dependenciesFft.generated.js +41 -0
  20. package/lib/cjs/entry/dependenciesAny/dependenciesFix.generated.js +9 -0
  21. package/lib/cjs/entry/dependenciesAny/dependenciesFloor.generated.js +6 -0
  22. package/lib/cjs/entry/dependenciesAny/dependenciesIfft.generated.js +29 -0
  23. package/lib/cjs/entry/dependenciesAny/dependenciesIndexNode.generated.js +0 -3
  24. package/lib/cjs/entry/dependenciesAny/dependenciesIntersect.generated.js +6 -0
  25. package/lib/cjs/entry/dependenciesAny/dependenciesInvmod.generated.js +41 -0
  26. package/lib/cjs/entry/dependenciesAny/dependenciesLeafCount.generated.js +23 -0
  27. package/lib/cjs/entry/dependenciesAny/dependenciesLgamma.generated.js +23 -0
  28. package/lib/cjs/entry/dependenciesAny/dependenciesPinv.generated.js +53 -0
  29. package/lib/cjs/entry/dependenciesAny/dependenciesPow.generated.js +3 -0
  30. package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +18 -0
  31. package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +32 -0
  32. package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +21 -0
  33. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +65 -0
  34. package/lib/cjs/entry/dependenciesAny/dependenciesStirlingS2.generated.js +6 -0
  35. package/lib/cjs/entry/dependenciesAny/dependenciesSymbolicEqual.generated.js +29 -0
  36. package/lib/cjs/entry/dependenciesAny.generated.js +88 -0
  37. package/lib/cjs/entry/dependenciesNumber/dependenciesCeil.generated.js +3 -0
  38. package/lib/cjs/entry/dependenciesNumber/dependenciesCumSum.generated.js +26 -0
  39. package/lib/cjs/entry/dependenciesNumber/dependenciesCumSumTransform.generated.js +26 -0
  40. package/lib/cjs/entry/dependenciesNumber/dependenciesFix.generated.js +6 -0
  41. package/lib/cjs/entry/dependenciesNumber/dependenciesFloor.generated.js +3 -0
  42. package/lib/cjs/entry/dependenciesNumber/dependenciesIndexNode.generated.js +0 -3
  43. package/lib/cjs/entry/dependenciesNumber/dependenciesLgamma.generated.js +20 -0
  44. package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +18 -0
  45. package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +32 -0
  46. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +21 -0
  47. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +65 -0
  48. package/lib/cjs/entry/dependenciesNumber/dependenciesStirlingS2.generated.js +3 -0
  49. package/lib/cjs/entry/dependenciesNumber.generated.js +40 -0
  50. package/lib/cjs/entry/impureFunctionsAny.generated.js +164 -98
  51. package/lib/cjs/entry/impureFunctionsNumber.generated.js +117 -69
  52. package/lib/cjs/entry/pureFunctionsAny.generated.js +418 -351
  53. package/lib/cjs/entry/pureFunctionsNumber.generated.js +80 -65
  54. package/lib/cjs/expression/Help.js +4 -0
  55. package/lib/cjs/expression/Parser.js +1 -1
  56. package/lib/cjs/expression/embeddedDocs/construction/fraction.js +3 -3
  57. package/lib/cjs/expression/embeddedDocs/core/typed.js +1 -1
  58. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +265 -233
  59. package/lib/cjs/expression/embeddedDocs/function/algebra/leafCount.js +15 -0
  60. package/lib/cjs/expression/embeddedDocs/function/algebra/resolve.js +16 -0
  61. package/lib/cjs/expression/embeddedDocs/function/algebra/simplify.js +1 -1
  62. package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +15 -0
  63. package/lib/cjs/expression/embeddedDocs/function/algebra/symbolicEqual.js +15 -0
  64. package/lib/cjs/expression/embeddedDocs/function/arithmetic/invmod.js +15 -0
  65. package/lib/cjs/expression/embeddedDocs/function/arithmetic/pow.js +1 -1
  66. package/lib/cjs/expression/embeddedDocs/function/matrix/fft.js +15 -0
  67. package/lib/cjs/expression/embeddedDocs/function/matrix/forEach.js +1 -1
  68. package/lib/cjs/expression/embeddedDocs/function/matrix/ifft.js +15 -0
  69. package/lib/cjs/expression/embeddedDocs/function/matrix/pinv.js +15 -0
  70. package/lib/cjs/expression/embeddedDocs/function/matrix/subset.js +2 -2
  71. package/lib/cjs/expression/embeddedDocs/function/probability/lgamma.js +15 -0
  72. package/lib/cjs/expression/embeddedDocs/function/statistics/cumsum.js +15 -0
  73. package/lib/cjs/expression/node/FunctionNode.js +104 -63
  74. package/lib/cjs/expression/node/IndexNode.js +27 -62
  75. package/lib/cjs/expression/node/Node.js +3 -3
  76. package/lib/cjs/expression/node/ObjectNode.js +1 -1
  77. package/lib/cjs/expression/node/utils/access.js +1 -1
  78. package/lib/cjs/expression/node/utils/assign.js +1 -1
  79. package/lib/cjs/expression/parse.js +25 -21
  80. package/lib/cjs/expression/transform/cumsum.transform.js +57 -0
  81. package/lib/cjs/expression/transform/sum.transform.js +1 -1
  82. package/lib/cjs/factoriesAny.js +88 -0
  83. package/lib/cjs/factoriesNumber.js +77 -28
  84. package/lib/cjs/function/algebra/decomposition/qr.js +1 -1
  85. package/lib/cjs/function/algebra/derivative.js +1 -1
  86. package/lib/cjs/function/algebra/leafCount.js +66 -0
  87. package/lib/cjs/function/algebra/rationalize.js +36 -39
  88. package/lib/cjs/function/algebra/resolve.js +106 -0
  89. package/lib/cjs/function/algebra/simplify/simplifyConstant.js +226 -32
  90. package/lib/cjs/function/algebra/simplify/util.js +171 -33
  91. package/lib/cjs/function/algebra/simplify.js +619 -191
  92. package/lib/cjs/function/algebra/{simplify/simplifyCore.js → simplifyCore.js} +84 -32
  93. package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
  94. package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
  95. package/lib/cjs/function/algebra/symbolicEqual.js +88 -0
  96. package/lib/cjs/function/arithmetic/ceil.js +76 -40
  97. package/lib/cjs/function/arithmetic/fix.js +54 -16
  98. package/lib/cjs/function/arithmetic/floor.js +80 -38
  99. package/lib/cjs/function/arithmetic/invmod.js +73 -0
  100. package/lib/cjs/function/arithmetic/norm.js +1 -1
  101. package/lib/cjs/function/arithmetic/nthRoot.js +1 -3
  102. package/lib/cjs/function/arithmetic/pow.js +25 -6
  103. package/lib/cjs/function/arithmetic/round.js +27 -47
  104. package/lib/cjs/function/arithmetic/sign.js +4 -0
  105. package/lib/cjs/function/combinatorics/stirlingS2.js +42 -12
  106. package/lib/cjs/function/geometry/intersect.js +12 -13
  107. package/lib/cjs/function/matrix/det.js +37 -31
  108. package/lib/cjs/function/matrix/eigs/complexEigs.js +44 -33
  109. package/lib/cjs/function/matrix/fft.js +128 -0
  110. package/lib/cjs/function/matrix/ifft.js +49 -0
  111. package/lib/cjs/function/matrix/map.js +53 -15
  112. package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
  113. package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
  114. package/lib/cjs/function/matrix/pinv.js +223 -0
  115. package/lib/cjs/function/matrix/subset.js +15 -5
  116. package/lib/cjs/function/probability/gamma.js +28 -30
  117. package/lib/cjs/function/probability/lgamma.js +146 -0
  118. package/lib/cjs/function/probability/util/seededRNG.js +2 -2
  119. package/lib/cjs/function/relational/compareNatural.js +6 -6
  120. package/lib/cjs/function/statistics/cumsum.js +151 -0
  121. package/lib/cjs/function/statistics/sum.js +1 -1
  122. package/lib/cjs/function/string/format.js +4 -1
  123. package/lib/cjs/header.js +3 -3
  124. package/lib/cjs/plain/bignumber/index.js +1 -1
  125. package/lib/cjs/plain/number/arithmetic.js +17 -31
  126. package/lib/cjs/plain/number/combinations.js +18 -6
  127. package/lib/cjs/plain/number/probability.js +43 -3
  128. package/lib/cjs/type/bignumber/BigNumber.js +2 -2
  129. package/lib/cjs/type/bignumber/function/bignumber.js +1 -1
  130. package/lib/cjs/type/boolean.js +2 -2
  131. package/lib/cjs/type/complex/Complex.js +14 -14
  132. package/lib/cjs/type/complex/function/complex.js +1 -1
  133. package/lib/cjs/type/fraction/Fraction.js +6 -6
  134. package/lib/cjs/type/fraction/function/fraction.js +21 -9
  135. package/lib/cjs/type/matrix/DenseMatrix.js +5 -5
  136. package/lib/cjs/type/matrix/SparseMatrix.js +21 -17
  137. package/lib/cjs/type/matrix/function/sparse.js +6 -0
  138. package/lib/cjs/type/number.js +1 -1
  139. package/lib/cjs/type/string.js +2 -2
  140. package/lib/cjs/type/unit/Unit.js +76 -88
  141. package/lib/cjs/utils/collection.js +3 -27
  142. package/lib/cjs/utils/customs.js +2 -2
  143. package/lib/cjs/utils/emitter.js +1 -1
  144. package/lib/cjs/utils/function.js +2 -2
  145. package/lib/cjs/utils/is.js +6 -6
  146. package/lib/cjs/utils/latex.js +9 -3
  147. package/lib/cjs/utils/lruQueue.js +2 -4
  148. package/lib/cjs/utils/map.js +3 -3
  149. package/lib/cjs/utils/number.js +18 -3
  150. package/lib/cjs/utils/object.js +5 -3
  151. package/lib/cjs/utils/snapshot.js +8 -8
  152. package/lib/cjs/utils/string.js +19 -6
  153. package/lib/cjs/utils/switch.js +31 -0
  154. package/lib/cjs/version.js +1 -1
  155. package/lib/esm/entry/dependenciesAny/dependenciesCeil.generated.js +4 -0
  156. package/lib/esm/entry/dependenciesAny/dependenciesCumSum.generated.js +14 -0
  157. package/lib/esm/entry/dependenciesAny/dependenciesCumSumTransform.generated.js +14 -0
  158. package/lib/esm/entry/dependenciesAny/dependenciesDet.generated.js +4 -2
  159. package/lib/esm/entry/dependenciesAny/dependenciesFft.generated.js +24 -0
  160. package/lib/esm/entry/dependenciesAny/dependenciesFix.generated.js +6 -0
  161. package/lib/esm/entry/dependenciesAny/dependenciesFloor.generated.js +4 -0
  162. package/lib/esm/entry/dependenciesAny/dependenciesIfft.generated.js +16 -0
  163. package/lib/esm/entry/dependenciesAny/dependenciesIndexNode.generated.js +0 -2
  164. package/lib/esm/entry/dependenciesAny/dependenciesIntersect.generated.js +4 -0
  165. package/lib/esm/entry/dependenciesAny/dependenciesInvmod.generated.js +24 -0
  166. package/lib/esm/entry/dependenciesAny/dependenciesLeafCount.generated.js +12 -0
  167. package/lib/esm/entry/dependenciesAny/dependenciesLgamma.generated.js +12 -0
  168. package/lib/esm/entry/dependenciesAny/dependenciesPinv.generated.js +32 -0
  169. package/lib/esm/entry/dependenciesAny/dependenciesPow.generated.js +2 -0
  170. package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +12 -0
  171. package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +18 -0
  172. package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +14 -0
  173. package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +40 -0
  174. package/lib/esm/entry/dependenciesAny/dependenciesStirlingS2.generated.js +4 -0
  175. package/lib/esm/entry/dependenciesAny/dependenciesSymbolicEqual.generated.js +16 -0
  176. package/lib/esm/entry/dependenciesAny.generated.js +11 -0
  177. package/lib/esm/entry/dependenciesNumber/dependenciesCeil.generated.js +2 -0
  178. package/lib/esm/entry/dependenciesNumber/dependenciesCumSum.generated.js +14 -0
  179. package/lib/esm/entry/dependenciesNumber/dependenciesCumSumTransform.generated.js +14 -0
  180. package/lib/esm/entry/dependenciesNumber/dependenciesFix.generated.js +4 -0
  181. package/lib/esm/entry/dependenciesNumber/dependenciesFloor.generated.js +2 -0
  182. package/lib/esm/entry/dependenciesNumber/dependenciesIndexNode.generated.js +0 -2
  183. package/lib/esm/entry/dependenciesNumber/dependenciesLgamma.generated.js +10 -0
  184. package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +12 -0
  185. package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +18 -0
  186. package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +14 -0
  187. package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +40 -0
  188. package/lib/esm/entry/dependenciesNumber/dependenciesStirlingS2.generated.js +2 -0
  189. package/lib/esm/entry/dependenciesNumber.generated.js +5 -0
  190. package/lib/esm/entry/impureFunctionsAny.generated.js +150 -88
  191. package/lib/esm/entry/impureFunctionsNumber.generated.js +107 -61
  192. package/lib/esm/entry/pureFunctionsAny.generated.js +331 -268
  193. package/lib/esm/entry/pureFunctionsNumber.generated.js +56 -41
  194. package/lib/esm/expression/Help.js +4 -0
  195. package/lib/esm/expression/embeddedDocs/construction/fraction.js +3 -3
  196. package/lib/esm/expression/embeddedDocs/core/typed.js +1 -1
  197. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +233 -212
  198. package/lib/esm/expression/embeddedDocs/function/algebra/leafCount.js +8 -0
  199. package/lib/esm/expression/embeddedDocs/function/algebra/resolve.js +9 -0
  200. package/lib/esm/expression/embeddedDocs/function/algebra/simplify.js +1 -1
  201. package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +8 -0
  202. package/lib/esm/expression/embeddedDocs/function/algebra/symbolicEqual.js +8 -0
  203. package/lib/esm/expression/embeddedDocs/function/arithmetic/invmod.js +8 -0
  204. package/lib/esm/expression/embeddedDocs/function/arithmetic/pow.js +1 -1
  205. package/lib/esm/expression/embeddedDocs/function/matrix/fft.js +8 -0
  206. package/lib/esm/expression/embeddedDocs/function/matrix/forEach.js +1 -1
  207. package/lib/esm/expression/embeddedDocs/function/matrix/ifft.js +8 -0
  208. package/lib/esm/expression/embeddedDocs/function/matrix/pinv.js +8 -0
  209. package/lib/esm/expression/embeddedDocs/function/matrix/subset.js +2 -2
  210. package/lib/esm/expression/embeddedDocs/function/probability/lgamma.js +8 -0
  211. package/lib/esm/expression/embeddedDocs/function/statistics/cumsum.js +8 -0
  212. package/lib/esm/expression/node/BlockNode.js +3 -3
  213. package/lib/esm/expression/node/FunctionNode.js +93 -56
  214. package/lib/esm/expression/node/IndexNode.js +22 -59
  215. package/lib/esm/expression/parse.js +17 -13
  216. package/lib/esm/expression/transform/cumsum.transform.js +48 -0
  217. package/lib/esm/expression/transform/sum.transform.js +1 -1
  218. package/lib/esm/factoriesAny.js +11 -0
  219. package/lib/esm/factoriesNumber.js +25 -8
  220. package/lib/esm/function/algebra/decomposition/qr.js +2 -2
  221. package/lib/esm/function/algebra/derivative.js +1 -1
  222. package/lib/esm/function/algebra/leafCount.js +59 -0
  223. package/lib/esm/function/algebra/rationalize.js +36 -38
  224. package/lib/esm/function/algebra/resolve.js +95 -0
  225. package/lib/esm/function/algebra/simplify/simplifyConstant.js +200 -32
  226. package/lib/esm/function/algebra/simplify/util.js +170 -34
  227. package/lib/esm/function/algebra/simplify.js +614 -186
  228. package/lib/esm/function/algebra/{simplify/simplifyCore.js → simplifyCore.js} +76 -32
  229. package/lib/esm/function/algebra/solver/utils/solveValidation.js +5 -5
  230. package/lib/esm/function/algebra/sparse/csChol.js +2 -2
  231. package/lib/esm/function/algebra/sparse/csLeaf.js +2 -2
  232. package/lib/esm/function/algebra/sparse/csLu.js +3 -3
  233. package/lib/esm/function/algebra/symbolicEqual.js +80 -0
  234. package/lib/esm/function/arithmetic/ceil.js +61 -24
  235. package/lib/esm/function/arithmetic/fix.js +51 -13
  236. package/lib/esm/function/arithmetic/floor.js +65 -23
  237. package/lib/esm/function/arithmetic/invmod.js +57 -0
  238. package/lib/esm/function/arithmetic/nthRoot.js +1 -3
  239. package/lib/esm/function/arithmetic/nthRoots.js +1 -1
  240. package/lib/esm/function/arithmetic/pow.js +25 -6
  241. package/lib/esm/function/arithmetic/round.js +25 -43
  242. package/lib/esm/function/arithmetic/sign.js +4 -0
  243. package/lib/esm/function/combinatorics/stirlingS2.js +41 -12
  244. package/lib/esm/function/geometry/intersect.js +12 -12
  245. package/lib/esm/function/matrix/det.js +35 -31
  246. package/lib/esm/function/matrix/eigs/complexEigs.js +36 -25
  247. package/lib/esm/function/matrix/expm.js +2 -2
  248. package/lib/esm/function/matrix/fft.js +104 -0
  249. package/lib/esm/function/matrix/ifft.js +38 -0
  250. package/lib/esm/function/matrix/map.js +53 -15
  251. package/lib/esm/function/matrix/pinv.js +205 -0
  252. package/lib/esm/function/matrix/subset.js +15 -5
  253. package/lib/esm/function/probability/gamma.js +29 -31
  254. package/lib/esm/function/probability/lgamma.js +137 -0
  255. package/lib/esm/function/statistics/cumsum.js +139 -0
  256. package/lib/esm/function/statistics/sum.js +1 -1
  257. package/lib/esm/function/string/bin.js +1 -1
  258. package/lib/esm/function/string/format.js +4 -1
  259. package/lib/esm/function/string/hex.js +1 -1
  260. package/lib/esm/function/string/oct.js +1 -1
  261. package/lib/esm/header.js +1 -1
  262. package/lib/esm/plain/number/arithmetic.js +16 -20
  263. package/lib/esm/plain/number/combinations.js +18 -6
  264. package/lib/esm/plain/number/probability.js +33 -1
  265. package/lib/esm/type/complex/Complex.js +2 -2
  266. package/lib/esm/type/fraction/function/fraction.js +20 -8
  267. package/lib/esm/type/matrix/DenseMatrix.js +2 -2
  268. package/lib/esm/type/matrix/FibonacciHeap.js +2 -2
  269. package/lib/esm/type/matrix/SparseMatrix.js +32 -28
  270. package/lib/esm/type/matrix/function/sparse.js +6 -0
  271. package/lib/esm/type/unit/Unit.js +76 -88
  272. package/lib/esm/utils/collection.js +1 -26
  273. package/lib/esm/utils/latex.js +6 -0
  274. package/lib/esm/utils/lruQueue.js +1 -2
  275. package/lib/esm/utils/number.js +17 -5
  276. package/lib/esm/utils/object.js +3 -1
  277. package/lib/esm/utils/snapshot.js +2 -2
  278. package/lib/esm/utils/string.js +18 -4
  279. package/lib/esm/utils/switch.js +24 -0
  280. package/lib/esm/version.js +1 -1
  281. package/package.json +52 -33
  282. package/types/index.d.ts +2741 -1306
  283. package/types/index.ts +1656 -242
  284. package/types/tsconfig.json +2 -1
  285. package/docs/command_line_interface.md +0 -87
  286. package/docs/core/chaining.md +0 -41
  287. package/docs/core/configuration.md +0 -144
  288. package/docs/core/extension.md +0 -263
  289. package/docs/core/index.md +0 -21
  290. package/docs/core/serialization.md +0 -50
  291. package/docs/custom_bundling.md +0 -116
  292. package/docs/datatypes/bignumbers.md +0 -102
  293. package/docs/datatypes/complex_numbers.md +0 -168
  294. package/docs/datatypes/fractions.md +0 -75
  295. package/docs/datatypes/index.md +0 -67
  296. package/docs/datatypes/matrices.md +0 -358
  297. package/docs/datatypes/numbers.md +0 -106
  298. package/docs/datatypes/units.md +0 -444
  299. package/docs/expressions/algebra.md +0 -83
  300. package/docs/expressions/customization.md +0 -379
  301. package/docs/expressions/expression_trees.md +0 -700
  302. package/docs/expressions/html_classes.md +0 -38
  303. package/docs/expressions/index.md +0 -21
  304. package/docs/expressions/parsing.md +0 -224
  305. package/docs/expressions/security.md +0 -89
  306. package/docs/expressions/syntax.md +0 -670
  307. package/docs/getting_started.md +0 -124
  308. package/docs/index.md +0 -39
  309. package/docs/reference/classes/densematrix.md +0 -247
  310. package/docs/reference/classes/fibonacciheap.md +0 -70
  311. package/docs/reference/classes/matrixindex.md +0 -133
  312. package/docs/reference/classes/matrixrange.md +0 -158
  313. package/docs/reference/classes/resultset.md +0 -47
  314. package/docs/reference/classes/sparsematrix.md +0 -245
  315. package/docs/reference/classes/unit.md +0 -242
  316. package/docs/reference/classes.md +0 -86
  317. package/docs/reference/constants.md +0 -29
  318. package/docs/reference/functions/abs.md +0 -40
  319. package/docs/reference/functions/acos.md +0 -43
  320. package/docs/reference/functions/acosh.md +0 -41
  321. package/docs/reference/functions/acot.md +0 -42
  322. package/docs/reference/functions/acoth.md +0 -40
  323. package/docs/reference/functions/acsc.md +0 -43
  324. package/docs/reference/functions/acsch.md +0 -40
  325. package/docs/reference/functions/add.md +0 -53
  326. package/docs/reference/functions/and.md +0 -47
  327. package/docs/reference/functions/apply.md +0 -50
  328. package/docs/reference/functions/arg.md +0 -47
  329. package/docs/reference/functions/asec.md +0 -43
  330. package/docs/reference/functions/asech.md +0 -40
  331. package/docs/reference/functions/asin.md +0 -43
  332. package/docs/reference/functions/asinh.md +0 -40
  333. package/docs/reference/functions/atan.md +0 -43
  334. package/docs/reference/functions/atan2.md +0 -50
  335. package/docs/reference/functions/atanh.md +0 -40
  336. package/docs/reference/functions/bellNumbers.md +0 -39
  337. package/docs/reference/functions/bignumber.md +0 -47
  338. package/docs/reference/functions/bin.md +0 -39
  339. package/docs/reference/functions/bitAnd.md +0 -45
  340. package/docs/reference/functions/bitNot.md +0 -45
  341. package/docs/reference/functions/bitOr.md +0 -46
  342. package/docs/reference/functions/bitXor.md +0 -45
  343. package/docs/reference/functions/boolean.md +0 -50
  344. package/docs/reference/functions/catalan.md +0 -39
  345. package/docs/reference/functions/cbrt.md +0 -54
  346. package/docs/reference/functions/ceil.md +0 -57
  347. package/docs/reference/functions/chain.md +0 -54
  348. package/docs/reference/functions/clone.md +0 -37
  349. package/docs/reference/functions/column.md +0 -39
  350. package/docs/reference/functions/combinations.md +0 -43
  351. package/docs/reference/functions/combinationsWithRep.md +0 -43
  352. package/docs/reference/functions/compare.md +0 -61
  353. package/docs/reference/functions/compareNatural.md +0 -86
  354. package/docs/reference/functions/compareText.md +0 -48
  355. package/docs/reference/functions/compile.md +0 -50
  356. package/docs/reference/functions/complex.md +0 -17
  357. package/docs/reference/functions/composition.md +0 -40
  358. package/docs/reference/functions/concat.md +0 -50
  359. package/docs/reference/functions/config.md +0 -44
  360. package/docs/reference/functions/conj.md +0 -44
  361. package/docs/reference/functions/cos.md +0 -45
  362. package/docs/reference/functions/cosh.md +0 -40
  363. package/docs/reference/functions/cot.md +0 -41
  364. package/docs/reference/functions/coth.md +0 -43
  365. package/docs/reference/functions/count.md +0 -39
  366. package/docs/reference/functions/createUnit.md +0 -52
  367. package/docs/reference/functions/cross.md +0 -52
  368. package/docs/reference/functions/csc.md +0 -41
  369. package/docs/reference/functions/csch.md +0 -43
  370. package/docs/reference/functions/ctranspose.md +0 -44
  371. package/docs/reference/functions/cube.md +0 -45
  372. package/docs/reference/functions/deepEqual.md +0 -47
  373. package/docs/reference/functions/derivative.md +0 -55
  374. package/docs/reference/functions/det.md +0 -43
  375. package/docs/reference/functions/diag.md +0 -55
  376. package/docs/reference/functions/diff.md +0 -64
  377. package/docs/reference/functions/distance.md +0 -74
  378. package/docs/reference/functions/divide.md +0 -49
  379. package/docs/reference/functions/dot.md +0 -42
  380. package/docs/reference/functions/dotDivide.md +0 -46
  381. package/docs/reference/functions/dotMultiply.md +0 -46
  382. package/docs/reference/functions/dotPow.md +0 -43
  383. package/docs/reference/functions/eigs.md +0 -48
  384. package/docs/reference/functions/equal.md +0 -69
  385. package/docs/reference/functions/equalText.md +0 -47
  386. package/docs/reference/functions/erf.md +0 -43
  387. package/docs/reference/functions/evaluate.md +0 -50
  388. package/docs/reference/functions/exp.md +0 -48
  389. package/docs/reference/functions/expm.md +0 -43
  390. package/docs/reference/functions/expm1.md +0 -48
  391. package/docs/reference/functions/factorial.md +0 -43
  392. package/docs/reference/functions/filter.md +0 -44
  393. package/docs/reference/functions/fix.md +0 -55
  394. package/docs/reference/functions/flatten.md +0 -40
  395. package/docs/reference/functions/floor.md +0 -56
  396. package/docs/reference/functions/forEach.md +0 -35
  397. package/docs/reference/functions/format.md +0 -118
  398. package/docs/reference/functions/fraction.md +0 -45
  399. package/docs/reference/functions/gamma.md +0 -43
  400. package/docs/reference/functions/gcd.md +0 -44
  401. package/docs/reference/functions/getMatrixDataType.md +0 -53
  402. package/docs/reference/functions/hasNumericValue.md +0 -49
  403. package/docs/reference/functions/help.md +0 -36
  404. package/docs/reference/functions/hex.md +0 -39
  405. package/docs/reference/functions/hypot.md +0 -45
  406. package/docs/reference/functions/identity.md +0 -51
  407. package/docs/reference/functions/im.md +0 -47
  408. package/docs/reference/functions/import.md +0 -68
  409. package/docs/reference/functions/index.md +0 -55
  410. package/docs/reference/functions/intersect.md +0 -44
  411. package/docs/reference/functions/inv.md +0 -39
  412. package/docs/reference/functions/isInteger.md +0 -49
  413. package/docs/reference/functions/isNaN.md +0 -50
  414. package/docs/reference/functions/isNegative.md +0 -49
  415. package/docs/reference/functions/isNumeric.md +0 -49
  416. package/docs/reference/functions/isPositive.md +0 -51
  417. package/docs/reference/functions/isPrime.md +0 -48
  418. package/docs/reference/functions/isZero.md +0 -53
  419. package/docs/reference/functions/kldivergence.md +0 -35
  420. package/docs/reference/functions/kron.md +0 -47
  421. package/docs/reference/functions/larger.md +0 -54
  422. package/docs/reference/functions/largerEq.md +0 -50
  423. package/docs/reference/functions/lcm.md +0 -48
  424. package/docs/reference/functions/leftShift.md +0 -46
  425. package/docs/reference/functions/log.md +0 -51
  426. package/docs/reference/functions/log10.md +0 -44
  427. package/docs/reference/functions/log1p.md +0 -48
  428. package/docs/reference/functions/log2.md +0 -44
  429. package/docs/reference/functions/lsolve.md +0 -45
  430. package/docs/reference/functions/lsolveAll.md +0 -45
  431. package/docs/reference/functions/lup.md +0 -46
  432. package/docs/reference/functions/lusolve.md +0 -53
  433. package/docs/reference/functions/mad.md +0 -44
  434. package/docs/reference/functions/map.md +0 -42
  435. package/docs/reference/functions/matrix.md +0 -56
  436. package/docs/reference/functions/matrixFromColumns.md +0 -43
  437. package/docs/reference/functions/matrixFromFunction.md +0 -48
  438. package/docs/reference/functions/matrixFromRows.md +0 -43
  439. package/docs/reference/functions/max.md +0 -55
  440. package/docs/reference/functions/mean.md +0 -51
  441. package/docs/reference/functions/median.md +0 -51
  442. package/docs/reference/functions/min.md +0 -55
  443. package/docs/reference/functions/mod.md +0 -53
  444. package/docs/reference/functions/mode.md +0 -44
  445. package/docs/reference/functions/multinomial.md +0 -40
  446. package/docs/reference/functions/multiply.md +0 -54
  447. package/docs/reference/functions/norm.md +0 -53
  448. package/docs/reference/functions/not.md +0 -44
  449. package/docs/reference/functions/nthRoot.md +0 -47
  450. package/docs/reference/functions/nthRoots.md +0 -52
  451. package/docs/reference/functions/number.md +0 -49
  452. package/docs/reference/functions/numeric.md +0 -46
  453. package/docs/reference/functions/oct.md +0 -39
  454. package/docs/reference/functions/ones.md +0 -53
  455. package/docs/reference/functions/or.md +0 -47
  456. package/docs/reference/functions/parse.md +0 -56
  457. package/docs/reference/functions/parser.md +0 -64
  458. package/docs/reference/functions/partitionSelect.md +0 -47
  459. package/docs/reference/functions/permutations.md +0 -45
  460. package/docs/reference/functions/pickRandom.md +0 -53
  461. package/docs/reference/functions/pow.md +0 -53
  462. package/docs/reference/functions/print.md +0 -58
  463. package/docs/reference/functions/prod.md +0 -49
  464. package/docs/reference/functions/qr.md +0 -59
  465. package/docs/reference/functions/quantileSeq.md +0 -56
  466. package/docs/reference/functions/random.md +0 -48
  467. package/docs/reference/functions/randomInt.md +0 -47
  468. package/docs/reference/functions/range.md +0 -64
  469. package/docs/reference/functions/rationalize.md +0 -62
  470. package/docs/reference/functions/re.md +0 -47
  471. package/docs/reference/functions/reshape.md +0 -53
  472. package/docs/reference/functions/resize.md +0 -45
  473. package/docs/reference/functions/rightArithShift.md +0 -46
  474. package/docs/reference/functions/rightLogShift.md +0 -46
  475. package/docs/reference/functions/rotate.md +0 -47
  476. package/docs/reference/functions/rotationMatrix.md +0 -51
  477. package/docs/reference/functions/round.md +0 -55
  478. package/docs/reference/functions/row.md +0 -39
  479. package/docs/reference/functions/sec.md +0 -41
  480. package/docs/reference/functions/sech.md +0 -43
  481. package/docs/reference/functions/setCartesian.md +0 -43
  482. package/docs/reference/functions/setDifference.md +0 -41
  483. package/docs/reference/functions/setDistinct.md +0 -37
  484. package/docs/reference/functions/setIntersect.md +0 -40
  485. package/docs/reference/functions/setIsSubset.md +0 -41
  486. package/docs/reference/functions/setMultiplicity.md +0 -40
  487. package/docs/reference/functions/setPowerset.md +0 -37
  488. package/docs/reference/functions/setSize.md +0 -41
  489. package/docs/reference/functions/setSymDifference.md +0 -41
  490. package/docs/reference/functions/setUnion.md +0 -40
  491. package/docs/reference/functions/sign.md +0 -46
  492. package/docs/reference/functions/simplify.md +0 -90
  493. package/docs/reference/functions/sin.md +0 -45
  494. package/docs/reference/functions/sinh.md +0 -40
  495. package/docs/reference/functions/size.md +0 -44
  496. package/docs/reference/functions/slu.md +0 -51
  497. package/docs/reference/functions/smaller.md +0 -54
  498. package/docs/reference/functions/smallerEq.md +0 -50
  499. package/docs/reference/functions/sort.md +0 -50
  500. package/docs/reference/functions/sparse.md +0 -51
  501. package/docs/reference/functions/splitUnit.md +0 -37
  502. package/docs/reference/functions/sqrt.md +0 -44
  503. package/docs/reference/functions/sqrtm.md +0 -40
  504. package/docs/reference/functions/square.md +0 -45
  505. package/docs/reference/functions/squeeze.md +0 -47
  506. package/docs/reference/functions/std.md +0 -70
  507. package/docs/reference/functions/stirlingS2.md +0 -42
  508. package/docs/reference/functions/string.md +0 -49
  509. package/docs/reference/functions/subset.md +0 -51
  510. package/docs/reference/functions/subtract.md +0 -48
  511. package/docs/reference/functions/sum.md +0 -47
  512. package/docs/reference/functions/tan.md +0 -43
  513. package/docs/reference/functions/tanh.md +0 -44
  514. package/docs/reference/functions/to.md +0 -41
  515. package/docs/reference/functions/trace.md +0 -44
  516. package/docs/reference/functions/transpose.md +0 -43
  517. package/docs/reference/functions/typeOf.md +0 -75
  518. package/docs/reference/functions/typed.md +0 -56
  519. package/docs/reference/functions/unaryMinus.md +0 -43
  520. package/docs/reference/functions/unaryPlus.md +0 -42
  521. package/docs/reference/functions/unequal.md +0 -68
  522. package/docs/reference/functions/unit.md +0 -48
  523. package/docs/reference/functions/usolve.md +0 -45
  524. package/docs/reference/functions/usolveAll.md +0 -45
  525. package/docs/reference/functions/variance.md +0 -72
  526. package/docs/reference/functions/xgcd.md +0 -41
  527. package/docs/reference/functions/xor.md +0 -47
  528. package/docs/reference/functions/zeros.md +0 -51
  529. package/docs/reference/functions.md +0 -289
  530. package/docs/reference/index.md +0 -5
  531. package/examples/advanced/convert_fraction_to_bignumber.js +0 -59
  532. package/examples/advanced/custom_argument_parsing.js +0 -98
  533. package/examples/advanced/custom_datatype.js +0 -56
  534. package/examples/advanced/custom_evaluate_using_factories.js +0 -19
  535. package/examples/advanced/custom_evaluate_using_import.js +0 -18
  536. package/examples/advanced/custom_loading.js +0 -33
  537. package/examples/advanced/custom_relational_functions.js +0 -62
  538. package/examples/advanced/custom_scope_objects.js +0 -115
  539. package/examples/advanced/expression_trees.js +0 -55
  540. package/examples/advanced/function_transform.js +0 -50
  541. package/examples/advanced/more_secure_eval.js +0 -36
  542. package/examples/advanced/use_bigint.js +0 -43
  543. package/examples/advanced/web_server/math_worker.js +0 -24
  544. package/examples/advanced/web_server/server.js +0 -80
  545. package/examples/algebra.js +0 -34
  546. package/examples/basic_usage.js +0 -49
  547. package/examples/bignumbers.js +0 -52
  548. package/examples/browser/angle_configuration.html +0 -134
  549. package/examples/browser/basic_usage.html +0 -39
  550. package/examples/browser/currency_conversion.html +0 -125
  551. package/examples/browser/custom_separators.html +0 -81
  552. package/examples/browser/plot.html +0 -78
  553. package/examples/browser/pretty_printing_with_mathjax.html +0 -122
  554. package/examples/browser/printing_html.html +0 -170
  555. package/examples/browser/requirejs_loading.html +0 -20
  556. package/examples/browser/rocket_trajectory_optimization.html +0 -301
  557. package/examples/browser/webworkers/webworkers.html +0 -80
  558. package/examples/browser/webworkers/worker.js +0 -28
  559. package/examples/chaining.js +0 -56
  560. package/examples/complex_numbers.js +0 -67
  561. package/examples/expressions.js +0 -188
  562. package/examples/fractions.js +0 -74
  563. package/examples/import.js +0 -95
  564. package/examples/matrices.js +0 -101
  565. package/examples/node_modules/.bin/envinfo +0 -15
  566. package/examples/node_modules/.bin/envinfo.cmd +0 -17
  567. package/examples/node_modules/.bin/envinfo.ps1 +0 -18
  568. package/examples/node_modules/.bin/import-local-fixture +0 -15
  569. package/examples/node_modules/.bin/import-local-fixture.cmd +0 -17
  570. package/examples/node_modules/.bin/import-local-fixture.ps1 +0 -18
  571. package/examples/node_modules/.bin/node-which +0 -15
  572. package/examples/node_modules/.bin/node-which.cmd +0 -17
  573. package/examples/node_modules/.bin/node-which.ps1 +0 -18
  574. package/examples/node_modules/.bin/webpack-cli +0 -15
  575. package/examples/node_modules/.bin/webpack-cli.cmd +0 -17
  576. package/examples/node_modules/.bin/webpack-cli.ps1 +0 -18
  577. package/examples/node_modules/@discoveryjs/json-ext/CHANGELOG.md +0 -42
  578. package/examples/node_modules/@discoveryjs/json-ext/LICENSE +0 -21
  579. package/examples/node_modules/@discoveryjs/json-ext/README.md +0 -255
  580. package/examples/node_modules/@discoveryjs/json-ext/dist/json-ext.js +0 -808
  581. package/examples/node_modules/@discoveryjs/json-ext/dist/json-ext.min.js +0 -1
  582. package/examples/node_modules/@discoveryjs/json-ext/package.json +0 -93
  583. package/examples/node_modules/@discoveryjs/json-ext/src/index.js +0 -6
  584. package/examples/node_modules/@discoveryjs/json-ext/src/parse-chunked.js +0 -339
  585. package/examples/node_modules/@discoveryjs/json-ext/src/stringify-info.js +0 -224
  586. package/examples/node_modules/@discoveryjs/json-ext/src/stringify-stream-browser.js +0 -3
  587. package/examples/node_modules/@discoveryjs/json-ext/src/stringify-stream.js +0 -394
  588. package/examples/node_modules/@discoveryjs/json-ext/src/text-decoder-browser.js +0 -1
  589. package/examples/node_modules/@discoveryjs/json-ext/src/text-decoder.js +0 -1
  590. package/examples/node_modules/@discoveryjs/json-ext/src/utils.js +0 -148
  591. package/examples/node_modules/@webpack-cli/configtest/CHANGELOG.md +0 -18
  592. package/examples/node_modules/@webpack-cli/configtest/LICENSE +0 -20
  593. package/examples/node_modules/@webpack-cli/configtest/lib/index.d.ts +0 -4
  594. package/examples/node_modules/@webpack-cli/configtest/lib/index.js +0 -62
  595. package/examples/node_modules/@webpack-cli/configtest/package.json +0 -45
  596. package/examples/node_modules/@webpack-cli/info/CHANGELOG.md +0 -61
  597. package/examples/node_modules/@webpack-cli/info/LICENSE +0 -20
  598. package/examples/node_modules/@webpack-cli/info/README.md +0 -49
  599. package/examples/node_modules/@webpack-cli/info/lib/index.d.ts +0 -4
  600. package/examples/node_modules/@webpack-cli/info/lib/index.js +0 -66
  601. package/examples/node_modules/@webpack-cli/info/package.json +0 -47
  602. package/examples/node_modules/@webpack-cli/serve/CHANGELOG.md +0 -93
  603. package/examples/node_modules/@webpack-cli/serve/LICENSE +0 -20
  604. package/examples/node_modules/@webpack-cli/serve/README.md +0 -26
  605. package/examples/node_modules/@webpack-cli/serve/lib/index.d.ts +0 -4
  606. package/examples/node_modules/@webpack-cli/serve/lib/index.js +0 -107
  607. package/examples/node_modules/@webpack-cli/serve/lib/startDevServer.d.ts +0 -12
  608. package/examples/node_modules/@webpack-cli/serve/lib/startDevServer.js +0 -113
  609. package/examples/node_modules/@webpack-cli/serve/lib/types.d.ts +0 -48
  610. package/examples/node_modules/@webpack-cli/serve/lib/types.js +0 -12
  611. package/examples/node_modules/@webpack-cli/serve/package.json +0 -50
  612. package/examples/node_modules/ansi-colors/LICENSE +0 -21
  613. package/examples/node_modules/ansi-colors/README.md +0 -315
  614. package/examples/node_modules/ansi-colors/index.js +0 -177
  615. package/examples/node_modules/ansi-colors/package.json +0 -152
  616. package/examples/node_modules/ansi-colors/symbols.js +0 -70
  617. package/examples/node_modules/ansi-colors/types/index.d.ts +0 -161
  618. package/examples/node_modules/clone-deep/LICENSE +0 -21
  619. package/examples/node_modules/clone-deep/README.md +0 -106
  620. package/examples/node_modules/clone-deep/index.js +0 -49
  621. package/examples/node_modules/clone-deep/package.json +0 -112
  622. package/examples/node_modules/colorette/LICENSE.md +0 -7
  623. package/examples/node_modules/colorette/README.md +0 -102
  624. package/examples/node_modules/colorette/index.cjs +0 -73
  625. package/examples/node_modules/colorette/index.d.ts +0 -49
  626. package/examples/node_modules/colorette/index.js +0 -73
  627. package/examples/node_modules/colorette/package.json +0 -73
  628. package/examples/node_modules/commander/CHANGELOG.md +0 -440
  629. package/examples/node_modules/commander/LICENSE +0 -22
  630. package/examples/node_modules/commander/Readme.md +0 -917
  631. package/examples/node_modules/commander/esm.mjs +0 -4
  632. package/examples/node_modules/commander/index.js +0 -2217
  633. package/examples/node_modules/commander/package-support.json +0 -16
  634. package/examples/node_modules/commander/package.json +0 -100
  635. package/examples/node_modules/commander/typings/index.d.ts +0 -627
  636. package/examples/node_modules/cross-spawn/CHANGELOG.md +0 -130
  637. package/examples/node_modules/cross-spawn/LICENSE +0 -21
  638. package/examples/node_modules/cross-spawn/README.md +0 -96
  639. package/examples/node_modules/cross-spawn/index.js +0 -39
  640. package/examples/node_modules/cross-spawn/lib/enoent.js +0 -59
  641. package/examples/node_modules/cross-spawn/lib/parse.js +0 -91
  642. package/examples/node_modules/cross-spawn/lib/util/escape.js +0 -45
  643. package/examples/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  644. package/examples/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  645. package/examples/node_modules/cross-spawn/package.json +0 -104
  646. package/examples/node_modules/enquirer/CHANGELOG.md +0 -135
  647. package/examples/node_modules/enquirer/LICENSE +0 -21
  648. package/examples/node_modules/enquirer/README.md +0 -1752
  649. package/examples/node_modules/enquirer/index.d.ts +0 -151
  650. package/examples/node_modules/enquirer/index.js +0 -250
  651. package/examples/node_modules/enquirer/lib/ansi.js +0 -116
  652. package/examples/node_modules/enquirer/lib/combos.js +0 -75
  653. package/examples/node_modules/enquirer/lib/completer.js +0 -52
  654. package/examples/node_modules/enquirer/lib/interpolate.js +0 -266
  655. package/examples/node_modules/enquirer/lib/keypress.js +0 -243
  656. package/examples/node_modules/enquirer/lib/placeholder.js +0 -63
  657. package/examples/node_modules/enquirer/lib/prompt.js +0 -485
  658. package/examples/node_modules/enquirer/lib/prompts/autocomplete.js +0 -113
  659. package/examples/node_modules/enquirer/lib/prompts/basicauth.js +0 -41
  660. package/examples/node_modules/enquirer/lib/prompts/confirm.js +0 -13
  661. package/examples/node_modules/enquirer/lib/prompts/editable.js +0 -136
  662. package/examples/node_modules/enquirer/lib/prompts/form.js +0 -196
  663. package/examples/node_modules/enquirer/lib/prompts/index.js +0 -28
  664. package/examples/node_modules/enquirer/lib/prompts/input.js +0 -55
  665. package/examples/node_modules/enquirer/lib/prompts/invisible.js +0 -11
  666. package/examples/node_modules/enquirer/lib/prompts/list.js +0 -36
  667. package/examples/node_modules/enquirer/lib/prompts/multiselect.js +0 -11
  668. package/examples/node_modules/enquirer/lib/prompts/numeral.js +0 -1
  669. package/examples/node_modules/enquirer/lib/prompts/password.js +0 -18
  670. package/examples/node_modules/enquirer/lib/prompts/quiz.js +0 -37
  671. package/examples/node_modules/enquirer/lib/prompts/scale.js +0 -237
  672. package/examples/node_modules/enquirer/lib/prompts/select.js +0 -139
  673. package/examples/node_modules/enquirer/lib/prompts/snippet.js +0 -185
  674. package/examples/node_modules/enquirer/lib/prompts/sort.js +0 -37
  675. package/examples/node_modules/enquirer/lib/prompts/survey.js +0 -163
  676. package/examples/node_modules/enquirer/lib/prompts/text.js +0 -1
  677. package/examples/node_modules/enquirer/lib/prompts/toggle.js +0 -109
  678. package/examples/node_modules/enquirer/lib/render.js +0 -33
  679. package/examples/node_modules/enquirer/lib/roles.js +0 -46
  680. package/examples/node_modules/enquirer/lib/state.js +0 -69
  681. package/examples/node_modules/enquirer/lib/styles.js +0 -144
  682. package/examples/node_modules/enquirer/lib/symbols.js +0 -66
  683. package/examples/node_modules/enquirer/lib/theme.js +0 -11
  684. package/examples/node_modules/enquirer/lib/timer.js +0 -38
  685. package/examples/node_modules/enquirer/lib/types/array.js +0 -658
  686. package/examples/node_modules/enquirer/lib/types/auth.js +0 -29
  687. package/examples/node_modules/enquirer/lib/types/boolean.js +0 -88
  688. package/examples/node_modules/enquirer/lib/types/index.js +0 -7
  689. package/examples/node_modules/enquirer/lib/types/number.js +0 -86
  690. package/examples/node_modules/enquirer/lib/types/string.js +0 -185
  691. package/examples/node_modules/enquirer/lib/utils.js +0 -268
  692. package/examples/node_modules/enquirer/package.json +0 -148
  693. package/examples/node_modules/envinfo/LICENSE +0 -21
  694. package/examples/node_modules/envinfo/README.md +0 -285
  695. package/examples/node_modules/envinfo/dist/cli.js +0 -2
  696. package/examples/node_modules/envinfo/dist/envinfo.js +0 -1
  697. package/examples/node_modules/envinfo/package.json +0 -130
  698. package/examples/node_modules/execa/index.d.ts +0 -554
  699. package/examples/node_modules/execa/index.js +0 -258
  700. package/examples/node_modules/execa/lib/command.js +0 -32
  701. package/examples/node_modules/execa/lib/error.js +0 -86
  702. package/examples/node_modules/execa/lib/kill.js +0 -112
  703. package/examples/node_modules/execa/lib/promise.js +0 -46
  704. package/examples/node_modules/execa/lib/stdio.js +0 -52
  705. package/examples/node_modules/execa/lib/stream.js +0 -97
  706. package/examples/node_modules/execa/license +0 -9
  707. package/examples/node_modules/execa/package.json +0 -102
  708. package/examples/node_modules/execa/readme.md +0 -650
  709. package/examples/node_modules/fastest-levenshtein/.eslintrc.js +0 -27
  710. package/examples/node_modules/fastest-levenshtein/.prettierrc +0 -4
  711. package/examples/node_modules/fastest-levenshtein/.travis.yml +0 -17
  712. package/examples/node_modules/fastest-levenshtein/LICENSE.md +0 -21
  713. package/examples/node_modules/fastest-levenshtein/README.md +0 -55
  714. package/examples/node_modules/fastest-levenshtein/index.d.ts +0 -2
  715. package/examples/node_modules/fastest-levenshtein/index.js +0 -147
  716. package/examples/node_modules/fastest-levenshtein/package.json +0 -90
  717. package/examples/node_modules/fastest-levenshtein/test.js +0 -64
  718. package/examples/node_modules/find-up/index.d.ts +0 -137
  719. package/examples/node_modules/find-up/index.js +0 -89
  720. package/examples/node_modules/find-up/license +0 -9
  721. package/examples/node_modules/find-up/package.json +0 -85
  722. package/examples/node_modules/find-up/readme.md +0 -156
  723. package/examples/node_modules/function-bind/.editorconfig +0 -20
  724. package/examples/node_modules/function-bind/.eslintrc +0 -15
  725. package/examples/node_modules/function-bind/.jscs.json +0 -176
  726. package/examples/node_modules/function-bind/.travis.yml +0 -168
  727. package/examples/node_modules/function-bind/LICENSE +0 -20
  728. package/examples/node_modules/function-bind/README.md +0 -48
  729. package/examples/node_modules/function-bind/implementation.js +0 -52
  730. package/examples/node_modules/function-bind/index.js +0 -5
  731. package/examples/node_modules/function-bind/package.json +0 -94
  732. package/examples/node_modules/function-bind/test/.eslintrc +0 -9
  733. package/examples/node_modules/function-bind/test/index.js +0 -252
  734. package/examples/node_modules/get-stream/buffer-stream.js +0 -52
  735. package/examples/node_modules/get-stream/index.d.ts +0 -105
  736. package/examples/node_modules/get-stream/index.js +0 -61
  737. package/examples/node_modules/get-stream/license +0 -9
  738. package/examples/node_modules/get-stream/package.json +0 -79
  739. package/examples/node_modules/get-stream/readme.md +0 -124
  740. package/examples/node_modules/has/LICENSE-MIT +0 -22
  741. package/examples/node_modules/has/README.md +0 -18
  742. package/examples/node_modules/has/package.json +0 -73
  743. package/examples/node_modules/has/src/index.js +0 -5
  744. package/examples/node_modules/has/test/index.js +0 -10
  745. package/examples/node_modules/human-signals/CHANGELOG.md +0 -11
  746. package/examples/node_modules/human-signals/LICENSE +0 -201
  747. package/examples/node_modules/human-signals/README.md +0 -165
  748. package/examples/node_modules/human-signals/build/src/core.js +0 -273
  749. package/examples/node_modules/human-signals/build/src/core.js.map +0 -1
  750. package/examples/node_modules/human-signals/build/src/main.d.ts +0 -52
  751. package/examples/node_modules/human-signals/build/src/main.js +0 -71
  752. package/examples/node_modules/human-signals/build/src/main.js.map +0 -1
  753. package/examples/node_modules/human-signals/build/src/realtime.js +0 -19
  754. package/examples/node_modules/human-signals/build/src/realtime.js.map +0 -1
  755. package/examples/node_modules/human-signals/build/src/signals.js +0 -35
  756. package/examples/node_modules/human-signals/build/src/signals.js.map +0 -1
  757. package/examples/node_modules/human-signals/package.json +0 -96
  758. package/examples/node_modules/import-local/fixtures/cli.js +0 -7
  759. package/examples/node_modules/import-local/index.js +0 -19
  760. package/examples/node_modules/import-local/license +0 -9
  761. package/examples/node_modules/import-local/package.json +0 -83
  762. package/examples/node_modules/import-local/readme.md +0 -38
  763. package/examples/node_modules/interpret/CHANGELOG +0 -115
  764. package/examples/node_modules/interpret/LICENSE +0 -22
  765. package/examples/node_modules/interpret/README.md +0 -229
  766. package/examples/node_modules/interpret/index.js +0 -211
  767. package/examples/node_modules/interpret/mjs-stub.js +0 -1
  768. package/examples/node_modules/interpret/package.json +0 -118
  769. package/examples/node_modules/is-core-module/.eslintignore +0 -1
  770. package/examples/node_modules/is-core-module/.eslintrc +0 -18
  771. package/examples/node_modules/is-core-module/.github/FUNDING.yml +0 -12
  772. package/examples/node_modules/is-core-module/.github/workflows/node-4+.yml +0 -54
  773. package/examples/node_modules/is-core-module/.github/workflows/node-iojs.yml +0 -58
  774. package/examples/node_modules/is-core-module/.github/workflows/node-pretest.yml +0 -26
  775. package/examples/node_modules/is-core-module/.github/workflows/node-zero.yml +0 -58
  776. package/examples/node_modules/is-core-module/.github/workflows/rebase.yml +0 -15
  777. package/examples/node_modules/is-core-module/.github/workflows/require-allow-edits.yml +0 -14
  778. package/examples/node_modules/is-core-module/.nycrc +0 -13
  779. package/examples/node_modules/is-core-module/CHANGELOG.md +0 -58
  780. package/examples/node_modules/is-core-module/LICENSE +0 -20
  781. package/examples/node_modules/is-core-module/README.md +0 -37
  782. package/examples/node_modules/is-core-module/core.json +0 -83
  783. package/examples/node_modules/is-core-module/index.js +0 -69
  784. package/examples/node_modules/is-core-module/package.json +0 -94
  785. package/examples/node_modules/is-core-module/test/index.js +0 -83
  786. package/examples/node_modules/is-plain-object/LICENSE +0 -21
  787. package/examples/node_modules/is-plain-object/README.md +0 -104
  788. package/examples/node_modules/is-plain-object/index.d.ts +0 -5
  789. package/examples/node_modules/is-plain-object/index.js +0 -37
  790. package/examples/node_modules/is-plain-object/package.json +0 -121
  791. package/examples/node_modules/is-stream/index.d.ts +0 -80
  792. package/examples/node_modules/is-stream/index.js +0 -29
  793. package/examples/node_modules/is-stream/license +0 -9
  794. package/examples/node_modules/is-stream/package.json +0 -73
  795. package/examples/node_modules/is-stream/readme.md +0 -57
  796. package/examples/node_modules/isexe/LICENSE +0 -15
  797. package/examples/node_modules/isexe/README.md +0 -51
  798. package/examples/node_modules/isexe/index.js +0 -57
  799. package/examples/node_modules/isexe/mode.js +0 -41
  800. package/examples/node_modules/isexe/package.json +0 -60
  801. package/examples/node_modules/isexe/test/basic.js +0 -221
  802. package/examples/node_modules/isexe/windows.js +0 -42
  803. package/examples/node_modules/isobject/LICENSE +0 -21
  804. package/examples/node_modules/isobject/README.md +0 -122
  805. package/examples/node_modules/isobject/index.d.ts +0 -5
  806. package/examples/node_modules/isobject/index.js +0 -12
  807. package/examples/node_modules/isobject/package.json +0 -119
  808. package/examples/node_modules/kind-of/CHANGELOG.md +0 -160
  809. package/examples/node_modules/kind-of/LICENSE +0 -21
  810. package/examples/node_modules/kind-of/README.md +0 -367
  811. package/examples/node_modules/kind-of/index.js +0 -129
  812. package/examples/node_modules/kind-of/package.json +0 -144
  813. package/examples/node_modules/locate-path/index.d.ts +0 -83
  814. package/examples/node_modules/locate-path/index.js +0 -65
  815. package/examples/node_modules/locate-path/license +0 -9
  816. package/examples/node_modules/locate-path/package.json +0 -77
  817. package/examples/node_modules/locate-path/readme.md +0 -122
  818. package/examples/node_modules/merge-stream/LICENSE +0 -21
  819. package/examples/node_modules/merge-stream/README.md +0 -78
  820. package/examples/node_modules/merge-stream/index.js +0 -41
  821. package/examples/node_modules/merge-stream/package.json +0 -54
  822. package/examples/node_modules/mimic-fn/index.d.ts +0 -54
  823. package/examples/node_modules/mimic-fn/index.js +0 -13
  824. package/examples/node_modules/mimic-fn/license +0 -9
  825. package/examples/node_modules/mimic-fn/package.json +0 -74
  826. package/examples/node_modules/mimic-fn/readme.md +0 -69
  827. package/examples/node_modules/npm-run-path/index.d.ts +0 -89
  828. package/examples/node_modules/npm-run-path/index.js +0 -47
  829. package/examples/node_modules/npm-run-path/license +0 -9
  830. package/examples/node_modules/npm-run-path/package.json +0 -76
  831. package/examples/node_modules/npm-run-path/readme.md +0 -115
  832. package/examples/node_modules/onetime/index.d.ts +0 -64
  833. package/examples/node_modules/onetime/index.js +0 -44
  834. package/examples/node_modules/onetime/license +0 -9
  835. package/examples/node_modules/onetime/package.json +0 -75
  836. package/examples/node_modules/onetime/readme.md +0 -94
  837. package/examples/node_modules/p-limit/index.d.ts +0 -38
  838. package/examples/node_modules/p-limit/index.js +0 -57
  839. package/examples/node_modules/p-limit/license +0 -9
  840. package/examples/node_modules/p-limit/package.json +0 -84
  841. package/examples/node_modules/p-limit/readme.md +0 -101
  842. package/examples/node_modules/p-locate/index.d.ts +0 -64
  843. package/examples/node_modules/p-locate/index.js +0 -52
  844. package/examples/node_modules/p-locate/license +0 -9
  845. package/examples/node_modules/p-locate/package.json +0 -85
  846. package/examples/node_modules/p-locate/readme.md +0 -90
  847. package/examples/node_modules/p-try/index.d.ts +0 -39
  848. package/examples/node_modules/p-try/index.js +0 -9
  849. package/examples/node_modules/p-try/license +0 -9
  850. package/examples/node_modules/p-try/package.json +0 -74
  851. package/examples/node_modules/p-try/readme.md +0 -58
  852. package/examples/node_modules/path-exists/index.d.ts +0 -28
  853. package/examples/node_modules/path-exists/index.js +0 -23
  854. package/examples/node_modules/path-exists/license +0 -9
  855. package/examples/node_modules/path-exists/package.json +0 -71
  856. package/examples/node_modules/path-exists/readme.md +0 -52
  857. package/examples/node_modules/path-key/index.d.ts +0 -40
  858. package/examples/node_modules/path-key/index.js +0 -16
  859. package/examples/node_modules/path-key/license +0 -9
  860. package/examples/node_modules/path-key/package.json +0 -72
  861. package/examples/node_modules/path-key/readme.md +0 -61
  862. package/examples/node_modules/path-parse/.travis.yml +0 -9
  863. package/examples/node_modules/path-parse/LICENSE +0 -21
  864. package/examples/node_modules/path-parse/README.md +0 -42
  865. package/examples/node_modules/path-parse/index.js +0 -93
  866. package/examples/node_modules/path-parse/package.json +0 -61
  867. package/examples/node_modules/path-parse/test.js +0 -77
  868. package/examples/node_modules/pkg-dir/index.d.ts +0 -44
  869. package/examples/node_modules/pkg-dir/index.js +0 -17
  870. package/examples/node_modules/pkg-dir/license +0 -9
  871. package/examples/node_modules/pkg-dir/package.json +0 -88
  872. package/examples/node_modules/pkg-dir/readme.md +0 -66
  873. package/examples/node_modules/rechoir/LICENSE +0 -24
  874. package/examples/node_modules/rechoir/README.md +0 -74
  875. package/examples/node_modules/rechoir/index.js +0 -67
  876. package/examples/node_modules/rechoir/lib/extension.js +0 -19
  877. package/examples/node_modules/rechoir/lib/normalize.js +0 -13
  878. package/examples/node_modules/rechoir/lib/register.js +0 -15
  879. package/examples/node_modules/rechoir/package.json +0 -89
  880. package/examples/node_modules/resolve/.editorconfig +0 -37
  881. package/examples/node_modules/resolve/.eslintignore +0 -1
  882. package/examples/node_modules/resolve/.eslintrc +0 -39
  883. package/examples/node_modules/resolve/LICENSE +0 -21
  884. package/examples/node_modules/resolve/SECURITY.md +0 -3
  885. package/examples/node_modules/resolve/appveyor.yml +0 -74
  886. package/examples/node_modules/resolve/example/async.js +0 -5
  887. package/examples/node_modules/resolve/example/sync.js +0 -3
  888. package/examples/node_modules/resolve/index.js +0 -6
  889. package/examples/node_modules/resolve/lib/async.js +0 -320
  890. package/examples/node_modules/resolve/lib/caller.js +0 -8
  891. package/examples/node_modules/resolve/lib/core.js +0 -53
  892. package/examples/node_modules/resolve/lib/core.json +0 -83
  893. package/examples/node_modules/resolve/lib/is-core.js +0 -5
  894. package/examples/node_modules/resolve/lib/node-modules-paths.js +0 -42
  895. package/examples/node_modules/resolve/lib/normalize-options.js +0 -10
  896. package/examples/node_modules/resolve/lib/sync.js +0 -199
  897. package/examples/node_modules/resolve/package.json +0 -80
  898. package/examples/node_modules/resolve/readme.markdown +0 -279
  899. package/examples/node_modules/resolve/test/.eslintrc +0 -5
  900. package/examples/node_modules/resolve/test/core.js +0 -81
  901. package/examples/node_modules/resolve/test/dotdot/abc/index.js +0 -2
  902. package/examples/node_modules/resolve/test/dotdot/index.js +0 -1
  903. package/examples/node_modules/resolve/test/dotdot.js +0 -29
  904. package/examples/node_modules/resolve/test/faulty_basedir.js +0 -29
  905. package/examples/node_modules/resolve/test/filter.js +0 -34
  906. package/examples/node_modules/resolve/test/filter_sync.js +0 -33
  907. package/examples/node_modules/resolve/test/mock.js +0 -315
  908. package/examples/node_modules/resolve/test/mock_sync.js +0 -216
  909. package/examples/node_modules/resolve/test/module_dir/xmodules/aaa/index.js +0 -1
  910. package/examples/node_modules/resolve/test/module_dir/ymodules/aaa/index.js +0 -1
  911. package/examples/node_modules/resolve/test/module_dir/zmodules/bbb/main.js +0 -1
  912. package/examples/node_modules/resolve/test/module_dir/zmodules/bbb/package.json +0 -3
  913. package/examples/node_modules/resolve/test/module_dir.js +0 -56
  914. package/examples/node_modules/resolve/test/node-modules-paths.js +0 -143
  915. package/examples/node_modules/resolve/test/node_path/x/aaa/index.js +0 -1
  916. package/examples/node_modules/resolve/test/node_path/x/ccc/index.js +0 -1
  917. package/examples/node_modules/resolve/test/node_path/y/bbb/index.js +0 -1
  918. package/examples/node_modules/resolve/test/node_path/y/ccc/index.js +0 -1
  919. package/examples/node_modules/resolve/test/node_path.js +0 -70
  920. package/examples/node_modules/resolve/test/nonstring.js +0 -9
  921. package/examples/node_modules/resolve/test/pathfilter/deep_ref/main.js +0 -0
  922. package/examples/node_modules/resolve/test/pathfilter.js +0 -75
  923. package/examples/node_modules/resolve/test/precedence/aaa/index.js +0 -1
  924. package/examples/node_modules/resolve/test/precedence/aaa/main.js +0 -1
  925. package/examples/node_modules/resolve/test/precedence/aaa.js +0 -1
  926. package/examples/node_modules/resolve/test/precedence/bbb/main.js +0 -1
  927. package/examples/node_modules/resolve/test/precedence/bbb.js +0 -1
  928. package/examples/node_modules/resolve/test/precedence.js +0 -23
  929. package/examples/node_modules/resolve/test/resolver/baz/doom.js +0 -0
  930. package/examples/node_modules/resolve/test/resolver/baz/package.json +0 -4
  931. package/examples/node_modules/resolve/test/resolver/baz/quux.js +0 -1
  932. package/examples/node_modules/resolve/test/resolver/browser_field/a.js +0 -0
  933. package/examples/node_modules/resolve/test/resolver/browser_field/b.js +0 -0
  934. package/examples/node_modules/resolve/test/resolver/browser_field/package.json +0 -5
  935. package/examples/node_modules/resolve/test/resolver/cup.coffee +0 -1
  936. package/examples/node_modules/resolve/test/resolver/dot_main/index.js +0 -1
  937. package/examples/node_modules/resolve/test/resolver/dot_main/package.json +0 -3
  938. package/examples/node_modules/resolve/test/resolver/dot_slash_main/index.js +0 -1
  939. package/examples/node_modules/resolve/test/resolver/dot_slash_main/package.json +0 -3
  940. package/examples/node_modules/resolve/test/resolver/foo.js +0 -1
  941. package/examples/node_modules/resolve/test/resolver/incorrect_main/index.js +0 -2
  942. package/examples/node_modules/resolve/test/resolver/incorrect_main/package.json +0 -3
  943. package/examples/node_modules/resolve/test/resolver/invalid_main/package.json +0 -7
  944. package/examples/node_modules/resolve/test/resolver/mug.coffee +0 -0
  945. package/examples/node_modules/resolve/test/resolver/mug.js +0 -0
  946. package/examples/node_modules/resolve/test/resolver/multirepo/lerna.json +0 -6
  947. package/examples/node_modules/resolve/test/resolver/multirepo/package.json +0 -20
  948. package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js +0 -35
  949. package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json +0 -14
  950. package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js +0 -0
  951. package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json +0 -14
  952. package/examples/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js +0 -26
  953. package/examples/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json +0 -15
  954. package/examples/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js +0 -12
  955. package/examples/node_modules/resolve/test/resolver/other_path/lib/other-lib.js +0 -0
  956. package/examples/node_modules/resolve/test/resolver/other_path/root.js +0 -0
  957. package/examples/node_modules/resolve/test/resolver/quux/foo/index.js +0 -1
  958. package/examples/node_modules/resolve/test/resolver/same_names/foo/index.js +0 -1
  959. package/examples/node_modules/resolve/test/resolver/same_names/foo.js +0 -1
  960. package/examples/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js +0 -0
  961. package/examples/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep +0 -0
  962. package/examples/node_modules/resolve/test/resolver/symlinked/package/bar.js +0 -1
  963. package/examples/node_modules/resolve/test/resolver/symlinked/package/package.json +0 -3
  964. package/examples/node_modules/resolve/test/resolver/without_basedir/main.js +0 -5
  965. package/examples/node_modules/resolve/test/resolver.js +0 -450
  966. package/examples/node_modules/resolve/test/resolver_sync.js +0 -358
  967. package/examples/node_modules/resolve/test/shadowed_core/node_modules/util/index.js +0 -0
  968. package/examples/node_modules/resolve/test/shadowed_core.js +0 -54
  969. package/examples/node_modules/resolve/test/subdirs.js +0 -13
  970. package/examples/node_modules/resolve/test/symlinks.js +0 -176
  971. package/examples/node_modules/resolve-cwd/index.d.ts +0 -48
  972. package/examples/node_modules/resolve-cwd/index.js +0 -5
  973. package/examples/node_modules/resolve-cwd/license +0 -9
  974. package/examples/node_modules/resolve-cwd/package.json +0 -75
  975. package/examples/node_modules/resolve-cwd/readme.md +0 -58
  976. package/examples/node_modules/resolve-from/index.d.ts +0 -31
  977. package/examples/node_modules/resolve-from/index.js +0 -47
  978. package/examples/node_modules/resolve-from/license +0 -9
  979. package/examples/node_modules/resolve-from/package.json +0 -68
  980. package/examples/node_modules/resolve-from/readme.md +0 -72
  981. package/examples/node_modules/shallow-clone/LICENSE +0 -21
  982. package/examples/node_modules/shallow-clone/README.md +0 -153
  983. package/examples/node_modules/shallow-clone/index.js +0 -83
  984. package/examples/node_modules/shallow-clone/package.json +0 -101
  985. package/examples/node_modules/shebang-command/index.js +0 -19
  986. package/examples/node_modules/shebang-command/license +0 -9
  987. package/examples/node_modules/shebang-command/package.json +0 -66
  988. package/examples/node_modules/shebang-command/readme.md +0 -34
  989. package/examples/node_modules/shebang-regex/index.d.ts +0 -22
  990. package/examples/node_modules/shebang-regex/index.js +0 -2
  991. package/examples/node_modules/shebang-regex/license +0 -9
  992. package/examples/node_modules/shebang-regex/package.json +0 -67
  993. package/examples/node_modules/shebang-regex/readme.md +0 -33
  994. package/examples/node_modules/signal-exit/CHANGELOG.md +0 -35
  995. package/examples/node_modules/signal-exit/LICENSE.txt +0 -16
  996. package/examples/node_modules/signal-exit/README.md +0 -39
  997. package/examples/node_modules/signal-exit/index.js +0 -163
  998. package/examples/node_modules/signal-exit/package.json +0 -66
  999. package/examples/node_modules/signal-exit/signals.js +0 -53
  1000. package/examples/node_modules/strip-final-newline/index.js +0 -16
  1001. package/examples/node_modules/strip-final-newline/license +0 -9
  1002. package/examples/node_modules/strip-final-newline/package.json +0 -72
  1003. package/examples/node_modules/strip-final-newline/readme.md +0 -30
  1004. package/examples/node_modules/v8-compile-cache/CHANGELOG.md +0 -53
  1005. package/examples/node_modules/v8-compile-cache/LICENSE +0 -21
  1006. package/examples/node_modules/v8-compile-cache/README.md +0 -55
  1007. package/examples/node_modules/v8-compile-cache/package.json +0 -66
  1008. package/examples/node_modules/v8-compile-cache/v8-compile-cache.js +0 -371
  1009. package/examples/node_modules/webpack-cli/CHANGELOG.md +0 -501
  1010. package/examples/node_modules/webpack-cli/LICENSE +0 -20
  1011. package/examples/node_modules/webpack-cli/README.md +0 -116
  1012. package/examples/node_modules/webpack-cli/bin/cli.js +0 -40
  1013. package/examples/node_modules/webpack-cli/lib/bootstrap.js +0 -18
  1014. package/examples/node_modules/webpack-cli/lib/index.js +0 -5
  1015. package/examples/node_modules/webpack-cli/lib/plugins/CLIPlugin.js +0 -99
  1016. package/examples/node_modules/webpack-cli/lib/utils/__tests__/get-package-manager.test.js +0 -108
  1017. package/examples/node_modules/webpack-cli/lib/utils/__tests__/prompt-installation.test.js +0 -118
  1018. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-all-lock/pnpm-lock.yaml +0 -0
  1019. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-all-lock/yarn.lock +0 -0
  1020. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-and-pnpm/pnpm-lock.yaml +0 -0
  1021. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-and-yarn/yarn.lock +0 -0
  1022. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-pnpm-lock/pnpm-lock.yaml +0 -0
  1023. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-yarn-and-pnpm/pnpm-lock.yaml +0 -0
  1024. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-yarn-and-pnpm/yarn.lock +0 -0
  1025. package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-yarn-lock/yarn.lock +0 -0
  1026. package/examples/node_modules/webpack-cli/lib/utils/capitalize-first-letter.js +0 -9
  1027. package/examples/node_modules/webpack-cli/lib/utils/dynamic-import-loader.js +0 -13
  1028. package/examples/node_modules/webpack-cli/lib/utils/get-package-manager.js +0 -65
  1029. package/examples/node_modules/webpack-cli/lib/utils/index.js +0 -49
  1030. package/examples/node_modules/webpack-cli/lib/utils/logger.js +0 -11
  1031. package/examples/node_modules/webpack-cli/lib/utils/package-exists.js +0 -9
  1032. package/examples/node_modules/webpack-cli/lib/utils/prompt-installation.js +0 -58
  1033. package/examples/node_modules/webpack-cli/lib/utils/run-command.js +0 -13
  1034. package/examples/node_modules/webpack-cli/lib/utils/to-kebab-case.js +0 -5
  1035. package/examples/node_modules/webpack-cli/lib/webpack-cli.js +0 -1803
  1036. package/examples/node_modules/webpack-cli/package.json +0 -96
  1037. package/examples/node_modules/webpack-merge/CHANGELOG.md +0 -421
  1038. package/examples/node_modules/webpack-merge/LICENSE +0 -20
  1039. package/examples/node_modules/webpack-merge/README.md +0 -314
  1040. package/examples/node_modules/webpack-merge/dist/index.d.ts +0 -15
  1041. package/examples/node_modules/webpack-merge/dist/index.js +0 -262
  1042. package/examples/node_modules/webpack-merge/dist/index.js.map +0 -1
  1043. package/examples/node_modules/webpack-merge/dist/join-arrays.d.ts +0 -6
  1044. package/examples/node_modules/webpack-merge/dist/join-arrays.js +0 -69
  1045. package/examples/node_modules/webpack-merge/dist/join-arrays.js.map +0 -1
  1046. package/examples/node_modules/webpack-merge/dist/merge-with.d.ts +0 -2
  1047. package/examples/node_modules/webpack-merge/dist/merge-with.js +0 -38
  1048. package/examples/node_modules/webpack-merge/dist/merge-with.js.map +0 -1
  1049. package/examples/node_modules/webpack-merge/dist/types.d.ts +0 -13
  1050. package/examples/node_modules/webpack-merge/dist/types.js +0 -12
  1051. package/examples/node_modules/webpack-merge/dist/types.js.map +0 -1
  1052. package/examples/node_modules/webpack-merge/dist/unique.d.ts +0 -2
  1053. package/examples/node_modules/webpack-merge/dist/unique.js +0 -40
  1054. package/examples/node_modules/webpack-merge/dist/unique.js.map +0 -1
  1055. package/examples/node_modules/webpack-merge/dist/utils.d.ts +0 -5
  1056. package/examples/node_modules/webpack-merge/dist/utils.js +0 -24
  1057. package/examples/node_modules/webpack-merge/dist/utils.js.map +0 -1
  1058. package/examples/node_modules/webpack-merge/package.json +0 -86
  1059. package/examples/node_modules/which/CHANGELOG.md +0 -166
  1060. package/examples/node_modules/which/LICENSE +0 -15
  1061. package/examples/node_modules/which/README.md +0 -54
  1062. package/examples/node_modules/which/bin/node-which +0 -52
  1063. package/examples/node_modules/which/package.json +0 -76
  1064. package/examples/node_modules/which/which.js +0 -125
  1065. package/examples/node_modules/wildcard/.travis.yml +0 -9
  1066. package/examples/node_modules/wildcard/README.md +0 -99
  1067. package/examples/node_modules/wildcard/docs.json +0 -9
  1068. package/examples/node_modules/wildcard/examples/arrays.js +0 -10
  1069. package/examples/node_modules/wildcard/examples/objects.js +0 -10
  1070. package/examples/node_modules/wildcard/examples/strings.js +0 -7
  1071. package/examples/node_modules/wildcard/index.js +0 -114
  1072. package/examples/node_modules/wildcard/package.json +0 -82
  1073. package/examples/node_modules/wildcard/test/all.js +0 -3
  1074. package/examples/node_modules/wildcard/test/arrays.js +0 -33
  1075. package/examples/node_modules/wildcard/test/objects.js +0 -106
  1076. package/examples/node_modules/wildcard/test/strings.js +0 -46
  1077. package/examples/node_modules/wildcard/yarn.lock +0 -228
  1078. package/examples/objects.js +0 -35
  1079. package/examples/package.json +0 -3
  1080. package/examples/serialization.js +0 -16
  1081. package/examples/sparse_matrices.js +0 -19
  1082. package/examples/units.js +0 -108
  1083. package/lib/cjs/function/algebra/simplify/resolve.js +0 -76
  1084. package/lib/esm/function/algebra/simplify/resolve.js +0 -67
@@ -1,1803 +0,0 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
- const { pathToFileURL } = require('url');
4
- const Module = require('module');
5
-
6
- const { program } = require('commander');
7
- const utils = require('./utils');
8
-
9
- class WebpackCLI {
10
- constructor() {
11
- // Global
12
- this.webpack = require('webpack');
13
- this.logger = utils.logger;
14
- this.utils = utils;
15
-
16
- // Initialize program
17
- this.program = program;
18
- this.program.name('webpack');
19
- this.program.configureOutput({
20
- writeErr: this.logger.error,
21
- outputError: (str, write) => write(`Error: ${this.utils.capitalizeFirstLetter(str.replace(/^error:/, '').trim())}`),
22
- });
23
- }
24
-
25
- async makeCommand(commandOptions, options, action) {
26
- const alreadyLoaded = this.program.commands.find(
27
- (command) => command.name() === commandOptions.name || command.aliases().includes(commandOptions.alias),
28
- );
29
-
30
- if (alreadyLoaded) {
31
- return;
32
- }
33
-
34
- const command = this.program.command(commandOptions.name, {
35
- noHelp: commandOptions.noHelp,
36
- hidden: commandOptions.hidden,
37
- isDefault: commandOptions.isDefault,
38
- });
39
-
40
- if (commandOptions.description) {
41
- command.description(commandOptions.description);
42
- }
43
-
44
- if (commandOptions.usage) {
45
- command.usage(commandOptions.usage);
46
- }
47
-
48
- if (Array.isArray(commandOptions.alias)) {
49
- command.aliases(commandOptions.alias);
50
- } else {
51
- command.alias(commandOptions.alias);
52
- }
53
-
54
- if (commandOptions.pkg) {
55
- command.pkg = commandOptions.pkg;
56
- } else {
57
- command.pkg = 'webpack-cli';
58
- }
59
-
60
- const { forHelp } = this.program;
61
-
62
- let allDependenciesInstalled = true;
63
-
64
- if (commandOptions.dependencies && commandOptions.dependencies.length > 0) {
65
- for (const dependency of commandOptions.dependencies) {
66
- const { packageExists } = this.utils;
67
- const isPkgExist = packageExists(dependency);
68
-
69
- if (isPkgExist) {
70
- continue;
71
- } else if (!isPkgExist && forHelp) {
72
- allDependenciesInstalled = false;
73
- continue;
74
- }
75
-
76
- const { promptInstallation, colors } = this.utils;
77
-
78
- try {
79
- await promptInstallation(dependency, () => {
80
- this.logger.error(
81
- `For using '${colors.green(commandOptions.name.split(' ')[0])}' command you need to install: '${colors.green(
82
- dependency,
83
- )}' package`,
84
- );
85
- });
86
- } catch (error) {
87
- this.logger.error("Action Interrupted, use 'webpack-cli help' to see possible commands.");
88
- this.logger.error(error);
89
- process.exit(2);
90
- }
91
- }
92
- }
93
-
94
- if (options) {
95
- if (typeof options === 'function') {
96
- if (forHelp && !allDependenciesInstalled) {
97
- command.description(
98
- `${commandOptions.description} To see all available options you need to install ${commandOptions.dependencies
99
- .map((dependency) => `'${dependency}'`)
100
- .join(',')}.`,
101
- );
102
- options = [];
103
- } else {
104
- options = options();
105
- }
106
- }
107
-
108
- options.forEach((optionForCommand) => {
109
- this.makeOption(command, optionForCommand);
110
- });
111
- }
112
-
113
- command.action(action);
114
-
115
- return command;
116
- }
117
-
118
- makeOption(command, option) {
119
- let type = option.type;
120
- let isMultipleTypes = Array.isArray(type);
121
- let isOptional = false;
122
-
123
- if (isMultipleTypes) {
124
- if (type.length === 1) {
125
- type = type[0];
126
- isMultipleTypes = false;
127
- } else {
128
- isOptional = type.includes(Boolean);
129
- }
130
- }
131
-
132
- const isMultiple = option.multiple;
133
- const isRequired = type !== Boolean && typeof type !== 'undefined';
134
-
135
- let flags = option.alias ? `-${option.alias}, --${option.name}` : `--${option.name}`;
136
-
137
- if (isOptional) {
138
- // `commander.js` recognizes [value] as an optional placeholder, making this flag work either as a string or a boolean
139
- flags = `${flags} [value${isMultiple ? '...' : ''}]`;
140
- } else if (isRequired) {
141
- // <value> is a required placeholder for any non-Boolean types
142
- flags = `${flags} <value${isMultiple ? '...' : ''}>`;
143
- }
144
-
145
- // TODO `describe` used by `webpack-dev-server@3`
146
- const description = option.description || option.describe || '';
147
- const defaultValue = option.defaultValue;
148
-
149
- if (type === Boolean) {
150
- command.option(flags, description, defaultValue);
151
- } else if (type === Number) {
152
- let skipDefault = true;
153
-
154
- command.option(
155
- flags,
156
- description,
157
- (value, prev = []) => {
158
- if (defaultValue && isMultiple && skipDefault) {
159
- prev = [];
160
- skipDefault = false;
161
- }
162
-
163
- return isMultiple ? [].concat(prev).concat(Number(value)) : Number(value);
164
- },
165
- defaultValue,
166
- );
167
- } else if (type === String) {
168
- let skipDefault = true;
169
-
170
- command.option(
171
- flags,
172
- description,
173
- (value, prev = []) => {
174
- if (defaultValue && isMultiple && skipDefault) {
175
- prev = [];
176
- skipDefault = false;
177
- }
178
-
179
- return isMultiple ? [].concat(prev).concat(value) : value;
180
- },
181
- defaultValue,
182
- );
183
- } else if (isMultipleTypes) {
184
- let skipDefault = true;
185
-
186
- command.option(
187
- flags,
188
- description,
189
- (value, prev = []) => {
190
- if (defaultValue && isMultiple && skipDefault) {
191
- prev = [];
192
- skipDefault = false;
193
- }
194
-
195
- if (type.includes(Number)) {
196
- const numberValue = Number(value);
197
-
198
- if (!isNaN(numberValue)) {
199
- return isMultiple ? [].concat(prev).concat(numberValue) : numberValue;
200
- }
201
- }
202
-
203
- if (type.includes(String)) {
204
- return isMultiple ? [].concat(prev).concat(value) : value;
205
- }
206
-
207
- return value;
208
- },
209
- defaultValue,
210
- );
211
- } else {
212
- command.option(flags, description, type, defaultValue);
213
- }
214
-
215
- if (option.negative) {
216
- // commander requires explicitly adding the negated version of boolean flags
217
- const negatedFlag = `--no-${option.name}`;
218
-
219
- command.option(negatedFlag, option.negatedDescription ? option.negatedDescription : `Negative '${option.name}' option.`);
220
- }
221
- }
222
-
223
- getBuiltInOptions() {
224
- if (this.builtInOptionsCache) {
225
- return this.builtInOptionsCache;
226
- }
227
-
228
- const minimumHelpFlags = [
229
- 'config',
230
- 'config-name',
231
- 'merge',
232
- 'env',
233
- 'mode',
234
- 'watch',
235
- 'watch-options-stdin',
236
- 'stats',
237
- 'devtool',
238
- 'entry',
239
- 'target',
240
- 'progress',
241
- 'json',
242
- 'name',
243
- 'output-path',
244
- ];
245
-
246
- const builtInFlags = [
247
- // For configs
248
- {
249
- name: 'config',
250
- alias: 'c',
251
- type: String,
252
- multiple: true,
253
- description: 'Provide path to a webpack configuration file e.g. ./webpack.config.js.',
254
- },
255
- {
256
- name: 'config-name',
257
- type: String,
258
- multiple: true,
259
- description: 'Name of the configuration to use.',
260
- },
261
- {
262
- name: 'merge',
263
- alias: 'm',
264
- type: Boolean,
265
- description: "Merge two or more configurations using 'webpack-merge'.",
266
- },
267
- // Complex configs
268
- {
269
- name: 'env',
270
- type: (value, previous = {}) => {
271
- // This ensures we're only splitting by the first `=`
272
- const [allKeys, val] = value.split(/=(.+)/, 2);
273
- const splitKeys = allKeys.split(/\.(?!$)/);
274
-
275
- let prevRef = previous;
276
-
277
- splitKeys.forEach((someKey, index) => {
278
- if (!prevRef[someKey]) {
279
- prevRef[someKey] = {};
280
- }
281
-
282
- if (typeof prevRef[someKey] === 'string') {
283
- prevRef[someKey] = {};
284
- }
285
-
286
- if (index === splitKeys.length - 1) {
287
- prevRef[someKey] = val || true;
288
- }
289
-
290
- prevRef = prevRef[someKey];
291
- });
292
-
293
- return previous;
294
- },
295
- multiple: true,
296
- description: 'Environment passed to the configuration when it is a function.',
297
- },
298
- {
299
- name: 'node-env',
300
- type: String,
301
- multiple: false,
302
- description: 'Sets process.env.NODE_ENV to the specified value',
303
- },
304
-
305
- // Adding more plugins
306
- {
307
- name: 'hot',
308
- alias: 'h',
309
- type: Boolean,
310
- negative: true,
311
- description: 'Enables Hot Module Replacement',
312
- negatedDescription: 'Disables Hot Module Replacement.',
313
- },
314
- {
315
- name: 'analyze',
316
- type: Boolean,
317
- multiple: false,
318
- description: 'It invokes webpack-bundle-analyzer plugin to get bundle information.',
319
- },
320
- {
321
- name: 'progress',
322
- type: [Boolean, String],
323
- description: 'Print compilation progress during build.',
324
- },
325
- {
326
- name: 'prefetch',
327
- type: String,
328
- description: 'Prefetch this request.',
329
- },
330
-
331
- // Output options
332
- {
333
- name: 'json',
334
- type: [String, Boolean],
335
- alias: 'j',
336
- description: 'Prints result as JSON or store it in a file.',
337
- },
338
-
339
- // For webpack@4
340
- {
341
- name: 'entry',
342
- type: String,
343
- multiple: true,
344
- description: 'The entry point(s) of your application e.g. ./src/main.js.',
345
- },
346
- {
347
- name: 'output-path',
348
- alias: 'o',
349
- type: String,
350
- description: 'Output location of the file generated by webpack e.g. ./dist/.',
351
- },
352
- {
353
- name: 'target',
354
- alias: 't',
355
- type: String,
356
- multiple: this.webpack.cli !== undefined,
357
- description: 'Sets the build target e.g. node.',
358
- },
359
- {
360
- name: 'devtool',
361
- type: String,
362
- negative: true,
363
- alias: 'd',
364
- description: 'Determine source maps to use.',
365
- negatedDescription: 'Do not generate source maps.',
366
- },
367
- {
368
- name: 'mode',
369
- type: String,
370
- description: 'Defines the mode to pass to webpack.',
371
- },
372
- {
373
- name: 'name',
374
- type: String,
375
- description: 'Name of the configuration. Used when loading multiple configurations.',
376
- },
377
- {
378
- name: 'stats',
379
- type: [String, Boolean],
380
- negative: true,
381
- description: 'It instructs webpack on how to treat the stats e.g. verbose.',
382
- negatedDescription: 'Disable stats output.',
383
- },
384
- {
385
- name: 'watch',
386
- type: Boolean,
387
- negative: true,
388
- alias: 'w',
389
- description: 'Watch for files changes.',
390
- negatedDescription: 'Do not watch for file changes.',
391
- },
392
- {
393
- name: 'watch-options-stdin',
394
- type: Boolean,
395
- negative: true,
396
- description: 'Stop watching when stdin stream has ended.',
397
- negatedDescription: 'Do not stop watching when stdin stream has ended.',
398
- },
399
- ];
400
-
401
- // Extract all the flags being exported from core.
402
- // A list of cli flags generated by core can be found here https://github.com/webpack/webpack/blob/master/test/__snapshots__/Cli.test.js.snap
403
- const coreFlags = this.webpack.cli
404
- ? Object.entries(this.webpack.cli.getArguments()).map(([flag, meta]) => {
405
- if (meta.simpleType === 'string') {
406
- meta.type = String;
407
- } else if (meta.simpleType === 'number') {
408
- meta.type = Number;
409
- } else {
410
- meta.type = Boolean;
411
- meta.negative = !flag.endsWith('-reset');
412
- }
413
-
414
- const inBuiltIn = builtInFlags.find((builtInFlag) => builtInFlag.name === flag);
415
-
416
- if (inBuiltIn) {
417
- return { ...meta, name: flag, group: 'core', ...inBuiltIn };
418
- }
419
-
420
- return { ...meta, name: flag, group: 'core' };
421
- })
422
- : [];
423
-
424
- const options = []
425
- .concat(builtInFlags.filter((builtInFlag) => !coreFlags.find((coreFlag) => builtInFlag.name === coreFlag.name)))
426
- .concat(coreFlags)
427
- .map((option) => {
428
- option.help = minimumHelpFlags.includes(option.name) ? 'minimum' : 'verbose';
429
-
430
- return option;
431
- });
432
-
433
- this.builtInOptionsCache = options;
434
-
435
- return options;
436
- }
437
-
438
- applyNodeEnv(options) {
439
- if (typeof options.nodeEnv === 'string') {
440
- process.env.NODE_ENV = options.nodeEnv;
441
- }
442
- }
443
-
444
- async run(args, parseOptions) {
445
- // Built-in internal commands
446
- const buildCommandOptions = {
447
- name: 'build [entries...]',
448
- alias: ['bundle', 'b'],
449
- description: 'Run webpack (default command, can be omitted).',
450
- usage: '[entries...] [options]',
451
- };
452
- const watchCommandOptions = {
453
- name: 'watch [entries...]',
454
- alias: 'w',
455
- description: 'Run webpack and watch for files changes.',
456
- usage: '[entries...] [options]',
457
- };
458
- const versionCommandOptions = {
459
- name: 'version [commands...]',
460
- alias: 'v',
461
- description: "Output the version number of 'webpack', 'webpack-cli' and 'webpack-dev-server' and commands.",
462
- };
463
- const helpCommandOptions = {
464
- name: 'help [command] [option]',
465
- alias: 'h',
466
- description: 'Display help for commands and options.',
467
- };
468
- // Built-in external commands
469
- const externalBuiltInCommandsInfo = [
470
- {
471
- name: 'serve [entries...]',
472
- alias: 's',
473
- pkg: '@webpack-cli/serve',
474
- },
475
- {
476
- name: 'info',
477
- alias: 'i',
478
- pkg: '@webpack-cli/info',
479
- },
480
- {
481
- name: 'init',
482
- alias: 'c',
483
- pkg: '@webpack-cli/init',
484
- },
485
- {
486
- name: 'loader',
487
- alias: 'l',
488
- pkg: '@webpack-cli/generators',
489
- },
490
- {
491
- name: 'plugin',
492
- alias: 'p',
493
- pkg: '@webpack-cli/generators',
494
- },
495
- {
496
- name: 'migrate',
497
- alias: 'm',
498
- pkg: '@webpack-cli/migrate',
499
- },
500
- {
501
- name: 'configtest [config-path]',
502
- alias: 't',
503
- pkg: '@webpack-cli/configtest',
504
- },
505
- ];
506
-
507
- const knownCommands = [
508
- buildCommandOptions,
509
- watchCommandOptions,
510
- versionCommandOptions,
511
- helpCommandOptions,
512
- ...externalBuiltInCommandsInfo,
513
- ];
514
- const getCommandName = (name) => name.split(' ')[0];
515
- const isKnownCommand = (name) =>
516
- knownCommands.find(
517
- (command) =>
518
- getCommandName(command.name) === name ||
519
- (Array.isArray(command.alias) ? command.alias.includes(name) : command.alias === name),
520
- );
521
- const isCommand = (input, commandOptions) => {
522
- const longName = getCommandName(commandOptions.name);
523
-
524
- if (input === longName) {
525
- return true;
526
- }
527
-
528
- if (commandOptions.alias) {
529
- if (Array.isArray(commandOptions.alias)) {
530
- return commandOptions.alias.includes(input);
531
- } else {
532
- return commandOptions.alias === input;
533
- }
534
- }
535
-
536
- return false;
537
- };
538
- const findCommandByName = (name) =>
539
- this.program.commands.find((command) => name === command.name() || command.alias().includes(name));
540
- const isOption = (value) => value.startsWith('-');
541
- const isGlobalOption = (value) =>
542
- value === '--color' ||
543
- value === '--no-color' ||
544
- value === '-v' ||
545
- value === '--version' ||
546
- value === '-h' ||
547
- value === '--help';
548
-
549
- const loadCommandByName = async (commandName, allowToInstall = false) => {
550
- const isBuildCommandUsed = isCommand(commandName, buildCommandOptions);
551
- const isWatchCommandUsed = isCommand(commandName, watchCommandOptions);
552
-
553
- if (isBuildCommandUsed || isWatchCommandUsed) {
554
- const options = this.getBuiltInOptions();
555
-
556
- await this.makeCommand(
557
- isBuildCommandUsed ? buildCommandOptions : watchCommandOptions,
558
- isWatchCommandUsed ? options.filter((option) => option.name !== 'watch') : options,
559
- async (entries, options) => {
560
- if (entries.length > 0) {
561
- options.entry = [...entries, ...(options.entry || [])];
562
- }
563
-
564
- await this.buildCommand(options, isWatchCommandUsed);
565
- },
566
- );
567
- } else if (isCommand(commandName, helpCommandOptions)) {
568
- // Stub for the `help` command
569
- this.makeCommand(helpCommandOptions, [], () => {});
570
- } else if (isCommand(commandName, versionCommandOptions)) {
571
- // Stub for the `help` command
572
- this.makeCommand(versionCommandOptions, [], () => {});
573
- } else {
574
- const builtInExternalCommandInfo = externalBuiltInCommandsInfo.find(
575
- (externalBuiltInCommandInfo) =>
576
- getCommandName(externalBuiltInCommandInfo.name) === commandName ||
577
- (Array.isArray(externalBuiltInCommandInfo.alias)
578
- ? externalBuiltInCommandInfo.alias.includes(commandName)
579
- : externalBuiltInCommandInfo.alias === commandName),
580
- );
581
-
582
- let pkg;
583
-
584
- if (builtInExternalCommandInfo) {
585
- ({ pkg } = builtInExternalCommandInfo);
586
- } else {
587
- pkg = commandName;
588
- }
589
-
590
- if (pkg !== 'webpack-cli' && !this.utils.packageExists(pkg)) {
591
- if (!allowToInstall) {
592
- return;
593
- }
594
-
595
- const { promptInstallation, colors } = this.utils;
596
-
597
- try {
598
- pkg = await promptInstallation(pkg, () => {
599
- this.logger.error(`For using this command you need to install: '${colors.green(pkg)}' package`);
600
- });
601
- } catch (error) {
602
- this.logger.error(`Action Interrupted, use '${colors.cyan('webpack-cli help')}' to see possible commands`);
603
- process.exit(2);
604
- }
605
- }
606
-
607
- let loadedCommand;
608
-
609
- try {
610
- loadedCommand = require(pkg);
611
- } catch (error) {
612
- // Ignore, command is not installed
613
-
614
- return;
615
- }
616
-
617
- if (loadedCommand.default) {
618
- loadedCommand = loadedCommand.default;
619
- }
620
-
621
- let command;
622
-
623
- try {
624
- command = new loadedCommand();
625
-
626
- await command.apply(this);
627
- } catch (error) {
628
- this.logger.error(`Unable to load '${pkg}' command`);
629
- this.logger.error(error);
630
- process.exit(2);
631
- }
632
- }
633
- };
634
-
635
- // Register own exit
636
- this.program.exitOverride(async (error) => {
637
- if (error.exitCode === 0) {
638
- process.exit(0);
639
- }
640
-
641
- if (error.code === 'executeSubCommandAsync') {
642
- process.exit(2);
643
- }
644
-
645
- if (error.code === 'commander.help') {
646
- process.exit(0);
647
- }
648
-
649
- if (error.code === 'commander.unknownOption') {
650
- let name = error.message.match(/'(.+)'/);
651
-
652
- if (name) {
653
- name = name[1].substr(2);
654
-
655
- if (name.includes('=')) {
656
- name = name.split('=')[0];
657
- }
658
-
659
- const { operands } = this.program.parseOptions(this.program.args);
660
- const operand = typeof operands[0] !== 'undefined' ? operands[0] : getCommandName(buildCommandOptions.name);
661
-
662
- if (operand) {
663
- const command = findCommandByName(operand);
664
-
665
- if (!command) {
666
- this.logger.error(`Can't find and load command '${operand}'`);
667
- this.logger.error("Run 'webpack --help' to see available commands and options");
668
- process.exit(2);
669
- }
670
-
671
- command.options.forEach((option) => {
672
- if (this.utils.levenshtein.distance(name, option.long.slice(2)) < 3) {
673
- this.logger.error(`Did you mean '--${option.name()}'?`);
674
- }
675
- });
676
- }
677
- }
678
- }
679
-
680
- // Codes:
681
- // - commander.unknownCommand
682
- // - commander.missingArgument
683
- // - commander.missingMandatoryOptionValue
684
- // - commander.optionMissingArgument
685
-
686
- this.logger.error("Run 'webpack --help' to see available commands and options");
687
- process.exit(2);
688
- });
689
-
690
- // Default `--color` and `--no-color` options
691
- const cli = this;
692
- this.program.option('--color', 'Enable colors on console.');
693
- this.program.on('option:color', function () {
694
- const { color } = this.opts();
695
-
696
- cli.utils.colors.options.changed = true;
697
- cli.utils.colors.options.enabled = color;
698
- });
699
- this.program.option('--no-color', 'Disable colors on console.');
700
- this.program.on('option:no-color', function () {
701
- const { color } = this.opts();
702
-
703
- cli.utils.colors.options.changed = true;
704
- cli.utils.colors.options.enabled = color;
705
- });
706
-
707
- // Make `-v, --version` options
708
- // Make `version|v [commands...]` command
709
- const outputVersion = async (options) => {
710
- // Filter `bundle`, `watch`, `version` and `help` commands
711
- const possibleCommandNames = options.filter(
712
- (option) =>
713
- !isCommand(option, buildCommandOptions) &&
714
- !isCommand(option, watchCommandOptions) &&
715
- !isCommand(option, versionCommandOptions) &&
716
- !isCommand(option, helpCommandOptions),
717
- );
718
-
719
- possibleCommandNames.forEach((possibleCommandName) => {
720
- if (!isOption(possibleCommandName)) {
721
- return;
722
- }
723
-
724
- this.logger.error(`Unknown option '${possibleCommandName}'`);
725
- this.logger.error("Run 'webpack --help' to see available commands and options");
726
- process.exit(2);
727
- });
728
-
729
- if (possibleCommandNames.length > 0) {
730
- await Promise.all(possibleCommandNames.map((possibleCommand) => loadCommandByName(possibleCommand)));
731
-
732
- for (const possibleCommandName of possibleCommandNames) {
733
- const foundCommand = findCommandByName(possibleCommandName);
734
-
735
- if (!foundCommand) {
736
- this.logger.error(`Unknown command '${possibleCommandName}'`);
737
- this.logger.error("Run 'webpack --help' to see available commands and options");
738
- process.exit(2);
739
- }
740
-
741
- try {
742
- const { name, version } = require(`${foundCommand.pkg}/package.json`);
743
-
744
- this.logger.raw(`${name} ${version}`);
745
- } catch (e) {
746
- this.logger.error(`Error: External package '${foundCommand.pkg}' not found`);
747
- process.exit(2);
748
- }
749
- }
750
- }
751
-
752
- const pkgJSON = require('../package.json');
753
-
754
- this.logger.raw(`webpack ${this.webpack.version}`);
755
- this.logger.raw(`webpack-cli ${pkgJSON.version}`);
756
-
757
- if (this.utils.packageExists('webpack-dev-server')) {
758
- // eslint-disable-next-line
759
- const { version } = require('webpack-dev-server/package.json');
760
-
761
- this.logger.raw(`webpack-dev-server ${version}`);
762
- }
763
-
764
- process.exit(0);
765
- };
766
- this.program.option(
767
- '-v, --version',
768
- "Output the version number of 'webpack', 'webpack-cli' and 'webpack-dev-server' and commands.",
769
- );
770
-
771
- const outputHelp = async (options, isVerbose, isHelpCommandSyntax, program) => {
772
- const { bold } = this.utils.colors;
773
-
774
- const outputIncorrectUsageOfHelp = () => {
775
- this.logger.error('Incorrect use of help');
776
- this.logger.error("Please use: 'webpack help [command] [option]' | 'webpack [command] --help'");
777
- this.logger.error("Run 'webpack --help' to see available commands and options");
778
- process.exit(2);
779
- };
780
-
781
- const isGlobalHelp = options.length === 0;
782
- const isCommandHelp = options.length === 1 && !isOption(options[0]);
783
-
784
- if (isGlobalHelp || isCommandHelp) {
785
- const cliAPI = this;
786
-
787
- program.configureHelp({
788
- sortSubcommands: true,
789
- // Support multiple aliases
790
- commandUsage: (command) => {
791
- let parentCmdNames = '';
792
-
793
- for (let parentCmd = command.parent; parentCmd; parentCmd = parentCmd.parent) {
794
- parentCmdNames = `${parentCmd.name()} ${parentCmdNames}`;
795
- }
796
-
797
- if (isGlobalHelp) {
798
- return `${parentCmdNames}${command.usage()}\n${this.utils.colors.bold(
799
- 'Alternative usage to run commands:',
800
- )} ${parentCmdNames}[command] [options]`;
801
- }
802
-
803
- return `${parentCmdNames}${command.name()}|${command.aliases().join('|')} ${command.usage()}`;
804
- },
805
- // Support multiple aliases
806
- subcommandTerm: (command) => {
807
- const humanReadableArgumentName = (argument) => {
808
- const nameOutput = argument.name + (argument.variadic === true ? '...' : '');
809
-
810
- return argument.required ? '<' + nameOutput + '>' : '[' + nameOutput + ']';
811
- };
812
- const args = command._args.map((arg) => humanReadableArgumentName(arg)).join(' ');
813
-
814
- return `${command.name()}|${command.aliases().join('|')}${args ? ` ${args}` : ''}${
815
- command.options.length > 0 ? ' [options]' : ''
816
- }`;
817
- },
818
- visibleOptions: function visibleOptions(command) {
819
- const options = cliAPI.getBuiltInOptions();
820
-
821
- return command.options.filter((option) => {
822
- if (option.hidden) {
823
- return false;
824
- }
825
-
826
- if (!isVerbose) {
827
- const foundOption = options.find((flag) => {
828
- if (option.negate && flag.negative) {
829
- return `no-${flag.name}` === option.name();
830
- }
831
-
832
- return flag.name === option.name();
833
- });
834
-
835
- if (foundOption) {
836
- return foundOption.help === 'minimum';
837
- }
838
-
839
- return true;
840
- }
841
-
842
- return true;
843
- });
844
- },
845
- padWidth(command, helper) {
846
- return Math.max(
847
- helper.longestArgumentTermLength(command, helper),
848
- helper.longestOptionTermLength(command, helper),
849
- // For global options
850
- helper.longestOptionTermLength(program, helper),
851
- helper.longestSubcommandTermLength(isGlobalHelp ? program : command, helper),
852
- );
853
- },
854
- formatHelp: (command, helper) => {
855
- const termWidth = helper.padWidth(command, helper);
856
- const helpWidth = helper.helpWidth || 80;
857
- const itemIndentWidth = 2;
858
- const itemSeparatorWidth = 2; // between term and description
859
-
860
- const formatItem = (term, description) => {
861
- if (description) {
862
- const fullText = `${term.padEnd(termWidth + itemSeparatorWidth)}${description}`;
863
-
864
- return helper.wrap(fullText, helpWidth - itemIndentWidth, termWidth + itemSeparatorWidth);
865
- }
866
-
867
- return term;
868
- };
869
-
870
- const formatList = (textArray) => textArray.join('\n').replace(/^/gm, ' '.repeat(itemIndentWidth));
871
-
872
- // Usage
873
- let output = [`${bold('Usage:')} ${helper.commandUsage(command)}`, ''];
874
-
875
- // Description
876
- const commandDescription = isGlobalHelp
877
- ? 'The build tool for modern web applications.'
878
- : helper.commandDescription(command);
879
-
880
- if (commandDescription.length > 0) {
881
- output = output.concat([commandDescription, '']);
882
- }
883
-
884
- // Arguments
885
- const argumentList = helper
886
- .visibleArguments(command)
887
- .map((argument) => formatItem(argument.term, argument.description));
888
-
889
- if (argumentList.length > 0) {
890
- output = output.concat([bold('Arguments:'), formatList(argumentList), '']);
891
- }
892
-
893
- // Options
894
- const optionList = helper
895
- .visibleOptions(command)
896
- .map((option) => formatItem(helper.optionTerm(option), helper.optionDescription(option)));
897
-
898
- if (optionList.length > 0) {
899
- output = output.concat([bold('Options:'), formatList(optionList), '']);
900
- }
901
-
902
- // Global options
903
- const globalOptionList = program.options.map((option) =>
904
- formatItem(helper.optionTerm(option), helper.optionDescription(option)),
905
- );
906
-
907
- if (globalOptionList.length > 0) {
908
- output = output.concat([bold('Global options:'), formatList(globalOptionList), '']);
909
- }
910
-
911
- // Commands
912
- const commandList = helper
913
- .visibleCommands(isGlobalHelp ? program : command)
914
- .map((command) => formatItem(helper.subcommandTerm(command), helper.subcommandDescription(command)));
915
-
916
- if (commandList.length > 0) {
917
- output = output.concat([bold('Commands:'), formatList(commandList), '']);
918
- }
919
-
920
- return output.join('\n');
921
- },
922
- });
923
-
924
- if (isGlobalHelp) {
925
- await Promise.all(
926
- knownCommands.map((knownCommand) => {
927
- return loadCommandByName(getCommandName(knownCommand.name));
928
- }),
929
- );
930
-
931
- const buildCommand = findCommandByName(getCommandName(buildCommandOptions.name));
932
-
933
- this.logger.raw(buildCommand.helpInformation());
934
- } else {
935
- const name = options[0];
936
-
937
- await loadCommandByName(name);
938
-
939
- const command = findCommandByName(name);
940
-
941
- if (!command) {
942
- this.logger.error(`Can't find and load command '${name}'`);
943
- this.logger.error("Run 'webpack --help' to see available commands and options");
944
- process.exit(2);
945
- }
946
-
947
- this.logger.raw(command.helpInformation());
948
- }
949
- } else if (isHelpCommandSyntax) {
950
- let isCommandSpecified = false;
951
- let commandName = getCommandName(buildCommandOptions.name);
952
- let optionName;
953
-
954
- if (options.length === 1) {
955
- optionName = options[0];
956
- } else if (options.length === 2) {
957
- isCommandSpecified = true;
958
- commandName = options[0];
959
- optionName = options[1];
960
-
961
- if (isOption(commandName)) {
962
- outputIncorrectUsageOfHelp();
963
- }
964
- } else {
965
- outputIncorrectUsageOfHelp();
966
- }
967
-
968
- await loadCommandByName(commandName);
969
-
970
- const command = isGlobalOption(optionName) ? program : findCommandByName(commandName);
971
-
972
- if (!command) {
973
- this.logger.error(`Can't find and load command '${commandName}'`);
974
- this.logger.error("Run 'webpack --help' to see available commands and options");
975
- process.exit(2);
976
- }
977
-
978
- const option = command.options.find((option) => option.short === optionName || option.long === optionName);
979
-
980
- if (!option) {
981
- this.logger.error(`Unknown option '${optionName}'`);
982
- this.logger.error("Run 'webpack --help' to see available commands and options");
983
- process.exit(2);
984
- }
985
-
986
- const nameOutput =
987
- option.flags.replace(/^.+[[<]/, '').replace(/(\.\.\.)?[\]>].*$/, '') + (option.variadic === true ? '...' : '');
988
- const value = option.required ? '<' + nameOutput + '>' : option.optional ? '[' + nameOutput + ']' : '';
989
-
990
- this.logger.raw(
991
- `${bold('Usage')}: webpack${isCommandSpecified ? ` ${commandName}` : ''} ${option.long}${value ? ` ${value}` : ''}`,
992
- );
993
-
994
- if (option.short) {
995
- this.logger.raw(
996
- `${bold('Short:')} webpack${isCommandSpecified ? ` ${commandName}` : ''} ${option.short}${
997
- value ? ` ${value}` : ''
998
- }`,
999
- );
1000
- }
1001
-
1002
- if (option.description) {
1003
- this.logger.raw(`${bold('Description:')} ${option.description}`);
1004
- }
1005
-
1006
- if (!option.negate && options.defaultValue) {
1007
- this.logger.raw(`${bold('Default value:')} ${JSON.stringify(option.defaultValue)}`);
1008
- }
1009
-
1010
- this.logger.raw('');
1011
-
1012
- // TODO implement this after refactor cli arguments
1013
- // logger.raw('Possible values: foo | bar');
1014
- // logger.raw('Documentation: https://webpack.js.org/option/name/');
1015
- } else {
1016
- outputIncorrectUsageOfHelp();
1017
- }
1018
-
1019
- this.logger.raw("To see list of all supported commands and options run 'webpack --help=verbose'.\n");
1020
- this.logger.raw(`${bold('Webpack documentation:')} https://webpack.js.org/.`);
1021
- this.logger.raw(`${bold('CLI documentation:')} https://webpack.js.org/api/cli/.`);
1022
- this.logger.raw(`${bold('Made with ♥ by the webpack team')}.`);
1023
- process.exit(0);
1024
- };
1025
- this.program.helpOption(false);
1026
- this.program.addHelpCommand(false);
1027
- this.program.option('-h, --help [verbose]', 'Display help for commands and options.');
1028
-
1029
- let isInternalActionCalled = false;
1030
-
1031
- // Default action
1032
- this.program.usage('[options]');
1033
- this.program.allowUnknownOption(true);
1034
- this.program.action(async (options, program) => {
1035
- if (!isInternalActionCalled) {
1036
- isInternalActionCalled = true;
1037
- } else {
1038
- this.logger.error('No commands found to run');
1039
- process.exit(2);
1040
- }
1041
-
1042
- // Command and options
1043
- const { operands, unknown } = this.program.parseOptions(program.args);
1044
- const defaultCommandToRun = getCommandName(buildCommandOptions.name);
1045
- const hasOperand = typeof operands[0] !== 'undefined';
1046
- const operand = hasOperand ? operands[0] : defaultCommandToRun;
1047
-
1048
- const isHelpCommandSyntax = isCommand(operand, helpCommandOptions);
1049
-
1050
- if (options.help || isHelpCommandSyntax) {
1051
- let isVerbose = false;
1052
-
1053
- if (options.help) {
1054
- if (typeof options.help === 'string') {
1055
- if (options.help !== 'verbose') {
1056
- this.logger.error("Unknown value for '--help' option, please use '--help=verbose'");
1057
- process.exit(2);
1058
- }
1059
-
1060
- isVerbose = true;
1061
- }
1062
- }
1063
-
1064
- this.program.forHelp = true;
1065
-
1066
- const optionsForHelp = []
1067
- .concat(options.help && hasOperand ? [operand] : [])
1068
- // Syntax `webpack help [command]`
1069
- .concat(operands.slice(1))
1070
- // Syntax `webpack help [option]`
1071
- .concat(unknown)
1072
- .concat(isHelpCommandSyntax && typeof options.color !== 'undefined' ? [options.color ? '--color' : '--no-color'] : [])
1073
- .concat(isHelpCommandSyntax && typeof options.version !== 'undefined' ? ['--version'] : []);
1074
-
1075
- await outputHelp(optionsForHelp, isVerbose, isHelpCommandSyntax, program);
1076
- }
1077
-
1078
- if (options.version || isCommand(operand, versionCommandOptions)) {
1079
- const optionsForVersion = []
1080
- .concat(options.version ? [operand] : [])
1081
- .concat(operands.slice(1))
1082
- .concat(unknown);
1083
-
1084
- await outputVersion(optionsForVersion, program);
1085
- }
1086
-
1087
- let commandToRun = operand;
1088
- let commandOperands = operands.slice(1);
1089
-
1090
- if (isKnownCommand(commandToRun)) {
1091
- await loadCommandByName(commandToRun, true);
1092
- } else {
1093
- let isEntrySyntax = fs.existsSync(operand);
1094
-
1095
- if (isEntrySyntax) {
1096
- commandToRun = defaultCommandToRun;
1097
- commandOperands = operands;
1098
-
1099
- await loadCommandByName(commandToRun);
1100
- } else {
1101
- this.logger.error(`Unknown command or entry '${operand}'`);
1102
-
1103
- const found = knownCommands.find(
1104
- (commandOptions) => this.utils.levenshtein.distance(operand, getCommandName(commandOptions.name)) < 3,
1105
- );
1106
-
1107
- if (found) {
1108
- this.logger.error(
1109
- `Did you mean '${getCommandName(found.name)}' (alias '${
1110
- Array.isArray(found.alias) ? found.alias.join(', ') : found.alias
1111
- }')?`,
1112
- );
1113
- }
1114
-
1115
- this.logger.error("Run 'webpack --help' to see available commands and options");
1116
- process.exit(2);
1117
- }
1118
- }
1119
-
1120
- await this.program.parseAsync([commandToRun, ...commandOperands, ...unknown], { from: 'user' });
1121
- });
1122
-
1123
- await this.program.parseAsync(args, parseOptions);
1124
- }
1125
-
1126
- async resolveConfig(options) {
1127
- const loadConfig = async (configPath) => {
1128
- const { interpret } = this.utils;
1129
- const ext = path.extname(configPath);
1130
- const interpreted = Object.keys(interpret.jsVariants).find((variant) => variant === ext);
1131
-
1132
- if (interpreted) {
1133
- const { rechoir } = this.utils;
1134
-
1135
- try {
1136
- rechoir.prepare(interpret.extensions, configPath);
1137
- } catch (error) {
1138
- if (error.failures) {
1139
- this.logger.error(`Unable load '${configPath}'`);
1140
- this.logger.error(error.message);
1141
-
1142
- error.failures.forEach((failure) => {
1143
- this.logger.error(failure.error.message);
1144
- });
1145
- this.logger.error('Please install one of them');
1146
- process.exit(2);
1147
- }
1148
-
1149
- this.logger.error(error);
1150
- process.exit(2);
1151
- }
1152
- }
1153
-
1154
- let options;
1155
-
1156
- try {
1157
- try {
1158
- options = require(configPath);
1159
- } catch (error) {
1160
- let previousModuleCompile;
1161
-
1162
- // TODO Workaround https://github.com/zertosh/v8-compile-cache/issues/30
1163
- if (this._originalModuleCompile) {
1164
- previousModuleCompile = Module.prototype._compile;
1165
-
1166
- Module.prototype._compile = this._originalModuleCompile;
1167
- }
1168
-
1169
- const dynamicImportLoader = this.utils.dynamicImportLoader();
1170
-
1171
- if (this._originalModuleCompile) {
1172
- Module.prototype._compile = previousModuleCompile;
1173
- }
1174
-
1175
- if (
1176
- (error.code === 'ERR_REQUIRE_ESM' || process.env.WEBPACK_CLI_FORCE_LOAD_ESM_CONFIG) &&
1177
- pathToFileURL &&
1178
- dynamicImportLoader
1179
- ) {
1180
- const urlForConfig = pathToFileURL(configPath);
1181
-
1182
- options = await dynamicImportLoader(urlForConfig);
1183
- options = options.default;
1184
-
1185
- return { options, path: configPath };
1186
- }
1187
-
1188
- throw error;
1189
- }
1190
- } catch (error) {
1191
- this.logger.error(`Failed to load '${configPath}' config`);
1192
-
1193
- if (this.isValidationError(error)) {
1194
- this.logger.error(error.message);
1195
- } else {
1196
- this.logger.error(error);
1197
- }
1198
-
1199
- process.exit(2);
1200
- }
1201
-
1202
- if (options.default) {
1203
- options = options.default;
1204
- }
1205
-
1206
- return { options, path: configPath };
1207
- };
1208
-
1209
- const evaluateConfig = async (loadedConfig, argv) => {
1210
- const isMultiCompiler = Array.isArray(loadedConfig.options);
1211
- const config = isMultiCompiler ? loadedConfig.options : [loadedConfig.options];
1212
-
1213
- let evaluatedConfig = await Promise.all(
1214
- config.map(async (rawConfig) => {
1215
- if (typeof rawConfig.then === 'function') {
1216
- rawConfig = await rawConfig;
1217
- }
1218
-
1219
- // `Promise` may return `Function`
1220
- if (typeof rawConfig === 'function') {
1221
- // when config is a function, pass the env from args to the config function
1222
- rawConfig = await rawConfig(argv.env, argv);
1223
- }
1224
-
1225
- return rawConfig;
1226
- }),
1227
- );
1228
-
1229
- loadedConfig.options = isMultiCompiler ? evaluatedConfig : evaluatedConfig[0];
1230
-
1231
- const isObject = (value) => typeof value === 'object' && value !== null;
1232
-
1233
- if (!isObject(loadedConfig.options) && !Array.isArray(loadedConfig.options)) {
1234
- this.logger.error(`Invalid configuration in '${loadedConfig.path}'`);
1235
- process.exit(2);
1236
- }
1237
-
1238
- return loadedConfig;
1239
- };
1240
-
1241
- let config = { options: {}, path: new WeakMap() };
1242
-
1243
- if (options.config && options.config.length > 0) {
1244
- const evaluatedConfigs = await Promise.all(
1245
- options.config.map(async (value) => evaluateConfig(await loadConfig(path.resolve(value)), options.argv || {})),
1246
- );
1247
-
1248
- config.options = [];
1249
-
1250
- evaluatedConfigs.forEach((evaluatedConfig) => {
1251
- if (Array.isArray(evaluatedConfig.options)) {
1252
- evaluatedConfig.options.forEach((options) => {
1253
- config.options.push(options);
1254
- config.path.set(options, evaluatedConfig.path);
1255
- });
1256
- } else {
1257
- config.options.push(evaluatedConfig.options);
1258
- config.path.set(evaluatedConfig.options, evaluatedConfig.path);
1259
- }
1260
- });
1261
-
1262
- config.options = config.options.length === 1 ? config.options[0] : config.options;
1263
- } else {
1264
- const { interpret } = this.utils;
1265
-
1266
- // Order defines the priority, in increasing order
1267
- const defaultConfigFiles = ['webpack.config', '.webpack/webpack.config', '.webpack/webpackfile']
1268
- .map((filename) =>
1269
- // Since .cjs is not available on interpret side add it manually to default config extension list
1270
- [...Object.keys(interpret.extensions), '.cjs'].map((ext) => ({
1271
- path: path.resolve(filename + ext),
1272
- ext: ext,
1273
- module: interpret.extensions[ext],
1274
- })),
1275
- )
1276
- .reduce((accumulator, currentValue) => accumulator.concat(currentValue), []);
1277
-
1278
- let foundDefaultConfigFile;
1279
-
1280
- for (const defaultConfigFile of defaultConfigFiles) {
1281
- if (!fs.existsSync(defaultConfigFile.path)) {
1282
- continue;
1283
- }
1284
-
1285
- foundDefaultConfigFile = defaultConfigFile;
1286
- break;
1287
- }
1288
-
1289
- if (foundDefaultConfigFile) {
1290
- const loadedConfig = await loadConfig(foundDefaultConfigFile.path);
1291
- const evaluatedConfig = await evaluateConfig(loadedConfig, options.argv || {});
1292
-
1293
- config.options = evaluatedConfig.options;
1294
-
1295
- if (Array.isArray(config.options)) {
1296
- config.options.forEach((options) => {
1297
- config.path.set(options, evaluatedConfig.path);
1298
- });
1299
- } else {
1300
- config.path.set(evaluatedConfig.options, evaluatedConfig.path);
1301
- }
1302
- }
1303
- }
1304
-
1305
- if (options.configName) {
1306
- const notfoundConfigNames = [];
1307
-
1308
- config.options = options.configName.map((configName) => {
1309
- let found;
1310
-
1311
- if (Array.isArray(config.options)) {
1312
- found = config.options.find((options) => options.name === configName);
1313
- } else {
1314
- found = config.options.name === configName ? config.options : undefined;
1315
- }
1316
-
1317
- if (!found) {
1318
- notfoundConfigNames.push(configName);
1319
- }
1320
-
1321
- return found;
1322
- });
1323
-
1324
- if (notfoundConfigNames.length > 0) {
1325
- this.logger.error(
1326
- notfoundConfigNames.map((configName) => `Configuration with the name "${configName}" was not found.`).join(' '),
1327
- );
1328
- process.exit(2);
1329
- }
1330
- }
1331
-
1332
- if (options.merge) {
1333
- const { merge } = require('webpack-merge');
1334
-
1335
- // we can only merge when there are multiple configurations
1336
- // either by passing multiple configs by flags or passing a
1337
- // single config exporting an array
1338
- if (!Array.isArray(config.options) || config.options.length <= 1) {
1339
- this.logger.error('At least two configurations are required for merge.');
1340
- process.exit(2);
1341
- }
1342
-
1343
- const mergedConfigPaths = [];
1344
-
1345
- config.options = config.options.reduce((accumulator, options) => {
1346
- const configPath = config.path.get(options);
1347
- const mergedOptions = merge(accumulator, options);
1348
-
1349
- mergedConfigPaths.push(configPath);
1350
-
1351
- return mergedOptions;
1352
- }, {});
1353
- config.path.set(config.options, mergedConfigPaths);
1354
- }
1355
-
1356
- return config;
1357
- }
1358
-
1359
- // TODO refactor
1360
- async applyOptions(config, options) {
1361
- if (options.analyze) {
1362
- if (!this.utils.packageExists('webpack-bundle-analyzer')) {
1363
- const { promptInstallation, colors } = this.utils;
1364
-
1365
- try {
1366
- await promptInstallation('webpack-bundle-analyzer', () => {
1367
- this.logger.error(`It looks like ${colors.yellow('webpack-bundle-analyzer')} is not installed.`);
1368
- });
1369
- } catch (error) {
1370
- this.logger.error(
1371
- `Action Interrupted, Please try once again or install ${colors.yellow('webpack-bundle-analyzer')} manually.`,
1372
- );
1373
- process.exit(2);
1374
- }
1375
-
1376
- this.logger.success(`${colors.yellow('webpack-bundle-analyzer')} was installed successfully.`);
1377
- }
1378
- }
1379
-
1380
- if (typeof options.progress === 'string' && options.progress !== 'profile') {
1381
- this.logger.error(`'${options.progress}' is an invalid value for the --progress option. Only 'profile' is allowed.`);
1382
- process.exit(2);
1383
- }
1384
-
1385
- const outputHints = (configOptions) => {
1386
- if (
1387
- configOptions.watch &&
1388
- options.argv &&
1389
- options.argv.env &&
1390
- (options.argv.env['WEBPACK_WATCH'] || options.argv.env['WEBPACK_SERVE'])
1391
- ) {
1392
- this.logger.warn(
1393
- `No need to use the '${
1394
- options.argv.env['WEBPACK_WATCH'] ? 'watch' : 'serve'
1395
- }' command together with '{ watch: true }' configuration, it does not make sense.`,
1396
- );
1397
-
1398
- if (options.argv.env['WEBPACK_SERVE']) {
1399
- configOptions.watch = false;
1400
- }
1401
- }
1402
-
1403
- return configOptions;
1404
- };
1405
-
1406
- config.options = Array.isArray(config.options)
1407
- ? config.options.map((options) => outputHints(options))
1408
- : outputHints(config.options);
1409
-
1410
- if (this.webpack.cli) {
1411
- const processArguments = (configOptions) => {
1412
- const args = this.getBuiltInOptions()
1413
- .filter((flag) => flag.group === 'core')
1414
- .reduce((accumulator, flag) => {
1415
- accumulator[flag.name] = flag;
1416
-
1417
- return accumulator;
1418
- }, {});
1419
-
1420
- const values = Object.keys(options).reduce((accumulator, name) => {
1421
- if (name === 'argv') {
1422
- return accumulator;
1423
- }
1424
-
1425
- const kebabName = this.utils.toKebabCase(name);
1426
-
1427
- if (args[kebabName]) {
1428
- accumulator[kebabName] = options[name];
1429
- }
1430
-
1431
- return accumulator;
1432
- }, {});
1433
-
1434
- const problems = this.webpack.cli.processArguments(args, configOptions, values);
1435
-
1436
- if (problems) {
1437
- const groupBy = (xs, key) => {
1438
- return xs.reduce((rv, x) => {
1439
- (rv[x[key]] = rv[x[key]] || []).push(x);
1440
-
1441
- return rv;
1442
- }, {});
1443
- };
1444
- const problemsByPath = groupBy(problems, 'path');
1445
-
1446
- for (const path in problemsByPath) {
1447
- const problems = problemsByPath[path];
1448
-
1449
- problems.forEach((problem) => {
1450
- this.logger.error(
1451
- `${this.utils.capitalizeFirstLetter(problem.type.replace(/-/g, ' '))}${
1452
- problem.value ? ` '${problem.value}'` : ''
1453
- } for the '--${problem.argument}' option${problem.index ? ` by index '${problem.index}'` : ''}`,
1454
- );
1455
-
1456
- if (problem.expected) {
1457
- this.logger.error(`Expected: '${problem.expected}'`);
1458
- }
1459
- });
1460
- }
1461
-
1462
- process.exit(2);
1463
- }
1464
-
1465
- return configOptions;
1466
- };
1467
-
1468
- config.options = Array.isArray(config.options)
1469
- ? config.options.map((options) => processArguments(options))
1470
- : processArguments(config.options);
1471
-
1472
- const setupDefaultOptions = (configOptions) => {
1473
- // No need to run for webpack@4
1474
- if (configOptions.cache && configOptions.cache.type === 'filesystem') {
1475
- const configPath = config.path.get(configOptions);
1476
-
1477
- if (configPath) {
1478
- if (!configOptions.cache.buildDependencies) {
1479
- configOptions.cache.buildDependencies = {};
1480
- }
1481
-
1482
- if (!configOptions.cache.buildDependencies.defaultConfig) {
1483
- configOptions.cache.buildDependencies.defaultConfig = [];
1484
- }
1485
-
1486
- if (Array.isArray(configPath)) {
1487
- configPath.forEach((item) => {
1488
- configOptions.cache.buildDependencies.defaultConfig.push(item);
1489
- });
1490
- } else {
1491
- configOptions.cache.buildDependencies.defaultConfig.push(configPath);
1492
- }
1493
- }
1494
- }
1495
-
1496
- return configOptions;
1497
- };
1498
-
1499
- config.options = Array.isArray(config.options)
1500
- ? config.options.map((options) => setupDefaultOptions(options))
1501
- : setupDefaultOptions(config.options);
1502
- }
1503
-
1504
- // Logic for webpack@4
1505
- // TODO remove after drop webpack@4
1506
- const processLegacyArguments = (configOptions) => {
1507
- if (options.entry) {
1508
- configOptions.entry = options.entry;
1509
- }
1510
-
1511
- if (options.outputPath) {
1512
- configOptions.output = {
1513
- ...configOptions.output,
1514
- ...{ path: path.resolve(options.outputPath) },
1515
- };
1516
- }
1517
-
1518
- if (options.target) {
1519
- configOptions.target = options.target;
1520
- }
1521
-
1522
- if (typeof options.devtool !== 'undefined') {
1523
- configOptions.devtool = options.devtool;
1524
- }
1525
-
1526
- if (options.mode) {
1527
- configOptions.mode = options.mode;
1528
- } else if (
1529
- !configOptions.mode &&
1530
- process.env &&
1531
- process.env.NODE_ENV &&
1532
- (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'production' || process.env.NODE_ENV === 'none')
1533
- ) {
1534
- configOptions.mode = process.env.NODE_ENV;
1535
- }
1536
-
1537
- if (options.name) {
1538
- configOptions.name = options.name;
1539
- }
1540
-
1541
- if (typeof options.stats !== 'undefined') {
1542
- configOptions.stats = options.stats;
1543
- }
1544
-
1545
- if (typeof options.watch !== 'undefined') {
1546
- configOptions.watch = options.watch;
1547
- }
1548
-
1549
- if (typeof options.watchOptionsStdin !== 'undefined') {
1550
- configOptions.watchOptions = {
1551
- ...configOptions.watchOptions,
1552
- ...{ stdin: options.watchOptionsStdin },
1553
- };
1554
- }
1555
-
1556
- return configOptions;
1557
- };
1558
-
1559
- config.options = Array.isArray(config.options)
1560
- ? config.options.map((options) => processLegacyArguments(options))
1561
- : processLegacyArguments(config.options);
1562
-
1563
- // Apply `stats` and `stats.colors` options
1564
- const applyStatsColors = (configOptions) => {
1565
- // TODO remove after drop webpack@4
1566
- const statsForWebpack4 = this.webpack.Stats && this.webpack.Stats.presetToOptions;
1567
-
1568
- if (statsForWebpack4) {
1569
- if (typeof configOptions.stats === 'undefined') {
1570
- configOptions.stats = {};
1571
- } else if (typeof configOptions.stats === 'boolean' || typeof configOptions.stats === 'string') {
1572
- if (
1573
- typeof configOptions.stats === 'string' &&
1574
- configOptions.stats !== 'none' &&
1575
- configOptions.stats !== 'verbose' &&
1576
- configOptions.stats !== 'detailed' &&
1577
- configOptions.stats !== 'minimal' &&
1578
- configOptions.stats !== 'errors-only' &&
1579
- configOptions.stats !== 'errors-warnings'
1580
- ) {
1581
- return configOptions;
1582
- }
1583
-
1584
- configOptions.stats = this.webpack.Stats.presetToOptions(configOptions.stats);
1585
- }
1586
- } else {
1587
- if (typeof configOptions.stats === 'undefined') {
1588
- configOptions.stats = { preset: 'normal' };
1589
- } else if (typeof configOptions.stats === 'boolean') {
1590
- configOptions.stats = configOptions.stats ? { preset: 'normal' } : { preset: 'none' };
1591
- } else if (typeof configOptions.stats === 'string') {
1592
- configOptions.stats = { preset: configOptions.stats };
1593
- }
1594
- }
1595
-
1596
- let colors;
1597
-
1598
- // From arguments
1599
- if (typeof this.utils.colors.options.changed !== 'undefined') {
1600
- colors = Boolean(this.utils.colors.options.enabled);
1601
- }
1602
- // From stats
1603
- else if (typeof configOptions.stats.colors !== 'undefined') {
1604
- colors = configOptions.stats.colors;
1605
- }
1606
- // Default
1607
- else {
1608
- colors = Boolean(this.utils.colors.options.enabled);
1609
- }
1610
-
1611
- configOptions.stats.colors = colors;
1612
-
1613
- return configOptions;
1614
- };
1615
-
1616
- config.options = Array.isArray(config.options)
1617
- ? config.options.map((options) => applyStatsColors(options))
1618
- : applyStatsColors(config.options);
1619
-
1620
- return config;
1621
- }
1622
-
1623
- async applyCLIPlugin(config, cliOptions) {
1624
- const addCLIPlugin = (configOptions) => {
1625
- if (!configOptions.plugins) {
1626
- configOptions.plugins = [];
1627
- }
1628
-
1629
- const CLIPlugin = require('./plugins/CLIPlugin');
1630
-
1631
- configOptions.plugins.unshift(
1632
- new CLIPlugin({
1633
- configPath: config.path,
1634
- helpfulOutput: !cliOptions.json,
1635
- hot: cliOptions.hot,
1636
- progress: cliOptions.progress,
1637
- prefetch: cliOptions.prefetch,
1638
- analyze: cliOptions.analyze,
1639
- }),
1640
- );
1641
-
1642
- return configOptions;
1643
- };
1644
- config.options = Array.isArray(config.options)
1645
- ? config.options.map((options) => addCLIPlugin(options))
1646
- : addCLIPlugin(config.options);
1647
-
1648
- return config;
1649
- }
1650
-
1651
- needWatchStdin(compiler) {
1652
- if (compiler.compilers) {
1653
- return compiler.compilers.some((compiler) => compiler.options.watchOptions && compiler.options.watchOptions.stdin);
1654
- }
1655
-
1656
- return compiler.options.watchOptions && compiler.options.watchOptions.stdin;
1657
- }
1658
-
1659
- isValidationError(error) {
1660
- // https://github.com/webpack/webpack/blob/master/lib/index.js#L267
1661
- // https://github.com/webpack/webpack/blob/v4.44.2/lib/webpack.js#L90
1662
- const ValidationError = this.webpack.ValidationError || this.webpack.WebpackOptionsValidationError;
1663
-
1664
- return error instanceof ValidationError || error.name === 'ValidationError';
1665
- }
1666
-
1667
- async createCompiler(options, callback) {
1668
- this.applyNodeEnv(options);
1669
-
1670
- let config = await this.resolveConfig(options);
1671
-
1672
- config = await this.applyOptions(config, options);
1673
- config = await this.applyCLIPlugin(config, options);
1674
-
1675
- let compiler;
1676
-
1677
- try {
1678
- compiler = this.webpack(
1679
- config.options,
1680
- callback
1681
- ? (error, stats) => {
1682
- if (error && this.isValidationError(error)) {
1683
- this.logger.error(error.message);
1684
- process.exit(2);
1685
- }
1686
-
1687
- callback(error, stats);
1688
- }
1689
- : callback,
1690
- );
1691
- } catch (error) {
1692
- if (this.isValidationError(error)) {
1693
- this.logger.error(error.message);
1694
- } else {
1695
- this.logger.error(error);
1696
- }
1697
-
1698
- process.exit(2);
1699
- }
1700
-
1701
- // TODO webpack@4 return Watching and MultiWatching instead Compiler and MultiCompiler, remove this after drop webpack@4
1702
- if (compiler && compiler.compiler) {
1703
- compiler = compiler.compiler;
1704
- }
1705
-
1706
- return compiler;
1707
- }
1708
-
1709
- async buildCommand(options, isWatchCommand) {
1710
- let compiler;
1711
-
1712
- const callback = (error, stats) => {
1713
- if (error) {
1714
- this.logger.error(error);
1715
- process.exit(2);
1716
- }
1717
-
1718
- if (stats.hasErrors()) {
1719
- process.exitCode = 1;
1720
- }
1721
-
1722
- if (!compiler) {
1723
- return;
1724
- }
1725
-
1726
- const statsOptions = compiler.compilers
1727
- ? { children: compiler.compilers.map((compiler) => (compiler.options ? compiler.options.stats : undefined)) }
1728
- : compiler.options
1729
- ? compiler.options.stats
1730
- : undefined;
1731
-
1732
- // TODO webpack@4 doesn't support `{ children: [{ colors: true }, { colors: true }] }` for stats
1733
- const statsForWebpack4 = this.webpack.Stats && this.webpack.Stats.presetToOptions;
1734
-
1735
- if (compiler.compilers && statsForWebpack4) {
1736
- statsOptions.colors = statsOptions.children.some((child) => child.colors);
1737
- }
1738
-
1739
- if (options.json) {
1740
- const { stringifyStream: createJsonStringifyStream } = require('@discoveryjs/json-ext');
1741
- const handleWriteError = (error) => {
1742
- this.logger.error(error);
1743
- process.exit(2);
1744
- };
1745
-
1746
- if (options.json === true) {
1747
- createJsonStringifyStream(stats.toJson(statsOptions))
1748
- .on('error', handleWriteError)
1749
- .pipe(process.stdout)
1750
- .on('error', handleWriteError)
1751
- .on('close', () => process.stdout.write('\n'));
1752
- } else {
1753
- createJsonStringifyStream(stats.toJson(statsOptions))
1754
- .on('error', handleWriteError)
1755
- .pipe(fs.createWriteStream(options.json))
1756
- .on('error', handleWriteError)
1757
- // Use stderr to logging
1758
- .on('close', () =>
1759
- process.stderr.write(
1760
- `[webpack-cli] ${this.utils.colors.green(`stats are successfully stored as json to ${options.json}`)}\n`,
1761
- ),
1762
- );
1763
- }
1764
- } else {
1765
- const printedStats = stats.toString(statsOptions);
1766
-
1767
- // Avoid extra empty line when `stats: 'none'`
1768
- if (printedStats) {
1769
- this.logger.raw(printedStats);
1770
- }
1771
- }
1772
- };
1773
-
1774
- const env =
1775
- isWatchCommand || options.watch
1776
- ? { WEBPACK_WATCH: true, ...options.env }
1777
- : { WEBPACK_BUNDLE: true, WEBPACK_BUILD: true, ...options.env };
1778
-
1779
- options.argv = { ...options, env };
1780
-
1781
- if (isWatchCommand) {
1782
- options.watch = true;
1783
- }
1784
-
1785
- compiler = await this.createCompiler(options, callback);
1786
-
1787
- if (!compiler) {
1788
- return;
1789
- }
1790
-
1791
- const isWatch = (compiler) =>
1792
- compiler.compilers ? compiler.compilers.some((compiler) => compiler.options.watch) : compiler.options.watch;
1793
-
1794
- if (isWatch(compiler) && this.needWatchStdin(compiler)) {
1795
- process.stdin.on('end', () => {
1796
- process.exit(0);
1797
- });
1798
- process.stdin.resume();
1799
- }
1800
- }
1801
- }
1802
-
1803
- module.exports = WebpackCLI;