@socketsecurity/lib 6.0.2 → 6.0.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 (552) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/_virtual/_rolldown/runtime.js +45 -0
  3. package/dist/abort/signal.js +53 -59
  4. package/dist/ai/discover.js +110 -110
  5. package/dist/ai/profiles.d.mts +48 -25
  6. package/dist/ai/profiles.js +95 -59
  7. package/dist/ai/spawn.d.mts +2 -2
  8. package/dist/ai/spawn.js +172 -194
  9. package/dist/ai/types.d.mts +3 -3
  10. package/dist/ai/types.js +1 -17
  11. package/dist/ai/worktree.d.mts +2 -2
  12. package/dist/ai/worktree.js +160 -183
  13. package/dist/ansi/constants.js +16 -38
  14. package/dist/ansi/strip.js +44 -41
  15. package/dist/archives/_internal.js +64 -73
  16. package/dist/archives/detect.js +30 -43
  17. package/dist/archives/extract.js +43 -50
  18. package/dist/archives/tar.js +197 -228
  19. package/dist/archives/types.js +1 -17
  20. package/dist/archives/zip.js +85 -121
  21. package/dist/argv/flag-predicates.js +203 -101
  22. package/dist/argv/flag-types.js +96 -113
  23. package/dist/argv/parse-args-string.d.ts +16 -14
  24. package/dist/argv/parse-args-string.js +42 -39
  25. package/dist/argv/parse.js +145 -163
  26. package/dist/arrays/_internal.js +65 -48
  27. package/dist/arrays/chunk.js +51 -40
  28. package/dist/arrays/join.js +87 -35
  29. package/dist/arrays/predicates.js +46 -28
  30. package/dist/arrays/unique.js +45 -31
  31. package/dist/bin/_internal.js +34 -42
  32. package/dist/bin/check-primordials.js +175 -233
  33. package/dist/bin/check.js +51 -72
  34. package/dist/bin/exec.js +70 -74
  35. package/dist/bin/find.js +151 -134
  36. package/dist/bin/resolve.js +180 -246
  37. package/dist/bin/shadow.js +24 -33
  38. package/dist/bin/socket-lib.js +51 -73
  39. package/dist/bin/types.js +1 -17
  40. package/dist/bin/which.js +211 -146
  41. package/dist/cacache/_internal.js +25 -40
  42. package/dist/cacache/clear.js +79 -72
  43. package/dist/cacache/read.js +48 -46
  44. package/dist/cacache/tmp.js +29 -36
  45. package/dist/cacache/types.js +1 -17
  46. package/dist/cacache/write.js +43 -48
  47. package/dist/cache/ttl/store.js +232 -288
  48. package/dist/cache/ttl/types.js +1 -17
  49. package/dist/checks/primordials-defaults.js +83 -89
  50. package/dist/checks/primordials.js +225 -277
  51. package/dist/colors/convert.js +45 -37
  52. package/dist/colors/palette.js +88 -45
  53. package/dist/colors/socket-palette.js +74 -84
  54. package/dist/colors/types.js +1 -17
  55. package/dist/compression/_internal.js +57 -72
  56. package/dist/compression/brotli.js +94 -127
  57. package/dist/compression/gzip.js +95 -121
  58. package/dist/compression/types.js +1 -17
  59. package/dist/constants/agents.js +61 -113
  60. package/dist/constants/encoding.js +19 -42
  61. package/dist/constants/github.js +12 -30
  62. package/dist/constants/licenses.js +48 -63
  63. package/dist/constants/lifecycle-script-names.js +31 -45
  64. package/dist/constants/maintained-node-versions.js +22 -37
  65. package/dist/constants/node.js +226 -167
  66. package/dist/constants/package-default-node-range.js +16 -41
  67. package/dist/constants/package-default-socket-categories.js +12 -30
  68. package/dist/constants/packages.js +77 -126
  69. package/dist/constants/platform.js +27 -49
  70. package/dist/constants/sentinels.js +23 -48
  71. package/dist/constants/socket.js +42 -87
  72. package/dist/constants/testing.js +15 -34
  73. package/dist/constants/time.js +16 -36
  74. package/dist/constants/typescript.js +32 -52
  75. package/dist/cover/code.js +111 -142
  76. package/dist/cover/formatters.js +118 -101
  77. package/dist/cover/type.js +50 -76
  78. package/dist/cover/types.js +1 -17
  79. package/dist/crypto/hash.js +54 -46
  80. package/dist/debug/_internal.js +62 -71
  81. package/dist/debug/caller-info.js +53 -64
  82. package/dist/debug/namespace.js +80 -90
  83. package/dist/debug/output.js +172 -188
  84. package/dist/debug/types.js +1 -17
  85. package/dist/dlx/_internal.js +24 -43
  86. package/dist/dlx/arborist.js +162 -160
  87. package/dist/dlx/binary-cache.js +228 -200
  88. package/dist/dlx/binary-download.js +172 -211
  89. package/dist/dlx/binary-resolution.js +165 -157
  90. package/dist/dlx/binary-types.js +1 -17
  91. package/dist/dlx/binary.js +149 -189
  92. package/dist/dlx/cache.js +45 -30
  93. package/dist/dlx/detect.js +245 -167
  94. package/dist/dlx/dir.js +67 -51
  95. package/dist/dlx/firewall.js +62 -100
  96. package/dist/dlx/lockfile.js +122 -127
  97. package/dist/dlx/manifest.js +264 -274
  98. package/dist/dlx/package.js +241 -244
  99. package/dist/dlx/packages.js +99 -96
  100. package/dist/dlx/paths.js +73 -59
  101. package/dist/dlx/spec.js +52 -60
  102. package/dist/dlx/types.js +1 -17
  103. package/dist/eco/cargo/lockfile-format.js +19 -36
  104. package/dist/eco/cargo/manifest-format.js +17 -35
  105. package/dist/eco/cargo/parse-lockfile.js +210 -237
  106. package/dist/eco/manifest/analyze-lockfile.js +46 -63
  107. package/dist/eco/manifest/detect-format.js +66 -90
  108. package/dist/eco/manifest/find-packages.js +39 -64
  109. package/dist/eco/manifest/get-package-versions.js +27 -48
  110. package/dist/eco/manifest/get-package.js +21 -40
  111. package/dist/eco/manifest/manifest-error.js +14 -35
  112. package/dist/eco/manifest/parse-lockfile.js +40 -86
  113. package/dist/eco/manifest/parse-manifest.js +26 -43
  114. package/dist/eco/manifest/parse.js +26 -47
  115. package/dist/eco/manifest/types.js +1 -17
  116. package/dist/eco/npm/bun/exec.js +23 -32
  117. package/dist/eco/npm/manifest-format.js +21 -35
  118. package/dist/eco/npm/npm/exec.js +51 -61
  119. package/dist/eco/npm/npm/extract-package-name-from-path.js +28 -50
  120. package/dist/eco/npm/npm/flags.js +80 -52
  121. package/dist/eco/npm/npm/lockfile-format.js +21 -40
  122. package/dist/eco/npm/npm/parse-git-url.js +26 -40
  123. package/dist/eco/npm/npm/parse-lockfile.js +184 -210
  124. package/dist/eco/npm/parse-package-json.js +71 -102
  125. package/dist/eco/npm/pnpm/detect-pnpm-version.js +22 -43
  126. package/dist/eco/npm/pnpm/exec.js +51 -62
  127. package/dist/eco/npm/pnpm/flags.js +75 -68
  128. package/dist/eco/npm/pnpm/lockfile-format.js +19 -36
  129. package/dist/eco/npm/pnpm/parse-lockfile.js +235 -259
  130. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +37 -47
  131. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +36 -49
  132. package/dist/eco/npm/script.js +82 -90
  133. package/dist/eco/npm/vlt/exec.js +24 -32
  134. package/dist/eco/npm/yarnpkg/yarn/exec.js +60 -59
  135. package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +20 -36
  136. package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +194 -242
  137. package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +37 -61
  138. package/dist/eco/purl.js +50 -60
  139. package/dist/eco/types.js +1 -17
  140. package/dist/effects/pulse-frames.js +64 -65
  141. package/dist/effects/shimmer-keyframes.js +71 -52
  142. package/dist/effects/shimmer-terminal.js +81 -50
  143. package/dist/effects/shimmer.js +290 -153
  144. package/dist/env/boolean.js +42 -43
  145. package/dist/env/case-insensitive.js +54 -39
  146. package/dist/env/ci.js +29 -31
  147. package/dist/env/debug.js +28 -31
  148. package/dist/env/github.js +144 -59
  149. package/dist/env/home.js +38 -31
  150. package/dist/env/locale.js +59 -39
  151. package/dist/env/node-auth-token.js +28 -31
  152. package/dist/env/node-env.js +28 -31
  153. package/dist/env/npm.js +94 -47
  154. package/dist/env/number.js +50 -51
  155. package/dist/env/package-manager.js +95 -83
  156. package/dist/env/path.js +28 -31
  157. package/dist/env/pre-commit.js +30 -32
  158. package/dist/env/proxy.js +121 -122
  159. package/dist/env/rewire.js +204 -96
  160. package/dist/env/shell.js +28 -31
  161. package/dist/env/socket-cli.js +233 -81
  162. package/dist/env/socket.js +521 -156
  163. package/dist/env/string.js +43 -44
  164. package/dist/env/temp-dir.js +59 -39
  165. package/dist/env/term.js +28 -31
  166. package/dist/env/test.js +65 -43
  167. package/dist/env/types.js +1 -17
  168. package/dist/env/windows.js +78 -43
  169. package/dist/env/xdg.js +62 -39
  170. package/dist/errors/message.js +40 -46
  171. package/dist/errors/predicates.js +61 -49
  172. package/dist/errors/stack.js +24 -36
  173. package/dist/events/exit/_internal.js +86 -103
  174. package/dist/events/exit/handler.js +48 -55
  175. package/dist/events/exit/intercept.js +49 -70
  176. package/dist/events/exit/lifecycle.js +92 -101
  177. package/dist/events/exit/signals.js +25 -31
  178. package/dist/events/exit/types.js +1 -17
  179. package/dist/events/warning/handler.js +43 -40
  180. package/dist/events/warning/suppress.js +111 -90
  181. package/dist/external/@npmcli/package-json/lib/read-package.js +132 -153
  182. package/dist/external/@npmcli/package-json/lib/sort.js +73 -105
  183. package/dist/external/@npmcli/package-json.js +12705 -15140
  184. package/dist/external/@npmcli/promise-spawn.js +451 -472
  185. package/dist/external/@sinclair/typebox/value.js +7443 -9002
  186. package/dist/external/@sinclair/typebox.js +7516 -7885
  187. package/dist/external/@socketregistry/is-unicode-supported.js +31 -39
  188. package/dist/external/@socketregistry/packageurl-js.js +6127 -7369
  189. package/dist/external/@socketregistry/yocto-spinner.js +394 -455
  190. package/dist/external/@yarnpkg/extensions.js +435 -1022
  191. package/dist/external/adm-zip.js +2313 -2673
  192. package/dist/external/debug.js +700 -687
  193. package/dist/external/external-pack.js +2658 -3171
  194. package/dist/external/fast-sort.js +124 -138
  195. package/dist/external/get-east-asian-width.js +70 -64
  196. package/dist/external/libnpmexec.js +28 -31
  197. package/dist/external/npm-pack.js +43617 -50137
  198. package/dist/external/p-map.js +198 -222
  199. package/dist/external/pico-pack.js +6735 -7304
  200. package/dist/external/pony-cause.js +143 -139
  201. package/dist/external/shell-quote.js +226 -0
  202. package/dist/external/spdx-pack.js +1283 -1403
  203. package/dist/external/streaming-iterables.js +835 -1052
  204. package/dist/external/tar-fs.js +2769 -3048
  205. package/dist/external/which.js +267 -251
  206. package/dist/external/yargs-parser.js +851 -1074
  207. package/dist/external-tools/bazel/asset-names.js +98 -90
  208. package/dist/external-tools/bazel/from-download.js +52 -46
  209. package/dist/external-tools/bazel/from-path.js +27 -38
  210. package/dist/external-tools/bazel/read-bazel-version-file.js +35 -57
  211. package/dist/external-tools/bazel/resolve-asset-url.js +24 -39
  212. package/dist/external-tools/bazel/resolve-bazel-version.js +34 -56
  213. package/dist/external-tools/bazel/resolve.js +44 -58
  214. package/dist/external-tools/bazel/types.js +1 -17
  215. package/dist/external-tools/cdxgen/asset-names.js +59 -66
  216. package/dist/external-tools/cdxgen/from-download.js +52 -80
  217. package/dist/external-tools/cdxgen/from-path.js +19 -37
  218. package/dist/external-tools/cdxgen/from-vfs.js +22 -43
  219. package/dist/external-tools/cdxgen/resolve.js +48 -63
  220. package/dist/external-tools/cdxgen/types.js +1 -17
  221. package/dist/external-tools/from-download.js +107 -67
  222. package/dist/external-tools/janus/asset-names.js +44 -51
  223. package/dist/external-tools/janus/from-download.js +45 -70
  224. package/dist/external-tools/janus/from-path.js +19 -37
  225. package/dist/external-tools/janus/from-vfs.js +22 -43
  226. package/dist/external-tools/janus/resolve.js +45 -63
  227. package/dist/external-tools/janus/types.js +1 -17
  228. package/dist/external-tools/jre/asset-names.js +109 -82
  229. package/dist/external-tools/jre/detect-platform-arch.js +25 -49
  230. package/dist/external-tools/jre/from-download.js +71 -67
  231. package/dist/external-tools/jre/from-java-home.js +27 -54
  232. package/dist/external-tools/jre/from-path.js +27 -49
  233. package/dist/external-tools/jre/from-vfs.js +39 -60
  234. package/dist/external-tools/jre/resolve.js +55 -68
  235. package/dist/external-tools/jre/types.js +1 -17
  236. package/dist/external-tools/manifest.js +130 -150
  237. package/dist/external-tools/opengrep/asset-names.js +60 -72
  238. package/dist/external-tools/opengrep/from-download.js +58 -80
  239. package/dist/external-tools/opengrep/from-path.js +19 -37
  240. package/dist/external-tools/opengrep/from-vfs.js +23 -43
  241. package/dist/external-tools/opengrep/resolve.js +43 -63
  242. package/dist/external-tools/opengrep/types.js +1 -17
  243. package/dist/external-tools/sbt/asset-names.js +21 -30
  244. package/dist/external-tools/sbt/from-download.js +50 -61
  245. package/dist/external-tools/sbt/from-path.js +23 -38
  246. package/dist/external-tools/sbt/from-vfs.js +30 -44
  247. package/dist/external-tools/sbt/resolve.js +45 -63
  248. package/dist/external-tools/sbt/types.js +1 -17
  249. package/dist/external-tools/synp/asset-names.js +11 -29
  250. package/dist/external-tools/synp/from-download.js +24 -41
  251. package/dist/external-tools/synp/from-path.js +19 -37
  252. package/dist/external-tools/synp/from-vfs.js +22 -43
  253. package/dist/external-tools/synp/resolve.js +43 -62
  254. package/dist/external-tools/synp/types.js +1 -17
  255. package/dist/external-tools/trivy/asset-names.js +51 -62
  256. package/dist/external-tools/trivy/from-download.js +42 -64
  257. package/dist/external-tools/trivy/from-path.js +19 -37
  258. package/dist/external-tools/trivy/from-vfs.js +22 -43
  259. package/dist/external-tools/trivy/resolve.js +43 -63
  260. package/dist/external-tools/trivy/types.js +1 -17
  261. package/dist/external-tools/trufflehog/asset-names.js +54 -66
  262. package/dist/external-tools/trufflehog/from-download.js +44 -62
  263. package/dist/external-tools/trufflehog/from-path.js +21 -37
  264. package/dist/external-tools/trufflehog/from-vfs.js +26 -43
  265. package/dist/external-tools/trufflehog/resolve.js +43 -63
  266. package/dist/external-tools/trufflehog/types.js +1 -17
  267. package/dist/external-tools/uv/asset-names.js +64 -74
  268. package/dist/external-tools/uv/from-download.js +44 -65
  269. package/dist/external-tools/uv/from-path.js +19 -37
  270. package/dist/external-tools/uv/from-vfs.js +22 -43
  271. package/dist/external-tools/uv/resolve.js +42 -63
  272. package/dist/external-tools/uv/types.js +1 -17
  273. package/dist/fs/_internal.js +40 -42
  274. package/dist/fs/access.d.ts +32 -0
  275. package/dist/fs/access.js +66 -0
  276. package/dist/fs/encoding.js +80 -97
  277. package/dist/fs/find-up.js +126 -147
  278. package/dist/fs/inspect.js +168 -99
  279. package/dist/fs/path-cache.js +31 -32
  280. package/dist/fs/read-dir.js +102 -79
  281. package/dist/fs/read-file.js +177 -118
  282. package/dist/fs/read-json-cache.js +150 -134
  283. package/dist/fs/read-json.js +172 -187
  284. package/dist/fs/resolve-module.d.ts +57 -0
  285. package/dist/fs/resolve-module.js +40 -0
  286. package/dist/fs/safe.js +278 -169
  287. package/dist/fs/types.js +1 -17
  288. package/dist/fs/unique.js +52 -48
  289. package/dist/fs/validate.js +56 -43
  290. package/dist/fs/write-json.js +109 -75
  291. package/dist/git/_internal.js +251 -216
  292. package/dist/git/changed.js +191 -74
  293. package/dist/git/repo.js +118 -104
  294. package/dist/git/staged.js +172 -62
  295. package/dist/git/types.js +1 -17
  296. package/dist/git/unstaged.js +175 -62
  297. package/dist/github/constants.js +25 -33
  298. package/dist/github/errors.js +46 -38
  299. package/dist/github/fetch.js +137 -82
  300. package/dist/github/ghsa.js +217 -151
  301. package/dist/github/refs-cache.js +54 -43
  302. package/dist/github/refs-graphql.js +97 -89
  303. package/dist/github/refs-rest.js +70 -101
  304. package/dist/github/refs.js +105 -64
  305. package/dist/github/token.js +96 -48
  306. package/dist/github/types.js +1 -17
  307. package/dist/globs/_internal.js +73 -82
  308. package/dist/globs/defaults.js +40 -59
  309. package/dist/globs/match.js +93 -77
  310. package/dist/globs/matcher.js +104 -92
  311. package/dist/globs/stream.js +43 -55
  312. package/dist/globs/types.js +1 -17
  313. package/dist/http-request/_internal.js +11 -38
  314. package/dist/http-request/browser-fetch.js +19 -29
  315. package/dist/http-request/browser.js +188 -206
  316. package/dist/http-request/checksums.js +101 -65
  317. package/dist/http-request/download-types.js +1 -17
  318. package/dist/http-request/download.js +195 -196
  319. package/dist/http-request/errors.js +39 -47
  320. package/dist/http-request/headers.js +95 -80
  321. package/dist/http-request/http-request.js +10 -35
  322. package/dist/http-request/node.js +71 -97
  323. package/dist/http-request/request-attempt.js +232 -285
  324. package/dist/http-request/request-types.js +1 -17
  325. package/dist/http-request/request.js +106 -108
  326. package/dist/http-request/response-reader.js +47 -51
  327. package/dist/http-request/response-types.js +22 -38
  328. package/dist/http-request/user-agent.js +73 -55
  329. package/dist/integrity.js +105 -106
  330. package/dist/ipc/_internal.js +34 -48
  331. package/dist/ipc/directory.js +55 -63
  332. package/dist/ipc/paths.js +52 -45
  333. package/dist/ipc/types.js +1 -17
  334. package/dist/ipc/write.js +81 -74
  335. package/dist/ipc-cli/get.js +29 -56
  336. package/dist/ipc-cli/types.js +1 -17
  337. package/dist/json/edit.js +182 -242
  338. package/dist/json/format.js +202 -103
  339. package/dist/json/parse.js +206 -109
  340. package/dist/json/types.js +1 -17
  341. package/dist/links/create.js +93 -60
  342. package/dist/links/types.js +1 -17
  343. package/dist/logger/_internal.js +109 -73
  344. package/dist/logger/browser.js +45 -56
  345. package/dist/logger/colors.js +31 -49
  346. package/dist/logger/console.js +89 -112
  347. package/dist/logger/default.js +19 -33
  348. package/dist/logger/logger.js +5 -29
  349. package/dist/logger/node.js +794 -854
  350. package/dist/logger/symbols-builder.js +54 -56
  351. package/dist/logger/symbols.js +135 -118
  352. package/dist/logger/types.js +1 -17
  353. package/dist/memo/_internal.js +39 -49
  354. package/dist/memo/async.js +133 -117
  355. package/dist/memo/clear.js +25 -34
  356. package/dist/memo/decorator.js +43 -37
  357. package/dist/memo/memoize.js +97 -88
  358. package/dist/memo/once.js +42 -41
  359. package/dist/memo/types.js +1 -17
  360. package/dist/memo/weak.js +45 -41
  361. package/dist/node/async-hooks.js +9 -30
  362. package/dist/node/child-process.js +9 -30
  363. package/dist/node/crypto.js +9 -30
  364. package/dist/node/events.js +9 -30
  365. package/dist/node/fs-promises.js +9 -30
  366. package/dist/node/fs.js +9 -30
  367. package/dist/node/http.js +9 -30
  368. package/dist/node/https.js +9 -30
  369. package/dist/node/module.js +20 -34
  370. package/dist/node/os.js +9 -30
  371. package/dist/node/path.js +9 -30
  372. package/dist/node/timers-promises.js +9 -30
  373. package/dist/node/url.js +9 -30
  374. package/dist/node/util.js +9 -30
  375. package/dist/objects/getters.js +185 -126
  376. package/dist/objects/inspect.js +85 -52
  377. package/dist/objects/mutate.js +96 -76
  378. package/dist/objects/predicates.js +112 -59
  379. package/dist/objects/sort.js +120 -76
  380. package/dist/objects/types.js +1 -17
  381. package/dist/packages/edit-class.js +198 -265
  382. package/dist/packages/edit.js +79 -86
  383. package/dist/packages/exports.js +146 -157
  384. package/dist/packages/isolation.js +159 -209
  385. package/dist/packages/licenses.js +207 -189
  386. package/dist/packages/manifest.js +134 -172
  387. package/dist/packages/normalize.js +91 -102
  388. package/dist/packages/operations.d.ts +2 -0
  389. package/dist/packages/operations.js +283 -254
  390. package/dist/packages/provenance.js +195 -245
  391. package/dist/packages/specs.js +94 -84
  392. package/dist/packages/types.js +1 -17
  393. package/dist/packages/validation.js +49 -50
  394. package/dist/paths/_internal.js +82 -86
  395. package/dist/paths/conversion.js +112 -65
  396. package/dist/paths/dirnames.js +17 -42
  397. package/dist/paths/exts.js +23 -54
  398. package/dist/paths/filenames.js +21 -50
  399. package/dist/paths/globs.js +15 -38
  400. package/dist/paths/normalize.js +215 -236
  401. package/dist/paths/packages.js +34 -49
  402. package/dist/paths/predicates.js +184 -106
  403. package/dist/paths/resolve.js +146 -128
  404. package/dist/paths/rewire.js +108 -72
  405. package/dist/paths/socket.js +252 -132
  406. package/dist/paths/walk.d.ts +40 -0
  407. package/dist/paths/walk.js +58 -0
  408. package/dist/perf/_internal.js +10 -28
  409. package/dist/perf/enabled.js +21 -30
  410. package/dist/perf/metrics.js +81 -67
  411. package/dist/perf/report.js +79 -80
  412. package/dist/perf/timer.js +180 -126
  413. package/dist/perf/types.js +1 -17
  414. package/dist/pkg-ext/data.js +29 -82
  415. package/dist/pkg-ext/types.js +1 -17
  416. package/dist/primordials/array.js +120 -198
  417. package/dist/primordials/buffer.js +28 -51
  418. package/dist/primordials/date.js +26 -51
  419. package/dist/primordials/error.js +33 -59
  420. package/dist/primordials/function.js +21 -41
  421. package/dist/primordials/globals.js +25 -48
  422. package/dist/primordials/json.js +14 -30
  423. package/dist/primordials/map-set.js +88 -152
  424. package/dist/primordials/math.js +59 -116
  425. package/dist/primordials/number.js +41 -76
  426. package/dist/primordials/object.js +56 -116
  427. package/dist/primordials/promise.js +28 -52
  428. package/dist/primordials/reflect.js +24 -52
  429. package/dist/primordials/regexp.js +25 -47
  430. package/dist/primordials/string.js +114 -167
  431. package/dist/primordials/symbol.js +40 -72
  432. package/dist/primordials/uncurry.js +38 -55
  433. package/dist/primordials/url.js +27 -66
  434. package/dist/process/_internal.js +7 -32
  435. package/dist/process/abort.js +29 -35
  436. package/dist/process/lock-instance.js +26 -30
  437. package/dist/process/lock-manager.js +279 -307
  438. package/dist/process/lock-types.js +1 -17
  439. package/dist/process/spawn/_internal.js +43 -55
  440. package/dist/process/spawn/child.js +172 -211
  441. package/dist/process/spawn/errors.js +116 -113
  442. package/dist/process/spawn/stdio.js +51 -35
  443. package/dist/process/spawn/types.js +1 -17
  444. package/dist/process/transient.js +49 -66
  445. package/dist/promises/_internal.d.ts +8 -2
  446. package/dist/promises/_internal.js +31 -38
  447. package/dist/promises/iterate.js +238 -102
  448. package/dist/promises/options.js +123 -101
  449. package/dist/promises/queue.js +115 -136
  450. package/dist/promises/resolvers.js +77 -46
  451. package/dist/promises/retry.js +156 -101
  452. package/dist/promises/types.js +1 -17
  453. package/dist/regexps/escape.js +32 -30
  454. package/dist/regexps/hex.js +16 -33
  455. package/dist/regexps/spec.js +53 -81
  456. package/dist/releases/github-archives.js +127 -118
  457. package/dist/releases/github-asset-url.js +162 -155
  458. package/dist/releases/github-assets.js +37 -49
  459. package/dist/releases/github-auth.js +32 -48
  460. package/dist/releases/github-downloads.js +118 -138
  461. package/dist/releases/github-listing.js +175 -154
  462. package/dist/releases/github-retry-config.d.ts +31 -0
  463. package/dist/releases/github-retry-config.js +46 -0
  464. package/dist/releases/github-types.js +1 -17
  465. package/dist/releases/socket-btm.js +273 -192
  466. package/dist/schema/parse.js +35 -36
  467. package/dist/schema/types.js +1 -17
  468. package/dist/schema/validate.js +118 -99
  469. package/dist/sea/detect.js +57 -52
  470. package/dist/secrets/_internal.js +86 -67
  471. package/dist/secrets/find.js +96 -77
  472. package/dist/secrets/keychain.js +315 -309
  473. package/dist/secrets/linux.js +133 -135
  474. package/dist/secrets/macos.js +151 -147
  475. package/dist/secrets/rc.js +182 -181
  476. package/dist/secrets/socket-api-token.js +28 -43
  477. package/dist/secrets/types.js +1 -17
  478. package/dist/secrets/windows.js +184 -242
  479. package/dist/shadow/skip.js +51 -70
  480. package/dist/shadow/types.js +1 -17
  481. package/dist/shell/parse.d.ts +26 -0
  482. package/dist/shell/parse.js +35 -0
  483. package/dist/shell/quote.d.ts +19 -0
  484. package/dist/shell/quote.js +30 -0
  485. package/dist/smol/detect.js +67 -43
  486. package/dist/smol/http.js +33 -37
  487. package/dist/smol/https.js +31 -37
  488. package/dist/smol/manifest.js +33 -37
  489. package/dist/smol/path.d.ts +51 -0
  490. package/dist/smol/path.js +38 -0
  491. package/dist/smol/primordial.js +35 -37
  492. package/dist/smol/purl.js +34 -37
  493. package/dist/smol/versions.js +31 -37
  494. package/dist/smol/vfs.js +46 -38
  495. package/dist/sorts/_internal.js +14 -40
  496. package/dist/sorts/natural.js +57 -64
  497. package/dist/sorts/semver.js +33 -43
  498. package/dist/sorts/strings.js +24 -30
  499. package/dist/sorts/types.js +1 -17
  500. package/dist/spinner/default.js +72 -63
  501. package/dist/spinner/format.js +86 -71
  502. package/dist/spinner/spinner.js +749 -797
  503. package/dist/spinner/types.js +1 -17
  504. package/dist/spinner/with.js +193 -137
  505. package/dist/ssri/convert.js +64 -47
  506. package/dist/ssri/parse.js +38 -37
  507. package/dist/ssri/validate.js +51 -34
  508. package/dist/stdio/_internal.js +50 -46
  509. package/dist/stdio/clear.js +208 -86
  510. package/dist/stdio/divider.js +170 -97
  511. package/dist/stdio/footer.js +116 -110
  512. package/dist/stdio/header.js +117 -90
  513. package/dist/stdio/progress.js +189 -218
  514. package/dist/stdio/prompts.js +244 -168
  515. package/dist/stdio/stderr.js +173 -78
  516. package/dist/stdio/stdout.js +177 -94
  517. package/dist/streams/parallel.js +58 -50
  518. package/dist/streams/transform.js +36 -45
  519. package/dist/strings/format.js +145 -63
  520. package/dist/strings/predicates.js +56 -34
  521. package/dist/strings/search.js +52 -42
  522. package/dist/strings/transform.js +113 -72
  523. package/dist/strings/types.js +1 -17
  524. package/dist/strings/width.js +89 -82
  525. package/dist/tables/bordered.js +81 -81
  526. package/dist/tables/padding.js +36 -46
  527. package/dist/tables/simple.js +62 -70
  528. package/dist/tables/types.js +1 -17
  529. package/dist/temporal/instant.js +72 -81
  530. package/dist/temporal/now.js +40 -31
  531. package/dist/temporal/slots.js +42 -36
  532. package/dist/temporal/system.js +36 -36
  533. package/dist/temporal/temporal.js +11 -41
  534. package/dist/themes/context.js +131 -69
  535. package/dist/themes/resolve.js +207 -132
  536. package/dist/themes/themes.js +225 -194
  537. package/dist/themes/types.js +1 -17
  538. package/dist/url/parse.js +48 -51
  539. package/dist/url/predicates.js +24 -31
  540. package/dist/url/search-params.js +133 -101
  541. package/dist/url/types.js +1 -17
  542. package/dist/versions/_internal.js +31 -33
  543. package/dist/versions/compare.js +80 -58
  544. package/dist/versions/modify.js +41 -39
  545. package/dist/versions/parse.js +88 -64
  546. package/dist/versions/range.js +58 -41
  547. package/dist/versions/types.js +1 -17
  548. package/dist/words/article.js +22 -30
  549. package/dist/words/capitalize.js +25 -34
  550. package/dist/words/pluralize.js +23 -31
  551. package/dist/words/types.js +1 -17
  552. package/package.json +42 -5
