@socketsecurity/lib 6.0.3 → 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 (542) hide show
  1. package/CHANGELOG.md +16 -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.js +94 -65
  6. package/dist/ai/spawn.js +172 -194
  7. package/dist/ai/types.js +1 -17
  8. package/dist/ai/worktree.js +160 -183
  9. package/dist/ansi/constants.js +16 -38
  10. package/dist/ansi/strip.js +44 -41
  11. package/dist/archives/_internal.js +64 -73
  12. package/dist/archives/detect.js +30 -43
  13. package/dist/archives/extract.js +43 -50
  14. package/dist/archives/tar.js +197 -228
  15. package/dist/archives/types.js +1 -17
  16. package/dist/archives/zip.js +85 -121
  17. package/dist/argv/flag-predicates.js +203 -101
  18. package/dist/argv/flag-types.js +96 -113
  19. package/dist/argv/parse-args-string.d.ts +16 -14
  20. package/dist/argv/parse-args-string.js +42 -39
  21. package/dist/argv/parse.js +145 -163
  22. package/dist/arrays/_internal.js +65 -48
  23. package/dist/arrays/chunk.js +51 -40
  24. package/dist/arrays/join.js +87 -35
  25. package/dist/arrays/predicates.js +46 -28
  26. package/dist/arrays/unique.js +45 -31
  27. package/dist/bin/_internal.js +34 -42
  28. package/dist/bin/check-primordials.js +175 -233
  29. package/dist/bin/check.js +51 -72
  30. package/dist/bin/exec.js +70 -74
  31. package/dist/bin/find.js +151 -134
  32. package/dist/bin/resolve.js +180 -246
  33. package/dist/bin/shadow.js +24 -33
  34. package/dist/bin/socket-lib.js +51 -73
  35. package/dist/bin/types.js +1 -17
  36. package/dist/bin/which.js +211 -146
  37. package/dist/cacache/_internal.js +25 -40
  38. package/dist/cacache/clear.js +79 -72
  39. package/dist/cacache/read.js +48 -46
  40. package/dist/cacache/tmp.js +29 -36
  41. package/dist/cacache/types.js +1 -17
  42. package/dist/cacache/write.js +43 -48
  43. package/dist/cache/ttl/store.js +232 -288
  44. package/dist/cache/ttl/types.js +1 -17
  45. package/dist/checks/primordials-defaults.js +83 -89
  46. package/dist/checks/primordials.js +225 -277
  47. package/dist/colors/convert.js +45 -37
  48. package/dist/colors/palette.js +88 -45
  49. package/dist/colors/socket-palette.js +74 -84
  50. package/dist/colors/types.js +1 -17
  51. package/dist/compression/_internal.js +57 -72
  52. package/dist/compression/brotli.js +94 -127
  53. package/dist/compression/gzip.js +95 -121
  54. package/dist/compression/types.js +1 -17
  55. package/dist/constants/agents.js +61 -113
  56. package/dist/constants/encoding.js +19 -42
  57. package/dist/constants/github.js +12 -30
  58. package/dist/constants/licenses.js +48 -63
  59. package/dist/constants/lifecycle-script-names.js +31 -45
  60. package/dist/constants/maintained-node-versions.js +22 -37
  61. package/dist/constants/node.js +226 -167
  62. package/dist/constants/package-default-node-range.js +16 -41
  63. package/dist/constants/package-default-socket-categories.js +12 -30
  64. package/dist/constants/packages.js +77 -126
  65. package/dist/constants/platform.js +27 -49
  66. package/dist/constants/sentinels.js +23 -48
  67. package/dist/constants/socket.js +42 -87
  68. package/dist/constants/testing.js +15 -34
  69. package/dist/constants/time.js +16 -36
  70. package/dist/constants/typescript.js +32 -52
  71. package/dist/cover/code.js +111 -142
  72. package/dist/cover/formatters.js +118 -101
  73. package/dist/cover/type.js +50 -76
  74. package/dist/cover/types.js +1 -17
  75. package/dist/crypto/hash.js +54 -46
  76. package/dist/debug/_internal.js +62 -71
  77. package/dist/debug/caller-info.js +53 -64
  78. package/dist/debug/namespace.js +80 -90
  79. package/dist/debug/output.js +172 -188
  80. package/dist/debug/types.js +1 -17
  81. package/dist/dlx/_internal.js +24 -43
  82. package/dist/dlx/arborist.js +162 -160
  83. package/dist/dlx/binary-cache.js +228 -200
  84. package/dist/dlx/binary-download.js +172 -211
  85. package/dist/dlx/binary-resolution.js +165 -157
  86. package/dist/dlx/binary-types.js +1 -17
  87. package/dist/dlx/binary.js +149 -189
  88. package/dist/dlx/cache.js +45 -30
  89. package/dist/dlx/detect.js +245 -159
  90. package/dist/dlx/dir.js +67 -51
  91. package/dist/dlx/firewall.js +62 -100
  92. package/dist/dlx/lockfile.js +122 -127
  93. package/dist/dlx/manifest.js +264 -274
  94. package/dist/dlx/package.js +241 -244
  95. package/dist/dlx/packages.js +99 -96
  96. package/dist/dlx/paths.js +73 -59
  97. package/dist/dlx/spec.js +52 -60
  98. package/dist/dlx/types.js +1 -17
  99. package/dist/eco/cargo/lockfile-format.js +19 -36
  100. package/dist/eco/cargo/manifest-format.js +17 -35
  101. package/dist/eco/cargo/parse-lockfile.js +210 -237
  102. package/dist/eco/manifest/analyze-lockfile.js +46 -63
  103. package/dist/eco/manifest/detect-format.js +66 -90
  104. package/dist/eco/manifest/find-packages.js +39 -64
  105. package/dist/eco/manifest/get-package-versions.js +27 -48
  106. package/dist/eco/manifest/get-package.js +21 -40
  107. package/dist/eco/manifest/manifest-error.js +14 -35
  108. package/dist/eco/manifest/parse-lockfile.js +40 -86
  109. package/dist/eco/manifest/parse-manifest.js +26 -43
  110. package/dist/eco/manifest/parse.js +26 -47
  111. package/dist/eco/manifest/types.js +1 -17
  112. package/dist/eco/npm/bun/exec.js +23 -32
  113. package/dist/eco/npm/manifest-format.js +21 -35
  114. package/dist/eco/npm/npm/exec.js +51 -61
  115. package/dist/eco/npm/npm/extract-package-name-from-path.js +28 -50
  116. package/dist/eco/npm/npm/flags.js +80 -52
  117. package/dist/eco/npm/npm/lockfile-format.js +21 -40
  118. package/dist/eco/npm/npm/parse-git-url.js +26 -40
  119. package/dist/eco/npm/npm/parse-lockfile.js +184 -210
  120. package/dist/eco/npm/parse-package-json.js +71 -102
  121. package/dist/eco/npm/pnpm/detect-pnpm-version.js +22 -43
  122. package/dist/eco/npm/pnpm/exec.js +51 -62
  123. package/dist/eco/npm/pnpm/flags.js +75 -68
  124. package/dist/eco/npm/pnpm/lockfile-format.js +19 -36
  125. package/dist/eco/npm/pnpm/parse-lockfile.js +235 -259
  126. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +37 -47
  127. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +36 -49
  128. package/dist/eco/npm/script.js +82 -90
  129. package/dist/eco/npm/vlt/exec.js +24 -32
  130. package/dist/eco/npm/yarnpkg/yarn/exec.js +60 -59
  131. package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +20 -36
  132. package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +194 -242
  133. package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +37 -61
  134. package/dist/eco/purl.js +50 -60
  135. package/dist/eco/types.js +1 -17
  136. package/dist/effects/pulse-frames.js +64 -65
  137. package/dist/effects/shimmer-keyframes.js +71 -52
  138. package/dist/effects/shimmer-terminal.js +81 -50
  139. package/dist/effects/shimmer.js +290 -153
  140. package/dist/env/boolean.js +42 -43
  141. package/dist/env/case-insensitive.js +54 -39
  142. package/dist/env/ci.js +29 -31
  143. package/dist/env/debug.js +28 -31
  144. package/dist/env/github.js +144 -59
  145. package/dist/env/home.js +38 -31
  146. package/dist/env/locale.js +59 -39
  147. package/dist/env/node-auth-token.js +28 -31
  148. package/dist/env/node-env.js +28 -31
  149. package/dist/env/npm.js +94 -47
  150. package/dist/env/number.js +50 -51
  151. package/dist/env/package-manager.js +95 -83
  152. package/dist/env/path.js +28 -31
  153. package/dist/env/pre-commit.js +30 -32
  154. package/dist/env/proxy.js +121 -122
  155. package/dist/env/rewire.js +204 -96
  156. package/dist/env/shell.js +28 -31
  157. package/dist/env/socket-cli.js +233 -81
  158. package/dist/env/socket.js +521 -156
  159. package/dist/env/string.js +43 -44
  160. package/dist/env/temp-dir.js +59 -39
  161. package/dist/env/term.js +28 -31
  162. package/dist/env/test.js +65 -43
  163. package/dist/env/types.js +1 -17
  164. package/dist/env/windows.js +78 -43
  165. package/dist/env/xdg.js +62 -39
  166. package/dist/errors/message.js +40 -46
  167. package/dist/errors/predicates.js +61 -49
  168. package/dist/errors/stack.js +24 -36
  169. package/dist/events/exit/_internal.js +86 -103
  170. package/dist/events/exit/handler.js +48 -55
  171. package/dist/events/exit/intercept.js +49 -70
  172. package/dist/events/exit/lifecycle.js +92 -101
  173. package/dist/events/exit/signals.js +25 -31
  174. package/dist/events/exit/types.js +1 -17
  175. package/dist/events/warning/handler.js +43 -40
  176. package/dist/events/warning/suppress.js +111 -90
  177. package/dist/external/@npmcli/package-json/lib/read-package.js +132 -153
  178. package/dist/external/@npmcli/package-json/lib/sort.js +73 -105
  179. package/dist/external/@npmcli/package-json.js +12705 -15140
  180. package/dist/external/@npmcli/promise-spawn.js +451 -472
  181. package/dist/external/@sinclair/typebox/value.js +7443 -9002
  182. package/dist/external/@sinclair/typebox.js +7516 -7885
  183. package/dist/external/@socketregistry/is-unicode-supported.js +31 -39
  184. package/dist/external/@socketregistry/packageurl-js.js +6127 -7369
  185. package/dist/external/@socketregistry/yocto-spinner.js +394 -455
  186. package/dist/external/@yarnpkg/extensions.js +435 -1022
  187. package/dist/external/adm-zip.js +2313 -2673
  188. package/dist/external/debug.js +700 -687
  189. package/dist/external/external-pack.js +2658 -3171
  190. package/dist/external/fast-sort.js +124 -138
  191. package/dist/external/get-east-asian-width.js +70 -64
  192. package/dist/external/libnpmexec.js +28 -31
  193. package/dist/external/npm-pack.js +43617 -50137
  194. package/dist/external/p-map.js +198 -222
  195. package/dist/external/pico-pack.js +6735 -7304
  196. package/dist/external/pony-cause.js +143 -139
  197. package/dist/external/shell-quote.js +226 -0
  198. package/dist/external/spdx-pack.js +1283 -1403
  199. package/dist/external/streaming-iterables.js +835 -1052
  200. package/dist/external/tar-fs.js +2769 -3048
  201. package/dist/external/which.js +267 -251
  202. package/dist/external/yargs-parser.js +851 -1074
  203. package/dist/external-tools/bazel/asset-names.js +98 -90
  204. package/dist/external-tools/bazel/from-download.js +52 -46
  205. package/dist/external-tools/bazel/from-path.js +27 -38
  206. package/dist/external-tools/bazel/read-bazel-version-file.js +35 -57
  207. package/dist/external-tools/bazel/resolve-asset-url.js +24 -39
  208. package/dist/external-tools/bazel/resolve-bazel-version.js +34 -56
  209. package/dist/external-tools/bazel/resolve.js +44 -58
  210. package/dist/external-tools/bazel/types.js +1 -17
  211. package/dist/external-tools/cdxgen/asset-names.js +59 -66
  212. package/dist/external-tools/cdxgen/from-download.js +52 -80
  213. package/dist/external-tools/cdxgen/from-path.js +19 -37
  214. package/dist/external-tools/cdxgen/from-vfs.js +22 -43
  215. package/dist/external-tools/cdxgen/resolve.js +48 -63
  216. package/dist/external-tools/cdxgen/types.js +1 -17
  217. package/dist/external-tools/from-download.js +107 -67
  218. package/dist/external-tools/janus/asset-names.js +44 -51
  219. package/dist/external-tools/janus/from-download.js +45 -70
  220. package/dist/external-tools/janus/from-path.js +19 -37
  221. package/dist/external-tools/janus/from-vfs.js +22 -43
  222. package/dist/external-tools/janus/resolve.js +45 -63
  223. package/dist/external-tools/janus/types.js +1 -17
  224. package/dist/external-tools/jre/asset-names.js +109 -82
  225. package/dist/external-tools/jre/detect-platform-arch.js +25 -49
  226. package/dist/external-tools/jre/from-download.js +71 -67
  227. package/dist/external-tools/jre/from-java-home.js +27 -54
  228. package/dist/external-tools/jre/from-path.js +27 -49
  229. package/dist/external-tools/jre/from-vfs.js +39 -60
  230. package/dist/external-tools/jre/resolve.js +55 -68
  231. package/dist/external-tools/jre/types.js +1 -17
  232. package/dist/external-tools/manifest.js +130 -150
  233. package/dist/external-tools/opengrep/asset-names.js +60 -72
  234. package/dist/external-tools/opengrep/from-download.js +58 -80
  235. package/dist/external-tools/opengrep/from-path.js +19 -37
  236. package/dist/external-tools/opengrep/from-vfs.js +23 -43
  237. package/dist/external-tools/opengrep/resolve.js +43 -63
  238. package/dist/external-tools/opengrep/types.js +1 -17
  239. package/dist/external-tools/sbt/asset-names.js +21 -30
  240. package/dist/external-tools/sbt/from-download.js +50 -61
  241. package/dist/external-tools/sbt/from-path.js +23 -38
  242. package/dist/external-tools/sbt/from-vfs.js +30 -44
  243. package/dist/external-tools/sbt/resolve.js +45 -63
  244. package/dist/external-tools/sbt/types.js +1 -17
  245. package/dist/external-tools/synp/asset-names.js +11 -29
  246. package/dist/external-tools/synp/from-download.js +24 -41
  247. package/dist/external-tools/synp/from-path.js +19 -37
  248. package/dist/external-tools/synp/from-vfs.js +22 -43
  249. package/dist/external-tools/synp/resolve.js +43 -62
  250. package/dist/external-tools/synp/types.js +1 -17
  251. package/dist/external-tools/trivy/asset-names.js +51 -62
  252. package/dist/external-tools/trivy/from-download.js +42 -64
  253. package/dist/external-tools/trivy/from-path.js +19 -37
  254. package/dist/external-tools/trivy/from-vfs.js +22 -43
  255. package/dist/external-tools/trivy/resolve.js +43 -63
  256. package/dist/external-tools/trivy/types.js +1 -17
  257. package/dist/external-tools/trufflehog/asset-names.js +54 -66
  258. package/dist/external-tools/trufflehog/from-download.js +44 -62
  259. package/dist/external-tools/trufflehog/from-path.js +21 -37
  260. package/dist/external-tools/trufflehog/from-vfs.js +26 -43
  261. package/dist/external-tools/trufflehog/resolve.js +43 -63
  262. package/dist/external-tools/trufflehog/types.js +1 -17
  263. package/dist/external-tools/uv/asset-names.js +64 -74
  264. package/dist/external-tools/uv/from-download.js +44 -65
  265. package/dist/external-tools/uv/from-path.js +19 -37
  266. package/dist/external-tools/uv/from-vfs.js +22 -43
  267. package/dist/external-tools/uv/resolve.js +42 -63
  268. package/dist/external-tools/uv/types.js +1 -17
  269. package/dist/fs/_internal.js +40 -42
  270. package/dist/fs/access.js +57 -54
  271. package/dist/fs/encoding.js +80 -97
  272. package/dist/fs/find-up.js +126 -125
  273. package/dist/fs/inspect.js +168 -99
  274. package/dist/fs/path-cache.js +31 -32
  275. package/dist/fs/read-dir.js +102 -79
  276. package/dist/fs/read-file.js +177 -118
  277. package/dist/fs/read-json-cache.js +150 -134
  278. package/dist/fs/read-json.js +172 -187
  279. package/dist/fs/resolve-module.js +35 -58
  280. package/dist/fs/safe.js +278 -169
  281. package/dist/fs/types.js +1 -17
  282. package/dist/fs/unique.js +52 -48
  283. package/dist/fs/validate.js +56 -40
  284. package/dist/fs/write-json.js +109 -75
  285. package/dist/git/_internal.js +251 -216
  286. package/dist/git/changed.js +191 -74
  287. package/dist/git/repo.js +118 -104
  288. package/dist/git/staged.js +172 -62
  289. package/dist/git/types.js +1 -17
  290. package/dist/git/unstaged.js +175 -62
  291. package/dist/github/constants.js +25 -33
  292. package/dist/github/errors.js +46 -38
  293. package/dist/github/fetch.js +137 -82
  294. package/dist/github/ghsa.js +217 -151
  295. package/dist/github/refs-cache.js +54 -43
  296. package/dist/github/refs-graphql.js +97 -89
  297. package/dist/github/refs-rest.js +70 -101
  298. package/dist/github/refs.js +105 -64
  299. package/dist/github/token.js +96 -48
  300. package/dist/github/types.js +1 -17
  301. package/dist/globs/_internal.js +73 -82
  302. package/dist/globs/defaults.js +40 -59
  303. package/dist/globs/match.js +93 -77
  304. package/dist/globs/matcher.js +104 -92
  305. package/dist/globs/stream.js +43 -55
  306. package/dist/globs/types.js +1 -17
  307. package/dist/http-request/_internal.js +11 -38
  308. package/dist/http-request/browser-fetch.js +19 -29
  309. package/dist/http-request/browser.js +188 -206
  310. package/dist/http-request/checksums.js +101 -65
  311. package/dist/http-request/download-types.js +1 -17
  312. package/dist/http-request/download.js +195 -196
  313. package/dist/http-request/errors.js +39 -47
  314. package/dist/http-request/headers.js +95 -80
  315. package/dist/http-request/http-request.js +10 -35
  316. package/dist/http-request/node.js +71 -97
  317. package/dist/http-request/request-attempt.js +232 -285
  318. package/dist/http-request/request-types.js +1 -17
  319. package/dist/http-request/request.js +106 -108
  320. package/dist/http-request/response-reader.js +47 -51
  321. package/dist/http-request/response-types.js +22 -38
  322. package/dist/http-request/user-agent.js +73 -55
  323. package/dist/integrity.js +105 -106
  324. package/dist/ipc/_internal.js +34 -48
  325. package/dist/ipc/directory.js +55 -63
  326. package/dist/ipc/paths.js +52 -45
  327. package/dist/ipc/types.js +1 -17
  328. package/dist/ipc/write.js +81 -74
  329. package/dist/ipc-cli/get.js +29 -56
  330. package/dist/ipc-cli/types.js +1 -17
  331. package/dist/json/edit.js +182 -242
  332. package/dist/json/format.js +202 -103
  333. package/dist/json/parse.js +206 -109
  334. package/dist/json/types.js +1 -17
  335. package/dist/links/create.js +93 -60
  336. package/dist/links/types.js +1 -17
  337. package/dist/logger/_internal.js +109 -73
  338. package/dist/logger/browser.js +45 -56
  339. package/dist/logger/colors.js +31 -49
  340. package/dist/logger/console.js +89 -112
  341. package/dist/logger/default.js +19 -33
  342. package/dist/logger/logger.js +5 -29
  343. package/dist/logger/node.js +794 -854
  344. package/dist/logger/symbols-builder.js +54 -56
  345. package/dist/logger/symbols.js +135 -118
  346. package/dist/logger/types.js +1 -17
  347. package/dist/memo/_internal.js +39 -49
  348. package/dist/memo/async.js +133 -117
  349. package/dist/memo/clear.js +25 -34
  350. package/dist/memo/decorator.js +43 -37
  351. package/dist/memo/memoize.js +97 -88
  352. package/dist/memo/once.js +42 -41
  353. package/dist/memo/types.js +1 -17
  354. package/dist/memo/weak.js +45 -41
  355. package/dist/node/async-hooks.js +9 -30
  356. package/dist/node/child-process.js +9 -30
  357. package/dist/node/crypto.js +9 -30
  358. package/dist/node/events.js +9 -30
  359. package/dist/node/fs-promises.js +9 -30
  360. package/dist/node/fs.js +9 -30
  361. package/dist/node/http.js +9 -30
  362. package/dist/node/https.js +9 -30
  363. package/dist/node/module.js +20 -34
  364. package/dist/node/os.js +9 -30
  365. package/dist/node/path.js +9 -30
  366. package/dist/node/timers-promises.js +9 -30
  367. package/dist/node/url.js +9 -30
  368. package/dist/node/util.js +9 -30
  369. package/dist/objects/getters.js +185 -126
  370. package/dist/objects/inspect.js +85 -52
  371. package/dist/objects/mutate.js +96 -76
  372. package/dist/objects/predicates.js +112 -59
  373. package/dist/objects/sort.js +120 -76
  374. package/dist/objects/types.js +1 -17
  375. package/dist/packages/edit-class.js +198 -265
  376. package/dist/packages/edit.js +79 -86
  377. package/dist/packages/exports.js +146 -157
  378. package/dist/packages/isolation.js +159 -209
  379. package/dist/packages/licenses.js +207 -189
  380. package/dist/packages/manifest.js +134 -172
  381. package/dist/packages/normalize.js +91 -102
  382. package/dist/packages/operations.d.ts +2 -0
  383. package/dist/packages/operations.js +283 -254
  384. package/dist/packages/provenance.js +195 -245
  385. package/dist/packages/specs.js +94 -84
  386. package/dist/packages/types.js +1 -17
  387. package/dist/packages/validation.js +49 -50
  388. package/dist/paths/_internal.js +82 -86
  389. package/dist/paths/conversion.js +112 -65
  390. package/dist/paths/dirnames.js +17 -42
  391. package/dist/paths/exts.js +23 -54
  392. package/dist/paths/filenames.js +21 -50
  393. package/dist/paths/globs.js +15 -38
  394. package/dist/paths/normalize.js +215 -236
  395. package/dist/paths/packages.js +34 -49
  396. package/dist/paths/predicates.js +184 -106
  397. package/dist/paths/resolve.js +146 -128
  398. package/dist/paths/rewire.js +108 -72
  399. package/dist/paths/socket.js +252 -132
  400. package/dist/paths/walk.js +55 -60
  401. package/dist/perf/_internal.js +10 -28
  402. package/dist/perf/enabled.js +21 -30
  403. package/dist/perf/metrics.js +81 -67
  404. package/dist/perf/report.js +79 -80
  405. package/dist/perf/timer.js +180 -126
  406. package/dist/perf/types.js +1 -17
  407. package/dist/pkg-ext/data.js +29 -82
  408. package/dist/pkg-ext/types.js +1 -17
  409. package/dist/primordials/array.js +120 -198
  410. package/dist/primordials/buffer.js +28 -51
  411. package/dist/primordials/date.js +26 -51
  412. package/dist/primordials/error.js +33 -59
  413. package/dist/primordials/function.js +21 -41
  414. package/dist/primordials/globals.js +25 -48
  415. package/dist/primordials/json.js +14 -30
  416. package/dist/primordials/map-set.js +88 -152
  417. package/dist/primordials/math.js +59 -116
  418. package/dist/primordials/number.js +41 -76
  419. package/dist/primordials/object.js +56 -116
  420. package/dist/primordials/promise.js +28 -52
  421. package/dist/primordials/reflect.js +24 -52
  422. package/dist/primordials/regexp.js +25 -47
  423. package/dist/primordials/string.js +114 -167
  424. package/dist/primordials/symbol.js +40 -72
  425. package/dist/primordials/uncurry.js +38 -55
  426. package/dist/primordials/url.js +27 -66
  427. package/dist/process/_internal.js +7 -32
  428. package/dist/process/abort.js +29 -35
  429. package/dist/process/lock-instance.js +26 -30
  430. package/dist/process/lock-manager.js +279 -307
  431. package/dist/process/lock-types.js +1 -17
  432. package/dist/process/spawn/_internal.js +43 -55
  433. package/dist/process/spawn/child.js +172 -211
  434. package/dist/process/spawn/errors.js +116 -113
  435. package/dist/process/spawn/stdio.js +51 -35
  436. package/dist/process/spawn/types.js +1 -17
  437. package/dist/process/transient.js +49 -66
  438. package/dist/promises/_internal.js +31 -34
  439. package/dist/promises/iterate.js +238 -102
  440. package/dist/promises/options.js +123 -101
  441. package/dist/promises/queue.js +115 -136
  442. package/dist/promises/resolvers.js +77 -46
  443. package/dist/promises/retry.js +156 -101
  444. package/dist/promises/types.js +1 -17
  445. package/dist/regexps/escape.js +32 -30
  446. package/dist/regexps/hex.js +16 -33
  447. package/dist/regexps/spec.js +53 -81
  448. package/dist/releases/github-archives.js +127 -118
  449. package/dist/releases/github-asset-url.js +162 -146
  450. package/dist/releases/github-assets.js +37 -49
  451. package/dist/releases/github-auth.js +32 -48
  452. package/dist/releases/github-downloads.js +118 -138
  453. package/dist/releases/github-listing.js +175 -145
  454. package/dist/releases/github-retry-config.js +41 -47
  455. package/dist/releases/github-types.js +1 -17
  456. package/dist/releases/socket-btm.js +273 -192
  457. package/dist/schema/parse.js +35 -36
  458. package/dist/schema/types.js +1 -17
  459. package/dist/schema/validate.js +118 -99
  460. package/dist/sea/detect.js +57 -52
  461. package/dist/secrets/_internal.js +86 -67
  462. package/dist/secrets/find.js +96 -77
  463. package/dist/secrets/keychain.js +315 -309
  464. package/dist/secrets/linux.js +133 -135
  465. package/dist/secrets/macos.js +151 -147
  466. package/dist/secrets/rc.js +182 -181
  467. package/dist/secrets/socket-api-token.js +28 -43
  468. package/dist/secrets/types.js +1 -17
  469. package/dist/secrets/windows.js +184 -242
  470. package/dist/shadow/skip.js +51 -70
  471. package/dist/shadow/types.js +1 -17
  472. package/dist/shell/parse.d.ts +26 -0
  473. package/dist/shell/parse.js +35 -0
  474. package/dist/shell/quote.d.ts +19 -0
  475. package/dist/shell/quote.js +30 -0
  476. package/dist/smol/detect.js +67 -43
  477. package/dist/smol/http.js +33 -37
  478. package/dist/smol/https.js +31 -37
  479. package/dist/smol/manifest.js +33 -37
  480. package/dist/smol/path.js +33 -37
  481. package/dist/smol/primordial.js +35 -37
  482. package/dist/smol/purl.js +34 -37
  483. package/dist/smol/versions.js +31 -37
  484. package/dist/smol/vfs.js +46 -38
  485. package/dist/sorts/_internal.js +14 -40
  486. package/dist/sorts/natural.js +57 -64
  487. package/dist/sorts/semver.js +33 -43
  488. package/dist/sorts/strings.js +24 -30
  489. package/dist/sorts/types.js +1 -17
  490. package/dist/spinner/default.js +72 -63
  491. package/dist/spinner/format.js +86 -71
  492. package/dist/spinner/spinner.js +749 -797
  493. package/dist/spinner/types.js +1 -17
  494. package/dist/spinner/with.js +193 -137
  495. package/dist/ssri/convert.js +64 -47
  496. package/dist/ssri/parse.js +38 -37
  497. package/dist/ssri/validate.js +51 -34
  498. package/dist/stdio/_internal.js +50 -46
  499. package/dist/stdio/clear.js +208 -86
  500. package/dist/stdio/divider.js +170 -97
  501. package/dist/stdio/footer.js +116 -110
  502. package/dist/stdio/header.js +117 -90
  503. package/dist/stdio/progress.js +189 -218
  504. package/dist/stdio/prompts.js +244 -168
  505. package/dist/stdio/stderr.js +173 -78
  506. package/dist/stdio/stdout.js +177 -94
  507. package/dist/streams/parallel.js +58 -50
  508. package/dist/streams/transform.js +36 -45
  509. package/dist/strings/format.js +145 -63
  510. package/dist/strings/predicates.js +56 -34
  511. package/dist/strings/search.js +52 -42
  512. package/dist/strings/transform.js +113 -72
  513. package/dist/strings/types.js +1 -17
  514. package/dist/strings/width.js +89 -82
  515. package/dist/tables/bordered.js +81 -81
  516. package/dist/tables/padding.js +36 -46
  517. package/dist/tables/simple.js +62 -70
  518. package/dist/tables/types.js +1 -17
  519. package/dist/temporal/instant.js +72 -81
  520. package/dist/temporal/now.js +40 -31
  521. package/dist/temporal/slots.js +42 -36
  522. package/dist/temporal/system.js +36 -36
  523. package/dist/temporal/temporal.js +11 -41
  524. package/dist/themes/context.js +131 -69
  525. package/dist/themes/resolve.js +207 -132
  526. package/dist/themes/themes.js +225 -194
  527. package/dist/themes/types.js +1 -17
  528. package/dist/url/parse.js +48 -51
  529. package/dist/url/predicates.js +24 -31
  530. package/dist/url/search-params.js +133 -101
  531. package/dist/url/types.js +1 -17
  532. package/dist/versions/_internal.js +31 -33
  533. package/dist/versions/compare.js +80 -58
  534. package/dist/versions/modify.js +41 -39
  535. package/dist/versions/parse.js +88 -64
  536. package/dist/versions/range.js +58 -41
  537. package/dist/versions/types.js +1 -17
  538. package/dist/words/article.js +22 -30
  539. package/dist/words/capitalize.js +25 -34
  540. package/dist/words/pluralize.js +23 -31
  541. package/dist/words/types.js +1 -17
  542. package/package.json +17 -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;