pnpm 8.6.2 → 8.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/dist/node_modules/.modules.yaml +81 -24
  2. package/dist/node_modules/.pnpm/lock.yaml +235 -91
  3. package/dist/node_modules/@isaacs/cliui/LICENSE.txt +14 -0
  4. package/dist/node_modules/@isaacs/cliui/build/index.cjs +317 -0
  5. package/dist/node_modules/@isaacs/cliui/build/index.d.cts +43 -0
  6. package/dist/node_modules/@isaacs/cliui/build/lib/index.js +302 -0
  7. package/dist/node_modules/@isaacs/cliui/index.mjs +14 -0
  8. package/dist/node_modules/@isaacs/cliui/node_modules/string-width/index.js +54 -0
  9. package/dist/node_modules/@isaacs/cliui/node_modules/string-width/license +9 -0
  10. package/dist/node_modules/@isaacs/cliui/node_modules/string-width/package.json +59 -0
  11. package/dist/node_modules/@isaacs/cliui/package.json +86 -0
  12. package/dist/node_modules/@npmcli/fs/lib/cp/index.js +1 -1
  13. package/dist/node_modules/@npmcli/fs/lib/cp/polyfill.js +2 -2
  14. package/dist/node_modules/@npmcli/fs/lib/index.js +11 -10
  15. package/dist/node_modules/@npmcli/fs/lib/move-file.js +78 -0
  16. package/dist/node_modules/@npmcli/fs/lib/readdir-scoped.js +20 -0
  17. package/dist/node_modules/@npmcli/fs/lib/with-temp-dir.js +4 -6
  18. package/dist/node_modules/@npmcli/fs/package.json +11 -9
  19. package/dist/node_modules/@pkgjs/parseargs/LICENSE +201 -0
  20. package/dist/node_modules/@pkgjs/parseargs/index.js +396 -0
  21. package/dist/node_modules/@pkgjs/parseargs/internal/errors.js +47 -0
  22. package/dist/node_modules/@pkgjs/parseargs/internal/primordials.js +393 -0
  23. package/dist/node_modules/@pkgjs/parseargs/internal/util.js +14 -0
  24. package/dist/node_modules/@pkgjs/parseargs/internal/validators.js +89 -0
  25. package/dist/node_modules/@pkgjs/parseargs/package.json +36 -0
  26. package/dist/node_modules/@pkgjs/parseargs/utils.js +198 -0
  27. package/dist/node_modules/ansi-regex/index.js +3 -5
  28. package/dist/node_modules/ansi-regex/license +1 -1
  29. package/dist/node_modules/ansi-regex/package.json +9 -6
  30. package/dist/node_modules/ansi-styles/index.js +223 -0
  31. package/dist/node_modules/ansi-styles/license +9 -0
  32. package/dist/node_modules/ansi-styles/package.json +54 -0
  33. package/dist/node_modules/cacache/lib/content/read.js +1 -76
  34. package/dist/node_modules/cacache/lib/content/rm.js +2 -4
  35. package/dist/node_modules/cacache/lib/content/write.js +40 -24
  36. package/dist/node_modules/cacache/lib/entry-index.js +25 -99
  37. package/dist/node_modules/cacache/lib/get.js +1 -56
  38. package/dist/node_modules/cacache/lib/index.js +0 -3
  39. package/dist/node_modules/cacache/lib/rm.js +5 -5
  40. package/dist/node_modules/cacache/lib/util/glob.js +7 -0
  41. package/dist/node_modules/cacache/lib/util/tmp.js +3 -10
  42. package/dist/node_modules/cacache/lib/verify.js +28 -28
  43. package/dist/node_modules/cacache/node_modules/glob/LICENSE +1 -1
  44. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/package.json +4 -0
  45. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/bin.d.ts.map +1 -0
  46. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/bin.js +270 -0
  47. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/bin.js.map +1 -0
  48. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/glob.d.ts.map +1 -0
  49. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/glob.js +234 -0
  50. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/glob.js.map +1 -0
  51. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/has-magic.d.ts.map +1 -0
  52. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/has-magic.js +27 -0
  53. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/has-magic.js.map +1 -0
  54. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/ignore.d.ts.map +1 -0
  55. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/ignore.js +103 -0
  56. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/ignore.js.map +1 -0
  57. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/index.d.ts.map +1 -0
  58. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/index.js +68 -0
  59. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/index.js.map +1 -0
  60. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/pattern.d.ts.map +1 -0
  61. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/pattern.js +219 -0
  62. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/pattern.js.map +1 -0
  63. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/processor.d.ts.map +1 -0
  64. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/processor.js +309 -0
  65. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/processor.js.map +1 -0
  66. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/walker.d.ts.map +1 -0
  67. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/walker.js +358 -0
  68. package/dist/node_modules/cacache/node_modules/glob/dist/cjs/src/walker.js.map +1 -0
  69. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/glob.d.ts.map +1 -0
  70. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/glob.js +230 -0
  71. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/glob.js.map +1 -0
  72. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/has-magic.d.ts.map +1 -0
  73. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/has-magic.js +23 -0
  74. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/has-magic.js.map +1 -0
  75. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/ignore.d.ts.map +1 -0
  76. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/ignore.js +99 -0
  77. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/ignore.js.map +1 -0
  78. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/index.d.ts.map +1 -0
  79. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/index.js +56 -0
  80. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/index.js.map +1 -0
  81. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/package.json +4 -0
  82. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/pattern.d.ts.map +1 -0
  83. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/pattern.js +215 -0
  84. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/pattern.js.map +1 -0
  85. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/processor.d.ts.map +1 -0
  86. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/processor.js +302 -0
  87. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/processor.js.map +1 -0
  88. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/walker.d.ts.map +1 -0
  89. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/walker.js +352 -0
  90. package/dist/node_modules/cacache/node_modules/glob/dist/mjs/walker.js.map +1 -0
  91. package/dist/node_modules/cacache/node_modules/glob/package.json +78 -35
  92. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/assert-valid-pattern.d.ts.map +1 -0
  93. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/assert-valid-pattern.js +14 -0
  94. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/assert-valid-pattern.js.map +1 -0
  95. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/ast.d.ts.map +1 -0
  96. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/ast.js +589 -0
  97. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/ast.js.map +1 -0
  98. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/brace-expressions.d.ts.map +1 -0
  99. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/brace-expressions.js +152 -0
  100. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/brace-expressions.js.map +1 -0
  101. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/escape.d.ts.map +1 -0
  102. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/escape.js +22 -0
  103. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/escape.js.map +1 -0
  104. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/index.d.ts.map +1 -0
  105. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/index.js +1011 -0
  106. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/index.js.map +1 -0
  107. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/package.json +3 -0
  108. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/unescape.d.ts.map +1 -0
  109. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/unescape.js +24 -0
  110. package/dist/node_modules/cacache/node_modules/minimatch/dist/cjs/unescape.js.map +1 -0
  111. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/assert-valid-pattern.d.ts.map +1 -0
  112. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/assert-valid-pattern.js +10 -0
  113. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/assert-valid-pattern.js.map +1 -0
  114. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/ast.d.ts.map +1 -0
  115. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/ast.js +585 -0
  116. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/ast.js.map +1 -0
  117. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/brace-expressions.d.ts.map +1 -0
  118. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/brace-expressions.js +148 -0
  119. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/brace-expressions.js.map +1 -0
  120. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/escape.d.ts.map +1 -0
  121. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/escape.js +18 -0
  122. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/escape.js.map +1 -0
  123. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/index.d.ts.map +1 -0
  124. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/index.js +995 -0
  125. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/index.js.map +1 -0
  126. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/package.json +3 -0
  127. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/unescape.d.ts.map +1 -0
  128. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/unescape.js +20 -0
  129. package/dist/node_modules/cacache/node_modules/minimatch/dist/mjs/unescape.js.map +1 -0
  130. package/dist/node_modules/cacache/node_modules/minimatch/package.json +66 -15
  131. package/dist/node_modules/cacache/package.json +19 -21
  132. package/dist/node_modules/color-convert/LICENSE +21 -0
  133. package/dist/node_modules/color-convert/conversions.js +839 -0
  134. package/dist/node_modules/color-convert/index.js +81 -0
  135. package/dist/node_modules/color-convert/package.json +48 -0
  136. package/dist/node_modules/color-convert/route.js +97 -0
  137. package/dist/node_modules/color-name/LICENSE +8 -0
  138. package/dist/node_modules/color-name/index.js +152 -0
  139. package/dist/node_modules/color-name/package.json +28 -0
  140. package/dist/node_modules/cross-spawn/LICENSE +21 -0
  141. package/dist/node_modules/cross-spawn/index.js +39 -0
  142. package/dist/node_modules/cross-spawn/lib/enoent.js +59 -0
  143. package/dist/node_modules/cross-spawn/lib/parse.js +91 -0
  144. package/dist/node_modules/cross-spawn/lib/util/escape.js +45 -0
  145. package/dist/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
  146. package/dist/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
  147. package/dist/node_modules/cross-spawn/package.json +73 -0
  148. package/dist/node_modules/eastasianwidth/eastasianwidth.js +311 -0
  149. package/dist/node_modules/eastasianwidth/package.json +18 -0
  150. package/dist/node_modules/emoji-regex/RGI_Emoji.js +6 -0
  151. package/dist/node_modules/emoji-regex/es2015/RGI_Emoji.js +6 -0
  152. package/dist/node_modules/emoji-regex/es2015/index.js +1 -1
  153. package/dist/node_modules/emoji-regex/es2015/text.js +1 -1
  154. package/dist/node_modules/emoji-regex/index.js +1 -1
  155. package/dist/node_modules/emoji-regex/package.json +13 -11
  156. package/dist/node_modules/emoji-regex/text.js +1 -1
  157. package/dist/node_modules/exponential-backoff/LICENSE +202 -0
  158. package/dist/node_modules/exponential-backoff/dist/backoff.js +118 -0
  159. package/dist/node_modules/exponential-backoff/dist/backoff.js.map +1 -0
  160. package/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js +25 -0
  161. package/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js.map +1 -0
  162. package/dist/node_modules/exponential-backoff/dist/delay/delay.base.js +45 -0
  163. package/dist/node_modules/exponential-backoff/dist/delay/delay.base.js.map +1 -0
  164. package/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js +17 -0
  165. package/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js.map +1 -0
  166. package/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js +3 -0
  167. package/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js.map +1 -0
  168. package/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js +82 -0
  169. package/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js.map +1 -0
  170. package/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js +8 -0
  171. package/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js.map +1 -0
  172. package/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js +15 -0
  173. package/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js.map +1 -0
  174. package/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js +7 -0
  175. package/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js.map +1 -0
  176. package/dist/node_modules/exponential-backoff/dist/options.js +31 -0
  177. package/dist/node_modules/exponential-backoff/dist/options.js.map +1 -0
  178. package/dist/node_modules/exponential-backoff/package.json +61 -0
  179. package/dist/node_modules/{promise-inflight → foreground-child}/LICENSE +5 -4
  180. package/dist/node_modules/foreground-child/dist/cjs/all-signals.d.ts.map +1 -0
  181. package/dist/node_modules/foreground-child/dist/cjs/all-signals.js +58 -0
  182. package/dist/node_modules/foreground-child/dist/cjs/all-signals.js.map +1 -0
  183. package/dist/node_modules/foreground-child/dist/cjs/index.d.ts.map +1 -0
  184. package/dist/node_modules/foreground-child/dist/cjs/index.js +154 -0
  185. package/dist/node_modules/foreground-child/dist/cjs/index.js.map +1 -0
  186. package/dist/node_modules/foreground-child/dist/cjs/package.json +3 -0
  187. package/dist/node_modules/foreground-child/dist/cjs/watchdog.d.ts.map +1 -0
  188. package/dist/node_modules/foreground-child/dist/cjs/watchdog.js +43 -0
  189. package/dist/node_modules/foreground-child/dist/cjs/watchdog.js.map +1 -0
  190. package/dist/node_modules/foreground-child/dist/mjs/all-signals.d.ts.map +1 -0
  191. package/dist/node_modules/foreground-child/dist/mjs/all-signals.js +52 -0
  192. package/dist/node_modules/foreground-child/dist/mjs/all-signals.js.map +1 -0
  193. package/dist/node_modules/foreground-child/dist/mjs/index.d.ts.map +1 -0
  194. package/dist/node_modules/foreground-child/dist/mjs/index.js +146 -0
  195. package/dist/node_modules/foreground-child/dist/mjs/index.js.map +1 -0
  196. package/dist/node_modules/foreground-child/dist/mjs/package.json +3 -0
  197. package/dist/node_modules/foreground-child/dist/mjs/watchdog.d.ts.map +1 -0
  198. package/dist/node_modules/foreground-child/dist/mjs/watchdog.js +39 -0
  199. package/dist/node_modules/foreground-child/dist/mjs/watchdog.js.map +1 -0
  200. package/dist/node_modules/foreground-child/package.json +83 -0
  201. package/dist/node_modules/fs-minipass/lib/index.js +443 -0
  202. package/dist/node_modules/fs-minipass/package.json +28 -13
  203. package/dist/node_modules/gauge/node_modules/ansi-regex/index.js +10 -0
  204. package/dist/node_modules/gauge/node_modules/ansi-regex/license +9 -0
  205. package/dist/node_modules/gauge/node_modules/ansi-regex/package.json +55 -0
  206. package/dist/node_modules/gauge/node_modules/signal-exit/LICENSE.txt +16 -0
  207. package/dist/node_modules/gauge/node_modules/signal-exit/package.json +38 -0
  208. package/dist/node_modules/gauge/node_modules/strip-ansi/index.js +4 -0
  209. package/dist/node_modules/gauge/node_modules/strip-ansi/license +9 -0
  210. package/dist/node_modules/gauge/node_modules/strip-ansi/package.json +54 -0
  211. package/dist/node_modules/jackspeak/dist/cjs/index.d.ts.map +1 -0
  212. package/dist/node_modules/jackspeak/dist/cjs/index.js +723 -0
  213. package/dist/node_modules/jackspeak/dist/cjs/index.js.map +1 -0
  214. package/dist/node_modules/jackspeak/dist/cjs/package.json +3 -0
  215. package/dist/node_modules/jackspeak/dist/cjs/parse-args-cjs.d.ts.map +1 -0
  216. package/dist/node_modules/jackspeak/dist/cjs/parse-args-cjs.js.map +1 -0
  217. package/dist/node_modules/jackspeak/dist/cjs/parse-args.js +42 -0
  218. package/dist/node_modules/jackspeak/dist/mjs/index.d.ts.map +1 -0
  219. package/dist/node_modules/jackspeak/dist/mjs/index.js +713 -0
  220. package/dist/node_modules/jackspeak/dist/mjs/index.js.map +1 -0
  221. package/dist/node_modules/jackspeak/dist/mjs/package.json +3 -0
  222. package/dist/node_modules/jackspeak/dist/mjs/parse-args-esm.d.ts.map +1 -0
  223. package/dist/node_modules/jackspeak/dist/mjs/parse-args-esm.js.map +1 -0
  224. package/dist/node_modules/jackspeak/dist/mjs/parse-args.js +19 -0
  225. package/dist/node_modules/jackspeak/package.json +98 -0
  226. package/dist/node_modules/make-fetch-happen/lib/cache/entry.js +26 -1
  227. package/dist/node_modules/make-fetch-happen/lib/options.js +2 -0
  228. package/dist/node_modules/make-fetch-happen/lib/remote.js +1 -1
  229. package/dist/node_modules/make-fetch-happen/package.json +16 -17
  230. package/dist/node_modules/minipass/LICENSE +1 -1
  231. package/dist/node_modules/minipass/index.js +299 -246
  232. package/dist/node_modules/minipass/package.json +27 -7
  233. package/dist/node_modules/{tar → minipass-collect}/node_modules/minipass/LICENSE +1 -1
  234. package/dist/node_modules/minipass-collect/node_modules/minipass/index.js +649 -0
  235. package/dist/node_modules/{tar → minipass-collect}/node_modules/minipass/package.json +7 -27
  236. package/dist/node_modules/minipass-fetch/lib/blob.js +1 -1
  237. package/dist/node_modules/minipass-fetch/lib/body.js +1 -1
  238. package/dist/node_modules/minipass-fetch/lib/index.js +15 -3
  239. package/dist/node_modules/minipass-fetch/lib/request.js +2 -1
  240. package/dist/node_modules/minipass-fetch/package.json +13 -11
  241. package/dist/node_modules/minipass-flush/node_modules/minipass/LICENSE +15 -0
  242. package/dist/node_modules/minipass-flush/node_modules/minipass/index.js +649 -0
  243. package/dist/node_modules/minipass-flush/node_modules/minipass/package.json +56 -0
  244. package/dist/node_modules/minipass-pipeline/node_modules/minipass/LICENSE +15 -0
  245. package/dist/node_modules/minipass-pipeline/node_modules/minipass/index.js +649 -0
  246. package/dist/node_modules/minipass-pipeline/node_modules/minipass/package.json +56 -0
  247. package/dist/node_modules/minipass-sized/node_modules/minipass/LICENSE +15 -0
  248. package/dist/node_modules/minipass-sized/node_modules/minipass/index.js +649 -0
  249. package/dist/node_modules/minipass-sized/node_modules/minipass/package.json +56 -0
  250. package/dist/node_modules/minizlib/node_modules/minipass/LICENSE +15 -0
  251. package/dist/node_modules/minizlib/node_modules/minipass/index.js +649 -0
  252. package/dist/node_modules/minizlib/node_modules/minipass/package.json +56 -0
  253. package/dist/node_modules/node-gyp/.github/workflows/tests.yml +9 -6
  254. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +1 -1
  255. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +1 -1
  256. package/dist/node_modules/node-gyp/lib/find-visualstudio.js +13 -2
  257. package/dist/node_modules/node-gyp/lib/install.js +174 -92
  258. package/dist/node_modules/node-gyp/package.json +7 -6
  259. package/dist/node_modules/node-gyp/update-gyp.py +1 -1
  260. package/dist/node_modules/path-key/index.js +16 -0
  261. package/dist/node_modules/path-key/license +9 -0
  262. package/dist/node_modules/path-key/package.json +39 -0
  263. package/dist/node_modules/path-scurry/dist/cjs/index.d.ts.map +1 -0
  264. package/dist/node_modules/path-scurry/dist/cjs/index.js +1995 -0
  265. package/dist/node_modules/path-scurry/dist/cjs/index.js.map +1 -0
  266. package/dist/node_modules/path-scurry/dist/cjs/package.json +3 -0
  267. package/dist/node_modules/path-scurry/dist/mjs/index.d.ts.map +1 -0
  268. package/dist/node_modules/path-scurry/dist/mjs/index.js +1960 -0
  269. package/dist/node_modules/path-scurry/dist/mjs/index.js.map +1 -0
  270. package/dist/node_modules/path-scurry/dist/mjs/package.json +3 -0
  271. package/dist/node_modules/path-scurry/node_modules/lru-cache/LICENSE +15 -0
  272. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/cjs/index.d.ts.map +1 -0
  273. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/cjs/index.js +1395 -0
  274. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/cjs/index.js.map +1 -0
  275. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/cjs/index.min.js +2 -0
  276. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/cjs/index.min.js.map +7 -0
  277. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/cjs/package.json +3 -0
  278. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/mjs/index.d.ts.map +1 -0
  279. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/mjs/index.js +1391 -0
  280. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/mjs/index.js.map +1 -0
  281. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/mjs/index.min.js +2 -0
  282. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/mjs/index.min.js.map +7 -0
  283. package/dist/node_modules/path-scurry/node_modules/lru-cache/dist/mjs/package.json +3 -0
  284. package/dist/node_modules/path-scurry/node_modules/lru-cache/package.json +108 -0
  285. package/dist/node_modules/path-scurry/package.json +87 -0
  286. package/dist/node_modules/semver/classes/comparator.js +2 -1
  287. package/dist/node_modules/semver/classes/range.js +40 -27
  288. package/dist/node_modules/semver/classes/semver.js +5 -3
  289. package/dist/node_modules/semver/functions/coerce.js +1 -1
  290. package/dist/node_modules/semver/functions/diff.js +31 -20
  291. package/dist/node_modules/semver/internal/constants.js +5 -0
  292. package/dist/node_modules/semver/internal/re.js +30 -4
  293. package/dist/node_modules/semver/package.json +4 -4
  294. package/dist/node_modules/shebang-command/index.js +19 -0
  295. package/dist/node_modules/shebang-command/license +9 -0
  296. package/dist/node_modules/shebang-command/package.json +34 -0
  297. package/dist/node_modules/shebang-regex/index.js +2 -0
  298. package/dist/node_modules/shebang-regex/license +9 -0
  299. package/dist/node_modules/shebang-regex/package.json +35 -0
  300. package/dist/node_modules/signal-exit/LICENSE.txt +1 -1
  301. package/dist/node_modules/signal-exit/dist/cjs/browser.d.ts.map +1 -0
  302. package/dist/node_modules/signal-exit/dist/cjs/browser.js +10 -0
  303. package/dist/node_modules/signal-exit/dist/cjs/browser.js.map +1 -0
  304. package/dist/node_modules/signal-exit/dist/cjs/index.d.ts.map +1 -0
  305. package/dist/node_modules/signal-exit/dist/cjs/index.js +272 -0
  306. package/dist/node_modules/signal-exit/dist/cjs/index.js.map +1 -0
  307. package/dist/node_modules/signal-exit/dist/cjs/package.json +3 -0
  308. package/dist/node_modules/signal-exit/dist/cjs/signals.d.ts.map +1 -0
  309. package/dist/node_modules/signal-exit/dist/cjs/signals.js +42 -0
  310. package/dist/node_modules/signal-exit/dist/cjs/signals.js.map +1 -0
  311. package/dist/node_modules/signal-exit/dist/mjs/browser.d.ts.map +1 -0
  312. package/dist/node_modules/signal-exit/dist/mjs/browser.js +4 -0
  313. package/dist/node_modules/signal-exit/dist/mjs/browser.js.map +1 -0
  314. package/dist/node_modules/signal-exit/dist/mjs/index.d.ts.map +1 -0
  315. package/dist/node_modules/signal-exit/dist/mjs/index.js +268 -0
  316. package/dist/node_modules/signal-exit/dist/mjs/index.js.map +1 -0
  317. package/dist/node_modules/signal-exit/dist/mjs/package.json +3 -0
  318. package/dist/node_modules/signal-exit/dist/mjs/signals.d.ts.map +1 -0
  319. package/dist/node_modules/signal-exit/dist/mjs/signals.js +39 -0
  320. package/dist/node_modules/signal-exit/dist/mjs/signals.js.map +1 -0
  321. package/dist/node_modules/signal-exit/package.json +87 -19
  322. package/dist/node_modules/ssri/lib/index.js +157 -101
  323. package/dist/node_modules/ssri/package.json +12 -10
  324. package/dist/node_modules/string-width/node_modules/ansi-regex/index.js +10 -0
  325. package/dist/node_modules/string-width/node_modules/ansi-regex/license +9 -0
  326. package/dist/node_modules/string-width/node_modules/ansi-regex/package.json +55 -0
  327. package/dist/node_modules/string-width/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  328. package/dist/node_modules/string-width/node_modules/emoji-regex/es2015/index.js +6 -0
  329. package/dist/node_modules/string-width/node_modules/emoji-regex/es2015/text.js +6 -0
  330. package/dist/node_modules/string-width/node_modules/emoji-regex/index.js +6 -0
  331. package/dist/node_modules/string-width/node_modules/emoji-regex/package.json +50 -0
  332. package/dist/node_modules/string-width/node_modules/emoji-regex/text.js +6 -0
  333. package/dist/node_modules/string-width/node_modules/strip-ansi/index.js +4 -0
  334. package/dist/node_modules/string-width/node_modules/strip-ansi/license +9 -0
  335. package/dist/node_modules/string-width/node_modules/strip-ansi/package.json +54 -0
  336. package/dist/node_modules/string-width-cjs/index.js +47 -0
  337. package/dist/node_modules/string-width-cjs/license +9 -0
  338. package/dist/node_modules/string-width-cjs/node_modules/ansi-regex/index.js +10 -0
  339. package/dist/node_modules/string-width-cjs/node_modules/ansi-regex/license +9 -0
  340. package/dist/node_modules/string-width-cjs/node_modules/ansi-regex/package.json +55 -0
  341. package/dist/node_modules/string-width-cjs/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  342. package/dist/node_modules/string-width-cjs/node_modules/emoji-regex/es2015/index.js +6 -0
  343. package/dist/node_modules/string-width-cjs/node_modules/emoji-regex/es2015/text.js +6 -0
  344. package/dist/node_modules/string-width-cjs/node_modules/emoji-regex/index.js +6 -0
  345. package/dist/node_modules/string-width-cjs/node_modules/emoji-regex/package.json +50 -0
  346. package/dist/node_modules/string-width-cjs/node_modules/emoji-regex/text.js +6 -0
  347. package/dist/node_modules/string-width-cjs/node_modules/strip-ansi/index.js +4 -0
  348. package/dist/node_modules/string-width-cjs/node_modules/strip-ansi/license +9 -0
  349. package/dist/node_modules/string-width-cjs/node_modules/strip-ansi/package.json +54 -0
  350. package/dist/node_modules/string-width-cjs/package.json +56 -0
  351. package/dist/node_modules/strip-ansi/index.js +13 -3
  352. package/dist/node_modules/strip-ansi/license +1 -1
  353. package/dist/node_modules/strip-ansi/package.json +10 -7
  354. package/dist/node_modules/strip-ansi-cjs/index.js +4 -0
  355. package/dist/node_modules/strip-ansi-cjs/license +9 -0
  356. package/dist/node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.js +10 -0
  357. package/dist/node_modules/strip-ansi-cjs/node_modules/ansi-regex/license +9 -0
  358. package/dist/node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json +55 -0
  359. package/dist/node_modules/strip-ansi-cjs/package.json +54 -0
  360. package/dist/node_modules/{infer-owner → tar/node_modules/fs-minipass}/LICENSE +1 -1
  361. package/dist/node_modules/tar/node_modules/fs-minipass/node_modules/minipass/LICENSE +15 -0
  362. package/dist/node_modules/tar/node_modules/fs-minipass/node_modules/minipass/index.js +649 -0
  363. package/dist/node_modules/tar/node_modules/fs-minipass/node_modules/minipass/package.json +56 -0
  364. package/dist/node_modules/tar/node_modules/fs-minipass/package.json +39 -0
  365. package/dist/node_modules/unique-filename/package.json +12 -9
  366. package/dist/node_modules/unique-slug/package.json +10 -7
  367. package/dist/node_modules/wrap-ansi/index.js +214 -0
  368. package/dist/node_modules/wrap-ansi/license +9 -0
  369. package/dist/node_modules/wrap-ansi/node_modules/string-width/index.js +54 -0
  370. package/dist/node_modules/wrap-ansi/node_modules/string-width/license +9 -0
  371. package/dist/node_modules/wrap-ansi/node_modules/string-width/package.json +59 -0
  372. package/dist/node_modules/wrap-ansi/package.json +69 -0
  373. package/dist/node_modules/wrap-ansi-cjs/index.js +216 -0
  374. package/dist/node_modules/wrap-ansi-cjs/license +9 -0
  375. package/dist/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/index.js +10 -0
  376. package/dist/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/license +9 -0
  377. package/dist/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/package.json +55 -0
  378. package/dist/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js +163 -0
  379. package/dist/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license +9 -0
  380. package/dist/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json +56 -0
  381. package/dist/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.js +4 -0
  382. package/dist/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/license +9 -0
  383. package/dist/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json +54 -0
  384. package/dist/node_modules/wrap-ansi-cjs/package.json +62 -0
  385. package/dist/pnpm.cjs +30877 -17543
  386. package/package.json +3 -3
  387. package/dist/node_modules/@gar/promisify/index.js +0 -36
  388. package/dist/node_modules/@gar/promisify/package.json +0 -32
  389. package/dist/node_modules/@npmcli/fs/lib/common/owner-sync.js +0 -96
  390. package/dist/node_modules/@npmcli/fs/lib/common/owner.js +0 -96
  391. package/dist/node_modules/@npmcli/fs/lib/copy-file.js +0 -16
  392. package/dist/node_modules/@npmcli/fs/lib/fs.js +0 -14
  393. package/dist/node_modules/@npmcli/fs/lib/mkdir.js +0 -19
  394. package/dist/node_modules/@npmcli/fs/lib/mkdtemp.js +0 -23
  395. package/dist/node_modules/@npmcli/fs/lib/rm/index.js +0 -22
  396. package/dist/node_modules/@npmcli/fs/lib/rm/polyfill.js +0 -239
  397. package/dist/node_modules/@npmcli/fs/lib/with-owner-sync.js +0 -21
  398. package/dist/node_modules/@npmcli/fs/lib/with-owner.js +0 -21
  399. package/dist/node_modules/@npmcli/fs/lib/write-file.js +0 -14
  400. package/dist/node_modules/@npmcli/move-file/lib/index.js +0 -185
  401. package/dist/node_modules/@npmcli/move-file/package.json +0 -47
  402. package/dist/node_modules/cacache/lib/util/fix-owner.js +0 -145
  403. package/dist/node_modules/cacache/lib/util/move-file.js +0 -56
  404. package/dist/node_modules/cacache/node_modules/glob/common.js +0 -244
  405. package/dist/node_modules/cacache/node_modules/glob/glob.js +0 -790
  406. package/dist/node_modules/cacache/node_modules/glob/sync.js +0 -486
  407. package/dist/node_modules/cacache/node_modules/minimatch/lib/path.js +0 -4
  408. package/dist/node_modules/cacache/node_modules/minimatch/minimatch.js +0 -944
  409. package/dist/node_modules/infer-owner/index.js +0 -71
  410. package/dist/node_modules/infer-owner/package.json +0 -26
  411. package/dist/node_modules/promise-inflight/inflight.js +0 -36
  412. package/dist/node_modules/promise-inflight/package.json +0 -24
  413. package/dist/node_modules/tar/node_modules/minipass/index.js +0 -702
  414. /package/dist/node_modules/@npmcli/fs/lib/{errors.js → cp/errors.js} +0 -0
  415. /package/dist/node_modules/{signal-exit → gauge/node_modules/signal-exit}/index.js +0 -0
  416. /package/dist/node_modules/{signal-exit → gauge/node_modules/signal-exit}/signals.js +0 -0
  417. /package/dist/node_modules/{tar/node_modules/minipass → minipass}/index.mjs +0 -0
  418. /package/dist/node_modules/{fs-minipass → tar/node_modules/fs-minipass}/index.js +0 -0