@@ -1,99 +1,194 @@
1
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 stderr_exports = {};
32
- __export(stderr_exports, {
33
- clearLine: () => clearLine,
34
- cursorTo: () => cursorTo,
35
- getColumns: () => getColumns,
36
- getRows: () => getRows,
37
- isTTY: () => isTTY,
38
- stderr: () => stderr,
39
- writeError: () => writeError,
40
- writeErrorFormatted: () => writeErrorFormatted,
41
- writeErrorLine: () => writeErrorLine,
42
- writeStackTrace: () => writeStackTrace,
43
- writeWarning: () => writeWarning
44
- });
45
- module.exports = __toCommonJS(stderr_exports);
46
- var import_node_process = __toESM(require("node:process"));
47
- var import_internal = require("./_internal");
48
- const stderr = import_node_process.default.stderr;
2
+ /* Socket Lib - Built with rolldown */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_runtime = require('../_virtual/_rolldown/runtime.js');
5
+ const require_stdio__internal = require('./_internal.js');
6
+ let node_process = require("node:process");
7
+ node_process = require_runtime.__toESM(node_process);
8
+
9
+ //#region src/stdio/stderr.ts
10
+ /**
11
+ * @file Standard error stream utilities. Provides utilities for writing to
12
+ * stderr with formatting and control.
13
+ */
14
+ const stderr = node_process.default.stderr;
15
+ /**
16
+ * Clear the current line on stderr. Only works in TTY environments.
17
+ *
18
+ * @example
19
+ * ;```ts
20
+ * writeError('Processing...')
21
+ * clearLine()
22
+ * writeError('Done!')
23
+ * ```
24
+ */
49
25
  function clearLine() {
50
- (0, import_internal.clearLineOn)(stderr);
26
+ require_stdio__internal.clearLineOn(stderr);
51
27
  }
