@socketsecurity/lib 5.28.0 → 6.0.0

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 (1042) hide show
  1. package/CHANGELOG.md +64 -37
  2. package/README.md +1 -1
  3. package/dist/abort/signal.d.ts +28 -0
  4. package/dist/{abort.js → abort/signal.js} +12 -10
  5. package/dist/ai/discover.d.mts +50 -0
  6. package/dist/ai/discover.js +128 -0
  7. package/dist/ai/profiles.d.mts +39 -0
  8. package/dist/ai/profiles.js +61 -0
  9. package/dist/ai/spawn.d.mts +49 -0
  10. package/dist/ai/spawn.js +207 -0
  11. package/dist/ai/types.d.mts +117 -0
  12. package/dist/ai/types.js +18 -0
  13. package/dist/ai/worktree.d.mts +104 -0
  14. package/dist/ai/worktree.js +200 -0
  15. package/dist/ansi/constants.d.ts +10 -0
  16. package/dist/ansi/constants.js +45 -0
  17. package/dist/ansi/strip.d.ts +33 -0
  18. package/dist/{ansi.js → ansi/strip.js} +7 -24
  19. package/dist/archives/_internal.d.ts +39 -0
  20. package/dist/archives/_internal.js +87 -0
  21. package/dist/archives/detect.d.ts +19 -0
  22. package/dist/archives/detect.js +46 -0
  23. package/dist/archives/extract.d.ts +22 -0
  24. package/dist/archives/extract.js +53 -0
  25. package/dist/archives/tar.d.ts +42 -0
  26. package/dist/archives/tar.js +233 -0
  27. package/dist/archives/types.d.ts +34 -0
  28. package/dist/archives/types.js +18 -0
  29. package/dist/archives/zip.d.ts +20 -0
  30. package/dist/archives/zip.js +124 -0
  31. package/dist/argv/flag-predicates.d.ts +179 -0
  32. package/dist/argv/flag-predicates.js +118 -0
  33. package/dist/argv/flag-types.d.ts +123 -0
  34. package/dist/argv/flag-types.js +116 -0
  35. package/dist/argv/parse.d.ts +34 -33
  36. package/dist/argv/parse.js +6 -4
  37. package/dist/arrays/_internal.d.ts +43 -0
  38. package/dist/{arrays.js → arrays/_internal.js} +8 -41
  39. package/dist/arrays/chunk.d.ts +37 -0
  40. package/dist/arrays/chunk.js +43 -0
  41. package/dist/arrays/join.d.ts +76 -0
  42. package/dist/{env/helpers.js → arrays/join.js} +12 -18
  43. package/dist/arrays/predicates.d.ts +40 -0
  44. package/dist/arrays/predicates.js +30 -0
  45. package/dist/arrays/unique.d.ts +36 -0
  46. package/dist/arrays/unique.js +34 -0
  47. package/dist/bin/_internal.d.ts +22 -0
  48. package/dist/bin/_internal.js +43 -0
  49. package/dist/bin/check-primordials.d.ts +41 -15
  50. package/dist/bin/check-primordials.js +36 -20
  51. package/dist/bin/check.d.ts +7 -12
  52. package/dist/bin/check.js +5 -1
  53. package/dist/bin/exec.d.ts +37 -0
  54. package/dist/bin/exec.js +79 -0
  55. package/dist/bin/find.d.ts +58 -0
  56. package/dist/bin/find.js +143 -0
  57. package/dist/bin/resolve.d.ts +30 -0
  58. package/dist/bin/resolve.js +249 -0
  59. package/dist/bin/shadow.d.ts +16 -0
  60. package/dist/bin/shadow.js +36 -0
  61. package/dist/bin/socket-lib.d.ts +10 -14
  62. package/dist/bin/socket-lib.js +18 -3
  63. package/dist/bin/types.d.ts +34 -0
  64. package/dist/bin/types.js +18 -0
  65. package/dist/bin/which.d.ts +111 -0
  66. package/dist/bin/which.js +155 -0
  67. package/dist/cacache/_internal.d.ts +15 -0
  68. package/dist/cacache/_internal.js +43 -0
  69. package/dist/cacache/clear.d.ts +43 -0
  70. package/dist/cacache/clear.js +77 -0
  71. package/dist/cacache/read.d.ts +31 -0
  72. package/dist/cacache/read.js +51 -0
  73. package/dist/cacache/tmp.d.ts +18 -0
  74. package/dist/cacache/tmp.js +39 -0
  75. package/dist/cacache/types.d.ts +37 -0
  76. package/dist/cacache/types.js +18 -0
  77. package/dist/cacache/write.d.ts +31 -0
  78. package/dist/cacache/write.js +53 -0
  79. package/dist/checks/primordials.d.ts +69 -61
  80. package/dist/checks/primordials.js +141 -92
  81. package/dist/colors/convert.d.ts +35 -0
  82. package/dist/colors/convert.js +42 -0
  83. package/dist/colors/palette.d.ts +7 -0
  84. package/dist/{colors.js → colors/palette.js} +5 -17
  85. package/dist/colors/types.d.ts +29 -0
  86. package/dist/colors/types.js +18 -0
  87. package/dist/compression/_internal.d.ts +33 -0
  88. package/dist/compression/_internal.js +77 -0
  89. package/dist/compression/brotli.d.ts +82 -0
  90. package/dist/{compression.js → compression/brotli.js} +17 -145
  91. package/dist/compression/gzip.d.ts +70 -0
  92. package/dist/compression/gzip.js +142 -0
  93. package/dist/compression/types.d.ts +37 -0
  94. package/dist/compression/types.js +18 -0
  95. package/dist/constants/agents.d.ts +4 -3
  96. package/dist/constants/agents.js +7 -4
  97. package/dist/constants/encoding.d.ts +3 -3
  98. package/dist/constants/github.d.ts +2 -3
  99. package/dist/constants/licenses.d.ts +5 -5
  100. package/dist/constants/licenses.js +2 -2
  101. package/dist/constants/lifecycle-script-names.d.ts +3 -4
  102. package/dist/constants/lifecycle-script-names.js +2 -2
  103. package/dist/constants/maintained-node-versions.d.ts +1 -1
  104. package/dist/constants/maintained-node-versions.js +3 -4
  105. package/dist/constants/node.d.ts +21 -20
  106. package/dist/constants/node.js +4 -4
  107. package/dist/constants/package-default-node-range.d.ts +1 -1
  108. package/dist/constants/package-default-socket-categories.d.ts +1 -1
  109. package/dist/constants/package-default-socket-categories.js +2 -2
  110. package/dist/constants/packages.d.ts +4 -4
  111. package/dist/constants/packages.js +7 -5
  112. package/dist/constants/platform.d.ts +3 -1
  113. package/dist/constants/platform.js +3 -10
  114. package/dist/constants/{core.d.ts → sentinels.d.ts} +4 -4
  115. package/dist/constants/{core.js → sentinels.js} +3 -3
  116. package/dist/constants/socket.d.ts +4 -6
  117. package/dist/constants/socket.js +6 -9
  118. package/dist/constants/testing.d.ts +3 -3
  119. package/dist/constants/time.d.ts +3 -3
  120. package/dist/constants/typescript.d.ts +3 -3
  121. package/dist/cover/code.d.ts +11 -3
  122. package/dist/cover/code.js +26 -36
  123. package/dist/cover/formatters.d.ts +19 -15
  124. package/dist/cover/formatters.js +21 -18
  125. package/dist/cover/type.d.ts +4 -3
  126. package/dist/cover/type.js +9 -8
  127. package/dist/cover/types.d.ts +1 -1
  128. package/dist/crypto/hash.d.ts +36 -0
  129. package/dist/{crypto.js → crypto/hash.js} +17 -17
  130. package/dist/debug/_internal.d.ts +25 -0
  131. package/dist/debug/_internal.js +77 -0
  132. package/dist/debug/caller-info.d.ts +12 -0
  133. package/dist/debug/caller-info.js +67 -0
  134. package/dist/debug/namespace.d.ts +35 -0
  135. package/dist/debug/namespace.js +101 -0
  136. package/dist/{debug.d.ts → debug/output.d.ts} +23 -42
  137. package/dist/debug/output.js +209 -0
  138. package/dist/debug/types.d.ts +21 -0
  139. package/dist/debug/types.js +18 -0
  140. package/dist/dlx/_internal.d.ts +10 -0
  141. package/dist/dlx/_internal.js +47 -0
  142. package/dist/dlx/arborist.d.ts +86 -61
  143. package/dist/dlx/arborist.js +30 -35
  144. package/dist/dlx/binary-cache.d.ts +108 -0
  145. package/dist/dlx/binary-cache.js +212 -0
  146. package/dist/dlx/binary-download.d.ts +67 -0
  147. package/dist/dlx/binary-download.js +216 -0
  148. package/dist/dlx/binary-resolution.d.ts +61 -0
  149. package/dist/dlx/binary-resolution.js +164 -0
  150. package/dist/dlx/binary-types.d.ts +144 -0
  151. package/dist/dlx/binary-types.js +18 -0
  152. package/dist/dlx/binary.d.ts +39 -268
  153. package/dist/dlx/binary.js +38 -319
  154. package/dist/dlx/cache.d.ts +21 -16
  155. package/dist/dlx/cache.js +2 -2
  156. package/dist/dlx/detect.d.ts +94 -68
  157. package/dist/dlx/detect.js +32 -35
  158. package/dist/dlx/dir.d.ts +20 -18
  159. package/dist/dlx/dir.js +7 -14
  160. package/dist/dlx/firewall.d.ts +27 -0
  161. package/dist/dlx/firewall.js +107 -0
  162. package/dist/dlx/lockfile.d.ts +73 -56
  163. package/dist/dlx/lockfile.js +36 -44
  164. package/dist/dlx/manifest.d.ts +50 -51
  165. package/dist/dlx/manifest.js +51 -52
  166. package/dist/dlx/package.d.ts +83 -279
  167. package/dist/dlx/package.js +44 -266
  168. package/dist/dlx/packages.d.ts +22 -20
  169. package/dist/dlx/packages.js +15 -20
  170. package/dist/dlx/paths.d.ts +26 -23
  171. package/dist/dlx/paths.js +8 -15
  172. package/dist/dlx/spec.d.ts +25 -0
  173. package/dist/dlx/spec.js +63 -0
  174. package/dist/dlx/types.d.ts +142 -0
  175. package/dist/dlx/types.js +18 -0
  176. package/dist/eco/cargo/lockfile-format.d.ts +8 -0
  177. package/dist/eco/cargo/lockfile-format.js +39 -0
  178. package/dist/eco/cargo/manifest-format.d.ts +7 -0
  179. package/dist/eco/cargo/manifest-format.js +38 -0
  180. package/dist/eco/cargo/parse-lockfile.d.ts +84 -0
  181. package/dist/eco/cargo/parse-lockfile.js +257 -0
  182. package/dist/eco/manifest/analyze-lockfile.d.ts +10 -0
  183. package/dist/eco/manifest/analyze-lockfile.js +67 -0
  184. package/dist/eco/manifest/detect-format.d.ts +15 -0
  185. package/dist/eco/manifest/detect-format.js +98 -0
  186. package/dist/eco/manifest/find-packages.d.ts +14 -0
  187. package/dist/eco/manifest/find-packages.js +69 -0
  188. package/dist/eco/manifest/get-package-versions.d.ts +8 -0
  189. package/dist/eco/manifest/get-package-versions.js +52 -0
  190. package/dist/eco/manifest/get-package.d.ts +10 -0
  191. package/dist/eco/manifest/get-package.js +44 -0
  192. package/dist/eco/manifest/manifest-error.d.ts +18 -0
  193. package/dist/eco/manifest/manifest-error.js +37 -0
  194. package/dist/eco/manifest/parse-lockfile.d.ts +16 -0
  195. package/dist/eco/manifest/parse-lockfile.js +91 -0
  196. package/dist/eco/manifest/parse-manifest.d.ts +12 -0
  197. package/dist/eco/manifest/parse-manifest.js +48 -0
  198. package/dist/eco/manifest/parse.d.ts +9 -0
  199. package/dist/eco/manifest/parse.js +52 -0
  200. package/dist/eco/manifest/types.d.ts +10 -0
  201. package/dist/eco/manifest/types.js +18 -0
  202. package/dist/eco/npm/bun/exec.d.ts +15 -0
  203. package/dist/eco/npm/bun/exec.js +35 -0
  204. package/dist/eco/npm/manifest-format.d.ts +11 -0
  205. package/dist/eco/npm/manifest-format.js +38 -0
  206. package/dist/eco/npm/npm/exec.d.ts +24 -0
  207. package/dist/eco/npm/npm/exec.js +64 -0
  208. package/dist/eco/npm/npm/extract-package-name-from-path.d.ts +9 -0
  209. package/dist/eco/npm/npm/extract-package-name-from-path.js +54 -0
  210. package/dist/eco/npm/npm/flags.d.ts +62 -0
  211. package/dist/eco/npm/npm/flags.js +63 -0
  212. package/dist/eco/npm/npm/lockfile-format.d.ts +9 -0
  213. package/dist/eco/npm/npm/lockfile-format.js +42 -0
  214. package/dist/eco/npm/npm/parse-git-url.d.ts +13 -0
  215. package/dist/eco/npm/npm/parse-git-url.js +43 -0
  216. package/dist/eco/npm/npm/parse-lockfile.d.ts +70 -0
  217. package/dist/eco/npm/npm/parse-lockfile.js +224 -0
  218. package/dist/eco/npm/parse-package-json.d.ts +16 -0
  219. package/dist/eco/npm/parse-package-json.js +115 -0
  220. package/dist/eco/npm/pnpm/detect-pnpm-version.d.ts +7 -0
  221. package/dist/eco/npm/pnpm/detect-pnpm-version.js +47 -0
  222. package/dist/eco/npm/pnpm/exec.d.ts +26 -0
  223. package/dist/eco/npm/pnpm/exec.js +65 -0
  224. package/dist/eco/npm/pnpm/flags.d.ts +44 -0
  225. package/dist/eco/npm/pnpm/flags.js +76 -0
  226. package/dist/eco/npm/pnpm/lockfile-format.d.ts +8 -0
  227. package/dist/eco/npm/pnpm/lockfile-format.js +39 -0
  228. package/dist/eco/npm/pnpm/parse-lockfile.d.ts +69 -0
  229. package/dist/eco/npm/pnpm/parse-lockfile.js +274 -0
  230. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.d.ts +15 -0
  231. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +50 -0
  232. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.d.ts +11 -0
  233. package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +52 -0
  234. package/dist/eco/npm/script.d.ts +35 -0
  235. package/dist/eco/npm/script.js +93 -0
  236. package/dist/eco/npm/vlt/exec.d.ts +16 -0
  237. package/dist/eco/npm/vlt/exec.js +35 -0
  238. package/dist/eco/npm/yarnpkg/yarn/exec.d.ts +28 -0
  239. package/dist/eco/npm/yarnpkg/yarn/exec.js +63 -0
  240. package/dist/eco/npm/yarnpkg/yarn/lockfile-format.d.ts +9 -0
  241. package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +39 -0
  242. package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +61 -0
  243. package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +261 -0
  244. package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.d.ts +16 -0
  245. package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +68 -0
  246. package/dist/{types.d.ts → eco/purl.d.ts} +14 -26
  247. package/dist/{types.js → eco/purl.js} +3 -3
  248. package/dist/eco/types.d.ts +51 -0
  249. package/dist/eco/types.js +18 -0
  250. package/dist/effects/pulse-frames.d.ts +16 -17
  251. package/dist/effects/pulse-frames.js +4 -4
  252. package/dist/effects/shimmer-keyframes.d.ts +39 -37
  253. package/dist/effects/shimmer-terminal.d.ts +43 -42
  254. package/dist/effects/shimmer-terminal.js +3 -3
  255. package/dist/effects/shimmer.d.ts +172 -153
  256. package/dist/effects/shimmer.js +78 -76
  257. package/dist/env/boolean.d.ts +33 -0
  258. package/dist/env/boolean.js +46 -0
  259. package/dist/env/case-insensitive.d.ts +42 -0
  260. package/dist/env/case-insensitive.js +42 -0
  261. package/dist/env/ci.d.ts +11 -12
  262. package/dist/env/debug.d.ts +10 -10
  263. package/dist/env/github.d.ts +71 -74
  264. package/dist/env/home.d.ts +15 -14
  265. package/dist/env/locale.d.ts +26 -29
  266. package/dist/env/node-auth-token.d.ts +10 -10
  267. package/dist/env/node-env.d.ts +10 -10
  268. package/dist/env/npm.d.ts +45 -47
  269. package/dist/env/number.d.ts +29 -0
  270. package/dist/env/number.js +54 -0
  271. package/dist/env/package-manager.d.ts +36 -33
  272. package/dist/env/package-manager.js +3 -3
  273. package/dist/env/path.d.ts +10 -10
  274. package/dist/env/pre-commit.d.ts +11 -11
  275. package/dist/env/pre-commit.js +2 -2
  276. package/dist/env/proxy.d.ts +44 -0
  277. package/dist/env/proxy.js +126 -0
  278. package/dist/env/rewire.d.ts +105 -99
  279. package/dist/env/rewire.js +11 -8
  280. package/dist/env/shell.d.ts +10 -10
  281. package/dist/env/socket-cli.d.ts +109 -125
  282. package/dist/env/socket-cli.js +7 -12
  283. package/dist/env/socket.d.ts +347 -130
  284. package/dist/env/socket.js +107 -8
  285. package/dist/env/string.d.ts +28 -0
  286. package/dist/env/string.js +47 -0
  287. package/dist/env/temp-dir.d.ts +26 -29
  288. package/dist/env/term.d.ts +10 -10
  289. package/dist/env/test.d.ts +29 -31
  290. package/dist/env/test.js +5 -4
  291. package/dist/env/types.d.ts +62 -0
  292. package/dist/env/types.js +18 -0
  293. package/dist/env/windows.d.ts +37 -38
  294. package/dist/env/xdg.d.ts +29 -29
  295. package/dist/errors/message.d.ts +27 -0
  296. package/dist/errors/message.js +49 -0
  297. package/dist/errors/predicates.d.ts +46 -0
  298. package/dist/{errors.js → errors/predicates.js} +13 -43
  299. package/dist/errors/stack.d.ts +16 -0
  300. package/dist/errors/stack.js +39 -0
  301. package/dist/external/@npmcli/package-json/lib/read-package.js +11 -1
  302. package/dist/external/@npmcli/package-json.js +300 -82
  303. package/dist/external/@npmcli/promise-spawn.js +15 -1
  304. package/dist/external/@socketregistry/packageurl-js.js +7 -1
  305. package/dist/external/@socketregistry/yocto-spinner.js +5 -1
  306. package/dist/external/@yarnpkg/extensions.js +1 -1
  307. package/dist/external/adm-zip.js +20 -4
  308. package/dist/external/debug.js +15 -1
  309. package/dist/external/external-pack.js +20 -4
  310. package/dist/external/fast-sort.js +3 -1
  311. package/dist/external/get-east-asian-width.js +3 -1
  312. package/dist/external/libnpmexec.js +5 -1
  313. package/dist/external/npm-pack.js +344 -113
  314. package/dist/external/p-map.js +7 -1
  315. package/dist/external/pico-pack.js +17 -1
  316. package/dist/external/pony-cause.js +1 -1
  317. package/dist/external/spdx-pack.js +3 -1
  318. package/dist/external/supports-color.js +1 -1
  319. package/dist/external/tar-fs.js +15 -1
  320. package/dist/external/which.js +11 -1
  321. package/dist/external/yargs-parser.js +15 -1
  322. package/dist/external-tools/bazel/asset-names.d.ts +66 -0
  323. package/dist/external-tools/bazel/asset-names.js +96 -0
  324. package/dist/external-tools/bazel/from-download.d.ts +49 -0
  325. package/dist/external-tools/bazel/from-download.js +49 -0
  326. package/dist/external-tools/bazel/from-path.d.ts +8 -0
  327. package/dist/external-tools/bazel/from-path.js +41 -0
  328. package/dist/external-tools/bazel/read-bazel-version-file.d.ts +12 -0
  329. package/dist/external-tools/bazel/read-bazel-version-file.js +61 -0
  330. package/dist/external-tools/bazel/resolve-asset-url.d.ts +14 -0
  331. package/dist/external-tools/bazel/resolve-asset-url.js +42 -0
  332. package/dist/external-tools/bazel/resolve-bazel-version.d.ts +19 -0
  333. package/dist/external-tools/bazel/resolve-bazel-version.js +59 -0
  334. package/dist/external-tools/bazel/resolve.d.ts +35 -0
  335. package/dist/external-tools/bazel/resolve.js +68 -0
  336. package/dist/external-tools/bazel/types.d.ts +22 -0
  337. package/dist/external-tools/bazel/types.js +18 -0
  338. package/dist/external-tools/cdxgen/asset-names.d.ts +58 -0
  339. package/dist/external-tools/cdxgen/asset-names.js +79 -0
  340. package/dist/external-tools/cdxgen/from-download.d.ts +43 -0
  341. package/dist/external-tools/cdxgen/from-download.js +83 -0
  342. package/dist/external-tools/cdxgen/from-path.d.ts +5 -0
  343. package/dist/external-tools/cdxgen/from-path.js +40 -0
  344. package/dist/external-tools/cdxgen/from-vfs.d.ts +7 -0
  345. package/dist/external-tools/cdxgen/from-vfs.js +47 -0
  346. package/dist/external-tools/cdxgen/resolve.d.ts +32 -0
  347. package/dist/external-tools/cdxgen/resolve.js +73 -0
  348. package/dist/external-tools/cdxgen/types.d.ts +33 -0
  349. package/dist/external-tools/cdxgen/types.js +18 -0
  350. package/dist/external-tools/from-download.d.ts +162 -0
  351. package/dist/external-tools/from-download.js +72 -0
  352. package/dist/external-tools/janus/asset-names.d.ts +36 -0
  353. package/dist/external-tools/janus/asset-names.js +52 -0
  354. package/dist/external-tools/janus/from-download.d.ts +26 -0
  355. package/dist/external-tools/janus/from-download.js +65 -0
  356. package/dist/external-tools/janus/from-path.d.ts +5 -0
  357. package/dist/external-tools/janus/from-path.js +40 -0
  358. package/dist/external-tools/janus/from-vfs.d.ts +7 -0
  359. package/dist/external-tools/janus/from-vfs.js +47 -0
  360. package/dist/external-tools/janus/resolve.d.ts +28 -0
  361. package/dist/external-tools/janus/resolve.js +73 -0
  362. package/dist/external-tools/janus/types.d.ts +24 -0
  363. package/dist/external-tools/janus/types.js +18 -0
  364. package/dist/external-tools/jre/asset-names.d.ts +91 -0
  365. package/dist/external-tools/jre/asset-names.js +88 -0
  366. package/dist/external-tools/jre/detect-platform-arch.d.ts +8 -0
  367. package/dist/external-tools/jre/detect-platform-arch.js +52 -0
  368. package/dist/external-tools/jre/from-download.d.ts +62 -0
  369. package/dist/external-tools/jre/from-download.js +70 -0
  370. package/dist/external-tools/jre/from-java-home.d.ts +10 -0
  371. package/dist/external-tools/jre/from-java-home.js +57 -0
  372. package/dist/external-tools/jre/from-path.d.ts +9 -0
  373. package/dist/external-tools/jre/from-path.js +52 -0
  374. package/dist/external-tools/jre/from-vfs.d.ts +17 -0
  375. package/dist/external-tools/jre/from-vfs.js +64 -0
  376. package/dist/external-tools/jre/resolve.d.ts +40 -0
  377. package/dist/external-tools/jre/resolve.js +78 -0
  378. package/dist/external-tools/jre/types.d.ts +28 -0
  379. package/dist/external-tools/jre/types.js +18 -0
  380. package/dist/external-tools/manifest.d.ts +105 -0
  381. package/dist/external-tools/manifest.js +167 -0
  382. package/dist/external-tools/opengrep/asset-names.d.ts +44 -0
  383. package/dist/external-tools/opengrep/asset-names.js +78 -0
  384. package/dist/external-tools/opengrep/from-download.d.ts +17 -0
  385. package/dist/external-tools/opengrep/from-download.js +83 -0
  386. package/dist/external-tools/opengrep/from-path.d.ts +5 -0
  387. package/dist/external-tools/opengrep/from-path.js +40 -0
  388. package/dist/external-tools/opengrep/from-vfs.d.ts +8 -0
  389. package/dist/external-tools/opengrep/from-vfs.js +47 -0
  390. package/dist/external-tools/opengrep/resolve.d.ts +26 -0
  391. package/dist/external-tools/opengrep/resolve.js +73 -0
  392. package/dist/external-tools/opengrep/types.d.ts +24 -0
  393. package/dist/external-tools/opengrep/types.js +18 -0
  394. package/dist/external-tools/sbt/asset-names.d.ts +31 -0
  395. package/dist/external-tools/sbt/asset-names.js +33 -0
  396. package/dist/external-tools/sbt/from-download.d.ts +44 -0
  397. package/dist/external-tools/sbt/from-download.js +64 -0
  398. package/dist/external-tools/sbt/from-path.d.ts +8 -0
  399. package/dist/external-tools/sbt/from-path.js +41 -0
  400. package/dist/external-tools/sbt/from-vfs.d.ts +14 -0
  401. package/dist/external-tools/sbt/from-vfs.js +48 -0
  402. package/dist/external-tools/sbt/resolve.d.ts +31 -0
  403. package/dist/external-tools/sbt/resolve.js +73 -0
  404. package/dist/external-tools/sbt/types.d.ts +32 -0
  405. package/dist/external-tools/sbt/types.js +18 -0
  406. package/dist/external-tools/synp/asset-names.d.ts +14 -0
  407. package/dist/external-tools/synp/asset-names.js +32 -0
  408. package/dist/external-tools/synp/from-download.d.ts +18 -0
  409. package/dist/external-tools/synp/from-download.js +44 -0
  410. package/dist/external-tools/synp/from-path.d.ts +5 -0
  411. package/dist/external-tools/synp/from-path.js +40 -0
  412. package/dist/external-tools/synp/from-vfs.d.ts +7 -0
  413. package/dist/external-tools/synp/from-vfs.js +47 -0
  414. package/dist/external-tools/synp/resolve.d.ts +21 -0
  415. package/dist/external-tools/synp/resolve.js +72 -0
  416. package/dist/external-tools/synp/types.d.ts +19 -0
  417. package/dist/external-tools/synp/types.js +18 -0
  418. package/dist/external-tools/trivy/asset-names.d.ts +34 -0
  419. package/dist/external-tools/trivy/asset-names.js +68 -0
  420. package/dist/external-tools/trivy/from-download.d.ts +17 -0
  421. package/dist/external-tools/trivy/from-download.js +67 -0
  422. package/dist/external-tools/trivy/from-path.d.ts +5 -0
  423. package/dist/external-tools/trivy/from-path.js +40 -0
  424. package/dist/external-tools/trivy/from-vfs.d.ts +7 -0
  425. package/dist/external-tools/trivy/from-vfs.js +47 -0
  426. package/dist/external-tools/trivy/resolve.d.ts +26 -0
  427. package/dist/external-tools/trivy/resolve.js +73 -0
  428. package/dist/external-tools/trivy/types.d.ts +24 -0
  429. package/dist/external-tools/trivy/types.js +18 -0
  430. package/dist/external-tools/trufflehog/asset-names.d.ts +34 -0
  431. package/dist/external-tools/trufflehog/asset-names.js +72 -0
  432. package/dist/external-tools/trufflehog/from-download.d.ts +37 -0
  433. package/dist/external-tools/trufflehog/from-download.js +65 -0
  434. package/dist/external-tools/trufflehog/from-path.d.ts +7 -0
  435. package/dist/external-tools/trufflehog/from-path.js +40 -0
  436. package/dist/external-tools/trufflehog/from-vfs.d.ts +11 -0
  437. package/dist/external-tools/trufflehog/from-vfs.js +47 -0
  438. package/dist/external-tools/trufflehog/resolve.d.ts +30 -0
  439. package/dist/external-tools/trufflehog/resolve.js +73 -0
  440. package/dist/external-tools/trufflehog/types.d.ts +25 -0
  441. package/dist/external-tools/trufflehog/types.js +18 -0
  442. package/dist/external-tools/uv/asset-names.d.ts +36 -0
  443. package/dist/external-tools/uv/asset-names.js +80 -0
  444. package/dist/external-tools/uv/from-download.d.ts +17 -0
  445. package/dist/external-tools/uv/from-download.js +68 -0
  446. package/dist/external-tools/uv/from-path.d.ts +5 -0
  447. package/dist/external-tools/uv/from-path.js +40 -0
  448. package/dist/external-tools/uv/from-vfs.d.ts +7 -0
  449. package/dist/external-tools/uv/from-vfs.js +47 -0
  450. package/dist/external-tools/uv/resolve.d.ts +25 -0
  451. package/dist/external-tools/uv/resolve.js +73 -0
  452. package/dist/external-tools/uv/types.d.ts +24 -0
  453. package/dist/external-tools/uv/types.js +18 -0
  454. package/dist/fs/_internal.d.ts +22 -0
  455. package/dist/fs/_internal.js +48 -0
  456. package/dist/fs/encoding.d.ts +49 -0
  457. package/dist/fs/encoding.js +102 -0
  458. package/dist/fs/find-up.d.ts +58 -0
  459. package/dist/fs/find-up.js +152 -0
  460. package/dist/fs/inspect.d.ts +117 -0
  461. package/dist/fs/inspect.js +112 -0
  462. package/dist/fs/path-cache.d.ts +21 -0
  463. package/dist/fs/path-cache.js +35 -0
  464. package/dist/fs/read-dir.d.ts +66 -0
  465. package/dist/fs/read-dir.js +86 -0
  466. package/dist/fs/read-file.d.ts +150 -0
  467. package/dist/fs/read-file.js +131 -0
  468. package/dist/fs/read-json.d.ts +72 -0
  469. package/dist/fs/read-json.js +120 -0
  470. package/dist/fs/safe.d.ts +153 -0
  471. package/dist/fs/safe.js +182 -0
  472. package/dist/fs/types.d.ts +277 -0
  473. package/dist/fs/types.js +18 -0
  474. package/dist/fs/unique.d.ts +29 -0
  475. package/dist/fs/unique.js +51 -0
  476. package/dist/fs/validate.d.ts +40 -0
  477. package/dist/fs/validate.js +46 -0
  478. package/dist/fs/write-json.d.ts +78 -0
  479. package/dist/fs/write-json.js +83 -0
  480. package/dist/git/_internal.d.ts +105 -0
  481. package/dist/git/_internal.js +236 -0
  482. package/dist/git/changed.d.ts +145 -0
  483. package/dist/git/changed.js +83 -0
  484. package/dist/git/repo.d.ts +62 -0
  485. package/dist/git/repo.js +111 -0
  486. package/dist/git/staged.d.ts +138 -0
  487. package/dist/git/staged.js +71 -0
  488. package/dist/git/types.d.ts +109 -0
  489. package/dist/git/types.js +18 -0
  490. package/dist/git/unstaged.d.ts +141 -0
  491. package/dist/git/unstaged.js +71 -0
  492. package/dist/github/constants.d.ts +18 -0
  493. package/dist/github/constants.js +36 -0
  494. package/dist/github/errors.d.ts +36 -0
  495. package/dist/github/errors.js +40 -0
  496. package/dist/github/fetch.d.ts +89 -0
  497. package/dist/github/fetch.js +87 -0
  498. package/dist/github/ghsa.d.ts +118 -0
  499. package/dist/github/ghsa.js +178 -0
  500. package/dist/github/refs-cache.d.ts +40 -0
  501. package/dist/github/refs-cache.js +49 -0
  502. package/dist/github/refs-graphql.d.ts +42 -0
  503. package/dist/github/refs-graphql.js +109 -0
  504. package/dist/github/refs-rest.d.ts +23 -0
  505. package/dist/github/refs-rest.js +104 -0
  506. package/dist/github/refs.d.ts +84 -0
  507. package/dist/github/refs.js +67 -0
  508. package/dist/github/token.d.ts +77 -0
  509. package/dist/github/token.js +55 -0
  510. package/dist/github/types.d.ts +277 -0
  511. package/dist/github/types.js +18 -0
  512. package/dist/globs/_internal.d.ts +46 -0
  513. package/dist/globs/_internal.js +96 -0
  514. package/dist/globs/defaults.d.ts +7 -0
  515. package/dist/globs/defaults.js +61 -0
  516. package/dist/globs/glob.d.ts +59 -0
  517. package/dist/globs/glob.js +84 -0
  518. package/dist/globs/matcher.d.ts +46 -0
  519. package/dist/globs/matcher.js +99 -0
  520. package/dist/globs/stream.d.ts +18 -0
  521. package/dist/globs/stream.js +58 -0
  522. package/dist/globs/types.d.ts +35 -0
  523. package/dist/globs/types.js +18 -0
  524. package/dist/http-request/_internal.d.ts +18 -0
  525. package/dist/http-request/_internal.js +39 -0
  526. package/dist/http-request/checksums.d.ts +69 -0
  527. package/dist/http-request/checksums.js +72 -0
  528. package/dist/http-request/convenience.d.ts +104 -0
  529. package/dist/http-request/convenience.js +96 -0
  530. package/dist/http-request/download-types.d.ts +224 -0
  531. package/dist/http-request/download-types.js +18 -0
  532. package/dist/http-request/download.d.ts +71 -0
  533. package/dist/http-request/download.js +201 -0
  534. package/dist/http-request/errors.d.ts +23 -0
  535. package/dist/http-request/errors.js +50 -0
  536. package/dist/http-request/headers.d.ts +57 -0
  537. package/dist/http-request/headers.js +86 -0
  538. package/dist/http-request/request-attempt.d.ts +21 -0
  539. package/dist/http-request/request-attempt.js +284 -0
  540. package/dist/http-request/request-types.d.ts +238 -0
  541. package/dist/http-request/request-types.js +18 -0
  542. package/dist/http-request/request.d.ts +59 -0
  543. package/dist/http-request/request.js +106 -0
  544. package/dist/http-request/response-reader.d.ts +25 -0
  545. package/dist/http-request/response-reader.js +54 -0
  546. package/dist/http-request/response-types.d.ts +123 -0
  547. package/dist/http-request/response-types.js +40 -0
  548. package/dist/http-request/user-agent.d.ts +55 -0
  549. package/dist/http-request/user-agent.js +61 -0
  550. package/dist/{dlx/integrity.d.ts → integrity.d.ts} +36 -30
  551. package/dist/{dlx/integrity.js → integrity.js} +25 -19
  552. package/dist/ipc/_internal.d.ts +25 -0
  553. package/dist/ipc/_internal.js +50 -0
  554. package/dist/ipc/directory.d.ts +18 -0
  555. package/dist/ipc/directory.js +66 -0
  556. package/dist/ipc/paths.d.ts +37 -0
  557. package/dist/ipc/paths.js +48 -0
  558. package/dist/ipc/types.d.ts +22 -0
  559. package/dist/ipc/types.js +18 -0
  560. package/dist/ipc/write.d.ts +39 -0
  561. package/dist/ipc/write.js +77 -0
  562. package/dist/ipc-cli/get.d.ts +21 -0
  563. package/dist/{ipc-cli.js → ipc-cli/get.js} +5 -5
  564. package/dist/ipc-cli/types.d.ts +14 -0
  565. package/dist/ipc-cli/types.js +18 -0
  566. package/dist/json/edit.d.ts +22 -8
  567. package/dist/json/edit.js +85 -96
  568. package/dist/json/format.d.ts +100 -86
  569. package/dist/json/format.js +4 -3
  570. package/dist/json/parse.d.ts +113 -88
  571. package/dist/json/parse.js +30 -24
  572. package/dist/json/types.d.ts +133 -117
  573. package/dist/links/link.d.ts +65 -0
  574. package/dist/{links.js → links/link.js} +10 -10
  575. package/dist/links/types.d.ts +19 -0
  576. package/dist/links/types.js +18 -0
  577. package/dist/logger/_internal.d.ts +82 -0
  578. package/dist/logger/_internal.js +80 -0
  579. package/dist/logger/colors.d.ts +18 -0
  580. package/dist/logger/colors.js +54 -0
  581. package/dist/logger/console.d.ts +33 -0
  582. package/dist/logger/console.js +119 -0
  583. package/dist/logger/logger.d.ts +405 -0
  584. package/dist/logger/logger.js +854 -0
  585. package/dist/logger/symbols-builder.d.ts +29 -0
  586. package/dist/logger/symbols-builder.js +61 -0
  587. package/dist/logger/symbols.d.ts +61 -0
  588. package/dist/logger/symbols.js +129 -0
  589. package/dist/logger/types.d.ts +88 -0
  590. package/dist/logger/types.js +18 -0
  591. package/dist/memo/_internal.d.ts +16 -0
  592. package/dist/memo/_internal.js +53 -0
  593. package/dist/memo/async.d.ts +32 -0
  594. package/dist/memo/async.js +120 -0
  595. package/dist/memo/clear.d.ts +15 -0
  596. package/dist/memo/clear.js +37 -0
  597. package/dist/memo/decorator.d.ts +29 -0
  598. package/dist/memo/decorator.js +40 -0
  599. package/dist/memo/memoize.d.ts +33 -0
  600. package/dist/memo/memoize.js +91 -0
  601. package/dist/memo/once.d.ts +25 -0
  602. package/dist/memo/once.js +44 -0
  603. package/dist/memo/types.d.ts +43 -0
  604. package/dist/memo/types.js +18 -0
  605. package/dist/memo/weak.d.ts +26 -0
  606. package/dist/memo/weak.js +44 -0
  607. package/dist/node/async-hooks.d.ts +2 -2
  608. package/dist/node/child-process.d.ts +5 -7
  609. package/dist/node/crypto.d.ts +2 -2
  610. package/dist/node/events.d.ts +2 -2
  611. package/dist/node/fs-promises.d.ts +2 -2
  612. package/dist/node/fs.d.ts +6 -10
  613. package/dist/node/http.d.ts +2 -2
  614. package/dist/node/https.d.ts +2 -2
  615. package/dist/node/module.d.ts +7 -0
  616. package/dist/node/module.js +41 -0
  617. package/dist/node/os.d.ts +2 -2
  618. package/dist/node/path.d.ts +2 -2
  619. package/dist/node/timers-promises.d.ts +2 -2
  620. package/dist/node/url.d.ts +2 -2
  621. package/dist/node/util.d.ts +2 -2
  622. package/dist/objects/getters.d.ts +116 -0
  623. package/dist/objects/getters.js +137 -0
  624. package/dist/objects/inspect.d.ts +67 -0
  625. package/dist/objects/inspect.js +59 -0
  626. package/dist/objects/mutate.d.ts +72 -0
  627. package/dist/objects/mutate.js +81 -0
  628. package/dist/objects/predicates.d.ts +96 -0
  629. package/dist/objects/predicates.js +68 -0
  630. package/dist/objects/sort.d.ts +88 -0
  631. package/dist/objects/sort.js +85 -0
  632. package/dist/objects/types.d.ts +68 -0
  633. package/dist/objects/types.js +18 -0
  634. package/dist/packages/edit-class.d.ts +39 -0
  635. package/dist/packages/edit-class.js +269 -0
  636. package/dist/packages/edit.d.ts +60 -61
  637. package/dist/packages/edit.js +21 -286
  638. package/dist/packages/exports.d.ts +30 -28
  639. package/dist/packages/exports.js +38 -34
  640. package/dist/packages/isolation.d.ts +16 -7
  641. package/dist/packages/isolation.js +50 -57
  642. package/dist/packages/licenses.d.ts +49 -45
  643. package/dist/packages/licenses.js +13 -18
  644. package/dist/packages/manifest.d.ts +14 -14
  645. package/dist/packages/manifest.js +16 -15
  646. package/dist/packages/normalize.d.ts +17 -16
  647. package/dist/packages/normalize.js +20 -17
  648. package/dist/packages/operations.d.ts +49 -36
  649. package/dist/packages/operations.js +30 -15
  650. package/dist/packages/provenance.d.ts +22 -9
  651. package/dist/packages/provenance.js +76 -66
  652. package/dist/packages/specs.d.ts +21 -21
  653. package/dist/packages/specs.js +7 -7
  654. package/dist/{packages.d.ts → packages/types.d.ts} +12 -20
  655. package/dist/packages/types.js +18 -0
  656. package/dist/packages/validation.d.ts +13 -13
  657. package/dist/packages/validation.js +2 -2
  658. package/dist/paths/_internal.d.ts +51 -0
  659. package/dist/paths/_internal.js +102 -0
  660. package/dist/paths/conversion.d.ts +82 -0
  661. package/dist/paths/conversion.js +74 -0
  662. package/dist/paths/dirnames.d.ts +1 -1
  663. package/dist/paths/exts.d.ts +1 -1
  664. package/dist/paths/filenames.d.ts +1 -1
  665. package/dist/paths/globs.d.ts +1 -1
  666. package/dist/paths/normalize.d.ts +30 -440
  667. package/dist/paths/normalize.js +49 -289
  668. package/dist/paths/packages.d.ts +7 -1
  669. package/dist/paths/packages.js +7 -12
  670. package/dist/paths/predicates.d.ts +129 -0
  671. package/dist/paths/predicates.js +121 -0
  672. package/dist/paths/resolve.d.ts +71 -0
  673. package/dist/paths/resolve.js +135 -0
  674. package/dist/paths/rewire.d.ts +37 -38
  675. package/dist/paths/rewire.js +3 -3
  676. package/dist/paths/socket.d.ts +146 -47
  677. package/dist/paths/socket.js +23 -25
  678. package/dist/perf/_internal.d.ts +10 -0
  679. package/dist/perf/_internal.js +30 -0
  680. package/dist/perf/enabled.d.ts +13 -0
  681. package/dist/perf/enabled.js +33 -0
  682. package/dist/perf/metrics.d.ts +51 -0
  683. package/dist/perf/metrics.js +74 -0
  684. package/dist/perf/report.d.ts +40 -0
  685. package/dist/perf/report.js +85 -0
  686. package/dist/perf/timer.d.ts +100 -0
  687. package/dist/perf/timer.js +137 -0
  688. package/dist/perf/types.d.ts +15 -0
  689. package/dist/perf/types.js +18 -0
  690. package/dist/pkg-ext/data.d.ts +8 -0
  691. package/dist/{package-extensions.js → pkg-ext/data.js} +4 -4
  692. package/dist/pkg-ext/types.d.ts +6 -0
  693. package/dist/pkg-ext/types.js +18 -0
  694. package/dist/primordials/array.d.ts +73 -0
  695. package/dist/primordials/array.js +220 -0
  696. package/dist/primordials/buffer.d.ts +17 -0
  697. package/dist/primordials/buffer.js +61 -0
  698. package/dist/primordials/date.d.ts +16 -0
  699. package/dist/primordials/date.js +56 -0
  700. package/dist/primordials/error.d.ts +19 -0
  701. package/dist/primordials/error.js +75 -0
  702. package/dist/primordials/function.d.ts +10 -0
  703. package/dist/primordials/function.js +42 -0
  704. package/dist/primordials/globals.d.ts +17 -0
  705. package/dist/primordials/globals.js +54 -0
  706. package/dist/primordials/json.d.ts +11 -0
  707. package/dist/primordials/json.js +33 -0
  708. package/dist/primordials/map-set.d.ts +35 -0
  709. package/dist/primordials/map-set.js +115 -0
  710. package/dist/primordials/math.d.ts +51 -0
  711. package/dist/primordials/math.js +161 -0
  712. package/dist/primordials/number.d.ts +25 -0
  713. package/dist/primordials/number.js +92 -0
  714. package/dist/primordials/object.d.ts +74 -0
  715. package/dist/primordials/object.js +142 -0
  716. package/dist/primordials/promise.d.ts +34 -0
  717. package/dist/primordials/promise.js +61 -0
  718. package/dist/primordials/reflect.d.ts +18 -0
  719. package/dist/primordials/reflect.js +66 -0
  720. package/dist/primordials/regexp.d.ts +14 -0
  721. package/dist/primordials/regexp.js +50 -0
  722. package/dist/primordials/string.d.ts +71 -0
  723. package/dist/primordials/string.js +174 -0
  724. package/dist/primordials/symbol.d.ts +28 -0
  725. package/dist/primordials/symbol.js +94 -0
  726. package/dist/primordials/uncurry.d.ts +18 -0
  727. package/dist/primordials/uncurry.js +65 -0
  728. package/dist/primordials/url.d.ts +13 -0
  729. package/dist/primordials/url.js +69 -0
  730. package/dist/process/_internal.d.ts +8 -0
  731. package/dist/process/_internal.js +33 -0
  732. package/dist/process/abort.d.ts +20 -0
  733. package/dist/{constants/process.js → process/abort.js} +3 -3
  734. package/dist/process/lock-instance.d.ts +19 -0
  735. package/dist/process/lock-instance.js +31 -0
  736. package/dist/process/lock-manager.d.ts +152 -0
  737. package/dist/{process-lock.js → process/lock-manager.js} +97 -105
  738. package/dist/process/lock-types.d.ts +43 -0
  739. package/dist/process/lock-types.js +18 -0
  740. package/dist/process/transient.d.ts +22 -0
  741. package/dist/{temporary-executor.js → process/transient.js} +8 -8
  742. package/dist/promise-queue/queue.d.ts +51 -0
  743. package/dist/{promise-queue.js → promise-queue/queue.js} +27 -22
  744. package/dist/promise-queue/types.d.ts +10 -0
  745. package/dist/promise-queue/types.js +18 -0
  746. package/dist/promises/_internal.d.ts +15 -0
  747. package/dist/promises/_internal.js +41 -0
  748. package/dist/promises/iterate.d.ts +190 -0
  749. package/dist/promises/iterate.js +111 -0
  750. package/dist/promises/options.d.ts +76 -0
  751. package/dist/promises/options.js +108 -0
  752. package/dist/promises/resolvers.d.ts +55 -0
  753. package/dist/promises/resolvers.js +49 -0
  754. package/dist/promises/retry.d.ts +105 -0
  755. package/dist/promises/retry.js +104 -0
  756. package/dist/promises/types.d.ts +190 -0
  757. package/dist/promises/types.js +18 -0
  758. package/dist/regexps/escape.d.ts +6 -0
  759. package/dist/regexps/escape.js +32 -0
  760. package/dist/regexps/hex.d.ts +7 -0
  761. package/dist/regexps/hex.js +38 -0
  762. package/dist/regexps/spec.d.ts +15 -0
  763. package/dist/{regexps.js → regexps/spec.js} +32 -36
  764. package/dist/releases/github-archives.d.ts +47 -36
  765. package/dist/releases/github-archives.js +21 -35
  766. package/dist/releases/github-asset-url.d.ts +72 -0
  767. package/dist/releases/github-asset-url.js +167 -0
  768. package/dist/releases/github-assets.d.ts +13 -11
  769. package/dist/releases/github-assets.js +2 -2
  770. package/dist/releases/github-auth.d.ts +9 -9
  771. package/dist/releases/github-downloads.d.ts +31 -26
  772. package/dist/releases/github-downloads.js +22 -34
  773. package/dist/releases/github-listing.d.ts +105 -0
  774. package/dist/releases/github-listing.js +171 -0
  775. package/dist/releases/github-types.d.ts +45 -19
  776. package/dist/releases/socket-btm.d.ts +149 -99
  777. package/dist/releases/socket-btm.js +14 -20
  778. package/dist/schema/parse.d.ts +14 -15
  779. package/dist/schema/parse.js +2 -2
  780. package/dist/schema/types.d.ts +49 -37
  781. package/dist/schema/validate.d.ts +42 -19
  782. package/dist/schema/validate.js +15 -6
  783. package/dist/sea/detect.d.ts +37 -0
  784. package/dist/sea/{util.js → detect.js} +6 -6
  785. package/dist/secrets/_internal.d.ts +57 -0
  786. package/dist/secrets/_internal.js +84 -0
  787. package/dist/secrets/find.d.ts +79 -0
  788. package/dist/secrets/find.js +84 -0
  789. package/dist/secrets/keychain.d.ts +138 -0
  790. package/dist/secrets/keychain.js +328 -0
  791. package/dist/secrets/linux.d.ts +20 -0
  792. package/dist/secrets/linux.js +151 -0
  793. package/dist/secrets/macos.d.ts +36 -0
  794. package/dist/secrets/macos.js +165 -0
  795. package/dist/secrets/rc.d.ts +139 -0
  796. package/dist/secrets/rc.js +196 -0
  797. package/dist/secrets/socket-api-token.d.ts +23 -0
  798. package/dist/secrets/socket-api-token.js +50 -0
  799. package/dist/secrets/types.d.ts +69 -0
  800. package/dist/secrets/types.js +18 -0
  801. package/dist/secrets/windows.d.ts +50 -0
  802. package/dist/secrets/windows.js +318 -0
  803. package/dist/shadow/skip.d.ts +25 -0
  804. package/dist/{shadow.js → shadow/skip.js} +4 -4
  805. package/dist/shadow/types.d.ts +8 -0
  806. package/dist/shadow/types.js +18 -0
  807. package/dist/signal-exit/_internal.d.ts +68 -0
  808. package/dist/signal-exit/_internal.js +127 -0
  809. package/dist/signal-exit/intercept.d.ts +8 -0
  810. package/dist/signal-exit/intercept.js +75 -0
  811. package/dist/signal-exit/lifecycle.d.ts +28 -0
  812. package/dist/signal-exit/lifecycle.js +109 -0
  813. package/dist/signal-exit/register.d.ts +20 -0
  814. package/dist/signal-exit/register.js +58 -0
  815. package/dist/signal-exit/signals.d.ts +16 -0
  816. package/dist/signal-exit/signals.js +34 -0
  817. package/dist/signal-exit/types.d.ts +21 -0
  818. package/dist/signal-exit/types.js +18 -0
  819. package/dist/smol/detect.d.ts +80 -0
  820. package/dist/smol/{util.js → detect.js} +16 -24
  821. package/dist/smol/http.d.ts +60 -0
  822. package/dist/smol/http.js +42 -0
  823. package/dist/smol/https.d.ts +59 -0
  824. package/dist/smol/https.js +42 -0
  825. package/dist/smol/manifest.d.ts +140 -0
  826. package/dist/smol/manifest.js +42 -0
  827. package/dist/smol/primordial.d.ts +16 -21
  828. package/dist/smol/primordial.js +7 -11
  829. package/dist/smol/purl.d.ts +84 -0
  830. package/dist/smol/purl.js +42 -0
  831. package/dist/smol/versions.d.ts +11 -14
  832. package/dist/smol/versions.js +7 -11
  833. package/dist/smol/vfs.d.ts +99 -0
  834. package/dist/smol/vfs.js +43 -0
  835. package/dist/sorts/_internal.d.ts +9 -0
  836. package/dist/sorts/_internal.js +47 -0
  837. package/dist/sorts/natural.d.ts +39 -0
  838. package/dist/{sorts.js → sorts/natural.js} +5 -42
  839. package/dist/sorts/semver.d.ts +15 -0
  840. package/dist/sorts/semver.js +46 -0
  841. package/dist/sorts/strings.d.ts +16 -0
  842. package/dist/sorts/strings.js +33 -0
  843. package/dist/sorts/types.d.ts +7 -0
  844. package/dist/sorts/types.js +18 -0
  845. package/dist/spawn/_internal.d.ts +24 -0
  846. package/dist/spawn/_internal.js +62 -0
  847. package/dist/spawn/errors.d.ts +45 -0
  848. package/dist/spawn/errors.js +118 -0
  849. package/dist/spawn/spawn.d.ts +134 -0
  850. package/dist/{spawn.js → spawn/spawn.js} +29 -147
  851. package/dist/spawn/stdio.d.ts +37 -0
  852. package/dist/spawn/stdio.js +38 -0
  853. package/dist/spawn/types.d.ts +325 -0
  854. package/dist/spawn/types.js +18 -0
  855. package/dist/spinner/format.d.ts +64 -0
  856. package/dist/spinner/format.js +83 -0
  857. package/dist/spinner/registry.d.ts +49 -0
  858. package/dist/spinner/registry.js +70 -0
  859. package/dist/spinner/spinner.d.ts +40 -0
  860. package/dist/spinner/spinner.js +802 -0
  861. package/dist/spinner/types.d.ts +368 -0
  862. package/dist/spinner/types.js +18 -0
  863. package/dist/spinner/with.d.ts +125 -0
  864. package/dist/spinner/with.js +144 -0
  865. package/dist/ssri/convert.d.ts +48 -0
  866. package/dist/{ssri.js → ssri/convert.js} +11 -34
  867. package/dist/ssri/parse.d.ts +27 -0
  868. package/dist/ssri/parse.js +40 -0
  869. package/dist/ssri/validate.d.ts +41 -0
  870. package/dist/ssri/validate.js +39 -0
  871. package/dist/stdio/{_stream.d.ts → _internal.d.ts} +10 -5
  872. package/dist/stdio/{_stream.js → _internal.js} +3 -3
  873. package/dist/stdio/clear.d.ts +98 -84
  874. package/dist/stdio/divider.d.ts +100 -78
  875. package/dist/stdio/divider.js +36 -14
  876. package/dist/stdio/footer.d.ts +75 -51
  877. package/dist/stdio/footer.js +28 -18
  878. package/dist/stdio/header.d.ts +61 -50
  879. package/dist/stdio/header.js +15 -13
  880. package/dist/stdio/progress.d.ts +67 -57
  881. package/dist/stdio/progress.js +55 -51
  882. package/dist/stdio/prompts.d.ts +147 -100
  883. package/dist/stdio/prompts.js +23 -15
  884. package/dist/stdio/stderr.d.ts +86 -84
  885. package/dist/stdio/stderr.js +6 -6
  886. package/dist/stdio/stdout.d.ts +77 -78
  887. package/dist/stdio/stdout.js +6 -6
  888. package/dist/streams/parallel.d.ts +40 -0
  889. package/dist/{streams.js → streams/parallel.js} +10 -27
  890. package/dist/streams/transform.d.ts +20 -0
  891. package/dist/streams/transform.js +48 -0
  892. package/dist/strings/format.d.ts +115 -0
  893. package/dist/strings/format.js +73 -0
  894. package/dist/strings/predicates.d.ts +52 -0
  895. package/dist/strings/predicates.js +39 -0
  896. package/dist/strings/search.d.ts +34 -0
  897. package/dist/strings/search.js +45 -0
  898. package/dist/strings/transform.d.ts +80 -0
  899. package/dist/strings/transform.js +79 -0
  900. package/dist/strings/types.d.ts +38 -0
  901. package/dist/strings/types.js +18 -0
  902. package/dist/strings/width.d.ts +42 -0
  903. package/dist/strings/width.js +95 -0
  904. package/dist/tables/bordered.d.ts +44 -0
  905. package/dist/tables/bordered.js +84 -0
  906. package/dist/tables/padding.d.ts +18 -0
  907. package/dist/tables/padding.js +51 -0
  908. package/dist/tables/simple.d.ts +36 -0
  909. package/dist/tables/simple.js +73 -0
  910. package/dist/tables/types.d.ts +15 -0
  911. package/dist/tables/types.js +18 -0
  912. package/dist/temporal/instant.d.ts +39 -0
  913. package/dist/temporal/instant.js +91 -0
  914. package/dist/temporal/now.d.ts +24 -0
  915. package/dist/temporal/now.js +34 -0
  916. package/dist/temporal/slots.d.ts +32 -0
  917. package/dist/temporal/slots.js +45 -0
  918. package/dist/temporal/system.d.ts +20 -0
  919. package/dist/temporal/system.js +42 -0
  920. package/dist/temporal/temporal.d.ts +22 -0
  921. package/dist/temporal/temporal.js +43 -0
  922. package/dist/themes/context.d.ts +65 -48
  923. package/dist/themes/context.js +6 -2
  924. package/dist/themes/resolve.d.ts +90 -0
  925. package/dist/themes/{utils.js → resolve.js} +6 -6
  926. package/dist/themes/themes.d.ts +14 -16
  927. package/dist/themes/types.d.ts +93 -35
  928. package/dist/ttl-cache/cache.d.ts +29 -0
  929. package/dist/{cache-with-ttl.js → ttl-cache/cache.js} +45 -37
  930. package/dist/ttl-cache/types.d.ts +109 -0
  931. package/dist/ttl-cache/types.js +18 -0
  932. package/dist/url/parse.d.ts +26 -0
  933. package/dist/url/parse.js +57 -0
  934. package/dist/url/predicates.d.ts +15 -0
  935. package/dist/url/predicates.js +34 -0
  936. package/dist/url/search-params.d.ts +71 -0
  937. package/dist/{url.js → url/search-params.js} +19 -54
  938. package/dist/url/types.d.ts +20 -0
  939. package/dist/url/types.js +18 -0
  940. package/dist/versions/_internal.d.ts +24 -0
  941. package/dist/versions/_internal.js +37 -0
  942. package/dist/versions/compare.d.ts +57 -0
  943. package/dist/versions/compare.js +65 -0
  944. package/dist/versions/modify.d.ts +28 -0
  945. package/dist/versions/modify.js +44 -0
  946. package/dist/versions/parse.d.ts +67 -0
  947. package/dist/versions/parse.js +77 -0
  948. package/dist/versions/range.d.ts +45 -0
  949. package/dist/versions/range.js +50 -0
  950. package/dist/versions/types.d.ts +13 -0
  951. package/dist/versions/types.js +18 -0
  952. package/dist/warnings/event-target.d.ts +31 -0
  953. package/dist/warnings/event-target.js +43 -0
  954. package/dist/warnings/suppress.d.ts +65 -0
  955. package/dist/{suppress-warnings.js → warnings/suppress.js} +16 -28
  956. package/dist/words/article.d.ts +14 -0
  957. package/dist/words/article.js +33 -0
  958. package/dist/words/capitalize.d.ts +15 -0
  959. package/dist/{words.js → words/capitalize.js} +5 -18
  960. package/dist/words/pluralize.d.ts +16 -0
  961. package/dist/words/pluralize.js +34 -0
  962. package/dist/words/types.d.ts +7 -0
  963. package/dist/words/types.js +18 -0
  964. package/package.json +1919 -247
  965. package/dist/abort.d.ts +0 -27
  966. package/dist/agent.d.ts +0 -196
  967. package/dist/agent.js +0 -287
  968. package/dist/ansi.d.ts +0 -39
  969. package/dist/archives.d.ts +0 -95
  970. package/dist/archives.js +0 -408
  971. package/dist/argv/flags.d.ts +0 -292
  972. package/dist/argv/flags.js +0 -297
  973. package/dist/arrays.d.ts +0 -168
  974. package/dist/bin.d.ts +0 -181
  975. package/dist/bin.js +0 -544
  976. package/dist/cacache.d.ts +0 -130
  977. package/dist/cacache.js +0 -156
  978. package/dist/cache-with-ttl.d.ts +0 -165
  979. package/dist/colors.d.ts +0 -49
  980. package/dist/compression.d.ts +0 -218
  981. package/dist/constants/process.d.ts +0 -20
  982. package/dist/crypto.d.ts +0 -36
  983. package/dist/debug.js +0 -337
  984. package/dist/env/helpers.d.ts +0 -66
  985. package/dist/env.d.ts +0 -182
  986. package/dist/env.js +0 -205
  987. package/dist/errors.d.ts +0 -100
  988. package/dist/fs.d.ts +0 -916
  989. package/dist/fs.js +0 -808
  990. package/dist/git.d.ts +0 -546
  991. package/dist/git.js +0 -409
  992. package/dist/github.d.ts +0 -526
  993. package/dist/github.js +0 -448
  994. package/dist/globs.d.ts +0 -119
  995. package/dist/globs.js +0 -282
  996. package/dist/http-request.d.ts +0 -951
  997. package/dist/http-request.js +0 -761
  998. package/dist/ipc-cli.d.ts +0 -28
  999. package/dist/ipc.d.ts +0 -76
  1000. package/dist/ipc.js +0 -130
  1001. package/dist/links.d.ts +0 -69
  1002. package/dist/logger.d.ts +0 -993
  1003. package/dist/logger.js +0 -1498
  1004. package/dist/memoization.d.ts +0 -131
  1005. package/dist/memoization.js +0 -243
  1006. package/dist/objects.d.ts +0 -500
  1007. package/dist/objects.js +0 -303
  1008. package/dist/package-extensions.d.ts +0 -9
  1009. package/dist/packages.js +0 -132
  1010. package/dist/performance.d.ts +0 -181
  1011. package/dist/performance.js +0 -233
  1012. package/dist/primordials.d.ts +0 -420
  1013. package/dist/primordials.js +0 -1116
  1014. package/dist/process-lock.d.ts +0 -180
  1015. package/dist/promise-queue.d.ts +0 -48
  1016. package/dist/promises.d.ts +0 -506
  1017. package/dist/promises.js +0 -292
  1018. package/dist/regexps.d.ts +0 -6
  1019. package/dist/releases/github-api.d.ts +0 -56
  1020. package/dist/releases/github-api.js +0 -275
  1021. package/dist/sea/util.d.ts +0 -43
  1022. package/dist/shadow.d.ts +0 -28
  1023. package/dist/signal-exit.d.ts +0 -50
  1024. package/dist/signal-exit.js +0 -247
  1025. package/dist/smol/util.d.ts +0 -87
  1026. package/dist/sorts.d.ts +0 -59
  1027. package/dist/spawn.d.ts +0 -454
  1028. package/dist/spinner.d.ts +0 -444
  1029. package/dist/spinner.js +0 -988
  1030. package/dist/ssri.d.ts +0 -90
  1031. package/dist/streams.d.ts +0 -45
  1032. package/dist/strings.d.ts +0 -414
  1033. package/dist/strings.js +0 -218
  1034. package/dist/suppress-warnings.d.ts +0 -81
  1035. package/dist/tables.d.ts +0 -73
  1036. package/dist/tables.js +0 -133
  1037. package/dist/temporary-executor.d.ts +0 -20
  1038. package/dist/themes/utils.d.ts +0 -86
  1039. package/dist/url.d.ts +0 -114
  1040. package/dist/versions.d.ts +0 -207
  1041. package/dist/versions.js +0 -181
  1042. package/dist/words.d.ts +0 -39
