@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,71 +1,181 @@
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 staged_exports = {};
22
- __export(staged_exports, {
23
- getStagedFiles: () => getStagedFiles,
24
- getStagedFilesSync: () => getStagedFilesSync,
25
- isStaged: () => isStaged,
26
- isStagedSync: () => isStagedSync
27
- });
28
- module.exports = __toCommonJS(staged_exports);
29
- var import_normalize = require("../paths/normalize");
30
- var import_array = require("../primordials/array");
31
- var import_internal = require("./_internal");
32
- var import_repo = require("./repo");
2
+ /* Socket Lib - Built with rolldown */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_paths_normalize = require('../paths/normalize.js');
5
+ const require_primordials_array = require('../primordials/array.js');
6
+ const require_node_path = require('../node/path.js');
7
+ const require_git_repo = require('./repo.js');
8
+ const require_git__internal = require('./_internal.js');
9
+
10
+ //#region src/git/staged.ts
11
+ /**
12
+ * @file "Ready for the next commit" helpers — `git diff --cached` over only the
13
+ * index. Excludes unstaged tracked-file edits and untracked paths; use
14
+ * `changed.ts` if you need the broader view.
15
+ */
16
+ /**
17
+ * Get staged files ready for commit (changes added with `git add`).
18
+ *
19
+ * Uses `git diff --cached --name-only` which returns only staged changes. Does
20
+ * NOT include: - Unstaged modifications (changes not added with `git add`) -
21
+ * Untracked files (new files not added to git)
22
+ *
23
+ * This is a focused check for what will be included in the next commit. Useful
24
+ * for validating changes before committing or running pre-commit hooks.
25
+ *
26
+ * @example
27
+ * ;```typescript
28
+ * // Get currently staged files
29
+ * const files = await getStagedFiles()
30
+ * // => ['src/foo.ts']
31
+ *
32
+ * // Stage more files
33
+ * await spawn('git', ['add', 'src/bar.ts'])
34
+ * const files = await getStagedFiles()
35
+ * // => ['src/foo.ts', 'src/bar.ts']
36
+ *
37
+ * // Get absolute paths
38
+ * const files = await getStagedFiles({ absolute: true })
39
+ * // => ['/path/to/repo/src/foo.ts', ...]
40
+ * ```
41
+ *
42
+ * @param options - Options controlling path format and filtering.
43
+ *
44
+ * @returns Promise resolving to array of staged file paths.
45
+ */
33
46
  async function getStagedFiles(options) {
34
- const args = (0, import_internal.getGitDiffSpawnArgs)(options?.cwd).staged;
35
- return await (0, import_internal.innerDiff)(args, options);
47
+ const args = require_git__internal.getGitDiffSpawnArgs(options?.cwd).staged;
48
+ return await require_git__internal.innerDiff(args, options);
36
49
  }
50
+ /**
51
+ * Get staged files ready for commit (changes added with `git add`).
52
+ *
53
+ * Synchronous version of `getStagedFiles()`. Uses `git diff --cached
54
+ * --name-only` which returns only staged changes. Does NOT include: - Unstaged
55
+ * modifications (changes not added with `git add`) - Untracked files (new files
56
+ * not added to git)
57
+ *
58
+ * This is a focused check for what will be included in the next commit. Useful
59
+ * for validating changes before committing or running pre-commit hooks.
60
+ *
61
+ * @example
62
+ * ;```typescript
63
+ * // Get currently staged files
64
+ * const files = getStagedFilesSync()
65
+ * // => ['src/foo.ts']
66
+ *
67
+ * // Stage more files
68
+ * spawnSync('git', ['add', 'src/bar.ts'])
69
+ * const files = getStagedFilesSync()
70
+ * // => ['src/foo.ts', 'src/bar.ts']
71
+ *
72
+ * // Get absolute paths
73
+ * const files = getStagedFilesSync({ absolute: true })
74
+ * // => ['/path/to/repo/src/foo.ts', ...]
75
+ * ```
76
+ *
77
+ * @param options - Options controlling path format and filtering.
78
+ *
79
+ * @returns Array of staged file paths.
80
+ */
37
81
  function getStagedFilesSync(options) {
38
- const args = (0, import_internal.getGitDiffSpawnArgs)(options?.cwd).staged;
39
- return (0, import_internal.innerDiffSync)(args, options);
82
+ const args = require_git__internal.getGitDiffSpawnArgs(options?.cwd).staged;
83
+ return require_git__internal.innerDiffSync(args, options);
40
84
  }