28
+ /**
29
+ * Move cursor to specific position on stderr. Only works in TTY environments.
30
+ *
31
+ * @example
32
+ * ;```ts
33
+ * cursorTo(0) // Move to start of line
34
+ * cursorTo(10, 5) // Move to column 10, row 5
35
+ * ```
36
+ *
37
+ * @param x - Column position (0-based)
38
+ * @param y - Row position (0-based, optional)
39
+ */
52
40
  function cursorTo(x, y) {
53
- (0, import_internal.cursorToOn)(stderr, x, y);
41
+ require_stdio__internal.cursorToOn(stderr, x, y);
54
42
  }
43
+ /**
44
+ * Get the number of columns (width) in the terminal.
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * const width = getColumns()
49
+ * console.error(`Terminal is ${width} characters wide`)
50
+ * ```
51
+ *
52
+ * @default 80
53
+ *
54
+ * @returns Terminal width in characters
55
+ */
55
56
  function getColumns() {
56
- return (0, import_internal.getColumnsOf)(stderr);
57
+ return require_stdio__internal.getColumnsOf(stderr);
57
58
  }
59
+ /**
60
+ * Get the number of rows (height) in the terminal.
61
+ *
62
+ * @example
63
+ * ```ts
64
+ * const height = getRows()
65
+ * console.error(`Terminal is ${height} lines tall`)
66
+ * ```
67
+ *
68
+ * @default 24
69
+ *
70
+ * @returns Terminal height in lines
71
+ */
58
72
  function getRows() {
59
- return (0, import_internal.getRowsOf)(stderr);
73
+ return require_stdio__internal.getRowsOf(stderr);
60
74
  }