@@ -26,30 +26,19 @@ __export(manifest_exports, {
26
26
  isPackageEntry: () => isPackageEntry
27
27
  });
28
28
  module.exports = __toCommonJS(manifest_exports);
29
- var import_errors = require("../errors");
30
- var import_fs = require("../fs");
31
- var import_logger = require("../logger");
29
+ var import_message = require("../errors/message");
30
+ var import_read_file = require("../fs/read-file");
31
+ var import_safe = require("../fs/safe");
32
+ var import_logger = require("../logger/logger");
32
33
  var import_socket = require("../paths/socket");
33
- var import_process_lock = require("../process-lock");
34
- var import_primordials = require("../primordials");
35
- let _fs;
36
- let _path;
37
- // @__NO_SIDE_EFFECTS__
38
- function getFs() {
39
- if (_fs === void 0) {
40
- _fs = require("node:fs");
41
- }
42
- return _fs;
43
- }
44
- // @__NO_SIDE_EFFECTS__
45
- function getPath() {
46
- if (_path === void 0) {
47
- _path = require("node:path");
48
- }
49
- return _path;
50
- }
51
- const fs = /* @__PURE__ */ getFs();
52
- const path = /* @__PURE__ */ getPath();
34
+ var import_lock_instance = require("../process/lock-instance");
35
+ var import_date = require("../primordials/date");
36
+ var import_json = require("../primordials/json");
37
+ var import_object = require("../primordials/object");
38
+ var import_fs = require("../node/fs");
39
+ var import_path = require("../node/path");
40
+ const fs = (0, import_fs.getNodeFs)();
41
+ const path = (0, import_path.getNodePath)();
53
42
  const logger = (0, import_logger.getDefaultLogger)();
