@socketsecurity/lib 3.5.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +8 -8
  3. package/dist/agent.js +12 -25
  4. package/dist/bin.d.ts +97 -40
  5. package/dist/bin.js +133 -138
  6. package/dist/cacache.d.ts +5 -2
  7. package/dist/cacache.js +29 -18
  8. package/dist/cache-with-ttl.js +1 -1
  9. package/dist/constants/agents.d.ts +0 -4
  10. package/dist/constants/agents.js +13 -4
  11. package/dist/constants/node.d.ts +1 -0
  12. package/dist/constants/node.js +2 -5
  13. package/dist/constants/packages.js +23 -11
  14. package/dist/constants/process.d.ts +1 -1
  15. package/dist/constants/process.js +2 -2
  16. package/dist/debug.js +3 -3
  17. package/dist/dlx-binary.js +10 -18
  18. package/dist/dlx-manifest.js +2 -2
  19. package/dist/dlx-package.js +22 -62
  20. package/dist/dlx.js +14 -14
  21. package/dist/effects/text-shimmer.js +1 -1
  22. package/dist/env/ci.js +2 -2
  23. package/dist/env/debug.js +1 -1
  24. package/dist/env/github.js +1 -1
  25. package/dist/env/home.js +1 -1
  26. package/dist/env/locale.js +1 -1
  27. package/dist/env/node-auth-token.js +1 -1
  28. package/dist/env/node-env.js +1 -1
  29. package/dist/env/npm.js +1 -1
  30. package/dist/env/package-manager.js +1 -1
  31. package/dist/env/path.js +1 -1
  32. package/dist/env/pre-commit.js +2 -2
  33. package/dist/env/rewire.d.ts +7 -7
  34. package/dist/env/rewire.js +1 -1
  35. package/dist/env/shell.js +1 -1
  36. package/dist/env/socket-cli-shadow.js +2 -2
  37. package/dist/env/socket-cli.js +2 -2
  38. package/dist/env/socket.js +2 -2
  39. package/dist/env/temp-dir.js +1 -1
  40. package/dist/env/term.js +1 -1
  41. package/dist/env/test.js +3 -3
  42. package/dist/env/windows.js +1 -1
  43. package/dist/env/xdg.js +1 -1
  44. package/dist/fs.js +20 -25
  45. package/dist/git.d.ts +6 -6
  46. package/dist/git.js +11 -14
  47. package/dist/github.js +2 -2
  48. package/dist/globs.js +16 -29
  49. package/dist/ipc.d.ts +4 -4
  50. package/dist/ipc.js +3 -3
  51. package/dist/logger.d.ts +0 -25
  52. package/dist/logger.js +0 -26
  53. package/dist/objects.js +1 -1
  54. package/dist/package-default-node-range.js +13 -3
  55. package/dist/package-extensions.d.ts +2 -1
  56. package/dist/package-extensions.js +12 -2
  57. package/dist/packages/editable.d.ts +0 -3
  58. package/dist/packages/editable.js +34 -24
  59. package/dist/packages/exports.js +1 -1
  60. package/dist/packages/isolation.js +33 -33
  61. package/dist/packages/licenses.js +20 -34
  62. package/dist/packages/manifest.js +21 -36
  63. package/dist/packages/normalize.js +20 -52
  64. package/dist/packages/operations.js +39 -103
  65. package/dist/packages/provenance.js +15 -5
  66. package/dist/packages/specs.js +13 -12
  67. package/dist/packages/validation.js +12 -10
  68. package/dist/packages.d.ts +2 -2
  69. package/dist/packages.js +3 -3
  70. package/dist/paths/dirnames.d.ts +13 -0
  71. package/dist/paths/dirnames.js +50 -0
  72. package/dist/paths/exts.d.ts +18 -0
  73. package/dist/paths/exts.js +68 -0
  74. package/dist/paths/filenames.d.ts +16 -0
  75. package/dist/paths/filenames.js +62 -0
  76. package/dist/paths/globs.d.ts +10 -0
  77. package/dist/{argv/quote.js → paths/globs.js} +21 -19
  78. package/dist/{path.d.ts → paths/normalize.d.ts} +41 -0
  79. package/dist/{path.js → paths/normalize.js} +18 -5
  80. package/dist/{packages/paths.js → paths/packages.js} +8 -8
  81. package/dist/paths/rewire.d.ts +1 -1
  82. package/dist/{paths.js → paths/socket.js} +31 -67
  83. package/dist/promises.js +2 -2
  84. package/dist/sea.js +2 -2
  85. package/dist/shadow.js +3 -3
  86. package/dist/sorts.js +12 -2
  87. package/dist/spawn.d.ts +15 -12
  88. package/dist/spawn.js +43 -31
  89. package/dist/spinner.d.ts +2 -6
  90. package/dist/spinner.js +9 -41
  91. package/dist/stdio/prompts.d.ts +8 -10
  92. package/dist/stdio/prompts.js +15 -13
  93. package/dist/streams.d.ts +0 -4
  94. package/dist/streams.js +3 -12
  95. package/dist/temporary-executor.js +4 -4
  96. package/dist/versions.js +31 -28
  97. package/package.json +28 -29
  98. package/dist/argv/quote.d.ts +0 -49
  99. package/dist/constants/paths.d.ts +0 -51
  100. package/dist/constants/paths.js +0 -152
  101. /package/dist/{packages/paths.d.ts → paths/packages.d.ts} +0 -0
  102. /package/dist/{paths.d.ts → paths/socket.d.ts} +0 -0
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /* Socket Lib - Built with esbuild */
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var manifest_exports = {};
21
31
  __export(manifest_exports, {
@@ -24,9 +34,12 @@ __export(manifest_exports, {
24
34
  fetchPackagePackument: () => fetchPackagePackument
25
35
  });
26
36
  module.exports = __toCommonJS(manifest_exports);
27
- var import_packages = require("#constants/packages");
28
- var import_process = require("#constants/process");
29
- var import_socket = require("#constants/socket");
37
+ var import_packages = require("../constants/packages");
38
+ var import_process = require("../constants/process");
39
+ var import_socket = require("../constants/socket");
40
+ var import_npm_package_arg = __toESM(require("../external/npm-package-arg"));
41
+ var import_pacote = __toESM(require("../external/pacote"));
42
+ var import_semver = __toESM(require("../external/semver"));
30
43
  var import_arrays = require("../arrays");
31
44
  var import_objects = require("../objects");
32
45
  var import_exports = require("./exports");
@@ -36,30 +49,6 @@ const packageDefaultNodeRange = (0, import_packages.getPackageDefaultNodeRange)(
36
49
  const PACKAGE_DEFAULT_SOCKET_CATEGORIES = (0, import_packages.getPackageDefaultSocketCategories)();
37
50
  const packumentCache = (0, import_packages.getPackumentCache)();
38
51
  const pkgScopePrefixRegExp = /^@socketregistry\//;
39
- let _npmPackageArg;
40
- // @__NO_SIDE_EFFECTS__
41
- function getNpmPackageArg() {
42
- if (_npmPackageArg === void 0) {
43
- _npmPackageArg = require("../external/npm-package-arg");
44
- }
45
- return _npmPackageArg;
46
- }
47
- let _pacote;
48
- // @__NO_SIDE_EFFECTS__
49
- function getPacote() {
50
- if (_pacote === void 0) {
51
- _pacote = require("../external/pacote");
52
- }
53
- return _pacote;
54
- }
55
- let _semver;
56
- // @__NO_SIDE_EFFECTS__
57
- function getSemver() {
58
- if (_semver === void 0) {
59
- _semver = require("../external/semver");
60
- }
61
- return _semver;
62
- }
63
52
  // @__NO_SIDE_EFFECTS__
64
53
  function createPackageJson(sockRegPkgName, directory, options) {
65
54
  const {
@@ -106,11 +95,10 @@ function createPackageJson(sockRegPkgName, directory, options) {
106
95
  const strKey = String(pair[0]);
107
96
  const result = [strKey, pair[1]];
108
97
  if (strKey === "node") {
109
- const semver = /* @__PURE__ */ getSemver();
110
98
  const { 1: range } = result;
111
99
  if (typeof range === "string" && range && packageDefaultNodeRange) {
112
- const coercedRange = semver.coerce(range);
113
- if (!semver.satisfies(
100
+ const coercedRange = import_semver.default.coerce(range);
101
+ if (!import_semver.default.satisfies(
114
102
  coercedRange?.version ?? "0.0.0",
115
103
  packageDefaultNodeRange
116
104
  )) {
@@ -144,18 +132,16 @@ async function fetchPackageManifest(pkgNameOrId, options) {
144
132
  if (signal?.aborted) {
145
133
  return void 0;
146
134
  }
147
- const pacote = /* @__PURE__ */ getPacote();
148
135
  let result;
149
136
  try {
150
- result = await pacote.manifest(pkgNameOrId, pacoteOptions);
137
+ result = await import_pacote.default.manifest(pkgNameOrId, pacoteOptions);
151
138
  } catch {
152
139
  }
153
140
  if (signal?.aborted) {
154
141
  return void 0;
155
142
  }
156
143
  if (result) {
157
- const npmPackageArg = /* @__PURE__ */ getNpmPackageArg();
158
- const spec = npmPackageArg(pkgNameOrId, pacoteOptions.where);
144
+ const spec = (0, import_npm_package_arg.default)(pkgNameOrId, pacoteOptions.where);
159
145
  if ((0, import_validation.isRegistryFetcherType)(spec.type)) {
160
146
  return result;
161
147
  }
@@ -171,9 +157,8 @@ async function fetchPackageManifest(pkgNameOrId, options) {
171
157
  }
172
158
  // @__NO_SIDE_EFFECTS__
173
159
  async function fetchPackagePackument(pkgNameOrId, options) {
174
- const pacote = /* @__PURE__ */ getPacote();
175
160
  try {
176
- return await pacote.packument(pkgNameOrId, {
161
+ return await import_pacote.default.packument(pkgNameOrId, {
177
162
  __proto__: null,
178
163
  signal: abortSignal,
179
164
  ...options,
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /* Socket Lib - Built with esbuild */
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var normalize_exports = {};
21
31
  __export(normalize_exports, {
@@ -25,57 +35,19 @@ __export(normalize_exports, {
25
35
  unescapeScope: () => unescapeScope
26
36
  });
27
37
  module.exports = __toCommonJS(normalize_exports);
38
+ var import_socket = require("../constants/socket");
39
+ var import_regexps = require("../regexps");
40
+ var import_normalize_package_data = __toESM(require("../external/normalize-package-data"));
28
41
  var import_objects = require("../objects");
42
+ var import_operations = require("./operations");
29
43
  const ArrayIsArray = Array.isArray;
30
44
  const ObjectHasOwn = Object.hasOwn;
31
- let _REGISTRY_SCOPE_DELIMITER;
32
- function getRegistryScopeDelimiter() {
33
- if (_REGISTRY_SCOPE_DELIMITER === void 0) {
34
- _REGISTRY_SCOPE_DELIMITER = /*@__INLINE__*/
35
- require("../constants/socket").REGISTRY_SCOPE_DELIMITER;
36
- }
37
- return _REGISTRY_SCOPE_DELIMITER;
38
- }
39
- let _SOCKET_REGISTRY_SCOPE;
40
- function getSocketRegistryScope() {
41
- if (_SOCKET_REGISTRY_SCOPE === void 0) {
42
- _SOCKET_REGISTRY_SCOPE = /*@__INLINE__*/
43
- require("../constants/socket").SOCKET_REGISTRY_SCOPE;
44
- }
45
- return _SOCKET_REGISTRY_SCOPE;
46
- }
47
- let _escapeRegExp;
48
- function getEscapeRegExp() {
49
- if (_escapeRegExp === void 0) {
50
- _escapeRegExp = require("../regexps").escapeRegExp;
51
- }
52
- return _escapeRegExp;
53
- }
54
45
  function getEscapedScopeRegExp() {
55
- const REGISTRY_SCOPE_DELIMITER = getRegistryScopeDelimiter();
56
- const escapeRegExp = getEscapeRegExp();
57
- const firstChar = REGISTRY_SCOPE_DELIMITER[0];
46
+ const firstChar = import_socket.REGISTRY_SCOPE_DELIMITER[0];
58
47
  return new RegExp(
59
- `^[^${escapeRegExp(firstChar)}]+${escapeRegExp(REGISTRY_SCOPE_DELIMITER)}(?!${escapeRegExp(firstChar)})`
48
+ `^[^${(0, import_regexps.escapeRegExp)(firstChar)}]+${(0, import_regexps.escapeRegExp)(import_socket.REGISTRY_SCOPE_DELIMITER)}(?!${(0, import_regexps.escapeRegExp)(firstChar)})`
60
49
  );
61
50
  }
62
- let _normalizePackageData;
63
- // @__NO_SIDE_EFFECTS__
64
- function getNormalizePackageData() {
65
- if (_normalizePackageData === void 0) {
66
- _normalizePackageData = require("../external/normalize-package-data");
67
- }
68
- return _normalizePackageData;
69
- }
70
- let _findPackageExtensions;
71
- // @__NO_SIDE_EFFECTS__
72
- function _getFindPackageExtensions() {
73
- if (_findPackageExtensions === void 0) {
74
- const operations = require("#packages/operations");
75
- _findPackageExtensions = operations.findPackageExtensions;
76
- }
77
- return _findPackageExtensions;
78
- }
79
51
  // @__NO_SIDE_EFFECTS__
80
52
  function normalizePackageJson(pkgJson, options) {
81
53
  const { preserve } = { __proto__: null, ...options };
@@ -93,11 +65,9 @@ function normalizePackageJson(pkgJson, options) {
93
65
  ObjectHasOwn(pkgJson, k) ? pkgJson[k] : void 0
94
66
  ]) : []
95
67
  ];
96
- const normalizePackageData = /* @__PURE__ */ getNormalizePackageData();
97
- normalizePackageData(pkgJson);
68
+ (0, import_normalize_package_data.default)(pkgJson);
98
69
  if (pkgJson.name && pkgJson.version) {
99
- const findPackageExtensions = /* @__PURE__ */ _getFindPackageExtensions();
100
- const extensions = findPackageExtensions(pkgJson.name, pkgJson.version);
70
+ const extensions = (0, import_operations.findPackageExtensions)(pkgJson.name, pkgJson.version);
101
71
  if (extensions && typeof extensions === "object") {
102
72
  (0, import_objects.merge)(pkgJson, extensions);
103
73
  }
@@ -115,15 +85,13 @@ function resolveEscapedScope(sockRegPkgName) {
115
85
  }
116
86
  // @__NO_SIDE_EFFECTS__
117
87
  function resolveOriginalPackageName(sockRegPkgName) {
118
- const SOCKET_REGISTRY_SCOPE = getSocketRegistryScope();
119
- const name = sockRegPkgName.startsWith(`${SOCKET_REGISTRY_SCOPE}/`) ? sockRegPkgName.slice(SOCKET_REGISTRY_SCOPE.length + 1) : sockRegPkgName;
88
+ const name = sockRegPkgName.startsWith(`${import_socket.SOCKET_REGISTRY_SCOPE}/`) ? sockRegPkgName.slice(import_socket.SOCKET_REGISTRY_SCOPE.length + 1) : sockRegPkgName;
120
89
  const escapedScope = /* @__PURE__ */ resolveEscapedScope(name);
121
90
  return escapedScope ? `${/* @__PURE__ */ unescapeScope(escapedScope)}/${name.slice(escapedScope.length)}` : name;
122
91
  }
123
92
  // @__NO_SIDE_EFFECTS__
124
93
  function unescapeScope(escapedScope) {
125
- const REGISTRY_SCOPE_DELIMITER = getRegistryScopeDelimiter();
126
- return `@${escapedScope.slice(0, -REGISTRY_SCOPE_DELIMITER.length)}`;
94
+ return `@${escapedScope.slice(0, -import_socket.REGISTRY_SCOPE_DELIMITER.length)}`;
127
95
  }
128
96
  // Annotate the CommonJS export names for ESM import in node:
129
97
  0 && (module.exports = {
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /* Socket Lib - Built with esbuild */
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var operations_exports = {};
21
31
  __export(operations_exports, {
@@ -30,98 +40,33 @@ __export(operations_exports, {
30
40
  resolveRegistryPackageName: () => resolveRegistryPackageName
31
41
  });
32
42
  module.exports = __toCommonJS(operations_exports);
33
- var import_packages = require("#constants/packages");
34
- var import_process = require("#constants/process");
35
- var import_socket = require("#constants/socket");
43
+ var import_packages = require("../constants/packages");
44
+ var import_process = require("../constants/process");
45
+ var import_socket = require("../constants/socket");
46
+ var import_cacache = __toESM(require("../external/cacache"));
47
+ var import_libnpmpack = __toESM(require("../external/libnpmpack"));
48
+ var import_make_fetch_happen = __toESM(require("../external/make-fetch-happen"));
49
+ var import_npm_package_arg = __toESM(require("../external/npm-package-arg"));
50
+ var import_packageurl_js = require("../external/@socketregistry/packageurl-js");
51
+ var import_pacote = __toESM(require("../external/pacote"));
52
+ var semver = __toESM(require("../external/semver"));
36
53
  var import_fs = require("../fs");
37
54
  var import_objects = require("../objects");
38
55
  var import_normalize = require("./normalize");
39
- var import_paths = require("./paths");
56
+ var import_packages2 = require("../paths/packages");
40
57
  var import_specs = require("./specs");
58
+ var import_editable = require("./editable");
41
59
  const abortSignal = (0, import_process.getAbortSignal)();
42
60
  const packageExtensions = (0, import_packages.getPackageExtensions)();
43
61
  const packumentCache = (0, import_packages.getPackumentCache)();
44
62
  const pacoteCachePath = (0, import_packages.getPacoteCachePath)();
45
- let _cacache;
46
- // @__NO_SIDE_EFFECTS__
47
- function getCacache() {
48
- if (_cacache === void 0) {
49
- _cacache = require("../external/cacache");
50
- }
51
- return _cacache;
52
- }
53
- let _fetcher;
54
- // @__NO_SIDE_EFFECTS__
55
- function getFetcher() {
56
- if (_fetcher === void 0) {
57
- const makeFetchHappen = require("../external/make-fetch-happen");
58
- _fetcher = makeFetchHappen.defaults({
59
- cachePath: pacoteCachePath,
60
- // Prefer-offline: Staleness checks for cached data will be bypassed, but
61
- // missing data will be requested from the server.
62
- // https://github.com/npm/make-fetch-happen?tab=readme-ov-file#--optscache
63
- cache: "force-cache"
64
- });
65
- }
66
- return _fetcher;
67
- }
68
- let _npmPackageArg;
69
- // @__NO_SIDE_EFFECTS__
70
- function getNpmPackageArg() {
71
- if (_npmPackageArg === void 0) {
72
- _npmPackageArg = require("../external/npm-package-arg");
73
- }
74
- return _npmPackageArg;
75
- }
76
- let _pack;
77
- // @__NO_SIDE_EFFECTS__
78
- function getPack() {
79
- if (_pack === void 0) {
80
- _pack = require("../external/libnpmpack");
81
- }
82
- return _pack;
83
- }
84
- let _PackageURL;
85
- // @__NO_SIDE_EFFECTS__
86
- function getPackageURL() {
87
- if (_PackageURL === void 0) {
88
- const packageUrlJs = require("../external/@socketregistry/packageurl-js");
89
- _PackageURL = packageUrlJs.PackageURL;
90
- }
91
- return _PackageURL;
92
- }
93
- let _pacote;
94
- // @__NO_SIDE_EFFECTS__
95
- function getPacote() {
96
- if (_pacote === void 0) {
97
- _pacote = require("../external/pacote");
98
- }
99
- return _pacote;
100
- }
101
- let _semver;
102
- // @__NO_SIDE_EFFECTS__
103
- function getSemver() {
104
- if (_semver === void 0) {
105
- _semver = require("../external/semver");
106
- }
107
- return _semver;
108
- }
109
- let _toEditablePackageJson;
110
- // @__NO_SIDE_EFFECTS__
111
- function _getToEditablePackageJson() {
112
- if (_toEditablePackageJson === void 0) {
113
- _toEditablePackageJson = require("#packages/editable").toEditablePackageJson;
114
- }
115
- return _toEditablePackageJson;
116
- }
117
- let _toEditablePackageJsonSync;
118
- // @__NO_SIDE_EFFECTS__
119
- function _getToEditablePackageJsonSync() {
120
- if (_toEditablePackageJsonSync === void 0) {
121
- _toEditablePackageJsonSync = require("#packages/editable").toEditablePackageJsonSync;
122
- }
123
- return _toEditablePackageJsonSync;
124
- }
63
+ const fetcher = import_make_fetch_happen.default.defaults({
64
+ cachePath: pacoteCachePath,
65
+ // Prefer-offline: Staleness checks for cached data will be bypassed, but
66
+ // missing data will be requested from the server.
67
+ // https://github.com/npm/make-fetch-happen?tab=readme-ov-file#--optscache
68
+ cache: "force-cache"
69
+ });
125
70
  // @__NO_SIDE_EFFECTS__
126
71
  async function extractPackage(pkgNameOrId, options, callback) {
127
72
  let actualCallback = callback;
@@ -139,19 +84,17 @@ async function extractPackage(pkgNameOrId, options, callback) {
139
84
  preferOffline: true,
140
85
  ...extractOptions_
141
86
  };
142
- const pacote = /* @__PURE__ */ getPacote();
143
87
  if (typeof dest === "string") {
144
- await pacote.extract(pkgNameOrId, dest, extractOptions);
88
+ await import_pacote.default.extract(pkgNameOrId, dest, extractOptions);
145
89
  if (typeof actualCallback === "function") {
146
90
  await actualCallback(dest);
147
91
  }
148
92
  } else {
149
- const cacache = /* @__PURE__ */ getCacache();
150
- await cacache.tmp.withTmp(
93
+ await import_cacache.default.tmp.withTmp(
151
94
  pacoteCachePath,
152
95
  { tmpPrefix },
153
96
  async (tmpDirPath) => {
154
- await pacote.extract(pkgNameOrId, tmpDirPath, extractOptions);
97
+ await import_pacote.default.extract(pkgNameOrId, tmpDirPath, extractOptions);
155
98
  if (typeof actualCallback === "function") {
156
99
  await actualCallback(tmpDirPath);
157
100
  }
@@ -168,7 +111,6 @@ function findPackageExtensions(pkgName, pkgVer) {
168
111
  const lastAtSignIndex = selector.lastIndexOf("@");
169
112
  const name = selector.slice(0, lastAtSignIndex);
170
113
  if (pkgName === name) {
171
- const semver = /* @__PURE__ */ getSemver();
172
114
  const range = selector.slice(lastAtSignIndex + 1);
173
115
  if (semver.satisfies(pkgVer, range)) {
174
116
  if (result === void 0) {
@@ -200,8 +142,7 @@ function getReleaseTag(spec) {
200
142
  }
201
143
  // @__NO_SIDE_EFFECTS__
202
144
  async function packPackage(spec, options) {
203
- const pack = /* @__PURE__ */ getPack();
204
- return await pack(spec, {
145
+ return await (0, import_libnpmpack.default)(spec, {
205
146
  __proto__: null,
206
147
  signal: abortSignal,
207
148
  ...options,
@@ -215,13 +156,12 @@ async function readPackageJson(filepath, options) {
215
156
  __proto__: null,
216
157
  ...options
217
158
  };
218
- const pkgJson = await (0, import_fs.readJson)((0, import_paths.resolvePackageJsonPath)(filepath), {
159
+ const pkgJson = await (0, import_fs.readJson)((0, import_packages2.resolvePackageJsonPath)(filepath), {
219
160
  throws
220
161
  });
221
162
  if (pkgJson) {
222
163
  if (editable) {
223
- const toEditablePackageJson = /* @__PURE__ */ _getToEditablePackageJson();
224
- return await toEditablePackageJson(pkgJson, {
164
+ return await (0, import_editable.toEditablePackageJson)(pkgJson, {
225
165
  path: filepath,
226
166
  normalize,
227
167
  ...normalizeOptions
@@ -237,11 +177,10 @@ function readPackageJsonSync(filepath, options) {
237
177
  __proto__: null,
238
178
  ...options
239
179
  };
240
- const pkgJson = (0, import_fs.readJsonSync)((0, import_paths.resolvePackageJsonPath)(filepath), { throws });
180
+ const pkgJson = (0, import_fs.readJsonSync)((0, import_packages2.resolvePackageJsonPath)(filepath), { throws });
241
181
  if (pkgJson) {
242
182
  if (editable) {
243
- const toEditablePackageJsonSync = /* @__PURE__ */ _getToEditablePackageJsonSync();
244
- return toEditablePackageJsonSync(pkgJson, {
183
+ return (0, import_editable.toEditablePackageJsonSync)(pkgJson, {
245
184
  path: filepath,
246
185
  normalize,
247
186
  ...normalizeOptions
@@ -259,8 +198,7 @@ async function resolveGitHubTgzUrl(pkgNameOrId, where) {
259
198
  return "";
260
199
  }
261
200
  const { version } = pkgJson;
262
- const npmPackageArg = /* @__PURE__ */ getNpmPackageArg();
263
- const parsedSpec = npmPackageArg(
201
+ const parsedSpec = (0, import_npm_package_arg.default)(
264
202
  pkgNameOrId,
265
203
  whereIsPkgJson ? void 0 : where
266
204
  );
@@ -276,7 +214,6 @@ async function resolveGitHubTgzUrl(pkgNameOrId, where) {
276
214
  if (isGitHubUrl) {
277
215
  apiUrl = (0, import_specs.gitHubTagRefUrl)(user, project, parsedSpec.gitCommittish || "");
278
216
  } else {
279
- const fetcher = /* @__PURE__ */ getFetcher();
280
217
  const versionStr = version;
281
218
  apiUrl = (0, import_specs.gitHubTagRefUrl)(user, project, `v${versionStr}`);
282
219
  if (!(await fetcher(apiUrl, { method: "head" })).ok) {
@@ -287,7 +224,6 @@ async function resolveGitHubTgzUrl(pkgNameOrId, where) {
287
224
  }
288
225
  }
289
226
  if (apiUrl) {
290
- const fetcher = /* @__PURE__ */ getFetcher();
291
227
  const resp = await fetcher(apiUrl);
292
228
  const json = await resp.json();
293
229
  const sha = json?.object?.sha;
@@ -305,7 +241,7 @@ function resolvePackageName(purlObj, delimiter = "/") {
305
241
  }
306
242
  // @__NO_SIDE_EFFECTS__
307
243
  function resolveRegistryPackageName(pkgName) {
308
- const purlObj = (/* @__PURE__ */ getPackageURL()).fromString(`pkg:npm/${pkgName}`);
244
+ const purlObj = import_packageurl_js.PackageURL.fromString(`pkg:npm/${pkgName}`);
309
245
  return purlObj.namespace ? `${purlObj.namespace.slice(1)}${import_socket.REGISTRY_SCOPE_DELIMITER}${purlObj.name}` : pkgName;
310
246
  }
311
247
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /* Socket Lib - Built with esbuild */
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var provenance_exports = {};
21
31
  __export(provenance_exports, {
@@ -23,7 +33,9 @@ __export(provenance_exports, {
23
33
  getProvenanceDetails: () => getProvenanceDetails
24
34
  });
25
35
  module.exports = __toCommonJS(provenance_exports);
26
- var import_agents = require("#constants/agents");
36
+ var import_agents = require("../constants/agents");
37
+ var import_packages = require("../constants/packages");
38
+ var import_make_fetch_happen = __toESM(require("../external/make-fetch-happen"));
27
39
  var import_abort = require("../abort");
28
40
  var import_url = require("../url");
29
41
  const ArrayIsArray = Array.isArray;
@@ -33,10 +45,8 @@ let _fetcher;
33
45
  // @__NO_SIDE_EFFECTS__
34
46
  function getFetcher() {
35
47
  if (_fetcher === void 0) {
36
- const makeFetchHappen = require("../external/make-fetch-happen");
37
- const { getPacoteCachePath } = require("../constants/packages");
38
- _fetcher = makeFetchHappen.defaults({
39
- cachePath: getPacoteCachePath(),
48
+ _fetcher = import_make_fetch_happen.default.defaults({
49
+ cachePath: (0, import_packages.getPacoteCachePath)(),
40
50
  // Prefer-offline: Staleness checks for cached data will be bypassed, but
41
51
  // missing data will be requested from the server.
42
52
  // https://github.com/npm/make-fetch-happen?tab=readme-ov-file#--optscache
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /* Socket Lib - Built with esbuild */
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var specs_exports = {};
21
31
  __export(specs_exports, {
@@ -26,16 +36,9 @@ __export(specs_exports, {
26
36
  isGitHubUrlSpec: () => isGitHubUrlSpec
27
37
  });
28
38
  module.exports = __toCommonJS(specs_exports);
39
+ var import_npm_package_arg = __toESM(require("../external/npm-package-arg"));
29
40
  var import_objects = require("../objects");
30
41
  var import_strings = require("../strings");
31
- let _npmPackageArg;
32
- // @__NO_SIDE_EFFECTS__
33
- function getNpmPackageArg() {
34
- if (_npmPackageArg === void 0) {
35
- _npmPackageArg = require("../external/npm-package-arg");
36
- }
37
- return _npmPackageArg;
38
- }
39
42
  // @__NO_SIDE_EFFECTS__
40
43
  function getRepoUrlDetails(repoUrl = "") {
41
44
  const userAndRepo = repoUrl.replace(/^.+github.com\//, "").split("/");
@@ -57,8 +60,7 @@ function isGitHubTgzSpec(spec, where) {
57
60
  if ((0, import_objects.isObjectObject)(spec)) {
58
61
  parsedSpec = spec;
59
62
  } else {
60
- const npmPackageArg = /* @__PURE__ */ getNpmPackageArg();
61
- parsedSpec = npmPackageArg(spec, where);
63
+ parsedSpec = (0, import_npm_package_arg.default)(spec, where);
62
64
  }
63
65
  const typedSpec = parsedSpec;
64
66
  return typedSpec.type === "remote" && !!typedSpec.saveSpec?.endsWith(".tar.gz");
@@ -69,8 +71,7 @@ function isGitHubUrlSpec(spec, where) {
69
71
  if ((0, import_objects.isObjectObject)(spec)) {
70
72
  parsedSpec = spec;
71
73
  } else {
72
- const npmPackageArg = /* @__PURE__ */ getNpmPackageArg();
73
- parsedSpec = npmPackageArg(spec, where);
74
+ parsedSpec = (0, import_npm_package_arg.default)(spec, where);
74
75
  }
75
76
  const typedSpec = parsedSpec;
76
77
  return typedSpec.type === "git" && typedSpec.hosted?.domain === "github.com" && (0, import_strings.isNonEmptyString)(typedSpec.gitCommittish);
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /* Socket Lib - Built with esbuild */
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var validation_exports = {};
21
31
  __export(validation_exports, {
@@ -24,14 +34,7 @@ __export(validation_exports, {
24
34
  isValidPackageName: () => isValidPackageName
25
35
  });
26
36
  module.exports = __toCommonJS(validation_exports);
27
- let _validateNpmPackageName;
28
- // @__NO_SIDE_EFFECTS__
29
- function getValidateNpmPackageName() {
30
- if (_validateNpmPackageName === void 0) {
31
- _validateNpmPackageName = require("../external/validate-npm-package-name");
32
- }
33
- return _validateNpmPackageName;
34
- }
37
+ var import_validate_npm_package_name = __toESM(require("../external/validate-npm-package-name"));
35
38
  // @__NO_SIDE_EFFECTS__
36
39
  function isBlessedPackageName(name) {
37
40
  return typeof name === "string" && (name === "sfw" || name === "socket" || name.startsWith("@socketoverride/") || name.startsWith("@socketregistry/") || name.startsWith("@socketsecurity/"));
@@ -42,8 +45,7 @@ function isRegistryFetcherType(type) {
42
45
  }
43
46
  // @__NO_SIDE_EFFECTS__
44
47
  function isValidPackageName(name) {
45
- const validateNpmPackageName = /* @__PURE__ */ getValidateNpmPackageName();
46
- return validateNpmPackageName(name).validForOldPackages;
48
+ return (0, import_validate_npm_package_name.default)(name).validForOldPackages;
47
49
  }
48
50
  // Annotate the CommonJS export names for ESM import in node:
49
51
  0 && (module.exports = {
@@ -2,7 +2,7 @@
2
2
  * @fileoverview Package registry management with Socket.dev specific utilities.
3
3
  * Provides npm package analysis, dependency resolution, and registry operations.
4
4
  */
5
- import type { CategoryString } from '#types';
5
+ import type { CategoryString } from './types';
6
6
  import { getEditablePackageJsonClass, pkgJsonToEditable, toEditablePackageJson, toEditablePackageJsonSync } from './packages/editable';
7
7
  import { findTypesForSubpath, getExportFilePaths, getSubpaths, isConditionalExports, isSubpathExports, resolvePackageJsonEntryExports } from './packages/exports';
8
8
  import { isolatePackage } from './packages/isolation';
@@ -10,7 +10,7 @@ import { collectIncompatibleLicenses, collectLicenseWarnings, createAstNode, cre
10
10
  import { createPackageJson, fetchPackageManifest, fetchPackagePackument } from './packages/manifest';
11
11
  import { normalizePackageJson, resolveEscapedScope, resolveOriginalPackageName, unescapeScope } from './packages/normalize';
12
12
  import { extractPackage, findPackageExtensions, getReleaseTag, packPackage, readPackageJson, readPackageJsonSync, resolveGitHubTgzUrl, resolvePackageName, resolveRegistryPackageName } from './packages/operations';
13
- import { resolvePackageJsonDirname, resolvePackageJsonPath } from './packages/paths';
13
+ import { resolvePackageJsonDirname, resolvePackageJsonPath } from './paths/packages';
14
14
  import { fetchPackageProvenance, getProvenanceDetails } from './packages/provenance';
15
15
  import { getRepoUrlDetails, gitHubTagRefUrl, gitHubTgzUrl, isGitHubTgzSpec, isGitHubUrlSpec } from './packages/specs';
16
16
  import { isBlessedPackageName, isRegistryFetcherType, isValidPackageName } from './packages/validation';