75
+ /**
76
+ * Check if stderr is connected to a TTY (terminal).
77
+ *
78
+ * @example
79
+ * ;```ts
80
+ * if (isTTY()) {
81
+ * // Show colored error messages
82
+ * } else {
83
+ * // Use plain text
84
+ * }
85
+ * ```
86
+ *
87
+ * @returns `true` if stderr is a TTY, `false` if piped/redirected
88
+ */
61
89
  function isTTY() {
62
- return (0, import_internal.isTTYOf)(stderr);
90
+ return require_stdio__internal.isTTYOf(stderr);
63
91
  }
92
+ /**
93
+ * Write text to stderr without adding a newline.
94
+ *
95
+ * @example
96
+ * ;```ts
97
+ * writeError('Downloading...')
98
+ * // Later update progress
99
+ * ```
100
+ *
101
+ * @param text - Text to write.
102
+ */
64
103
  function writeError(text) {
65
- stderr.write(text);
104
+ stderr.write(text);
66
105
  }
106
+ /**
107
+ * Write a formatted error message to stderr.
108
+ *
109
+ * @example
110
+ * ;```ts
111
+ * writeErrorFormatted('File not found')
112
+ * // Output: 'Error: File not found'
113
+ *
114
+ * writeErrorFormatted('Connection failed', 'Network')
115
+ * // Output: 'Network: Connection failed'
116
+ * ```
117
+ *
118
+ * @default prefix 'Error'
119
+ *
120
+ * @param message - Error message text.
121
+ * @param prefix - Prefix label for the error.
122
+ */
67
123
  function writeErrorFormatted(message, prefix = "Error") {
68
- const formatted = `${prefix}: ${message}`;
69
- writeErrorLine(formatted);
124
+ writeErrorLine(`${prefix}: ${message}`);
70
125
  }
