@socketsecurity/lib 0.0.0 → 1.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 (555) hide show
  1. package/CHANGELOG.md +270 -0
  2. package/LICENSE +21 -0
  3. package/README.md +80 -2
  4. package/data/extensions.json +28 -0
  5. package/dist/abort.d.ts +11 -0
  6. package/dist/abort.js +62 -0
  7. package/dist/abort.js.map +7 -0
  8. package/dist/agent.d.ts +102 -0
  9. package/dist/agent.js +288 -0
  10. package/dist/agent.js.map +7 -0
  11. package/dist/ansi.d.ts +29 -0
  12. package/dist/ansi.js +62 -0
  13. package/dist/ansi.js.map +7 -0
  14. package/dist/argv/flags.d.ts +199 -0
  15. package/dist/argv/flags.js +284 -0
  16. package/dist/argv/flags.js.map +7 -0
  17. package/dist/argv/parse.d.ts +76 -0
  18. package/dist/argv/parse.js +173 -0
  19. package/dist/argv/parse.js.map +7 -0
  20. package/dist/arrays.d.ts +29 -0
  21. package/dist/arrays.js +87 -0
  22. package/dist/arrays.js.map +7 -0
  23. package/dist/bin.d.ts +50 -0
  24. package/dist/bin.js +405 -0
  25. package/dist/bin.js.map +7 -0
  26. package/dist/cacache.d.ts +86 -0
  27. package/dist/cacache.js +140 -0
  28. package/dist/cacache.js.map +7 -0
  29. package/dist/cache-with-ttl.d.ts +133 -0
  30. package/dist/cache-with-ttl.js +225 -0
  31. package/dist/cache-with-ttl.js.map +7 -0
  32. package/dist/constants/agents.d.ts +37 -0
  33. package/dist/constants/agents.js +128 -0
  34. package/dist/constants/agents.js.map +7 -0
  35. package/dist/constants/core.d.ts +22 -0
  36. package/dist/constants/core.js +59 -0
  37. package/dist/constants/core.js.map +7 -0
  38. package/dist/constants/encoding.d.ts +13 -0
  39. package/dist/constants/encoding.js +50 -0
  40. package/dist/constants/encoding.js.map +7 -0
  41. package/dist/constants/github.d.ts +7 -0
  42. package/dist/constants/github.js +32 -0
  43. package/dist/constants/github.js.map +7 -0
  44. package/dist/constants/licenses.d.ts +8 -0
  45. package/dist/constants/licenses.js +68 -0
  46. package/dist/constants/licenses.js.map +7 -0
  47. package/dist/constants/node.d.ts +29 -0
  48. package/dist/constants/node.js +173 -0
  49. package/dist/constants/node.js.map +7 -0
  50. package/dist/constants/packages.d.ts +19 -0
  51. package/dist/constants/packages.js +130 -0
  52. package/dist/constants/packages.js.map +7 -0
  53. package/dist/constants/paths.d.ts +51 -0
  54. package/dist/constants/paths.js +152 -0
  55. package/dist/constants/paths.js.map +7 -0
  56. package/dist/constants/platform.d.ts +6 -0
  57. package/dist/constants/platform.js +43 -0
  58. package/dist/constants/platform.js.map +7 -0
  59. package/dist/constants/process.d.ts +7 -0
  60. package/dist/constants/process.js +54 -0
  61. package/dist/constants/process.js.map +7 -0
  62. package/dist/constants/socket.d.ts +29 -0
  63. package/dist/constants/socket.js +83 -0
  64. package/dist/constants/socket.js.map +7 -0
  65. package/dist/constants/testing.d.ts +9 -0
  66. package/dist/constants/testing.js +38 -0
  67. package/dist/constants/testing.js.map +7 -0
  68. package/dist/constants/time.d.ts +11 -0
  69. package/dist/constants/time.js +41 -0
  70. package/dist/constants/time.js.map +7 -0
  71. package/dist/constants/typescript.d.ts +6 -0
  72. package/dist/constants/typescript.js +56 -0
  73. package/dist/constants/typescript.js.map +7 -0
  74. package/dist/cover/code.d.ts +8 -0
  75. package/dist/cover/code.js +137 -0
  76. package/dist/cover/code.js.map +7 -0
  77. package/dist/cover/formatters.d.ts +9 -0
  78. package/dist/cover/formatters.js +103 -0
  79. package/dist/cover/formatters.js.map +7 -0
  80. package/dist/cover/type.d.ts +7 -0
  81. package/dist/cover/type.js +65 -0
  82. package/dist/cover/type.js.map +7 -0
  83. package/dist/cover/types.d.ts +70 -0
  84. package/dist/cover/types.js +17 -0
  85. package/dist/cover/types.js.map +7 -0
  86. package/dist/debug.d.ts +99 -0
  87. package/dist/debug.js +345 -0
  88. package/dist/debug.js.map +7 -0
  89. package/dist/dlx-binary.d.ts +49 -0
  90. package/dist/dlx-binary.js +261 -0
  91. package/dist/dlx-binary.js.map +7 -0
  92. package/dist/dlx.d.ts +64 -0
  93. package/dist/dlx.js +168 -0
  94. package/dist/dlx.js.map +7 -0
  95. package/dist/download-lock.d.ts +48 -0
  96. package/dist/download-lock.js +139 -0
  97. package/dist/download-lock.js.map +7 -0
  98. package/dist/effects/pulse-frames.d.ts +23 -0
  99. package/dist/effects/pulse-frames.js +66 -0
  100. package/dist/effects/pulse-frames.js.map +7 -0
  101. package/dist/effects/text-shimmer.d.ts +37 -0
  102. package/dist/effects/text-shimmer.js +175 -0
  103. package/dist/effects/text-shimmer.js.map +7 -0
  104. package/dist/effects/types.d.ts +41 -0
  105. package/dist/effects/types.js +17 -0
  106. package/dist/effects/types.js.map +7 -0
  107. package/dist/effects/ultra.d.ts +16 -0
  108. package/dist/effects/ultra.js +63 -0
  109. package/dist/effects/ultra.js.map +7 -0
  110. package/dist/env/appdata.d.ts +1 -0
  111. package/dist/env/appdata.js +30 -0
  112. package/dist/env/appdata.js.map +7 -0
  113. package/dist/env/ci.d.ts +1 -0
  114. package/dist/env/ci.js +31 -0
  115. package/dist/env/ci.js.map +7 -0
  116. package/dist/env/comspec.d.ts +1 -0
  117. package/dist/env/comspec.js +30 -0
  118. package/dist/env/comspec.js.map +7 -0
  119. package/dist/env/debug.d.ts +1 -0
  120. package/dist/env/debug.js +30 -0
  121. package/dist/env/debug.js.map +7 -0
  122. package/dist/env/getters.d.ts +40 -0
  123. package/dist/env/getters.js +283 -0
  124. package/dist/env/getters.js.map +7 -0
  125. package/dist/env/github-api-url.d.ts +1 -0
  126. package/dist/env/github-api-url.js +30 -0
  127. package/dist/env/github-api-url.js.map +7 -0
  128. package/dist/env/github-base-ref.d.ts +1 -0
  129. package/dist/env/github-base-ref.js +30 -0
  130. package/dist/env/github-base-ref.js.map +7 -0
  131. package/dist/env/github-ref-name.d.ts +1 -0
  132. package/dist/env/github-ref-name.js +30 -0
  133. package/dist/env/github-ref-name.js.map +7 -0
  134. package/dist/env/github-ref-type.d.ts +1 -0
  135. package/dist/env/github-ref-type.js +30 -0
  136. package/dist/env/github-ref-type.js.map +7 -0
  137. package/dist/env/github-repository.d.ts +1 -0
  138. package/dist/env/github-repository.js +30 -0
  139. package/dist/env/github-repository.js.map +7 -0
  140. package/dist/env/github-server-url.d.ts +1 -0
  141. package/dist/env/github-server-url.js +30 -0
  142. package/dist/env/github-server-url.js.map +7 -0
  143. package/dist/env/github-token.d.ts +1 -0
  144. package/dist/env/github-token.js +30 -0
  145. package/dist/env/github-token.js.map +7 -0
  146. package/dist/env/helpers.d.ts +6 -0
  147. package/dist/env/helpers.js +49 -0
  148. package/dist/env/helpers.js.map +7 -0
  149. package/dist/env/home.d.ts +1 -0
  150. package/dist/env/home.js +30 -0
  151. package/dist/env/home.js.map +7 -0
  152. package/dist/env/jest-worker-id.d.ts +1 -0
  153. package/dist/env/jest-worker-id.js +30 -0
  154. package/dist/env/jest-worker-id.js.map +7 -0
  155. package/dist/env/lang.d.ts +1 -0
  156. package/dist/env/lang.js +30 -0
  157. package/dist/env/lang.js.map +7 -0
  158. package/dist/env/lc-all.d.ts +1 -0
  159. package/dist/env/lc-all.js +30 -0
  160. package/dist/env/lc-all.js.map +7 -0
  161. package/dist/env/lc-messages.d.ts +1 -0
  162. package/dist/env/lc-messages.js +30 -0
  163. package/dist/env/lc-messages.js.map +7 -0
  164. package/dist/env/localappdata.d.ts +1 -0
  165. package/dist/env/localappdata.js +30 -0
  166. package/dist/env/localappdata.js.map +7 -0
  167. package/dist/env/node-auth-token.d.ts +1 -0
  168. package/dist/env/node-auth-token.js +30 -0
  169. package/dist/env/node-auth-token.js.map +7 -0
  170. package/dist/env/node-env.d.ts +1 -0
  171. package/dist/env/node-env.js +30 -0
  172. package/dist/env/node-env.js.map +7 -0
  173. package/dist/env/npm-config-registry.d.ts +1 -0
  174. package/dist/env/npm-config-registry.js +30 -0
  175. package/dist/env/npm-config-registry.js.map +7 -0
  176. package/dist/env/npm-config-user-agent.d.ts +1 -0
  177. package/dist/env/npm-config-user-agent.js +30 -0
  178. package/dist/env/npm-config-user-agent.js.map +7 -0
  179. package/dist/env/npm-lifecycle-event.d.ts +1 -0
  180. package/dist/env/npm-lifecycle-event.js +30 -0
  181. package/dist/env/npm-lifecycle-event.js.map +7 -0
  182. package/dist/env/npm-registry.d.ts +1 -0
  183. package/dist/env/npm-registry.js +30 -0
  184. package/dist/env/npm-registry.js.map +7 -0
  185. package/dist/env/npm-token.d.ts +1 -0
  186. package/dist/env/npm-token.js +30 -0
  187. package/dist/env/npm-token.js.map +7 -0
  188. package/dist/env/path.d.ts +1 -0
  189. package/dist/env/path.js +30 -0
  190. package/dist/env/path.js.map +7 -0
  191. package/dist/env/pre-commit.d.ts +1 -0
  192. package/dist/env/pre-commit.js +31 -0
  193. package/dist/env/pre-commit.js.map +7 -0
  194. package/dist/env/shell.d.ts +1 -0
  195. package/dist/env/shell.js +30 -0
  196. package/dist/env/shell.js.map +7 -0
  197. package/dist/env/socket-accept-risks.d.ts +1 -0
  198. package/dist/env/socket-accept-risks.js +31 -0
  199. package/dist/env/socket-accept-risks.js.map +7 -0
  200. package/dist/env/socket-api-base-url.d.ts +1 -0
  201. package/dist/env/socket-api-base-url.js +30 -0
  202. package/dist/env/socket-api-base-url.js.map +7 -0
  203. package/dist/env/socket-api-proxy.d.ts +1 -0
  204. package/dist/env/socket-api-proxy.js +30 -0
  205. package/dist/env/socket-api-proxy.js.map +7 -0
  206. package/dist/env/socket-api-timeout.d.ts +1 -0
  207. package/dist/env/socket-api-timeout.js +31 -0
  208. package/dist/env/socket-api-timeout.js.map +7 -0
  209. package/dist/env/socket-api-token.d.ts +1 -0
  210. package/dist/env/socket-api-token.js +30 -0
  211. package/dist/env/socket-api-token.js.map +7 -0
  212. package/dist/env/socket-cacache-dir.d.ts +1 -0
  213. package/dist/env/socket-cacache-dir.js +30 -0
  214. package/dist/env/socket-cacache-dir.js.map +7 -0
  215. package/dist/env/socket-cli-accept-risks.d.ts +1 -0
  216. package/dist/env/socket-cli-accept-risks.js +33 -0
  217. package/dist/env/socket-cli-accept-risks.js.map +7 -0
  218. package/dist/env/socket-cli-api-base-url.d.ts +1 -0
  219. package/dist/env/socket-cli-api-base-url.js +30 -0
  220. package/dist/env/socket-cli-api-base-url.js.map +7 -0
  221. package/dist/env/socket-cli-api-proxy.d.ts +1 -0
  222. package/dist/env/socket-cli-api-proxy.js +30 -0
  223. package/dist/env/socket-cli-api-proxy.js.map +7 -0
  224. package/dist/env/socket-cli-api-timeout.d.ts +1 -0
  225. package/dist/env/socket-cli-api-timeout.js +31 -0
  226. package/dist/env/socket-cli-api-timeout.js.map +7 -0
  227. package/dist/env/socket-cli-api-token.d.ts +1 -0
  228. package/dist/env/socket-cli-api-token.js +30 -0
  229. package/dist/env/socket-cli-api-token.js.map +7 -0
  230. package/dist/env/socket-cli-config.d.ts +1 -0
  231. package/dist/env/socket-cli-config.js +30 -0
  232. package/dist/env/socket-cli-config.js.map +7 -0
  233. package/dist/env/socket-cli-fix.d.ts +1 -0
  234. package/dist/env/socket-cli-fix.js +30 -0
  235. package/dist/env/socket-cli-fix.js.map +7 -0
  236. package/dist/env/socket-cli-no-api-token.d.ts +1 -0
  237. package/dist/env/socket-cli-no-api-token.js +33 -0
  238. package/dist/env/socket-cli-no-api-token.js.map +7 -0
  239. package/dist/env/socket-cli-optimize.d.ts +1 -0
  240. package/dist/env/socket-cli-optimize.js +31 -0
  241. package/dist/env/socket-cli-optimize.js.map +7 -0
  242. package/dist/env/socket-cli-org-slug.d.ts +1 -0
  243. package/dist/env/socket-cli-org-slug.js +30 -0
  244. package/dist/env/socket-cli-org-slug.js.map +7 -0
  245. package/dist/env/socket-cli-shadow-accept-risks.d.ts +1 -0
  246. package/dist/env/socket-cli-shadow-accept-risks.js +33 -0
  247. package/dist/env/socket-cli-shadow-accept-risks.js.map +7 -0
  248. package/dist/env/socket-cli-shadow-api-token.d.ts +1 -0
  249. package/dist/env/socket-cli-shadow-api-token.js +30 -0
  250. package/dist/env/socket-cli-shadow-api-token.js.map +7 -0
  251. package/dist/env/socket-cli-shadow-bin.d.ts +1 -0
  252. package/dist/env/socket-cli-shadow-bin.js +30 -0
  253. package/dist/env/socket-cli-shadow-bin.js.map +7 -0
  254. package/dist/env/socket-cli-shadow-progress.d.ts +1 -0
  255. package/dist/env/socket-cli-shadow-progress.js +33 -0
  256. package/dist/env/socket-cli-shadow-progress.js.map +7 -0
  257. package/dist/env/socket-cli-shadow-silent.d.ts +1 -0
  258. package/dist/env/socket-cli-shadow-silent.js +33 -0
  259. package/dist/env/socket-cli-shadow-silent.js.map +7 -0
  260. package/dist/env/socket-cli-view-all-risks.d.ts +1 -0
  261. package/dist/env/socket-cli-view-all-risks.js +33 -0
  262. package/dist/env/socket-cli-view-all-risks.js.map +7 -0
  263. package/dist/env/socket-config.d.ts +1 -0
  264. package/dist/env/socket-config.js +30 -0
  265. package/dist/env/socket-config.js.map +7 -0
  266. package/dist/env/socket-debug.d.ts +1 -0
  267. package/dist/env/socket-debug.js +30 -0
  268. package/dist/env/socket-debug.js.map +7 -0
  269. package/dist/env/socket-home.d.ts +1 -0
  270. package/dist/env/socket-home.js +30 -0
  271. package/dist/env/socket-home.js.map +7 -0
  272. package/dist/env/socket-no-api-token.d.ts +1 -0
  273. package/dist/env/socket-no-api-token.js +31 -0
  274. package/dist/env/socket-no-api-token.js.map +7 -0
  275. package/dist/env/socket-npm-registry.d.ts +1 -0
  276. package/dist/env/socket-npm-registry.js +30 -0
  277. package/dist/env/socket-npm-registry.js.map +7 -0
  278. package/dist/env/socket-org-slug.d.ts +1 -0
  279. package/dist/env/socket-org-slug.js +30 -0
  280. package/dist/env/socket-org-slug.js.map +7 -0
  281. package/dist/env/socket-registry-url.d.ts +1 -0
  282. package/dist/env/socket-registry-url.js +30 -0
  283. package/dist/env/socket-registry-url.js.map +7 -0
  284. package/dist/env/socket-view-all-risks.d.ts +1 -0
  285. package/dist/env/socket-view-all-risks.js +31 -0
  286. package/dist/env/socket-view-all-risks.js.map +7 -0
  287. package/dist/env/temp.d.ts +1 -0
  288. package/dist/env/temp.js +30 -0
  289. package/dist/env/temp.js.map +7 -0
  290. package/dist/env/term.d.ts +1 -0
  291. package/dist/env/term.js +30 -0
  292. package/dist/env/term.js.map +7 -0
  293. package/dist/env/tmp.d.ts +1 -0
  294. package/dist/env/tmp.js +30 -0
  295. package/dist/env/tmp.js.map +7 -0
  296. package/dist/env/tmpdir.d.ts +1 -0
  297. package/dist/env/tmpdir.js +30 -0
  298. package/dist/env/tmpdir.js.map +7 -0
  299. package/dist/env/userprofile.d.ts +1 -0
  300. package/dist/env/userprofile.js +30 -0
  301. package/dist/env/userprofile.js.map +7 -0
  302. package/dist/env/vitest.d.ts +1 -0
  303. package/dist/env/vitest.js +31 -0
  304. package/dist/env/vitest.js.map +7 -0
  305. package/dist/env/xdg-cache-home.d.ts +1 -0
  306. package/dist/env/xdg-cache-home.js +30 -0
  307. package/dist/env/xdg-cache-home.js.map +7 -0
  308. package/dist/env/xdg-config-home.d.ts +1 -0
  309. package/dist/env/xdg-config-home.js +30 -0
  310. package/dist/env/xdg-config-home.js.map +7 -0
  311. package/dist/env/xdg-data-home.d.ts +1 -0
  312. package/dist/env/xdg-data-home.js +30 -0
  313. package/dist/env/xdg-data-home.js.map +7 -0
  314. package/dist/env.d.ts +15 -0
  315. package/dist/env.js +63 -0
  316. package/dist/env.js.map +7 -0
  317. package/dist/external/@inquirer/checkbox.js +4 -0
  318. package/dist/external/@inquirer/confirm.js +22 -0
  319. package/dist/external/@inquirer/core.js +4 -0
  320. package/dist/external/@inquirer/input.js +1 -0
  321. package/dist/external/@inquirer/password.js +1 -0
  322. package/dist/external/@inquirer/prompts.js +4 -0
  323. package/dist/external/@inquirer/search.js +1 -0
  324. package/dist/external/@inquirer/select.js +25 -0
  325. package/dist/external/@npmcli/package-json/index.js +1 -0
  326. package/dist/external/@npmcli/package-json/lib/read-package.js +1 -0
  327. package/dist/external/@npmcli/package-json/lib/sort.js +1 -0
  328. package/dist/external/@npmcli/promise-spawn.js +5 -0
  329. package/dist/external/@socketregistry/is-unicode-supported.d.ts +2 -0
  330. package/dist/external/@socketregistry/is-unicode-supported.js +5 -0
  331. package/dist/external/@socketregistry/packageurl-js.js +34 -0
  332. package/dist/external/@socketregistry/yocto-spinner.d.ts +12 -0
  333. package/dist/external/@socketregistry/yocto-spinner.js +8 -0
  334. package/dist/external/@yarnpkg/extensions.d.ts +5 -0
  335. package/dist/external/@yarnpkg/extensions.js +5 -0
  336. package/dist/external/cacache.d.ts +93 -0
  337. package/dist/external/cacache.js +32 -0
  338. package/dist/external/debug.d.ts +25 -0
  339. package/dist/external/debug.js +9 -0
  340. package/dist/external/del.d.ts +1 -0
  341. package/dist/external/del.js +54 -0
  342. package/dist/external/fast-glob.js +54 -0
  343. package/dist/external/fast-sort.d.ts +4 -0
  344. package/dist/external/fast-sort.js +5 -0
  345. package/dist/external/get-east-asian-width.d.ts +5 -0
  346. package/dist/external/get-east-asian-width.js +5 -0
  347. package/dist/external/libnpmpack.d.ts +3 -0
  348. package/dist/external/libnpmpack.js +225 -0
  349. package/dist/external/make-fetch-happen.d.ts +16 -0
  350. package/dist/external/make-fetch-happen.js +69 -0
  351. package/dist/external/normalize-package-data.js +6 -0
  352. package/dist/external/npm-package-arg.js +6 -0
  353. package/dist/external/pacote.d.ts +19 -0
  354. package/dist/external/pacote.js +105 -0
  355. package/dist/external/picomatch.js +5 -0
  356. package/dist/external/semver.d.ts +3 -0
  357. package/dist/external/semver.js +5 -0
  358. package/dist/external/spdx-correct.js +5 -0
  359. package/dist/external/spdx-expression-parse.js +5 -0
  360. package/dist/external/streaming-iterables.js +5 -0
  361. package/dist/external/validate-npm-package-name.js +5 -0
  362. package/dist/external/which.js +5 -0
  363. package/dist/external/yargs-parser.d.ts +3 -0
  364. package/dist/external/yargs-parser.js +26 -0
  365. package/dist/external/yoctocolors-cjs.d.ts +38 -0
  366. package/dist/external/yoctocolors-cjs.js +5 -0
  367. package/dist/external/zod.d.ts +1 -0
  368. package/dist/external/zod.js +27 -0
  369. package/dist/fs.d.ts +184 -0
  370. package/dist/fs.js +610 -0
  371. package/dist/fs.js.map +7 -0
  372. package/dist/functions.d.ts +27 -0
  373. package/dist/functions.js +70 -0
  374. package/dist/functions.js.map +7 -0
  375. package/dist/git.d.ts +93 -0
  376. package/dist/git.js +321 -0
  377. package/dist/git.js.map +7 -0
  378. package/dist/github.d.ts +121 -0
  379. package/dist/github.js +203 -0
  380. package/dist/github.js.map +7 -0
  381. package/dist/globs.d.ts +46 -0
  382. package/dist/globs.js +154 -0
  383. package/dist/globs.js.map +7 -0
  384. package/dist/http-request.d.ts +53 -0
  385. package/dist/http-request.js +315 -0
  386. package/dist/http-request.js.map +7 -0
  387. package/dist/index.d.ts +13 -0
  388. package/dist/index.js +64 -0
  389. package/dist/index.js.map +7 -0
  390. package/dist/ipc.d.ts +366 -0
  391. package/dist/ipc.js +234 -0
  392. package/dist/ipc.js.map +7 -0
  393. package/dist/json.d.ts +23 -0
  394. package/dist/json.js +75 -0
  395. package/dist/json.js.map +7 -0
  396. package/dist/logger.d.ts +183 -0
  397. package/dist/logger.js +653 -0
  398. package/dist/logger.js.map +7 -0
  399. package/dist/maintained-node-versions.d.ts +7 -0
  400. package/dist/maintained-node-versions.js +37 -0
  401. package/dist/maintained-node-versions.js.map +7 -0
  402. package/dist/memoization.d.ts +142 -0
  403. package/dist/memoization.js +212 -0
  404. package/dist/memoization.js.map +7 -0
  405. package/dist/objects.d.ts +146 -0
  406. package/dist/objects.js +321 -0
  407. package/dist/objects.js.map +7 -0
  408. package/dist/packages/editable.d.ts +107 -0
  409. package/dist/packages/editable.js +358 -0
  410. package/dist/packages/editable.js.map +7 -0
  411. package/dist/packages/exports.d.ts +30 -0
  412. package/dist/packages/exports.js +164 -0
  413. package/dist/packages/exports.js.map +7 -0
  414. package/dist/packages/isolation.d.ts +22 -0
  415. package/dist/packages/isolation.js +197 -0
  416. package/dist/packages/isolation.js.map +7 -0
  417. package/dist/packages/licenses.d.ts +68 -0
  418. package/dist/packages/licenses.js +216 -0
  419. package/dist/packages/licenses.js.map +7 -0
  420. package/dist/packages/manifest.d.ts +16 -0
  421. package/dist/packages/manifest.js +192 -0
  422. package/dist/packages/manifest.js.map +7 -0
  423. package/dist/packages/normalize.d.ts +21 -0
  424. package/dist/packages/normalize.js +122 -0
  425. package/dist/packages/normalize.js.map +7 -0
  426. package/dist/packages/operations.d.ts +54 -0
  427. package/dist/packages/operations.js +306 -0
  428. package/dist/packages/operations.js.map +7 -0
  429. package/dist/packages/paths.d.ts +10 -0
  430. package/dist/packages/paths.js +55 -0
  431. package/dist/packages/paths.js.map +7 -0
  432. package/dist/packages/provenance.d.ts +10 -0
  433. package/dist/packages/provenance.js +180 -0
  434. package/dist/packages/provenance.js.map +7 -0
  435. package/dist/packages/registry.d.ts +8 -0
  436. package/dist/packages/registry.js +30 -0
  437. package/dist/packages/registry.js.map +7 -0
  438. package/dist/packages/specs.d.ts +28 -0
  439. package/dist/packages/specs.js +85 -0
  440. package/dist/packages/specs.js.map +7 -0
  441. package/dist/packages/validation.d.ts +15 -0
  442. package/dist/packages/validation.js +53 -0
  443. package/dist/packages/validation.js.map +7 -0
  444. package/dist/packages.d.ts +154 -0
  445. package/dist/packages.js +131 -0
  446. package/dist/packages.js.map +7 -0
  447. package/dist/path.d.ts +74 -0
  448. package/dist/path.js +442 -0
  449. package/dist/path.js.map +7 -0
  450. package/dist/paths.d.ts +42 -0
  451. package/dist/paths.js +145 -0
  452. package/dist/paths.js.map +7 -0
  453. package/dist/performance.d.ts +178 -0
  454. package/dist/performance.js +219 -0
  455. package/dist/performance.js.map +7 -0
  456. package/dist/promise-queue.d.ts +35 -0
  457. package/dist/promise-queue.js +111 -0
  458. package/dist/promise-queue.js.map +7 -0
  459. package/dist/promises.d.ts +67 -0
  460. package/dist/promises.js +268 -0
  461. package/dist/promises.js.map +7 -0
  462. package/dist/prompts.d.ts +27 -0
  463. package/dist/prompts.js +60 -0
  464. package/dist/prompts.js.map +7 -0
  465. package/dist/regexps.d.ts +13 -0
  466. package/dist/regexps.js +32 -0
  467. package/dist/regexps.js.map +7 -0
  468. package/dist/sea.d.ts +10 -0
  469. package/dist/sea.js +46 -0
  470. package/dist/sea.js.map +7 -0
  471. package/dist/shadow.d.ts +17 -0
  472. package/dist/shadow.js +60 -0
  473. package/dist/shadow.js.map +7 -0
  474. package/dist/signal-exit.d.ts +23 -0
  475. package/dist/signal-exit.js +250 -0
  476. package/dist/signal-exit.js.map +7 -0
  477. package/dist/sorts.d.ts +28 -0
  478. package/dist/sorts.js +96 -0
  479. package/dist/sorts.js.map +7 -0
  480. package/dist/spawn.d.ts +207 -0
  481. package/dist/spawn.js +201 -0
  482. package/dist/spawn.js.map +7 -0
  483. package/dist/spinner.d.ts +208 -0
  484. package/dist/spinner.js +729 -0
  485. package/dist/spinner.js.map +7 -0
  486. package/dist/ssri.d.ts +95 -0
  487. package/dist/ssri.js +73 -0
  488. package/dist/ssri.js.map +7 -0
  489. package/dist/stdio/clear.d.ts +40 -0
  490. package/dist/stdio/clear.js +84 -0
  491. package/dist/stdio/clear.js.map +7 -0
  492. package/dist/stdio/divider.d.ts +48 -0
  493. package/dist/stdio/divider.js +81 -0
  494. package/dist/stdio/divider.js.map +7 -0
  495. package/dist/stdio/footer.d.ts +25 -0
  496. package/dist/stdio/footer.js +96 -0
  497. package/dist/stdio/footer.js.map +7 -0
  498. package/dist/stdio/header.d.ts +25 -0
  499. package/dist/stdio/header.js +102 -0
  500. package/dist/stdio/header.js.map +7 -0
  501. package/dist/stdio/mask.d.ts +72 -0
  502. package/dist/stdio/mask.js +187 -0
  503. package/dist/stdio/mask.js.map +7 -0
  504. package/dist/stdio/progress.d.ts +51 -0
  505. package/dist/stdio/progress.js +171 -0
  506. package/dist/stdio/progress.js.map +7 -0
  507. package/dist/stdio/prompts.d.ts +46 -0
  508. package/dist/stdio/prompts.js +90 -0
  509. package/dist/stdio/prompts.js.map +7 -0
  510. package/dist/stdio/stderr.d.ts +48 -0
  511. package/dist/stdio/stderr.js +91 -0
  512. package/dist/stdio/stderr.js.map +7 -0
  513. package/dist/stdio/stdout.d.ts +48 -0
  514. package/dist/stdio/stdout.js +105 -0
  515. package/dist/stdio/stdout.js.map +7 -0
  516. package/dist/streams.d.ts +20 -0
  517. package/dist/streams.js +80 -0
  518. package/dist/streams.js.map +7 -0
  519. package/dist/strings.d.ts +139 -0
  520. package/dist/strings.js +253 -0
  521. package/dist/strings.js.map +7 -0
  522. package/dist/suppress-warnings.d.ts +66 -0
  523. package/dist/suppress-warnings.js +100 -0
  524. package/dist/suppress-warnings.js.map +7 -0
  525. package/dist/tables.d.ts +69 -0
  526. package/dist/tables.js +130 -0
  527. package/dist/tables.js.map +7 -0
  528. package/dist/temporary-executor.d.ts +9 -0
  529. package/dist/temporary-executor.js +54 -0
  530. package/dist/temporary-executor.js.map +7 -0
  531. package/dist/types.d.ts +65 -0
  532. package/dist/types.js +74 -0
  533. package/dist/types.js.map +7 -0
  534. package/dist/url.d.ts +60 -0
  535. package/dist/url.js +144 -0
  536. package/dist/url.js.map +7 -0
  537. package/dist/utils/get-ipc.d.ts +16 -0
  538. package/dist/utils/get-ipc.js +60 -0
  539. package/dist/utils/get-ipc.js.map +7 -0
  540. package/dist/validation/json-parser.d.ts +10 -0
  541. package/dist/validation/json-parser.js +129 -0
  542. package/dist/validation/json-parser.js.map +7 -0
  543. package/dist/validation/types.d.ts +40 -0
  544. package/dist/validation/types.js +17 -0
  545. package/dist/validation/types.js.map +7 -0
  546. package/dist/versions.d.ts +87 -0
  547. package/dist/versions.js +155 -0
  548. package/dist/versions.js.map +7 -0
  549. package/dist/words.d.ts +22 -0
  550. package/dist/words.js +52 -0
  551. package/dist/words.js.map +7 -0
  552. package/dist/zod.d.ts +5 -0
  553. package/dist/zod.js +29 -0
  554. package/dist/zod.js.map +7 -0
  555. package/package.json +856 -7