85
+ /**
86
+ * Check if a file or directory is staged for commit.
87
+ *
88
+ * Checks if the given pathname has changes staged with `git add` that will be
89
+ * included in the next commit. Does NOT include: - Unstaged modifications
90
+ * (changes not added with `git add`) - Untracked files (new files not in git)
91
+ *
92
+ * For directories, returns `true` if ANY file within the directory is staged.
93
+ *
94
+ * Symlinks in the pathname and cwd are automatically resolved using
95
+ * `fs.realpathSync()` before comparison.
96
+ *
97
+ * @example
98
+ * ;```typescript
99
+ * // Check if file is staged
100
+ * const staged = await isStaged('src/foo.ts')
101
+ * // => false
102
+ *
103
+ * // Stage the file
104
+ * await spawn('git', ['add', 'src/foo.ts'])
105
+ * const staged = await isStaged('src/foo.ts')
106
+ * // => true
107
+ *
108
+ * // Check directory
109
+ * const staged = await isStaged('src/')
110
+ * // => true (if any file in src/ is staged)
111
+ * ```
112
+ *
113
+ * @param pathname - File or directory path to check.
114
+ * @param options - Options for the git diff check.
115
+ *
116
+ * @returns Promise resolving to `true` if path is staged, `false` otherwise.
117
+ */
41
118
  async function isStaged(pathname, options) {
42
- const files = await getStagedFiles({
43
- __proto__: null,
44
- ...options,
45
- absolute: false
46
- });
47
- const path = (0, import_repo.getPath)();
48
- const resolvedPathname = (0, import_repo.getCachedRealpath)(pathname);
49
- const baseCwd = options?.cwd ? (0, import_repo.getCachedRealpath)(options["cwd"]) : (0, import_repo.getCwd)();
50
- const relativePath = (0, import_normalize.normalizePath)(path.relative(baseCwd, resolvedPathname));
51
- return (0, import_array.ArrayPrototypeIncludes)(files, relativePath);
119
+ const files = await getStagedFiles({
120
+ __proto__: null,
121
+ ...options,
122
+ absolute: false
123
+ });
124
+ const path = /* @__PURE__ */ require_node_path.getNodePath();
125
+ const resolvedPathname = require_git_repo.getCachedRealpath(pathname);
126
+ /* c8 ignore start */
127
+ const baseCwd = options?.cwd ? require_git_repo.getCachedRealpath(options["cwd"]) : require_git_repo.getCwd();
128
+ return require_primordials_array.ArrayPrototypeIncludes(files, /* @__PURE__ */ require_paths_normalize.normalizePath(path.relative(baseCwd, resolvedPathname)));
52
129
  }