126
+ /**
127
+ * Write a line to stderr with trailing newline. Used for error messages,
128
+ * warnings, and diagnostic output. Passing no argument writes an empty line.
129
+ *
130
+ * @example
131
+ * ;```ts
132
+ * writeErrorLine('Error: File not found')
133
+ * writeErrorLine() // Write empty line
134
+ * ```
135
+ *
136
+ * @default text ''
137
+ *
138
+ * @param text - Text to write (defaults to the empty string)
139
+ */
71
140
  function writeErrorLine(text = "") {
72
- stderr.write(`${text}
73
- `);
141
+ stderr.write(`${text}\n`);
74
142
  }
143
+ /**
144
+ * Write an error's stack trace to stderr. Falls back to formatted error message
145
+ * if no stack is available.
146
+ *
147
+ * @example
148
+ * ;```ts
149
+ * try {
150
+ * throw new ErrorCtor('Something went wrong')
151
+ * } catch (e) {
152
+ * writeStackTrace(e as Error)
153
+ * }
154
+ * ```
155
+ *
156
+ * @param error - Error object to write.
157
+ */
75
158
  function writeStackTrace(error) {
76
- if (error.stack) {
77
- writeErrorLine(error.stack);
78
- } else {
79
- writeErrorFormatted(error.message);
80
- }
159
+ if (error.stack) writeErrorLine(error.stack);
160
+ else writeErrorFormatted(error.message);
81
161
  }
