@socketsecurity/lib 5.28.0 → 6.0.1

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 (1055) hide show
  1. package/CHANGELOG.md +135 -37
  2. package/README.md +26 -17
  3. package/dist/abort/signal.d.ts +28 -0
  4. package/dist/{abort.js → abort/signal.js} +12 -10
  5. package/dist/ai/discover.d.mts +50 -0
  6. package/dist/ai/discover.js +128 -0
  7. package/dist/ai/profiles.d.mts +39 -0
  8. package/dist/ai/profiles.js +61 -0
  9. package/dist/ai/spawn.d.mts +49 -0
  10. package/dist/ai/spawn.js +207 -0
  11. package/dist/ai/types.d.mts +117 -0
  12. package/dist/ai/types.js +18 -0
  13. package/dist/ai/worktree.d.mts +104 -0
  14. package/dist/ai/worktree.js +200 -0
  15. package/dist/ansi/constants.d.ts +10 -0
  16. package/dist/ansi/constants.js +45 -0
  17. package/dist/ansi/strip.d.ts +33 -0
  18. package/dist/{ansi.js → ansi/strip.js} +7 -24
  19. package/dist/archives/_internal.d.ts +39 -0
  20. package/dist/archives/_internal.js +87 -0
  21. package/dist/archives/detect.d.ts +19 -0
  22. package/dist/archives/detect.js +46 -0
  23. package/dist/archives/extract.d.ts +22 -0
  24. package/dist/archives/extract.js +53 -0
  25. package/dist/archives/tar.d.ts +42 -0
  26. package/dist/archives/tar.js +233 -0
  27. package/dist/archives/types.d.ts +34 -0
  28. package/dist/archives/types.js +18 -0
  29. package/dist/archives/zip.d.ts +20 -0
  30. package/dist/archives/zip.js +124 -0
  31. package/dist/argv/flag-predicates.d.ts +179 -0
  32. package/dist/argv/flag-predicates.js +118 -0
  33. package/dist/argv/flag-types.d.ts +123 -0
  34. package/dist/argv/flag-types.js +116 -0
  35. package/dist/argv/parse-args-string.d.ts +30 -0
  36. package/dist/argv/parse-args-string.js +42 -0
  37. package/dist/argv/parse.d.ts +34 -33
  38. package/dist/argv/parse.js +6 -4
  39. package/dist/arrays/_internal.d.ts +43 -0
  40. package/dist/{arrays.js → arrays/_internal.js} +8 -41
  41. package/dist/arrays/chunk.d.ts +37 -0
  42. package/dist/arrays/chunk.js +43 -0
  43. package/dist/arrays/join.d.ts +76 -0
  44. package/dist/{env/helpers.js → arrays/join.js} +12 -18
  45. package/dist/arrays/predicates.d.ts +40 -0
  46. package/dist/arrays/predicates.js +30 -0
  47. package/dist/arrays/unique.d.ts +36 -0
  48. package/dist/arrays/unique.js +34 -0
  49. package/dist/bin/_internal.d.ts +22 -0
  50. package/dist/bin/_internal.js +43 -0
  51. package/dist/bin/check-primordials.d.ts +41 -15
  52. package/dist/bin/check-primordials.js +49 -28
  53. package/dist/bin/check.d.ts +7 -12
  54. package/dist/bin/check.js +6 -2
  55. package/dist/bin/exec.d.ts +37 -0
  56. package/dist/bin/exec.js +79 -0
  57. package/dist/bin/find.d.ts +58 -0
  58. package/dist/bin/find.js +143 -0
  59. package/dist/bin/resolve.d.ts +30 -0
  60. package/dist/bin/resolve.js +249 -0
  61. package/dist/bin/shadow.d.ts +16 -0
  62. package/dist/bin/shadow.js +36 -0
  63. package/dist/bin/socket-lib.d.ts +10 -14
  64. package/dist/bin/socket-lib.js +19 -4
  65. package/dist/bin/types.d.ts +34 -0
  66. package/dist/bin/types.js +18 -0
  67. package/dist/bin/which.d.ts +111 -0
  68. package/dist/bin/which.js +155 -0
  69. package/dist/cacache/_internal.d.ts +15 -0
  70. package/dist/cacache/_internal.js +43 -0
  71. package/dist/cacache/clear.d.ts +43 -0
  72. package/dist/cacache/clear.js +77 -0
  73. package/dist/cacache/read.d.ts +31 -0
  74. package/dist/cacache/read.js +51 -0
  75. package/dist/cacache/tmp.d.ts +18 -0
  76. package/dist/cacache/tmp.js +39 -0
  77. package/dist/cacache/types.d.ts +37 -0
  78. package/dist/cacache/types.js +18 -0
  79. package/dist/cacache/write.d.ts +31 -0
  80. package/dist/cacache/write.js +53 -0
  81. package/dist/cache/ttl/store.d.ts +29 -0
  82. package/dist/{cache-with-ttl.js → cache/ttl/store.js} +45 -37
  83. package/dist/cache/ttl/types.d.ts +109 -0
  84. package/dist/cache/ttl/types.js +18 -0
  85. package/dist/checks/primordials-defaults.d.ts +20 -0
  86. package/dist/checks/primordials-defaults.js +92 -0
  87. package/dist/checks/primordials.d.ts +69 -61
  88. package/dist/checks/primordials.js +141 -92
  89. package/dist/colors/convert.d.ts +35 -0
  90. package/dist/colors/convert.js +42 -0
  91. package/dist/colors/palette.d.ts +7 -0
  92. package/dist/{colors.js → colors/palette.js} +5 -17
  93. package/dist/colors/socket-palette.d.ts +69 -0
  94. package/dist/colors/socket-palette.js +91 -0
  95. package/dist/colors/types.d.ts +29 -0
  96. package/dist/colors/types.js +18 -0
  97. package/dist/compression/_internal.d.ts +33 -0
  98. package/dist/compression/_internal.js +77 -0
  99. package/dist/compression/brotli.d.ts +82 -0
  100. package/dist/{compression.js → compression/brotli.js} +17 -145
  101. package/dist/compression/gzip.d.ts +70 -0
  102. package/dist/compression/gzip.js +142 -0
  103. package/dist/compression/types.d.ts +37 -0
  104. package/dist/compression/types.js +18 -0
  105. package/dist/constants/agents.d.ts +4 -3
  106. package/dist/constants/agents.js +7 -4
  107. package/dist/constants/encoding.d.ts +3 -3
  108. package/dist/constants/github.d.ts +2 -3
  109. package/dist/constants/licenses.d.ts +5 -5
  110. package/dist/constants/licenses.js +2 -2
  111. package/dist/constants/lifecycle-script-names.d.ts +3 -4
  112. package/dist/constants/lifecycle-script-names.js +2 -2
  113. package/dist/constants/maintained-node-versions.d.ts +1 -1
  114. package/dist/constants/maintained-node-versions.js +3 -4
  115. package/dist/constants/node.d.ts +21 -20
  116. package/dist/constants/node.js +4 -4
  117. package/dist/constants/package-default-node-range.d.ts +1 -1
  118. package/dist/constants/package-default-socket-categories.d.ts +1 -1
  119. package/dist/constants/package-default-socket-categories.js +2 -2
  120. package/dist/constants/packages.d.ts +4 -4
  121. package/dist/constants/packages.js +7 -5
  122. package/dist/constants/platform.d.ts +3 -1
  123. package/dist/constants/platform.js +3 -10
  124. package/dist/constants/{core.d.ts → sentinels.d.ts} +4 -4
  125. package/dist/constants/{core.js → sentinels.js} +3 -3
  126. package/dist/constants/socket.d.ts +4 -6
  127. package/dist/constants/socket.js +6 -9
  128. package/dist/constants/testing.d.ts +3 -3
  129. package/dist/constants/time.d.ts +3 -3
  130. package/dist/constants/typescript.d.ts +3 -3
  131. package/dist/cover/code.d.ts +11 -3
  132. package/dist/cover/code.js +27 -37
  133. package/dist/cover/formatters.d.ts +19 -15
  134. package/dist/cover/formatters.js +21 -18
  135. package/dist/cover/type.d.ts +4 -3
  136. package/dist/cover/type.js +10 -9
  137. package/dist/cover/types.d.ts +1 -1
  138. package/dist/crypto/hash.d.ts +36 -0
  139. package/dist/{crypto.js → crypto/hash.js} +17 -17
  140. package/dist/debug/_internal.d.ts +25 -0
  141. package/dist/debug/_internal.js +77 -0
  142. package/dist/debug/caller-info.d.ts +12 -0
  143. package/dist/debug/caller-info.js +67 -0
  144. package/dist/debug/namespace.d.ts +35 -0
  145. package/dist/debug/namespace.js +101 -0
  146. package/dist/{debug.d.ts → debug/output.d.ts} +23 -42
  147. package/dist/debug/output.js +209 -0
  148. package/dist/debug/types.d.ts +21 -0
  149. package/dist/debug/types.js +18 -0
  150. package/dist/dlx/_internal.d.ts +10 -0
  151. package/dist/dlx/_internal.js +47 -0
  152. package/dist/dlx/arborist.d.ts +86 -61
  153. package/dist/dlx/arborist.js +30 -35
  154. package/dist/dlx/binary-cache.d.ts +108 -0
  155. package/dist/dlx/binary-cache.js +212 -0
  156. package/dist/dlx/binary-download.d.ts +67 -0
  157. package/dist/dlx/binary-download.js +216 -0
  158. package/dist/dlx/binary-resolution.d.ts +61 -0
  159. package/dist/dlx/binary-resolution.js +164 -0
  160. package/dist/dlx/binary-types.d.ts +144 -0
  161. package/dist/dlx/binary-types.js +18 -0
  162. package/dist/dlx/binary.d.ts +39 -268
  163. package/dist/dlx/binary.js +40 -321
  164. package/dist/dlx/cache.d.ts +21 -16
  165. package/dist/dlx/cache.js +2 -2
  166. package/dist/dlx/detect.d.ts +94 -68
  167. package/dist/dlx/detect.js +32 -35
  168. package/dist/dlx/dir.d.ts +20 -18
  169. package/dist/dlx/dir.js +7 -14
  170. package/dist/dlx/firewall.d.ts +27 -0
  171. package/dist/dlx/firewall.js +107 -0
  172. package/dist/dlx/lockfile.d.ts +73 -56
  173. package/dist/dlx/lockfile.js +36 -44
  174. package/dist/dlx/manifest.d.ts +50 -51
  175. package/dist/dlx/manifest.js +52 -53
  176. package/dist/dlx/package.d.ts +83 -279
  177. package/dist/dlx/package.js +45 -267
  178. package/dist/dlx/packages.d.ts +22 -20
  179. package/dist/dlx/packages.js +15 -20
  180. package/dist/dlx/paths.d.ts +26 -23
  181. package/dist/dlx/paths.js +8 -15
  182. package/dist/dlx/spec.d.ts +25 -0
  183. package/dist/dlx/spec.js +63 -0
  184. package/dist/dlx/types.d.ts +142 -0
  185. package/dist/dlx/types.js +18 -0
  186. package/dist/eco/cargo/lockfile-format.d.ts +8 -0
  187. package/dist/eco/cargo/lockfile-format.js +39 -0
  188. package/dist/eco/cargo/manifest-format.d.ts +7 -0
  189. package/dist/eco/cargo/manifest-format.js +38 -0
  190. package/dist/eco/cargo/parse-lockfile.d.ts +84 -0
  191. package/dist/eco/cargo/parse-lockfile.js +257 -0
  192. package/dist/eco/manifest/analyze-lockfile.d.ts +10 -0
  193. package/dist/eco/manifest/analyze-lockfile.js +67 -0
  194. package/dist/eco/manifest/detect-format.d.ts +15 -0
  195. package/dist/eco/manifest/detect-format.js +98 -0
  196. package/dist/eco/manifest/find-packages.d.ts +14 -0
  197. package/dist/eco/manifest/find-packages.js +69 -0
  198. package/dist/eco/manifest/get-package-versions.d.ts +8 -0
  199. package/dist/eco/manifest/get-package-versions.js +52 -0
  200. package/dist/eco/manifest/get-package.d.ts +10 -0
  201. package/dist/eco/manifest/get-package.js +44 -0
  202. package/dist/eco/manifest/manifest-error.d.ts +18 -0
  203. package/dist/eco/manifest/manifest-error.js +37 -0
  204. package/dist/eco/manifest/parse-lockfile.d.ts +16 -0
  205. package/dist/eco/manifest/parse-lockfile.js +91 -0
  206. package/dist/eco/manifest/parse-manifest.d.ts +12 -0
  207. package/dist/eco/manifest/parse-manifest.js +48 -0
  208. package/dist/eco/manifest/parse.d.ts +9 -0
  209. package/dist/eco/manifest/parse.js +52 -0
  210. package/dist/eco/manifest/types.d.ts +10 -0
  211. package/dist/eco/manifest/types.js +18 -0
  212. package/dist/eco/npm/bun/exec.d.ts +15 -0
  213. package/dist/eco/npm/bun/exec.js +35 -0
  214. package/dist/eco/npm/manifest-format.d.ts +11 -0
  215. package/dist/eco/npm/manifest-format.js +38 -0
  216. package/dist/eco/npm/npm/exec.d.ts +24 -0
  217. package/dist/eco/npm/npm/exec.js +64 -0
  218. package/dist/eco/npm/npm/extract-package-name-from-path.d.ts +9 -0
  219. package/dist/eco/npm/npm/extract-package-name-from-path.js +54 -0
  220. package/dist/eco/npm/npm/flags.d.ts +62 -0
  221. package/dist/eco/npm/npm/flags.js +63 -0
  222. package/dist/eco/npm/npm/lockfile-format.d.ts +9 -0
  223. package/dist/eco/npm/npm/lockfile-format.js +42 -0
  224. package/dist/eco/npm/npm/parse-git-url.d.ts +13 -0
  225. package/dist/eco/npm/npm/parse-git-url.js +43 -0
  226. package/dist/eco/npm/npm/parse-lockfile.d.ts +70 -0
  227. package/dist/eco/npm/npm/parse-lockfile.js +224 -0
  228. package/dist/eco/npm/parse-package-json.d.ts +16 -0
  229. package/dist/eco/npm/parse-package-json.js +115 -0
  230. package/dist/eco/npm/pnpm/detect-pnpm-version.d.ts +7 -0
  231. package/dist/eco/npm/pnpm/detect-pnpm-version.js +47 -0
  232. package/dist/eco/npm/pnpm/exec.d.ts +26 -0
  233. package/dist/eco/npm/pnpm/exec.js +65 -0
  234. package/dist/eco/npm/pnpm/flags.d.ts +44 -0
  235. package/dist/eco/npm/pnpm/flags.js +76 -0
  236. package/dist/eco/npm/pnpm/lockfile-format.d.ts +8 -0
  237. package/dist/eco/npm/pnpm/lockfile-format.js +39 -0
  238. package/dist/eco/npm/pnpm/parse-lockfile.d.ts +69 -0
  239. package/dist/eco/npm/pnpm/parse-lockfile.js +274 -0
  240. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.d.ts +15 -0
  241. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +50 -0
  242. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.d.ts +11 -0
  243. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +52 -0
  244. package/dist/eco/npm/script.d.ts +35 -0
  245. package/dist/eco/npm/script.js +93 -0
  246. package/dist/eco/npm/vlt/exec.d.ts +16 -0
  247. package/dist/eco/npm/vlt/exec.js +35 -0
  248. package/dist/eco/npm/yarnpkg/yarn/exec.d.ts +28 -0
  249. package/dist/eco/npm/yarnpkg/yarn/exec.js +63 -0
  250. package/dist/eco/npm/yarnpkg/yarn/lockfile-format.d.ts +9 -0
  251. package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +39 -0
  252. package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +61 -0
  253. package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +261 -0
  254. package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.d.ts +16 -0
  255. package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +68 -0
  256. package/dist/{types.d.ts → eco/purl.d.ts} +14 -26
  257. package/dist/{types.js → eco/purl.js} +3 -3
  258. package/dist/eco/types.d.ts +51 -0
  259. package/dist/eco/types.js +18 -0
  260. package/dist/effects/pulse-frames.d.ts +16 -17
  261. package/dist/effects/pulse-frames.js +4 -4
  262. package/dist/effects/shimmer-keyframes.d.ts +39 -37
  263. package/dist/effects/shimmer-terminal.d.ts +43 -42
  264. package/dist/effects/shimmer-terminal.js +3 -3
  265. package/dist/effects/shimmer.d.ts +172 -153
  266. package/dist/effects/shimmer.js +78 -76
  267. package/dist/env/boolean.d.ts +33 -0
  268. package/dist/env/boolean.js +46 -0
  269. package/dist/env/case-insensitive.d.ts +42 -0
  270. package/dist/env/case-insensitive.js +42 -0
  271. package/dist/env/ci.d.ts +11 -12
  272. package/dist/env/debug.d.ts +10 -10
  273. package/dist/env/github.d.ts +71 -74
  274. package/dist/env/home.d.ts +15 -14
  275. package/dist/env/locale.d.ts +26 -29
  276. package/dist/env/node-auth-token.d.ts +10 -10
  277. package/dist/env/node-env.d.ts +10 -10
  278. package/dist/env/npm.d.ts +45 -47
  279. package/dist/env/number.d.ts +29 -0
  280. package/dist/env/number.js +54 -0
  281. package/dist/env/package-manager.d.ts +36 -33
  282. package/dist/env/package-manager.js +3 -3
  283. package/dist/env/path.d.ts +10 -10
  284. package/dist/env/pre-commit.d.ts +11 -11
  285. package/dist/env/pre-commit.js +2 -2
  286. package/dist/env/proxy.d.ts +44 -0
  287. package/dist/env/proxy.js +126 -0
  288. package/dist/env/rewire.d.ts +105 -99
  289. package/dist/env/rewire.js +11 -8
  290. package/dist/env/shell.d.ts +10 -10
  291. package/dist/env/socket-cli.d.ts +109 -125
  292. package/dist/env/socket-cli.js +7 -12
  293. package/dist/env/socket.d.ts +347 -130
  294. package/dist/env/socket.js +107 -8
  295. package/dist/env/string.d.ts +28 -0
  296. package/dist/env/string.js +47 -0
  297. package/dist/env/temp-dir.d.ts +26 -29
  298. package/dist/env/term.d.ts +10 -10
  299. package/dist/env/test.d.ts +29 -31
  300. package/dist/env/test.js +5 -4
  301. package/dist/env/types.d.ts +62 -0
  302. package/dist/env/types.js +18 -0
  303. package/dist/env/windows.d.ts +37 -38
  304. package/dist/env/xdg.d.ts +29 -29
  305. package/dist/errors/message.d.ts +27 -0
  306. package/dist/errors/message.js +49 -0
  307. package/dist/errors/predicates.d.ts +46 -0
  308. package/dist/{errors.js → errors/predicates.js} +13 -43
  309. package/dist/errors/stack.d.ts +16 -0
  310. package/dist/errors/stack.js +39 -0
  311. package/dist/events/exit/_internal.d.ts +68 -0
  312. package/dist/events/exit/_internal.js +127 -0
  313. package/dist/events/exit/handler.d.ts +20 -0
  314. package/dist/events/exit/handler.js +58 -0
  315. package/dist/events/exit/intercept.d.ts +8 -0
  316. package/dist/events/exit/intercept.js +75 -0
  317. package/dist/events/exit/lifecycle.d.ts +28 -0
  318. package/dist/events/exit/lifecycle.js +109 -0
  319. package/dist/events/exit/signals.d.ts +16 -0
  320. package/dist/events/exit/signals.js +34 -0
  321. package/dist/events/exit/types.d.ts +21 -0
  322. package/dist/events/exit/types.js +18 -0
  323. package/dist/events/warning/handler.d.ts +31 -0
  324. package/dist/events/warning/handler.js +43 -0
  325. package/dist/events/warning/suppress.d.ts +65 -0
  326. package/dist/{suppress-warnings.js → events/warning/suppress.js} +16 -28
  327. package/dist/external/@npmcli/package-json/lib/read-package.js +11 -1
  328. package/dist/external/@npmcli/package-json.js +300 -82
  329. package/dist/external/@npmcli/promise-spawn.js +15 -1
  330. package/dist/external/@socketregistry/packageurl-js.js +7 -1
  331. package/dist/external/@socketregistry/yocto-spinner.js +5 -1
  332. package/dist/external/@yarnpkg/extensions.js +1 -1
  333. package/dist/external/adm-zip.js +20 -4
  334. package/dist/external/debug.js +15 -1
  335. package/dist/external/external-pack.js +20 -4
  336. package/dist/external/fast-sort.js +3 -1
  337. package/dist/external/get-east-asian-width.js +3 -1
  338. package/dist/external/libnpmexec.js +5 -1
  339. package/dist/external/npm-pack.js +344 -113
  340. package/dist/external/p-map.js +7 -1
  341. package/dist/external/pico-pack.js +17 -1
  342. package/dist/external/pony-cause.js +1 -1
  343. package/dist/external/spdx-pack.js +3 -1
  344. package/dist/external/supports-color.js +1 -1
  345. package/dist/external/tar-fs.js +15 -1
  346. package/dist/external/which.js +11 -1
  347. package/dist/external/yargs-parser.js +15 -1
  348. package/dist/external-tools/bazel/asset-names.d.ts +66 -0
  349. package/dist/external-tools/bazel/asset-names.js +96 -0
  350. package/dist/external-tools/bazel/from-download.d.ts +49 -0
  351. package/dist/external-tools/bazel/from-download.js +49 -0
  352. package/dist/external-tools/bazel/from-path.d.ts +8 -0
  353. package/dist/external-tools/bazel/from-path.js +41 -0
  354. package/dist/external-tools/bazel/read-bazel-version-file.d.ts +12 -0
  355. package/dist/external-tools/bazel/read-bazel-version-file.js +61 -0
  356. package/dist/external-tools/bazel/resolve-asset-url.d.ts +14 -0
  357. package/dist/external-tools/bazel/resolve-asset-url.js +42 -0
  358. package/dist/external-tools/bazel/resolve-bazel-version.d.ts +19 -0
  359. package/dist/external-tools/bazel/resolve-bazel-version.js +59 -0
  360. package/dist/external-tools/bazel/resolve.d.ts +35 -0
  361. package/dist/external-tools/bazel/resolve.js +68 -0
  362. package/dist/external-tools/bazel/types.d.ts +22 -0
  363. package/dist/external-tools/bazel/types.js +18 -0
  364. package/dist/external-tools/cdxgen/asset-names.d.ts +58 -0
  365. package/dist/external-tools/cdxgen/asset-names.js +79 -0
  366. package/dist/external-tools/cdxgen/from-download.d.ts +43 -0
  367. package/dist/external-tools/cdxgen/from-download.js +83 -0
  368. package/dist/external-tools/cdxgen/from-path.d.ts +5 -0
  369. package/dist/external-tools/cdxgen/from-path.js +40 -0
  370. package/dist/external-tools/cdxgen/from-vfs.d.ts +7 -0
  371. package/dist/external-tools/cdxgen/from-vfs.js +47 -0
  372. package/dist/external-tools/cdxgen/resolve.d.ts +32 -0
  373. package/dist/external-tools/cdxgen/resolve.js +73 -0
  374. package/dist/external-tools/cdxgen/types.d.ts +33 -0
  375. package/dist/external-tools/cdxgen/types.js +18 -0
  376. package/dist/external-tools/from-download.d.ts +162 -0
  377. package/dist/external-tools/from-download.js +72 -0
  378. package/dist/external-tools/janus/asset-names.d.ts +43 -0
  379. package/dist/external-tools/janus/asset-names.js +57 -0
  380. package/dist/external-tools/janus/from-download.d.ts +26 -0
  381. package/dist/external-tools/janus/from-download.js +73 -0
  382. package/dist/external-tools/janus/from-path.d.ts +5 -0
  383. package/dist/external-tools/janus/from-path.js +40 -0
  384. package/dist/external-tools/janus/from-vfs.d.ts +7 -0
  385. package/dist/external-tools/janus/from-vfs.js +47 -0
  386. package/dist/external-tools/janus/resolve.d.ts +28 -0
  387. package/dist/external-tools/janus/resolve.js +73 -0
  388. package/dist/external-tools/janus/types.d.ts +24 -0
  389. package/dist/external-tools/janus/types.js +18 -0
  390. package/dist/external-tools/jre/asset-names.d.ts +91 -0
  391. package/dist/external-tools/jre/asset-names.js +88 -0
  392. package/dist/external-tools/jre/detect-platform-arch.d.ts +8 -0
  393. package/dist/external-tools/jre/detect-platform-arch.js +52 -0
  394. package/dist/external-tools/jre/from-download.d.ts +62 -0
  395. package/dist/external-tools/jre/from-download.js +70 -0
  396. package/dist/external-tools/jre/from-java-home.d.ts +10 -0
  397. package/dist/external-tools/jre/from-java-home.js +57 -0
  398. package/dist/external-tools/jre/from-path.d.ts +9 -0
  399. package/dist/external-tools/jre/from-path.js +52 -0
  400. package/dist/external-tools/jre/from-vfs.d.ts +17 -0
  401. package/dist/external-tools/jre/from-vfs.js +64 -0
  402. package/dist/external-tools/jre/resolve.d.ts +40 -0
  403. package/dist/external-tools/jre/resolve.js +78 -0
  404. package/dist/external-tools/jre/types.d.ts +28 -0
  405. package/dist/external-tools/jre/types.js +18 -0
  406. package/dist/external-tools/manifest.d.ts +105 -0
  407. package/dist/external-tools/manifest.js +167 -0
  408. package/dist/external-tools/opengrep/asset-names.d.ts +44 -0
  409. package/dist/external-tools/opengrep/asset-names.js +78 -0
  410. package/dist/external-tools/opengrep/from-download.d.ts +17 -0
  411. package/dist/external-tools/opengrep/from-download.js +83 -0
  412. package/dist/external-tools/opengrep/from-path.d.ts +5 -0
  413. package/dist/external-tools/opengrep/from-path.js +40 -0
  414. package/dist/external-tools/opengrep/from-vfs.d.ts +8 -0
  415. package/dist/external-tools/opengrep/from-vfs.js +47 -0
  416. package/dist/external-tools/opengrep/resolve.d.ts +26 -0
  417. package/dist/external-tools/opengrep/resolve.js +73 -0
  418. package/dist/external-tools/opengrep/types.d.ts +24 -0
  419. package/dist/external-tools/opengrep/types.js +18 -0
  420. package/dist/external-tools/sbt/asset-names.d.ts +31 -0
  421. package/dist/external-tools/sbt/asset-names.js +33 -0
  422. package/dist/external-tools/sbt/from-download.d.ts +44 -0
  423. package/dist/external-tools/sbt/from-download.js +64 -0
  424. package/dist/external-tools/sbt/from-path.d.ts +8 -0
  425. package/dist/external-tools/sbt/from-path.js +41 -0
  426. package/dist/external-tools/sbt/from-vfs.d.ts +14 -0
  427. package/dist/external-tools/sbt/from-vfs.js +48 -0
  428. package/dist/external-tools/sbt/resolve.d.ts +31 -0
  429. package/dist/external-tools/sbt/resolve.js +73 -0
  430. package/dist/external-tools/sbt/types.d.ts +32 -0
  431. package/dist/external-tools/sbt/types.js +18 -0
  432. package/dist/external-tools/synp/asset-names.d.ts +14 -0
  433. package/dist/external-tools/synp/asset-names.js +32 -0
  434. package/dist/external-tools/synp/from-download.d.ts +18 -0
  435. package/dist/external-tools/synp/from-download.js +44 -0
  436. package/dist/external-tools/synp/from-path.d.ts +5 -0
  437. package/dist/external-tools/synp/from-path.js +40 -0
  438. package/dist/external-tools/synp/from-vfs.d.ts +7 -0
  439. package/dist/external-tools/synp/from-vfs.js +47 -0
  440. package/dist/external-tools/synp/resolve.d.ts +21 -0
  441. package/dist/external-tools/synp/resolve.js +72 -0
  442. package/dist/external-tools/synp/types.d.ts +19 -0
  443. package/dist/external-tools/synp/types.js +18 -0
  444. package/dist/external-tools/trivy/asset-names.d.ts +34 -0
  445. package/dist/external-tools/trivy/asset-names.js +68 -0
  446. package/dist/external-tools/trivy/from-download.d.ts +17 -0
  447. package/dist/external-tools/trivy/from-download.js +67 -0
  448. package/dist/external-tools/trivy/from-path.d.ts +5 -0
  449. package/dist/external-tools/trivy/from-path.js +40 -0
  450. package/dist/external-tools/trivy/from-vfs.d.ts +7 -0
  451. package/dist/external-tools/trivy/from-vfs.js +47 -0
  452. package/dist/external-tools/trivy/resolve.d.ts +26 -0
  453. package/dist/external-tools/trivy/resolve.js +73 -0
  454. package/dist/external-tools/trivy/types.d.ts +24 -0
  455. package/dist/external-tools/trivy/types.js +18 -0
  456. package/dist/external-tools/trufflehog/asset-names.d.ts +34 -0
  457. package/dist/external-tools/trufflehog/asset-names.js +72 -0
  458. package/dist/external-tools/trufflehog/from-download.d.ts +37 -0
  459. package/dist/external-tools/trufflehog/from-download.js +65 -0
  460. package/dist/external-tools/trufflehog/from-path.d.ts +7 -0
  461. package/dist/external-tools/trufflehog/from-path.js +40 -0
  462. package/dist/external-tools/trufflehog/from-vfs.d.ts +11 -0
  463. package/dist/external-tools/trufflehog/from-vfs.js +47 -0
  464. package/dist/external-tools/trufflehog/resolve.d.ts +30 -0
  465. package/dist/external-tools/trufflehog/resolve.js +73 -0
  466. package/dist/external-tools/trufflehog/types.d.ts +25 -0
  467. package/dist/external-tools/trufflehog/types.js +18 -0
  468. package/dist/external-tools/uv/asset-names.d.ts +36 -0
  469. package/dist/external-tools/uv/asset-names.js +80 -0
  470. package/dist/external-tools/uv/from-download.d.ts +17 -0
  471. package/dist/external-tools/uv/from-download.js +68 -0
  472. package/dist/external-tools/uv/from-path.d.ts +5 -0
  473. package/dist/external-tools/uv/from-path.js +40 -0
  474. package/dist/external-tools/uv/from-vfs.d.ts +7 -0
  475. package/dist/external-tools/uv/from-vfs.js +47 -0
  476. package/dist/external-tools/uv/resolve.d.ts +25 -0
  477. package/dist/external-tools/uv/resolve.js +73 -0
  478. package/dist/external-tools/uv/types.d.ts +24 -0
  479. package/dist/external-tools/uv/types.js +18 -0
  480. package/dist/fs/_internal.d.ts +22 -0
  481. package/dist/fs/_internal.js +48 -0
  482. package/dist/fs/encoding.d.ts +49 -0
  483. package/dist/fs/encoding.js +102 -0
  484. package/dist/fs/find-up.d.ts +58 -0
  485. package/dist/fs/find-up.js +152 -0
  486. package/dist/fs/inspect.d.ts +117 -0
  487. package/dist/fs/inspect.js +112 -0
  488. package/dist/fs/path-cache.d.ts +21 -0
  489. package/dist/fs/path-cache.js +35 -0
  490. package/dist/fs/read-dir.d.ts +66 -0
  491. package/dist/fs/read-dir.js +86 -0
  492. package/dist/fs/read-file.d.ts +150 -0
  493. package/dist/fs/read-file.js +131 -0
  494. package/dist/fs/read-json-cache.d.ts +83 -0
  495. package/dist/fs/read-json-cache.js +156 -0
  496. package/dist/fs/read-json.d.ts +77 -0
  497. package/dist/fs/read-json.js +192 -0
  498. package/dist/fs/safe.d.ts +153 -0
  499. package/dist/fs/safe.js +182 -0
  500. package/dist/fs/types.d.ts +291 -0
  501. package/dist/fs/types.js +18 -0
  502. package/dist/fs/unique.d.ts +29 -0
  503. package/dist/fs/unique.js +51 -0
  504. package/dist/fs/validate.d.ts +40 -0
  505. package/dist/fs/validate.js +46 -0
  506. package/dist/fs/write-json.d.ts +78 -0
  507. package/dist/fs/write-json.js +83 -0
  508. package/dist/git/_internal.d.ts +105 -0
  509. package/dist/git/_internal.js +236 -0
  510. package/dist/git/changed.d.ts +145 -0
  511. package/dist/git/changed.js +83 -0
  512. package/dist/git/repo.d.ts +62 -0
  513. package/dist/git/repo.js +111 -0
  514. package/dist/git/staged.d.ts +138 -0
  515. package/dist/git/staged.js +71 -0
  516. package/dist/git/types.d.ts +109 -0
  517. package/dist/git/types.js +18 -0
  518. package/dist/git/unstaged.d.ts +141 -0
  519. package/dist/git/unstaged.js +71 -0
  520. package/dist/github/constants.d.ts +18 -0
  521. package/dist/github/constants.js +36 -0
  522. package/dist/github/errors.d.ts +36 -0
  523. package/dist/github/errors.js +40 -0
  524. package/dist/github/fetch.d.ts +89 -0
  525. package/dist/github/fetch.js +87 -0
  526. package/dist/github/ghsa.d.ts +118 -0
  527. package/dist/github/ghsa.js +178 -0
  528. package/dist/github/refs-cache.d.ts +40 -0
  529. package/dist/github/refs-cache.js +49 -0
  530. package/dist/github/refs-graphql.d.ts +42 -0
  531. package/dist/github/refs-graphql.js +109 -0
  532. package/dist/github/refs-rest.d.ts +23 -0
  533. package/dist/github/refs-rest.js +104 -0
  534. package/dist/github/refs.d.ts +84 -0
  535. package/dist/github/refs.js +67 -0
  536. package/dist/github/token.d.ts +77 -0
  537. package/dist/github/token.js +55 -0
  538. package/dist/github/types.d.ts +277 -0
  539. package/dist/github/types.js +18 -0
  540. package/dist/globs/_internal.d.ts +46 -0
  541. package/dist/globs/_internal.js +96 -0
  542. package/dist/globs/defaults.d.ts +7 -0
  543. package/dist/globs/defaults.js +61 -0
  544. package/dist/globs/match.d.ts +59 -0
  545. package/dist/globs/match.js +84 -0
  546. package/dist/globs/matcher.d.ts +46 -0
  547. package/dist/globs/matcher.js +99 -0
  548. package/dist/globs/stream.d.ts +18 -0
  549. package/dist/globs/stream.js +58 -0
  550. package/dist/globs/types.d.ts +35 -0
  551. package/dist/globs/types.js +18 -0
  552. package/dist/http-request/_internal.d.ts +18 -0
  553. package/dist/http-request/_internal.js +39 -0
  554. package/dist/http-request/browser-fetch.d.ts +10 -0
  555. package/dist/http-request/browser-fetch.js +32 -0
  556. package/dist/http-request/browser.d.ts +190 -0
  557. package/dist/http-request/browser.js +224 -0
  558. package/dist/http-request/checksums.d.ts +69 -0
  559. package/dist/http-request/checksums.js +72 -0
  560. package/dist/http-request/convenience.d.ts +104 -0
  561. package/dist/http-request/convenience.js +96 -0
  562. package/dist/http-request/download-types.d.ts +224 -0
  563. package/dist/http-request/download-types.js +18 -0
  564. package/dist/http-request/download.d.ts +71 -0
  565. package/dist/http-request/download.js +201 -0
  566. package/dist/http-request/errors.d.ts +23 -0
  567. package/dist/http-request/errors.js +50 -0
  568. package/dist/http-request/headers.d.ts +57 -0
  569. package/dist/http-request/headers.js +86 -0
  570. package/dist/http-request/request-attempt.d.ts +21 -0
  571. package/dist/http-request/request-attempt.js +288 -0
  572. package/dist/http-request/request-types.d.ts +253 -0
  573. package/dist/http-request/request-types.js +18 -0
  574. package/dist/http-request/request.d.ts +59 -0
  575. package/dist/http-request/request.js +111 -0
  576. package/dist/http-request/response-reader.d.ts +25 -0
  577. package/dist/http-request/response-reader.js +54 -0
  578. package/dist/http-request/response-types.d.ts +123 -0
  579. package/dist/http-request/response-types.js +40 -0
  580. package/dist/http-request/user-agent.d.ts +55 -0
  581. package/dist/http-request/user-agent.js +61 -0
  582. package/dist/{dlx/integrity.d.ts → integrity.d.ts} +36 -30
  583. package/dist/{dlx/integrity.js → integrity.js} +25 -19
  584. package/dist/ipc/_internal.d.ts +25 -0
  585. package/dist/ipc/_internal.js +50 -0
  586. package/dist/ipc/directory.d.ts +18 -0
  587. package/dist/ipc/directory.js +66 -0
  588. package/dist/ipc/paths.d.ts +37 -0
  589. package/dist/ipc/paths.js +48 -0
  590. package/dist/ipc/types.d.ts +22 -0
  591. package/dist/ipc/types.js +18 -0
  592. package/dist/ipc/write.d.ts +39 -0
  593. package/dist/ipc/write.js +77 -0
  594. package/dist/ipc-cli/get.d.ts +21 -0
  595. package/dist/{ipc-cli.js → ipc-cli/get.js} +5 -5
  596. package/dist/ipc-cli/types.d.ts +14 -0
  597. package/dist/ipc-cli/types.js +18 -0
  598. package/dist/json/edit.d.ts +22 -8
  599. package/dist/json/edit.js +85 -96
  600. package/dist/json/format.d.ts +100 -86
  601. package/dist/json/format.js +4 -3
  602. package/dist/json/parse.d.ts +113 -88
  603. package/dist/json/parse.js +30 -24
  604. package/dist/json/types.d.ts +133 -117
  605. package/dist/links/create.d.ts +65 -0
  606. package/dist/{links.js → links/create.js} +10 -10
  607. package/dist/links/types.d.ts +19 -0
  608. package/dist/links/types.js +18 -0
  609. package/dist/logger/_internal.d.ts +82 -0
  610. package/dist/logger/_internal.js +80 -0
  611. package/dist/logger/browser.d.ts +16 -0
  612. package/dist/logger/browser.js +65 -0
  613. package/dist/logger/colors.d.ts +18 -0
  614. package/dist/logger/colors.js +54 -0
  615. package/dist/logger/console.d.ts +33 -0
  616. package/dist/logger/console.js +119 -0
  617. package/dist/logger/default.d.ts +405 -0
  618. package/dist/logger/default.js +854 -0
  619. package/dist/logger/symbols-builder.d.ts +29 -0
  620. package/dist/logger/symbols-builder.js +61 -0
  621. package/dist/logger/symbols.d.ts +61 -0
  622. package/dist/logger/symbols.js +129 -0
  623. package/dist/logger/types.d.ts +88 -0
  624. package/dist/logger/types.js +18 -0
  625. package/dist/memo/_internal.d.ts +16 -0
  626. package/dist/memo/_internal.js +53 -0
  627. package/dist/memo/async.d.ts +32 -0
  628. package/dist/memo/async.js +120 -0
  629. package/dist/memo/clear.d.ts +15 -0
  630. package/dist/memo/clear.js +37 -0
  631. package/dist/memo/decorator.d.ts +29 -0
  632. package/dist/memo/decorator.js +40 -0
  633. package/dist/memo/memoize.d.ts +33 -0
  634. package/dist/memo/memoize.js +91 -0
  635. package/dist/memo/once.d.ts +25 -0
  636. package/dist/memo/once.js +44 -0
  637. package/dist/memo/types.d.ts +43 -0
  638. package/dist/memo/types.js +18 -0
  639. package/dist/memo/weak.d.ts +26 -0
  640. package/dist/memo/weak.js +44 -0
  641. package/dist/node/async-hooks.d.ts +2 -2
  642. package/dist/node/child-process.d.ts +5 -7
  643. package/dist/node/crypto.d.ts +2 -2
  644. package/dist/node/events.d.ts +2 -2
  645. package/dist/node/fs-promises.d.ts +2 -2
  646. package/dist/node/fs.d.ts +6 -10
  647. package/dist/node/http.d.ts +2 -2
  648. package/dist/node/https.d.ts +2 -2
  649. package/dist/node/module.d.ts +7 -0
  650. package/dist/node/module.js +41 -0
  651. package/dist/node/os.d.ts +2 -2
  652. package/dist/node/path.d.ts +2 -2
  653. package/dist/node/timers-promises.d.ts +2 -2
  654. package/dist/node/url.d.ts +2 -2
  655. package/dist/node/util.d.ts +2 -2
  656. package/dist/objects/getters.d.ts +116 -0
  657. package/dist/objects/getters.js +137 -0
  658. package/dist/objects/inspect.d.ts +67 -0
  659. package/dist/objects/inspect.js +59 -0
  660. package/dist/objects/mutate.d.ts +72 -0
  661. package/dist/objects/mutate.js +81 -0
  662. package/dist/objects/predicates.d.ts +96 -0
  663. package/dist/objects/predicates.js +68 -0
  664. package/dist/objects/sort.d.ts +88 -0
  665. package/dist/objects/sort.js +85 -0
  666. package/dist/objects/types.d.ts +68 -0
  667. package/dist/objects/types.js +18 -0
  668. package/dist/packages/edit-class.d.ts +39 -0
  669. package/dist/packages/edit-class.js +269 -0
  670. package/dist/packages/edit.d.ts +60 -61
  671. package/dist/packages/edit.js +21 -286
  672. package/dist/packages/exports.d.ts +30 -28
  673. package/dist/packages/exports.js +38 -34
  674. package/dist/packages/isolation.d.ts +16 -7
  675. package/dist/packages/isolation.js +52 -59
  676. package/dist/packages/licenses.d.ts +49 -45
  677. package/dist/packages/licenses.js +13 -18
  678. package/dist/packages/manifest.d.ts +14 -14
  679. package/dist/packages/manifest.js +16 -15
  680. package/dist/packages/normalize.d.ts +17 -16
  681. package/dist/packages/normalize.js +20 -17
  682. package/dist/packages/operations.d.ts +49 -36
  683. package/dist/packages/operations.js +30 -15
  684. package/dist/packages/provenance.d.ts +22 -9
  685. package/dist/packages/provenance.js +76 -66
  686. package/dist/packages/specs.d.ts +21 -21
  687. package/dist/packages/specs.js +7 -7
  688. package/dist/{packages.d.ts → packages/types.d.ts} +14 -20
  689. package/dist/packages/types.js +18 -0
  690. package/dist/packages/validation.d.ts +13 -13
  691. package/dist/packages/validation.js +2 -2
  692. package/dist/paths/_internal.d.ts +51 -0
  693. package/dist/paths/_internal.js +102 -0
  694. package/dist/paths/conversion.d.ts +82 -0
  695. package/dist/paths/conversion.js +74 -0
  696. package/dist/paths/dirnames.d.ts +1 -1
  697. package/dist/paths/exts.d.ts +1 -1
  698. package/dist/paths/filenames.d.ts +1 -1
  699. package/dist/paths/globs.d.ts +1 -1
  700. package/dist/paths/normalize.d.ts +30 -440
  701. package/dist/paths/normalize.js +49 -289
  702. package/dist/paths/packages.d.ts +7 -1
  703. package/dist/paths/packages.js +7 -12
  704. package/dist/paths/predicates.d.ts +129 -0
  705. package/dist/paths/predicates.js +121 -0
  706. package/dist/paths/resolve.d.ts +71 -0
  707. package/dist/paths/resolve.js +135 -0
  708. package/dist/paths/rewire.d.ts +37 -38
  709. package/dist/paths/rewire.js +3 -3
  710. package/dist/paths/socket.d.ts +146 -47
  711. package/dist/paths/socket.js +23 -25
  712. package/dist/perf/_internal.d.ts +10 -0
  713. package/dist/perf/_internal.js +30 -0
  714. package/dist/perf/enabled.d.ts +13 -0
  715. package/dist/perf/enabled.js +33 -0
  716. package/dist/perf/metrics.d.ts +51 -0
  717. package/dist/perf/metrics.js +74 -0
  718. package/dist/perf/report.d.ts +40 -0
  719. package/dist/perf/report.js +85 -0
  720. package/dist/perf/timer.d.ts +100 -0
  721. package/dist/perf/timer.js +137 -0
  722. package/dist/perf/types.d.ts +15 -0
  723. package/dist/perf/types.js +18 -0
  724. package/dist/pkg-ext/data.d.ts +8 -0
  725. package/dist/{package-extensions.js → pkg-ext/data.js} +4 -4
  726. package/dist/pkg-ext/types.d.ts +6 -0
  727. package/dist/pkg-ext/types.js +18 -0
  728. package/dist/primordials/array.d.ts +73 -0
  729. package/dist/primordials/array.js +220 -0
  730. package/dist/primordials/buffer.d.ts +17 -0
  731. package/dist/primordials/buffer.js +61 -0
  732. package/dist/primordials/date.d.ts +16 -0
  733. package/dist/primordials/date.js +56 -0
  734. package/dist/primordials/error.d.ts +19 -0
  735. package/dist/primordials/error.js +75 -0
  736. package/dist/primordials/function.d.ts +10 -0
  737. package/dist/primordials/function.js +42 -0
  738. package/dist/primordials/globals.d.ts +20 -0
  739. package/dist/primordials/globals.js +60 -0
  740. package/dist/primordials/json.d.ts +11 -0
  741. package/dist/primordials/json.js +33 -0
  742. package/dist/primordials/map-set.d.ts +35 -0
  743. package/dist/primordials/map-set.js +115 -0
  744. package/dist/primordials/math.d.ts +51 -0
  745. package/dist/primordials/math.js +161 -0
  746. package/dist/primordials/number.d.ts +25 -0
  747. package/dist/primordials/number.js +92 -0
  748. package/dist/primordials/object.d.ts +74 -0
  749. package/dist/primordials/object.js +142 -0
  750. package/dist/primordials/promise.d.ts +34 -0
  751. package/dist/primordials/promise.js +61 -0
  752. package/dist/primordials/reflect.d.ts +18 -0
  753. package/dist/primordials/reflect.js +66 -0
  754. package/dist/primordials/regexp.d.ts +14 -0
  755. package/dist/primordials/regexp.js +50 -0
  756. package/dist/primordials/string.d.ts +71 -0
  757. package/dist/primordials/string.js +174 -0
  758. package/dist/primordials/symbol.d.ts +28 -0
  759. package/dist/primordials/symbol.js +94 -0
  760. package/dist/primordials/uncurry.d.ts +18 -0
  761. package/dist/primordials/uncurry.js +65 -0
  762. package/dist/primordials/url.d.ts +13 -0
  763. package/dist/primordials/url.js +69 -0
  764. package/dist/process/_internal.d.ts +8 -0
  765. package/dist/process/_internal.js +33 -0
  766. package/dist/process/abort.d.ts +20 -0
  767. package/dist/{constants/process.js → process/abort.js} +3 -3
  768. package/dist/process/lock-instance.d.ts +19 -0
  769. package/dist/process/lock-instance.js +31 -0
  770. package/dist/process/lock-manager.d.ts +152 -0
  771. package/dist/{process-lock.js → process/lock-manager.js} +98 -106
  772. package/dist/process/lock-types.d.ts +43 -0
  773. package/dist/process/lock-types.js +18 -0
  774. package/dist/process/spawn/_internal.d.ts +24 -0
  775. package/dist/process/spawn/_internal.js +62 -0
  776. package/dist/process/spawn/child.d.ts +134 -0
  777. package/dist/process/spawn/child.js +216 -0
  778. package/dist/process/spawn/errors.d.ts +45 -0
  779. package/dist/process/spawn/errors.js +118 -0
  780. package/dist/process/spawn/stdio.d.ts +37 -0
  781. package/dist/process/spawn/stdio.js +38 -0
  782. package/dist/process/spawn/types.d.ts +325 -0
  783. package/dist/process/spawn/types.js +18 -0
  784. package/dist/process/transient.d.ts +22 -0
  785. package/dist/{temporary-executor.js → process/transient.js} +8 -8
  786. package/dist/promises/_internal.d.ts +15 -0
  787. package/dist/promises/_internal.js +41 -0
  788. package/dist/promises/iterate.d.ts +190 -0
  789. package/dist/promises/iterate.js +111 -0
  790. package/dist/promises/options.d.ts +76 -0
  791. package/dist/promises/options.js +108 -0
  792. package/dist/promises/queue.d.ts +51 -0
  793. package/dist/{promise-queue.js → promises/queue.js} +27 -22
  794. package/dist/promises/resolvers.d.ts +55 -0
  795. package/dist/promises/resolvers.js +49 -0
  796. package/dist/promises/retry.d.ts +105 -0
  797. package/dist/promises/retry.js +104 -0
  798. package/dist/promises/types.d.ts +203 -0
  799. package/dist/promises/types.js +18 -0
  800. package/dist/regexps/escape.d.ts +6 -0
  801. package/dist/regexps/escape.js +32 -0
  802. package/dist/regexps/hex.d.ts +7 -0
  803. package/dist/regexps/hex.js +38 -0
  804. package/dist/regexps/spec.d.ts +15 -0
  805. package/dist/{regexps.js → regexps/spec.js} +32 -36
  806. package/dist/releases/github-archives.d.ts +47 -36
  807. package/dist/releases/github-archives.js +22 -36
  808. package/dist/releases/github-asset-url.d.ts +72 -0
  809. package/dist/releases/github-asset-url.js +167 -0
  810. package/dist/releases/github-assets.d.ts +13 -11
  811. package/dist/releases/github-assets.js +2 -2
  812. package/dist/releases/github-auth.d.ts +9 -9
  813. package/dist/releases/github-downloads.d.ts +31 -26
  814. package/dist/releases/github-downloads.js +24 -36
  815. package/dist/releases/github-listing.d.ts +105 -0
  816. package/dist/releases/github-listing.js +171 -0
  817. package/dist/releases/github-types.d.ts +45 -19
  818. package/dist/releases/socket-btm.d.ts +149 -99
  819. package/dist/releases/socket-btm.js +14 -20
  820. package/dist/schema/parse.d.ts +14 -15
  821. package/dist/schema/parse.js +2 -2
  822. package/dist/schema/types.d.ts +49 -37
  823. package/dist/schema/validate.d.ts +42 -19
  824. package/dist/schema/validate.js +15 -6
  825. package/dist/sea/detect.d.ts +37 -0
  826. package/dist/sea/{util.js → detect.js} +6 -6
  827. package/dist/secrets/_internal.d.ts +57 -0
  828. package/dist/secrets/_internal.js +84 -0
  829. package/dist/secrets/find.d.ts +79 -0
  830. package/dist/secrets/find.js +84 -0
  831. package/dist/secrets/keychain.d.ts +138 -0
  832. package/dist/secrets/keychain.js +328 -0
  833. package/dist/secrets/linux.d.ts +20 -0
  834. package/dist/secrets/linux.js +151 -0
  835. package/dist/secrets/macos.d.ts +36 -0
  836. package/dist/secrets/macos.js +165 -0
  837. package/dist/secrets/rc.d.ts +139 -0
  838. package/dist/secrets/rc.js +196 -0
  839. package/dist/secrets/socket-api-token.d.ts +23 -0
  840. package/dist/secrets/socket-api-token.js +50 -0
  841. package/dist/secrets/types.d.ts +69 -0
  842. package/dist/secrets/types.js +18 -0
  843. package/dist/secrets/windows.d.ts +50 -0
  844. package/dist/secrets/windows.js +318 -0
  845. package/dist/shadow/skip.d.ts +25 -0
  846. package/dist/{shadow.js → shadow/skip.js} +4 -4
  847. package/dist/shadow/types.d.ts +8 -0
  848. package/dist/shadow/types.js +18 -0
  849. package/dist/smol/detect.d.ts +80 -0
  850. package/dist/smol/{util.js → detect.js} +16 -24
  851. package/dist/smol/http.d.ts +60 -0
  852. package/dist/smol/http.js +42 -0
  853. package/dist/smol/https.d.ts +59 -0
  854. package/dist/smol/https.js +42 -0
  855. package/dist/smol/manifest.d.ts +140 -0
  856. package/dist/smol/manifest.js +42 -0
  857. package/dist/smol/primordial.d.ts +16 -21
  858. package/dist/smol/primordial.js +7 -11
  859. package/dist/smol/purl.d.ts +84 -0
  860. package/dist/smol/purl.js +42 -0
  861. package/dist/smol/versions.d.ts +11 -14
  862. package/dist/smol/versions.js +7 -11
  863. package/dist/smol/vfs.d.ts +99 -0
  864. package/dist/smol/vfs.js +43 -0
  865. package/dist/sorts/_internal.d.ts +9 -0
  866. package/dist/sorts/_internal.js +47 -0
  867. package/dist/sorts/natural.d.ts +39 -0
  868. package/dist/{sorts.js → sorts/natural.js} +5 -42
  869. package/dist/sorts/semver.d.ts +15 -0
  870. package/dist/sorts/semver.js +46 -0
  871. package/dist/sorts/strings.d.ts +16 -0
  872. package/dist/sorts/strings.js +33 -0
  873. package/dist/sorts/types.d.ts +7 -0
  874. package/dist/sorts/types.js +18 -0
  875. package/dist/spinner/default.d.ts +49 -0
  876. package/dist/spinner/default.js +70 -0
  877. package/dist/spinner/format.d.ts +64 -0
  878. package/dist/spinner/format.js +83 -0
  879. package/dist/spinner/spinner.d.ts +40 -0
  880. package/dist/spinner/spinner.js +802 -0
  881. package/dist/spinner/types.d.ts +368 -0
  882. package/dist/spinner/types.js +18 -0
  883. package/dist/spinner/with.d.ts +125 -0
  884. package/dist/spinner/with.js +144 -0
  885. package/dist/ssri/convert.d.ts +48 -0
  886. package/dist/{ssri.js → ssri/convert.js} +11 -34
  887. package/dist/ssri/parse.d.ts +27 -0
  888. package/dist/ssri/parse.js +40 -0
  889. package/dist/ssri/validate.d.ts +41 -0
  890. package/dist/ssri/validate.js +39 -0
  891. package/dist/stdio/{_stream.d.ts → _internal.d.ts} +10 -5
  892. package/dist/stdio/{_stream.js → _internal.js} +3 -3
  893. package/dist/stdio/clear.d.ts +98 -84
  894. package/dist/stdio/divider.d.ts +100 -78
  895. package/dist/stdio/divider.js +36 -14
  896. package/dist/stdio/footer.d.ts +75 -51
  897. package/dist/stdio/footer.js +28 -18
  898. package/dist/stdio/header.d.ts +61 -50
  899. package/dist/stdio/header.js +15 -13
  900. package/dist/stdio/progress.d.ts +67 -57
  901. package/dist/stdio/progress.js +55 -51
  902. package/dist/stdio/prompts.d.ts +147 -100
  903. package/dist/stdio/prompts.js +23 -15
  904. package/dist/stdio/stderr.d.ts +86 -84
  905. package/dist/stdio/stderr.js +6 -6
  906. package/dist/stdio/stdout.d.ts +77 -78
  907. package/dist/stdio/stdout.js +6 -6
  908. package/dist/streams/parallel.d.ts +40 -0
  909. package/dist/{streams.js → streams/parallel.js} +10 -27
  910. package/dist/streams/transform.d.ts +20 -0
  911. package/dist/streams/transform.js +48 -0
  912. package/dist/strings/format.d.ts +115 -0
  913. package/dist/strings/format.js +73 -0
  914. package/dist/strings/predicates.d.ts +52 -0
  915. package/dist/strings/predicates.js +39 -0
  916. package/dist/strings/search.d.ts +34 -0
  917. package/dist/strings/search.js +45 -0
  918. package/dist/strings/transform.d.ts +80 -0
  919. package/dist/strings/transform.js +79 -0
  920. package/dist/strings/types.d.ts +38 -0
  921. package/dist/strings/types.js +18 -0
  922. package/dist/strings/width.d.ts +42 -0
  923. package/dist/strings/width.js +95 -0
  924. package/dist/tables/bordered.d.ts +44 -0
  925. package/dist/tables/bordered.js +84 -0
  926. package/dist/tables/padding.d.ts +18 -0
  927. package/dist/tables/padding.js +51 -0
  928. package/dist/tables/simple.d.ts +36 -0
  929. package/dist/tables/simple.js +73 -0
  930. package/dist/tables/types.d.ts +15 -0
  931. package/dist/tables/types.js +18 -0
  932. package/dist/temporal/instant.d.ts +39 -0
  933. package/dist/temporal/instant.js +91 -0
  934. package/dist/temporal/now.d.ts +24 -0
  935. package/dist/temporal/now.js +34 -0
  936. package/dist/temporal/slots.d.ts +32 -0
  937. package/dist/temporal/slots.js +45 -0
  938. package/dist/temporal/system.d.ts +20 -0
  939. package/dist/temporal/system.js +42 -0
  940. package/dist/temporal/temporal.d.ts +22 -0
  941. package/dist/temporal/temporal.js +43 -0
  942. package/dist/themes/context.d.ts +65 -48
  943. package/dist/themes/context.js +6 -2
  944. package/dist/themes/resolve.d.ts +90 -0
  945. package/dist/themes/{utils.js → resolve.js} +6 -6
  946. package/dist/themes/themes.d.ts +14 -16
  947. package/dist/themes/types.d.ts +93 -35
  948. package/dist/url/parse.d.ts +26 -0
  949. package/dist/url/parse.js +57 -0
  950. package/dist/url/predicates.d.ts +15 -0
  951. package/dist/url/predicates.js +34 -0
  952. package/dist/url/search-params.d.ts +71 -0
  953. package/dist/{url.js → url/search-params.js} +19 -54
  954. package/dist/url/types.d.ts +20 -0
  955. package/dist/url/types.js +18 -0
  956. package/dist/versions/_internal.d.ts +24 -0
  957. package/dist/versions/_internal.js +37 -0
  958. package/dist/versions/compare.d.ts +57 -0
  959. package/dist/versions/compare.js +65 -0
  960. package/dist/versions/modify.d.ts +28 -0
  961. package/dist/versions/modify.js +44 -0
  962. package/dist/versions/parse.d.ts +67 -0
  963. package/dist/versions/parse.js +77 -0
  964. package/dist/versions/range.d.ts +45 -0
  965. package/dist/versions/range.js +50 -0
  966. package/dist/versions/types.d.ts +13 -0
  967. package/dist/versions/types.js +18 -0
  968. package/dist/words/article.d.ts +14 -0
  969. package/dist/words/article.js +33 -0
  970. package/dist/words/capitalize.d.ts +15 -0
  971. package/dist/{words.js → words/capitalize.js} +5 -18
  972. package/dist/words/pluralize.d.ts +16 -0
  973. package/dist/words/pluralize.js +34 -0
  974. package/dist/words/types.d.ts +7 -0
  975. package/dist/words/types.js +18 -0
  976. package/package.json +2154 -252
  977. package/dist/abort.d.ts +0 -27
  978. package/dist/agent.d.ts +0 -196
  979. package/dist/agent.js +0 -287
  980. package/dist/ansi.d.ts +0 -39
  981. package/dist/archives.d.ts +0 -95
  982. package/dist/archives.js +0 -408
  983. package/dist/argv/flags.d.ts +0 -292
  984. package/dist/argv/flags.js +0 -297
  985. package/dist/arrays.d.ts +0 -168
  986. package/dist/bin.d.ts +0 -181
  987. package/dist/bin.js +0 -544
  988. package/dist/cacache.d.ts +0 -130
  989. package/dist/cacache.js +0 -156
  990. package/dist/cache-with-ttl.d.ts +0 -165
  991. package/dist/colors.d.ts +0 -49
  992. package/dist/compression.d.ts +0 -218
  993. package/dist/constants/process.d.ts +0 -20
  994. package/dist/crypto.d.ts +0 -36
  995. package/dist/debug.js +0 -337
  996. package/dist/env/helpers.d.ts +0 -66
  997. package/dist/env.d.ts +0 -182
  998. package/dist/env.js +0 -205
  999. package/dist/errors.d.ts +0 -100
  1000. package/dist/fs.d.ts +0 -916
  1001. package/dist/fs.js +0 -808
  1002. package/dist/git.d.ts +0 -546
  1003. package/dist/git.js +0 -409
  1004. package/dist/github.d.ts +0 -526
  1005. package/dist/github.js +0 -448
  1006. package/dist/globs.d.ts +0 -119
  1007. package/dist/globs.js +0 -282
  1008. package/dist/http-request.d.ts +0 -951
  1009. package/dist/http-request.js +0 -761
  1010. package/dist/ipc-cli.d.ts +0 -28
  1011. package/dist/ipc.d.ts +0 -76
  1012. package/dist/ipc.js +0 -130
  1013. package/dist/links.d.ts +0 -69
  1014. package/dist/logger.d.ts +0 -993
  1015. package/dist/logger.js +0 -1498
  1016. package/dist/memoization.d.ts +0 -131
  1017. package/dist/memoization.js +0 -243
  1018. package/dist/objects.d.ts +0 -500
  1019. package/dist/objects.js +0 -303
  1020. package/dist/package-extensions.d.ts +0 -9
  1021. package/dist/packages.js +0 -132
  1022. package/dist/performance.d.ts +0 -181
  1023. package/dist/performance.js +0 -233
  1024. package/dist/primordials.d.ts +0 -420
  1025. package/dist/primordials.js +0 -1116
  1026. package/dist/process-lock.d.ts +0 -180
  1027. package/dist/promise-queue.d.ts +0 -48
  1028. package/dist/promises.d.ts +0 -506
  1029. package/dist/promises.js +0 -292
  1030. package/dist/regexps.d.ts +0 -6
  1031. package/dist/releases/github-api.d.ts +0 -56
  1032. package/dist/releases/github-api.js +0 -275
  1033. package/dist/sea/util.d.ts +0 -43
  1034. package/dist/shadow.d.ts +0 -28
  1035. package/dist/signal-exit.d.ts +0 -50
  1036. package/dist/signal-exit.js +0 -247
  1037. package/dist/smol/util.d.ts +0 -87
  1038. package/dist/sorts.d.ts +0 -59
  1039. package/dist/spawn.d.ts +0 -454
  1040. package/dist/spawn.js +0 -334
  1041. package/dist/spinner.d.ts +0 -444
  1042. package/dist/spinner.js +0 -988
  1043. package/dist/ssri.d.ts +0 -90
  1044. package/dist/streams.d.ts +0 -45
  1045. package/dist/strings.d.ts +0 -414
  1046. package/dist/strings.js +0 -218
  1047. package/dist/suppress-warnings.d.ts +0 -81
  1048. package/dist/tables.d.ts +0 -73
  1049. package/dist/tables.js +0 -133
  1050. package/dist/temporary-executor.d.ts +0 -20
  1051. package/dist/themes/utils.d.ts +0 -86
  1052. package/dist/url.d.ts +0 -114
  1053. package/dist/versions.d.ts +0 -207
  1054. package/dist/versions.js +0 -181
  1055. package/dist/words.d.ts +0 -39