130
+ /**
131
+ * Check if a file or directory is staged for commit.
132
+ *
133
+ * Synchronous version of `isStaged()`. Checks if the given pathname has changes
134
+ * staged with `git add` that will be included in the next commit. Does NOT
135
+ * include: - Unstaged modifications (changes not added with `git add`) -
136
+ * Untracked files (new files not in git)
137
+ *
138
+ * For directories, returns `true` if ANY file within the directory is staged.
139
+ *
140
+ * Symlinks in the pathname and cwd are automatically resolved using
141
+ * `fs.realpathSync()` before comparison.
142
+ *
143
+ * @example
144
+ * ;```typescript
145
+ * // Check if file is staged
146
+ * const staged = isStagedSync('src/foo.ts')
147
+ * // => false
148
+ *
149
+ * // Stage the file
150
+ * spawnSync('git', ['add', 'src/foo.ts'])
151
+ * const staged = isStagedSync('src/foo.ts')
152
+ * // => true
153
+ *
154
+ * // Check directory
155
+ * const staged = isStagedSync('src/')
156
+ * // => true (if any file in src/ is staged)
157
+ * ```
158
+ *
159
+ * @param pathname - File or directory path to check.
160
+ * @param options - Options for the git diff check.
161
+ *
162
+ * @returns `true` if path is staged, `false` otherwise.
163
+ */
53
164
  function isStagedSync(pathname, options) {
54
- const files = getStagedFilesSync({
55
- __proto__: null,
56
- ...options,
57
- absolute: false
58
- });
59
- const path = (0, import_repo.getPath)();
60
- const resolvedPathname = (0, import_repo.getCachedRealpath)(pathname);
61
- const baseCwd = options?.cwd ? (0, import_repo.getCachedRealpath)(options["cwd"]) : (0, import_repo.getCwd)();
62
- const relativePath = (0, import_normalize.normalizePath)(path.relative(baseCwd, resolvedPathname));
63
- return (0, import_array.ArrayPrototypeIncludes)(files, relativePath);
165
+ const files = getStagedFilesSync({
166
+ __proto__: null,
167
+ ...options,
168
+ absolute: false
169
+ });
170
+ const path = /* @__PURE__ */ require_node_path.getNodePath();
171
+ const resolvedPathname = require_git_repo.getCachedRealpath(pathname);
172
+ /* c8 ignore start */
173
+ const baseCwd = options?.cwd ? require_git_repo.getCachedRealpath(options["cwd"]) : require_git_repo.getCwd();
174
+ return require_primordials_array.ArrayPrototypeIncludes(files, /* @__PURE__ */ require_paths_normalize.normalizePath(path.relative(baseCwd, resolvedPathname)));
64
175
  }
65
- // Annotate the CommonJS export names for ESM import in node:
66
- 0 && (module.exports = {
67
- getStagedFiles,
68
- getStagedFilesSync,
69
- isStaged,
70
- isStagedSync
71
- });
176
+
177
+ //#endregion
178
+ exports.getStagedFiles = getStagedFiles;
179
+ exports.getStagedFilesSync = getStagedFilesSync;
180
+ exports.isStaged = isStaged;
181
+ exports.isStagedSync = isStagedSync;
package/dist/git/types.js CHANGED
@@ -1,18 +1,2 @@
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 __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") {
10
- for (let key of __getOwnPropNames(from))
11
- if (!__hasOwnProp.call(to, key) && key !== except)
12
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
- }
14
- return to;
15
- };
16
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
17
- var types_exports = {};
18
- module.exports = __toCommonJS(types_exports);
2
+ /* Socket Lib - Built with rolldown */
@@ -1,71 +1,184 @@
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 unstaged_exports = {};
22
- __export(unstaged_exports, {
23
- getUnstagedFiles: () => getUnstagedFiles,
24
- getUnstagedFilesSync: () => getUnstagedFilesSync,
25
- isUnstaged: () => isUnstaged,
26
- isUnstagedSync: () => isUnstagedSync
27
- });
28
- module.exports = __toCommonJS(unstaged_exports);
29
- var import_normalize = require("../paths/normalize");
30
- var import_array = require("../primordials/array");
31
- var import_internal = require("./_internal");
32
- var import_repo = require("./repo");
2
+ /* Socket Lib - Built with rolldown */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_paths_normalize = require('../paths/normalize.js');
5
+ const require_primordials_array = require('../primordials/array.js');
6
+ const require_node_path = require('../node/path.js');
7
+ const require_git_repo = require('./repo.js');
8
+ const require_git__internal = require('./_internal.js');
9
+
10
+ //#region src/git/unstaged.ts
11
+ /**
12
+ * @file "Edited but not yet staged" helpers — `git diff` over the working tree
13
+ * only. Excludes index-staged changes and untracked paths; use `changed.ts`
14
+ * for the broader view or `staged.ts` for the index.
15
+ */
16
+ /**
17
+ * Get unstaged modified files (changes not yet staged for commit).
18
+ *
19
+ * Uses `git diff --name-only` which returns only unstaged modifications to
20
+ * tracked files. Does NOT include: - Untracked files (new files not added to
21
+ * git) - Staged changes (files added with `git add`)
22
+ *
23
+ * This is a focused check for uncommitted changes to existing tracked files.
24
+ * Useful for detecting work-in-progress modifications before staging.
25
+ *
26
+ * @example
27
+ * ;```typescript
28
+ * // Get unstaged files
29
+ * const files = await getUnstagedFiles()
30
+ * // => ['src/foo.ts', 'src/bar.ts']
31
+ *
32
+ * // After staging some files
33
+ * await spawn('git', ['add', 'src/foo.ts'])
34
+ * const files = await getUnstagedFiles()
35
+ * // => ['src/bar.ts'] (foo.ts no longer included)
36
+ *
37
+ * // Get absolute paths
38
+ * const files = await getUnstagedFiles({ absolute: true })
39
+ * // => ['/path/to/repo/src/bar.ts']
40
+ * ```
41
+ *
42
+ * @param options - Options controlling path format and filtering.
43
+ *
44
+ * @returns Promise resolving to array of unstaged file paths.
45
+ */
33
46
  async function getUnstagedFiles(options) {
34
- const args = (0, import_internal.getGitDiffSpawnArgs)(options?.cwd).unstaged;
35
- return await (0, import_internal.innerDiff)(args, options);
47
+ const args = require_git__internal.getGitDiffSpawnArgs(options?.cwd).unstaged;
48
+ return await require_git__internal.innerDiff(args, options);
36
49
  }