162
+ /**
163
+ * Write a formatted warning message to stderr.
164
+ *
165
+ * @example
166
+ * ;```ts
167
+ * writeWarning('Deprecated API usage')
168
+ * // Output: 'Warning: Deprecated API usage'
169
+ *
170
+ * writeWarning('Invalid config', 'Config')
171
+ * // Output: 'Config: Invalid config'
172
+ * ```
173
+ *
174
+ * @default prefix 'Warning'
175
+ *
176
+ * @param message - Warning message text.
177
+ * @param prefix - Prefix label for the warning.
178
+ */
82
179
  function writeWarning(message, prefix = "Warning") {
83
- const formatted = `${prefix}: ${message}`;
84
- writeErrorLine(formatted);
180
+ writeErrorLine(`${prefix}: ${message}`);
85
181
  }
86
- // Annotate the CommonJS export names for ESM import in node:
87
- 0 && (module.exports = {
88
- clearLine,
89
- cursorTo,
90
- getColumns,
91
- getRows,
92
- isTTY,
93
- stderr,
94
- writeError,
95
- writeErrorFormatted,
96
- writeErrorLine,
97
- writeStackTrace,
98
- writeWarning
99
- });
182
+
183
+ //#endregion
184
+ exports.clearLine = clearLine;
185
+ exports.cursorTo = cursorTo;
186
+ exports.getColumns = getColumns;
187
+ exports.getRows = getRows;
188
+ exports.isTTY = isTTY;
189
+ exports.stderr = stderr;
190
+ exports.writeError = writeError;
191
+ exports.writeErrorFormatted = writeErrorFormatted;
192
+ exports.writeErrorLine = writeErrorLine;
193
+ exports.writeStackTrace = writeStackTrace;
194
+ exports.writeWarning = writeWarning;
@@ -1,118 +1,201 @@
1
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 stdout_exports = {};
32
- __export(stdout_exports, {
33
- clearLine: () => clearLine,
34
- clearScreenDown: () => clearScreenDown,
35
- cursorTo: () => cursorTo,
36
- ensureCursorOnExit: () => ensureCursorOnExit,
37
- getColumns: () => getColumns,
38
- getRows: () => getRows,
39
- hideCursor: () => hideCursor,
40
- isTTY: () => isTTY,
41
- showCursor: () => showCursor,
42
- stdout: () => stdout,
43
- write: () => write,
44
- writeLine: () => writeLine
45
- });
46
- module.exports = __toCommonJS(stdout_exports);
47
- var import_node_process = __toESM(require("node:process"));
48
- var import_node_tty = require("node:tty");
49
- var import_internal = require("./_internal");
50
- const stdout = import_node_process.default.stdout;
2
+ /* Socket Lib - Built with rolldown */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_runtime = require('../_virtual/_rolldown/runtime.js');
5
+ const require_stdio__internal = require('./_internal.js');
6
+ let node_process = require("node:process");
7
+ node_process = require_runtime.__toESM(node_process);
8
+ let node_tty = require("node:tty");
9
+
10
+ //#region src/stdio/stdout.ts
11
+ /**
12
+ * @file Standard output stream utilities. Provides utilities for writing to
13
+ * stdout with formatting and control.
14
+ */
15
+ const stdout = node_process.default.stdout;
51
16
  let _cursorExitRegistered = false;
