@socketsecurity/lib 6.0.3 → 6.0.5
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 +22 -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.js +94 -65
- package/dist/ai/spawn.js +172 -194
- package/dist/ai/types.js +1 -17
- 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 -159
- 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.js +57 -54
- package/dist/fs/encoding.js +80 -97
- package/dist/fs/find-up.js +126 -125
- 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.js +35 -58
- 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 -40
- 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 +793 -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.js +55 -60
- 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.js +31 -34
- 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 -146
- 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 -145
- package/dist/releases/github-retry-config.js +41 -47
- 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.js +33 -37
- 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 +17 -5
package/dist/github/token.js
CHANGED
|
@@ -1,55 +1,103 @@
|
|
|
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
|
-
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_process_spawn_child = require('../process/spawn/child.js');
|
|
5
|
+
const require_env_github = require('../env/github.js');
|
|
6
|
+
const require_env_socket_cli = require('../env/socket-cli.js');
|
|
7
|
+
|
|
8
|
+
//#region src/github/token.ts
|
|
9
|
+
/**
|
|
10
|
+
* @file GitHub token resolution. Three sources, in priority order: environment
|
|
11
|
+
* variables, then `git config github.token`. The combined fallback
|
|
12
|
+
* (`getGitHubTokenWithFallback`) is what most callers want; the individual
|
|
13
|
+
* helpers exist so callers can constrain the search (e.g., env-only contexts
|
|
14
|
+
* where shelling out to git would be wrong).
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Get GitHub authentication token from environment variables. Checks multiple
|
|
18
|
+
* environment variable names in priority order.
|
|
19
|
+
*
|
|
20
|
+
* Environment variables checked (in order):
|
|
21
|
+
*
|
|
22
|
+
* 1. `GITHUB_TOKEN` - Standard GitHub token variable
|
|
23
|
+
* 2. `GH_TOKEN` - Alternative GitHub CLI token variable
|
|
24
|
+
* 3. `SOCKET_CLI_GITHUB_TOKEN` - Socket-specific token variable
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ;```ts
|
|
28
|
+
* const token = getGitHubToken()
|
|
29
|
+
* if (!token) {
|
|
30
|
+
* console.warn('No GitHub token found')
|
|
31
|
+
* }
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @returns The first available GitHub token, or `undefined` if none found
|
|
35
|
+
*/
|
|
31
36
|
function getGitHubToken() {
|
|
32
|
-
|
|
37
|
+
return /* @__PURE__ */ require_env_github.getGithubToken() || /* @__PURE__ */ require_env_github.getGhToken() || /* @__PURE__ */ require_env_socket_cli.getSocketCliGithubToken() || void 0;
|
|
33
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Get GitHub authentication token from git config. Reads the `github.token`
|
|
41
|
+
* configuration value from git config. This is a fallback method when
|
|
42
|
+
* environment variables don't contain a token.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ;```ts
|
|
46
|
+
* const token = await getGitHubTokenFromGitConfig()
|
|
47
|
+
* if (token) {
|
|
48
|
+
* console.log('Found token in git config')
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ;```ts
|
|
54
|
+
* // With custom working directory
|
|
55
|
+
* const token = await getGitHubTokenFromGitConfig({
|
|
56
|
+
* cwd: '/path/to/repo',
|
|
57
|
+
* })
|
|
58
|
+
* ```
|
|
59
|
+
*
|
|
60
|
+
* @param options - Spawn options for git command execution.
|
|
61
|
+
*
|
|
62
|
+
* @returns GitHub token from git config, or `undefined` if not configured
|
|
63
|
+
*/
|
|
34
64
|
async function getGitHubTokenFromGitConfig(options) {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
return void 0;
|
|
65
|
+
/* c8 ignore start - External git process call */
|
|
66
|
+
try {
|
|
67
|
+
const result = await require_process_spawn_child.spawn("git", ["config", "github.token"], {
|
|
68
|
+
...options,
|
|
69
|
+
stdio: "pipe"
|
|
70
|
+
});
|
|
71
|
+
if (result.code === 0 && result.stdout) return result.stdout.toString().trim();
|
|
72
|
+
} catch {}
|
|
73
|
+
/* c8 ignore stop */
|
|
46
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Get GitHub authentication token from all available sources. Checks
|
|
77
|
+
* environment variables first, then falls back to git config. This is the
|
|
78
|
+
* recommended way to get a GitHub token with maximum compatibility.
|
|
79
|
+
*
|
|
80
|
+
* Priority order:
|
|
81
|
+
*
|
|
82
|
+
* 1. Environment variables (GITHUB_TOKEN, GH_TOKEN, SOCKET_CLI_GITHUB_TOKEN)
|
|
83
|
+
* 2. Git config (github.token)
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ;```ts
|
|
87
|
+
* const token = await getGitHubTokenWithFallback()
|
|
88
|
+
* if (!token) {
|
|
89
|
+
* throw new ErrorCtor('GitHub token required')
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*
|
|
93
|
+
* @returns GitHub token from first available source, or `undefined` if none
|
|
94
|
+
* found.
|
|
95
|
+
*/
|
|
47
96
|
async function getGitHubTokenWithFallback() {
|
|
48
|
-
|
|
97
|
+
return getGitHubToken() || await getGitHubTokenFromGitConfig();
|
|
49
98
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
});
|
|
99
|
+
|
|
100
|
+
//#endregion
|
|
101
|
+
exports.getGitHubToken = getGitHubToken;
|
|
102
|
+
exports.getGitHubTokenFromGitConfig = getGitHubTokenFromGitConfig;
|
|
103
|
+
exports.getGitHubTokenWithFallback = getGitHubTokenWithFallback;
|
package/dist/github/types.js
CHANGED
|
@@ -1,18 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Socket Lib - Built with
|
|
3
|
-
"use strict";
|
|
4
|
-
var __defProp = Object.defineProperty;
|
|
5
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
10
|
-
for (let key of __getOwnPropNames(from))
|
|
11
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
12
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
}
|
|
14
|
-
return to;
|
|
15
|
-
};
|
|
16
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
17
|
-
var types_exports = {};
|
|
18
|
-
module.exports = __toCommonJS(types_exports);
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
package/dist/globs/_internal.js
CHANGED
|
@@ -1,96 +1,87 @@
|
|
|
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
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
21
|
-
var internal_exports = {};
|
|
22
|
-
__export(internal_exports, {
|
|
23
|
-
MATCHER_CACHE_MAX_SIZE: () => MATCHER_CACHE_MAX_SIZE,
|
|
24
|
-
defaultIgnore: () => import_defaults.defaultIgnore,
|
|
25
|
-
getFastGlob: () => getFastGlob,
|
|
26
|
-
getFs: () => import_fs.getNodeFs,
|
|
27
|
-
getFsPromises: () => import_fs_promises.getNodeFsPromises,
|
|
28
|
-
getPicomatch: () => getPicomatch,
|
|
29
|
-
matcherCache: () => matcherCache,
|
|
30
|
-
normalizeGlobResults: () => normalizeGlobResults,
|
|
31
|
-
normalizeIgnorePatterns: () => normalizeIgnorePatterns,
|
|
32
|
-
stripTrailingSlash: () => stripTrailingSlash
|
|
33
|
-
});
|
|
34
|
-
module.exports = __toCommonJS(internal_exports);
|
|
35
|
-
var import_array = require("../primordials/array");
|
|
36
|
-
var import_map_set = require("../primordials/map-set");
|
|
37
|
-
var import_string = require("../primordials/string");
|
|
38
|
-
var import_normalize = require("../paths/normalize");
|
|
39
|
-
var import_defaults = require("./defaults");
|
|
40
|
-
var import_fs = require("../node/fs");
|
|
41
|
-
var import_fs_promises = require("../node/fs-promises");
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_primordials_string = require('../primordials/string.js');
|
|
5
|
+
const require_paths_normalize = require('../paths/normalize.js');
|
|
6
|
+
const require_primordials_array = require('../primordials/array.js');
|
|
7
|
+
const require_primordials_map_set = require('../primordials/map-set.js');
|
|
8
|
+
const require_node_fs = require('../node/fs.js');
|
|
9
|
+
const require_globs_defaults = require('./defaults.js');
|
|
10
|
+
const require_node_fs_promises = require('../node/fs-promises.js');
|
|
11
|
+
|
|
12
|
+
//#region src/globs/_internal.ts
|
|
13
|
+
/**
|
|
14
|
+
* @file Private internals for `globs/*` modules — lazy module accessors,
|
|
15
|
+
* normalization helpers, and the matcher LRU cache. The `defaultIgnore` list
|
|
16
|
+
* lives in the public `defaults.ts` file; this file re-exports it so
|
|
17
|
+
* co-located helpers can import everything through one path.
|
|
18
|
+
*/
|
|
42
19
|
const MATCHER_CACHE_MAX_SIZE = 100;
|
|
43
|
-
const matcherCache = new
|
|
20
|
+
const matcherCache = new require_primordials_map_set.MapCtor();
|
|
44
21
|
let _fastGlob;
|
|
45
22
|
let _picomatch;
|
|
46
|
-
|
|
23
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
47
24
|
function getFastGlob() {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
return _fastGlob;
|
|
25
|
+
if (_fastGlob === void 0) _fastGlob = /* @__PURE__ */ require("../external/fast-glob.js");
|
|
26
|
+
return _fastGlob;
|
|
52
27
|
}
|
|
53
|
-
|
|
28
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
54
29
|
function getPicomatch() {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
return _picomatch;
|
|
30
|
+
if (_picomatch === void 0) _picomatch = /* @__PURE__ */ require("../external/picomatch.js");
|
|
31
|
+
return _picomatch;
|
|
59
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Glob results are normalized to forward slashes regardless of the backend
|
|
35
|
+
* (node:fs.glob returns native-OS separators on Windows; fast-glob already
|
|
36
|
+
* returns forward slashes). Single contract: callers don't have to think about
|
|
37
|
+
* separators per platform. Routes through `paths/normalize.normalizePath` so
|
|
38
|
+
* this stays consistent with every other path-shaped string in the lib.
|
|
39
|
+
*/
|
|
60
40
|
function normalizeGlobResults(out) {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
return out;
|
|
41
|
+
for (let i = 0; i < out.length; i += 1) out[i] = /* @__PURE__ */ require_paths_normalize.normalizePath(out[i]);
|
|
42
|
+
return out;
|
|
65
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Normalize a user-provided ignore array by running every entry through
|
|
46
|
+
* stripTrailingSlash. Returns undefined when `ignore` is not an array so
|
|
47
|
+
* callers can skip merging the option entirely.
|
|
48
|
+
*
|
|
49
|
+
* Uses a pre-sized for-loop instead of `.map`: socket-lib uses primordials (the
|
|
50
|
+
* prototype `Array.prototype.map` can be intercepted or replaced by user code
|
|
51
|
+
* at module load), and a hand-rolled loop is also marginally faster — no
|
|
52
|
+
* callback indirection, no growth of the result array.
|
|
53
|
+
*/
|
|
66
54
|
function normalizeIgnorePatterns(ignore) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
for (let i = 0; i < length; i++) {
|
|
74
|
-
normalized[i] = stripTrailingSlash(source[i]);
|
|
75
|
-
}
|
|
76
|
-
return normalized;
|
|
55
|
+
if (!require_primordials_array.ArrayIsArray(ignore)) return;
|
|
56
|
+
const source = ignore;
|
|
57
|
+
const { length } = source;
|
|
58
|
+
const normalized = new require_primordials_array.ArrayCtor(length);
|
|
59
|
+
for (let i = 0; i < length; i++) normalized[i] = stripTrailingSlash(source[i]);
|
|
60
|
+
return normalized;
|
|
77
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Strip a trailing `/` from a glob pattern so fast-glob's deep filter matches
|
|
64
|
+
* it. See header comment in `glob.ts` for the full rationale — shortest
|
|
65
|
+
* summary: a `dist/` ignore pattern lets fast-glob walk the whole subtree
|
|
66
|
+
* before filtering, while `dist` (no slash) skips the walk entirely.
|
|
67
|
+
*
|
|
68
|
+
* CharCode 47 is `/`. Reading it that way avoids a per-call string allocation
|
|
69
|
+
* for the literal — primordials-friendly, no behavior change vs.
|
|
70
|
+
* `pattern.endsWith('/')`.
|
|
71
|
+
*/
|
|
78
72
|
function stripTrailingSlash(pattern) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
return pattern;
|
|
73
|
+
if (pattern.length > 1 && require_primordials_string.StringPrototypeCharCodeAt(pattern, pattern.length - 1) === 47) return pattern.slice(0, -1);
|
|
74
|
+
return pattern;
|
|
83
75
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
});
|
|
76
|
+
|
|
77
|
+
//#endregion
|
|
78
|
+
exports.MATCHER_CACHE_MAX_SIZE = MATCHER_CACHE_MAX_SIZE;
|
|
79
|
+
exports.defaultIgnore = require_globs_defaults.defaultIgnore;
|
|
80
|
+
exports.getFastGlob = getFastGlob;
|
|
81
|
+
exports.getFs = require_node_fs.getNodeFs;
|
|
82
|
+
exports.getFsPromises = require_node_fs_promises.getNodeFsPromises;
|
|
83
|
+
exports.getPicomatch = getPicomatch;
|
|
84
|
+
exports.matcherCache = matcherCache;
|
|
85
|
+
exports.normalizeGlobResults = normalizeGlobResults;
|
|
86
|
+
exports.normalizeIgnorePatterns = normalizeIgnorePatterns;
|
|
87
|
+
exports.stripTrailingSlash = stripTrailingSlash;
|
package/dist/globs/defaults.js
CHANGED
|
@@ -1,61 +1,42 @@
|
|
|
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
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"**/.wafpickle-*",
|
|
40
|
-
"**/.*.swp",
|
|
41
|
-
"**/._*/**",
|
|
42
|
-
"**/archived-packages/**",
|
|
43
|
-
"**/build/config.gypi",
|
|
44
|
-
"**/CVS",
|
|
45
|
-
"**/npm-debug.log",
|
|
46
|
-
"**/*.orig",
|
|
47
|
-
// Inline generic socket-registry .gitignore entries.
|
|
48
|
-
"**/.env",
|
|
49
|
-
"**/.eslintcache",
|
|
50
|
-
"**/.nvm",
|
|
51
|
-
"**/.tap",
|
|
52
|
-
"**/.vscode",
|
|
53
|
-
"**/*.tsbuildinfo",
|
|
54
|
-
"**/Thumbs.db",
|
|
55
|
-
// Inline additional ignores.
|
|
56
|
-
"**/bower_components"
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_objects_mutate = require('../objects/mutate.js');
|
|
5
|
+
|
|
6
|
+
//#region src/globs/defaults.ts
|
|
7
|
+
/**
|
|
8
|
+
* @file The npm-packlist-derived `defaultIgnore` list. Public starting point
|
|
9
|
+
* for caller-customized ignore arrays — also consumed internally by
|
|
10
|
+
* `_internal` (matcher / stream callers fall back to this list when no
|
|
11
|
+
* `ignore` option is supplied).
|
|
12
|
+
*/
|
|
13
|
+
const defaultIgnore = require_objects_mutate.objectFreeze([
|
|
14
|
+
"**/.git",
|
|
15
|
+
"**/.npmrc",
|
|
16
|
+
"**/node_modules",
|
|
17
|
+
"**/.DS_Store",
|
|
18
|
+
"**/.gitignore",
|
|
19
|
+
"**/.hg",
|
|
20
|
+
"**/.lock-wscript",
|
|
21
|
+
"**/.npmignore",
|
|
22
|
+
"**/.svn",
|
|
23
|
+
"**/.wafpickle-*",
|
|
24
|
+
"**/.*.swp",
|
|
25
|
+
"**/._*/**",
|
|
26
|
+
"**/archived-packages/**",
|
|
27
|
+
"**/build/config.gypi",
|
|
28
|
+
"**/CVS",
|
|
29
|
+
"**/npm-debug.log",
|
|
30
|
+
"**/*.orig",
|
|
31
|
+
"**/.env",
|
|
32
|
+
"**/.eslintcache",
|
|
33
|
+
"**/.nvm",
|
|
34
|
+
"**/.tap",
|
|
35
|
+
"**/.vscode",
|
|
36
|
+
"**/*.tsbuildinfo",
|
|
37
|
+
"**/Thumbs.db",
|
|
38
|
+
"**/bower_components"
|
|
57
39
|
]);
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
});
|
|
40
|
+
|
|
41
|
+
//#endregion
|
|
42
|
+
exports.defaultIgnore = defaultIgnore;
|
package/dist/globs/match.js
CHANGED
|
@@ -1,84 +1,100 @@
|
|
|
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
|
-
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_node_fs = require('../node/fs.js');
|
|
5
|
+
const require_node_fs_promises = require('../node/fs-promises.js');
|
|
6
|
+
const require_globs__internal = require('./_internal.js');
|
|
7
|
+
const require_promises_resolvers = require('../promises/resolvers.js');
|
|
8
|
+
|
|
9
|
+
//#region src/globs/match.ts
|
|
10
|
+
/**
|
|
11
|
+
* @file `glob` (async) and `globSync` — fast-glob wrappers with a
|
|
12
|
+
* `node:fs.glob` fast-path when the option surface lines up.
|
|
13
|
+
* `canUseNodeFsGlob` is the per-call gate. Trailing-slash workaround for
|
|
14
|
+
* fast-glob ignore patterns
|
|
15
|
+
* ───────────────────────────────────────────────────────── TL;DR: when you
|
|
16
|
+
* pass `ignore: ['**\/dist/']` to fast-glob, the `dist` directory still gets
|
|
17
|
+
* walked. Strip the trailing slash before passing it to fast-glob and the
|
|
18
|
+
* ignore actually takes effect. Why this exists ─────────────── The gitignore
|
|
19
|
+
* convention is to write directory entries with a trailing slash: `dist/`,
|
|
20
|
+
* `node_modules/`, `coverage/`. Tools that translate gitignore lines into
|
|
21
|
+
* glob patterns (including socket-cli's `globWithGitIgnore` helper,
|
|
22
|
+
* npm-packlist, etc.) preserve that slash. fast-glob has TWO independent
|
|
23
|
+
* filters that handle the trailing slash differently:
|
|
24
|
+
*
|
|
25
|
+
* 1. The DEEP filter decides whether to walk INTO a candidate directory. The
|
|
26
|
+
* deep filter compiles `**\/dist/` into a regex that requires a trailing
|
|
27
|
+
* slash on the input, but it tests `entryPath = 'dist'` (no slash, because
|
|
28
|
+
* readdir entries don't include one). So fast-glob walks in anyway.
|
|
29
|
+
* 2. The ENTRY filter (post-walk) retries with a trailing slash appended for
|
|
30
|
+
* directory entries — so it correctly excludes the results, but only AFTER
|
|
31
|
+
* the entire subtree has been walked. Net effect: a `dist/` ignore pattern
|
|
32
|
+
* correctly removes contents from the result array, but only after
|
|
33
|
+
* walking. On a 300k-file `dist/` under tight memory this is the
|
|
34
|
+
* difference between "instant" and "OOM kill". Stripping the trailing
|
|
35
|
+
* slash makes it `**\/dist`, which both filters interpret correctly.
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* Whether the caller's option bag is fully expressible with `node:fs.glob`
|
|
39
|
+
* (`cwd` + `exclude`). Any other option means we must fall back to fast-glob,
|
|
40
|
+
* which exposes the wider surface.
|
|
41
|
+
*
|
|
42
|
+
* Exported for unit tests; not part of the public API.
|
|
43
|
+
*
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
30
46
|
function canUseNodeFsGlob(options) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
for (const key of Object.keys(options)) {
|
|
35
|
-
if (key !== "cwd" && key !== "ignore") {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return true;
|
|
47
|
+
if (!options) return true;
|
|
48
|
+
for (const key of Object.keys(options)) if (key !== "cwd" && key !== "ignore") return false;
|
|
49
|
+
return true;
|
|
40
50
|
}
|
|
41
|
-
|
|
51
|
+
/**
|
|
52
|
+
* Asynchronously find files matching glob patterns.
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ;```typescript
|
|
56
|
+
* const files = await glob('src/*.ts', { cwd: '/tmp/project' })
|
|
57
|
+
* console.log(files) // ['src/index.ts', 'src/utils.ts']
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
42
61
|
async function glob(patterns, options) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
const fastGlob = (0, import_internal.getFastGlob)();
|
|
54
|
-
const out = await fastGlob.glob(patterns, {
|
|
55
|
-
...options,
|
|
56
|
-
...normalizedIgnore ? { ignore: normalizedIgnore } : {}
|
|
57
|
-
});
|
|
58
|
-
return (0, import_internal.normalizeGlobResults)(out);
|
|
62
|
+
const normalizedIgnore = require_globs__internal.normalizeIgnorePatterns(options?.ignore);
|
|
63
|
+
/* c8 ignore start */
|
|
64
|
+
if (canUseNodeFsGlob(options)) return require_globs__internal.normalizeGlobResults(await require_promises_resolvers.fromAsync((/* @__PURE__ */ require_node_fs_promises.getNodeFsPromises()).glob(patterns, {
|
|
65
|
+
...options?.cwd ? { cwd: options.cwd } : {},
|
|
66
|
+
...normalizedIgnore ? { exclude: normalizedIgnore } : {}
|
|
67
|
+
})));
|
|
68
|
+
return require_globs__internal.normalizeGlobResults(await (/* @__PURE__ */ require_globs__internal.getFastGlob()).glob(patterns, {
|
|
69
|
+
...options,
|
|
70
|
+
...normalizedIgnore ? { ignore: normalizedIgnore } : {}
|
|
71
|
+
}));
|
|
59
72
|
}
|
|
60
|
-
|
|
73
|
+
/**
|
|
74
|
+
* Synchronously find files matching glob patterns. Wrapper around
|
|
75
|
+
* fast-glob.sync.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ;```typescript
|
|
79
|
+
* const files = globSync('*.json', { cwd: '/tmp/project' })
|
|
80
|
+
* console.log(files) // ['package.json', 'tsconfig.json']
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
61
84
|
function globSync(patterns, options) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return (0, import_internal.normalizeGlobResults)(
|
|
73
|
-
fastGlob.globSync(patterns, {
|
|
74
|
-
...options,
|
|
75
|
-
...normalizedIgnore ? { ignore: normalizedIgnore } : {}
|
|
76
|
-
})
|
|
77
|
-
);
|
|
85
|
+
const normalizedIgnore = require_globs__internal.normalizeIgnorePatterns(options?.ignore);
|
|
86
|
+
/* c8 ignore start */
|
|
87
|
+
if (canUseNodeFsGlob(options)) return require_globs__internal.normalizeGlobResults([...(/* @__PURE__ */ require_node_fs.getNodeFs()).globSync(patterns, {
|
|
88
|
+
...options?.cwd ? { cwd: options.cwd } : {},
|
|
89
|
+
...normalizedIgnore ? { exclude: normalizedIgnore } : {}
|
|
90
|
+
})]);
|
|
91
|
+
return require_globs__internal.normalizeGlobResults((/* @__PURE__ */ require_globs__internal.getFastGlob()).globSync(patterns, {
|
|
92
|
+
...options,
|
|
93
|
+
...normalizedIgnore ? { ignore: normalizedIgnore } : {}
|
|
94
|
+
}));
|
|
78
95
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
});
|
|
96
|
+
|
|
97
|
+
//#endregion
|
|
98
|
+
exports.canUseNodeFsGlob = canUseNodeFsGlob;
|
|
99
|
+
exports.glob = glob;
|
|
100
|
+
exports.globSync = globSync;
|