50
+ /**
51
+ * Get unstaged modified files (changes not yet staged for commit).
52
+ *
53
+ * Synchronous version of `getUnstagedFiles()`. Uses `git diff --name-only`
54
+ * which returns only unstaged modifications to tracked files. Does NOT include:
55
+ * - Untracked files (new files not added to git) - Staged changes (files added
56
+ * with `git add`)
57
+ *
58
+ * This is a focused check for uncommitted changes to existing tracked files.
59
+ * Useful for detecting work-in-progress modifications before staging.
60
+ *
61
+ * @example
62
+ * ;```typescript
63
+ * // Get unstaged files
64
+ * const files = getUnstagedFilesSync()
65
+ * // => ['src/foo.ts', 'src/bar.ts']
66
+ *
67
+ * // After staging some files
68
+ * spawnSync('git', ['add', 'src/foo.ts'])
69
+ * const files = getUnstagedFilesSync()
70
+ * // => ['src/bar.ts'] (foo.ts no longer included)
71
+ *
72
+ * // Get absolute paths
73
+ * const files = getUnstagedFilesSync({ absolute: true })
74
+ * // => ['/path/to/repo/src/bar.ts']
75
+ * ```
76
+ *
77
+ * @param options - Options controlling path format and filtering.
78
+ *
79
+ * @returns Array of unstaged file paths.
80
+ */
37
81
  function getUnstagedFilesSync(options) {
38
- const args = (0, import_internal.getGitDiffSpawnArgs)(options?.cwd).unstaged;
39
- return (0, import_internal.innerDiffSync)(args, options);
82
+ const args = require_git__internal.getGitDiffSpawnArgs(options?.cwd).unstaged;
83
+ return require_git__internal.innerDiffSync(args, options);
40
84
  }