17
+ /**
18
+ * Clear the current line on stdout. Only works in TTY environments.
19
+ *
20
+ * @example
21
+ * ;```ts
22
+ * write('Processing...')
23
+ * clearLine()
24
+ * write('Done!')
25
+ * ```
26
+ */
52
27
  function clearLine() {
53
- (0, import_internal.clearLineOn)(stdout);
28
+ require_stdio__internal.clearLineOn(stdout);
54
29
  }
30
+ /**
31
+ * Clear screen from cursor position down to bottom. Only works in TTY
32
+ * environments.
33
+ *
34
+ * @example
35
+ * ;```ts
36
+ * cursorTo(0, 5)
37
+ * clearScreenDown() // Clear from row 5 to bottom
38
+ * ```
39
+ */
55
40
  function clearScreenDown() {
56
- if (stdout.isTTY) {
57
- stdout.clearScreenDown();
58
- }
41
+ if (stdout.isTTY) stdout.clearScreenDown();
59
42
  }
43
+ /**
44
+ * Move cursor to specific position on stdout. Only works in TTY environments.
45
+ *
46
+ * @example
47
+ * ;```ts
48
+ * cursorTo(0) // Move to start of line
49
+ * cursorTo(10, 5) // Move to column 10, row 5
50
+ * ```
51
+ *
52
+ * @param x - Column position (0-based)
53
+ * @param y - Row position (0-based, optional)
54
+ */
60
55
  function cursorTo(x, y) {
61
- (0, import_internal.cursorToOn)(stdout, x, y);
56
+ require_stdio__internal.cursorToOn(stdout, x, y);
62
57
  }
58
+ /**
59
+ * Register handlers to ensure cursor is shown on process exit. Prevents hidden
60
+ * cursor after abnormal termination. Handles SIGINT (Ctrl+C) and SIGTERM
61
+ * signals.
62
+ *
63
+ * @example
64
+ * ;```ts
65
+ * ensureCursorOnExit()
66
+ * hideCursor()
67
+ * // Even if process crashes, cursor will be restored
68
+ * ```
69
+ */
63
70
  function ensureCursorOnExit() {
64
- if (_cursorExitRegistered) {
65
- return;
66
- }
67
- _cursorExitRegistered = true;
68
- import_node_process.default.on("exit", showCursor);
69
- import_node_process.default.on("SIGINT", () => {
70
- showCursor();
71
- import_node_process.default.exit(130);
72
- });
73
- import_node_process.default.on("SIGTERM", () => {
74
- showCursor();
75
- import_node_process.default.exit(143);
76
- });
71
+ if (_cursorExitRegistered) return;
72
+ _cursorExitRegistered = true;
73
+ node_process.default.on("exit", showCursor);
74
+ node_process.default.on("SIGINT", () => {
75
+ showCursor();
76
+ node_process.default.exit(130);
77
+ });
78
+ node_process.default.on("SIGTERM", () => {
79
+ showCursor();
80
+ node_process.default.exit(143);
81
+ });
77
82
  }
83
+ /**
84
+ * Get the number of columns (width) in the terminal.
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * const width = getColumns()
89
+ * console.log(`Terminal is ${width} characters wide`)
90
+ * ```
91
+ *
92
+ * @default 80
93
+ *
94
+ * @returns Terminal width in characters
95
+ */
78
96
  function getColumns() {
79
- return (0, import_internal.getColumnsOf)(stdout);
97
+ return require_stdio__internal.getColumnsOf(stdout);
80
98
  }
99
+ /**
100
+ * Get the number of rows (height) in the terminal.
101
+ *
102
+ * @example
103
+ * ```ts
104
+ * const height = getRows()
105
+ * console.log(`Terminal is ${height} lines tall`)
106
+ * ```
107
+ *
108
+ * @default 24
109
+ *
110
+ * @returns Terminal height in lines
111
+ */
81
112
  function getRows() {
82
- return (0, import_internal.getRowsOf)(stdout);
113
+ return require_stdio__internal.getRowsOf(stdout);
83
114
  }
115
+ /**
116
+ * Hide the cursor on stdout. Useful for cleaner output during animations.
117
+ *
118
+ * @example
119
+ * ;```ts
120
+ * hideCursor()
121
+ * // Show animation
122
+ * showCursor()
123
+ * ```
124
+ */
84
125
  function hideCursor() {
85
- if (stdout.isTTY && stdout instanceof import_node_tty.WriteStream) {
86
- stdout.write("\x1B[?25l");
87
- }
126
+ if (stdout.isTTY && stdout instanceof node_tty.WriteStream) stdout.write("\x1B[?25l");
88
127
  }