@@ -0,0 +1,317 @@
1
+ 'use strict';
2
+
3
+ const align = {
4
+ right: alignRight,
5
+ center: alignCenter
6
+ };
7
+ const top = 0;
8
+ const right = 1;
9
+ const bottom = 2;
10
+ const left = 3;
11
+ class UI {
12
+ constructor(opts) {
13
+ var _a;
14
+ this.width = opts.width;
15
+ /* c8 ignore start */
16
+ this.wrap = (_a = opts.wrap) !== null && _a !== void 0 ? _a : true;
17
+ /* c8 ignore stop */
18
+ this.rows = [];
19
+ }
20
+ span(...args) {
21
+ const cols = this.div(...args);
22
+ cols.span = true;
23
+ }
24
+ resetOutput() {
25
+ this.rows = [];
26
+ }
27
+ div(...args) {
28
+ if (args.length === 0) {
29
+ this.div('');
30
+ }
31
+ if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === 'string') {
32
+ return this.applyLayoutDSL(args[0]);
33
+ }
34
+ const cols = args.map(arg => {
35
+ if (typeof arg === 'string') {
36
+ return this.colFromString(arg);
37
+ }
38
+ return arg;
39
+ });
40
+ this.rows.push(cols);
41
+ return cols;
42
+ }
43
+ shouldApplyLayoutDSL(...args) {
44
+ return args.length === 1 && typeof args[0] === 'string' &&
45
+ /[\t\n]/.test(args[0]);
46
+ }
47
+ applyLayoutDSL(str) {
48
+ const rows = str.split('\n').map(row => row.split('\t'));
49
+ let leftColumnWidth = 0;
50
+ // simple heuristic for layout, make sure the
51
+ // second column lines up along the left-hand.
52
+ // don't allow the first column to take up more
53
+ // than 50% of the screen.
54
+ rows.forEach(columns => {
55
+ if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) {
56
+ leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0]));
57
+ }
58
+ });
59
+ // generate a table:
60
+ // replacing ' ' with padding calculations.
61
+ // using the algorithmically generated width.
62
+ rows.forEach(columns => {
63
+ this.div(...columns.map((r, i) => {
64
+ return {
65
+ text: r.trim(),
66
+ padding: this.measurePadding(r),
67
+ width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined
68
+ };
69
+ }));
70
+ });
71
+ return this.rows[this.rows.length - 1];
72
+ }
73
+ colFromString(text) {
74
+ return {
75
+ text,
76
+ padding: this.measurePadding(text)
77
+ };
78
+ }
79
+ measurePadding(str) {
80
+ // measure padding without ansi escape codes
81
+ const noAnsi = mixin.stripAnsi(str);
82
+ return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length];
83
+ }
84
+ toString() {
85
+ const lines = [];
86
+ this.rows.forEach(row => {
87
+ this.rowToString(row, lines);
88
+ });
89
+ // don't display any lines with the
90
+ // hidden flag set.
91
+ return lines
92
+ .filter(line => !line.hidden)
93
+ .map(line => line.text)
94
+ .join('\n');
95
+ }
96
+ rowToString(row, lines) {
97
+ this.rasterize(row).forEach((rrow, r) => {
98
+ let str = '';
99
+ rrow.forEach((col, c) => {
100
+ const { width } = row[c]; // the width with padding.
101
+ const wrapWidth = this.negatePadding(row[c]); // the width without padding.
102
+ let ts = col; // temporary string used during alignment/padding.
103
+ if (wrapWidth > mixin.stringWidth(col)) {
104
+ ts += ' '.repeat(wrapWidth - mixin.stringWidth(col));
105
+ }
106
+ // align the string within its column.
107
+ if (row[c].align && row[c].align !== 'left' && this.wrap) {
108
+ const fn = align[row[c].align];
109
+ ts = fn(ts, wrapWidth);
110
+ if (mixin.stringWidth(ts) < wrapWidth) {
111
+ /* c8 ignore start */
112
+ const w = width || 0;
113
+ /* c8 ignore stop */
114
+ ts += ' '.repeat(w - mixin.stringWidth(ts) - 1);
115
+ }
116
+ }
117
+ // apply border and padding to string.
118
+ const padding = row[c].padding || [0, 0, 0, 0];
119
+ if (padding[left]) {
120
+ str += ' '.repeat(padding[left]);
121
+ }
122
+ str += addBorder(row[c], ts, '| ');
123
+ str += ts;
124
+ str += addBorder(row[c], ts, ' |');
125
+ if (padding[right]) {
126
+ str += ' '.repeat(padding[right]);
127
+ }
128
+ // if prior row is span, try to render the
129
+ // current row on the prior line.
130
+ if (r === 0 && lines.length > 0) {
131
+ str = this.renderInline(str, lines[lines.length - 1]);
132
+ }
133
+ });
134
+ // remove trailing whitespace.
135
+ lines.push({
136
+ text: str.replace(/ +$/, ''),
137
+ span: row.span
138
+ });
139
+ });
140
+ return lines;
141
+ }
142
+ // if the full 'source' can render in
143
+ // the target line, do so.
144
+ renderInline(source, previousLine) {
145
+ const match = source.match(/^ */);
146
+ /* c8 ignore start */
147
+ const leadingWhitespace = match ? match[0].length : 0;
148
+ /* c8 ignore stop */
149
+ const target = previousLine.text;
150
+ const targetTextWidth = mixin.stringWidth(target.trimEnd());
151
+ if (!previousLine.span) {
152
+ return source;
153
+ }
154
+ // if we're not applying wrapping logic,
155
+ // just always append to the span.
156
+ if (!this.wrap) {
157
+ previousLine.hidden = true;
158
+ return target + source;
159
+ }
160
+ if (leadingWhitespace < targetTextWidth) {
161
+ return source;
162
+ }
163
+ previousLine.hidden = true;
164
+ return target.trimEnd() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimStart();
165
+ }
166
+ rasterize(row) {
167
+ const rrows = [];
168
+ const widths = this.columnWidths(row);
169
+ let wrapped;
170
+ // word wrap all columns, and create
171
+ // a data-structure that is easy to rasterize.
172
+ row.forEach((col, c) => {
173
+ // leave room for left and right padding.
174
+ col.width = widths[c];
175
+ if (this.wrap) {
176
+ wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split('\n');
177
+ }
178
+ else {
179
+ wrapped = col.text.split('\n');
180
+ }
181
+ if (col.border) {
182
+ wrapped.unshift('.' + '-'.repeat(this.negatePadding(col) + 2) + '.');
183
+ wrapped.push("'" + '-'.repeat(this.negatePadding(col) + 2) + "'");
184
+ }
185
+ // add top and bottom padding.
186
+ if (col.padding) {
187
+ wrapped.unshift(...new Array(col.padding[top] || 0).fill(''));
188
+ wrapped.push(...new Array(col.padding[bottom] || 0).fill(''));
189
+ }
190
+ wrapped.forEach((str, r) => {
191
+ if (!rrows[r]) {
192
+ rrows.push([]);
193
+ }
194
+ const rrow = rrows[r];
195
+ for (let i = 0; i < c; i++) {
196
+ if (rrow[i] === undefined) {
197
+ rrow.push('');
198
+ }
199
+ }
200
+ rrow.push(str);
201
+ });
202
+ });
203
+ return rrows;
204
+ }
205
+ negatePadding(col) {
206
+ /* c8 ignore start */
207
+ let wrapWidth = col.width || 0;
208
+ /* c8 ignore stop */
209
+ if (col.padding) {
210
+ wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0);
211
+ }
212
+ if (col.border) {
213
+ wrapWidth -= 4;
214
+ }
215
+ return wrapWidth;
216
+ }
217
+ columnWidths(row) {
218
+ if (!this.wrap) {
219
+ return row.map(col => {
220
+ return col.width || mixin.stringWidth(col.text);
221
+ });
222
+ }
223
+ let unset = row.length;
224
+ let remainingWidth = this.width;
225
+ // column widths can be set in config.
226
+ const widths = row.map(col => {
227
+ if (col.width) {
228
+ unset--;
229
+ remainingWidth -= col.width;
230
+ return col.width;
231
+ }
232
+ return undefined;
233
+ });
234
+ // any unset widths should be calculated.
235
+ /* c8 ignore start */
236
+ const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0;
237
+ /* c8 ignore stop */
238
+ return widths.map((w, i) => {
239
+ if (w === undefined) {
240
+ return Math.max(unsetWidth, _minWidth(row[i]));
241
+ }
242
+ return w;
243
+ });
244
+ }
245
+ }
246
+ function addBorder(col, ts, style) {
247
+ if (col.border) {
248
+ if (/[.']-+[.']/.test(ts)) {
249
+ return '';
250
+ }
251
+ if (ts.trim().length !== 0) {
252
+ return style;
253
+ }
254
+ return ' ';
255
+ }
256
+ return '';
257
+ }
258
+ // calculates the minimum width of
259
+ // a column, based on padding preferences.
260
+ function _minWidth(col) {
261
+ const padding = col.padding || [];
262
+ const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0);
263
+ if (col.border) {
264
+ return minWidth + 4;
265
+ }
266
+ return minWidth;
267
+ }
268
+ function getWindowWidth() {
269
+ /* c8 ignore start */
270
+ if (typeof process === 'object' && process.stdout && process.stdout.columns) {
271
+ return process.stdout.columns;
272
+ }
273
+ return 80;
274
+ }
275
+ /* c8 ignore stop */
276
+ function alignRight(str, width) {
277
+ str = str.trim();
278
+ const strWidth = mixin.stringWidth(str);
279
+ if (strWidth < width) {
280
+ return ' '.repeat(width - strWidth) + str;
281
+ }
282
+ return str;
283
+ }
284
+ function alignCenter(str, width) {
285
+ str = str.trim();
286
+ const strWidth = mixin.stringWidth(str);
287
+ /* c8 ignore start */
288
+ if (strWidth >= width) {
289
+ return str;
290
+ }
291
+ /* c8 ignore stop */
292
+ return ' '.repeat((width - strWidth) >> 1) + str;
293
+ }
294
+ let mixin;
295
+ function cliui(opts, _mixin) {
296
+ mixin = _mixin;
297
+ return new UI({
298
+ /* c8 ignore start */
299
+ width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(),
300
+ wrap: opts === null || opts === void 0 ? void 0 : opts.wrap
301
+ /* c8 ignore stop */
302
+ });
303
+ }
304
+
305
+ // Bootstrap cliui with CommonJS dependencies:
306
+ const stringWidth = require('string-width-cjs');
307
+ const stripAnsi = require('strip-ansi-cjs');
308
+ const wrap = require('wrap-ansi-cjs');
309
+ function ui(opts) {
310
+ return cliui(opts, {
311
+ stringWidth,
312
+ stripAnsi,
313
+ wrap
314
+ });
315
+ }
316
+
317
+ module.exports = ui;
@@ -0,0 +1,43 @@
1
+ interface UIOptions {
2
+ width: number;
3
+ wrap?: boolean;
4
+ rows?: string[];
5
+ }
6
+ interface Column {
7
+ text: string;
8
+ width?: number;
9
+ align?: "right" | "left" | "center";
10
+ padding: number[];
11
+ border?: boolean;
12
+ }
13
+ interface ColumnArray extends Array<Column> {
14
+ span: boolean;
15
+ }
16
+ interface Line {
17
+ hidden?: boolean;
18
+ text: string;
19
+ span?: boolean;
20
+ }
21
+ declare class UI {
22
+ width: number;
23
+ wrap: boolean;
24
+ rows: ColumnArray[];
25
+ constructor(opts: UIOptions);
26
+ span(...args: ColumnArray): void;
27
+ resetOutput(): void;
28
+ div(...args: (Column | string)[]): ColumnArray;
29
+ private shouldApplyLayoutDSL;
30
+ private applyLayoutDSL;
31
+ private colFromString;
32
+ private measurePadding;
33
+ toString(): string;
34
+ rowToString(row: ColumnArray, lines: Line[]): Line[];
35
+ // if the full 'source' can render in
36
+ // the target line, do so.
37
+ private renderInline;
38
+ private rasterize;
39
+ private negatePadding;
40
+ private columnWidths;
41
+ }
42
+ declare function ui(opts: UIOptions): UI;
43
+ export { ui as default };
@@ -0,0 +1,302 @@
1
+ 'use strict';
2
+ const align = {
3
+ right: alignRight,
4
+ center: alignCenter
5
+ };
6
+ const top = 0;
7
+ const right = 1;
8
+ const bottom = 2;
9
+ const left = 3;
10
+ export class UI {
11
+ constructor(opts) {
12
+ var _a;
13
+ this.width = opts.width;
14
+ /* c8 ignore start */
15
+ this.wrap = (_a = opts.wrap) !== null && _a !== void 0 ? _a : true;
16
+ /* c8 ignore stop */
17
+ this.rows = [];
18
+ }
19
+ span(...args) {
20
+ const cols = this.div(...args);
21
+ cols.span = true;
22
+ }
23
+ resetOutput() {
24
+ this.rows = [];
25
+ }
26
+ div(...args) {
27
+ if (args.length === 0) {
28
+ this.div('');
29
+ }
30
+ if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === 'string') {
31
+ return this.applyLayoutDSL(args[0]);
32
+ }
33
+ const cols = args.map(arg => {
34
+ if (typeof arg === 'string') {
35
+ return this.colFromString(arg);
36
+ }
37
+ return arg;
38
+ });
39
+ this.rows.push(cols);
40
+ return cols;
41
+ }
42
+ shouldApplyLayoutDSL(...args) {
43
+ return args.length === 1 && typeof args[0] === 'string' &&
44
+ /[\t\n]/.test(args[0]);
45
+ }
46
+ applyLayoutDSL(str) {
47
+ const rows = str.split('\n').map(row => row.split('\t'));
48
+ let leftColumnWidth = 0;
49
+ // simple heuristic for layout, make sure the
50
+ // second column lines up along the left-hand.
51
+ // don't allow the first column to take up more
52
+ // than 50% of the screen.
53
+ rows.forEach(columns => {
54
+ if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) {
55
+ leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0]));
56
+ }
57
+ });
58
+ // generate a table:
59
+ // replacing ' ' with padding calculations.
60
+ // using the algorithmically generated width.
61
+ rows.forEach(columns => {
62
+ this.div(...columns.map((r, i) => {
63
+ return {
64
+ text: r.trim(),
65
+ padding: this.measurePadding(r),
66
+ width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined
67
+ };
68
+ }));
69
+ });
70
+ return this.rows[this.rows.length - 1];
71
+ }
72
+ colFromString(text) {
73
+ return {
74
+ text,
75
+ padding: this.measurePadding(text)
76
+ };
77
+ }
78
+ measurePadding(str) {
79
+ // measure padding without ansi escape codes
80
+ const noAnsi = mixin.stripAnsi(str);
81
+ return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length];
82
+ }
83
+ toString() {
84
+ const lines = [];
85
+ this.rows.forEach(row => {
86
+ this.rowToString(row, lines);
87
+ });
88
+ // don't display any lines with the
89
+ // hidden flag set.
90
+ return lines
91
+ .filter(line => !line.hidden)
92
+ .map(line => line.text)
93
+ .join('\n');
94
+ }
95
+ rowToString(row, lines) {
96
+ this.rasterize(row).forEach((rrow, r) => {
97
+ let str = '';
98
+ rrow.forEach((col, c) => {
99
+ const { width } = row[c]; // the width with padding.
100
+ const wrapWidth = this.negatePadding(row[c]); // the width without padding.
101
+ let ts = col; // temporary string used during alignment/padding.
102
+ if (wrapWidth > mixin.stringWidth(col)) {
103
+ ts += ' '.repeat(wrapWidth - mixin.stringWidth(col));
104
+ }
105
+ // align the string within its column.
106
+ if (row[c].align && row[c].align !== 'left' && this.wrap) {
107
+ const fn = align[row[c].align];
108
+ ts = fn(ts, wrapWidth);
109
+ if (mixin.stringWidth(ts) < wrapWidth) {
110
+ /* c8 ignore start */
111
+ const w = width || 0;
112
+ /* c8 ignore stop */
113
+ ts += ' '.repeat(w - mixin.stringWidth(ts) - 1);
114
+ }
115
+ }
116
+ // apply border and padding to string.
117
+ const padding = row[c].padding || [0, 0, 0, 0];
118
+ if (padding[left]) {
119
+ str += ' '.repeat(padding[left]);
120
+ }
121
+ str += addBorder(row[c], ts, '| ');
122
+ str += ts;
123
+ str += addBorder(row[c], ts, ' |');
124
+ if (padding[right]) {
125
+ str += ' '.repeat(padding[right]);
126
+ }
127
+ // if prior row is span, try to render the
128
+ // current row on the prior line.
129
+ if (r === 0 && lines.length > 0) {
130
+ str = this.renderInline(str, lines[lines.length - 1]);
131
+ }
132
+ });
133
+ // remove trailing whitespace.
134
+ lines.push({
135
+ text: str.replace(/ +$/, ''),
136
+ span: row.span
137
+ });
138
+ });
139
+ return lines;
140
+ }
141
+ // if the full 'source' can render in
142
+ // the target line, do so.
143
+ renderInline(source, previousLine) {
144
+ const match = source.match(/^ */);
145
+ /* c8 ignore start */
146
+ const leadingWhitespace = match ? match[0].length : 0;
147
+ /* c8 ignore stop */
148
+ const target = previousLine.text;
149
+ const targetTextWidth = mixin.stringWidth(target.trimEnd());
150
+ if (!previousLine.span) {
151
+ return source;
152
+ }
153
+ // if we're not applying wrapping logic,
154
+ // just always append to the span.
155
+ if (!this.wrap) {
156
+ previousLine.hidden = true;
157
+ return target + source;
158
+ }
159
+ if (leadingWhitespace < targetTextWidth) {
160
+ return source;
161
+ }
162
+ previousLine.hidden = true;
163
+ return target.trimEnd() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimStart();
164
+ }
165
+ rasterize(row) {
166
+ const rrows = [];
167
+ const widths = this.columnWidths(row);
168
+ let wrapped;
169
+ // word wrap all columns, and create
170
+ // a data-structure that is easy to rasterize.
171
+ row.forEach((col, c) => {
172
+ // leave room for left and right padding.
173
+ col.width = widths[c];
174
+ if (this.wrap) {
175
+ wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split('\n');
176
+ }
177
+ else {
178
+ wrapped = col.text.split('\n');
179
+ }
180
+ if (col.border) {
181
+ wrapped.unshift('.' + '-'.repeat(this.negatePadding(col) + 2) + '.');
182
+ wrapped.push("'" + '-'.repeat(this.negatePadding(col) + 2) + "'");
183
+ }
184
+ // add top and bottom padding.
185
+ if (col.padding) {
186
+ wrapped.unshift(...new Array(col.padding[top] || 0).fill(''));
187
+ wrapped.push(...new Array(col.padding[bottom] || 0).fill(''));
188
+ }
189
+ wrapped.forEach((str, r) => {
190
+ if (!rrows[r]) {
191
+ rrows.push([]);
192
+ }
193
+ const rrow = rrows[r];
194
+ for (let i = 0; i < c; i++) {
195
+ if (rrow[i] === undefined) {
196
+ rrow.push('');
197
+ }
198
+ }
199
+ rrow.push(str);
200
+ });
201
+ });
202
+ return rrows;
203
+ }
204
+ negatePadding(col) {
205
+ /* c8 ignore start */
206
+ let wrapWidth = col.width || 0;
207
+ /* c8 ignore stop */
208
+ if (col.padding) {
209
+ wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0);
210
+ }
211
+ if (col.border) {
212
+ wrapWidth -= 4;
213
+ }
214
+ return wrapWidth;
215
+ }
216
+ columnWidths(row) {
217
+ if (!this.wrap) {
218
+ return row.map(col => {
219
+ return col.width || mixin.stringWidth(col.text);
220
+ });
221
+ }
222
+ let unset = row.length;
223
+ let remainingWidth = this.width;
224
+ // column widths can be set in config.
225
+ const widths = row.map(col => {
226
+ if (col.width) {
227
+ unset--;
228
+ remainingWidth -= col.width;
229
+ return col.width;
230
+ }
231
+ return undefined;
232
+ });
233
+ // any unset widths should be calculated.
234
+ /* c8 ignore start */
235
+ const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0;
236
+ /* c8 ignore stop */
237
+ return widths.map((w, i) => {
238
+ if (w === undefined) {
239
+ return Math.max(unsetWidth, _minWidth(row[i]));
240
+ }
241
+ return w;
242
+ });
243
+ }
244
+ }
245
+ function addBorder(col, ts, style) {
246
+ if (col.border) {
247
+ if (/[.']-+[.']/.test(ts)) {
248
+ return '';
249
+ }
250
+ if (ts.trim().length !== 0) {
251
+ return style;
252
+ }
253
+ return ' ';
254
+ }
255
+ return '';
256
+ }
257
+ // calculates the minimum width of
258
+ // a column, based on padding preferences.
259
+ function _minWidth(col) {
260
+ const padding = col.padding || [];
261
+ const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0);
262
+ if (col.border) {
263
+ return minWidth + 4;
264
+ }
265
+ return minWidth;
266
+ }
267
+ function getWindowWidth() {
268
+ /* c8 ignore start */
269
+ if (typeof process === 'object' && process.stdout && process.stdout.columns) {
270
+ return process.stdout.columns;
271
+ }
272
+ return 80;
273
+ }
274
+ /* c8 ignore stop */
275
+ function alignRight(str, width) {
276
+ str = str.trim();
277
+ const strWidth = mixin.stringWidth(str);
278
+ if (strWidth < width) {
279
+ return ' '.repeat(width - strWidth) + str;
280
+ }
281
+ return str;
282
+ }
283
+ function alignCenter(str, width) {
284
+ str = str.trim();
285
+ const strWidth = mixin.stringWidth(str);
286
+ /* c8 ignore start */
287
+ if (strWidth >= width) {
288
+ return str;
289
+ }
290
+ /* c8 ignore stop */
291
+ return ' '.repeat((width - strWidth) >> 1) + str;
292
+ }
293
+ let mixin;
294
+ export function cliui(opts, _mixin) {
295
+ mixin = _mixin;
296
+ return new UI({
297
+ /* c8 ignore start */
298
+ width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(),
299
+ wrap: opts === null || opts === void 0 ? void 0 : opts.wrap
300
+ /* c8 ignore stop */
301
+ });
302
+ }
@@ -0,0 +1,14 @@
1
+ // Bootstrap cliui with ESM dependencies:
2
+ import { cliui } from './build/lib/index.js'
3
+
4
+ import stringWidth from 'string-width'
5
+ import stripAnsi from 'strip-ansi'
6
+ import wrap from 'wrap-ansi'
7
+
8
+ export default function ui (opts) {
9
+ return cliui(opts, {
10
+ stringWidth,
11
+ stripAnsi,
12
+ wrap
13
+ })
14
+ }