@@ -0,0 +1,146 @@
1
+ // Type definitions
2
+ type GetterDefObj = {
3
+ [key: PropertyKey]: () => unknown;
4
+ };
5
+ type LazyGetterStats = {
6
+ initialized?: Set<PropertyKey> | undefined;
7
+ };
8
+ type ConstantsObjectOptions = {
9
+ getters?: GetterDefObj | undefined;
10
+ internals?: object | undefined;
11
+ mixin?: object | undefined;
12
+ };
13
+ type Remap<T> = {
14
+ [K in keyof T]: T[K];
15
+ } extends infer O ? {
16
+ [K in keyof O]: O[K];
17
+ } : never;
18
+ // Type for generic property bag.
19
+ type PropertyBag = {
20
+ [key: PropertyKey]: unknown;
21
+ };
22
+ // Type for generic sorted object entries.
23
+ type SortedObject<T> = {
24
+ [key: PropertyKey]: T;
25
+ };
26
+ export type { GetterDefObj, LazyGetterStats, ConstantsObjectOptions, Remap };
27
+ /**
28
+ * Create a lazy getter function that memoizes its result.
29
+ */
30
+ /*@__NO_SIDE_EFFECTS__*/
31
+ export declare function createLazyGetter<T>(name: PropertyKey, getter: () => T, stats?: LazyGetterStats): () => T;
32
+ /**
33
+ * Create a frozen constants object with lazy getters and internal properties.
34
+ */
35
+ /*@__NO_SIDE_EFFECTS__*/
36
+ export declare function createConstantsObject(props: object, options_?: ConstantsObjectOptions): Readonly<object>;
37
+ /**
38
+ * Define a getter property on an object.
39
+ */
40
+ /*@__NO_SIDE_EFFECTS__*/
41
+ export declare function defineGetter<T>(object: object, propKey: PropertyKey, getter: () => T): object;
42
+ /**
43
+ * Define a lazy getter property on an object.
44
+ */
45
+ /*@__NO_SIDE_EFFECTS__*/
46
+ export declare function defineLazyGetter<T>(object: object, propKey: PropertyKey, getter: () => T, stats?: LazyGetterStats): object;
47
+ /**
48
+ * Define multiple lazy getter properties on an object.
49
+ */
50
+ /*@__NO_SIDE_EFFECTS__*/
51
+ export declare function defineLazyGetters(object: object, getterDefObj: GetterDefObj | undefined, stats?: LazyGetterStats): object;
52
+ /**
53
+ * Compare two entry arrays by their keys for sorting.
54
+ */
55
+ /*@__NO_SIDE_EFFECTS__*/
56
+ export declare function entryKeyComparator(a: [PropertyKey, unknown], b: [PropertyKey, unknown]): number;
57
+ /**
58
+ * Get the enumerable own property keys of an object.
59
+ */
60
+ /*@__NO_SIDE_EFFECTS__*/
61
+ export declare function getKeys(obj: unknown): string[];
62
+ /**
63
+ * Get an own property value from an object safely.
64
+ */
65
+ /*@__NO_SIDE_EFFECTS__*/
66
+ export declare function getOwn(obj: unknown, propKey: PropertyKey): unknown;
67
+ /**
68
+ * Get all own property values from an object.
69
+ */
70
+ /*@__NO_SIDE_EFFECTS__*/
71
+ export declare function getOwnPropertyValues<T>(obj: {
72
+ [key: PropertyKey]: T;
73
+ } | null | undefined): T[];
74
+ /**
75
+ * Check if an object has any enumerable own properties.
76
+ */
77
+ /*@__NO_SIDE_EFFECTS__*/
78
+ export declare function hasKeys(obj: unknown): obj is PropertyBag;
79
+ /**
80
+ * Check if an object has an own property.
81
+ */
82
+ /*@__NO_SIDE_EFFECTS__*/
83
+ export declare function hasOwn(obj: unknown, propKey: PropertyKey): obj is object & PropertyBag;
84
+ /**
85
+ * Check if a value is an object (including arrays).
86
+ */
87
+ /*@__NO_SIDE_EFFECTS__*/
88
+ export declare function isObject(value: unknown): value is {
89
+ [key: PropertyKey]: unknown;
90
+ };
91
+ /**
92
+ * Check if a value is a plain object (not an array, not a built-in).
93
+ */
94
+ /*@__NO_SIDE_EFFECTS__*/
95
+ export declare function isObjectObject(value: unknown): value is {
96
+ [key: PropertyKey]: unknown;
97
+ };
98
+ // IMPORTANT: Do not use destructuring here - use direct assignment instead.
99
+ // tsgo has a bug that incorrectly transpiles destructured exports, resulting in
100
+ // `exports.SomeName = void 0;` which causes runtime errors.
101
+ // See: https://github.com/SocketDev/socket-packageurl-js/issues/3
102
+ /**
103
+ * Alias for native Object.assign.
104
+ * Copies all enumerable own properties from one or more source objects to a target object.
105
+ */
106
+ export declare const objectAssign: {
107
+ <T extends {}, U>(target: T, source: U): T & U;
108
+ <T extends {}, U, V>(target: T, source1: U, source2: V): T & U & V;
109
+ <T extends {}, U, V, W>(target: T, source1: U, source2: V, source3: W): T & U & V & W;
110
+ (target: object, ...sources: any[]): any;
111
+ };
112
+ /**
113
+ * Get all own property entries (key-value pairs) from an object.
114
+ */
115
+ /*@__NO_SIDE_EFFECTS__*/
116
+ export declare function objectEntries(obj: unknown): Array<[PropertyKey, unknown]>;
117
+ // IMPORTANT: Do not use destructuring here - use direct assignment instead.
118
+ // tsgo has a bug that incorrectly transpiles destructured exports, resulting in
119
+ // `exports.SomeName = void 0;` which causes runtime errors.
120
+ // See: https://github.com/SocketDev/socket-packageurl-js/issues/3
121
+ /**
122
+ * Alias for native Object.freeze.
123
+ * Freezes an object, preventing new properties from being added and existing properties from being removed or modified.
124
+ */
125
+ export declare const objectFreeze: {
126
+ <T extends Function>(f: T): T;
127
+ <T extends {
128
+ [idx: string]: object | U;
129
+ }, U extends string | number | bigint | symbol | boolean>(o: T): Readonly<T>;
130
+ <T>(o: T): Readonly<T>;
131
+ };
132
+ /**
133
+ * Deep merge source object into target object.
134
+ */
135
+ /*@__NO_SIDE_EFFECTS__*/
136
+ export declare function merge<T extends object, U extends object>(target: T, source: U): T & U;
137
+ /**
138
+ * Convert an object to a new object with sorted keys.
139
+ */
140
+ /*@__NO_SIDE_EFFECTS__*/
141
+ export declare function toSortedObject<T extends object>(obj: T): T;
142
+ /**
143
+ * Create an object from entries with sorted keys.
144
+ */
145
+ /*@__NO_SIDE_EFFECTS__*/
146
+ export declare function toSortedObjectFromEntries<T = unknown>(entries: Iterable<[PropertyKey, T]>): SortedObject<T>;
@@ -0,0 +1,321 @@
1
+ /* Socket Lib - Built with esbuild */
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var objects_exports = {};
20
+ __export(objects_exports, {
21
+ createConstantsObject: () => createConstantsObject,
22
+ createLazyGetter: () => createLazyGetter,
23
+ defineGetter: () => defineGetter,
24
+ defineLazyGetter: () => defineLazyGetter,
25
+ defineLazyGetters: () => defineLazyGetters,
26
+ entryKeyComparator: () => entryKeyComparator,
27
+ getKeys: () => getKeys,
28
+ getOwn: () => getOwn,
29
+ getOwnPropertyValues: () => getOwnPropertyValues,
30
+ hasKeys: () => hasKeys,
31
+ hasOwn: () => hasOwn,
32
+ isObject: () => isObject,
33
+ isObjectObject: () => isObjectObject,
34
+ merge: () => merge,
35
+ objectAssign: () => objectAssign,
36
+ objectEntries: () => objectEntries,
37
+ objectFreeze: () => objectFreeze,
38
+ toSortedObject: () => toSortedObject,
39
+ toSortedObjectFromEntries: () => toSortedObjectFromEntries
40
+ });
41
+ module.exports = __toCommonJS(objects_exports);
42
+ var import_core = require("#constants/core");
43
+ var import_arrays = require("./arrays");
44
+ var import_sorts = require("./sorts");
45
+ const ObjectDefineProperties = Object.defineProperties;
46
+ const ObjectDefineProperty = Object.defineProperty;
47
+ const ObjectFreeze = Object.freeze;
48
+ const ObjectFromEntries = Object.fromEntries;
49
+ const ObjectGetOwnPropertyDescriptors = Object.getOwnPropertyDescriptors;
50
+ const ObjectGetOwnPropertyNames = Object.getOwnPropertyNames;
51
+ const ObjectGetPrototypeOf = Object.getPrototypeOf;
52
+ const ObjectHasOwn = Object.hasOwn;
53
+ const ObjectKeys = Object.keys;
54
+ const ObjectPrototype = Object.prototype;
55
+ const ObjectSetPrototypeOf = Object.setPrototypeOf;
56
+ const __defineGetter__ = Object.prototype.__defineGetter__;
57
+ const ReflectOwnKeys = Reflect.ownKeys;
58
+ // @__NO_SIDE_EFFECTS__
59
+ function createLazyGetter(name, getter, stats) {
60
+ let lazyValue = import_core.UNDEFINED_TOKEN;
61
+ const { [name]: lazyGetter } = {
62
+ [name]() {
63
+ if (lazyValue === import_core.UNDEFINED_TOKEN) {
64
+ stats?.initialized?.add(name);
65
+ lazyValue = getter();
66
+ }
67
+ return lazyValue;
68
+ }
69
+ };
70
+ return lazyGetter;
71
+ }
72
+ // @__NO_SIDE_EFFECTS__
73
+ function createConstantsObject(props, options_) {
74
+ const options = { __proto__: null, ...options_ };
75
+ const attributes = ObjectFreeze({
76
+ __proto__: null,
77
+ getters: options.getters ? ObjectFreeze(
78
+ ObjectSetPrototypeOf(/* @__PURE__ */ toSortedObject(options.getters), null)
79
+ ) : void 0,
80
+ internals: options.internals ? ObjectFreeze(
81
+ ObjectSetPrototypeOf(/* @__PURE__ */ toSortedObject(options.internals), null)
82
+ ) : void 0,
83
+ mixin: options.mixin ? ObjectFreeze(
84
+ ObjectDefineProperties(
85
+ { __proto__: null },
86
+ ObjectGetOwnPropertyDescriptors(options.mixin)
87
+ )
88
+ ) : void 0,
89
+ props: props ? ObjectFreeze(ObjectSetPrototypeOf(/* @__PURE__ */ toSortedObject(props), null)) : void 0
90
+ });
91
+ const lazyGetterStats = ObjectFreeze({
92
+ __proto__: null,
93
+ initialized: /* @__PURE__ */ new Set()
94
+ });
95
+ const object = /* @__PURE__ */ defineLazyGetters(
96
+ {
97
+ __proto__: null,
98
+ [import_core.kInternalsSymbol]: ObjectFreeze({
99
+ __proto__: null,
100
+ get attributes() {
101
+ return attributes;
102
+ },
103
+ get lazyGetterStats() {
104
+ return lazyGetterStats;
105
+ },
106
+ ...attributes.internals
107
+ }),
108
+ kInternalsSymbol: import_core.kInternalsSymbol,
109
+ ...attributes.props
110
+ },
111
+ attributes.getters,
112
+ lazyGetterStats
113
+ );
114
+ if (attributes.mixin) {
115
+ ObjectDefineProperties(
116
+ object,
117
+ /* @__PURE__ */ toSortedObjectFromEntries(
118
+ (/* @__PURE__ */ objectEntries(ObjectGetOwnPropertyDescriptors(attributes.mixin))).filter(
119
+ (p) => !ObjectHasOwn(object, p[0])
120
+ )
121
+ )
122
+ );
123
+ }
124
+ return ObjectFreeze(object);
125
+ }
126
+ // @__NO_SIDE_EFFECTS__
127
+ function defineGetter(object, propKey, getter) {
128
+ ObjectDefineProperty(object, propKey, {
129
+ get: getter,
130
+ enumerable: false,
131
+ configurable: true
132
+ });
133
+ return object;
134
+ }
135
+ // @__NO_SIDE_EFFECTS__
136
+ function defineLazyGetter(object, propKey, getter, stats) {
137
+ return /* @__PURE__ */ defineGetter(object, propKey, /* @__PURE__ */ createLazyGetter(propKey, getter, stats));
138
+ }
139
+ // @__NO_SIDE_EFFECTS__
140
+ function defineLazyGetters(object, getterDefObj, stats) {
141
+ if (getterDefObj !== null && typeof getterDefObj === "object") {
142
+ const keys = ReflectOwnKeys(getterDefObj);
143
+ for (let i = 0, { length } = keys; i < length; i += 1) {
144
+ const key = keys[i];
145
+ /* @__PURE__ */ defineLazyGetter(
146
+ object,
147
+ key,
148
+ /* @__PURE__ */ createLazyGetter(key, getterDefObj[key], stats)
149
+ );
150
+ }
151
+ }
152
+ return object;
153
+ }
154
+ // @__NO_SIDE_EFFECTS__
155
+ function entryKeyComparator(a, b) {
156
+ const keyA = a[0];
157
+ const keyB = b[0];
158
+ const strKeyA = typeof keyA === "string" ? keyA : String(keyA);
159
+ const strKeyB = typeof keyB === "string" ? keyB : String(keyB);
160
+ return (0, import_sorts.localeCompare)(strKeyA, strKeyB);
161
+ }
162
+ // @__NO_SIDE_EFFECTS__
163
+ function getKeys(obj) {
164
+ return /* @__PURE__ */ isObject(obj) ? ObjectKeys(obj) : [];
165
+ }
166
+ // @__NO_SIDE_EFFECTS__
167
+ function getOwn(obj, propKey) {
168
+ if (obj === null || obj === void 0) {
169
+ return void 0;
170
+ }
171
+ return ObjectHasOwn(obj, propKey) ? obj[propKey] : void 0;
172
+ }
173
+ // @__NO_SIDE_EFFECTS__
174
+ function getOwnPropertyValues(obj) {
175
+ if (obj === null || obj === void 0) {
176
+ return [];
177
+ }
178
+ const keys = ObjectGetOwnPropertyNames(obj);
179
+ const { length } = keys;
180
+ const values = Array(length);
181
+ for (let i = 0; i < length; i += 1) {
182
+ values[i] = obj[keys[i]];
183
+ }
184
+ return values;
185
+ }
186
+ // @__NO_SIDE_EFFECTS__
187
+ function hasKeys(obj) {
188
+ if (obj === null || obj === void 0) {
189
+ return false;
190
+ }
191
+ for (const key in obj) {
192
+ if (ObjectHasOwn(obj, key)) {
193
+ return true;
194
+ }
195
+ }
196
+ return false;
197
+ }
198
+ // @__NO_SIDE_EFFECTS__
199
+ function hasOwn(obj, propKey) {
200
+ if (obj === null || obj === void 0) {
201
+ return false;
202
+ }
203
+ return ObjectHasOwn(obj, propKey);
204
+ }
205
+ // @__NO_SIDE_EFFECTS__
206
+ function isObject(value) {
207
+ return value !== null && typeof value === "object";
208
+ }
209
+ // @__NO_SIDE_EFFECTS__
210
+ function isObjectObject(value) {
211
+ if (value === null || typeof value !== "object" || (0, import_arrays.isArray)(value)) {
212
+ return false;
213
+ }
214
+ const proto = ObjectGetPrototypeOf(value);
215
+ return proto === null || proto === ObjectPrototype;
216
+ }
217
+ const objectAssign = Object.assign;
218
+ // @__NO_SIDE_EFFECTS__
219
+ function objectEntries(obj) {
220
+ if (obj === null || obj === void 0) {
221
+ return [];
222
+ }
223
+ const keys = ReflectOwnKeys(obj);
224
+ const { length } = keys;
225
+ const entries = Array(length);
226
+ const record = obj;
227
+ for (let i = 0; i < length; i += 1) {
228
+ const key = keys[i];
229
+ entries[i] = [key, record[key]];
230
+ }
231
+ return entries;
232
+ }
233
+ const objectFreeze = Object.freeze;
234
+ // @__NO_SIDE_EFFECTS__
235
+ function merge(target, source) {
236
+ if (!/* @__PURE__ */ isObject(target) || !/* @__PURE__ */ isObject(source)) {
237
+ return target;
238
+ }
239
+ const queue = [[target, source]];
240
+ let pos = 0;
241
+ let { length: queueLength } = queue;
242
+ while (pos < queueLength) {
243
+ if (pos === import_core.LOOP_SENTINEL) {
244
+ throw new Error("Detected infinite loop in object crawl of merge");
245
+ }
246
+ const { 0: currentTarget, 1: currentSource } = queue[pos++];
247
+ if (!currentSource || !currentTarget) {
248
+ continue;
249
+ }
250
+ const isSourceArray = (0, import_arrays.isArray)(currentSource);
251
+ const isTargetArray = (0, import_arrays.isArray)(currentTarget);
252
+ if (isSourceArray || isTargetArray) {
253
+ continue;
254
+ }
255
+ const keys = ReflectOwnKeys(currentSource);
256
+ for (let i = 0, { length } = keys; i < length; i += 1) {
257
+ const key = keys[i];
258
+ const srcVal = currentSource[key];
259
+ const targetVal = currentTarget[key];
260
+ if ((0, import_arrays.isArray)(srcVal)) {
261
+ currentTarget[key] = srcVal;
262
+ } else if (/* @__PURE__ */ isObject(srcVal)) {
263
+ if (/* @__PURE__ */ isObject(targetVal) && !(0, import_arrays.isArray)(targetVal)) {
264
+ queue[queueLength++] = [targetVal, srcVal];
265
+ } else {
266
+ currentTarget[key] = srcVal;
267
+ }
268
+ } else {
269
+ currentTarget[key] = srcVal;
270
+ }
271
+ }
272
+ }
273
+ return target;
274
+ }
275
+ // @__NO_SIDE_EFFECTS__
276
+ function toSortedObject(obj) {
277
+ return /* @__PURE__ */ toSortedObjectFromEntries(/* @__PURE__ */ objectEntries(obj));
278
+ }
279
+ // @__NO_SIDE_EFFECTS__
280
+ function toSortedObjectFromEntries(entries) {
281
+ const otherEntries = [];
282
+ const symbolEntries = [];
283
+ for (const entry of entries) {
284
+ if (typeof entry[0] === "symbol") {
285
+ symbolEntries.push(entry);
286
+ } else {
287
+ otherEntries.push(entry);
288
+ }
289
+ }
290
+ if (!otherEntries.length && !symbolEntries.length) {
291
+ return {};
292
+ }
293
+ return ObjectFromEntries([
294
+ // The String constructor is safe to use with symbols.
295
+ ...symbolEntries.sort(entryKeyComparator),
296
+ ...otherEntries.sort(entryKeyComparator)
297
+ ]);
298
+ }
299
+ // Annotate the CommonJS export names for ESM import in node:
300
+ 0 && (module.exports = {
301
+ createConstantsObject,
302
+ createLazyGetter,
303
+ defineGetter,
304
+ defineLazyGetter,
305
+ defineLazyGetters,
306
+ entryKeyComparator,
307
+ getKeys,
308
+ getOwn,
309
+ getOwnPropertyValues,
310
+ hasKeys,
311
+ hasOwn,
312
+ isObject,
313
+ isObjectObject,
314
+ merge,
315
+ objectAssign,
316
+ objectEntries,
317
+ objectFreeze,
318
+ toSortedObject,
319
+ toSortedObjectFromEntries
320
+ });
321
+ //# sourceMappingURL=objects.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/objects.ts"],
4
+ "sourcesContent": ["/**\n * @fileoverview Object manipulation and reflection utilities.\n * Provides type-safe object operations, property access, and structural helpers.\n */\n\nimport {\n kInternalsSymbol,\n LOOP_SENTINEL,\n UNDEFINED_TOKEN,\n} from '#constants/core'\n\nimport { isArray } from './arrays'\nimport { localeCompare } from './sorts'\n\n// Type definitions\ntype GetterDefObj = { [key: PropertyKey]: () => unknown }\ntype LazyGetterStats = { initialized?: Set<PropertyKey> | undefined }\ntype ConstantsObjectOptions = {\n getters?: GetterDefObj | undefined\n internals?: object | undefined\n mixin?: object | undefined\n}\ntype Remap<T> = { [K in keyof T]: T[K] } extends infer O\n ? { [K in keyof O]: O[K] }\n : never\n\n// Type for dynamic lazy getter record.\ntype LazyGetterRecord<T> = {\n [key: PropertyKey]: () => T\n}\n\n// Type for generic property bag.\ntype PropertyBag = {\n [key: PropertyKey]: unknown\n}\n\n// Type for generic sorted object entries.\ntype SortedObject<T> = {\n [key: PropertyKey]: T\n}\n\nexport type { GetterDefObj, LazyGetterStats, ConstantsObjectOptions, Remap }\n\n// IMPORTANT: Do not use destructuring here - use direct assignment instead.\n// tsgo has a bug that incorrectly transpiles destructured exports, resulting in\n// `exports.SomeName = void 0;` which causes runtime errors.\n// See: https://github.com/SocketDev/socket-packageurl-js/issues/3\nconst ObjectDefineProperties = Object.defineProperties\nconst ObjectDefineProperty = Object.defineProperty\nconst ObjectFreeze = Object.freeze\nconst ObjectFromEntries = Object.fromEntries\nconst ObjectGetOwnPropertyDescriptors = Object.getOwnPropertyDescriptors\nconst ObjectGetOwnPropertyNames = Object.getOwnPropertyNames\nconst ObjectGetPrototypeOf = Object.getPrototypeOf\nconst ObjectHasOwn = Object.hasOwn\nconst ObjectKeys = Object.keys\nconst ObjectPrototype = Object.prototype\nconst ObjectSetPrototypeOf = Object.setPrototypeOf\n// @ts-expect-error - __defineGetter__ exists but not in type definitions.\n// IMPORTANT: Do not use destructuring here - use direct assignment instead.\n// tsgo has a bug that incorrectly transpiles destructured exports, resulting in\n// `exports.SomeName = void 0;` which causes runtime errors.\n// See: https://github.com/SocketDev/socket-packageurl-js/issues/3\nconst __defineGetter__ = Object.prototype.__defineGetter__\n// IMPORTANT: Do not use destructuring here - use direct assignment instead.\n// tsgo has a bug that incorrectly transpiles destructured exports, resulting in\n// `exports.SomeName = void 0;` which causes runtime errors.\n// See: https://github.com/SocketDev/socket-packageurl-js/issues/3\nconst ReflectOwnKeys = Reflect.ownKeys\n\n/**\n * Create a lazy getter function that memoizes its result.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function createLazyGetter<T>(\n name: PropertyKey,\n getter: () => T,\n stats?: LazyGetterStats,\n): () => T {\n let lazyValue: T | typeof UNDEFINED_TOKEN = UNDEFINED_TOKEN\n // Dynamically name the getter without using Object.defineProperty.\n const { [name]: lazyGetter } = {\n [name]() {\n if (lazyValue === UNDEFINED_TOKEN) {\n stats?.initialized?.add(name)\n lazyValue = getter()\n }\n return lazyValue as T\n },\n } as LazyGetterRecord<T>\n return lazyGetter as unknown as () => T\n}\n\n/**\n * Create a frozen constants object with lazy getters and internal properties.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function createConstantsObject(\n props: object,\n options_?: ConstantsObjectOptions,\n): Readonly<object> {\n const options = { __proto__: null, ...options_ } as ConstantsObjectOptions\n const attributes = ObjectFreeze({\n __proto__: null,\n getters: options.getters\n ? ObjectFreeze(\n ObjectSetPrototypeOf(toSortedObject(options.getters), null),\n )\n : undefined,\n internals: options.internals\n ? ObjectFreeze(\n ObjectSetPrototypeOf(toSortedObject(options.internals), null),\n )\n : undefined,\n mixin: options.mixin\n ? ObjectFreeze(\n ObjectDefineProperties(\n { __proto__: null },\n ObjectGetOwnPropertyDescriptors(options.mixin),\n ),\n )\n : undefined,\n props: props\n ? ObjectFreeze(ObjectSetPrototypeOf(toSortedObject(props), null))\n : undefined,\n })\n const lazyGetterStats = ObjectFreeze({\n __proto__: null,\n initialized: new Set<PropertyKey>(),\n })\n const object = defineLazyGetters(\n {\n __proto__: null,\n [kInternalsSymbol]: ObjectFreeze({\n __proto__: null,\n get attributes() {\n return attributes\n },\n get lazyGetterStats() {\n return lazyGetterStats\n },\n ...attributes.internals,\n }),\n kInternalsSymbol,\n ...attributes.props,\n },\n attributes.getters,\n lazyGetterStats,\n )\n if (attributes.mixin) {\n ObjectDefineProperties(\n object,\n toSortedObjectFromEntries(\n objectEntries(ObjectGetOwnPropertyDescriptors(attributes.mixin)).filter(\n p => !ObjectHasOwn(object, p[0]),\n ),\n ) as PropertyDescriptorMap,\n )\n }\n return ObjectFreeze(object)\n}\n\n/**\n * Define a getter property on an object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function defineGetter<T>(\n object: object,\n propKey: PropertyKey,\n getter: () => T,\n): object {\n ObjectDefineProperty(object, propKey, {\n get: getter,\n enumerable: false,\n configurable: true,\n })\n return object\n}\n\n/**\n * Define a lazy getter property on an object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function defineLazyGetter<T>(\n object: object,\n propKey: PropertyKey,\n getter: () => T,\n stats?: LazyGetterStats,\n): object {\n return defineGetter(object, propKey, createLazyGetter(propKey, getter, stats))\n}\n\n/**\n * Define multiple lazy getter properties on an object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function defineLazyGetters(\n object: object,\n getterDefObj: GetterDefObj | undefined,\n stats?: LazyGetterStats,\n): object {\n if (getterDefObj !== null && typeof getterDefObj === 'object') {\n const keys = ReflectOwnKeys(getterDefObj)\n for (let i = 0, { length } = keys; i < length; i += 1) {\n const key = keys[i] as PropertyKey\n defineLazyGetter(\n object,\n key,\n createLazyGetter(key, getterDefObj[key] as () => unknown, stats),\n )\n }\n }\n return object\n}\n\n/**\n * Compare two entry arrays by their keys for sorting.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function entryKeyComparator(\n a: [PropertyKey, unknown],\n b: [PropertyKey, unknown],\n): number {\n const keyA = a[0]\n const keyB = b[0]\n const strKeyA = typeof keyA === 'string' ? keyA : String(keyA)\n const strKeyB = typeof keyB === 'string' ? keyB : String(keyB)\n return localeCompare(strKeyA, strKeyB)\n}\n\n/**\n * Get the enumerable own property keys of an object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function getKeys(obj: unknown): string[] {\n return isObject(obj) ? ObjectKeys(obj) : []\n}\n\n/**\n * Get an own property value from an object safely.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function getOwn(obj: unknown, propKey: PropertyKey): unknown {\n if (obj === null || obj === undefined) {\n return undefined\n }\n return ObjectHasOwn(obj as object, propKey)\n ? (obj as Record<PropertyKey, unknown>)[propKey]\n : undefined\n}\n\n/**\n * Get all own property values from an object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function getOwnPropertyValues<T>(\n obj: { [key: PropertyKey]: T } | null | undefined,\n): T[] {\n if (obj === null || obj === undefined) {\n return []\n }\n const keys = ObjectGetOwnPropertyNames(obj)\n const { length } = keys\n const values = Array(length)\n for (let i = 0; i < length; i += 1) {\n values[i] = obj[keys[i] as string]\n }\n return values\n}\n\n/**\n * Check if an object has any enumerable own properties.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function hasKeys(obj: unknown): obj is PropertyBag {\n if (obj === null || obj === undefined) {\n return false\n }\n for (const key in obj as object) {\n if (ObjectHasOwn(obj as object, key)) {\n return true\n }\n }\n return false\n}\n\n/**\n * Check if an object has an own property.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function hasOwn(\n obj: unknown,\n propKey: PropertyKey,\n): obj is object & PropertyBag {\n if (obj === null || obj === undefined) {\n return false\n }\n return ObjectHasOwn(obj as object, propKey)\n}\n\n/**\n * Check if a value is an object (including arrays).\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function isObject(\n value: unknown,\n): value is { [key: PropertyKey]: unknown } {\n return value !== null && typeof value === 'object'\n}\n\n/**\n * Check if a value is a plain object (not an array, not a built-in).\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function isObjectObject(\n value: unknown,\n): value is { [key: PropertyKey]: unknown } {\n if (value === null || typeof value !== 'object' || isArray(value)) {\n return false\n }\n const proto = ObjectGetPrototypeOf(value)\n return proto === null || proto === ObjectPrototype\n}\n\n// IMPORTANT: Do not use destructuring here - use direct assignment instead.\n// tsgo has a bug that incorrectly transpiles destructured exports, resulting in\n// `exports.SomeName = void 0;` which causes runtime errors.\n// See: https://github.com/SocketDev/socket-packageurl-js/issues/3\n\n/**\n * Alias for native Object.assign.\n * Copies all enumerable own properties from one or more source objects to a target object.\n */\nexport const objectAssign = Object.assign\n\n/**\n * Get all own property entries (key-value pairs) from an object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function objectEntries(obj: unknown): Array<[PropertyKey, unknown]> {\n if (obj === null || obj === undefined) {\n return []\n }\n const keys = ReflectOwnKeys(obj as object)\n const { length } = keys\n const entries = Array(length)\n const record = obj as Record<PropertyKey, unknown>\n for (let i = 0; i < length; i += 1) {\n const key = keys[i] as PropertyKey\n entries[i] = [key, record[key]]\n }\n return entries\n}\n\n// IMPORTANT: Do not use destructuring here - use direct assignment instead.\n// tsgo has a bug that incorrectly transpiles destructured exports, resulting in\n// `exports.SomeName = void 0;` which causes runtime errors.\n// See: https://github.com/SocketDev/socket-packageurl-js/issues/3\n\n/**\n * Alias for native Object.freeze.\n * Freezes an object, preventing new properties from being added and existing properties from being removed or modified.\n */\nexport const objectFreeze = Object.freeze\n\n/**\n * Deep merge source object into target object.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function merge<T extends object, U extends object>(\n target: T,\n source: U,\n): T & U {\n if (!isObject(target) || !isObject(source)) {\n return target as T & U\n }\n const queue: Array<[unknown, unknown]> = [[target, source]]\n let pos = 0\n let { length: queueLength } = queue\n while (pos < queueLength) {\n if (pos === LOOP_SENTINEL) {\n throw new Error('Detected infinite loop in object crawl of merge')\n }\n const { 0: currentTarget, 1: currentSource } = queue[pos++] as [\n Record<PropertyKey, unknown>,\n Record<PropertyKey, unknown>,\n ]\n\n if (!currentSource || !currentTarget) {\n continue\n }\n\n const isSourceArray = isArray(currentSource)\n const isTargetArray = isArray(currentTarget)\n\n // Skip array merging - arrays in source replace arrays in target\n if (isSourceArray || isTargetArray) {\n continue\n }\n\n const keys = ReflectOwnKeys(currentSource as object)\n for (let i = 0, { length } = keys; i < length; i += 1) {\n const key = keys[i] as PropertyKey\n const srcVal = currentSource[key]\n const targetVal = currentTarget[key]\n if (isArray(srcVal)) {\n // Replace arrays entirely\n currentTarget[key] = srcVal\n } else if (isObject(srcVal)) {\n if (isObject(targetVal) && !isArray(targetVal)) {\n queue[queueLength++] = [targetVal, srcVal]\n } else {\n currentTarget[key] = srcVal\n }\n } else {\n currentTarget[key] = srcVal\n }\n }\n }\n return target as T & U\n}\n\n/**\n * Convert an object to a new object with sorted keys.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function toSortedObject<T extends object>(obj: T): T {\n return toSortedObjectFromEntries(objectEntries(obj)) as T\n}\n\n/**\n * Create an object from entries with sorted keys.\n */\n/*@__NO_SIDE_EFFECTS__*/\nexport function toSortedObjectFromEntries<T = unknown>(\n entries: Iterable<[PropertyKey, T]>,\n): SortedObject<T> {\n const otherEntries = []\n const symbolEntries = []\n // Use for-of to work with entries iterators.\n for (const entry of entries) {\n if (typeof entry[0] === 'symbol') {\n symbolEntries.push(entry)\n } else {\n otherEntries.push(entry)\n }\n }\n if (!otherEntries.length && !symbolEntries.length) {\n return {}\n }\n return ObjectFromEntries([\n // The String constructor is safe to use with symbols.\n ...symbolEntries.sort(entryKeyComparator),\n ...otherEntries.sort(entryKeyComparator),\n ])\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,107 @@
1
+ /**
2
+ * @fileoverview Editable package.json manipulation utilities.
3
+ */
4
+ import type { EditablePackageJsonOptions, NormalizeOptions, PackageJson, SaveOptions } from '../packages';
5
+ // Define the interface for the dynamic class
6
+ interface EditablePackageJsonConstructor {
7
+ new (): EditablePackageJsonInstance;
8
+ fixSteps: unknown[];
9
+ normalizeSteps: unknown[];
10
+ prepareSteps: unknown[];
11
+ create(path: string, opts?: EditablePackageJsonOptions): Promise<EditablePackageJsonInstance>;
12
+ fix(path: string, opts?: unknown): Promise<EditablePackageJsonInstance>;
13
+ load(path: string, opts?: EditablePackageJsonOptions): Promise<EditablePackageJsonInstance>;
14
+ normalize(path: string, opts?: NormalizeOptions): Promise<EditablePackageJsonInstance>;
15
+ prepare(path: string, opts?: unknown): Promise<EditablePackageJsonInstance>;
16
+ }
17
+ /**
18
+ * EditablePackageJson instance interface extending NPMCliPackageJson functionality.
19
+ * Provides enhanced package.json manipulation with Socket-specific features.
20
+ * @extends NPMCliPackageJson (from @npmcli/package-json)
21
+ */
22
+ export interface EditablePackageJsonInstance {
23
+ /**
24
+ * The parsed package.json content as a readonly object.
25
+ * @readonly
26
+ */
27
+ content: Readonly<PackageJson>;
28
+ /**
29
+ * Create a new package.json file at the specified path.
30
+ * @param path - The directory path where package.json will be created
31
+ */
32
+ create(path: string): this;
33
+ /**
34
+ * Apply automatic fixes to the package.json based on npm standards.
35
+ * @param opts - Optional fix configuration
36
+ */
37
+ fix(opts?: unknown | undefined): Promise<this>;
38
+ /**
39
+ * Initialize the instance from a content object.
40
+ * @param content - The package.json content object
41
+ */
42
+ fromContent(content: unknown): this;
43
+ /**
44
+ * Initialize the instance from a JSON string.
45
+ * @param json - The package.json content as a JSON string
46
+ */
47
+ fromJSON(json: string): this;
48
+ /**
49
+ * Load a package.json file from the specified path.
50
+ * @param path - The directory containing the package.json
51
+ * @param create - Whether to create the file if it doesn't exist
52
+ */
53
+ load(path: string, create?: boolean): Promise<this>;
54
+ /**
55
+ * Normalize the package.json content according to npm standards.
56
+ * @param opts - Normalization options
57
+ */
58
+ normalize(opts?: NormalizeOptions): Promise<this>;
59
+ /**
60
+ * Prepare the package.json for publishing.
61
+ * @param opts - Preparation options
62
+ */
63
+ prepare(opts?: unknown): Promise<this>;
64
+ /**
65
+ * Update the package.json content with new values.
66
+ * @param content - Partial package.json object with fields to update
67
+ * @override from NPMCliPackageJson
68
+ */
69
+ update(content: Partial<PackageJson>): this;
70
+ /**
71
+ * Save the package.json file to disk.
72
+ * @param options - Save options for formatting and sorting
73
+ * @override from NPMCliPackageJson
74
+ */
75
+ save(options?: SaveOptions | undefined): Promise<boolean>;
76
+ /**
77
+ * Synchronously save the package.json file to disk.
78
+ * @param options - Save options for formatting and sorting
79
+ */
80
+ saveSync(options?: SaveOptions | undefined): boolean;
81
+ /**
82
+ * Check if the package.json will be saved based on current changes.
83
+ * @param options - Save options to evaluate
84
+ */
85
+ willSave(options?: SaveOptions | undefined): boolean;
86
+ }
87
+ /**
88
+ * Get the EditablePackageJson class for package.json manipulation.
89
+ */
90
+ /*@__NO_SIDE_EFFECTS__*/
91
+ export declare function getEditablePackageJsonClass(): EditablePackageJsonConstructor;
92
+ /**
93
+ * Convert a package.json object to an editable instance.
94
+ */
95
+ /*@__NO_SIDE_EFFECTS__*/
96
+ export declare function pkgJsonToEditable(pkgJson: PackageJson, options?: EditablePackageJsonOptions): unknown;
97
+ /**
98
+ * Convert package.json to editable instance with file persistence.
99
+ */
100
+ /*@__NO_SIDE_EFFECTS__*/
101
+ export declare function toEditablePackageJson(pkgJson: PackageJson, options?: EditablePackageJsonOptions): Promise<unknown>;
102
+ /**
103
+ * Convert package.json to editable instance with file persistence synchronously.
104
+ */
105
+ /*@__NO_SIDE_EFFECTS__*/
106
+ export declare function toEditablePackageJsonSync(pkgJson: PackageJson, options?: EditablePackageJsonOptions): unknown;
107
+ export {};