128
+ /**
129
+ * Check if stdout is connected to a TTY (terminal).
130
+ *
131
+ * @example
132
+ * ;```ts
133
+ * if (isTTY()) {
134
+ * // Show interactive UI
135
+ * } else {
136
+ * // Use simple text output
137
+ * }
138
+ * ```
139
+ *
140
+ * @returns `true` if stdout is a TTY, `false` if piped/redirected
141
+ */
89
142
  function isTTY() {
90
- return (0, import_internal.isTTYOf)(stdout);
143
+ return require_stdio__internal.isTTYOf(stdout);
91
144
  }
145
+ /**
146
+ * Show the cursor on stdout. Should be called after `hideCursor()`.
147
+ *
148
+ * @example
149
+ * ;```ts
150
+ * hideCursor()
151
+ * // Show animation
152
+ * showCursor()
153
+ * ```
154
+ */
92
155
  function showCursor() {
93
- if (stdout.isTTY && stdout instanceof import_node_tty.WriteStream) {
94
- stdout.write("\x1B[?25h");
95
- }
156
+ if (stdout.isTTY && stdout instanceof node_tty.WriteStream) stdout.write("\x1B[?25h");
96
157
  }
158
+ /**
159
+ * Write text to stdout without adding a newline.
160
+ *
161
+ * @example
162
+ * ;```ts
163
+ * write('Loading...')
164
+ * // Later: clear and update
165
+ * ```
166
+ *
167
+ * @param text - Text to write.
168
+ */
97
169
  function write(text) {
98
- stdout.write(text);
170
+ stdout.write(text);
99
171
  }
172
+ /**
173
+ * Write a line to stdout with trailing newline.
174
+ *
175
+ * @example
176
+ * ;```ts
177
+ * writeLine('Hello, world!')
178
+ * writeLine() // Write empty line
179
+ * ```
180
+ *
181
+ * @default text ''
182
+ *
183
+ * @param text - Text to write.
184
+ */
100
185
  function writeLine(text = "") {
101
- stdout.write(`${text}
102
- `);
186
+ stdout.write(`${text}\n`);
103
187
  }
104
- // Annotate the CommonJS export names for ESM import in node:
105
- 0 && (module.exports = {
106
- clearLine,
107
- clearScreenDown,
108
- cursorTo,
109
- ensureCursorOnExit,
110
- getColumns,
111
- getRows,
112
- hideCursor,
113
- isTTY,
114
- showCursor,
115
- stdout,
116
- write,
117
- writeLine
118
- });
188
+
189
+ //#endregion
190
+ exports.clearLine = clearLine;
191
+ exports.clearScreenDown = clearScreenDown;
192
+ exports.cursorTo = cursorTo;
193
+ exports.ensureCursorOnExit = ensureCursorOnExit;
194
+ exports.getColumns = getColumns;
195
+ exports.getRows = getRows;
196
+ exports.hideCursor = hideCursor;
197
+ exports.isTTY = isTTY;
198
+ exports.showCursor = showCursor;
199
+ exports.stdout = stdout;
200
+ exports.write = write;
201
+ exports.writeLine = writeLine;
@@ -1,55 +1,63 @@
1
1
  "use strict";
2
- /* Socket Lib - Built with esbuild */
3
- "use strict";
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
- var parallel_exports = {};
22
- __export(parallel_exports, {
23
- parallelEach: () => parallelEach,
24
- parallelMap: () => parallelMap
25
- });
26
- module.exports = __toCommonJS(parallel_exports);
27
- var import_streaming_iterables = require("../external/streaming-iterables");
28
- var import_options = require("../promises/options");
29
- var import_retry = require("../promises/retry");
30
- // @__NO_SIDE_EFFECTS__
2
+ /* Socket Lib - Built with rolldown */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_promises_options = require('../promises/options.js');
5
+ const require_promises_retry = require('../promises/retry.js');
6
+ let src_external_streaming_iterables = require("../external/streaming-iterables");
7
+
8
+ //#region src/streams/parallel.ts
9
+ /**
10
+ * @file Parallel iteration helpers `parallelMap()` and the fire-and-forget
11
+ * `parallelEach()`. Built on top of `streaming-iterables.parallelMap` with
12
+ * the project's `pRetry` wrapper applied per item.
13
+ */
14
+ /**
15
+ * Execute a function for each item in an iterable in parallel.
16
+ *
17
+ * @example
18
+ * ;```typescript
19
+ * const urls = ['https://a.io', 'https://b.io']
20
+ * await parallelEach(
21
+ * urls,
22
+ * async url => {
23
+ * await fetch(url)
24
+ * },
25
+ * { concurrency: 4 },
26
+ * )
27
+ * ```
28
+ */
29
+ /* @__NO_SIDE_EFFECTS__ */
31
30
  async function parallelEach(iterable, func, options) {
32
- for await (const _ of /* @__PURE__ */ parallelMap(iterable, func, options)) {
33
- }
31
+ for await (const _ of /* @__PURE__ */ parallelMap(iterable, func, options));
34
32
  }
35
- // @__NO_SIDE_EFFECTS__
33
+ /**
34
+ * Map over an iterable in parallel with concurrency control.
35
+ *
36
+ * @example
37
+ * ;```typescript
38
+ * const ids = [1, 2, 3]
39
+ * for await (const result of parallelMap(
40
+ * ids,
41
+ * async id => {
42
+ * return await fetchData(id)
43
+ * },
44
+ * 4,
45
+ * )) {
46
+ * console.log(result)
47
+ * }
48
+ * ```
49
+ */
50
+ /* @__NO_SIDE_EFFECTS__ */
36
51
  function parallelMap(iterable, func, options) {
37
- const opts = (0, import_options.normalizeIterationOptions)(options);
38
- const result = (0, import_streaming_iterables.parallelMap)(
39
- opts.concurrency,
40
- async (item) => {
41
- const result2 = await (0, import_retry.pRetry)((...args) => func(args[0]), {
42
- ...opts.retries,
43
- args: [item]
44
- });
45
- return result2;
46
- },
47
- iterable
48
- );
49
- return result;
52
+ const opts = /* @__PURE__ */ require_promises_options.normalizeIterationOptions(options);
53
+ return (0, src_external_streaming_iterables.parallelMap)(opts.concurrency, async (item) => {
54
+ return await /* @__PURE__ */ require_promises_retry.pRetry((...args) => func(args[0]), {
55
+ ...opts.retries,
56
+ args: [item]
57
+ });
58
+ }, iterable);
50
59
  }
51
- // Annotate the CommonJS export names for ESM import in node:
52
- 0 && (module.exports = {
53
- parallelEach,
54
- parallelMap
55
- });
60
+
61
+ //#endregion
62
+ exports.parallelEach = parallelEach;
63
+ exports.parallelMap = parallelMap;