socket 0.14.56 → 0.14.58
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/bin/cli.js +10 -10
- package/bin/npm-cli.js +1 -1
- package/bin/npx-cli.js +3 -1
- package/dist/constants.d.ts +20 -8
- package/dist/constants.js +58 -25
- package/dist/constants.js.map +1 -1
- package/dist/module-sync/artifact.d.ts +75 -0
- package/dist/module-sync/cli.js +1372 -1062
- package/dist/module-sync/cli.js.map +1 -1
- package/dist/module-sync/edge.d.ts +1 -1
- package/dist/module-sync/index.d.ts +5 -173
- package/dist/module-sync/node.d.ts +1 -1
- package/dist/module-sync/override-set.d.ts +37 -0
- package/dist/module-sync/shadow-bin.js +10 -8
- package/dist/module-sync/shadow-bin.js.map +1 -1
- package/dist/module-sync/{index.js → shadow-npm-inject.js} +1436 -1302
- package/dist/module-sync/shadow-npm-inject.js.map +1 -0
- package/dist/module-sync/{npm-paths.js → shadow-npm-paths.js} +4 -4
- package/dist/module-sync/shadow-npm-paths.js.map +1 -0
- package/dist/module-sync/socket-package-alert.d.ts +46 -0
- package/dist/module-sync/types.d.ts +11 -3
- package/dist/require/cli.js +1372 -1062
- package/dist/require/cli.js.map +1 -1
- package/dist/require/shadow-npm-inject.js +3 -0
- package/dist/require/shadow-npm-paths.js +3 -0
- package/package.json +13 -10
- package/dist/module-sync/index.js.map +0 -1
- package/dist/module-sync/npm-injection.js +0 -26
- package/dist/module-sync/npm-injection.js.map +0 -1
- package/dist/module-sync/npm-paths.js.map +0 -1
- package/dist/module-sync/proc-log.d.ts +0 -3
- package/dist/module-sync/reify.d.ts +0 -1020
- package/dist/require/index.js +0 -3
- package/dist/require/npm-injection.js +0 -3
- package/dist/require/npm-paths.js +0 -3
- /package/dist/module-sync/{npm-injection.d.ts → shadow-npm-inject.d.ts} +0 -0
- /package/dist/module-sync/{npm-paths.d.ts → shadow-npm-paths.d.ts} +0 -0
package/bin/cli.js
CHANGED
|
@@ -5,36 +5,36 @@ const process = require('node:process')
|
|
|
5
5
|
|
|
6
6
|
const constants = require('../dist/constants')
|
|
7
7
|
|
|
8
|
-
const {
|
|
8
|
+
const { DIST_TYPE, SOCKET_CLI_SENTRY_BUILD } = constants
|
|
9
9
|
|
|
10
10
|
if (
|
|
11
11
|
DIST_TYPE === 'require' &&
|
|
12
12
|
// Lazily access constants.ENV[SOCKET_CLI_SENTRY_BUILD].
|
|
13
13
|
!constants.ENV[SOCKET_CLI_SENTRY_BUILD]
|
|
14
14
|
) {
|
|
15
|
-
// Lazily access constants.
|
|
16
|
-
require(
|
|
15
|
+
// Lazily access constants.distCliPath.
|
|
16
|
+
require(constants.distCliPath)
|
|
17
17
|
} else {
|
|
18
|
-
const path = require('node:path')
|
|
19
|
-
const { spawn } = require('@socketsecurity/registry/lib/spawn')
|
|
20
|
-
|
|
21
18
|
process.exitCode = 1
|
|
19
|
+
const { spawn } = require('@socketsecurity/registry/lib/spawn')
|
|
22
20
|
spawn(
|
|
23
21
|
// Lazily access constants.execPath.
|
|
24
22
|
constants.execPath,
|
|
25
23
|
[
|
|
24
|
+
// Lazily access constants.nodeHardenFlags.
|
|
25
|
+
...constants.nodeHardenFlags,
|
|
26
26
|
// Lazily access constants.nodeNoWarningsFlags.
|
|
27
27
|
...constants.nodeNoWarningsFlags,
|
|
28
28
|
// Lazily access constants.ENV[SOCKET_CLI_SENTRY_BUILD].
|
|
29
29
|
...(constants.ENV[SOCKET_CLI_SENTRY_BUILD]
|
|
30
30
|
? [
|
|
31
31
|
'--require',
|
|
32
|
-
// Lazily access constants.
|
|
33
|
-
constants.
|
|
32
|
+
// Lazily access constants.distInstrumentWithSentryPath.
|
|
33
|
+
constants.distInstrumentWithSentryPath
|
|
34
34
|
]
|
|
35
35
|
: []),
|
|
36
|
-
// Lazily access constants.
|
|
37
|
-
|
|
36
|
+
// Lazily access constants.distCliPath.
|
|
37
|
+
constants.distCliPath,
|
|
38
38
|
...process.argv.slice(2)
|
|
39
39
|
],
|
|
40
40
|
{
|
package/bin/npm-cli.js
CHANGED
package/bin/npx-cli.js
CHANGED
package/dist/constants.d.ts
CHANGED
|
@@ -18,7 +18,6 @@ type ENV = Remap<RegistryEnv & Readonly<{
|
|
|
18
18
|
SOCKET_CLI_NO_API_TOKEN: boolean;
|
|
19
19
|
SOCKET_CLI_PUBLISHED_BUILD: boolean;
|
|
20
20
|
SOCKET_CLI_SENTRY_BUILD: boolean;
|
|
21
|
-
SOCKET_CLI_SHOW_BANNER: boolean;
|
|
22
21
|
SOCKET_CLI_VERSION_HASH: string;
|
|
23
22
|
}>>;
|
|
24
23
|
type IPC = Readonly<{
|
|
@@ -30,6 +29,8 @@ declare const constants: {
|
|
|
30
29
|
readonly CI: "CI";
|
|
31
30
|
readonly [kInternalsSymbol]: registryConstants.Internals;
|
|
32
31
|
readonly NODE_MODULES: "node_modules";
|
|
32
|
+
readonly NPM: "npm";
|
|
33
|
+
readonly NPX: "npx";
|
|
33
34
|
readonly PACKAGE_JSON: "package.json";
|
|
34
35
|
readonly SOCKET_SECURITY_SCOPE: "@socketsecurity";
|
|
35
36
|
readonly kInternalsSymbol: unique symbol;
|
|
@@ -60,7 +61,6 @@ declare const constants: {
|
|
|
60
61
|
readonly NODE_MODULES_GLOB_RECURSIVE: "**/node_modules";
|
|
61
62
|
readonly NODE_WORKSPACES: "node_workspaces";
|
|
62
63
|
readonly NODE_VERSION: string;
|
|
63
|
-
readonly NPM: "npm";
|
|
64
64
|
readonly OVERRIDES: "overrides";
|
|
65
65
|
readonly PACKAGE_DEFAULT_SOCKET_CATEGORIES: readonly ["cleanup"];
|
|
66
66
|
readonly PACKAGE_DEFAULT_NODE_RANGE: string;
|
|
@@ -117,6 +117,8 @@ declare const constants: {
|
|
|
117
117
|
readonly isSpinning: boolean;
|
|
118
118
|
error: (text?: string | undefined, ...extras: any[]) => any;
|
|
119
119
|
errorAndStop: (text?: string | undefined, ...extras: any[]) => any;
|
|
120
|
+
fail: (text?: string | undefined, ...extras: any[]) => any;
|
|
121
|
+
failAndStop: (text?: string | undefined, ...extras: any[]) => any;
|
|
120
122
|
getText: () => string;
|
|
121
123
|
info: (text?: string | undefined, ...extras: any[]) => any;
|
|
122
124
|
infoAndStop: (text?: string | undefined, ...extras: any[]) => any;
|
|
@@ -155,27 +157,34 @@ declare const constants: {
|
|
|
155
157
|
readonly IPC: IPC;
|
|
156
158
|
readonly LOCK_EXT: '.lock';
|
|
157
159
|
readonly MODULE_SYNC: 'module-sync';
|
|
158
|
-
readonly NPM_INJECTION: 'npm-injection';
|
|
159
160
|
readonly NPM_REGISTRY_URL: 'https://registry.npmjs.org';
|
|
160
|
-
readonly NPX: 'npx';
|
|
161
161
|
readonly PNPM: 'pnpm';
|
|
162
162
|
readonly REDACTED: '<redacted>';
|
|
163
163
|
readonly REQUIRE: 'require';
|
|
164
|
-
readonly
|
|
164
|
+
readonly SHADOW_NPM_BIN: 'shadow-bin';
|
|
165
|
+
readonly SHADOW_NPM_INJECT: 'shadow-npm-inject';
|
|
166
|
+
readonly SHADOW_NPM_PATHS: 'shadow-npm-paths';
|
|
165
167
|
readonly SOCKET: 'socket';
|
|
168
|
+
readonly SOCKET_CLI_BIN_NAME: 'socket';
|
|
169
|
+
readonly SOCKET_CLI_BIN_NAME_ALIAS: 'cli';
|
|
166
170
|
readonly SOCKET_CLI_DEBUG: 'SOCKET_CLI_DEBUG';
|
|
167
171
|
readonly SOCKET_CLI_FIX: 'SOCKET_CLI_FIX';
|
|
168
172
|
readonly SOCKET_CLI_ISSUES_URL: 'https://github.com/SocketDev/socket-cli/issues';
|
|
173
|
+
readonly SOCKET_CLI_SENTRY_BIN_NAME_ALIAS: 'cli-with-sentry';
|
|
169
174
|
readonly SOCKET_CLI_LEGACY_BUILD: 'SOCKET_CLI_LEGACY_BUILD';
|
|
170
175
|
readonly SOCKET_CLI_LEGACY_PACKAGE_NAME: '@socketsecurity/cli';
|
|
171
176
|
readonly SOCKET_CLI_NO_API_TOKEN: 'SOCKET_CLI_NO_API_TOKEN';
|
|
177
|
+
readonly SOCKET_CLI_NPM_BIN_NAME: 'socket-npm';
|
|
178
|
+
readonly SOCKET_CLI_NPX_BIN_NAME: 'socket-npx';
|
|
172
179
|
readonly SOCKET_CLI_OPTIMIZE: 'SOCKET_CLI_OPTIMIZE';
|
|
173
180
|
readonly SOCKET_CLI_PACKAGE_NAME: 'socket';
|
|
174
181
|
readonly SOCKET_CLI_PUBLISHED_BUILD: 'SOCKET_CLI_PUBLISHED_BUILD';
|
|
175
182
|
readonly SOCKET_CLI_SAFE_WRAPPER: 'SOCKET_CLI_SAFE_WRAPPER';
|
|
183
|
+
readonly SOCKET_CLI_SENTRY_BIN_NAME: 'socket-with-sentry';
|
|
176
184
|
readonly SOCKET_CLI_SENTRY_BUILD: 'SOCKET_CLI_SENTRY_BUILD';
|
|
185
|
+
readonly SOCKET_CLI_SENTRY_NPM_BIN_NAME: 'socket-npm-with-sentry';
|
|
186
|
+
readonly SOCKET_CLI_SENTRY_NPX_BIN_NAME: 'socket-npx-with-sentry';
|
|
177
187
|
readonly SOCKET_CLI_SENTRY_PACKAGE_NAME: '@socketsecurity/cli-with-sentry';
|
|
178
|
-
readonly SOCKET_CLI_SHOW_BANNER: 'SOCKET_CLI_SHOW_BANNER';
|
|
179
188
|
readonly SOCKET_CLI_VERSION_HASH: 'SOCKET_CLI_VERSION_HASH';
|
|
180
189
|
readonly VLT: 'vlt';
|
|
181
190
|
readonly WITH_SENTRY: 'with-sentry';
|
|
@@ -183,11 +192,14 @@ declare const constants: {
|
|
|
183
192
|
readonly YARN_BERRY: 'yarn/berry';
|
|
184
193
|
readonly YARN_CLASSIC: 'yarn/classic';
|
|
185
194
|
readonly bashRcPath: string;
|
|
195
|
+
readonly distCliPath: string;
|
|
196
|
+
readonly distInstrumentWithSentryPath: string;
|
|
186
197
|
readonly distPath: string;
|
|
198
|
+
readonly distShadowNpmBinPath: string;
|
|
199
|
+
readonly distShadowNpmInjectPath: string;
|
|
187
200
|
readonly homePath: string;
|
|
188
|
-
readonly instrumentWithSentryPath: string;
|
|
189
201
|
readonly nmBinPath: string;
|
|
190
|
-
readonly
|
|
202
|
+
readonly nodeHardenFlags: string[];
|
|
191
203
|
readonly rootBinPath: string;
|
|
192
204
|
readonly rootDistPath: string;
|
|
193
205
|
readonly rootPath: string;
|
package/dist/constants.js
CHANGED
|
@@ -9,6 +9,8 @@ var env = require('@socketsecurity/registry/lib/env');
|
|
|
9
9
|
|
|
10
10
|
const {
|
|
11
11
|
NODE_MODULES,
|
|
12
|
+
NPM,
|
|
13
|
+
NPX,
|
|
12
14
|
PACKAGE_JSON,
|
|
13
15
|
SOCKET_SECURITY_SCOPE,
|
|
14
16
|
kInternalsSymbol,
|
|
@@ -16,6 +18,7 @@ const {
|
|
|
16
18
|
createConstantsObject
|
|
17
19
|
}
|
|
18
20
|
} = registryConstants;
|
|
21
|
+
const SOCKET = 'socket';
|
|
19
22
|
const WITH_SENTRY = 'with-sentry';
|
|
20
23
|
const ALERT_TYPE_CRITICAL_CVE = 'criticalCVE';
|
|
21
24
|
const ALERT_TYPE_CVE = 'cve';
|
|
@@ -32,14 +35,15 @@ const DRY_RUN_LABEL = '[DryRun]';
|
|
|
32
35
|
const DRY_RUN_BAIL_TEXT = `${DRY_RUN_LABEL}: Bailing now`;
|
|
33
36
|
const LOCK_EXT = '.lock';
|
|
34
37
|
const MODULE_SYNC = 'module-sync';
|
|
35
|
-
const NPM_INJECTION = 'npm-injection';
|
|
36
38
|
const NPM_REGISTRY_URL = 'https://registry.npmjs.org';
|
|
37
|
-
const NPX = 'npx';
|
|
38
39
|
const PNPM = 'pnpm';
|
|
39
40
|
const REDACTED = '<redacted>';
|
|
40
41
|
const REQUIRE = 'require';
|
|
41
|
-
const
|
|
42
|
-
const
|
|
42
|
+
const SHADOW_NPM_BIN = 'shadow-bin';
|
|
43
|
+
const SHADOW_NPM_INJECT = 'shadow-npm-inject';
|
|
44
|
+
const SHADOW_NPM_PATHS = 'shadow-npm-paths';
|
|
45
|
+
const SOCKET_CLI_BIN_NAME = SOCKET;
|
|
46
|
+
const SOCKET_CLI_BIN_NAME_ALIAS = CLI;
|
|
43
47
|
const SOCKET_CLI_DEBUG = 'SOCKET_CLI_DEBUG';
|
|
44
48
|
const SOCKET_CLI_FIX = 'SOCKET_CLI_FIX';
|
|
45
49
|
const SOCKET_CLI_ISSUES_URL = 'https://github.com/SocketDev/socket-cli/issues';
|
|
@@ -47,12 +51,17 @@ const SOCKET_CLI_LEGACY_BUILD = 'SOCKET_CLI_LEGACY_BUILD';
|
|
|
47
51
|
const SOCKET_CLI_LEGACY_PACKAGE_NAME = `${SOCKET_SECURITY_SCOPE}/${CLI}`;
|
|
48
52
|
const SOCKET_CLI_NO_API_TOKEN = 'SOCKET_CLI_NO_API_TOKEN';
|
|
49
53
|
const SOCKET_CLI_OPTIMIZE = 'SOCKET_CLI_OPTIMIZE';
|
|
54
|
+
const SOCKET_CLI_NPM_BIN_NAME = `${SOCKET}-${NPM}`;
|
|
55
|
+
const SOCKET_CLI_NPX_BIN_NAME = `${SOCKET}-${NPX}`;
|
|
50
56
|
const SOCKET_CLI_PACKAGE_NAME = SOCKET;
|
|
51
57
|
const SOCKET_CLI_PUBLISHED_BUILD = 'SOCKET_CLI_PUBLISHED_BUILD';
|
|
52
58
|
const SOCKET_CLI_SAFE_WRAPPER = 'SOCKET_CLI_SAFE_WRAPPER';
|
|
59
|
+
const SOCKET_CLI_SENTRY_BIN_NAME = `${SOCKET_CLI_BIN_NAME}-${WITH_SENTRY}`;
|
|
60
|
+
const SOCKET_CLI_SENTRY_BIN_NAME_ALIAS = `${SOCKET_CLI_BIN_NAME_ALIAS}-${WITH_SENTRY}`;
|
|
53
61
|
const SOCKET_CLI_SENTRY_BUILD = 'SOCKET_CLI_SENTRY_BUILD';
|
|
62
|
+
const SOCKET_CLI_SENTRY_NPM_BIN_NAME = `${SOCKET_CLI_NPM_BIN_NAME}-${WITH_SENTRY}`;
|
|
63
|
+
const SOCKET_CLI_SENTRY_NPX_BIN_NAME = `${SOCKET_CLI_NPX_BIN_NAME}-${WITH_SENTRY}`;
|
|
54
64
|
const SOCKET_CLI_SENTRY_PACKAGE_NAME = `${SOCKET_CLI_LEGACY_PACKAGE_NAME}-${WITH_SENTRY}`;
|
|
55
|
-
const SOCKET_CLI_SHOW_BANNER = 'SOCKET_CLI_SHOW_BANNER';
|
|
56
65
|
const SOCKET_CLI_VERSION_HASH = 'SOCKET_CLI_VERSION_HASH';
|
|
57
66
|
const VLT = 'vlt';
|
|
58
67
|
const YARN = 'yarn';
|
|
@@ -88,29 +97,33 @@ const LAZY_ENV = () => {
|
|
|
88
97
|
// Inlined flag set to determine if this is the Sentry build.
|
|
89
98
|
// The '@rollup/plugin-replace' will replace "process.env[SOCKET_CLI_SENTRY_BUILD]".
|
|
90
99
|
[SOCKET_CLI_SENTRY_BUILD]: false,
|
|
91
|
-
// Flag set to toggle the informative ASCII art banner.
|
|
92
|
-
[SOCKET_CLI_SHOW_BANNER]: env.envAsBoolean(env$1[SOCKET_CLI_SHOW_BANNER]),
|
|
93
100
|
// Inlined flag set to determine the version hash of the build.
|
|
94
101
|
// The '@rollup/plugin-replace' will replace "process.env[SOCKET_CLI_VERSION_HASH]".
|
|
95
|
-
[SOCKET_CLI_VERSION_HASH]: "0.14.
|
|
102
|
+
[SOCKET_CLI_VERSION_HASH]: "0.14.58:f270068:754b18e7:pub"
|
|
96
103
|
});
|
|
97
104
|
};
|
|
98
105
|
const lazyBashRcPath = () =>
|
|
99
106
|
// Lazily access constants.homePath.
|
|
100
107
|
path.join(constants.homePath, '.bashrc');
|
|
108
|
+
const lazyDistCliPath = () =>
|
|
109
|
+
// Lazily access constants.distPath.
|
|
110
|
+
path.join(constants.distPath, 'cli.js');
|
|
111
|
+
const lazyDistInstrumentWithSentryPath = () =>
|
|
112
|
+
// Lazily access constants.rootDistPath.
|
|
113
|
+
path.join(constants.rootDistPath, 'instrument-with-sentry.js');
|
|
101
114
|
const lazyDistPath = () =>
|
|
102
115
|
// Lazily access constants.rootDistPath and constants.DIST_TYPE.
|
|
103
116
|
path.join(constants.rootDistPath, constants.DIST_TYPE);
|
|
117
|
+
const lazyDistShadowNpmBinPath = () =>
|
|
118
|
+
// Lazily access constants.distPath.
|
|
119
|
+
path.join(constants.distPath, `${SHADOW_NPM_BIN}.js`);
|
|
120
|
+
const lazyDistShadowNpmInjectPath = () =>
|
|
121
|
+
// Lazily access constants.distPath.
|
|
122
|
+
path.join(constants.distPath, `${SHADOW_NPM_INJECT}.js`);
|
|
104
123
|
const lazyHomePath = () => os.homedir();
|
|
105
|
-
const lazyInstrumentWithSentryPath = () =>
|
|
106
|
-
// Lazily access constants.rootDistPath.
|
|
107
|
-
path.join(constants.rootDistPath, 'instrument-with-sentry.js');
|
|
108
124
|
const lazyNmBinPath = () =>
|
|
109
125
|
// Lazily access constants.rootPath.
|
|
110
126
|
path.join(constants.rootPath, `${NODE_MODULES}/.bin`);
|
|
111
|
-
const lazyNpmInjectionPath = () =>
|
|
112
|
-
// Lazily access constants.distPath.
|
|
113
|
-
path.join(constants.distPath, `${NPM_INJECTION}.js`);
|
|
114
127
|
const lazyRootBinPath = () =>
|
|
115
128
|
// Lazily access constants.rootPath.
|
|
116
129
|
path.join(constants.rootPath, 'bin');
|
|
@@ -120,16 +133,26 @@ path.join(constants.rootPath, 'dist');
|
|
|
120
133
|
const lazyRootPath = () =>
|
|
121
134
|
// The '@rollup/plugin-replace' will replace "process.env.['VITEST']" with `false` and
|
|
122
135
|
// it will be dead code eliminated by Rollup.
|
|
123
|
-
path.
|
|
136
|
+
path.join(fs.realpathSync.native(__dirname), '..');
|
|
124
137
|
const lazyRootPkgJsonPath = () =>
|
|
125
138
|
// Lazily access constants.rootPath.
|
|
126
139
|
path.join(constants.rootPath, PACKAGE_JSON);
|
|
127
140
|
const lazyShadowBinPath = () =>
|
|
128
141
|
// Lazily access constants.rootPath.
|
|
129
|
-
path.join(constants.rootPath,
|
|
142
|
+
path.join(constants.rootPath, SHADOW_NPM_BIN);
|
|
130
143
|
const lazyZshRcPath = () =>
|
|
131
144
|
// Lazily access constants.homePath.
|
|
132
145
|
path.join(constants.homePath, '.zshrc');
|
|
146
|
+
|
|
147
|
+
// Harden Node security.
|
|
148
|
+
// https://nodejs.org/en/learn/getting-started/security-best-practices
|
|
149
|
+
const nodeHardenFlags =
|
|
150
|
+
// The '@rollup/plugin-replace' will replace "process.env[SOCKET_CLI_SENTRY_BUILD]".
|
|
151
|
+
['--disable-proto', 'delete',
|
|
152
|
+
// TODO: We can try --frozen-intrinsics once
|
|
153
|
+
// https://github.com/SBoudrias/Inquirer.js/pull/1683 is addressed.
|
|
154
|
+
// '--frozen-intrinsics',
|
|
155
|
+
'--no-deprecation'];
|
|
133
156
|
const constants = createConstantsObject({
|
|
134
157
|
ALERT_TYPE_CRITICAL_CVE,
|
|
135
158
|
ALERT_TYPE_CVE,
|
|
@@ -150,17 +173,20 @@ const constants = createConstantsObject({
|
|
|
150
173
|
ENV: undefined,
|
|
151
174
|
LOCK_EXT,
|
|
152
175
|
MODULE_SYNC,
|
|
153
|
-
NPM_INJECTION,
|
|
154
176
|
NPM_REGISTRY_URL,
|
|
155
|
-
NPX,
|
|
156
177
|
PNPM,
|
|
157
178
|
REDACTED,
|
|
158
179
|
REQUIRE,
|
|
159
|
-
|
|
180
|
+
SHADOW_NPM_BIN,
|
|
181
|
+
SHADOW_NPM_INJECT,
|
|
182
|
+
SHADOW_NPM_PATHS,
|
|
160
183
|
SOCKET,
|
|
184
|
+
SOCKET_CLI_BIN_NAME,
|
|
185
|
+
SOCKET_CLI_BIN_NAME_ALIAS,
|
|
161
186
|
SOCKET_CLI_DEBUG,
|
|
162
187
|
SOCKET_CLI_FIX,
|
|
163
188
|
SOCKET_CLI_ISSUES_URL,
|
|
189
|
+
SOCKET_CLI_SENTRY_BIN_NAME_ALIAS,
|
|
164
190
|
SOCKET_CLI_LEGACY_BUILD,
|
|
165
191
|
SOCKET_CLI_LEGACY_PACKAGE_NAME,
|
|
166
192
|
SOCKET_CLI_NO_API_TOKEN,
|
|
@@ -168,9 +194,11 @@ const constants = createConstantsObject({
|
|
|
168
194
|
SOCKET_CLI_PACKAGE_NAME,
|
|
169
195
|
SOCKET_CLI_PUBLISHED_BUILD,
|
|
170
196
|
SOCKET_CLI_SAFE_WRAPPER,
|
|
197
|
+
SOCKET_CLI_SENTRY_BIN_NAME,
|
|
171
198
|
SOCKET_CLI_SENTRY_BUILD,
|
|
199
|
+
SOCKET_CLI_SENTRY_NPM_BIN_NAME,
|
|
200
|
+
SOCKET_CLI_SENTRY_NPX_BIN_NAME,
|
|
172
201
|
SOCKET_CLI_SENTRY_PACKAGE_NAME,
|
|
173
|
-
SOCKET_CLI_SHOW_BANNER,
|
|
174
202
|
SOCKET_CLI_VERSION_HASH,
|
|
175
203
|
VLT,
|
|
176
204
|
WITH_SENTRY,
|
|
@@ -178,11 +206,14 @@ const constants = createConstantsObject({
|
|
|
178
206
|
YARN_BERRY,
|
|
179
207
|
YARN_CLASSIC,
|
|
180
208
|
bashRcPath: undefined,
|
|
209
|
+
distCliPath: undefined,
|
|
210
|
+
distInstrumentWithSentryPath: undefined,
|
|
181
211
|
distPath: undefined,
|
|
212
|
+
distShadowNpmBinPath: undefined,
|
|
213
|
+
distShadowNpmInjectPath: undefined,
|
|
182
214
|
homePath: undefined,
|
|
183
|
-
instrumentWithSentryPath: undefined,
|
|
184
215
|
nmBinPath: undefined,
|
|
185
|
-
|
|
216
|
+
nodeHardenFlags,
|
|
186
217
|
rootBinPath: undefined,
|
|
187
218
|
rootDistPath: undefined,
|
|
188
219
|
rootPath: undefined,
|
|
@@ -195,11 +226,13 @@ const constants = createConstantsObject({
|
|
|
195
226
|
DIST_TYPE: LAZY_DIST_TYPE,
|
|
196
227
|
ENV: LAZY_ENV,
|
|
197
228
|
bashRcPath: lazyBashRcPath,
|
|
229
|
+
distCliPath: lazyDistCliPath,
|
|
230
|
+
distInstrumentWithSentryPath: lazyDistInstrumentWithSentryPath,
|
|
198
231
|
distPath: lazyDistPath,
|
|
232
|
+
distShadowNpmBinPath: lazyDistShadowNpmBinPath,
|
|
233
|
+
distShadowNpmInjectPath: lazyDistShadowNpmInjectPath,
|
|
199
234
|
homePath: lazyHomePath,
|
|
200
|
-
instrumentWithSentryPath: lazyInstrumentWithSentryPath,
|
|
201
235
|
nmBinPath: lazyNmBinPath,
|
|
202
|
-
npmInjectionPath: lazyNpmInjectionPath,
|
|
203
236
|
rootBinPath: lazyRootBinPath,
|
|
204
237
|
rootDistPath: lazyRootDistPath,
|
|
205
238
|
rootPath: lazyRootPath,
|
|
@@ -223,5 +256,5 @@ const constants = createConstantsObject({
|
|
|
223
256
|
});
|
|
224
257
|
|
|
225
258
|
module.exports = constants;
|
|
226
|
-
//# debugId=
|
|
259
|
+
//# debugId=1d4867f3-08af-42ad-833a-07291c2b61b5
|
|
227
260
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../src/constants.ts"],"sourcesContent":["import { realpathSync } from 'node:fs'\nimport os from 'node:os'\nimport path from 'node:path'\nimport process from 'node:process'\n\nimport registryConstants from '@socketsecurity/registry/lib/constants'\nimport { envAsBoolean } from '@socketsecurity/registry/lib/env'\n\nimport type { Remap } from '@socketsecurity/registry/lib/objects'\n\nconst {\n NODE_MODULES,\n PACKAGE_JSON,\n SOCKET_SECURITY_SCOPE,\n kInternalsSymbol,\n [kInternalsSymbol as unknown as 'Symbol(kInternalsSymbol)']: {\n createConstantsObject\n }\n} = registryConstants\n\ntype RegistryEnv = typeof registryConstants.ENV\n\ntype RegistryInternals = (typeof registryConstants)['Symbol(kInternalsSymbol)']\n\ntype Sentry = any\n\ntype Internals = Remap<\n Omit<RegistryInternals, 'getIPC'> &\n Readonly<{\n getIPC: {\n (): Promise<IPC>\n <K extends keyof IPC | undefined>(\n key?: K | undefined\n ): Promise<K extends keyof IPC ? IPC[K] : IPC>\n }\n getSentry: () => Sentry\n setSentry(Sentry: Sentry): boolean\n }>\n>\n\ntype ENV = Remap<\n RegistryEnv &\n Readonly<{\n SOCKET_CLI_DEBUG: boolean\n SOCKET_CLI_LEGACY_BUILD: boolean\n SOCKET_CLI_NO_API_TOKEN: boolean\n SOCKET_CLI_PUBLISHED_BUILD: boolean\n SOCKET_CLI_SENTRY_BUILD: boolean\n SOCKET_CLI_SHOW_BANNER: boolean\n SOCKET_CLI_VERSION_HASH: string\n }>\n>\n\ntype IPC = Readonly<{\n SOCKET_CLI_FIX?: string | undefined\n SOCKET_CLI_OPTIMIZE?: boolean | undefined\n SOCKET_CLI_SAFE_WRAPPER?: number | undefined\n}>\n\ntype Constants = Remap<\n Omit<typeof registryConstants, 'Symbol(kInternalsSymbol)' | 'ENV' | 'IPC'> & {\n readonly 'Symbol(kInternalsSymbol)': Internals\n readonly ALERT_TYPE_CRITICAL_CVE: 'criticalCVE'\n readonly ALERT_TYPE_CVE: 'cve'\n readonly ALERT_TYPE_MEDIUM_CVE: 'mediumCVE'\n readonly ALERT_TYPE_MILD_CVE: 'mildCVE'\n readonly ALERT_TYPE_SOCKET_UPGRADE_AVAILABLE: 'socketUpgradeAvailable'\n readonly API_V0_URL: 'https://api.socket.dev/v0'\n readonly BATCH_PURL_ENDPOINT: 'https://api.socket.dev/v0/purl?alerts=true&compact=true'\n readonly BINARY_LOCK_EXT: '.lockb'\n readonly BUN: 'bun'\n readonly CLI: 'cli'\n readonly CVE_ALERT_PROPS_FIRST_PATCHED_VERSION_IDENTIFIER: 'firstPatchedVersionIdentifier'\n readonly CVE_ALERT_PROPS_VULNERABLE_VERSION_RANGE: 'vulnerableVersionRange'\n readonly ENV: ENV\n readonly DIST_TYPE: 'module-sync' | 'require'\n readonly DRY_RUN_LABEL: '[DryRun]'\n readonly DRY_RUN_BAIL_TEXT: '[DryRun] Bailing now'\n readonly IPC: IPC\n readonly LOCK_EXT: '.lock'\n readonly MODULE_SYNC: 'module-sync'\n readonly NPM_INJECTION: 'npm-injection'\n readonly NPM_REGISTRY_URL: 'https://registry.npmjs.org'\n readonly NPX: 'npx'\n readonly PNPM: 'pnpm'\n readonly REDACTED: '<redacted>'\n readonly REQUIRE: 'require'\n readonly SHADOW_BIN: 'shadow-bin'\n readonly SOCKET: 'socket'\n readonly SOCKET_CLI_DEBUG: 'SOCKET_CLI_DEBUG'\n readonly SOCKET_CLI_FIX: 'SOCKET_CLI_FIX'\n readonly SOCKET_CLI_ISSUES_URL: 'https://github.com/SocketDev/socket-cli/issues'\n readonly SOCKET_CLI_LEGACY_BUILD: 'SOCKET_CLI_LEGACY_BUILD'\n readonly SOCKET_CLI_LEGACY_PACKAGE_NAME: '@socketsecurity/cli'\n readonly SOCKET_CLI_NO_API_TOKEN: 'SOCKET_CLI_NO_API_TOKEN'\n readonly SOCKET_CLI_OPTIMIZE: 'SOCKET_CLI_OPTIMIZE'\n readonly SOCKET_CLI_PACKAGE_NAME: 'socket'\n readonly SOCKET_CLI_PUBLISHED_BUILD: 'SOCKET_CLI_PUBLISHED_BUILD'\n readonly SOCKET_CLI_SAFE_WRAPPER: 'SOCKET_CLI_SAFE_WRAPPER'\n readonly SOCKET_CLI_SENTRY_BUILD: 'SOCKET_CLI_SENTRY_BUILD'\n readonly SOCKET_CLI_SENTRY_PACKAGE_NAME: '@socketsecurity/cli-with-sentry'\n readonly SOCKET_CLI_SHOW_BANNER: 'SOCKET_CLI_SHOW_BANNER'\n readonly SOCKET_CLI_VERSION_HASH: 'SOCKET_CLI_VERSION_HASH'\n readonly VLT: 'vlt'\n readonly WITH_SENTRY: 'with-sentry'\n readonly YARN: 'yarn'\n readonly YARN_BERRY: 'yarn/berry'\n readonly YARN_CLASSIC: 'yarn/classic'\n readonly bashRcPath: string\n readonly distPath: string\n readonly homePath: string\n readonly instrumentWithSentryPath: string\n readonly nmBinPath: string\n readonly npmInjectionPath: string\n readonly rootBinPath: string\n readonly rootDistPath: string\n readonly rootPath: string\n readonly rootPkgJsonPath: string\n readonly shadowBinPath: string\n readonly zshRcPath: string\n }\n>\n\nconst WITH_SENTRY = 'with-sentry'\nconst ALERT_TYPE_CRITICAL_CVE = 'criticalCVE'\nconst ALERT_TYPE_CVE = 'cve'\nconst ALERT_TYPE_MEDIUM_CVE = 'mediumCVE'\nconst ALERT_TYPE_MILD_CVE = 'mildCVE'\nconst ALERT_TYPE_SOCKET_UPGRADE_AVAILABLE = 'socketUpgradeAvailable'\nconst API_V0_URL = 'https://api.socket.dev/v0'\nconst BINARY_LOCK_EXT = '.lockb'\nconst BUN = 'bun'\nconst CLI = 'cli'\nconst CVE_ALERT_PROPS_FIRST_PATCHED_VERSION_IDENTIFIER =\n 'firstPatchedVersionIdentifier'\nconst CVE_ALERT_PROPS_VULNERABLE_VERSION_RANGE = 'vulnerableVersionRange'\nconst DRY_RUN_LABEL = '[DryRun]'\nconst DRY_RUN_BAIL_TEXT = `${DRY_RUN_LABEL}: Bailing now`\nconst LOCK_EXT = '.lock'\nconst MODULE_SYNC = 'module-sync'\nconst NPM_INJECTION = 'npm-injection'\nconst NPM_REGISTRY_URL = 'https://registry.npmjs.org'\nconst NPX = 'npx'\nconst PNPM = 'pnpm'\nconst REDACTED = '<redacted>'\nconst REQUIRE = 'require'\nconst SHADOW_BIN = 'shadow-bin'\nconst SOCKET = 'socket'\nconst SOCKET_CLI_DEBUG = 'SOCKET_CLI_DEBUG'\nconst SOCKET_CLI_FIX = 'SOCKET_CLI_FIX'\nconst SOCKET_CLI_ISSUES_URL = 'https://github.com/SocketDev/socket-cli/issues'\nconst SOCKET_CLI_LEGACY_BUILD = 'SOCKET_CLI_LEGACY_BUILD'\nconst SOCKET_CLI_LEGACY_PACKAGE_NAME = `${SOCKET_SECURITY_SCOPE}/${CLI}`\nconst SOCKET_CLI_NO_API_TOKEN = 'SOCKET_CLI_NO_API_TOKEN'\nconst SOCKET_CLI_OPTIMIZE = 'SOCKET_CLI_OPTIMIZE'\nconst SOCKET_CLI_PACKAGE_NAME = SOCKET\nconst SOCKET_CLI_PUBLISHED_BUILD = 'SOCKET_CLI_PUBLISHED_BUILD'\nconst SOCKET_CLI_SAFE_WRAPPER = 'SOCKET_CLI_SAFE_WRAPPER'\nconst SOCKET_CLI_SENTRY_BUILD = 'SOCKET_CLI_SENTRY_BUILD'\nconst SOCKET_CLI_SENTRY_PACKAGE_NAME = `${SOCKET_CLI_LEGACY_PACKAGE_NAME}-${WITH_SENTRY}`\nconst SOCKET_CLI_SHOW_BANNER = 'SOCKET_CLI_SHOW_BANNER'\nconst SOCKET_CLI_VERSION_HASH = 'SOCKET_CLI_VERSION_HASH'\nconst VLT = 'vlt'\nconst YARN = 'yarn'\nconst YARN_BERRY = `${YARN}/berry`\nconst YARN_CLASSIC = `${YARN}/classic`\n\nlet _Sentry: any\n\nconst LAZY_BATCH_PURL_ENDPOINT = () => {\n const query = new URLSearchParams()\n query.append('alerts', 'true')\n query.append('compact', 'true')\n return `${API_V0_URL}/purl?${query}`\n}\n\nconst LAZY_DIST_TYPE = () =>\n registryConstants.SUPPORTS_NODE_REQUIRE_MODULE ? MODULE_SYNC : REQUIRE\n\nconst LAZY_ENV = () => {\n const { env } = process\n // We inline some environment values so that they CANNOT be influenced by user\n // provided environment variables.\n return Object.freeze({\n // Lazily access registryConstants.ENV.\n ...registryConstants.ENV,\n // Flag set to help debug Socket CLI.\n [SOCKET_CLI_DEBUG]: envAsBoolean(env[SOCKET_CLI_DEBUG]),\n // Inlined flag set to determine if this is the Legacy build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_LEGACY_BUILD]\".\n [SOCKET_CLI_LEGACY_BUILD]: process.env[SOCKET_CLI_LEGACY_BUILD],\n // Flag set to make the default API token `undefined`.\n [SOCKET_CLI_NO_API_TOKEN]: envAsBoolean(env[SOCKET_CLI_NO_API_TOKEN]),\n // Inlined flag set to determine if this is a published build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_PUBLISHED_BUILD]\".\n [SOCKET_CLI_PUBLISHED_BUILD]: process.env[SOCKET_CLI_PUBLISHED_BUILD],\n // Inlined flag set to determine if this is the Sentry build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_SENTRY_BUILD]\".\n [SOCKET_CLI_SENTRY_BUILD]: process.env[SOCKET_CLI_SENTRY_BUILD],\n // Flag set to toggle the informative ASCII art banner.\n [SOCKET_CLI_SHOW_BANNER]: envAsBoolean(env[SOCKET_CLI_SHOW_BANNER]),\n // Inlined flag set to determine the version hash of the build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_VERSION_HASH]\".\n [SOCKET_CLI_VERSION_HASH]: process.env[SOCKET_CLI_VERSION_HASH]\n })\n}\n\nconst lazyBashRcPath = () =>\n // Lazily access constants.homePath.\n path.join(constants.homePath, '.bashrc')\n\nconst lazyDistPath = () =>\n // Lazily access constants.rootDistPath and constants.DIST_TYPE.\n path.join(constants.rootDistPath, constants.DIST_TYPE)\n\nconst lazyHomePath = () => os.homedir()\n\nconst lazyInstrumentWithSentryPath = () =>\n // Lazily access constants.rootDistPath.\n path.join(constants.rootDistPath, 'instrument-with-sentry.js')\n\nconst lazyNmBinPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, `${NODE_MODULES}/.bin`)\n\nconst lazyNpmInjectionPath = () =>\n // Lazily access constants.distPath.\n path.join(constants.distPath, `${NPM_INJECTION}.js`)\n\nconst lazyRootBinPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, 'bin')\n\nconst lazyRootDistPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, 'dist')\n\nconst lazyRootPath = () =>\n // The '@rollup/plugin-replace' will replace \"process.env.['VITEST']\" with `false` and\n // it will be dead code eliminated by Rollup.\n path.resolve(\n realpathSync.native(__dirname),\n process.env['SOCKET_CLI_TEST_DIST_BUILD'] ? '../..' : '..'\n )\n\nconst lazyRootPkgJsonPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, PACKAGE_JSON)\n\nconst lazyShadowBinPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, SHADOW_BIN)\n\nconst lazyZshRcPath = () =>\n // Lazily access constants.homePath.\n path.join(constants.homePath, '.zshrc')\n\nconst constants = <Constants>createConstantsObject(\n {\n ALERT_TYPE_CRITICAL_CVE,\n ALERT_TYPE_CVE,\n ALERT_TYPE_MEDIUM_CVE,\n ALERT_TYPE_MILD_CVE,\n ALERT_TYPE_SOCKET_UPGRADE_AVAILABLE,\n API_V0_URL,\n // Lazily defined values are initialized as `undefined` to keep their key order.\n BATCH_PURL_ENDPOINT: undefined,\n BINARY_LOCK_EXT,\n BUN,\n CLI,\n CVE_ALERT_PROPS_FIRST_PATCHED_VERSION_IDENTIFIER,\n CVE_ALERT_PROPS_VULNERABLE_VERSION_RANGE,\n DIST_TYPE: undefined,\n DRY_RUN_LABEL,\n DRY_RUN_BAIL_TEXT,\n ENV: undefined,\n LOCK_EXT,\n MODULE_SYNC,\n NPM_INJECTION,\n NPM_REGISTRY_URL,\n NPX,\n PNPM,\n REDACTED,\n REQUIRE,\n SHADOW_BIN,\n SOCKET,\n SOCKET_CLI_DEBUG,\n SOCKET_CLI_FIX,\n SOCKET_CLI_ISSUES_URL,\n SOCKET_CLI_LEGACY_BUILD,\n SOCKET_CLI_LEGACY_PACKAGE_NAME,\n SOCKET_CLI_NO_API_TOKEN,\n SOCKET_CLI_OPTIMIZE,\n SOCKET_CLI_PACKAGE_NAME,\n SOCKET_CLI_PUBLISHED_BUILD,\n SOCKET_CLI_SAFE_WRAPPER,\n SOCKET_CLI_SENTRY_BUILD,\n SOCKET_CLI_SENTRY_PACKAGE_NAME,\n SOCKET_CLI_SHOW_BANNER,\n SOCKET_CLI_VERSION_HASH,\n VLT,\n WITH_SENTRY,\n YARN,\n YARN_BERRY,\n YARN_CLASSIC,\n bashRcPath: undefined,\n distPath: undefined,\n homePath: undefined,\n instrumentWithSentryPath: undefined,\n nmBinPath: undefined,\n npmInjectionPath: undefined,\n rootBinPath: undefined,\n rootDistPath: undefined,\n rootPath: undefined,\n rootPkgJsonPath: undefined,\n shadowBinPath: undefined,\n zshRcPath: undefined\n },\n {\n getters: {\n BATCH_PURL_ENDPOINT: LAZY_BATCH_PURL_ENDPOINT,\n DIST_TYPE: LAZY_DIST_TYPE,\n ENV: LAZY_ENV,\n bashRcPath: lazyBashRcPath,\n distPath: lazyDistPath,\n homePath: lazyHomePath,\n instrumentWithSentryPath: lazyInstrumentWithSentryPath,\n nmBinPath: lazyNmBinPath,\n npmInjectionPath: lazyNpmInjectionPath,\n rootBinPath: lazyRootBinPath,\n rootDistPath: lazyRootDistPath,\n rootPath: lazyRootPath,\n rootPkgJsonPath: lazyRootPkgJsonPath,\n shadowBinPath: lazyShadowBinPath,\n zshRcPath: lazyZshRcPath\n },\n internals: {\n getSentry() {\n return _Sentry\n },\n setSentry(Sentry: Sentry): boolean {\n if (_Sentry === undefined) {\n _Sentry = Sentry\n return true\n }\n return false\n }\n },\n mixin: registryConstants\n }\n)\n\nexport default constants\n"],"names":["createConstantsObject","query","env","path","constants","BATCH_PURL_ENDPOINT","DIST_TYPE","ENV","bashRcPath","distPath","homePath","instrumentWithSentryPath","nmBinPath","npmInjectionPath","rootBinPath","rootDistPath","rootPath","rootPkgJsonPath","shadowBinPath","zshRcPath","getters","internals","getSentry","_Sentry","mixin"],"mappings":";;;;;;;;;AAUA;;;;;AAKE;AACEA;AACF;AACF;AAyGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACE;AACAC;AACAA;AACA;AACF;AAEA;AAGA;;AACUC;AAAI;AACZ;AACA;;AAEE;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACF;AACF;AAEA;AACE;AACAC;AAEF;AACE;AACAA;AAEF;AAEA;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACA;AACAA;AAKF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEIC;;;;;;;AAQF;AACAC;;;;;;AAMAC;;;AAGAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACF;AAEEC;AACEf;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;;AAEFE;AACEC;AACE;;;;AAIEC;AACA;AACF;AACA;AACF;;AAEFC;AACF;;","debugId":"4b4d6485-6fb3-4d36-8ca0-c57c8f9dfac5"}
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../src/constants.ts"],"sourcesContent":["import { realpathSync } from 'node:fs'\nimport os from 'node:os'\nimport path from 'node:path'\nimport process from 'node:process'\n\nimport registryConstants from '@socketsecurity/registry/lib/constants'\nimport { envAsBoolean } from '@socketsecurity/registry/lib/env'\n\nimport type { Remap } from '@socketsecurity/registry/lib/objects'\n\nconst {\n NODE_MODULES,\n NPM,\n NPX,\n PACKAGE_JSON,\n SOCKET_SECURITY_SCOPE,\n kInternalsSymbol,\n [kInternalsSymbol as unknown as 'Symbol(kInternalsSymbol)']: {\n createConstantsObject\n }\n} = registryConstants\n\ntype RegistryEnv = typeof registryConstants.ENV\n\ntype RegistryInternals = (typeof registryConstants)['Symbol(kInternalsSymbol)']\n\ntype Sentry = any\n\ntype Internals = Remap<\n Omit<RegistryInternals, 'getIPC'> &\n Readonly<{\n getIPC: {\n (): Promise<IPC>\n <K extends keyof IPC | undefined>(\n key?: K | undefined\n ): Promise<K extends keyof IPC ? IPC[K] : IPC>\n }\n getSentry: () => Sentry\n setSentry(Sentry: Sentry): boolean\n }>\n>\n\ntype ENV = Remap<\n RegistryEnv &\n Readonly<{\n SOCKET_CLI_DEBUG: boolean\n SOCKET_CLI_LEGACY_BUILD: boolean\n SOCKET_CLI_NO_API_TOKEN: boolean\n SOCKET_CLI_PUBLISHED_BUILD: boolean\n SOCKET_CLI_SENTRY_BUILD: boolean\n SOCKET_CLI_VERSION_HASH: string\n }>\n>\n\ntype IPC = Readonly<{\n SOCKET_CLI_FIX?: string | undefined\n SOCKET_CLI_OPTIMIZE?: boolean | undefined\n SOCKET_CLI_SAFE_WRAPPER?: number | undefined\n}>\n\ntype Constants = Remap<\n Omit<typeof registryConstants, 'Symbol(kInternalsSymbol)' | 'ENV' | 'IPC'> & {\n readonly 'Symbol(kInternalsSymbol)': Internals\n readonly ALERT_TYPE_CRITICAL_CVE: 'criticalCVE'\n readonly ALERT_TYPE_CVE: 'cve'\n readonly ALERT_TYPE_MEDIUM_CVE: 'mediumCVE'\n readonly ALERT_TYPE_MILD_CVE: 'mildCVE'\n readonly ALERT_TYPE_SOCKET_UPGRADE_AVAILABLE: 'socketUpgradeAvailable'\n readonly API_V0_URL: 'https://api.socket.dev/v0'\n readonly BATCH_PURL_ENDPOINT: 'https://api.socket.dev/v0/purl?alerts=true&compact=true'\n readonly BINARY_LOCK_EXT: '.lockb'\n readonly BUN: 'bun'\n readonly CLI: 'cli'\n readonly CVE_ALERT_PROPS_FIRST_PATCHED_VERSION_IDENTIFIER: 'firstPatchedVersionIdentifier'\n readonly CVE_ALERT_PROPS_VULNERABLE_VERSION_RANGE: 'vulnerableVersionRange'\n readonly ENV: ENV\n readonly DIST_TYPE: 'module-sync' | 'require'\n readonly DRY_RUN_LABEL: '[DryRun]'\n readonly DRY_RUN_BAIL_TEXT: '[DryRun] Bailing now'\n readonly IPC: IPC\n readonly LOCK_EXT: '.lock'\n readonly MODULE_SYNC: 'module-sync'\n readonly NPM_REGISTRY_URL: 'https://registry.npmjs.org'\n readonly PNPM: 'pnpm'\n readonly REDACTED: '<redacted>'\n readonly REQUIRE: 'require'\n readonly SHADOW_NPM_BIN: 'shadow-bin'\n readonly SHADOW_NPM_INJECT: 'shadow-npm-inject'\n readonly SHADOW_NPM_PATHS: 'shadow-npm-paths'\n readonly SOCKET: 'socket'\n readonly SOCKET_CLI_BIN_NAME: 'socket'\n readonly SOCKET_CLI_BIN_NAME_ALIAS: 'cli'\n readonly SOCKET_CLI_DEBUG: 'SOCKET_CLI_DEBUG'\n readonly SOCKET_CLI_FIX: 'SOCKET_CLI_FIX'\n readonly SOCKET_CLI_ISSUES_URL: 'https://github.com/SocketDev/socket-cli/issues'\n readonly SOCKET_CLI_SENTRY_BIN_NAME_ALIAS: 'cli-with-sentry'\n readonly SOCKET_CLI_LEGACY_BUILD: 'SOCKET_CLI_LEGACY_BUILD'\n readonly SOCKET_CLI_LEGACY_PACKAGE_NAME: '@socketsecurity/cli'\n readonly SOCKET_CLI_NO_API_TOKEN: 'SOCKET_CLI_NO_API_TOKEN'\n readonly SOCKET_CLI_NPM_BIN_NAME: 'socket-npm'\n readonly SOCKET_CLI_NPX_BIN_NAME: 'socket-npx'\n readonly SOCKET_CLI_OPTIMIZE: 'SOCKET_CLI_OPTIMIZE'\n readonly SOCKET_CLI_PACKAGE_NAME: 'socket'\n readonly SOCKET_CLI_PUBLISHED_BUILD: 'SOCKET_CLI_PUBLISHED_BUILD'\n readonly SOCKET_CLI_SAFE_WRAPPER: 'SOCKET_CLI_SAFE_WRAPPER'\n readonly SOCKET_CLI_SENTRY_BIN_NAME: 'socket-with-sentry'\n readonly SOCKET_CLI_SENTRY_BUILD: 'SOCKET_CLI_SENTRY_BUILD'\n readonly SOCKET_CLI_SENTRY_NPM_BIN_NAME: 'socket-npm-with-sentry'\n readonly SOCKET_CLI_SENTRY_NPX_BIN_NAME: 'socket-npx-with-sentry'\n readonly SOCKET_CLI_SENTRY_PACKAGE_NAME: '@socketsecurity/cli-with-sentry'\n readonly SOCKET_CLI_VERSION_HASH: 'SOCKET_CLI_VERSION_HASH'\n readonly VLT: 'vlt'\n readonly WITH_SENTRY: 'with-sentry'\n readonly YARN: 'yarn'\n readonly YARN_BERRY: 'yarn/berry'\n readonly YARN_CLASSIC: 'yarn/classic'\n readonly bashRcPath: string\n readonly distCliPath: string\n readonly distInstrumentWithSentryPath: string\n readonly distPath: string\n readonly distShadowNpmBinPath: string\n readonly distShadowNpmInjectPath: string\n readonly homePath: string\n readonly nmBinPath: string\n readonly nodeHardenFlags: string[]\n readonly rootBinPath: string\n readonly rootDistPath: string\n readonly rootPath: string\n readonly rootPkgJsonPath: string\n readonly shadowBinPath: string\n readonly zshRcPath: string\n }\n>\n\nconst SOCKET = 'socket'\nconst WITH_SENTRY = 'with-sentry'\n\nconst ALERT_TYPE_CRITICAL_CVE = 'criticalCVE'\nconst ALERT_TYPE_CVE = 'cve'\nconst ALERT_TYPE_MEDIUM_CVE = 'mediumCVE'\nconst ALERT_TYPE_MILD_CVE = 'mildCVE'\nconst ALERT_TYPE_SOCKET_UPGRADE_AVAILABLE = 'socketUpgradeAvailable'\nconst API_V0_URL = 'https://api.socket.dev/v0'\nconst BINARY_LOCK_EXT = '.lockb'\nconst BUN = 'bun'\nconst CLI = 'cli'\nconst CVE_ALERT_PROPS_FIRST_PATCHED_VERSION_IDENTIFIER =\n 'firstPatchedVersionIdentifier'\nconst CVE_ALERT_PROPS_VULNERABLE_VERSION_RANGE = 'vulnerableVersionRange'\nconst DRY_RUN_LABEL = '[DryRun]'\nconst DRY_RUN_BAIL_TEXT = `${DRY_RUN_LABEL}: Bailing now`\nconst LOCK_EXT = '.lock'\nconst MODULE_SYNC = 'module-sync'\nconst NPM_REGISTRY_URL = 'https://registry.npmjs.org'\nconst PNPM = 'pnpm'\nconst REDACTED = '<redacted>'\nconst REQUIRE = 'require'\nconst SHADOW_NPM_BIN = 'shadow-bin'\nconst SHADOW_NPM_INJECT = 'shadow-npm-inject'\nconst SHADOW_NPM_PATHS = 'shadow-npm-paths'\nconst SOCKET_CLI_BIN_NAME = SOCKET\nconst SOCKET_CLI_BIN_NAME_ALIAS = CLI\nconst SOCKET_CLI_DEBUG = 'SOCKET_CLI_DEBUG'\nconst SOCKET_CLI_FIX = 'SOCKET_CLI_FIX'\nconst SOCKET_CLI_ISSUES_URL = 'https://github.com/SocketDev/socket-cli/issues'\nconst SOCKET_CLI_LEGACY_BUILD = 'SOCKET_CLI_LEGACY_BUILD'\nconst SOCKET_CLI_LEGACY_PACKAGE_NAME = `${SOCKET_SECURITY_SCOPE}/${CLI}`\nconst SOCKET_CLI_NO_API_TOKEN = 'SOCKET_CLI_NO_API_TOKEN'\nconst SOCKET_CLI_OPTIMIZE = 'SOCKET_CLI_OPTIMIZE'\nconst SOCKET_CLI_NPM_BIN_NAME = `${SOCKET}-${NPM}`\nconst SOCKET_CLI_NPX_BIN_NAME = `${SOCKET}-${NPX}`\nconst SOCKET_CLI_PACKAGE_NAME = SOCKET\nconst SOCKET_CLI_PUBLISHED_BUILD = 'SOCKET_CLI_PUBLISHED_BUILD'\nconst SOCKET_CLI_SAFE_WRAPPER = 'SOCKET_CLI_SAFE_WRAPPER'\nconst SOCKET_CLI_SENTRY_BIN_NAME = `${SOCKET_CLI_BIN_NAME}-${WITH_SENTRY}`\nconst SOCKET_CLI_SENTRY_BIN_NAME_ALIAS = `${SOCKET_CLI_BIN_NAME_ALIAS}-${WITH_SENTRY}`\nconst SOCKET_CLI_SENTRY_BUILD = 'SOCKET_CLI_SENTRY_BUILD'\nconst SOCKET_CLI_SENTRY_NPM_BIN_NAME = `${SOCKET_CLI_NPM_BIN_NAME}-${WITH_SENTRY}`\nconst SOCKET_CLI_SENTRY_NPX_BIN_NAME = `${SOCKET_CLI_NPX_BIN_NAME}-${WITH_SENTRY}`\nconst SOCKET_CLI_SENTRY_PACKAGE_NAME = `${SOCKET_CLI_LEGACY_PACKAGE_NAME}-${WITH_SENTRY}`\nconst SOCKET_CLI_VERSION_HASH = 'SOCKET_CLI_VERSION_HASH'\nconst VLT = 'vlt'\nconst YARN = 'yarn'\nconst YARN_BERRY = `${YARN}/berry`\nconst YARN_CLASSIC = `${YARN}/classic`\n\nlet _Sentry: any\n\nconst LAZY_BATCH_PURL_ENDPOINT = () => {\n const query = new URLSearchParams()\n query.append('alerts', 'true')\n query.append('compact', 'true')\n return `${API_V0_URL}/purl?${query}`\n}\n\nconst LAZY_DIST_TYPE = () =>\n registryConstants.SUPPORTS_NODE_REQUIRE_MODULE ? MODULE_SYNC : REQUIRE\n\nconst LAZY_ENV = () => {\n const { env } = process\n // We inline some environment values so that they CANNOT be influenced by user\n // provided environment variables.\n return Object.freeze({\n // Lazily access registryConstants.ENV.\n ...registryConstants.ENV,\n // Flag set to help debug Socket CLI.\n [SOCKET_CLI_DEBUG]: envAsBoolean(env[SOCKET_CLI_DEBUG]),\n // Inlined flag set to determine if this is the Legacy build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_LEGACY_BUILD]\".\n [SOCKET_CLI_LEGACY_BUILD]: process.env[SOCKET_CLI_LEGACY_BUILD],\n // Flag set to make the default API token `undefined`.\n [SOCKET_CLI_NO_API_TOKEN]: envAsBoolean(env[SOCKET_CLI_NO_API_TOKEN]),\n // Inlined flag set to determine if this is a published build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_PUBLISHED_BUILD]\".\n [SOCKET_CLI_PUBLISHED_BUILD]: process.env[SOCKET_CLI_PUBLISHED_BUILD],\n // Inlined flag set to determine if this is the Sentry build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_SENTRY_BUILD]\".\n [SOCKET_CLI_SENTRY_BUILD]: process.env[SOCKET_CLI_SENTRY_BUILD],\n // Inlined flag set to determine the version hash of the build.\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_VERSION_HASH]\".\n [SOCKET_CLI_VERSION_HASH]: process.env[SOCKET_CLI_VERSION_HASH]\n })\n}\n\nconst lazyBashRcPath = () =>\n // Lazily access constants.homePath.\n path.join(constants.homePath, '.bashrc')\n\nconst lazyDistCliPath = () =>\n // Lazily access constants.distPath.\n path.join(constants.distPath, 'cli.js')\n\nconst lazyDistInstrumentWithSentryPath = () =>\n // Lazily access constants.rootDistPath.\n path.join(constants.rootDistPath, 'instrument-with-sentry.js')\n\nconst lazyDistPath = () =>\n // Lazily access constants.rootDistPath and constants.DIST_TYPE.\n path.join(constants.rootDistPath, constants.DIST_TYPE)\n\nconst lazyDistShadowNpmBinPath = () =>\n // Lazily access constants.distPath.\n path.join(constants.distPath, `${SHADOW_NPM_BIN}.js`)\n\nconst lazyDistShadowNpmInjectPath = () =>\n // Lazily access constants.distPath.\n path.join(constants.distPath, `${SHADOW_NPM_INJECT}.js`)\n\nconst lazyHomePath = () => os.homedir()\n\nconst lazyNmBinPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, `${NODE_MODULES}/.bin`)\n\nconst lazyRootBinPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, 'bin')\n\nconst lazyRootDistPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, 'dist')\n\nconst lazyRootPath = () =>\n // The '@rollup/plugin-replace' will replace \"process.env.['VITEST']\" with `false` and\n // it will be dead code eliminated by Rollup.\n path.join(\n realpathSync.native(__dirname),\n process.env['SOCKET_CLI_TEST_DIST_BUILD'] ? '../..' : '..'\n )\n\nconst lazyRootPkgJsonPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, PACKAGE_JSON)\n\nconst lazyShadowBinPath = () =>\n // Lazily access constants.rootPath.\n path.join(constants.rootPath, SHADOW_NPM_BIN)\n\nconst lazyZshRcPath = () =>\n // Lazily access constants.homePath.\n path.join(constants.homePath, '.zshrc')\n\n// Harden Node security.\n// https://nodejs.org/en/learn/getting-started/security-best-practices\nconst nodeHardenFlags: string[] =\n // The '@rollup/plugin-replace' will replace \"process.env[SOCKET_CLI_SENTRY_BUILD]\".\n process.env[SOCKET_CLI_SENTRY_BUILD]\n ? []\n : [\n '--disable-proto',\n 'delete',\n // TODO: We can try --frozen-intrinsics once\n // https://github.com/SBoudrias/Inquirer.js/pull/1683 is addressed.\n // '--frozen-intrinsics',\n '--no-deprecation'\n ]\n\nconst constants = createConstantsObject(\n {\n ALERT_TYPE_CRITICAL_CVE,\n ALERT_TYPE_CVE,\n ALERT_TYPE_MEDIUM_CVE,\n ALERT_TYPE_MILD_CVE,\n ALERT_TYPE_SOCKET_UPGRADE_AVAILABLE,\n API_V0_URL,\n // Lazily defined values are initialized as `undefined` to keep their key order.\n BATCH_PURL_ENDPOINT: undefined,\n BINARY_LOCK_EXT,\n BUN,\n CLI,\n CVE_ALERT_PROPS_FIRST_PATCHED_VERSION_IDENTIFIER,\n CVE_ALERT_PROPS_VULNERABLE_VERSION_RANGE,\n DIST_TYPE: undefined,\n DRY_RUN_LABEL,\n DRY_RUN_BAIL_TEXT,\n ENV: undefined,\n LOCK_EXT,\n MODULE_SYNC,\n NPM_REGISTRY_URL,\n PNPM,\n REDACTED,\n REQUIRE,\n SHADOW_NPM_BIN,\n SHADOW_NPM_INJECT,\n SHADOW_NPM_PATHS,\n SOCKET,\n SOCKET_CLI_BIN_NAME,\n SOCKET_CLI_BIN_NAME_ALIAS,\n SOCKET_CLI_DEBUG,\n SOCKET_CLI_FIX,\n SOCKET_CLI_ISSUES_URL,\n SOCKET_CLI_SENTRY_BIN_NAME_ALIAS,\n SOCKET_CLI_LEGACY_BUILD,\n SOCKET_CLI_LEGACY_PACKAGE_NAME,\n SOCKET_CLI_NO_API_TOKEN,\n SOCKET_CLI_OPTIMIZE,\n SOCKET_CLI_PACKAGE_NAME,\n SOCKET_CLI_PUBLISHED_BUILD,\n SOCKET_CLI_SAFE_WRAPPER,\n SOCKET_CLI_SENTRY_BIN_NAME,\n SOCKET_CLI_SENTRY_BUILD,\n SOCKET_CLI_SENTRY_NPM_BIN_NAME,\n SOCKET_CLI_SENTRY_NPX_BIN_NAME,\n SOCKET_CLI_SENTRY_PACKAGE_NAME,\n SOCKET_CLI_VERSION_HASH,\n VLT,\n WITH_SENTRY,\n YARN,\n YARN_BERRY,\n YARN_CLASSIC,\n bashRcPath: undefined,\n distCliPath: undefined,\n distInstrumentWithSentryPath: undefined,\n distPath: undefined,\n distShadowNpmBinPath: undefined,\n distShadowNpmInjectPath: undefined,\n homePath: undefined,\n nmBinPath: undefined,\n nodeHardenFlags,\n rootBinPath: undefined,\n rootDistPath: undefined,\n rootPath: undefined,\n rootPkgJsonPath: undefined,\n shadowBinPath: undefined,\n zshRcPath: undefined\n },\n {\n getters: {\n BATCH_PURL_ENDPOINT: LAZY_BATCH_PURL_ENDPOINT,\n DIST_TYPE: LAZY_DIST_TYPE,\n ENV: LAZY_ENV,\n bashRcPath: lazyBashRcPath,\n distCliPath: lazyDistCliPath,\n distInstrumentWithSentryPath: lazyDistInstrumentWithSentryPath,\n distPath: lazyDistPath,\n distShadowNpmBinPath: lazyDistShadowNpmBinPath,\n distShadowNpmInjectPath: lazyDistShadowNpmInjectPath,\n homePath: lazyHomePath,\n nmBinPath: lazyNmBinPath,\n rootBinPath: lazyRootBinPath,\n rootDistPath: lazyRootDistPath,\n rootPath: lazyRootPath,\n rootPkgJsonPath: lazyRootPkgJsonPath,\n shadowBinPath: lazyShadowBinPath,\n zshRcPath: lazyZshRcPath\n },\n internals: {\n getSentry() {\n return _Sentry\n },\n setSentry(Sentry: Sentry): boolean {\n if (_Sentry === undefined) {\n _Sentry = Sentry\n return true\n }\n return false\n }\n },\n mixin: registryConstants\n }\n) as Constants\n\nexport default constants\n"],"names":["createConstantsObject","query","env","path","constants","BATCH_PURL_ENDPOINT","DIST_TYPE","ENV","bashRcPath","distCliPath","distInstrumentWithSentryPath","distPath","distShadowNpmBinPath","distShadowNpmInjectPath","homePath","nmBinPath","rootBinPath","rootDistPath","rootPath","rootPkgJsonPath","shadowBinPath","zshRcPath","getters","internals","getSentry","_Sentry","mixin"],"mappings":";;;;;;;;;AAUA;;;;;;;AAOE;AACEA;AACF;AACF;AAkHA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACE;AACAC;AACAA;AACA;AACF;AAEA;AAGA;;AACUC;AAAI;AACZ;AACA;;AAEE;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AACF;AAEA;AACE;AACAC;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AAEA;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACA;AACAA;AAKF;AACE;AACAA;AAEF;AACE;AACAA;AAEF;AACE;AACAA;;AAEF;AACA;AACA;AACE;AAGI;AAGE;AACA;AACA;AACA;AAGFC;;;;;;;AAQF;AACAC;;;;;;AAMAC;;;AAGAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;;AAEAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACF;AAEEC;AACEjB;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;AACAC;;AAEFE;AACEC;AACE;;;;AAIEC;AACA;AACF;AACA;AACF;;AAEFC;AACF;;","debugId":"1d4867f3-08af-42ad-833a-07291c2b61b5"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Remap } from '@socketsecurity/registry/lib/objects';
|
|
2
|
+
type CveAlertType = 'cve' | 'mediumCVE' | 'mildCVE' | 'criticalCVE';
|
|
3
|
+
type SocketArtifactAlert = {
|
|
4
|
+
key: string;
|
|
5
|
+
type: string;
|
|
6
|
+
severity: string;
|
|
7
|
+
category: string;
|
|
8
|
+
action?: string | undefined;
|
|
9
|
+
actionPolicyIndex?: number | undefined;
|
|
10
|
+
file?: string | undefined;
|
|
11
|
+
props?: any | undefined;
|
|
12
|
+
start?: number | undefined;
|
|
13
|
+
end?: number | undefined;
|
|
14
|
+
};
|
|
15
|
+
type SocketArtifact = {
|
|
16
|
+
type: string;
|
|
17
|
+
name: string;
|
|
18
|
+
namespace?: string | undefined;
|
|
19
|
+
version?: string | undefined;
|
|
20
|
+
subpath?: string | undefined;
|
|
21
|
+
release?: string | undefined;
|
|
22
|
+
id?: string | undefined;
|
|
23
|
+
author?: string[];
|
|
24
|
+
license?: string | undefined;
|
|
25
|
+
licenseDetails?: Array<{
|
|
26
|
+
spdxDisj: string;
|
|
27
|
+
provenance: string;
|
|
28
|
+
filepath: string;
|
|
29
|
+
match_strength: number;
|
|
30
|
+
}>;
|
|
31
|
+
licenseAttrib?: Array<{
|
|
32
|
+
attribText: string;
|
|
33
|
+
attribData: Array<{
|
|
34
|
+
purl: string;
|
|
35
|
+
foundInFilepath: string;
|
|
36
|
+
spdxExpr: string;
|
|
37
|
+
foundAuthors: string[];
|
|
38
|
+
}>;
|
|
39
|
+
}>;
|
|
40
|
+
score?: {
|
|
41
|
+
supplyChain: number;
|
|
42
|
+
quality: number;
|
|
43
|
+
maintenance: number;
|
|
44
|
+
vulnerability: number;
|
|
45
|
+
license: number;
|
|
46
|
+
overall: number;
|
|
47
|
+
};
|
|
48
|
+
alerts?: SocketArtifactAlert[];
|
|
49
|
+
size?: number | undefined;
|
|
50
|
+
batchIndex?: number | undefined;
|
|
51
|
+
};
|
|
52
|
+
type CompactSocketArtifactAlert = Remap<Omit<SocketArtifactAlert, 'action' | 'actionPolicyIndex' | 'category' | 'end' | 'file' | 'start'>>;
|
|
53
|
+
type CompactSocketArtifact = Remap<Omit<SocketArtifact, 'alerts' | 'batchIndex' | 'size'> & {
|
|
54
|
+
alerts: CompactSocketArtifactAlert[];
|
|
55
|
+
}>;
|
|
56
|
+
type ArtifactAlertCve = Remap<Omit<CompactSocketArtifactAlert, 'type'> & {
|
|
57
|
+
type: CveAlertType;
|
|
58
|
+
}>;
|
|
59
|
+
type ArtifactAlertCveFixable = Remap<Omit<CompactSocketArtifactAlert, 'props'> & {
|
|
60
|
+
type: CveAlertType;
|
|
61
|
+
props: {
|
|
62
|
+
firstPatchedVersionIdentifier: string;
|
|
63
|
+
vulnerableVersionRange: string;
|
|
64
|
+
[key: string]: any;
|
|
65
|
+
};
|
|
66
|
+
}>;
|
|
67
|
+
type ArtifactAlertUpgrade = Remap<Omit<CompactSocketArtifactAlert, 'type'> & {
|
|
68
|
+
type: 'socketUpgradeAvailable';
|
|
69
|
+
}>;
|
|
70
|
+
declare function batchScan(pkgIds: string[], concurrencyLimit?: number): AsyncGenerator<CompactSocketArtifact>;
|
|
71
|
+
declare function isArtifactAlertCve(alert: CompactSocketArtifactAlert): alert is ArtifactAlertCve;
|
|
72
|
+
declare function isArtifactAlertCveFixable(alert: CompactSocketArtifactAlert): alert is ArtifactAlertCveFixable;
|
|
73
|
+
declare function isArtifactAlertUpgrade(alert: CompactSocketArtifactAlert): alert is ArtifactAlertUpgrade;
|
|
74
|
+
declare function isArtifactAlertFixable(alert: CompactSocketArtifactAlert): alert is ArtifactAlertCveFixable | ArtifactAlertUpgrade;
|
|
75
|
+
export { CveAlertType, SocketArtifactAlert, SocketArtifact, CompactSocketArtifactAlert, CompactSocketArtifact, ArtifactAlertCve, ArtifactAlertCveFixable, ArtifactAlertUpgrade, batchScan, isArtifactAlertCve, isArtifactAlertCveFixable, isArtifactAlertUpgrade, isArtifactAlertFixable };
|