@@ -0,0 +1,854 @@
1
+ "use strict";
2
+ /* Socket Lib - Built with esbuild */
3
+ "use strict";
4
+ var __create = Object.create;
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __export = (target, all) => {
11
+ for (var name in all)
12
+ __defProp(target, name, { get: all[name], enumerable: true });
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
28
+ mod
29
+ ));
30
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
31
+ var default_exports = {};
32
+ __export(default_exports, {
33
+ Logger: () => Logger,
34
+ getDefaultLogger: () => getDefaultLogger
35
+ });
36
+ module.exports = __toCommonJS(default_exports);
37
+ var import_node_process = __toESM(require("node:process"));
38
+ var import_array = require("../primordials/array");
39
+ var import_error = require("../primordials/error");
40
+ var import_math = require("../primordials/math");
41
+ var import_reflect = require("../primordials/reflect");
42
+ var import_format = require("../strings/format");
43
+ var import_predicates = require("../strings/predicates");
44
+ var import_context = require("../themes/context");
45
+ var import_themes = require("../themes/themes");
46
+ var import_internal = require("./_internal");
47
+ var import_symbols_builder = require("./symbols-builder");
48
+ var import_symbols = require("./symbols");
49
+ var import_console = require("./console");
50
+ class Logger {
51
+ /**
52
+ * Static reference to log symbols for convenience.
53
+ */
54
+ static LOG_SYMBOLS = import_symbols.LOG_SYMBOLS;
55
+ #parent;
56
+ #boundStream;
57
+ #stderrLogger;
58
+ #stdoutLogger;
59
+ #stderrIndention = "";
60
+ #stdoutIndention = "";
61
+ #stderrLastWasBlank = false;
62
+ #stdoutLastWasBlank = false;
63
+ #logCallCount = 0;
64
+ #options;
65
+ #originalStdout;
66
+ #theme;
67
+ /**
68
+ * Creates a new Logger instance.
69
+ *
70
+ * When called without arguments, creates a logger using the default
71
+ * `process.stdout` and `process.stderr` streams. Can accept custom console
72
+ * constructor arguments for advanced use cases.
73
+ *
74
+ * @param args - Optional console constructor arguments.
75
+ */
76
+ constructor(...args) {
77
+ import_internal.privateConstructorArgs.set(this, args);
78
+ const options = args["0"];
79
+ if (typeof options === "object" && options !== null) {
80
+ this.#options = { __proto__: null, ...options };
81
+ this.#originalStdout = options.stdout;
82
+ const themeOption = options.theme;
83
+ if (themeOption) {
84
+ if (typeof themeOption === "string") {
85
+ const resolved = import_themes.THEMES[themeOption];
86
+ if (resolved) {
87
+ this.#theme = resolved;
88
+ }
89
+ } else {
90
+ this.#theme = themeOption;
91
+ }
92
+ }
93
+ } else {
94
+ this.#options = { __proto__: null };
95
+ }
96
+ }
97
+ /**
98
+ * Apply a console method with indentation.
99
+ *
100
+ * @private
101
+ */
102
+ #apply(methodName, args, stream) {
103
+ const con = this.#getConsole();
104
+ const text = (0, import_array.ArrayPrototypeAt)(args, 0);
105
+ const hasText = typeof text === "string";
106
+ const targetStream = stream || (methodName === "log" ? "stdout" : "stderr");
107
+ const indent = this.#getIndent(targetStream);
108
+ const logArgs = hasText ? [
109
+ (0, import_format.applyLinePrefix)(text, { prefix: indent }),
110
+ ...(0, import_array.ArrayPrototypeSlice)(args, 1)
111
+ ] : args;
112
+ (0, import_reflect.ReflectApply)(
113
+ con[methodName],
114
+ con,
115
+ logArgs
116
+ );
117
+ this[import_symbols.lastWasBlankSymbol](hasText && (0, import_predicates.isBlankString)(logArgs[0]), targetStream);
118
+ this[import_symbols.incLogCallCountSymbol]();
119
+ return this;
120
+ }
121
+ /**
122
+ * Get the Console instance for this logger, creating it lazily on first
123
+ * access.
124
+ *
125
+ * This lazy initialization allows the logger to be imported during early
126
+ * Node.js bootstrap before stdout is ready, avoiding Console initialization
127
+ * errors (ERR_CONSOLE_WRITABLE_STREAM).
128
+ *
129
+ * @private
130
+ */
131
+ #getConsole() {
132
+ (0, import_console.ensurePrototypeInitialized)();
133
+ let con = import_internal.privateConsole.get(this);
134
+ if (!con) {
135
+ const ctorArgs = import_internal.privateConstructorArgs.get(this) ?? [];
136
+ if (ctorArgs.length) {
137
+ con = (0, import_console.constructConsole)(...ctorArgs);
138
+ } else {
139
+ con = (0, import_console.constructConsole)({
140
+ stdout: import_node_process.default.stdout,
141
+ stderr: import_node_process.default.stderr
142
+ });
143
+ for (const { 0: key, 1: method } of import_internal.boundConsoleEntries) {
144
+ con[key] = method;
145
+ }
146
+ }
147
+ import_internal.privateConsole.set(this, con);
148
+ import_internal.privateConstructorArgs.delete(this);
149
+ }
150
+ return con;
151
+ }
152
+ /**
153
+ * Get indentation for a specific stream.
154
+ *
155
+ * @private
156
+ */
157
+ #getIndent(stream) {
158
+ const root = this.#getRoot();
159
+ return stream === "stderr" ? root.#stderrIndention : root.#stdoutIndention;
160
+ }
161
+ /**
162
+ * Get lastWasBlank state for a specific stream.
163
+ *
164
+ * @private
165
+ */
166
+ #getLastWasBlank(stream) {
167
+ const root = this.#getRoot();
168
+ return stream === "stderr" ? root.#stderrLastWasBlank : root.#stdoutLastWasBlank;
169
+ }
170
+ /**
171
+ * Get the root logger (for accessing shared indentation state).
172
+ *
173
+ * @private
174
+ */
175
+ #getRoot() {
176
+ return this.#parent || this;
177
+ }
178
+ /**
179
+ * Get logger-specific symbols using the resolved theme.
180
+ *
181
+ * @private
182
+ */
183
+ #getSymbols() {
184
+ return (0, import_symbols_builder.buildLoggerSymbols)(this.#getTheme());
185
+ }
186
+ /**
187
+ * Get the target stream for this logger instance.
188
+ *
189
+ * @private
190
+ */
191
+ #getTargetStream() {
192
+ return this.#boundStream || "stderr";
193
+ }
194
+ /**
195
+ * Get the resolved theme for this logger instance. Returns instance theme if
196
+ * set, otherwise falls back to context theme.
197
+ *
198
+ * @private
199
+ */
200
+ #getTheme() {
201
+ return this.#theme ?? (0, import_context.getTheme)();
202
+ }
203
+ /**
204
+ * Set indentation for a specific stream.
205
+ *
206
+ * @private
207
+ */
208
+ #setIndent(stream, value) {
209
+ const root = this.#getRoot();
210
+ if (stream === "stderr") {
211
+ root.#stderrIndention = value;
212
+ } else {
213
+ root.#stdoutIndention = value;
214
+ }
215
+ }
216
+ /**
217
+ * Set lastWasBlank state for a specific stream.
218
+ *
219
+ * @private
220
+ */
221
+ #setLastWasBlank(stream, value) {
222
+ const root = this.#getRoot();
223
+ if (stream === "stderr") {
224
+ root.#stderrLastWasBlank = value;
225
+ } else {
226
+ root.#stdoutLastWasBlank = value;
227
+ }
228
+ }
229
+ /**
230
+ * Strip log symbols from the start of text.
231
+ *
232
+ * @private
233
+ */
234
+ #stripSymbols(text) {
235
+ return (0, import_symbols_builder.stripLoggerSymbols)(text);
236
+ }
237
+ /**
238
+ * Apply a method with a symbol prefix.
239
+ *
240
+ * @private
241
+ */
242
+ #symbolApply(symbolType, args) {
243
+ const con = this.#getConsole();
244
+ let text = (0, import_array.ArrayPrototypeAt)(args, 0);
245
+ let extras;
246
+ if (typeof text === "string") {
247
+ text = this.#stripSymbols(text);
248
+ extras = (0, import_array.ArrayPrototypeSlice)(args, 1);
249
+ } else {
250
+ extras = args;
251
+ text = "";
252
+ }
253
+ const indent = this.#getIndent("stderr");
254
+ const symbols = this.#getSymbols();
255
+ con.error(
256
+ (0, import_format.applyLinePrefix)(`${symbols[symbolType]} ${text}`, {
257
+ prefix: indent
258
+ }),
259
+ ...extras
260
+ );
261
+ this[import_symbols.lastWasBlankSymbol](false, "stderr");
262
+ this[import_symbols.incLogCallCountSymbol]();
263
+ return this;
264
+ }
265
+ /**
266
+ * Gets a logger instance bound exclusively to stderr.
267
+ *
268
+ * All logging operations on this instance will write to stderr only.
269
+ * Indentation is tracked separately from stdout. The instance is cached and
270
+ * reused on subsequent accesses.
271
+ *
272
+ * @returns A logger instance bound to stderr
273
+ */
274
+ get stderr() {
275
+ if (!this.#stderrLogger) {
276
+ const ctorArgs = import_internal.privateConstructorArgs.get(this) ?? [];
277
+ const instance = new Logger(...ctorArgs);
278
+ instance.#parent = this;
279
+ instance.#boundStream = "stderr";
280
+ instance.#options = { __proto__: null, ...this.#options };
281
+ if (this.#theme) {
282
+ instance.#theme = this.#theme;
283
+ }
284
+ this.#stderrLogger = instance;
285
+ }
286
+ return this.#stderrLogger;
287
+ }
288
+ /**
289
+ * Gets a logger instance bound exclusively to stdout.
290
+ *
291
+ * All logging operations on this instance will write to stdout only.
292
+ * Indentation is tracked separately from stderr. The instance is cached and
293
+ * reused on subsequent accesses.
294
+ *
295
+ * @returns A logger instance bound to stdout
296
+ */
297
+ get stdout() {
298
+ if (!this.#stdoutLogger) {
299
+ const ctorArgs = import_internal.privateConstructorArgs.get(this) ?? [];
300
+ const instance = new Logger(...ctorArgs);
301
+ instance.#parent = this;
302
+ instance.#boundStream = "stdout";
303
+ instance.#options = { __proto__: null, ...this.#options };
304
+ if (this.#theme) {
305
+ instance.#theme = this.#theme;
306
+ }
307
+ this.#stdoutLogger = instance;
308
+ }
309
+ return this.#stdoutLogger;
310
+ }
311
+ /**
312
+ * Gets the total number of log calls made on this logger instance.
313
+ *
314
+ * Tracks all logging method calls including `log()`, `error()`, `warn()`,
315
+ * `success()`, `fail()`, etc. Useful for testing and monitoring logging
316
+ * activity.
317
+ *
318
+ * @returns The number of times logging methods have been called
319
+ */
320
+ get logCallCount() {
321
+ const root = this.#getRoot();
322
+ return root.#logCallCount;
323
+ }
324
+ /**
325
+ * Increments the internal log call counter.
326
+ *
327
+ * This is called automatically by logging methods and should not be called
328
+ * directly in normal usage.
329
+ */
330
+ [import_symbols.incLogCallCountSymbol]() {
331
+ const root = this.#getRoot();
332
+ root.#logCallCount += 1;
333
+ return this;
334
+ }
335
+ /**
336
+ * Sets whether the last logged line was blank.
337
+ *
338
+ * Used internally to track blank lines and prevent duplicate spacing. This is
339
+ * called automatically by logging methods.
340
+ *
341
+ * @param value - Whether the last line was blank.
342
+ * @param stream - Optional stream to update (defaults to both streams if not
343
+ * bound, or target stream if bound)
344
+ */
345
+ [import_symbols.lastWasBlankSymbol](value, stream) {
346
+ if (stream) {
347
+ this.#setLastWasBlank(stream, !!value);
348
+ } else if (this.#boundStream) {
349
+ this.#setLastWasBlank(this.#boundStream, !!value);
350
+ } else {
351
+ this.#setLastWasBlank("stderr", !!value);
352
+ this.#setLastWasBlank("stdout", !!value);
353
+ }
354
+ return this;
355
+ }
356
+ /**
357
+ * Logs an assertion failure message if the value is falsy.
358
+ *
359
+ * Works like `console.assert()` but returns the logger for chaining. If the
360
+ * value is truthy, nothing is logged. If falsy, logs an error message with an
361
+ * assertion failure.
362
+ *
363
+ * @param value - The value to test.
364
+ * @param message - Optional message and additional arguments to log.
365
+ */
366
+ assert(value, ...message) {
367
+ const con = this.#getConsole();
368
+ con.assert(value, message[0], ...message.slice(1));
369
+ this[import_symbols.lastWasBlankSymbol](false);
370
+ return value ? this : this[import_symbols.incLogCallCountSymbol]();
371
+ }
372
+ /**
373
+ * Clears the current line in the terminal.
374
+ *
375
+ * Moves the cursor to the beginning of the line and clears all content. Works
376
+ * in both TTY and non-TTY environments. Useful for clearing progress
377
+ * indicators created with `progress()`.
378
+ *
379
+ * The stream to clear (stderr or stdout) depends on whether the logger is
380
+ * stream-bound.
381
+ */
382
+ clearLine() {
383
+ const con = this.#getConsole();
384
+ const stream = this.#getTargetStream();
385
+ const streamObj = stream === "stderr" ? con["_stderr"] : con["_stdout"];
386
+ if (streamObj.isTTY) {
387
+ streamObj.cursorTo(0);
388
+ streamObj.clearLine(0);
389
+ } else {
390
+ streamObj.write("\r\x1B[K");
391
+ }
392
+ return this;
393
+ }
394
+ /**
395
+ * Clears the visible terminal screen.
396
+ *
397
+ * Only available on the main logger instance, not on stream-bound instances
398
+ * (`.stderr` or `.stdout`). Resets the log call count and blank line tracking
399
+ * if the output is a TTY.
400
+ *
401
+ * @throws {Error} If called on a stream-bound logger instance
402
+ */
403
+ clearVisible() {
404
+ if (this.#boundStream) {
405
+ throw new import_error.ErrorCtor(
406
+ "clearVisible() is only available on the main logger instance, not on stream-bound instances"
407
+ );
408
+ }
409
+ const con = this.#getConsole();
410
+ con.clear();
411
+ if (con._stdout.isTTY) {
412
+ ;
413
+ this[import_symbols.lastWasBlankSymbol](true);
414
+ this.#logCallCount = 0;
415
+ }
416
+ return this;
417
+ }
418
+ /**
419
+ * Increments and logs a counter for the given label.
420
+ *
421
+ * Each unique label maintains its own counter. Works like `console.count()`.
422
+ *
423
+ * @default 'default'
424
+ *
425
+ * @param label - Optional label for the counter.
426
+ */
427
+ count(label) {
428
+ const con = this.#getConsole();
429
+ con.count(label);
430
+ this[import_symbols.lastWasBlankSymbol](false);
431
+ return this[import_symbols.incLogCallCountSymbol]();
432
+ }
433
+ /**
434
+ * Creates a task that logs start and completion messages automatically.
435
+ *
436
+ * Returns a task object with a `run()` method that executes the provided
437
+ * function and logs "Starting task: {name}" before execution and "Completed
438
+ * task: {name}" after completion.
439
+ *
440
+ * @param name - The name of the task.
441
+ *
442
+ * @returns A task object with a `run()` method
443
+ */
444
+ createTask(name) {
445
+ return {
446
+ run: (f) => {
447
+ this.log(`Starting task: ${name}`);
448
+ const result = f();
449
+ this.log(`Completed task: ${name}`);
450
+ return result;
451
+ }
452
+ };
453
+ }
454
+ /**
455
+ * Decreases the indentation level by removing spaces from the prefix.
456
+ *
457
+ * When called on the main logger, affects both stderr and stdout indentation.
458
+ * When called on a stream-bound logger (`.stderr` or `.stdout`), affects only
459
+ * that stream's indentation.
460
+ *
461
+ * @default 2
462
+ */
463
+ dedent(spaces = 2) {
464
+ if (this.#boundStream) {
465
+ const current = this.#getIndent(this.#boundStream);
466
+ this.#setIndent(this.#boundStream, current.slice(0, -spaces));
467
+ } else {
468
+ const stderrCurrent = this.#getIndent("stderr");
469
+ const stdoutCurrent = this.#getIndent("stdout");
470
+ this.#setIndent("stderr", stderrCurrent.slice(0, -spaces));
471
+ this.#setIndent("stdout", stdoutCurrent.slice(0, -spaces));
472
+ }
473
+ return this;
474
+ }
475
+ /**
476
+ * Displays an object's properties in a formatted way.
477
+ *
478
+ * Works like `console.dir()` with customizable options for depth, colors,
479
+ * etc. Useful for inspecting complex objects.
480
+ *
481
+ * @param obj - The object to display.
482
+ * @param options - Optional formatting options (Node.js inspect options)
483
+ */
484
+ dir(obj, options) {
485
+ const con = this.#getConsole();
486
+ con.dir(obj, options);
487
+ this[import_symbols.lastWasBlankSymbol](false);
488
+ return this[import_symbols.incLogCallCountSymbol]();
489
+ }
490
+ /**
491
+ * Displays data as XML/HTML in a formatted way.
492
+ *
493
+ * Works like `console.dirxml()`. In Node.js, behaves the same as `dir()`.
494
+ *
495
+ * @param data - The data to display.
496
+ */
497
+ dirxml(...data) {
498
+ const con = this.#getConsole();
499
+ con.dirxml(data);
500
+ this[import_symbols.lastWasBlankSymbol](false);
501
+ return this[import_symbols.incLogCallCountSymbol]();
502
+ }
503
+ /**
504
+ * Logs a completion message with a success symbol (alias for `success()`).
505
+ *
506
+ * Provides semantic clarity when marking something as "done". Does NOT
507
+ * automatically clear the current line - call `clearLine()` first if needed
508
+ * after using `progress()`.
509
+ */
510
+ done(...args) {
511
+ return this.#symbolApply("success", args);
512
+ }
513
+ /**
514
+ * Logs an error message to stderr.
515
+ *
516
+ * Automatically applies current indentation. All arguments are formatted and
517
+ * logged like `console.error()`.
518
+ */
519
+ error(...args) {
520
+ return this.#apply("error", args);
521
+ }
522
+ /**
523
+ * Logs a newline to stderr only if the last line wasn't already blank.
524
+ *
525
+ * Prevents multiple consecutive blank lines. Useful for adding spacing
526
+ * between sections without creating excessive whitespace.
527
+ */
528
+ errorNewline() {
529
+ return this.#getLastWasBlank("stderr") ? this : this.error("");
530
+ }
531
+ /**
532
+ * Logs a failure message with a red colored fail symbol.
533
+ *
534
+ * Automatically prefixes the message with `LOG_SYMBOLS.fail` (red ✖). Always
535
+ * outputs to stderr. If the message starts with an existing symbol, it will
536
+ * be stripped and replaced.
537
+ */
538
+ fail(...args) {
539
+ return this.#symbolApply("fail", args);
540
+ }
541
+ /**
542
+ * Starts a new indented log group.
543
+ *
544
+ * If a label is provided, it's logged before increasing indentation. Groups
545
+ * can be nested. Each group increases indentation by the `kGroupIndentWidth`
546
+ * (default 2 spaces). Call `groupEnd()` to close.
547
+ *
548
+ * @param label - Optional label to display before the group.
549
+ */
550
+ group(...label) {
551
+ const { length } = label;
552
+ if (length) {
553
+ (0, import_reflect.ReflectApply)(this.log, this, label);
554
+ }
555
+ this.indent(this[(0, import_symbols.getKGroupIndentationWidthSymbol)()]);
556
+ if (length) {
557
+ ;
558
+ this[import_symbols.lastWasBlankSymbol](false);
559
+ this[import_symbols.incLogCallCountSymbol]();
560
+ }
561
+ return this;
562
+ }
563
+ /**
564
+ * Starts a new collapsed log group (alias for `group()`).
565
+ *
566
+ * In browser consoles, this creates a collapsed group. In Node.js, it behaves
567
+ * identically to `group()`.
568
+ *
569
+ * @param label - Optional label to display before the group.
570
+ */
571
+ // groupCollapsed is an alias of group.
572
+ // https://nodejs.org/api/console.html#consolegroupcollapsed
573
+ groupCollapsed(...label) {
574
+ return (0, import_reflect.ReflectApply)(this.group, this, label);
575
+ }
576
+ /**
577
+ * Ends the current log group and decreases indentation.
578
+ *
579
+ * Must be called once for each `group()` or `groupCollapsed()` call to
580
+ * properly close the group and restore indentation.
581
+ */
582
+ groupEnd() {
583
+ this.dedent(this[(0, import_symbols.getKGroupIndentationWidthSymbol)()]);
584
+ return this;
585
+ }
586
+ /**
587
+ * Increases the indentation level by adding spaces to the prefix.
588
+ *
589
+ * When called on the main logger, affects both stderr and stdout indentation.
590
+ * When called on a stream-bound logger (`.stderr` or `.stdout`), affects only
591
+ * that stream's indentation. Maximum indentation is 1000 spaces.
592
+ *
593
+ * @default 2
594
+ */
595
+ indent(spaces = 2) {
596
+ const spacesToAdd = " ".repeat((0, import_math.MathMin)(spaces, import_internal.maxIndentation));
597
+ if (this.#boundStream) {
598
+ const current = this.#getIndent(this.#boundStream);
599
+ this.#setIndent(this.#boundStream, current + spacesToAdd);
600
+ } else {
601
+ const stderrCurrent = this.#getIndent("stderr");
602
+ const stdoutCurrent = this.#getIndent("stdout");
603
+ this.#setIndent("stderr", stderrCurrent + spacesToAdd);
604
+ this.#setIndent("stdout", stdoutCurrent + spacesToAdd);
605
+ }
606
+ return this;
607
+ }
608
+ /**
609
+ * Logs an informational message with a blue colored info symbol.
610
+ *
611
+ * Automatically prefixes the message with `LOG_SYMBOLS.info` (blue ℹ). Always
612
+ * outputs to stderr. If the message starts with an existing symbol, it will
613
+ * be stripped and replaced.
614
+ */
615
+ info(...args) {
616
+ return this.#symbolApply("info", args);
617
+ }
618
+ /**
619
+ * Logs a message to stdout.
620
+ *
621
+ * Automatically applies current indentation. All arguments are formatted and
622
+ * logged like `console.log()`. This is the primary method for standard
623
+ * output.
624
+ */
625
+ log(...args) {
626
+ return this.#apply("log", args);
627
+ }
628
+ /**
629
+ * Logs a newline to stdout only if the last line wasn't already blank.
630
+ *
631
+ * Prevents multiple consecutive blank lines. Useful for adding spacing
632
+ * between sections without creating excessive whitespace.
633
+ */
634
+ logNewline() {
635
+ return this.#getLastWasBlank("stdout") ? this : this.log("");
636
+ }
637
+ /**
638
+ * Shows a progress indicator that can be cleared with `clearLine()`.
639
+ *
640
+ * Displays a simple status message with a '∴' prefix. Does not include
641
+ * animation or spinner. Intended to be cleared once the operation completes.
642
+ * The output stream (stderr or stdout) depends on whether the logger is
643
+ * stream-bound.
644
+ *
645
+ * @param text - The progress message to display.
646
+ */
647
+ progress(text) {
648
+ const con = this.#getConsole();
649
+ const stream = this.#getTargetStream();
650
+ const streamObj = stream === "stderr" ? con["_stderr"] : con["_stdout"];
651
+ const symbols = this.#getSymbols();
652
+ streamObj.write(`${symbols.progress} ${text}`);
653
+ this[import_symbols.lastWasBlankSymbol](false);
654
+ return this;
655
+ }
656
+ /**
657
+ * Resets all indentation to zero.
658
+ *
659
+ * When called on the main logger, resets both stderr and stdout indentation.
660
+ * When called on a stream-bound logger (`.stderr` or `.stdout`), resets only
661
+ * that stream's indentation.
662
+ */
663
+ resetIndent() {
664
+ if (this.#boundStream) {
665
+ this.#setIndent(this.#boundStream, "");
666
+ } else {
667
+ this.#setIndent("stderr", "");
668
+ this.#setIndent("stdout", "");
669
+ }
670
+ return this;
671
+ }
672
+ /**
673
+ * Logs a skip message with a cyan colored skip symbol.
674
+ *
675
+ * Automatically prefixes the message with `LOG_SYMBOLS.skip` (cyan ↻). Always
676
+ * outputs to stderr. If the message starts with an existing symbol, it will
677
+ * be stripped and replaced.
678
+ */
679
+ skip(...args) {
680
+ return this.#symbolApply("skip", args);
681
+ }
682
+ /**
683
+ * Logs a main step message with a cyan arrow symbol and blank line before it.
684
+ *
685
+ * Automatically prefixes the message with `LOG_SYMBOLS.step` (cyan →) and
686
+ * adds a blank line before the message unless the last line was already
687
+ * blank. Useful for marking major steps in a process with clear visual
688
+ * separation. Always outputs to stdout. If the message starts with an
689
+ * existing symbol, it will be stripped and replaced.
690
+ *
691
+ * @param msg - The step message to log.
692
+ * @param extras - Additional arguments to log.
693
+ */
694
+ step(msg, ...extras) {
695
+ if (!this.#getLastWasBlank("stdout")) {
696
+ this.log("");
697
+ }
698
+ const text = this.#stripSymbols(msg);
699
+ const indent = this.#getIndent("stdout");
700
+ const symbols = this.#getSymbols();
701
+ const con = this.#getConsole();
702
+ con.log(
703
+ (0, import_format.applyLinePrefix)(`${symbols.step} ${text}`, {
704
+ prefix: indent
705
+ }),
706
+ ...extras
707
+ );
708
+ this[import_symbols.lastWasBlankSymbol](false, "stdout");
709
+ this[import_symbols.incLogCallCountSymbol]();
710
+ return this;
711
+ }
712
+ /**
713
+ * Logs an indented substep message (stateless).
714
+ *
715
+ * Adds a 2-space indent to the message without affecting the logger's
716
+ * indentation state. Useful for showing sub-items under a main step.
717
+ *
718
+ * @param msg - The substep message to log.
719
+ * @param extras - Additional arguments to log.
720
+ */
721
+ substep(msg, ...extras) {
722
+ const indentedMsg = ` ${msg}`;
723
+ return this.log(indentedMsg, ...extras);
724
+ }
725
+ /**
726
+ * Logs a success message with a green colored success symbol.
727
+ *
728
+ * Automatically prefixes the message with `LOG_SYMBOLS.success` (green ✔).
729
+ * Always outputs to stderr. If the message starts with an existing symbol, it
730
+ * will be stripped and replaced.
731
+ */
732
+ success(...args) {
733
+ return this.#symbolApply("success", args);
734
+ }
735
+ /**
736
+ * Displays data in a table format.
737
+ *
738
+ * Works like `console.table()`. Accepts arrays of objects or objects with
739
+ * nested objects. Optionally specify which properties to include in the
740
+ * table.
741
+ *
742
+ * @param tabularData - The data to display as a table.
743
+ * @param properties - Optional array of property names to include.
744
+ */
745
+ table(tabularData, properties) {
746
+ const con = this.#getConsole();
747
+ con.table(tabularData, properties);
748
+ this[import_symbols.lastWasBlankSymbol](false);
749
+ return this[import_symbols.incLogCallCountSymbol]();
750
+ }
751
+ /**
752
+ * Starts a timer for measuring elapsed time.
753
+ *
754
+ * Creates a timer with the given label. Use `timeEnd()` with the same label
755
+ * to stop the timer and log the elapsed time, or use `timeLog()` to check the
756
+ * time without stopping the timer.
757
+ *
758
+ * @default 'default'
759
+ *
760
+ * @param label - Optional label for the timer.
761
+ */
762
+ time(label) {
763
+ const con = this.#getConsole();
764
+ con.time(label);
765
+ return this;
766
+ }
767
+ /**
768
+ * Ends a timer and logs the elapsed time.
769
+ *
770
+ * Logs the duration since `console.time()` or `logger.time()` was called with
771
+ * the same label. The timer is stopped and removed.
772
+ *
773
+ * @default 'default'
774
+ *
775
+ * @param label - Optional label for the timer.
776
+ */
777
+ timeEnd(label) {
778
+ const con = this.#getConsole();
779
+ con.timeEnd(label);
780
+ this[import_symbols.lastWasBlankSymbol](false);
781
+ return this[import_symbols.incLogCallCountSymbol]();
782
+ }
783
+ /**
784
+ * Logs the current value of a timer without stopping it.
785
+ *
786
+ * Logs the duration since `console.time()` was called with the same label,
787
+ * but keeps the timer running. Can include additional data to log alongside
788
+ * the time.
789
+ *
790
+ * @default 'default'
791
+ *
792
+ * @param label - Optional label for the timer.
793
+ * @param data - Additional data to log with the time.
794
+ */
795
+ timeLog(label, ...data) {
796
+ const con = this.#getConsole();
797
+ con.timeLog(label, ...data);
798
+ this[import_symbols.lastWasBlankSymbol](false);
799
+ return this[import_symbols.incLogCallCountSymbol]();
800
+ }
801
+ /**
802
+ * Logs a stack trace to the console.
803
+ *
804
+ * Works like `console.trace()`. Shows the call stack leading to where this
805
+ * method was called. Useful for debugging.
806
+ *
807
+ * @param message - Optional message to display with the trace.
808
+ * @param args - Additional arguments to log.
809
+ */
810
+ trace(message, ...args) {
811
+ const con = this.#getConsole();
812
+ con.trace(message, ...args);
813
+ this[import_symbols.lastWasBlankSymbol](false);
814
+ return this[import_symbols.incLogCallCountSymbol]();
815
+ }
816
+ /**
817
+ * Logs a warning message with a yellow colored warning symbol.
818
+ *
819
+ * Automatically prefixes the message with `LOG_SYMBOLS.warn` (yellow ⚠).
820
+ * Always outputs to stderr. If the message starts with an existing symbol, it
821
+ * will be stripped and replaced.
822
+ */
823
+ warn(...args) {
824
+ return this.#symbolApply("warn", args);
825
+ }
826
+ /**
827
+ * Writes text directly to stdout without a newline or indentation.
828
+ *
829
+ * Useful for progress indicators or custom formatting where you need
830
+ * low-level control. Does not apply any indentation or formatting.
831
+ *
832
+ * @param text - The text to write.
833
+ */
834
+ write(text) {
835
+ const con = this.#getConsole();
836
+ const ctorArgs = import_internal.privateConstructorArgs.get(this) ?? [];
837
+ const stdout = this.#originalStdout || ctorArgs[0]?.stdout || con._stdout;
838
+ stdout.write(text);
839
+ this[import_symbols.lastWasBlankSymbol](false);
840
+ return this;
841
+ }
842
+ }
843
+ let _logger;
844
+ function getDefaultLogger() {
845
+ if (_logger === void 0) {
846
+ _logger = new Logger();
847
+ }
848
+ return _logger;
849
+ }
850
+ // Annotate the CommonJS export names for ESM import in node:
851
+ 0 && (module.exports = {
852
+ Logger,
853
+ getDefaultLogger
854
+ });