@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.
- package/CHANGELOG.md +13 -0
- package/README.md +8 -8
- package/dist/agent.js +12 -25
- package/dist/bin.d.ts +97 -40
- package/dist/bin.js +133 -138
- package/dist/cacache.d.ts +5 -2
- package/dist/cacache.js +29 -18
- package/dist/cache-with-ttl.js +1 -1
- package/dist/constants/agents.d.ts +0 -4
- package/dist/constants/agents.js +13 -4
- package/dist/constants/node.d.ts +1 -0
- package/dist/constants/node.js +2 -5
- package/dist/constants/packages.js +23 -11
- package/dist/constants/process.d.ts +1 -1
- package/dist/constants/process.js +2 -2
- package/dist/debug.js +3 -3
- package/dist/dlx-binary.js +10 -18
- package/dist/dlx-manifest.js +2 -2
- package/dist/dlx-package.js +22 -62
- package/dist/dlx.js +14 -14
- package/dist/effects/text-shimmer.js +1 -1
- package/dist/env/ci.js +2 -2
- package/dist/env/debug.js +1 -1
- package/dist/env/github.js +1 -1
- package/dist/env/home.js +1 -1
- package/dist/env/locale.js +1 -1
- package/dist/env/node-auth-token.js +1 -1
- package/dist/env/node-env.js +1 -1
- package/dist/env/npm.js +1 -1
- package/dist/env/package-manager.js +1 -1
- package/dist/env/path.js +1 -1
- package/dist/env/pre-commit.js +2 -2
- package/dist/env/rewire.d.ts +7 -7
- package/dist/env/rewire.js +1 -1
- package/dist/env/shell.js +1 -1
- package/dist/env/socket-cli-shadow.js +2 -2
- package/dist/env/socket-cli.js +2 -2
- package/dist/env/socket.js +2 -2
- package/dist/env/temp-dir.js +1 -1
- package/dist/env/term.js +1 -1
- package/dist/env/test.js +3 -3
- package/dist/env/windows.js +1 -1
- package/dist/env/xdg.js +1 -1
- package/dist/fs.js +20 -25
- package/dist/git.d.ts +6 -6
- package/dist/git.js +11 -14
- package/dist/github.js +2 -2
- package/dist/globs.js +16 -29
- package/dist/ipc.d.ts +4 -4
- package/dist/ipc.js +3 -3
- package/dist/logger.d.ts +0 -25
- package/dist/logger.js +0 -26
- package/dist/objects.js +1 -1
- package/dist/package-default-node-range.js +13 -3
- package/dist/package-extensions.d.ts +2 -1
- package/dist/package-extensions.js +12 -2
- package/dist/packages/editable.d.ts +0 -3
- package/dist/packages/editable.js +34 -24
- package/dist/packages/exports.js +1 -1
- package/dist/packages/isolation.js +33 -33
- package/dist/packages/licenses.js +20 -34
- package/dist/packages/manifest.js +21 -36
- package/dist/packages/normalize.js +20 -52
- package/dist/packages/operations.js +39 -103
- package/dist/packages/provenance.js +15 -5
- package/dist/packages/specs.js +13 -12
- package/dist/packages/validation.js +12 -10
- package/dist/packages.d.ts +2 -2
- package/dist/packages.js +3 -3
- package/dist/paths/dirnames.d.ts +13 -0
- package/dist/paths/dirnames.js +50 -0
- package/dist/paths/exts.d.ts +18 -0
- package/dist/paths/exts.js +68 -0
- package/dist/paths/filenames.d.ts +16 -0
- package/dist/paths/filenames.js +62 -0
- package/dist/paths/globs.d.ts +10 -0
- package/dist/{argv/quote.js → paths/globs.js} +21 -19
- package/dist/{path.d.ts → paths/normalize.d.ts} +41 -0
- package/dist/{path.js → paths/normalize.js} +18 -5
- package/dist/{packages/paths.js → paths/packages.js} +8 -8
- package/dist/paths/rewire.d.ts +1 -1
- package/dist/{paths.js → paths/socket.js} +31 -67
- package/dist/promises.js +2 -2
- package/dist/sea.js +2 -2
- package/dist/shadow.js +3 -3
- package/dist/sorts.js +12 -2
- package/dist/spawn.d.ts +15 -12
- package/dist/spawn.js +43 -31
- package/dist/spinner.d.ts +2 -6
- package/dist/spinner.js +9 -41
- package/dist/stdio/prompts.d.ts +8 -10
- package/dist/stdio/prompts.js +15 -13
- package/dist/streams.d.ts +0 -4
- package/dist/streams.js +3 -12
- package/dist/temporary-executor.js +4 -4
- package/dist/versions.js +31 -28
- package/package.json +28 -29
- package/dist/argv/quote.d.ts +0 -49
- package/dist/constants/paths.d.ts +0 -51
- package/dist/constants/paths.js +0 -152
- /package/dist/{packages/paths.d.ts → paths/packages.d.ts} +0 -0
- /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("
|
|
28
|
-
var import_process = require("
|
|
29
|
-
var import_socket = require("
|
|
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 =
|
|
113
|
-
if (!
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
97
|
-
normalizePackageData(pkgJson);
|
|
68
|
+
(0, import_normalize_package_data.default)(pkgJson);
|
|
98
69
|
if (pkgJson.name && pkgJson.version) {
|
|
99
|
-
const
|
|
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
|
|
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
|
-
|
|
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("
|
|
34
|
-
var import_process = require("
|
|
35
|
-
var import_socket = require("
|
|
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
|
|
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
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
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
|
|
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
|
-
|
|
150
|
-
await cacache.tmp.withTmp(
|
|
93
|
+
await import_cacache.default.tmp.withTmp(
|
|
151
94
|
pacoteCachePath,
|
|
152
95
|
{ tmpPrefix },
|
|
153
96
|
async (tmpDirPath) => {
|
|
154
|
-
await
|
|
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
|
-
|
|
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,
|
|
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
|
-
|
|
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,
|
|
180
|
+
const pkgJson = (0, import_fs.readJsonSync)((0, import_packages2.resolvePackageJsonPath)(filepath), { throws });
|
|
241
181
|
if (pkgJson) {
|
|
242
182
|
if (editable) {
|
|
243
|
-
|
|
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
|
|
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 =
|
|
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("
|
|
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
|
-
|
|
37
|
-
|
|
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
|
package/dist/packages/specs.js
CHANGED
|
@@ -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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 = {
|
package/dist/packages.d.ts
CHANGED
|
@@ -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 '
|
|
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
|
|
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';
|