@socketsecurity/lib 6.0.2 → 6.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/dist/_virtual/_rolldown/runtime.js +45 -0
- package/dist/abort/signal.js +53 -59
- package/dist/ai/discover.js +110 -110
- package/dist/ai/profiles.d.mts +48 -25
- package/dist/ai/profiles.js +95 -59
- package/dist/ai/spawn.d.mts +2 -2
- package/dist/ai/spawn.js +172 -194
- package/dist/ai/types.d.mts +3 -3
- package/dist/ai/types.js +1 -17
- package/dist/ai/worktree.d.mts +2 -2
- package/dist/ai/worktree.js +160 -183
- package/dist/ansi/constants.js +16 -38
- package/dist/ansi/strip.js +44 -41
- package/dist/archives/_internal.js +64 -73
- package/dist/archives/detect.js +30 -43
- package/dist/archives/extract.js +43 -50
- package/dist/archives/tar.js +197 -228
- package/dist/archives/types.js +1 -17
- package/dist/archives/zip.js +85 -121
- package/dist/argv/flag-predicates.js +203 -101
- package/dist/argv/flag-types.js +96 -113
- package/dist/argv/parse-args-string.d.ts +16 -14
- package/dist/argv/parse-args-string.js +42 -39
- package/dist/argv/parse.js +145 -163
- package/dist/arrays/_internal.js +65 -48
- package/dist/arrays/chunk.js +51 -40
- package/dist/arrays/join.js +87 -35
- package/dist/arrays/predicates.js +46 -28
- package/dist/arrays/unique.js +45 -31
- package/dist/bin/_internal.js +34 -42
- package/dist/bin/check-primordials.js +175 -233
- package/dist/bin/check.js +51 -72
- package/dist/bin/exec.js +70 -74
- package/dist/bin/find.js +151 -134
- package/dist/bin/resolve.js +180 -246
- package/dist/bin/shadow.js +24 -33
- package/dist/bin/socket-lib.js +51 -73
- package/dist/bin/types.js +1 -17
- package/dist/bin/which.js +211 -146
- package/dist/cacache/_internal.js +25 -40
- package/dist/cacache/clear.js +79 -72
- package/dist/cacache/read.js +48 -46
- package/dist/cacache/tmp.js +29 -36
- package/dist/cacache/types.js +1 -17
- package/dist/cacache/write.js +43 -48
- package/dist/cache/ttl/store.js +232 -288
- package/dist/cache/ttl/types.js +1 -17
- package/dist/checks/primordials-defaults.js +83 -89
- package/dist/checks/primordials.js +225 -277
- package/dist/colors/convert.js +45 -37
- package/dist/colors/palette.js +88 -45
- package/dist/colors/socket-palette.js +74 -84
- package/dist/colors/types.js +1 -17
- package/dist/compression/_internal.js +57 -72
- package/dist/compression/brotli.js +94 -127
- package/dist/compression/gzip.js +95 -121
- package/dist/compression/types.js +1 -17
- package/dist/constants/agents.js +61 -113
- package/dist/constants/encoding.js +19 -42
- package/dist/constants/github.js +12 -30
- package/dist/constants/licenses.js +48 -63
- package/dist/constants/lifecycle-script-names.js +31 -45
- package/dist/constants/maintained-node-versions.js +22 -37
- package/dist/constants/node.js +226 -167
- package/dist/constants/package-default-node-range.js +16 -41
- package/dist/constants/package-default-socket-categories.js +12 -30
- package/dist/constants/packages.js +77 -126
- package/dist/constants/platform.js +27 -49
- package/dist/constants/sentinels.js +23 -48
- package/dist/constants/socket.js +42 -87
- package/dist/constants/testing.js +15 -34
- package/dist/constants/time.js +16 -36
- package/dist/constants/typescript.js +32 -52
- package/dist/cover/code.js +111 -142
- package/dist/cover/formatters.js +118 -101
- package/dist/cover/type.js +50 -76
- package/dist/cover/types.js +1 -17
- package/dist/crypto/hash.js +54 -46
- package/dist/debug/_internal.js +62 -71
- package/dist/debug/caller-info.js +53 -64
- package/dist/debug/namespace.js +80 -90
- package/dist/debug/output.js +172 -188
- package/dist/debug/types.js +1 -17
- package/dist/dlx/_internal.js +24 -43
- package/dist/dlx/arborist.js +162 -160
- package/dist/dlx/binary-cache.js +228 -200
- package/dist/dlx/binary-download.js +172 -211
- package/dist/dlx/binary-resolution.js +165 -157
- package/dist/dlx/binary-types.js +1 -17
- package/dist/dlx/binary.js +149 -189
- package/dist/dlx/cache.js +45 -30
- package/dist/dlx/detect.js +245 -167
- package/dist/dlx/dir.js +67 -51
- package/dist/dlx/firewall.js +62 -100
- package/dist/dlx/lockfile.js +122 -127
- package/dist/dlx/manifest.js +264 -274
- package/dist/dlx/package.js +241 -244
- package/dist/dlx/packages.js +99 -96
- package/dist/dlx/paths.js +73 -59
- package/dist/dlx/spec.js +52 -60
- package/dist/dlx/types.js +1 -17
- package/dist/eco/cargo/lockfile-format.js +19 -36
- package/dist/eco/cargo/manifest-format.js +17 -35
- package/dist/eco/cargo/parse-lockfile.js +210 -237
- package/dist/eco/manifest/analyze-lockfile.js +46 -63
- package/dist/eco/manifest/detect-format.js +66 -90
- package/dist/eco/manifest/find-packages.js +39 -64
- package/dist/eco/manifest/get-package-versions.js +27 -48
- package/dist/eco/manifest/get-package.js +21 -40
- package/dist/eco/manifest/manifest-error.js +14 -35
- package/dist/eco/manifest/parse-lockfile.js +40 -86
- package/dist/eco/manifest/parse-manifest.js +26 -43
- package/dist/eco/manifest/parse.js +26 -47
- package/dist/eco/manifest/types.js +1 -17
- package/dist/eco/npm/bun/exec.js +23 -32
- package/dist/eco/npm/manifest-format.js +21 -35
- package/dist/eco/npm/npm/exec.js +51 -61
- package/dist/eco/npm/npm/extract-package-name-from-path.js +28 -50
- package/dist/eco/npm/npm/flags.js +80 -52
- package/dist/eco/npm/npm/lockfile-format.js +21 -40
- package/dist/eco/npm/npm/parse-git-url.js +26 -40
- package/dist/eco/npm/npm/parse-lockfile.js +184 -210
- package/dist/eco/npm/parse-package-json.js +71 -102
- package/dist/eco/npm/pnpm/detect-pnpm-version.js +22 -43
- package/dist/eco/npm/pnpm/exec.js +51 -62
- package/dist/eco/npm/pnpm/flags.js +75 -68
- package/dist/eco/npm/pnpm/lockfile-format.js +19 -36
- package/dist/eco/npm/pnpm/parse-lockfile.js +235 -259
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +37 -47
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +36 -49
- package/dist/eco/npm/script.js +82 -90
- package/dist/eco/npm/vlt/exec.js +24 -32
- package/dist/eco/npm/yarnpkg/yarn/exec.js +60 -59
- package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +20 -36
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +194 -242
- package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +37 -61
- package/dist/eco/purl.js +50 -60
- package/dist/eco/types.js +1 -17
- package/dist/effects/pulse-frames.js +64 -65
- package/dist/effects/shimmer-keyframes.js +71 -52
- package/dist/effects/shimmer-terminal.js +81 -50
- package/dist/effects/shimmer.js +290 -153
- package/dist/env/boolean.js +42 -43
- package/dist/env/case-insensitive.js +54 -39
- package/dist/env/ci.js +29 -31
- package/dist/env/debug.js +28 -31
- package/dist/env/github.js +144 -59
- package/dist/env/home.js +38 -31
- package/dist/env/locale.js +59 -39
- package/dist/env/node-auth-token.js +28 -31
- package/dist/env/node-env.js +28 -31
- package/dist/env/npm.js +94 -47
- package/dist/env/number.js +50 -51
- package/dist/env/package-manager.js +95 -83
- package/dist/env/path.js +28 -31
- package/dist/env/pre-commit.js +30 -32
- package/dist/env/proxy.js +121 -122
- package/dist/env/rewire.js +204 -96
- package/dist/env/shell.js +28 -31
- package/dist/env/socket-cli.js +233 -81
- package/dist/env/socket.js +521 -156
- package/dist/env/string.js +43 -44
- package/dist/env/temp-dir.js +59 -39
- package/dist/env/term.js +28 -31
- package/dist/env/test.js +65 -43
- package/dist/env/types.js +1 -17
- package/dist/env/windows.js +78 -43
- package/dist/env/xdg.js +62 -39
- package/dist/errors/message.js +40 -46
- package/dist/errors/predicates.js +61 -49
- package/dist/errors/stack.js +24 -36
- package/dist/events/exit/_internal.js +86 -103
- package/dist/events/exit/handler.js +48 -55
- package/dist/events/exit/intercept.js +49 -70
- package/dist/events/exit/lifecycle.js +92 -101
- package/dist/events/exit/signals.js +25 -31
- package/dist/events/exit/types.js +1 -17
- package/dist/events/warning/handler.js +43 -40
- package/dist/events/warning/suppress.js +111 -90
- package/dist/external/@npmcli/package-json/lib/read-package.js +132 -153
- package/dist/external/@npmcli/package-json/lib/sort.js +73 -105
- package/dist/external/@npmcli/package-json.js +12705 -15140
- package/dist/external/@npmcli/promise-spawn.js +451 -472
- package/dist/external/@sinclair/typebox/value.js +7443 -9002
- package/dist/external/@sinclair/typebox.js +7516 -7885
- package/dist/external/@socketregistry/is-unicode-supported.js +31 -39
- package/dist/external/@socketregistry/packageurl-js.js +6127 -7369
- package/dist/external/@socketregistry/yocto-spinner.js +394 -455
- package/dist/external/@yarnpkg/extensions.js +435 -1022
- package/dist/external/adm-zip.js +2313 -2673
- package/dist/external/debug.js +700 -687
- package/dist/external/external-pack.js +2658 -3171
- package/dist/external/fast-sort.js +124 -138
- package/dist/external/get-east-asian-width.js +70 -64
- package/dist/external/libnpmexec.js +28 -31
- package/dist/external/npm-pack.js +43617 -50137
- package/dist/external/p-map.js +198 -222
- package/dist/external/pico-pack.js +6735 -7304
- package/dist/external/pony-cause.js +143 -139
- package/dist/external/shell-quote.js +226 -0
- package/dist/external/spdx-pack.js +1283 -1403
- package/dist/external/streaming-iterables.js +835 -1052
- package/dist/external/tar-fs.js +2769 -3048
- package/dist/external/which.js +267 -251
- package/dist/external/yargs-parser.js +851 -1074
- package/dist/external-tools/bazel/asset-names.js +98 -90
- package/dist/external-tools/bazel/from-download.js +52 -46
- package/dist/external-tools/bazel/from-path.js +27 -38
- package/dist/external-tools/bazel/read-bazel-version-file.js +35 -57
- package/dist/external-tools/bazel/resolve-asset-url.js +24 -39
- package/dist/external-tools/bazel/resolve-bazel-version.js +34 -56
- package/dist/external-tools/bazel/resolve.js +44 -58
- package/dist/external-tools/bazel/types.js +1 -17
- package/dist/external-tools/cdxgen/asset-names.js +59 -66
- package/dist/external-tools/cdxgen/from-download.js +52 -80
- package/dist/external-tools/cdxgen/from-path.js +19 -37
- package/dist/external-tools/cdxgen/from-vfs.js +22 -43
- package/dist/external-tools/cdxgen/resolve.js +48 -63
- package/dist/external-tools/cdxgen/types.js +1 -17
- package/dist/external-tools/from-download.js +107 -67
- package/dist/external-tools/janus/asset-names.js +44 -51
- package/dist/external-tools/janus/from-download.js +45 -70
- package/dist/external-tools/janus/from-path.js +19 -37
- package/dist/external-tools/janus/from-vfs.js +22 -43
- package/dist/external-tools/janus/resolve.js +45 -63
- package/dist/external-tools/janus/types.js +1 -17
- package/dist/external-tools/jre/asset-names.js +109 -82
- package/dist/external-tools/jre/detect-platform-arch.js +25 -49
- package/dist/external-tools/jre/from-download.js +71 -67
- package/dist/external-tools/jre/from-java-home.js +27 -54
- package/dist/external-tools/jre/from-path.js +27 -49
- package/dist/external-tools/jre/from-vfs.js +39 -60
- package/dist/external-tools/jre/resolve.js +55 -68
- package/dist/external-tools/jre/types.js +1 -17
- package/dist/external-tools/manifest.js +130 -150
- package/dist/external-tools/opengrep/asset-names.js +60 -72
- package/dist/external-tools/opengrep/from-download.js +58 -80
- package/dist/external-tools/opengrep/from-path.js +19 -37
- package/dist/external-tools/opengrep/from-vfs.js +23 -43
- package/dist/external-tools/opengrep/resolve.js +43 -63
- package/dist/external-tools/opengrep/types.js +1 -17
- package/dist/external-tools/sbt/asset-names.js +21 -30
- package/dist/external-tools/sbt/from-download.js +50 -61
- package/dist/external-tools/sbt/from-path.js +23 -38
- package/dist/external-tools/sbt/from-vfs.js +30 -44
- package/dist/external-tools/sbt/resolve.js +45 -63
- package/dist/external-tools/sbt/types.js +1 -17
- package/dist/external-tools/synp/asset-names.js +11 -29
- package/dist/external-tools/synp/from-download.js +24 -41
- package/dist/external-tools/synp/from-path.js +19 -37
- package/dist/external-tools/synp/from-vfs.js +22 -43
- package/dist/external-tools/synp/resolve.js +43 -62
- package/dist/external-tools/synp/types.js +1 -17
- package/dist/external-tools/trivy/asset-names.js +51 -62
- package/dist/external-tools/trivy/from-download.js +42 -64
- package/dist/external-tools/trivy/from-path.js +19 -37
- package/dist/external-tools/trivy/from-vfs.js +22 -43
- package/dist/external-tools/trivy/resolve.js +43 -63
- package/dist/external-tools/trivy/types.js +1 -17
- package/dist/external-tools/trufflehog/asset-names.js +54 -66
- package/dist/external-tools/trufflehog/from-download.js +44 -62
- package/dist/external-tools/trufflehog/from-path.js +21 -37
- package/dist/external-tools/trufflehog/from-vfs.js +26 -43
- package/dist/external-tools/trufflehog/resolve.js +43 -63
- package/dist/external-tools/trufflehog/types.js +1 -17
- package/dist/external-tools/uv/asset-names.js +64 -74
- package/dist/external-tools/uv/from-download.js +44 -65
- package/dist/external-tools/uv/from-path.js +19 -37
- package/dist/external-tools/uv/from-vfs.js +22 -43
- package/dist/external-tools/uv/resolve.js +42 -63
- package/dist/external-tools/uv/types.js +1 -17
- package/dist/fs/_internal.js +40 -42
- package/dist/fs/access.d.ts +32 -0
- package/dist/fs/access.js +66 -0
- package/dist/fs/encoding.js +80 -97
- package/dist/fs/find-up.js +126 -147
- package/dist/fs/inspect.js +168 -99
- package/dist/fs/path-cache.js +31 -32
- package/dist/fs/read-dir.js +102 -79
- package/dist/fs/read-file.js +177 -118
- package/dist/fs/read-json-cache.js +150 -134
- package/dist/fs/read-json.js +172 -187
- package/dist/fs/resolve-module.d.ts +57 -0
- package/dist/fs/resolve-module.js +40 -0
- package/dist/fs/safe.js +278 -169
- package/dist/fs/types.js +1 -17
- package/dist/fs/unique.js +52 -48
- package/dist/fs/validate.js +56 -43
- package/dist/fs/write-json.js +109 -75
- package/dist/git/_internal.js +251 -216
- package/dist/git/changed.js +191 -74
- package/dist/git/repo.js +118 -104
- package/dist/git/staged.js +172 -62
- package/dist/git/types.js +1 -17
- package/dist/git/unstaged.js +175 -62
- package/dist/github/constants.js +25 -33
- package/dist/github/errors.js +46 -38
- package/dist/github/fetch.js +137 -82
- package/dist/github/ghsa.js +217 -151
- package/dist/github/refs-cache.js +54 -43
- package/dist/github/refs-graphql.js +97 -89
- package/dist/github/refs-rest.js +70 -101
- package/dist/github/refs.js +105 -64
- package/dist/github/token.js +96 -48
- package/dist/github/types.js +1 -17
- package/dist/globs/_internal.js +73 -82
- package/dist/globs/defaults.js +40 -59
- package/dist/globs/match.js +93 -77
- package/dist/globs/matcher.js +104 -92
- package/dist/globs/stream.js +43 -55
- package/dist/globs/types.js +1 -17
- package/dist/http-request/_internal.js +11 -38
- package/dist/http-request/browser-fetch.js +19 -29
- package/dist/http-request/browser.js +188 -206
- package/dist/http-request/checksums.js +101 -65
- package/dist/http-request/download-types.js +1 -17
- package/dist/http-request/download.js +195 -196
- package/dist/http-request/errors.js +39 -47
- package/dist/http-request/headers.js +95 -80
- package/dist/http-request/http-request.js +10 -35
- package/dist/http-request/node.js +71 -97
- package/dist/http-request/request-attempt.js +232 -285
- package/dist/http-request/request-types.js +1 -17
- package/dist/http-request/request.js +106 -108
- package/dist/http-request/response-reader.js +47 -51
- package/dist/http-request/response-types.js +22 -38
- package/dist/http-request/user-agent.js +73 -55
- package/dist/integrity.js +105 -106
- package/dist/ipc/_internal.js +34 -48
- package/dist/ipc/directory.js +55 -63
- package/dist/ipc/paths.js +52 -45
- package/dist/ipc/types.js +1 -17
- package/dist/ipc/write.js +81 -74
- package/dist/ipc-cli/get.js +29 -56
- package/dist/ipc-cli/types.js +1 -17
- package/dist/json/edit.js +182 -242
- package/dist/json/format.js +202 -103
- package/dist/json/parse.js +206 -109
- package/dist/json/types.js +1 -17
- package/dist/links/create.js +93 -60
- package/dist/links/types.js +1 -17
- package/dist/logger/_internal.js +109 -73
- package/dist/logger/browser.js +45 -56
- package/dist/logger/colors.js +31 -49
- package/dist/logger/console.js +89 -112
- package/dist/logger/default.js +19 -33
- package/dist/logger/logger.js +5 -29
- package/dist/logger/node.js +794 -854
- package/dist/logger/symbols-builder.js +54 -56
- package/dist/logger/symbols.js +135 -118
- package/dist/logger/types.js +1 -17
- package/dist/memo/_internal.js +39 -49
- package/dist/memo/async.js +133 -117
- package/dist/memo/clear.js +25 -34
- package/dist/memo/decorator.js +43 -37
- package/dist/memo/memoize.js +97 -88
- package/dist/memo/once.js +42 -41
- package/dist/memo/types.js +1 -17
- package/dist/memo/weak.js +45 -41
- package/dist/node/async-hooks.js +9 -30
- package/dist/node/child-process.js +9 -30
- package/dist/node/crypto.js +9 -30
- package/dist/node/events.js +9 -30
- package/dist/node/fs-promises.js +9 -30
- package/dist/node/fs.js +9 -30
- package/dist/node/http.js +9 -30
- package/dist/node/https.js +9 -30
- package/dist/node/module.js +20 -34
- package/dist/node/os.js +9 -30
- package/dist/node/path.js +9 -30
- package/dist/node/timers-promises.js +9 -30
- package/dist/node/url.js +9 -30
- package/dist/node/util.js +9 -30
- package/dist/objects/getters.js +185 -126
- package/dist/objects/inspect.js +85 -52
- package/dist/objects/mutate.js +96 -76
- package/dist/objects/predicates.js +112 -59
- package/dist/objects/sort.js +120 -76
- package/dist/objects/types.js +1 -17
- package/dist/packages/edit-class.js +198 -265
- package/dist/packages/edit.js +79 -86
- package/dist/packages/exports.js +146 -157
- package/dist/packages/isolation.js +159 -209
- package/dist/packages/licenses.js +207 -189
- package/dist/packages/manifest.js +134 -172
- package/dist/packages/normalize.js +91 -102
- package/dist/packages/operations.d.ts +2 -0
- package/dist/packages/operations.js +283 -254
- package/dist/packages/provenance.js +195 -245
- package/dist/packages/specs.js +94 -84
- package/dist/packages/types.js +1 -17
- package/dist/packages/validation.js +49 -50
- package/dist/paths/_internal.js +82 -86
- package/dist/paths/conversion.js +112 -65
- package/dist/paths/dirnames.js +17 -42
- package/dist/paths/exts.js +23 -54
- package/dist/paths/filenames.js +21 -50
- package/dist/paths/globs.js +15 -38
- package/dist/paths/normalize.js +215 -236
- package/dist/paths/packages.js +34 -49
- package/dist/paths/predicates.js +184 -106
- package/dist/paths/resolve.js +146 -128
- package/dist/paths/rewire.js +108 -72
- package/dist/paths/socket.js +252 -132
- package/dist/paths/walk.d.ts +40 -0
- package/dist/paths/walk.js +58 -0
- package/dist/perf/_internal.js +10 -28
- package/dist/perf/enabled.js +21 -30
- package/dist/perf/metrics.js +81 -67
- package/dist/perf/report.js +79 -80
- package/dist/perf/timer.js +180 -126
- package/dist/perf/types.js +1 -17
- package/dist/pkg-ext/data.js +29 -82
- package/dist/pkg-ext/types.js +1 -17
- package/dist/primordials/array.js +120 -198
- package/dist/primordials/buffer.js +28 -51
- package/dist/primordials/date.js +26 -51
- package/dist/primordials/error.js +33 -59
- package/dist/primordials/function.js +21 -41
- package/dist/primordials/globals.js +25 -48
- package/dist/primordials/json.js +14 -30
- package/dist/primordials/map-set.js +88 -152
- package/dist/primordials/math.js +59 -116
- package/dist/primordials/number.js +41 -76
- package/dist/primordials/object.js +56 -116
- package/dist/primordials/promise.js +28 -52
- package/dist/primordials/reflect.js +24 -52
- package/dist/primordials/regexp.js +25 -47
- package/dist/primordials/string.js +114 -167
- package/dist/primordials/symbol.js +40 -72
- package/dist/primordials/uncurry.js +38 -55
- package/dist/primordials/url.js +27 -66
- package/dist/process/_internal.js +7 -32
- package/dist/process/abort.js +29 -35
- package/dist/process/lock-instance.js +26 -30
- package/dist/process/lock-manager.js +279 -307
- package/dist/process/lock-types.js +1 -17
- package/dist/process/spawn/_internal.js +43 -55
- package/dist/process/spawn/child.js +172 -211
- package/dist/process/spawn/errors.js +116 -113
- package/dist/process/spawn/stdio.js +51 -35
- package/dist/process/spawn/types.js +1 -17
- package/dist/process/transient.js +49 -66
- package/dist/promises/_internal.d.ts +8 -2
- package/dist/promises/_internal.js +31 -38
- package/dist/promises/iterate.js +238 -102
- package/dist/promises/options.js +123 -101
- package/dist/promises/queue.js +115 -136
- package/dist/promises/resolvers.js +77 -46
- package/dist/promises/retry.js +156 -101
- package/dist/promises/types.js +1 -17
- package/dist/regexps/escape.js +32 -30
- package/dist/regexps/hex.js +16 -33
- package/dist/regexps/spec.js +53 -81
- package/dist/releases/github-archives.js +127 -118
- package/dist/releases/github-asset-url.js +162 -155
- package/dist/releases/github-assets.js +37 -49
- package/dist/releases/github-auth.js +32 -48
- package/dist/releases/github-downloads.js +118 -138
- package/dist/releases/github-listing.js +175 -154
- package/dist/releases/github-retry-config.d.ts +31 -0
- package/dist/releases/github-retry-config.js +46 -0
- package/dist/releases/github-types.js +1 -17
- package/dist/releases/socket-btm.js +273 -192
- package/dist/schema/parse.js +35 -36
- package/dist/schema/types.js +1 -17
- package/dist/schema/validate.js +118 -99
- package/dist/sea/detect.js +57 -52
- package/dist/secrets/_internal.js +86 -67
- package/dist/secrets/find.js +96 -77
- package/dist/secrets/keychain.js +315 -309
- package/dist/secrets/linux.js +133 -135
- package/dist/secrets/macos.js +151 -147
- package/dist/secrets/rc.js +182 -181
- package/dist/secrets/socket-api-token.js +28 -43
- package/dist/secrets/types.js +1 -17
- package/dist/secrets/windows.js +184 -242
- package/dist/shadow/skip.js +51 -70
- package/dist/shadow/types.js +1 -17
- package/dist/shell/parse.d.ts +26 -0
- package/dist/shell/parse.js +35 -0
- package/dist/shell/quote.d.ts +19 -0
- package/dist/shell/quote.js +30 -0
- package/dist/smol/detect.js +67 -43
- package/dist/smol/http.js +33 -37
- package/dist/smol/https.js +31 -37
- package/dist/smol/manifest.js +33 -37
- package/dist/smol/path.d.ts +51 -0
- package/dist/smol/path.js +38 -0
- package/dist/smol/primordial.js +35 -37
- package/dist/smol/purl.js +34 -37
- package/dist/smol/versions.js +31 -37
- package/dist/smol/vfs.js +46 -38
- package/dist/sorts/_internal.js +14 -40
- package/dist/sorts/natural.js +57 -64
- package/dist/sorts/semver.js +33 -43
- package/dist/sorts/strings.js +24 -30
- package/dist/sorts/types.js +1 -17
- package/dist/spinner/default.js +72 -63
- package/dist/spinner/format.js +86 -71
- package/dist/spinner/spinner.js +749 -797
- package/dist/spinner/types.js +1 -17
- package/dist/spinner/with.js +193 -137
- package/dist/ssri/convert.js +64 -47
- package/dist/ssri/parse.js +38 -37
- package/dist/ssri/validate.js +51 -34
- package/dist/stdio/_internal.js +50 -46
- package/dist/stdio/clear.js +208 -86
- package/dist/stdio/divider.js +170 -97
- package/dist/stdio/footer.js +116 -110
- package/dist/stdio/header.js +117 -90
- package/dist/stdio/progress.js +189 -218
- package/dist/stdio/prompts.js +244 -168
- package/dist/stdio/stderr.js +173 -78
- package/dist/stdio/stdout.js +177 -94
- package/dist/streams/parallel.js +58 -50
- package/dist/streams/transform.js +36 -45
- package/dist/strings/format.js +145 -63
- package/dist/strings/predicates.js +56 -34
- package/dist/strings/search.js +52 -42
- package/dist/strings/transform.js +113 -72
- package/dist/strings/types.js +1 -17
- package/dist/strings/width.js +89 -82
- package/dist/tables/bordered.js +81 -81
- package/dist/tables/padding.js +36 -46
- package/dist/tables/simple.js +62 -70
- package/dist/tables/types.js +1 -17
- package/dist/temporal/instant.js +72 -81
- package/dist/temporal/now.js +40 -31
- package/dist/temporal/slots.js +42 -36
- package/dist/temporal/system.js +36 -36
- package/dist/temporal/temporal.js +11 -41
- package/dist/themes/context.js +131 -69
- package/dist/themes/resolve.js +207 -132
- package/dist/themes/themes.js +225 -194
- package/dist/themes/types.js +1 -17
- package/dist/url/parse.js +48 -51
- package/dist/url/predicates.js +24 -31
- package/dist/url/search-params.js +133 -101
- package/dist/url/types.js +1 -17
- package/dist/versions/_internal.js +31 -33
- package/dist/versions/compare.js +80 -58
- package/dist/versions/modify.js +41 -39
- package/dist/versions/parse.js +88 -64
- package/dist/versions/range.js +58 -41
- package/dist/versions/types.js +1 -17
- package/dist/words/article.js +22 -30
- package/dist/words/capitalize.js +25 -34
- package/dist/words/pluralize.js +23 -31
- package/dist/words/types.js +1 -17
- package/package.json +42 -5
package/dist/fs/read-json.js
CHANGED
|
@@ -1,192 +1,177 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Socket Lib - Built with
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_primordials_error = require('../primordials/error.js');
|
|
5
|
+
const require_primordials_number = require('../primordials/number.js');
|
|
6
|
+
const require_node_fs = require('../node/fs.js');
|
|
7
|
+
const require_fs_read_json_cache = require('./read-json-cache.js');
|
|
8
|
+
const require_json_parse = require('../json/parse.js');
|
|
9
|
+
|
|
10
|
+
//#region src/fs/read-json.ts
|
|
11
|
+
/**
|
|
12
|
+
* @file Read-and-parse helpers for JSON files. Wraps fs reads in actionable
|
|
13
|
+
* error messages keyed off `ENOENT` / `EACCES` / `EPERM` so callers see "JSON
|
|
14
|
+
* file not found" / "Permission denied" rather than the bare errno. Both
|
|
15
|
+
* variants honor `throws: false` to fall back to `undefined` on parse or read
|
|
16
|
+
* failure. Both variants cache parse results by default — keyed on `path +
|
|
17
|
+
* ino + size \+ mtimeMs`, with a defensive `structuredClone` on every hit so
|
|
18
|
+
* callers can mutate the returned object freely. See `_read-json-cache.ts`
|
|
19
|
+
* for the safety rationale + opt-out controls.
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* Read and parse a JSON file asynchronously. Reads the file as UTF-8 text and
|
|
23
|
+
* parses it as JSON. Optionally accepts a reviver function to transform parsed
|
|
24
|
+
* values.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ;```ts
|
|
28
|
+
* // Read and parse package.json
|
|
29
|
+
* const pkg = await readJson('./package.json')
|
|
30
|
+
*
|
|
31
|
+
* // Read JSON with custom reviver
|
|
32
|
+
* const data = await readJson('./data.json', {
|
|
33
|
+
* reviver: (key, value) => {
|
|
34
|
+
* if (key === 'date') return new Date(value)
|
|
35
|
+
* return value
|
|
36
|
+
* },
|
|
37
|
+
* })
|
|
38
|
+
*
|
|
39
|
+
* // Don't throw on parse errors
|
|
40
|
+
* const config = await readJson('./config.json', { throws: false })
|
|
41
|
+
* if (config === undefined) {
|
|
42
|
+
* console.log('Failed to parse config')
|
|
43
|
+
* }
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @param filepath - Path to JSON file.
|
|
47
|
+
* @param options - Read and parse options.
|
|
48
|
+
*
|
|
49
|
+
* @returns Promise resolving to parsed JSON value, or undefined if throws is
|
|
50
|
+
* false and an error occurs.
|
|
51
|
+
*/
|
|
52
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
37
53
|
async function readJson(filepath, options) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
if (code === "EACCES" || code === "EPERM") {
|
|
80
|
-
throw new import_error.ErrorCtor(
|
|
81
|
-
`Permission denied reading JSON file: ${filepath}
|
|
82
|
-
Check file permissions or run with appropriate access.`,
|
|
83
|
-
{ cause: e }
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
throw e;
|
|
87
|
-
}
|
|
88
|
-
return void 0;
|
|
89
|
-
}
|
|
90
|
-
const parsed = (0, import_parse.parseJson)(content, {
|
|
91
|
-
filepath: pathStr,
|
|
92
|
-
reviver,
|
|
93
|
-
throws: shouldThrow
|
|
94
|
-
});
|
|
95
|
-
if (cacheEnabled && parsed !== void 0) {
|
|
96
|
-
try {
|
|
97
|
-
const stat = await fs.promises.stat(filepath);
|
|
98
|
-
(0, import_read_json_cache.setCachedJson)(
|
|
99
|
-
pathStr,
|
|
100
|
-
(0, import_number.NumberCtor)(stat.ino),
|
|
101
|
-
(0, import_number.NumberCtor)(stat.size),
|
|
102
|
-
(0, import_number.NumberCtor)(stat.mtimeMs),
|
|
103
|
-
parsed
|
|
104
|
-
);
|
|
105
|
-
} catch {
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
return parsed;
|
|
54
|
+
const { cache, reviver, throws, ...fsOptions } = {
|
|
55
|
+
__proto__: null,
|
|
56
|
+
...typeof options === "string" ? { encoding: options } : options
|
|
57
|
+
};
|
|
58
|
+
const shouldThrow = throws === void 0 || !!throws;
|
|
59
|
+
const cacheEnabled = cache !== false && reviver === void 0;
|
|
60
|
+
const fs = /* @__PURE__ */ require_node_fs.getNodeFs();
|
|
61
|
+
const pathStr = String(filepath);
|
|
62
|
+
if (cacheEnabled) try {
|
|
63
|
+
const stat = await fs.promises.stat(filepath);
|
|
64
|
+
const cached = require_fs_read_json_cache.getCachedJson(pathStr, require_primordials_number.NumberCtor(stat.ino), require_primordials_number.NumberCtor(stat.size), require_primordials_number.NumberCtor(stat.mtimeMs));
|
|
65
|
+
if (cached !== void 0) return cached;
|
|
66
|
+
} catch {}
|
|
67
|
+
let content = "";
|
|
68
|
+
try {
|
|
69
|
+
content = await fs.promises.readFile(filepath, {
|
|
70
|
+
__proto__: null,
|
|
71
|
+
...fsOptions,
|
|
72
|
+
encoding: "utf8"
|
|
73
|
+
});
|
|
74
|
+
} catch (e) {
|
|
75
|
+
if (shouldThrow) {
|
|
76
|
+
const code = e.code;
|
|
77
|
+
if (code === "ENOENT") throw new require_primordials_error.ErrorCtor(`JSON file not found: ${filepath}\nEnsure the file exists or create it with the expected structure.`, { cause: e });
|
|
78
|
+
/* c8 ignore start */
|
|
79
|
+
if (code === "EACCES" || code === "EPERM") throw new require_primordials_error.ErrorCtor(`Permission denied reading JSON file: ${filepath}\nCheck file permissions or run with appropriate access.`, { cause: e });
|
|
80
|
+
/* c8 ignore stop */
|
|
81
|
+
throw e;
|
|
82
|
+
}
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const parsed = /* @__PURE__ */ require_json_parse.parseJson(content, {
|
|
86
|
+
filepath: pathStr,
|
|
87
|
+
reviver,
|
|
88
|
+
throws: shouldThrow
|
|
89
|
+
});
|
|
90
|
+
if (cacheEnabled && parsed !== void 0) try {
|
|
91
|
+
const stat = await fs.promises.stat(filepath);
|
|
92
|
+
require_fs_read_json_cache.setCachedJson(pathStr, require_primordials_number.NumberCtor(stat.ino), require_primordials_number.NumberCtor(stat.size), require_primordials_number.NumberCtor(stat.mtimeMs), parsed);
|
|
93
|
+
} catch {}
|
|
94
|
+
return parsed;
|
|
109
95
|
}
|
|
110
|
-
|
|
96
|
+
/**
|
|
97
|
+
* Read and parse a JSON file synchronously. Reads the file as UTF-8 text and
|
|
98
|
+
* parses it as JSON. Optionally accepts a reviver function to transform parsed
|
|
99
|
+
* values.
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ;```ts
|
|
103
|
+
* // Read and parse tsconfig.json
|
|
104
|
+
* const tsconfig = readJsonSync('./tsconfig.json')
|
|
105
|
+
*
|
|
106
|
+
* // Read JSON with custom reviver
|
|
107
|
+
* const data = readJsonSync('./data.json', {
|
|
108
|
+
* reviver: (key, value) => {
|
|
109
|
+
* if (typeof value === 'string' && /^\d{4}-\d{2}-\d{2}/.test(value)) {
|
|
110
|
+
* return new Date(value)
|
|
111
|
+
* }
|
|
112
|
+
* return value
|
|
113
|
+
* },
|
|
114
|
+
* })
|
|
115
|
+
*
|
|
116
|
+
* // Don't throw on parse errors
|
|
117
|
+
* const config = readJsonSync('./config.json', { throws: false })
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
120
|
+
* @param filepath - Path to JSON file.
|
|
121
|
+
* @param options - Read and parse options.
|
|
122
|
+
*
|
|
123
|
+
* @returns Parsed JSON value, or undefined if throws is false and an error
|
|
124
|
+
* occurs.
|
|
125
|
+
*/
|
|
126
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
111
127
|
function readJsonSync(filepath, options) {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
if (code === "EACCES" || code === "EPERM") {
|
|
154
|
-
throw new import_error.ErrorCtor(
|
|
155
|
-
`Permission denied reading JSON file: ${filepath}
|
|
156
|
-
Check file permissions or run with appropriate access.`,
|
|
157
|
-
{ cause: e }
|
|
158
|
-
);
|
|
159
|
-
}
|
|
160
|
-
throw e;
|
|
161
|
-
}
|
|
162
|
-
return void 0;
|
|
163
|
-
}
|
|
164
|
-
const parsed = (0, import_parse.parseJson)(content, {
|
|
165
|
-
filepath: pathStr,
|
|
166
|
-
reviver,
|
|
167
|
-
throws: shouldThrow
|
|
168
|
-
});
|
|
169
|
-
if (cacheEnabled && parsed !== void 0) {
|
|
170
|
-
try {
|
|
171
|
-
const stat = fs.statSync(filepath);
|
|
172
|
-
(0, import_read_json_cache.setCachedJson)(
|
|
173
|
-
pathStr,
|
|
174
|
-
(0, import_number.NumberCtor)(stat.ino),
|
|
175
|
-
(0, import_number.NumberCtor)(stat.size),
|
|
176
|
-
(0, import_number.NumberCtor)(stat.mtimeMs),
|
|
177
|
-
parsed
|
|
178
|
-
);
|
|
179
|
-
} catch {
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
return parsed;
|
|
128
|
+
const { cache, reviver, throws, ...fsOptions } = {
|
|
129
|
+
__proto__: null,
|
|
130
|
+
...typeof options === "string" ? { encoding: options } : options
|
|
131
|
+
};
|
|
132
|
+
const shouldThrow = throws === void 0 || !!throws;
|
|
133
|
+
const cacheEnabled = cache !== false && reviver === void 0;
|
|
134
|
+
const fs = /* @__PURE__ */ require_node_fs.getNodeFs();
|
|
135
|
+
const pathStr = String(filepath);
|
|
136
|
+
if (cacheEnabled) try {
|
|
137
|
+
const stat = fs.statSync(filepath);
|
|
138
|
+
const cached = require_fs_read_json_cache.getCachedJson(pathStr, require_primordials_number.NumberCtor(stat.ino), require_primordials_number.NumberCtor(stat.size), require_primordials_number.NumberCtor(stat.mtimeMs));
|
|
139
|
+
if (cached !== void 0) return cached;
|
|
140
|
+
} catch {}
|
|
141
|
+
let content = "";
|
|
142
|
+
try {
|
|
143
|
+
content = fs.readFileSync(filepath, {
|
|
144
|
+
__proto__: null,
|
|
145
|
+
...fsOptions,
|
|
146
|
+
encoding: "utf8"
|
|
147
|
+
});
|
|
148
|
+
} catch (e) {
|
|
149
|
+
if (shouldThrow) {
|
|
150
|
+
const code = e.code;
|
|
151
|
+
if (code === "ENOENT") throw new require_primordials_error.ErrorCtor(`JSON file not found: ${filepath}\nEnsure the file exists or create it with the expected structure.`, { cause: e });
|
|
152
|
+
/* c8 ignore start */
|
|
153
|
+
if (code === "EACCES" || code === "EPERM") throw new require_primordials_error.ErrorCtor(`Permission denied reading JSON file: ${filepath}\nCheck file permissions or run with appropriate access.`, { cause: e });
|
|
154
|
+
/* c8 ignore stop */
|
|
155
|
+
throw e;
|
|
156
|
+
}
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
const parsed = /* @__PURE__ */ require_json_parse.parseJson(content, {
|
|
160
|
+
filepath: pathStr,
|
|
161
|
+
reviver,
|
|
162
|
+
throws: shouldThrow
|
|
163
|
+
});
|
|
164
|
+
if (cacheEnabled && parsed !== void 0) try {
|
|
165
|
+
const stat = fs.statSync(filepath);
|
|
166
|
+
require_fs_read_json_cache.setCachedJson(pathStr, require_primordials_number.NumberCtor(stat.ino), require_primordials_number.NumberCtor(stat.size), require_primordials_number.NumberCtor(stat.mtimeMs), parsed);
|
|
167
|
+
} catch {}
|
|
168
|
+
return parsed;
|
|
183
169
|
}
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
});
|
|
170
|
+
|
|
171
|
+
//#endregion
|
|
172
|
+
exports.clearReadJsonCache = require_fs_read_json_cache.clearReadJsonCache;
|
|
173
|
+
exports.getReadJsonCacheStats = require_fs_read_json_cache.getReadJsonCacheStats;
|
|
174
|
+
exports.readJson = readJson;
|
|
175
|
+
exports.readJsonSync = readJsonSync;
|
|
176
|
+
exports.setReadJsonCacheMax = require_fs_read_json_cache.setReadJsonCacheMax;
|
|
177
|
+
exports.setReadJsonCacheTtlMs = require_fs_read_json_cache.setReadJsonCacheTtlMs;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file `require.resolve`-from-an-arbitrary-base. Node's bare
|
|
3
|
+
* `require.resolve(spec)` resolves relative to the calling module; these
|
|
4
|
+
* helpers resolve a specifier as if required from a DIFFERENT directory —
|
|
5
|
+
* useful for "find the copy of `typescript` that THIS project would load,"
|
|
6
|
+
* not the copy socket-lib itself loads. Returns the resolved absolute file
|
|
7
|
+
* path, or (in `nothrow` form) `undefined` when the specifier can't be
|
|
8
|
+
* resolved.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Resolve a module specifier as if `require`'d from `fromDir`.
|
|
12
|
+
*
|
|
13
|
+
* Equivalent to running `require.resolve(specifier)` inside a module located at
|
|
14
|
+
* `fromDir`. Accepts package specifiers (`'typescript'`, `'pkg/sub/path'`) and
|
|
15
|
+
* relative paths (`'./foo'`).
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ;```ts
|
|
19
|
+
* // The `typescript` the project at /repo would load:
|
|
20
|
+
* requireResolveFrom('/repo', 'typescript')
|
|
21
|
+
* //=> '/repo/node_modules/typescript/lib/typescript.js'
|
|
22
|
+
*
|
|
23
|
+
* requireResolveFrom('/repo', './missing', { nothrow: true })
|
|
24
|
+
* //=> undefined
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @param fromDir - Directory to resolve as if the require originated there.
|
|
28
|
+
* @param specifier - Module specifier or relative path to resolve.
|
|
29
|
+
* @param options - `nothrow: true` returns `undefined` instead of throwing.
|
|
30
|
+
*
|
|
31
|
+
* @returns Absolute resolved path (or `undefined` when `nothrow` and
|
|
32
|
+
* unresolved).
|
|
33
|
+
*
|
|
34
|
+
* @throws When the specifier can't be resolved and `nothrow` is not set.
|
|
35
|
+
*/
|
|
36
|
+
export declare function requireResolveFrom(fromDir: string, specifier: string, options: {
|
|
37
|
+
nothrow: true;
|
|
38
|
+
}): string | undefined;
|
|
39
|
+
export declare function requireResolveFrom(fromDir: string, specifier: string, options?: {
|
|
40
|
+
nothrow?: false | undefined;
|
|
41
|
+
} | undefined): string;
|
|
42
|
+
/**
|
|
43
|
+
* Resolve a module specifier as if `require`'d from `process.cwd()`. Alias for
|
|
44
|
+
* {@link requireResolveFrom} anchored at the current directory.
|
|
45
|
+
*
|
|
46
|
+
* @param specifier - Module specifier or relative path to resolve.
|
|
47
|
+
* @param options - `nothrow: true` returns `undefined` instead of throwing.
|
|
48
|
+
*
|
|
49
|
+
* @returns Absolute resolved path (or `undefined` when `nothrow` and
|
|
50
|
+
* unresolved).
|
|
51
|
+
*/
|
|
52
|
+
export declare function requireResolveFromCwd(specifier: string, options: {
|
|
53
|
+
nothrow: true;
|
|
54
|
+
}): string | undefined;
|
|
55
|
+
export declare function requireResolveFromCwd(specifier: string, options?: {
|
|
56
|
+
nothrow?: false | undefined;
|
|
57
|
+
} | undefined): string;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_runtime = require('../_virtual/_rolldown/runtime.js');
|
|
5
|
+
const require_node_path = require('../node/path.js');
|
|
6
|
+
let node_module = require("node:module");
|
|
7
|
+
let node_process = require("node:process");
|
|
8
|
+
node_process = require_runtime.__toESM(node_process);
|
|
9
|
+
|
|
10
|
+
//#region src/fs/resolve-module.ts
|
|
11
|
+
/**
|
|
12
|
+
* @file `require.resolve`-from-an-arbitrary-base. Node's bare
|
|
13
|
+
* `require.resolve(spec)` resolves relative to the calling module; these
|
|
14
|
+
* helpers resolve a specifier as if required from a DIFFERENT directory —
|
|
15
|
+
* useful for "find the copy of `typescript` that THIS project would load,"
|
|
16
|
+
* not the copy socket-lib itself loads. Returns the resolved absolute file
|
|
17
|
+
* path, or (in `nothrow` form) `undefined` when the specifier can't be
|
|
18
|
+
* resolved.
|
|
19
|
+
*/
|
|
20
|
+
function requireResolveFrom(fromDir, specifier, options) {
|
|
21
|
+
const { nothrow = false } = {
|
|
22
|
+
__proto__: null,
|
|
23
|
+
...options
|
|
24
|
+
};
|
|
25
|
+
const path = /* @__PURE__ */ require_node_path.getNodePath();
|
|
26
|
+
const anchor = path.join(path.resolve(fromDir), "noop.js");
|
|
27
|
+
try {
|
|
28
|
+
return (0, node_module.createRequire)(anchor).resolve(specifier);
|
|
29
|
+
} catch (e) {
|
|
30
|
+
if (nothrow) return;
|
|
31
|
+
throw e;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function requireResolveFromCwd(specifier, options) {
|
|
35
|
+
return options && options.nothrow ? requireResolveFrom(node_process.default.cwd(), specifier, { nothrow: true }) : requireResolveFrom(node_process.default.cwd(), specifier);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
//#endregion
|
|
39
|
+
exports.requireResolveFrom = requireResolveFrom;
|
|
40
|
+
exports.requireResolveFromCwd = requireResolveFromCwd;
|