85
+ /**
86
+ * Check if a file or directory has unstaged changes.
87
+ *
88
+ * Checks if the given pathname has modifications that are not yet staged for
89
+ * commit (changes not added with `git add`). Does NOT include: - Staged changes
90
+ * (already added with `git add`) - Untracked files (new files not in git)
91
+ *
92
+ * For directories, returns `true` if ANY file within the directory has unstaged
93
+ * changes.
94
+ *
95
+ * Symlinks in the pathname and cwd are automatically resolved using
96
+ * `fs.realpathSync()` before comparison.
97
+ *
98
+ * @example
99
+ * ;```typescript
100
+ * // Check if file has unstaged changes
101
+ * const unstaged = await isUnstaged('src/foo.ts')
102
+ * // => true
103
+ *
104
+ * // After staging the file
105
+ * await spawn('git', ['add', 'src/foo.ts'])
106
+ * const unstaged = await isUnstaged('src/foo.ts')
107
+ * // => false
108
+ *
109
+ * // Check directory
110
+ * const unstaged = await isUnstaged('src/')
111
+ * // => true (if any file in src/ has unstaged changes)
112
+ * ```
113
+ *
114
+ * @param pathname - File or directory path to check.
115
+ * @param options - Options for the git diff check.
116
+ *
117
+ * @returns Promise resolving to `true` if path has unstaged changes, `false`
118
+ * otherwise.
119
+ */
41
120
  async function isUnstaged(pathname, options) {
42
- const files = await getUnstagedFiles({
43
- __proto__: null,
44
- ...options,
45
- absolute: false
46
- });
47
- const path = (0, import_repo.getPath)();
48
- const resolvedPathname = (0, import_repo.getCachedRealpath)(pathname);
49
- const baseCwd = options?.cwd ? (0, import_repo.getCachedRealpath)(options["cwd"]) : (0, import_repo.getCwd)();
50
- const relativePath = (0, import_normalize.normalizePath)(path.relative(baseCwd, resolvedPathname));
51
- return (0, import_array.ArrayPrototypeIncludes)(files, relativePath);
121
+ const files = await getUnstagedFiles({
122
+ __proto__: null,
123
+ ...options,
124
+ absolute: false
125
+ });
126
+ const path = /* @__PURE__ */ require_node_path.getNodePath();
127
+ const resolvedPathname = require_git_repo.getCachedRealpath(pathname);
128
+ /* c8 ignore start */
129
+ const baseCwd = options?.cwd ? require_git_repo.getCachedRealpath(options["cwd"]) : require_git_repo.getCwd();
130
+ return require_primordials_array.ArrayPrototypeIncludes(files, /* @__PURE__ */ require_paths_normalize.normalizePath(path.relative(baseCwd, resolvedPathname)));
52
131
  }
132
+ /**
133
+ * Check if a file or directory has unstaged changes.
134
+ *
135
+ * Synchronous version of `isUnstaged()`. Checks if the given pathname has
136
+ * modifications that are not yet staged for commit (changes not added with `git
137
+ * add`). Does NOT include: - Staged changes (already added with `git add`) -
138
+ * Untracked files (new files not in git)
139
+ *
140
+ * For directories, returns `true` if ANY file within the directory has unstaged
141
+ * changes.
142
+ *
143
+ * Symlinks in the pathname and cwd are automatically resolved using
144
+ * `fs.realpathSync()` before comparison.
145
+ *
146
+ * @example
147
+ * ;```typescript
148
+ * // Check if file has unstaged changes
149
+ * const unstaged = isUnstagedSync('src/foo.ts')
150
+ * // => true
151
+ *
152
+ * // After staging the file
153
+ * spawnSync('git', ['add', 'src/foo.ts'])
154
+ * const unstaged = isUnstagedSync('src/foo.ts')
155
+ * // => false
156
+ *
157
+ * // Check directory
158
+ * const unstaged = isUnstagedSync('src/')
159
+ * // => true (if any file in src/ has unstaged changes)
160
+ * ```
161
+ *
162
+ * @param pathname - File or directory path to check.
163
+ * @param options - Options for the git diff check.
164
+ *
165
+ * @returns `true` if path has unstaged changes, `false` otherwise.
166
+ */
53
167
  function isUnstagedSync(pathname, options) {
54
- const files = getUnstagedFilesSync({
55
- __proto__: null,
56
- ...options,
57
- absolute: false
58
- });
59
- const path = (0, import_repo.getPath)();
60
- const resolvedPathname = (0, import_repo.getCachedRealpath)(pathname);
61
- const baseCwd = options?.cwd ? (0, import_repo.getCachedRealpath)(options["cwd"]) : (0, import_repo.getCwd)();
62
- const relativePath = (0, import_normalize.normalizePath)(path.relative(baseCwd, resolvedPathname));
63
- return (0, import_array.ArrayPrototypeIncludes)(files, relativePath);
168
+ const files = getUnstagedFilesSync({
169
+ __proto__: null,
170
+ ...options,
171
+ absolute: false
172
+ });
173
+ const path = /* @__PURE__ */ require_node_path.getNodePath();
174
+ const resolvedPathname = require_git_repo.getCachedRealpath(pathname);
175
+ /* c8 ignore start */
176
+ const baseCwd = options?.cwd ? require_git_repo.getCachedRealpath(options["cwd"]) : require_git_repo.getCwd();
177
+ return require_primordials_array.ArrayPrototypeIncludes(files, /* @__PURE__ */ require_paths_normalize.normalizePath(path.relative(baseCwd, resolvedPathname)));
64
178
  }
