@socketsecurity/lib 6.0.6 → 6.0.7
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.
- package/CHANGELOG.md +26 -1
- package/dist/ai/discover.d.mts +2 -2
- package/dist/ai/discover.js +3 -2
- package/dist/ai/spawn.js +2 -1
- package/dist/ai/types.d.mts +18 -6
- package/dist/ai/worktree.d.mts +6 -6
- package/dist/ai/worktree.js +1 -1
- package/dist/ansi/strip.d.ts +1 -1
- package/dist/ansi/strip.js +0 -2
- package/dist/archives/_internal.js +7 -9
- package/dist/archives/extract.js +1 -1
- package/dist/archives/tar.js +6 -6
- package/dist/archives/zip.js +3 -5
- package/dist/argv/flag-predicates.d.ts +12 -12
- package/dist/argv/flag-predicates.js +17 -17
- package/dist/argv/flag-types.d.ts +18 -18
- package/dist/argv/flag-types.js +4 -4
- package/dist/argv/parse.d.ts +1 -1
- package/dist/arrays/_internal.js +11 -12
- package/dist/arrays/chunk.js +0 -1
- package/dist/arrays/join.d.ts +37 -3
- package/dist/arrays/join.js +43 -7
- package/dist/arrays/unique.js +0 -1
- package/dist/bin/_internal.d.ts +1 -1
- package/dist/bin/_internal.js +1 -1
- package/dist/bin/exec.js +2 -3
- package/dist/bin/find.js +13 -13
- package/dist/bin/prim.cjs +22736 -22556
- package/dist/bin/resolve.js +12 -13
- package/dist/bin/which.js +8 -8
- package/dist/cache/ttl/store.js +5 -5
- package/dist/checks/primordials-defaults.d.ts +3 -3
- package/dist/checks/primordials-defaults.js +3 -3
- package/dist/checks/primordials.js +4 -3
- package/dist/{bin → cli}/check-primordials.d.ts +11 -11
- package/dist/{bin → cli}/check-primordials.js +55 -52
- package/dist/{bin → cli}/check.js +3 -3
- package/dist/{bin → cli}/socket-lib.d.ts +1 -1
- package/dist/{bin → cli}/socket-lib.js +4 -4
- package/dist/colors/socket-palette.js +7 -9
- package/dist/compression/_internal.d.ts +12 -12
- package/dist/compression/_internal.js +17 -17
- package/dist/compression/brotli.d.ts +25 -25
- package/dist/compression/brotli.js +33 -33
- package/dist/compression/gzip.d.ts +23 -23
- package/dist/compression/gzip.js +40 -40
- package/dist/constants/agents.d.ts +3 -1
- package/dist/constants/agents.js +15 -11
- package/dist/constants/licenses.js +3 -3
- package/dist/constants/node.d.ts +23 -0
- package/dist/constants/node.js +47 -15
- package/dist/constants/packages.js +22 -28
- package/dist/constants/platform.d.ts +30 -3
- package/dist/constants/platform.js +72 -12
- package/dist/constants/runtime.d.ts +22 -0
- package/dist/constants/runtime.js +32 -0
- package/dist/constants/socket.js +1 -1
- package/dist/cover/code.js +8 -8
- package/dist/cover/formatters.js +5 -5
- package/dist/crypto/hash.d.ts +26 -1
- package/dist/crypto/hash.js +43 -12
- package/dist/debug/_internal.js +4 -6
- package/dist/debug/caller-info.js +2 -3
- package/dist/debug/namespace.d.ts +7 -0
- package/dist/debug/namespace.js +21 -12
- package/dist/debug/output.js +21 -24
- package/dist/debug/types.d.ts +4 -4
- package/dist/dlx/arborist.js +6 -6
- package/dist/dlx/binary-cache.js +14 -14
- package/dist/dlx/binary-download.d.ts +1 -1
- package/dist/dlx/binary-download.js +11 -11
- package/dist/dlx/binary-resolution.js +16 -14
- package/dist/dlx/binary-types.d.ts +5 -5
- package/dist/dlx/binary.js +5 -5
- package/dist/dlx/cache.js +1 -1
- package/dist/dlx/detect.d.ts +34 -25
- package/dist/dlx/detect.js +86 -77
- package/dist/dlx/dir.js +2 -2
- package/dist/dlx/firewall.d.ts +1 -1
- package/dist/dlx/lockfile.d.ts +19 -18
- package/dist/dlx/lockfile.js +16 -16
- package/dist/dlx/manifest.d.ts +6 -6
- package/dist/dlx/manifest.js +5 -5
- package/dist/dlx/package.d.ts +10 -10
- package/dist/dlx/package.js +16 -16
- package/dist/dlx/packages.js +4 -4
- package/dist/dlx/paths.js +7 -7
- package/dist/dlx/spec.js +1 -1
- package/dist/dlx/types.d.ts +28 -27
- package/dist/eco/cargo/parse-lockfile.d.ts +1 -1
- package/dist/eco/cargo/parse-lockfile.js +2 -2
- package/dist/eco/manifest/analyze-lockfile.js +2 -2
- package/dist/eco/manifest/detect-format.js +4 -4
- package/dist/eco/manifest/find-packages.js +2 -2
- package/dist/eco/manifest/get-package-versions.js +2 -2
- package/dist/eco/manifest/get-package.js +2 -2
- package/dist/eco/manifest/parse-lockfile.js +2 -2
- package/dist/eco/manifest/parse-manifest.js +2 -2
- package/dist/eco/manifest/parse.js +2 -2
- package/dist/eco/npm/npm/exec.js +2 -2
- package/dist/eco/npm/npm/flags.js +7 -12
- package/dist/eco/npm/npm/parse-lockfile.d.ts +14 -14
- package/dist/eco/npm/npm/parse-lockfile.js +3 -3
- package/dist/eco/npm/parse-package-json.js +3 -3
- package/dist/eco/npm/pnpm/exec.d.ts +1 -1
- package/dist/eco/npm/pnpm/exec.js +5 -5
- package/dist/eco/npm/pnpm/flags.js +0 -3
- package/dist/eco/npm/pnpm/parse-lockfile.d.ts +1 -1
- package/dist/eco/npm/pnpm/parse-lockfile.js +4 -4
- package/dist/eco/npm/script.js +9 -6
- package/dist/eco/npm/yarnpkg/yarn/exec.js +3 -3
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +2 -2
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +8 -8
- package/dist/effects/pulse-frames.d.ts +3 -1
- package/dist/effects/shimmer-keyframes.d.ts +1 -1
- package/dist/effects/shimmer-terminal.d.ts +1 -1
- package/dist/env/boolean.js +0 -1
- package/dist/env/ci.js +0 -1
- package/dist/env/debug.js +0 -1
- package/dist/env/github-status.d.ts +51 -0
- package/dist/env/github-status.js +90 -0
- package/dist/env/github.js +0 -8
- package/dist/env/home.js +0 -1
- package/dist/env/locale.js +0 -3
- package/dist/env/node-auth-token.js +0 -1
- package/dist/env/node-env.js +0 -1
- package/dist/env/node-version-managers.d.ts +53 -0
- package/dist/env/node-version-managers.js +90 -0
- package/dist/env/npm.js +0 -5
- package/dist/env/number.js +0 -1
- package/dist/env/package-manager.js +3 -6
- package/dist/env/path.js +0 -1
- package/dist/env/pre-commit.js +1 -2
- package/dist/env/rewire.d.ts +7 -6
- package/dist/env/rewire.js +15 -16
- package/dist/env/shell.js +0 -1
- package/dist/env/socket-cli.js +5 -18
- package/dist/env/socket-mcp.d.ts +114 -0
- package/dist/env/socket-mcp.js +146 -0
- package/dist/env/socket.d.ts +1 -109
- package/dist/env/socket.js +12 -167
- package/dist/env/string.js +0 -1
- package/dist/env/temp-dir.js +0 -3
- package/dist/env/term.js +0 -1
- package/dist/env/test.js +3 -6
- package/dist/env/windows.js +0 -4
- package/dist/env/xdg.js +0 -3
- package/dist/events/exit/_internal.d.ts +11 -9
- package/dist/events/exit/_internal.js +31 -35
- package/dist/events/exit/handler.js +3 -4
- package/dist/events/exit/intercept.js +4 -6
- package/dist/events/exit/lifecycle.js +16 -18
- package/dist/events/exit/signals.js +1 -2
- package/dist/events/exit/types.d.ts +6 -5
- package/dist/external/@npmcli/package-json.js +2 -2
- package/dist/external/npm-pack.js +2 -2
- package/dist/external-tools/bazel/read-bazel-version-file.js +1 -1
- package/dist/external-tools/bazel/types.d.ts +1 -1
- package/dist/external-tools/cdxgen/from-vfs.js +1 -1
- package/dist/external-tools/cdxgen/types.d.ts +1 -1
- package/dist/external-tools/from-download.d.ts +1 -1
- package/dist/external-tools/from-download.js +1 -1
- package/dist/external-tools/janus/from-vfs.js +1 -1
- package/dist/external-tools/janus/types.d.ts +1 -1
- package/dist/external-tools/jre/detect-platform-arch.d.ts +10 -6
- package/dist/external-tools/jre/detect-platform-arch.js +29 -14
- package/dist/external-tools/jre/from-vfs.js +1 -1
- package/dist/external-tools/jre/types.d.ts +1 -1
- package/dist/external-tools/manifest.d.ts +7 -7
- package/dist/external-tools/manifest.js +12 -12
- package/dist/external-tools/opengrep/from-vfs.js +1 -1
- package/dist/external-tools/opengrep/types.d.ts +1 -1
- package/dist/external-tools/python/asset-names.d.ts +76 -0
- package/dist/external-tools/python/asset-names.js +104 -0
- package/dist/external-tools/python/dlx.d.ts +80 -0
- package/dist/external-tools/python/dlx.js +87 -0
- package/dist/external-tools/python/from-download.d.ts +53 -0
- package/dist/external-tools/python/from-download.js +68 -0
- package/dist/external-tools/python/from-path.d.ts +7 -0
- package/dist/external-tools/python/from-path.js +23 -0
- package/dist/external-tools/python/pin.d.ts +121 -0
- package/dist/external-tools/python/pin.js +173 -0
- package/dist/external-tools/python/pip-install.d.ts +75 -0
- package/dist/external-tools/python/pip-install.js +139 -0
- package/dist/external-tools/python/resolve.d.ts +42 -0
- package/dist/external-tools/python/resolve.js +58 -0
- package/dist/external-tools/python/types.d.ts +49 -0
- package/dist/external-tools/sbt/from-vfs.js +1 -1
- package/dist/external-tools/sbt/types.d.ts +1 -1
- package/dist/external-tools/skillspector/from-path.js +3 -5
- package/dist/external-tools/skillspector/from-vfs.js +1 -1
- package/dist/external-tools/synp/from-download.js +2 -2
- package/dist/external-tools/synp/from-vfs.js +1 -1
- package/dist/external-tools/trivy/from-vfs.js +1 -1
- package/dist/external-tools/trivy/types.d.ts +1 -1
- package/dist/external-tools/trufflehog/from-vfs.js +1 -1
- package/dist/external-tools/trufflehog/types.d.ts +1 -1
- package/dist/fs/_internal.d.ts +1 -1
- package/dist/fs/_internal.js +7 -7
- package/dist/fs/access.js +5 -9
- package/dist/fs/{path-cache.js → allowed-dirs-cache.js} +1 -1
- package/dist/fs/encoding.js +5 -7
- package/dist/fs/{find-up.js → find.js} +11 -13
- package/dist/fs/inspect.js +7 -13
- package/dist/fs/read-dir.js +7 -10
- package/dist/fs/read-file.js +8 -14
- package/dist/fs/read-json-cache.d.ts +6 -4
- package/dist/fs/read-json-cache.js +9 -6
- package/dist/fs/read-json.js +4 -6
- package/dist/fs/resolve-module.js +1 -1
- package/dist/fs/safe.d.ts +1 -1
- package/dist/fs/safe.js +12 -13
- package/dist/fs/unique.js +4 -5
- package/dist/fs/validate.js +1 -2
- package/dist/fs/write-json.js +4 -5
- package/dist/git/_internal.js +10 -10
- package/dist/git/changed.js +4 -4
- package/dist/git/repo.js +3 -3
- package/dist/git/staged.js +4 -4
- package/dist/git/unstaged.js +4 -4
- package/dist/github/ghsa.js +2 -2
- package/dist/github/refs-cache.d.ts +1 -1
- package/dist/github/refs-cache.js +5 -5
- package/dist/github/refs-rest.js +5 -5
- package/dist/github/{fetch.js → request.js} +13 -2
- package/dist/github/token.js +1 -1
- package/dist/github/types.d.ts +1 -1
- package/dist/globs/_internal.js +7 -9
- package/dist/globs/match.js +4 -6
- package/dist/globs/matcher.d.ts +3 -3
- package/dist/globs/matcher.js +12 -14
- package/dist/globs/stream.js +1 -2
- package/dist/globs/types.d.ts +24 -24
- package/dist/http-request/_internal.d.ts +1 -1
- package/dist/http-request/browser.js +4 -2
- package/dist/http-request/checksum-file.d.ts +55 -0
- package/dist/http-request/checksum-file.js +95 -0
- package/dist/http-request/download-types.d.ts +15 -23
- package/dist/http-request/download.js +3 -3
- package/dist/http-request/headers.js +0 -1
- package/dist/http-request/request-attempt.js +37 -33
- package/dist/http-request/request-types.d.ts +2 -2
- package/dist/http-request/request.js +1 -1
- package/dist/http-request/user-agent.js +3 -4
- package/dist/integrity.d.ts +86 -18
- package/dist/integrity.js +119 -30
- package/dist/ipc/directory.js +2 -2
- package/dist/ipc/paths.js +1 -1
- package/dist/ipc/write.js +1 -1
- package/dist/ipc-cli/get.js +12 -12
- package/dist/json/edit.js +13 -14
- package/dist/json/format.js +2 -2
- package/dist/json/parse.d.ts +1 -1
- package/dist/json/parse.js +3 -7
- package/dist/logger/_internal.d.ts +4 -4
- package/dist/logger/_internal.js +3 -3
- package/dist/logger/colors.js +4 -3
- package/dist/logger/console-methods.d.ts +132 -0
- package/dist/logger/console-methods.js +169 -0
- package/dist/logger/console.d.ts +12 -0
- package/dist/logger/console.js +42 -11
- package/dist/logger/indentation-methods.d.ts +81 -0
- package/dist/logger/indentation-methods.js +121 -0
- package/dist/logger/node.d.ts +16 -338
- package/dist/logger/node.js +75 -608
- package/dist/logger/options.d.ts +39 -0
- package/dist/logger/options.js +47 -0
- package/dist/logger/semantic-methods.d.ts +63 -0
- package/dist/logger/semantic-methods.js +108 -0
- package/dist/logger/stream-methods.d.ts +63 -0
- package/dist/logger/stream-methods.js +101 -0
- package/dist/logger/stream.d.ts +37 -0
- package/dist/logger/stream.js +42 -0
- package/dist/logger/symbols-builder.js +9 -9
- package/dist/logger/symbols.d.ts +2 -25
- package/dist/logger/symbols.js +53 -74
- package/dist/logger/types.d.ts +1 -1
- package/dist/memo/types.d.ts +6 -6
- package/dist/native-messaging/host.d.ts +20 -0
- package/dist/native-messaging/host.js +120 -0
- package/dist/native-messaging/index.d.ts +5 -0
- package/dist/native-messaging/index.js +22 -0
- package/dist/native-messaging/install.d.ts +60 -0
- package/dist/native-messaging/install.js +141 -0
- package/dist/native-messaging/rate-limit.d.ts +62 -0
- package/dist/native-messaging/rate-limit.js +115 -0
- package/dist/native-messaging/run.d.ts +10 -0
- package/dist/native-messaging/run.js +17 -0
- package/dist/node/async-hooks.js +4 -3
- package/dist/node/child-process.js +4 -3
- package/dist/node/crypto.js +4 -3
- package/dist/node/events.js +4 -3
- package/dist/node/fs-promises.js +4 -3
- package/dist/node/fs.js +4 -3
- package/dist/node/http.js +4 -3
- package/dist/node/https.js +4 -3
- package/dist/node/module.js +10 -6
- package/dist/node/os.js +4 -3
- package/dist/node/path.js +4 -3
- package/dist/node/timers-promises.js +4 -3
- package/dist/node/url.js +4 -3
- package/dist/node/util.js +4 -3
- package/dist/objects/getters.js +5 -7
- package/dist/objects/inspect.js +1 -4
- package/dist/objects/mutate.js +2 -3
- package/dist/objects/predicates.js +0 -4
- package/dist/objects/sort.js +3 -7
- package/dist/packages/edit-class.js +15 -16
- package/dist/packages/edit.js +12 -14
- package/dist/packages/exports.js +11 -17
- package/dist/packages/fetch.d.ts +16 -0
- package/dist/packages/fetch.js +81 -0
- package/dist/packages/find.d.ts +55 -0
- package/dist/packages/find.js +65 -0
- package/dist/packages/isolation.js +14 -14
- package/dist/packages/licenses.js +16 -16
- package/dist/packages/manifest.js +12 -15
- package/dist/packages/metadata-extensions.d.ts +14 -0
- package/dist/packages/metadata-extensions.js +43 -0
- package/dist/packages/normalize.js +5 -9
- package/dist/packages/provenance.js +16 -18
- package/dist/packages/read.d.ts +29 -0
- package/dist/packages/read.js +66 -0
- package/dist/packages/specs.d.ts +48 -1
- package/dist/packages/specs.js +74 -11
- package/dist/packages/tarball.d.ts +24 -0
- package/dist/packages/tarball.js +79 -0
- package/dist/packages/types.d.ts +21 -20
- package/dist/packages/validation.js +0 -3
- package/dist/paths/_internal.d.ts +2 -1
- package/dist/paths/_internal.js +7 -19
- package/dist/paths/conversion.js +5 -9
- package/dist/paths/filenames.d.ts +0 -1
- package/dist/paths/filenames.js +0 -2
- package/dist/paths/normalize.js +4 -5
- package/dist/paths/packages.js +4 -7
- package/dist/paths/predicates.js +9 -16
- package/dist/paths/resolve.js +11 -14
- package/dist/paths/rewire.js +3 -3
- package/dist/paths/socket.js +16 -16
- package/dist/paths/walk.d.ts +1 -1
- package/dist/paths/walk.js +4 -4
- package/dist/perf/report.js +2 -2
- package/dist/perf/types.d.ts +1 -1
- package/dist/pkg-ext/data.js +1 -1
- package/dist/primordials/array.js +9 -9
- package/dist/primordials/date.js +2 -2
- package/dist/primordials/error.js +3 -3
- package/dist/primordials/headers.d.ts +10 -0
- package/dist/primordials/headers.js +23 -0
- package/dist/primordials/intl.d.ts +13 -0
- package/dist/primordials/intl.js +26 -0
- package/dist/primordials/math.js +33 -33
- package/dist/primordials/number.js +9 -9
- package/dist/primordials/object.js +5 -5
- package/dist/primordials/string.d.ts +2 -2
- package/dist/primordials/string.js +6 -6
- package/dist/primordials/symbol.js +3 -3
- package/dist/primordials/uncurry.js +9 -9
- package/dist/process/abort.js +3 -3
- package/dist/process/lock-manager.js +8 -8
- package/dist/process/spawn/_internal.js +6 -8
- package/dist/process/spawn/child.js +14 -14
- package/dist/process/spawn/errors.js +2 -4
- package/dist/process/spawn/kill-tree.d.ts +53 -0
- package/dist/process/spawn/kill-tree.js +85 -0
- package/dist/process/spawn/stdio.js +0 -1
- package/dist/process/spawn/types.d.ts +5 -5
- package/dist/process/transient.js +2 -2
- package/dist/promises/_internal.d.ts +2 -1
- package/dist/promises/_internal.js +2 -6
- package/dist/promises/iterate.js +11 -15
- package/dist/promises/options.js +3 -6
- package/dist/promises/retry.js +4 -5
- package/dist/promises/timers.d.ts +30 -0
- package/dist/promises/timers.js +48 -0
- package/dist/releases/github-archives.d.ts +6 -6
- package/dist/releases/github-archives.js +2 -2
- package/dist/releases/github-asset-url.d.ts +1 -1
- package/dist/releases/github-asset-url.js +5 -5
- package/dist/releases/github-downloads.d.ts +1 -1
- package/dist/releases/github-downloads.js +3 -3
- package/dist/releases/github-listing.d.ts +11 -2
- package/dist/releases/github-listing.js +20 -7
- package/dist/releases/github-retry-config.js +1 -1
- package/dist/releases/github-types.d.ts +6 -6
- package/dist/releases/socket-btm-binary-naming.d.ts +107 -0
- package/dist/releases/socket-btm-binary-naming.js +155 -0
- package/dist/releases/socket-btm.d.ts +8 -115
- package/dist/releases/socket-btm.js +16 -159
- package/dist/schema/types.d.ts +1 -1
- package/dist/sea/detect.js +6 -6
- package/dist/secrets/_internal.d.ts +2 -2
- package/dist/secrets/_internal.js +2 -2
- package/dist/secrets/compare.d.ts +45 -0
- package/dist/secrets/compare.js +61 -0
- package/dist/secrets/keychain.js +6 -4
- package/dist/secrets/linux.js +19 -19
- package/dist/secrets/macos.d.ts +1 -1
- package/dist/secrets/macos.js +13 -13
- package/dist/secrets/rc.d.ts +2 -2
- package/dist/secrets/rc.js +6 -4
- package/dist/secrets/socket-api-token.d.ts +4 -4
- package/dist/secrets/socket-api-token.js +18 -9
- package/dist/secrets/windows.js +14 -13
- package/dist/shadow/skip.js +2 -2
- package/dist/smol/detect.js +9 -10
- package/dist/smol/http.js +6 -7
- package/dist/smol/https.js +6 -7
- package/dist/smol/manifest.d.ts +1 -1
- package/dist/smol/manifest.js +6 -7
- package/dist/smol/path.d.ts +1 -1
- package/dist/smol/path.js +7 -8
- package/dist/smol/primordial.d.ts +4 -0
- package/dist/smol/primordial.js +6 -7
- package/dist/smol/purl.d.ts +1 -1
- package/dist/smol/purl.js +7 -8
- package/dist/smol/versions.js +6 -7
- package/dist/smol/vfs.js +6 -7
- package/dist/sorts/_internal.js +6 -8
- package/dist/sorts/natural.js +10 -12
- package/dist/sorts/semver.js +1 -2
- package/dist/sorts/strings.js +0 -1
- package/dist/sorts/types.d.ts +1 -1
- package/dist/spinner/create-spinner-class.d.ts +38 -0
- package/dist/spinner/create-spinner-class.js +302 -0
- package/dist/spinner/default.js +8 -9
- package/dist/spinner/spinner-internals.d.ts +36 -0
- package/dist/spinner/spinner-internals.js +101 -0
- package/dist/spinner/spinner-shimmer-methods.d.ts +54 -0
- package/dist/spinner/spinner-shimmer-methods.js +143 -0
- package/dist/spinner/spinner-status-methods.d.ts +40 -0
- package/dist/spinner/spinner-status-methods.js +133 -0
- package/dist/spinner/spinner.d.ts +4 -5
- package/dist/spinner/spinner.js +18 -705
- package/dist/spinner/types.d.ts +3 -1
- package/dist/spinner/with.d.ts +10 -0
- package/dist/spinner/with.js +16 -2
- package/dist/stdio/divider.js +1 -1
- package/dist/stdio/footer.js +3 -3
- package/dist/stdio/header.js +4 -4
- package/dist/stdio/progress.js +5 -5
- package/dist/stdio/prompts.d.ts +5 -3
- package/dist/stdio/prompts.js +6 -7
- package/dist/stdio/stdout.js +3 -3
- package/dist/streams/parallel.js +3 -5
- package/dist/streams/transform.js +2 -3
- package/dist/strings/format.js +2 -6
- package/dist/strings/predicates.js +0 -2
- package/dist/strings/search.js +1 -2
- package/dist/strings/transform.js +0 -3
- package/dist/strings/width.js +9 -10
- package/dist/tables/bordered.js +4 -3
- package/dist/tables/padding.js +1 -1
- package/dist/tables/simple.js +8 -5
- package/dist/temporal/instant.js +1 -1
- package/dist/temporal/slots.js +6 -6
- package/dist/temporal/system.js +9 -9
- package/dist/themes/context.d.ts +3 -2
- package/dist/themes/context.js +4 -5
- package/dist/themes/themes.js +15 -15
- package/dist/themes/types.d.ts +3 -3
- package/dist/url/parse.js +0 -2
- package/dist/url/predicates.js +1 -2
- package/dist/url/search-params.js +3 -9
- package/dist/url/types.d.ts +5 -5
- package/dist/versions/_internal.js +3 -3
- package/dist/words/article.js +0 -1
- package/dist/words/capitalize.js +0 -1
- package/dist/words/pluralize.js +15 -5
- package/package.json +247 -106
- package/dist/external-tools/uv/asset-names.d.ts +0 -36
- package/dist/external-tools/uv/asset-names.js +0 -70
- package/dist/external-tools/uv/from-download.d.ts +0 -17
- package/dist/external-tools/uv/from-download.js +0 -47
- package/dist/external-tools/uv/from-path.d.ts +0 -5
- package/dist/external-tools/uv/from-path.js +0 -22
- package/dist/external-tools/uv/from-vfs.d.ts +0 -7
- package/dist/external-tools/uv/from-vfs.js +0 -26
- package/dist/external-tools/uv/resolve.d.ts +0 -25
- package/dist/external-tools/uv/resolve.js +0 -53
- package/dist/external-tools/uv/types.d.ts +0 -24
- package/dist/http-request/checksums.d.ts +0 -69
- package/dist/http-request/checksums.js +0 -108
- package/dist/http-request/http-request.d.ts +0 -12
- package/dist/http-request/http-request.js +0 -11
- package/dist/packages/operations.d.ts +0 -113
- package/dist/packages/operations.js +0 -304
- package/dist/ssri/convert.d.ts +0 -48
- package/dist/ssri/convert.js +0 -69
- package/dist/ssri/parse.d.ts +0 -27
- package/dist/ssri/parse.js +0 -41
- package/dist/ssri/validate.d.ts +0 -41
- package/dist/ssri/validate.js +0 -56
- /package/dist/{bin → cli}/check.d.ts +0 -0
- /package/dist/external-tools/{uv → python}/types.js +0 -0
- /package/dist/fs/{path-cache.d.ts → allowed-dirs-cache.d.ts} +0 -0
- /package/dist/fs/{find-up.d.ts → find.d.ts} +0 -0
- /package/dist/github/{fetch.d.ts → request.d.ts} +0 -0
|
@@ -6,28 +6,18 @@
|
|
|
6
6
|
* compressBrotliFile('input.json', 'input.json.br')
|
|
7
7
|
* readable.pipe(createBrotliCompressor()).pipe(writable)
|
|
8
8
|
*/
|
|
9
|
-
import { Buffer } from 'node:buffer';
|
|
10
|
-
import {
|
|
9
|
+
import type { Buffer } from 'node:buffer';
|
|
10
|
+
import type { BrotliOptions } from 'node:zlib';
|
|
11
11
|
import type { CompressFileOptions, CompressOptions } from './types';
|
|
12
|
+
export declare const BROTLI_EXTS: ReadonlySet<string>;
|
|
12
13
|
interface ResolvedBrotliOptions extends BrotliOptions {
|
|
13
14
|
params: NonNullable<BrotliOptions['params']>;
|
|
14
15
|
}
|
|
15
|
-
/**
|
|
16
|
-
* Translate `CompressOptions` into the `BrotliOptions` zlib expects. Defaults
|
|
17
|
-
* `quality` to 11 (max) when not provided, and forwards a positive `size` hint.
|
|
18
|
-
* Exposed for callers building their own zlib pipelines and for unit-test
|
|
19
|
-
* coverage.
|
|
20
|
-
*/
|
|
21
|
-
export declare function resolveBrotliOptions(options: CompressOptions | undefined): ResolvedBrotliOptions;
|
|
22
16
|
/**
|
|
23
17
|
* Compress a string or Buffer with brotli. Strings are encoded as UTF-8 before
|
|
24
18
|
* compression — pass an explicit Buffer if you have non-UTF-8 input.
|
|
25
19
|
*/
|
|
26
20
|
export declare function compressBrotli(input: string | Buffer, options?: CompressOptions | undefined): Promise<Buffer>;
|
|
27
|
-
/**
|
|
28
|
-
* Decompress a brotli-compressed Buffer.
|
|
29
|
-
*/
|
|
30
|
-
export declare function decompressBrotli(input: Buffer): Promise<Buffer>;
|
|
31
21
|
/**
|
|
32
22
|
* Stream-compress a file with brotli. Two call shapes:
|
|
33
23
|
*
|
|
@@ -42,6 +32,20 @@ export declare function decompressBrotli(input: Buffer): Promise<Buffer>;
|
|
|
42
32
|
*/
|
|
43
33
|
export declare function compressBrotliFile(srcPath: string, destPath: string, options?: CompressOptions | undefined): Promise<string>;
|
|
44
34
|
export declare function compressBrotliFile(srcPath: string, options: CompressFileOptions): Promise<string>;
|
|
35
|
+
/**
|
|
36
|
+
* Create a brotli compress transform stream. Compose into your own pipeline.
|
|
37
|
+
* The `pipeline` from `node:stream/promises` is the safe way to wire it up — it
|
|
38
|
+
* handles error propagation across all stages.
|
|
39
|
+
*/
|
|
40
|
+
export declare function createBrotliCompressor(options?: CompressOptions | undefined): import("zlib").BrotliCompress;
|
|
41
|
+
/**
|
|
42
|
+
* Create a brotli decompress transform stream.
|
|
43
|
+
*/
|
|
44
|
+
export declare function createBrotliDecompressor(): import("zlib").BrotliDecompress;
|
|
45
|
+
/**
|
|
46
|
+
* Decompress a brotli-compressed Buffer.
|
|
47
|
+
*/
|
|
48
|
+
export declare function decompressBrotli(input: Buffer): Promise<Buffer>;
|
|
45
49
|
/**
|
|
46
50
|
* Stream-decompress a brotli file. Two call shapes:
|
|
47
51
|
*
|
|
@@ -57,15 +61,10 @@ export declare function compressBrotliFile(srcPath: string, options: CompressFil
|
|
|
57
61
|
export declare function decompressBrotliFile(srcPath: string, destPath: string): Promise<string>;
|
|
58
62
|
export declare function decompressBrotliFile(srcPath: string, options: CompressFileOptions): Promise<string>;
|
|
59
63
|
/**
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
* handles error propagation across all stages.
|
|
63
|
-
*/
|
|
64
|
-
export declare function createBrotliCompressor(options?: CompressOptions | undefined): import("zlib").BrotliCompress;
|
|
65
|
-
/**
|
|
66
|
-
* Create a brotli decompress transform stream.
|
|
64
|
+
* Extension check for brotli paths — matches `.br` / `.brotli`
|
|
65
|
+
* (case-insensitive). Naming follows node:path's `extname`.
|
|
67
66
|
*/
|
|
68
|
-
export declare function
|
|
67
|
+
export declare function hasBrotliExt(filePath: string): boolean;
|
|
69
68
|
/**
|
|
70
69
|
* Cheap pre-flight check: does the buffer look like it could be brotli? Returns
|
|
71
70
|
* false for inputs too short to be valid. Brotli has no fixed magic bytes, so
|
|
@@ -73,10 +72,11 @@ export declare function createBrotliDecompressor(): import("zlib").BrotliDecompr
|
|
|
73
72
|
* `decompressBrotli(buf)` succeeding. Use for UI hints, not correctness.
|
|
74
73
|
*/
|
|
75
74
|
export declare function isBrotliCompressed(input: Buffer): boolean;
|
|
76
|
-
export declare const BROTLI_EXTS: ReadonlySet<string>;
|
|
77
75
|
/**
|
|
78
|
-
*
|
|
79
|
-
* (
|
|
76
|
+
* Translate `CompressOptions` into the `BrotliOptions` zlib expects. Defaults
|
|
77
|
+
* `quality` to 11 (max) when not provided, and forwards a positive `size` hint.
|
|
78
|
+
* Exposed for callers building their own zlib pipelines and for unit-test
|
|
79
|
+
* coverage.
|
|
80
80
|
*/
|
|
81
|
-
export declare function
|
|
81
|
+
export declare function resolveBrotliOptions(options: CompressOptions | undefined): ResolvedBrotliOptions;
|
|
82
82
|
export {};
|
|
@@ -18,18 +18,8 @@ let node_zlib = require("node:zlib");
|
|
|
18
18
|
//#region src/compression/brotli.ts
|
|
19
19
|
const brotliCompressAsync = (0, node_util.promisify)(node_zlib.brotliCompress);
|
|
20
20
|
const brotliDecompressAsync = (0, node_util.promisify)(node_zlib.brotliDecompress);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
* `quality` to 11 (max) when not provided, and forwards a positive `size` hint.
|
|
24
|
-
* Exposed for callers building their own zlib pipelines and for unit-test
|
|
25
|
-
* coverage.
|
|
26
|
-
*/
|
|
27
|
-
function resolveBrotliOptions(options) {
|
|
28
|
-
const level = options?.level ?? 11;
|
|
29
|
-
const params = { [node_zlib.constants.BROTLI_PARAM_QUALITY]: level };
|
|
30
|
-
if (options?.size !== void 0 && options.size > 0) params[node_zlib.constants.BROTLI_PARAM_SIZE_HINT] = options.size;
|
|
31
|
-
return { params };
|
|
32
|
-
}
|
|
21
|
+
const BROTLI_MIN_LEN = 4;
|
|
22
|
+
const BROTLI_EXTS = new require_primordials_map_set.SetCtor([".br", ".brotli"]);
|
|
33
23
|
/**
|
|
34
24
|
* Compress a string or Buffer with brotli. Strings are encoded as UTF-8 before
|
|
35
25
|
* compression — pass an explicit Buffer if you have non-UTF-8 input.
|
|
@@ -40,27 +30,12 @@ async function compressBrotli(input, options) {
|
|
|
40
30
|
if (opts.params[node_zlib.constants.BROTLI_PARAM_SIZE_HINT] === void 0) opts.params[node_zlib.constants.BROTLI_PARAM_SIZE_HINT] = buf.byteLength;
|
|
41
31
|
return await brotliCompressAsync(buf, opts);
|
|
42
32
|
}
|
|
43
|
-
/**
|
|
44
|
-
* Decompress a brotli-compressed Buffer.
|
|
45
|
-
*/
|
|
46
|
-
async function decompressBrotli(input) {
|
|
47
|
-
return await brotliDecompressAsync(input);
|
|
48
|
-
}
|
|
49
33
|
async function compressBrotliFile(srcPath, destOrOptions, maybeOptions) {
|
|
50
34
|
const { destPath, options, inPlace } = require_compression__internal.resolveFileArgs("compressBrotliFile", srcPath, destOrOptions, maybeOptions, (p) => `${p}.br`);
|
|
51
35
|
await (0, node_stream_promises.pipeline)((0, node_fs.createReadStream)(srcPath), (0, node_zlib.createBrotliCompress)(resolveBrotliOptions(options)), (0, node_fs.createWriteStream)(destPath));
|
|
52
36
|
if (inPlace) await require_fs_safe.safeDelete(srcPath);
|
|
53
37
|
return destPath;
|
|
54
38
|
}
|
|
55
|
-
async function decompressBrotliFile(srcPath, destOrOptions) {
|
|
56
|
-
const { destPath, inPlace } = require_compression__internal.resolveFileArgs("decompressBrotliFile", srcPath, destOrOptions, void 0, (p) => {
|
|
57
|
-
if (!hasBrotliExt(p)) throw new require_primordials_error.ErrorCtor(`decompressBrotliFile: ${p} has no .br/.brotli extension; can't infer destination`);
|
|
58
|
-
return require_compression__internal.stripExt(p, BROTLI_EXTS);
|
|
59
|
-
});
|
|
60
|
-
await (0, node_stream_promises.pipeline)((0, node_fs.createReadStream)(srcPath), (0, node_zlib.createBrotliDecompress)(), (0, node_fs.createWriteStream)(destPath));
|
|
61
|
-
if (inPlace) await require_fs_safe.safeDelete(srcPath);
|
|
62
|
-
return destPath;
|
|
63
|
-
}
|
|
64
39
|
/**
|
|
65
40
|
* Create a brotli compress transform stream. Compose into your own pipeline.
|
|
66
41
|
* The `pipeline` from `node:stream/promises` is the safe way to wire it up — it
|
|
@@ -75,7 +50,28 @@ function createBrotliCompressor(options) {
|
|
|
75
50
|
function createBrotliDecompressor() {
|
|
76
51
|
return (0, node_zlib.createBrotliDecompress)();
|
|
77
52
|
}
|
|
78
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Decompress a brotli-compressed Buffer.
|
|
55
|
+
*/
|
|
56
|
+
async function decompressBrotli(input) {
|
|
57
|
+
return await brotliDecompressAsync(input);
|
|
58
|
+
}
|
|
59
|
+
async function decompressBrotliFile(srcPath, destOrOptions) {
|
|
60
|
+
const { destPath, inPlace } = require_compression__internal.resolveFileArgs("decompressBrotliFile", srcPath, destOrOptions, void 0, (p) => {
|
|
61
|
+
if (!hasBrotliExt(p)) throw new require_primordials_error.ErrorCtor(`decompressBrotliFile: ${p} has no .br/.brotli extension; can't infer destination`);
|
|
62
|
+
return require_compression__internal.stripExt(p, BROTLI_EXTS);
|
|
63
|
+
});
|
|
64
|
+
await (0, node_stream_promises.pipeline)((0, node_fs.createReadStream)(srcPath), (0, node_zlib.createBrotliDecompress)(), (0, node_fs.createWriteStream)(destPath));
|
|
65
|
+
if (inPlace) await require_fs_safe.safeDelete(srcPath);
|
|
66
|
+
return destPath;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Extension check for brotli paths — matches `.br` / `.brotli`
|
|
70
|
+
* (case-insensitive). Naming follows node:path's `extname`.
|
|
71
|
+
*/
|
|
72
|
+
function hasBrotliExt(filePath) {
|
|
73
|
+
return BROTLI_EXTS.has(require_primordials_string.StringPrototypeToLowerCase(node_path.default.extname(filePath)));
|
|
74
|
+
}
|
|
79
75
|
/**
|
|
80
76
|
* Cheap pre-flight check: does the buffer look like it could be brotli? Returns
|
|
81
77
|
* false for inputs too short to be valid. Brotli has no fixed magic bytes, so
|
|
@@ -85,13 +81,17 @@ const BROTLI_MIN_LEN = 4;
|
|
|
85
81
|
function isBrotliCompressed(input) {
|
|
86
82
|
return require_primordials_buffer.BufferIsBuffer(input) && input.byteLength >= BROTLI_MIN_LEN;
|
|
87
83
|
}
|
|
88
|
-
const BROTLI_EXTS = new require_primordials_map_set.SetCtor([".br", ".brotli"]);
|
|
89
84
|
/**
|
|
90
|
-
*
|
|
91
|
-
* (
|
|
85
|
+
* Translate `CompressOptions` into the `BrotliOptions` zlib expects. Defaults
|
|
86
|
+
* `quality` to 11 (max) when not provided, and forwards a positive `size` hint.
|
|
87
|
+
* Exposed for callers building their own zlib pipelines and for unit-test
|
|
88
|
+
* coverage.
|
|
92
89
|
*/
|
|
93
|
-
function
|
|
94
|
-
|
|
90
|
+
function resolveBrotliOptions(options) {
|
|
91
|
+
const level = options?.level ?? 11;
|
|
92
|
+
const params = { [node_zlib.constants.BROTLI_PARAM_QUALITY]: level };
|
|
93
|
+
if (options?.size !== void 0 && options.size > 0) params[node_zlib.constants.BROTLI_PARAM_SIZE_HINT] = options.size;
|
|
94
|
+
return { params };
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
//#endregion
|
|
@@ -7,25 +7,15 @@
|
|
|
7
7
|
* await compressGzipFile('input.json', 'input.json.gz')
|
|
8
8
|
* readable.pipe(createGzipCompressor()).pipe(writable)
|
|
9
9
|
*/
|
|
10
|
-
import { Buffer } from 'node:buffer';
|
|
11
|
-
import {
|
|
10
|
+
import type { Buffer } from 'node:buffer';
|
|
11
|
+
import type { ZlibOptions } from 'node:zlib';
|
|
12
12
|
import type { CompressFileOptions, CompressOptions } from './types';
|
|
13
|
-
|
|
14
|
-
* Translate `CompressOptions` into the `ZlibOptions` zlib expects. Returns an
|
|
15
|
-
* empty options object when no `level` is given (zlib uses its default, level
|
|
16
|
-
* 6). Exposed for parity with `resolveBrotliOptions` and for unit-test
|
|
17
|
-
* coverage.
|
|
18
|
-
*/
|
|
19
|
-
export declare function resolveGzipOptions(options: CompressOptions | undefined): ZlibOptions;
|
|
13
|
+
export declare const GZIP_EXTS: ReadonlySet<string>;
|
|
20
14
|
/**
|
|
21
15
|
* Compress a string or Buffer with gzip. Strings are encoded as UTF-8 before
|
|
22
16
|
* compression. Default level is 6 (zlib default).
|
|
23
17
|
*/
|
|
24
18
|
export declare function compressGzip(input: string | Buffer, options?: CompressOptions | undefined): Promise<Buffer>;
|
|
25
|
-
/**
|
|
26
|
-
* Decompress a gzip-compressed Buffer.
|
|
27
|
-
*/
|
|
28
|
-
export declare function decompressGzip(input: Buffer): Promise<Buffer>;
|
|
29
19
|
/**
|
|
30
20
|
* Stream-compress a file with gzip. Two call shapes:
|
|
31
21
|
*
|
|
@@ -37,6 +27,18 @@ export declare function decompressGzip(input: Buffer): Promise<Buffer>;
|
|
|
37
27
|
*/
|
|
38
28
|
export declare function compressGzipFile(srcPath: string, destPath: string, options?: CompressOptions | undefined): Promise<string>;
|
|
39
29
|
export declare function compressGzipFile(srcPath: string, options: CompressFileOptions): Promise<string>;
|
|
30
|
+
/**
|
|
31
|
+
* Create a gzip compress transform stream.
|
|
32
|
+
*/
|
|
33
|
+
export declare function createGzipCompressor(options?: CompressOptions | undefined): import("zlib").Gzip;
|
|
34
|
+
/**
|
|
35
|
+
* Create a gzip decompress transform stream.
|
|
36
|
+
*/
|
|
37
|
+
export declare function createGzipDecompressor(): import("zlib").Gunzip;
|
|
38
|
+
/**
|
|
39
|
+
* Decompress a gzip-compressed Buffer.
|
|
40
|
+
*/
|
|
41
|
+
export declare function decompressGzip(input: Buffer): Promise<Buffer>;
|
|
40
42
|
/**
|
|
41
43
|
* Stream-decompress a gzip file. Two call shapes:
|
|
42
44
|
*
|
|
@@ -50,21 +52,19 @@ export declare function compressGzipFile(srcPath: string, options: CompressFileO
|
|
|
50
52
|
export declare function decompressGzipFile(srcPath: string, destPath: string): Promise<string>;
|
|
51
53
|
export declare function decompressGzipFile(srcPath: string, options: CompressFileOptions): Promise<string>;
|
|
52
54
|
/**
|
|
53
|
-
*
|
|
54
|
-
|
|
55
|
-
export declare function createGzipCompressor(options?: CompressOptions | undefined): import("zlib").Gzip;
|
|
56
|
-
/**
|
|
57
|
-
* Create a gzip decompress transform stream.
|
|
55
|
+
* Extension check for gzip paths — matches `.gz` / `.gzip` / `.tgz`
|
|
56
|
+
* (case-insensitive). Naming follows node:path's `extname`.
|
|
58
57
|
*/
|
|
59
|
-
export declare function
|
|
58
|
+
export declare function hasGzipExt(filePath: string): boolean;
|
|
60
59
|
/**
|
|
61
60
|
* Magic-byte check for gzip. Reads the first two bytes and matches the gzip
|
|
62
61
|
* spec's 0x1f 0x8b signature. Authoritative.
|
|
63
62
|
*/
|
|
64
63
|
export declare function isGzipCompressed(input: Buffer): boolean;
|
|
65
|
-
export declare const GZIP_EXTS: ReadonlySet<string>;
|
|
66
64
|
/**
|
|
67
|
-
*
|
|
68
|
-
* (
|
|
65
|
+
* Translate `CompressOptions` into the `ZlibOptions` zlib expects. Returns an
|
|
66
|
+
* empty options object when no `level` is given (zlib uses its default, level
|
|
67
|
+
* 6). Exposed for parity with `resolveBrotliOptions` and for unit-test
|
|
68
|
+
* coverage.
|
|
69
69
|
*/
|
|
70
|
-
export declare function
|
|
70
|
+
export declare function resolveGzipOptions(options: CompressOptions | undefined): ZlibOptions;
|
package/dist/compression/gzip.js
CHANGED
|
@@ -18,20 +18,13 @@ let node_zlib = require("node:zlib");
|
|
|
18
18
|
//#region src/compression/gzip.ts
|
|
19
19
|
const gzipAsync = (0, node_util.promisify)(node_zlib.gzip);
|
|
20
20
|
const gunzipAsync = (0, node_util.promisify)(node_zlib.gunzip);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const level = options?.level;
|
|
29
|
-
if (level === void 0) return { __proto__: null };
|
|
30
|
-
return {
|
|
31
|
-
__proto__: null,
|
|
32
|
-
level
|
|
33
|
-
};
|
|
34
|
-
}
|
|
21
|
+
const GZIP_MAGIC_0 = 31;
|
|
22
|
+
const GZIP_MAGIC_1 = 139;
|
|
23
|
+
const GZIP_EXTS = new require_primordials_map_set.SetCtor([
|
|
24
|
+
".gz",
|
|
25
|
+
".gzip",
|
|
26
|
+
".tgz"
|
|
27
|
+
]);
|
|
35
28
|
/**
|
|
36
29
|
* Compress a string or Buffer with gzip. Strings are encoded as UTF-8 before
|
|
37
30
|
* compression. Default level is 6 (zlib default).
|
|
@@ -39,18 +32,30 @@ function resolveGzipOptions(options) {
|
|
|
39
32
|
async function compressGzip(input, options) {
|
|
40
33
|
return await gzipAsync(typeof input === "string" ? require_primordials_buffer.BufferFrom(input, "utf8") : input, resolveGzipOptions(options));
|
|
41
34
|
}
|
|
42
|
-
/**
|
|
43
|
-
* Decompress a gzip-compressed Buffer.
|
|
44
|
-
*/
|
|
45
|
-
async function decompressGzip(input) {
|
|
46
|
-
return await gunzipAsync(input);
|
|
47
|
-
}
|
|
48
35
|
async function compressGzipFile(srcPath, destOrOptions, maybeOptions) {
|
|
49
36
|
const { destPath, options, inPlace } = require_compression__internal.resolveFileArgs("compressGzipFile", srcPath, destOrOptions, maybeOptions, (p) => `${p}.gz`);
|
|
50
37
|
await (0, node_stream_promises.pipeline)((0, node_fs.createReadStream)(srcPath), (0, node_zlib.createGzip)(resolveGzipOptions(options)), (0, node_fs.createWriteStream)(destPath));
|
|
51
38
|
if (inPlace) await require_fs_safe.safeDelete(srcPath);
|
|
52
39
|
return destPath;
|
|
53
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Create a gzip compress transform stream.
|
|
43
|
+
*/
|
|
44
|
+
function createGzipCompressor(options) {
|
|
45
|
+
return (0, node_zlib.createGzip)(resolveGzipOptions(options));
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Create a gzip decompress transform stream.
|
|
49
|
+
*/
|
|
50
|
+
function createGzipDecompressor() {
|
|
51
|
+
return (0, node_zlib.createGunzip)();
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Decompress a gzip-compressed Buffer.
|
|
55
|
+
*/
|
|
56
|
+
async function decompressGzip(input) {
|
|
57
|
+
return await gunzipAsync(input);
|
|
58
|
+
}
|
|
54
59
|
async function decompressGzipFile(srcPath, destOrOptions) {
|
|
55
60
|
const { destPath, inPlace } = require_compression__internal.resolveFileArgs("decompressGzipFile", srcPath, destOrOptions, void 0, (p) => {
|
|
56
61
|
if (!hasGzipExt(p)) throw new require_primordials_error.ErrorCtor(`decompressGzipFile: ${p} has no .gz/.gzip/.tgz extension; can't infer destination`);
|
|
@@ -62,19 +67,12 @@ async function decompressGzipFile(srcPath, destOrOptions) {
|
|
|
62
67
|
return destPath;
|
|
63
68
|
}
|
|
64
69
|
/**
|
|
65
|
-
*
|
|
66
|
-
|
|
67
|
-
function createGzipCompressor(options) {
|
|
68
|
-
return (0, node_zlib.createGzip)(resolveGzipOptions(options));
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Create a gzip decompress transform stream.
|
|
70
|
+
* Extension check for gzip paths — matches `.gz` / `.gzip` / `.tgz`
|
|
71
|
+
* (case-insensitive). Naming follows node:path's `extname`.
|
|
72
72
|
*/
|
|
73
|
-
function
|
|
74
|
-
return (
|
|
73
|
+
function hasGzipExt(filePath) {
|
|
74
|
+
return GZIP_EXTS.has(require_primordials_string.StringPrototypeToLowerCase(node_path.default.extname(filePath)));
|
|
75
75
|
}
|
|
76
|
-
const GZIP_MAGIC_0 = 31;
|
|
77
|
-
const GZIP_MAGIC_1 = 139;
|
|
78
76
|
/**
|
|
79
77
|
* Magic-byte check for gzip. Reads the first two bytes and matches the gzip
|
|
80
78
|
* spec's 0x1f 0x8b signature. Authoritative.
|
|
@@ -82,17 +80,19 @@ const GZIP_MAGIC_1 = 139;
|
|
|
82
80
|
function isGzipCompressed(input) {
|
|
83
81
|
return require_primordials_buffer.BufferIsBuffer(input) && input.byteLength >= 2 && input[0] === GZIP_MAGIC_0 && input[1] === GZIP_MAGIC_1;
|
|
84
82
|
}
|
|
85
|
-
const GZIP_EXTS = new require_primordials_map_set.SetCtor([
|
|
86
|
-
".gz",
|
|
87
|
-
".gzip",
|
|
88
|
-
".tgz"
|
|
89
|
-
]);
|
|
90
83
|
/**
|
|
91
|
-
*
|
|
92
|
-
* (
|
|
84
|
+
* Translate `CompressOptions` into the `ZlibOptions` zlib expects. Returns an
|
|
85
|
+
* empty options object when no `level` is given (zlib uses its default, level
|
|
86
|
+
* 6). Exposed for parity with `resolveBrotliOptions` and for unit-test
|
|
87
|
+
* coverage.
|
|
93
88
|
*/
|
|
94
|
-
function
|
|
95
|
-
|
|
89
|
+
function resolveGzipOptions(options) {
|
|
90
|
+
const level = options?.level;
|
|
91
|
+
if (level === void 0) return { __proto__: null };
|
|
92
|
+
return {
|
|
93
|
+
__proto__: null,
|
|
94
|
+
level
|
|
95
|
+
};
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
//#endregion
|
|
@@ -9,8 +9,10 @@ export declare const YARN = "yarn";
|
|
|
9
9
|
export declare const BUN = "bun";
|
|
10
10
|
export declare const VLT = "vlt";
|
|
11
11
|
export declare const NPX = "npx";
|
|
12
|
+
export declare function resolveNpmBinPath(): string | undefined;
|
|
12
13
|
export declare const NPM_BIN_PATH: string;
|
|
13
|
-
export declare
|
|
14
|
+
export declare function resolveNpmRealExecPath(): string | undefined;
|
|
15
|
+
export declare const NPM_REAL_EXEC_PATH: string | undefined;
|
|
14
16
|
export declare const NPM_REGISTRY_URL = "https://registry.npmjs.org";
|
|
15
17
|
export declare const YARN_BERRY = "yarn/berry";
|
|
16
18
|
export declare const YARN_CLASSIC = "yarn/classic";
|
package/dist/constants/agents.js
CHANGED
|
@@ -17,24 +17,25 @@ const YARN = "yarn";
|
|
|
17
17
|
const BUN = "bun";
|
|
18
18
|
const VLT = "vlt";
|
|
19
19
|
const NPX = "npx";
|
|
20
|
-
|
|
20
|
+
function resolveNpmBinPath() {
|
|
21
21
|
try {
|
|
22
22
|
return src_external_which.default.sync("npm", { nothrow: true }) || void 0;
|
|
23
23
|
} catch {
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
26
|
/* c8 ignore stop */
|
|
27
|
-
}
|
|
28
|
-
const
|
|
29
|
-
const
|
|
27
|
+
}
|
|
28
|
+
const npmBinPath = /*@__PURE__*/ resolveNpmBinPath();
|
|
29
|
+
const NPM_BIN_PATH = npmBinPath || "npm";
|
|
30
|
+
function resolveNpmRealExecPath() {
|
|
30
31
|
try {
|
|
31
|
-
/* c8 ignore start - Module-init
|
|
32
|
+
/* c8 ignore start - Module-init helper; only reachable when
|
|
32
33
|
which.sync returns null at module load. */
|
|
33
|
-
if (!
|
|
34
|
+
if (!npmBinPath) return;
|
|
34
35
|
/* c8 ignore stop */
|
|
35
|
-
const { existsSync } =
|
|
36
|
-
const path =
|
|
37
|
-
const npmDir = path.dirname(
|
|
36
|
+
const { existsSync } = require("node:fs");
|
|
37
|
+
const path = require("node:path");
|
|
38
|
+
const npmDir = path.dirname(npmBinPath);
|
|
38
39
|
const nodeModulesPath = path.join(npmDir, "..", "lib", "node_modules", "npm", "lib", "cli.js");
|
|
39
40
|
if (existsSync(nodeModulesPath)) return nodeModulesPath;
|
|
40
41
|
/* c8 ignore start - Module-init fallthroughs; reached only when cli.js
|
|
@@ -44,7 +45,8 @@ const NPM_REAL_EXEC_PATH = /*@__PURE__*/ (() => {
|
|
|
44
45
|
return;
|
|
45
46
|
}
|
|
46
47
|
/* c8 ignore stop */
|
|
47
|
-
}
|
|
48
|
+
}
|
|
49
|
+
const NPM_REAL_EXEC_PATH = /*@__PURE__*/ resolveNpmRealExecPath();
|
|
48
50
|
const NPM_REGISTRY_URL = "https://registry.npmjs.org";
|
|
49
51
|
const YARN_BERRY = "yarn/berry";
|
|
50
52
|
const YARN_CLASSIC = "yarn/classic";
|
|
@@ -86,4 +88,6 @@ exports.YARN = YARN;
|
|
|
86
88
|
exports.YARN_BERRY = YARN_BERRY;
|
|
87
89
|
exports.YARN_CLASSIC = YARN_CLASSIC;
|
|
88
90
|
exports.YARN_LOCK = YARN_LOCK;
|
|
89
|
-
exports.ZPM = ZPM;
|
|
91
|
+
exports.ZPM = ZPM;
|
|
92
|
+
exports.resolveNpmBinPath = resolveNpmBinPath;
|
|
93
|
+
exports.resolveNpmRealExecPath = resolveNpmRealExecPath;
|
|
@@ -12,7 +12,7 @@ const require_primordials_map_set = require('../primordials/map-set.js');
|
|
|
12
12
|
const MIT = "MIT";
|
|
13
13
|
const UNLICENCED = "UNLICENCED";
|
|
14
14
|
const UNLICENSED = "UNLICENSED";
|
|
15
|
-
let
|
|
15
|
+
let copyLeftLicenses;
|
|
16
16
|
/**
|
|
17
17
|
* Get the set of SPDX identifiers considered copy-left (AGPL, GPL, EPL, EUPL,
|
|
18
18
|
* CC-BY-SA variants). The set is lazily built and cached on first call.
|
|
@@ -20,7 +20,7 @@ let _copyLeftLicenses;
|
|
|
20
20
|
* @returns A `Set` of SPDX license identifier strings.
|
|
21
21
|
*/
|
|
22
22
|
function getCopyLeftLicenses() {
|
|
23
|
-
if (
|
|
23
|
+
if (copyLeftLicenses === void 0) copyLeftLicenses = new require_primordials_map_set.SetCtor([
|
|
24
24
|
"AGPL-1.0",
|
|
25
25
|
"AGPL-1.0-only",
|
|
26
26
|
"AGPL-1.0-or-later",
|
|
@@ -45,7 +45,7 @@ function getCopyLeftLicenses() {
|
|
|
45
45
|
"GPL-3.0-only",
|
|
46
46
|
"GPL-3.0-or-later"
|
|
47
47
|
]);
|
|
48
|
-
return
|
|
48
|
+
return copyLeftLicenses;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
//#endregion
|
package/dist/constants/node.d.ts
CHANGED
|
@@ -129,6 +129,29 @@ export declare function supportsNodeRequireModule(): boolean;
|
|
|
129
129
|
* `--run`.
|
|
130
130
|
*/
|
|
131
131
|
export declare function supportsNodeRun(): boolean;
|
|
132
|
+
/**
|
|
133
|
+
* Check whether the current runtime can execute TypeScript source directly
|
|
134
|
+
* (`.ts` files via `node foo.ts`), with or without a flag. Type-stripping went
|
|
135
|
+
* stable in Node.js 22.6 (under `--strip-types`, also accepted as the
|
|
136
|
+
* deprecated alias `--experimental-strip-types`) and default-on in Node 24.
|
|
137
|
+
*
|
|
138
|
+
* Pair with {@link supportsNodeStripTypesDefault} to decide whether a flag needs
|
|
139
|
+
* to be passed.
|
|
140
|
+
*
|
|
141
|
+
* @returns `true` when the runtime can run TypeScript (Node 22.6+).
|
|
142
|
+
*/
|
|
143
|
+
export declare function supportsNodeStripTypes(): boolean;
|
|
144
|
+
/**
|
|
145
|
+
* Check whether the current runtime strips TypeScript types **by default** (no
|
|
146
|
+
* flag needed). Became default-on in Node.js 24.
|
|
147
|
+
*
|
|
148
|
+
* Use case: deciding whether a wrapper script needs to pass `--strip-types`
|
|
149
|
+
* when invoking `node foo.ts`. On Node 24+ the flag is redundant; on 22.6 –
|
|
150
|
+
* 23.x it's required.
|
|
151
|
+
*
|
|
152
|
+
* @returns `true` when no `--strip-types` flag is needed (Node 24+).
|
|
153
|
+
*/
|
|
154
|
+
export declare function supportsNodeStripTypesDefault(): boolean;
|
|
132
155
|
/**
|
|
133
156
|
* Check whether this process was spawned with an IPC channel. When `true`,
|
|
134
157
|
* `process.send()` is callable to message the parent process.
|
package/dist/constants/node.js
CHANGED
|
@@ -14,10 +14,10 @@ node_process = require_runtime.__toESM(node_process);
|
|
|
14
14
|
* and feature-detection flags for APIs that vary across Node releases.
|
|
15
15
|
*/
|
|
16
16
|
const NODE_VERSION = node_process.default.version;
|
|
17
|
-
let
|
|
18
|
-
let
|
|
19
|
-
let
|
|
20
|
-
let
|
|
17
|
+
let nodeDisableSigusr1Flags;
|
|
18
|
+
let nodeHardenFlags;
|
|
19
|
+
let nodeNoWarningsFlags;
|
|
20
|
+
let nodePermissionFlags;
|
|
21
21
|
/**
|
|
22
22
|
* Get the absolute path to the currently running Node.js binary.
|
|
23
23
|
*
|
|
@@ -42,11 +42,11 @@ function getMaintainedNodeVersions() {
|
|
|
42
42
|
* @returns A non-empty array of CLI flags suitable for passing to `node`.
|
|
43
43
|
*/
|
|
44
44
|
function getNodeDisableSigusr1Flags() {
|
|
45
|
-
if (
|
|
45
|
+
if (nodeDisableSigusr1Flags === void 0)
|
|
46
46
|
/* c8 ignore start - --no-inspect fallback fires only on Node
|
|
47
47
|
runtimes pre-v22.14 / v23.7 / v24.8; tests run on Node 24+. */
|
|
48
|
-
|
|
49
|
-
return
|
|
48
|
+
nodeDisableSigusr1Flags = supportsNodeDisableSigusr1Flag() ? ["--disable-sigusr1"] : ["--no-inspect"];
|
|
49
|
+
return nodeDisableSigusr1Flags;
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
52
52
|
* Get the hardening flags Socket applies when spawning Node.js subprocesses.
|
|
@@ -58,7 +58,7 @@ function getNodeDisableSigusr1Flags() {
|
|
|
58
58
|
* @returns A non-empty array of CLI flags suitable for passing to `node`.
|
|
59
59
|
*/
|
|
60
60
|
function getNodeHardenFlags() {
|
|
61
|
-
if (
|
|
61
|
+
if (nodeHardenFlags === void 0) {
|
|
62
62
|
const major = getNodeMajorVersion();
|
|
63
63
|
const flags = ["--disable-proto=delete"];
|
|
64
64
|
if (major >= 24) {
|
|
@@ -69,9 +69,9 @@ function getNodeHardenFlags() {
|
|
|
69
69
|
/* c8 ignore start */
|
|
70
70
|
if (major >= 22) flags.push("--force-node-api-uncaught-exceptions-policy");
|
|
71
71
|
/* c8 ignore stop */
|
|
72
|
-
|
|
72
|
+
nodeHardenFlags = flags;
|
|
73
73
|
}
|
|
74
|
-
return
|
|
74
|
+
return nodeHardenFlags;
|
|
75
75
|
}
|
|
76
76
|
/**
|
|
77
77
|
* Get the major component of the current Node.js version.
|
|
@@ -99,8 +99,8 @@ function getNodeMinorVersion() {
|
|
|
99
99
|
* @returns A non-empty array of CLI flags suitable for passing to `node`.
|
|
100
100
|
*/
|
|
101
101
|
function getNodeNoWarningsFlags() {
|
|
102
|
-
if (
|
|
103
|
-
return
|
|
102
|
+
if (nodeNoWarningsFlags === void 0) nodeNoWarningsFlags = ["--no-warnings", "--no-deprecation"];
|
|
103
|
+
return nodeNoWarningsFlags;
|
|
104
104
|
}
|
|
105
105
|
/**
|
|
106
106
|
* Get the patch component of the current Node.js version.
|
|
@@ -121,13 +121,13 @@ function getNodePatchVersion() {
|
|
|
121
121
|
* @returns The permission flag list (possibly empty) for the current runtime.
|
|
122
122
|
*/
|
|
123
123
|
function getNodePermissionFlags() {
|
|
124
|
-
if (
|
|
124
|
+
if (nodePermissionFlags === void 0) if (getNodeMajorVersion() >= 24) nodePermissionFlags = [
|
|
125
125
|
"--allow-fs-read=*",
|
|
126
126
|
"--allow-fs-write=*",
|
|
127
127
|
"--allow-child-process"
|
|
128
128
|
];
|
|
129
|
-
else
|
|
130
|
-
return
|
|
129
|
+
else nodePermissionFlags = [];
|
|
130
|
+
return nodePermissionFlags;
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
133
133
|
* Get the full Node.js version string from `process.version`.
|
|
@@ -219,6 +219,36 @@ function supportsNodeRun() {
|
|
|
219
219
|
/* c8 ignore stop */
|
|
220
220
|
}
|
|
221
221
|
/**
|
|
222
|
+
* Check whether the current runtime can execute TypeScript source directly
|
|
223
|
+
* (`.ts` files via `node foo.ts`), with or without a flag. Type-stripping went
|
|
224
|
+
* stable in Node.js 22.6 (under `--strip-types`, also accepted as the
|
|
225
|
+
* deprecated alias `--experimental-strip-types`) and default-on in Node 24.
|
|
226
|
+
*
|
|
227
|
+
* Pair with {@link supportsNodeStripTypesDefault} to decide whether a flag needs
|
|
228
|
+
* to be passed.
|
|
229
|
+
*
|
|
230
|
+
* @returns `true` when the runtime can run TypeScript (Node 22.6+).
|
|
231
|
+
*/
|
|
232
|
+
function supportsNodeStripTypes() {
|
|
233
|
+
const major = getNodeMajorVersion();
|
|
234
|
+
/* c8 ignore start - 22-specific arm; tests run on a single Node major. */
|
|
235
|
+
return major >= 23 || major === 22 && getNodeMinorVersion() >= 6;
|
|
236
|
+
/* c8 ignore stop */
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Check whether the current runtime strips TypeScript types **by default** (no
|
|
240
|
+
* flag needed). Became default-on in Node.js 24.
|
|
241
|
+
*
|
|
242
|
+
* Use case: deciding whether a wrapper script needs to pass `--strip-types`
|
|
243
|
+
* when invoking `node foo.ts`. On Node 24+ the flag is redundant; on 22.6 –
|
|
244
|
+
* 23.x it's required.
|
|
245
|
+
*
|
|
246
|
+
* @returns `true` when no `--strip-types` flag is needed (Node 24+).
|
|
247
|
+
*/
|
|
248
|
+
function supportsNodeStripTypesDefault() {
|
|
249
|
+
return getNodeMajorVersion() >= 24;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
222
252
|
* Check whether this process was spawned with an IPC channel. When `true`,
|
|
223
253
|
* `process.send()` is callable to message the parent process.
|
|
224
254
|
*
|
|
@@ -250,4 +280,6 @@ exports.supportsNodeDisableWarningFlag = supportsNodeDisableWarningFlag;
|
|
|
250
280
|
exports.supportsNodePermissionFlag = supportsNodePermissionFlag;
|
|
251
281
|
exports.supportsNodeRequireModule = supportsNodeRequireModule;
|
|
252
282
|
exports.supportsNodeRun = supportsNodeRun;
|
|
283
|
+
exports.supportsNodeStripTypes = supportsNodeStripTypes;
|
|
284
|
+
exports.supportsNodeStripTypesDefault = supportsNodeStripTypesDefault;
|
|
253
285
|
exports.supportsProcessSend = supportsProcessSend;
|