54
43
  const MANIFEST_FILE_NAME = ".dlx-manifest.json";
55
44
  function isBinaryEntry(entry) {
@@ -67,6 +56,7 @@ class DlxManifest {
67
56
  }
68
57
  /**
69
58
  * Read the entire manifest file.
59
+ *
70
60
  * @private
71
61
  */
72
62
  readManifest() {
@@ -74,29 +64,33 @@ class DlxManifest {
74
64
  if (!fs.existsSync(this.manifestPath)) {
75
65
  return { __proto__: null };
76
66
  }
77
- const rawContent = (0, import_fs.readFileUtf8Sync)(this.manifestPath);
78
- const content = (typeof rawContent === "string" ? rawContent : rawContent.toString("utf8")).trim();
67
+ const rawContent = (0, import_read_file.readFileUtf8Sync)(this.manifestPath);
68
+ const content = (typeof rawContent === "string" ? rawContent : (
69
+ /* c8 ignore next - readFileUtf8Sync returns string in tests; Buffer fallback. */
70
+ rawContent.toString("utf8")
71
+ )).trim();
79
72
  if (!content) {
80
73
  return { __proto__: null };
81
74
  }
82
- return (0, import_primordials.JSONParse)(content);
75
+ return (0, import_json.JSONParse)(content);
83
76
  } catch (e) {
84
- logger.warn(`Failed to read manifest: ${(0, import_errors.errorMessage)(e)}`);
77
+ logger.warn(`Failed to read manifest: ${(0, import_message.errorMessage)(e)}`);
85
78
  return { __proto__: null };
86
79
  }
87
80
  }
88
81
  /**
89
82
  * Write the manifest file atomically.
83
+ *
90
84
  * @private
91
85
  */
92
86
  async writeManifest(data) {
93
87
  const manifestDir = path.dirname(this.manifestPath);
94
88
  try {
95
- (0, import_fs.safeMkdirSync)(manifestDir, { recursive: true });
89
+ (0, import_safe.safeMkdirSync)(manifestDir, { recursive: true });
96
90
  } catch (e) {
97
- logger.warn(`Failed to create manifest directory: ${(0, import_errors.errorMessage)(e)}`);
91
+ logger.warn(`Failed to create manifest directory: ${(0, import_message.errorMessage)(e)}`);
98
92
  }
99
- const content = (0, import_primordials.JSONStringify)(data, null, 2);
93
+ const content = (0, import_json.JSONStringify)(data, void 0, 2);
100
94
  const tempPath = `${this.manifestPath}.tmp`;
101
95
  try {
102
96
  fs.writeFileSync(tempPath, content, "utf8");
@@ -104,7 +98,7 @@ class DlxManifest {
104
98
  } catch (e) {
105
99
  try {
106
100
  if (fs.existsSync(tempPath)) {
107
- fs.unlinkSync(tempPath);
101
+ (0, import_safe.safeDeleteSync)(tempPath);
108
102
  }
109
103
  } catch {
110
104
  }
@@ -115,7 +109,7 @@ class DlxManifest {
115
109
  * Clear cached data for a specific entry.
116
110
  */
117
111
  async clear(name) {
118
- await import_process_lock.processLock.withLock(this.lockPath, async () => {
112
+ await import_lock_instance.processLock.withLock(this.lockPath, async () => {
119
113
  try {
120
114
  if (!fs.existsSync(this.manifestPath)) {
121
115
  return;
@@ -124,11 +118,11 @@ class DlxManifest {
124
118
  if (!content.trim()) {
125
119
  return;
126
120
  }
127
- const data = JSON.parse(content);
121
+ const data = (0, import_json.JSONParse)(content);
128
122
  delete data[name];
129
123
  await this.writeManifest(data);
130
124
  } catch (e) {
131
- logger.warn(`Failed to clear cache for ${name}: ${(0, import_errors.errorMessage)(e)}`);
125
+ logger.warn(`Failed to clear cache for ${name}: ${(0, import_message.errorMessage)(e)}`);
132
126
  }
133
127
  });
134
128
  }
@@ -136,18 +130,19 @@ class DlxManifest {
136
130
  * Clear all cached data.
137
131
  */
138
132
  async clearAll() {
139
- await import_process_lock.processLock.withLock(this.lockPath, async () => {
133
+ await import_lock_instance.processLock.withLock(this.lockPath, async () => {
140
134
  try {
141
135
  if (fs.existsSync(this.manifestPath)) {
142
- fs.unlinkSync(this.manifestPath);
136
+ (0, import_safe.safeDeleteSync)(this.manifestPath);
143
137
  }
144
138
  } catch (e) {
145
- logger.warn(`Failed to clear all cache: ${(0, import_errors.errorMessage)(e)}`);
139
+ logger.warn(`Failed to clear all cache: ${(0, import_message.errorMessage)(e)}`);
146
140
  }
147
141
  });
148
142
  }
149
143
  /**
150
144
  * Get cached update information for a package (legacy format).
145
+ *
151
146
  * @deprecated Use getManifestEntry() for new code.
152
147
  */
153
148
  get(name) {
@@ -166,15 +161,18 @@ class DlxManifest {
166
161
  if (!fs.existsSync(this.manifestPath)) {
167
162
  return [];
168
163
  }
169
- const rawContent = (0, import_fs.readFileUtf8Sync)(this.manifestPath);
170
- const content = (typeof rawContent === "string" ? rawContent : rawContent.toString("utf8")).trim();
164
+ const rawContent = (0, import_read_file.readFileUtf8Sync)(this.manifestPath);
165
+ const content = (typeof rawContent === "string" ? rawContent : (
166
+ /* c8 ignore next - readFileUtf8Sync returns string in tests; Buffer fallback. */
167
+ rawContent.toString("utf8")
168
+ )).trim();
171
169
  if (!content) {
172
170
  return [];
173
171
  }
174
- const data = (0, import_primordials.JSONParse)(content);
175
- return (0, import_primordials.ObjectKeys)(data);
172
+ const data = (0, import_json.JSONParse)(content);
173
+ return (0, import_object.ObjectKeys)(data);
176
174
  } catch (e) {
177
- logger.warn(`Failed to get package list: ${(0, import_errors.errorMessage)(e)}`);
175
+ logger.warn(`Failed to get package list: ${(0, import_message.errorMessage)(e)}`);
178
176
  return [];
179
177
  }
180
178
  }
@@ -196,15 +194,16 @@ class DlxManifest {
196
194
  if (!record) {
197
195
  return false;
198
196
  }
199
- const age = (0, import_primordials.DateNow)() - record.timestampFetch;
197
+ const age = (0, import_date.DateNow)() - record.timestampFetch;
200
198
  return age < ttlMs;
201
199
  }
202
200
  /**
203
201
  * Store update information for a package (legacy format).
202
+ *
204
203
  * @deprecated Use setPackageEntry() for new code.
205
204
  */
206
205
  async set(name, record) {
207
- await import_process_lock.processLock.withLock(this.lockPath, async () => {
206
+ await import_lock_instance.processLock.withLock(this.lockPath, async () => {
208
207
  let data = {
209
208
  __proto__: null
210
209
  };
@@ -212,20 +211,20 @@ class DlxManifest {
212
211
  if (fs.existsSync(this.manifestPath)) {
213
212
  const content2 = fs.readFileSync(this.manifestPath, "utf8");
214
213
  if (content2.trim()) {
215
- data = JSON.parse(content2);
214
+ data = (0, import_json.JSONParse)(content2);
216
215
  }
217
216
  }
218
217
  } catch (e) {
219
- logger.warn(`Failed to read existing manifest: ${(0, import_errors.errorMessage)(e)}`);
218
+ logger.warn(`Failed to read existing manifest: ${(0, import_message.errorMessage)(e)}`);
220
219
  }
221
220
  data[name] = record;
222
221
  const manifestDir = path.dirname(this.manifestPath);
223
222
  try {
224
- (0, import_fs.safeMkdirSync)(manifestDir, { recursive: true });
223
+ (0, import_safe.safeMkdirSync)(manifestDir, { recursive: true });
225
224
  } catch (e) {
226
- logger.warn(`Failed to create manifest directory: ${(0, import_errors.errorMessage)(e)}`);
225
+ logger.warn(`Failed to create manifest directory: ${(0, import_message.errorMessage)(e)}`);
227
226
  }
228
- const content = JSON.stringify(data, null, 2);
227
+ const content = (0, import_json.JSONStringify)(data, null, 2);
229
228
  const tempPath = `${this.manifestPath}.tmp`;
230
229
  try {
231
230
  fs.writeFileSync(tempPath, content, "utf8");
@@ -233,7 +232,7 @@ class DlxManifest {
233
232
  } catch (e) {
234
233
  try {
235
234
  if (fs.existsSync(tempPath)) {
236
- fs.unlinkSync(tempPath);
235
+ (0, import_safe.safeDeleteSync)(tempPath);
237
236
  }
238
237
  } catch {
239
238
  }
@@ -245,7 +244,7 @@ class DlxManifest {
245
244
  * Set a binary manifest entry.
246
245
  */
247
246
  async setBinaryEntry(spec, cacheKey, details) {
248
- await import_process_lock.processLock.withLock(this.lockPath, async () => {
247
+ await import_lock_instance.processLock.withLock(this.lockPath, async () => {
249
248
  const data = this.readManifest();
250
249
  data[spec] = {
251
250
  type: "binary",
@@ -260,7 +259,7 @@ class DlxManifest {
260
259
  * Set a package manifest entry.
261
260
  */
262
261
  async setPackageEntry(spec, cacheKey, details) {
263
- await import_process_lock.processLock.withLock(this.lockPath, async () => {
262
+ await import_lock_instance.processLock.withLock(this.lockPath, async () => {
264
263
  const data = this.readManifest();
265
264
  data[spec] = {
266
265
  type: "package",
@@ -1,311 +1,115 @@
1
1
  /**
2
- * @fileoverview DLX package execution - Install and execute npm packages.
3
- *
4
- * This module provides functionality to install and execute npm packages
5
- * in the ~/.socket/_dlx directory, similar to npx but with Socket's own cache.
6
- *
7
- * Uses content-addressed storage like npm's _npx:
8
- * - Hash is generated from package spec (name@version)
9
- * - Each unique spec gets its own directory: ~/.socket/_dlx/<hash>/
10
- * - Allows caching multiple versions of the same package
11
- *
12
- * Concurrency protection:
13
- * - Uses process-lock to prevent concurrent installation corruption
14
- * - Lock file created at ~/.socket/_dlx/<hash>/concurrency.lock
15
- * - Uses npm npx's concurrency.lock naming convention (5s stale, 2s touching)
16
- * - Prevents multiple processes from corrupting the same package installation
17
- *
18
- * Version range handling:
19
- * - Exact versions (1.0.0) use cache if available
20
- * - Range versions (^1.0.0, ~1.0.0) auto-force to get latest within range
21
- * - User can override with explicit force: false
22
- *
23
- * Key difference from dlx-binary.ts:
24
- * - dlx-binary.ts: Downloads standalone binaries from URLs
25
- * - dlx-package.ts: Installs npm packages from registries
26
- *
27
- * Implementation:
28
- * - Uses Arborist for package installation (like npx, no npm CLI required)
29
- * - Split into downloadPackage() and executePackage() for flexibility
30
- * - dlxPackage() combines both for convenience
31
- */
32
- import { spawn } from '../spawn';
33
- import type { HashSpec } from './integrity';
34
- import type { LockfileSpec } from './lockfile';
35
- import type { SpawnExtra, SpawnOptions } from '../spawn';
36
- export interface DownloadPackageResult {
37
- /** Path to the installed package directory. */
38
- packageDir: string;
39
- /** Path to the binary. */
40
- binaryPath: string;
41
- /** Whether the package was newly installed. */
42
- installed: boolean;
43
- }
44
- /**
45
- * Shared install-pinning options used by both {@link DlxPackageOptions}
46
- * and the lower-level {@link ensurePackageInstalled}.
2
+ * @file DLX package execution install and execute npm packages. This module
3
+ * provides functionality to install and execute npm packages in the
4
+ * ~/.socket/_dlx directory, similar to npx but with Socket's own cache. Uses
5
+ * content-addressed storage like npm's _npx:
6
+ *
7
+ * - Hash is generated from package spec (name@version)
8
+ * - Each unique spec gets its own directory: ~/.socket/_dlx/<hash>/
9
+ * - Allows caching multiple versions of the same package Concurrency
10
+ * protection:
11
+ * - Uses process-lock to prevent concurrent installation corruption
12
+ * - Lock file created at ~/.socket/_dlx/<hash>/concurrency.lock
13
+ * - Uses npm npx's concurrency.lock naming convention (5s stale, 2s touching)
14
+ * - Prevents multiple processes from corrupting the same package installation
15
+ * Version range handling:
16
+ * - Exact versions (1.0.0) use cache if available
17
+ * - Range versions (^1.0.0, ~1.0.0) auto-force to get latest within range
18
+ * - User can override with explicit force: false Key difference from
19
+ * dlx/binary.ts:
20
+ * - dlx/binary.ts: Downloads standalone binaries from URLs
21
+ * - dlx/package.ts: Installs npm packages from registries Implementation:
22
+ * - Uses Arborist for package installation (like npx, no npm CLI required)
23
+ * - Split into downloadPackage() and executePackage() for flexibility
24
+ * - dlxPackage() combines both for convenience Module shape: this file holds
25
+ * the three async orchestrators (`dlxPackage`, `downloadPackage`,
26
+ * `ensurePackageInstalled`) and the synchronous `executePackage`. The
27
+ * supporting surface lives in sibling leaves and is re-exported here so
28
+ * existing `dlx/package` importers keep working unchanged:
29
+ * - types `./types`
30
+ * - PURL + firewall `./firewall`
31
+ * - spec parsing — `./spec`
32
+ * - binary resolution `./binary-resolution`
33
+ * - lazy `node:fs` / `node:path` + LRU cache — `./_internal`
47
34
  */
48
- export interface EnsurePackageInstallOptions {
49
- /**
50
- * Expected hash of the top-level package tarball. Accepts either:
51
- * - A bare sha512 SRI string (sniffed as integrity).
52
- * - A bare sha256 hex string (sniffed as checksum).
53
- * - An explicit `{ type: 'integrity' | 'checksum', value }` object.
54
- */
55
- hash?: HashSpec | undefined;
56
- /**
57
- * Override the install root passed to Arborist. By default, the
58
- * install root is `~/.socket/_dlx/<cacheKey>/` (or
59
- * `SOCKET_DLX_DIR/<cacheKey>/`) — keyed by spec so multiple specs
60
- * share a parent dir without colliding. When `installRoot` is set,
61
- * the install root is the value verbatim — no cacheKey subdirectory.
62
- *
63
- * In both cases the package itself lands at
64
- * `<installRoot>/node_modules/<packageName>/` with transitive deps as
65
- * siblings under the same `node_modules/` directory. That layout is a
66
- * fixed property of Arborist; this option only controls the parent.
67
- *
68
- * That means **the caller is responsible for keeping per-spec
69
- * installs separated** — calling twice with the same `installRoot`
70
- * but different specs (e.g. `ink@7` and `ink@8`) overwrites the
71
- * earlier install. Either pass a different `installRoot` per spec or
72
- * pass `force: true` to accept the overwrite.
73
- *
74
- * Pass a sentinel name (e.g. `_dlx`, `_pkg`, `vendor`) — never one
75
- * that ends in `node_modules`, since that turns the install root
76
- * into something parent-walking resolvers, IDE indexers, and pnpm
77
- * hoisting will mistake for a workspace `node_modules/`.
78
- *
79
- * Use cases:
80
- * - Build pipelines that want the install gitignored alongside their
81
- * own outputs and walkable by tools that resolve through
82
- * `node_modules` (e.g. esbuild's `nodePaths`).
83
- * - Tests that need a deterministic, easily-cleaned install path.
84
- */
85
- installRoot?: string | undefined;
86
- /**
87
- * Vendored `package-lock.json` to drive a reproducible install. Accepts
88
- * a filesystem path (sniffed) or raw JSON content (sniffed via leading
89
- * `{`), or an explicit `{ type: 'path' | 'content', value }` object.
90
- *
91
- * When provided, the lockfile is written into the install dir before
92
- * Arborist runs and a hardened `.npmrc` is placed alongside it.
93
- */
94
- lockfile?: LockfileSpec | undefined;
95
- }
96
- export interface DlxPackageOptions extends EnsurePackageInstallOptions {
97
- /**
98
- * Package to install (e.g., '@cyclonedx/cdxgen@10.0.0').
99
- * Aligns with npx --package flag.
100
- */
101
- package: string;
102
- /**
103
- * Binary name to execute (optional - auto-detected in most cases).
104
- *
105
- * Auto-detection logic:
106
- * 1. If package has only one binary, uses it automatically
107
- * 2. Tries user-provided binaryName
108
- * 3. Tries last segment of package name (e.g., 'cli' from '@socketsecurity/cli')
109
- * 4. Falls back to first binary
110
- *
111
- * Only needed when package has multiple binaries and auto-detection fails.
112
- *
113
- * @example
114
- * // Auto-detected (single binary)
115
- * { package: '@socketsecurity/cli' } // Finds 'socket' binary automatically
116
- *
117
- * // Explicit (multiple binaries)
118
- * { package: 'some-tool', binaryName: 'specific-tool' }
119
- */
120
- binaryName?: string | undefined;
121
- /**
122
- * Force reinstallation even if package exists.
123
- * Aligns with npx --yes/-y flag behavior.
124
- */
125
- force?: boolean | undefined;
126
- /**
127
- * Skip confirmation prompts (auto-approve).
128
- * Aligns with npx --yes/-y flag.
129
- */
130
- yes?: boolean | undefined;
131
- /**
132
- * Suppress output (quiet mode).
133
- * Aligns with npx --quiet/-q and pnpm --silent/-s flags.
134
- */
135
- quiet?: boolean | undefined;
136
- /**
137
- * Additional spawn options for the execution.
138
- */
139
- spawnOptions?: SpawnOptions | undefined;
140
- }
141
- export interface DlxPackageResult {
142
- /** Path to the installed package directory. */
143
- packageDir: string;
144
- /** Path to the binary that was executed. */
145
- binaryPath: string;
146
- /** Whether the package was newly installed. */
147
- installed: boolean;
148
- /** The spawn promise for the running process. */
149
- spawnPromise: ReturnType<typeof spawn>;
150
- }
35
+ import { spawn } from '../spawn/spawn';
36
+ import type { DlxPackageOptions, DlxPackageResult, DownloadPackageResult, EnsurePackageInstallOptions } from './types';
37
+ import type { SpawnExtra, SpawnOptions } from '../spawn/types';
151
38
  /**
152
39
  * Execute a package via DLX - install if needed and run its binary.
153
40
  *
154
- * This is the Socket equivalent of npx/pnpm dlx/yarn dlx, but using
155
- * our own cache directory (~/.socket/_dlx) and installation logic.
41
+ * This is the Socket equivalent of npx/pnpm dlx/yarn dlx, but using our own
42
+ * cache directory (~/.socket/_dlx) and installation logic.
156
43
  *
157
44
  * Auto-forces reinstall for version ranges to get latest within range.
158
45
  *
159
46
  * @example
160
- * ```typescript
161
- * // Download and execute cdxgen
162
- * const result = await dlxPackage(
163
- * ['--version'],
164
- * { package: '@cyclonedx/cdxgen@10.0.0' }
165
- * )
166
- * await result.spawnPromise
167
- * ```
47
+ * ;```typescript
48
+ * // Download and execute cdxgen
49
+ * const result = await dlxPackage(['--version'], {
50
+ * package: '@cyclonedx/cdxgen@10.0.0',
51
+ * })
52
+ * await result.spawnPromise
53
+ * ```
168
54
  */
169
55
  export declare function dlxPackage(args: readonly string[] | string[], options: DlxPackageOptions, spawnExtra?: SpawnExtra | undefined): Promise<DlxPackageResult>;
170
56
  /**
171
- * Download and install a package without executing it.
172
- * This is useful for self-update or when you need the package files
173
- * but don't want to run the binary immediately.
57
+ * Download and install a package without executing it. This is useful for
58
+ * self-update or when you need the package files but don't want to run the
59
+ * binary immediately.
174
60
  *
175
61
  * @example
176
- * ```typescript
177
- * // Install @socketsecurity/cli without running it
178
- * const result = await downloadPackage({
179
- * package: '@socketsecurity/cli@1.2.0',
180
- * force: true
181
- * })
182
- * console.log('Installed to:', result.packageDir)
183
- * console.log('Binary at:', result.binaryPath)
184
- * ```
62
+ * ;```typescript
63
+ * // Install @socketsecurity/cli without running it
64
+ * const result = await downloadPackage({
65
+ * package: '@socketsecurity/cli@1.2.0',
66
+ * force: true,
67
+ * })
68
+ * console.log('Installed to:', result.packageDir)
69
+ * console.log('Binary at:', result.binaryPath)
70
+ * ```
185
71
  */
186
72
  export declare function downloadPackage(options: DlxPackageOptions): Promise<DownloadPackageResult>;
187
73
  /**
188
- * Install package to ~/.socket/_dlx/<hash>/ if not already installed.
189
- * Uses pacote for installation (no npm CLI required).
190
- * Protected by process lock to prevent concurrent installation corruption.
74
+ * Install package to ~/.socket/_dlx/<hash>/ if not already installed. Uses
75
+ * pacote for installation (no npm CLI required). Protected by process lock to
76
+ * prevent concurrent installation corruption.
191
77
  *
192
78
  * @example
193
- * ```typescript
194
- * const { installed, packageDir } = await ensurePackageInstalled(
79
+ * ```typescript
80
+ * const { installed, packageDir } = await ensurePackageInstalled(
195
81
  * 'prettier',
196
82
  * 'prettier@3.0.0',
197
- * false
198
- * )
199
- * console.log(`Installed: ${installed}, dir: ${packageDir}`)
200
- * ```
83
+ * false,
84
+ * )
85
+ * console.log(`Installed: ${installed}, dir: ${packageDir}`)
86
+ * ```
201
87
  */
202
88
  export declare function ensurePackageInstalled(packageName: string, packageSpec: string, force: boolean, install?: EnsurePackageInstallOptions | undefined): Promise<{
203
89
  installed: boolean;
204
90
  packageDir: string;
205
91
  }>;
206
92
  /**
207
- * Execute a package's binary with cross-platform shell handling.
208
- * The package must already be installed (use downloadPackage first).
93
+ * Execute a package's binary with cross-platform shell handling. The package
94
+ * must already be installed (use downloadPackage first).
209
95
  *
210
- * On Windows, script files (.bat, .cmd, .ps1) require shell: true.
211
- * Matches npm/npx execution behavior.
96
+ * On Windows, script files (.bat, .cmd, .ps1) require shell: true. Matches
97
+ * npm/npx execution behavior.
212
98
  *
213
99
  * @example
214
- * ```typescript
215
- * // Execute an already-installed package
216
- * const downloaded = await downloadPackage({ package: 'cowsay@1.5.0' })
217
- * const result = await executePackage(
218
- * downloaded.binaryPath,
219
- * ['Hello World'],
220
- * { stdio: 'inherit' }
221
- * )
222
- * ```
100
+ * ;```typescript
101
+ * // Execute an already-installed package
102
+ * const downloaded = await downloadPackage({ package: 'cowsay@1.5.0' })
103
+ * const result = await executePackage(
104
+ * downloaded.binaryPath,
105
+ * ['Hello World'],
106
+ * { stdio: 'inherit' },
107
+ * )
108
+ * ```
223
109
  */
224
110
  export declare function executePackage(binaryPath: string, args: readonly string[] | string[], spawnOptions?: SpawnOptions | undefined, spawnExtra?: SpawnExtra | undefined): ReturnType<typeof spawn>;
225
- /**
226
- * Find the binary path for an installed package.
227
- * Uses npm's bin resolution strategy with user-friendly fallbacks.
228
- * Resolves platform-specific wrappers (.cmd, .ps1, etc.) on Windows.
229
- *
230
- * Resolution strategy (cherry-picked from libnpmexec):
231
- * 1. Use npm's getBinFromManifest (handles aliases and standard cases)
232
- * 2. Fall back to user-provided binaryName if npm's strategy fails
233
- * 3. Try last segment of package name as final fallback
234
- * 4. Use first binary as last resort
235
- *
236
- * @example
237
- * ```typescript
238
- * const binPath = findBinaryPath(
239
- * '/tmp/.socket/_dlx/a1b2c3d4',
240
- * 'prettier'
241
- * )
242
- * console.log(`Binary: ${binPath}`)
243
- * ```
244
- */
245
- export declare function findBinaryPath(packageDir: string, packageName: string, binaryName?: string): string;
246
- /**
247
- * Make all binaries in an installed package executable.
248
- * Reads the package.json bin field and makes all binaries executable (chmod 0o755).
249
- * Handles both single binary (string) and multiple binaries (object) formats.
250
- *
251
- * Aligns with npm's approach:
252
- * - Uses 0o755 permission (matches npm's cmd-shim)
253
- * - Reads bin field from package.json (matches npm's bin-links and libnpmexec)
254
- * - Handles both string and object bin formats
255
- *
256
- * References:
257
- * - npm cmd-shim: https://github.com/npm/cmd-shim/blob/main/lib/index.js
258
- * - npm getBinFromManifest: https://github.com/npm/libnpmexec/blob/main/lib/get-bin-from-manifest.js
259
- *
260
- * @example
261
- * ```typescript
262
- * makePackageBinsExecutable(
263
- * '/tmp/.socket/_dlx/a1b2c3d4',
264
- * 'prettier'
265
- * )
266
- * ```
267
- */
268
- export declare function makePackageBinsExecutable(packageDir: string, packageName: string): void;
269
- /**
270
- * Build a PURL string for an npm package.
271
- * Follows the PURL spec for the npm type:
272
- * - Scoped: `@scope/pkg` → `pkg:npm/%40scope/pkg@version`
273
- * - Unscoped: `pkg` → `pkg:npm/pkg@version`
274
- *
275
- */
276
- export declare function npmPurl(name: string, version: string): string;
277
- /**
278
- * Parse package spec into name and version using npm-package-arg.
279
- * Examples:
280
- * - 'lodash@4.17.21' → { name: 'lodash', version: '4.17.21' }
281
- * - '@scope/pkg@1.0.0' → { name: '@scope/pkg', version: '1.0.0' }
282
- * - 'lodash' → { name: 'lodash', version: undefined }
283
- *
284
- * @example
285
- * ```typescript
286
- * parsePackageSpec('lodash@4.17.21')
287
- * // { name: 'lodash', version: '4.17.21' }
288
- *
289
- * parsePackageSpec('@scope/pkg')
290
- * // { name: '@scope/pkg', version: undefined }
291
- * ```
292
- */
293
- export declare function parsePackageSpec(spec: string): {
294
- name: string;
295
- version: string | undefined;
296
- };
297
- /**
298
- * Resolve binary path with cross-platform wrapper support.
299
- * On Windows, checks for .cmd, .bat, .ps1, .exe wrappers in order.
300
- * On Unix, uses path directly.
301
- *
302
- * Aligns with npm/npx binary resolution strategy.
303
- *
304
- * @example
305
- * ```typescript
306
- * const resolved = resolveBinaryPath('/tmp/.socket/_dlx/a1b2c3d4/prettier')
307
- * // On Windows: may resolve to '.cmd' or '.ps1' wrapper
308
- * // On Unix: returns the path unchanged
309
- * ```
310
- */
311
- export declare function resolveBinaryPath(basePath: string): string;
111
+ export { binaryPathCacheSet } from './_internal';
112
+ export { findBinaryPath, makePackageBinsExecutable, resolveBinaryPath, } from './binary-resolution';
113
+ export { checkFirewallPurls, npmPurl } from './firewall';
114
+ export { parsePackageSpec } from './spec';
115
+ export type { DlxPackageOptions, DlxPackageResult, DownloadPackageResult, EnsurePackageInstallOptions, } from './types';