65
- // Annotate the CommonJS export names for ESM import in node:
66
- 0 && (module.exports = {
67
- getUnstagedFiles,
68
- getUnstagedFilesSync,
69
- isUnstaged,
70
- isUnstagedSync
71
- });
179
+
180
+ //#endregion
181
+ exports.getUnstagedFiles = getUnstagedFiles;
182
+ exports.getUnstagedFilesSync = getUnstagedFilesSync;
183
+ exports.isUnstaged = isUnstaged;
184
+ exports.isUnstagedSync = isUnstagedSync;
@@ -1,36 +1,28 @@
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 constants_exports = {};
22
- __export(constants_exports, {
23
- DEFAULT_CACHE_TTL_MS: () => DEFAULT_CACHE_TTL_MS,
24
- GITHUB_API_BASE_URL: () => GITHUB_API_BASE_URL,
25
- GITHUB_GRAPHQL_URL: () => GITHUB_GRAPHQL_URL
26
- });
27
- module.exports = __toCommonJS(constants_exports);
2
+ /* Socket Lib - Built with rolldown */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ //#region src/github/constants.ts
6
+ /**
7
+ * @file GitHub API URL + cache-TTL constants. Inlined so values are captured at
8
+ * coverage-mode bundle time rather than referenced through a module graph
9
+ * indirection.
10
+ */
11
+ /**
12
+ * GitHub REST API base URL.
13
+ */
28
14
  const GITHUB_API_BASE_URL = "https://api.github.com";
15
+ /**
16
+ * GitHub GraphQL API endpoint.
17
+ */
29
18
  const GITHUB_GRAPHQL_URL = "https://api.github.com/graphql";
30
- const DEFAULT_CACHE_TTL_MS = 5 * 60 * 1e3;
31
- // Annotate the CommonJS export names for ESM import in node:
32
- 0 && (module.exports = {
33
- DEFAULT_CACHE_TTL_MS,
34
- GITHUB_API_BASE_URL,
35
- GITHUB_GRAPHQL_URL
36
- });
19
+ /**
20
+ * Default TTL for the GitHub cache (5 minutes). Used by ref resolution and the
21
+ * GHSA cache layer.
22
+ */
23
+ const DEFAULT_CACHE_TTL_MS = 300 * 1e3;
24
+
25
+ //#endregion
26
+ exports.DEFAULT_CACHE_TTL_MS = DEFAULT_CACHE_TTL_MS;
27
+ exports.GITHUB_API_BASE_URL = GITHUB_API_BASE_URL;
28
+ exports.GITHUB_GRAPHQL_URL = GITHUB_GRAPHQL_URL;