| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775 | 
							- exports.id = 974;
 
- exports.ids = [974];
 
- exports.modules = {
 
- /***/ 62148:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- var readline = __webpack_require__(51058);
 
- var defaultSpinnerString = 0;
 
- var defaultSpinnerDelay = 60;
 
- function defaultOnTick(msg) {
 
-   this.clearLine(this.stream);
 
-   this.stream.write(msg);
 
- };
 
- var Spinner = function(options){
 
-   if(!(this instanceof Spinner)) return new Spinner(options)
 
-   if(typeof options === "string"){
 
-     options = { text: options };
 
-   } else if(!options){
 
-     options = {};
 
-   }
 
-   this.text = options.text || '';
 
-   this.setSpinnerString(defaultSpinnerString);
 
-   this.setSpinnerDelay(defaultSpinnerDelay);
 
-   this.onTick = options.onTick || defaultOnTick;
 
-   this.stream = options.stream || process.stdout;
 
- };
 
- Spinner.spinners = __webpack_require__(18138);
 
- Spinner.setDefaultSpinnerString = function(value) {
 
-   defaultSpinnerString = value;
 
-   return this;
 
- };
 
- Spinner.setDefaultSpinnerDelay = function(value) {
 
-   defaultSpinnerDelay = value;
 
-   return this;
 
- };
 
- Spinner.prototype.start = function() {
 
-   if(this.stream === process.stdout && this.stream.isTTY !== true) {
 
-     return this;
 
-   }
 
-   var current = 0;
 
-   var self = this;
 
-   var iteration = function() {
 
-     var msg = self.text.indexOf('%s') > -1
 
-       ? self.text.replace('%s', self.chars[current])
 
-       : self.chars[current] + ' ' + self.text;
 
-     self.onTick(msg);
 
-     current = ++current % self.chars.length;
 
-   };
 
-   iteration();
 
-   this.id = setInterval(iteration, this.delay);
 
-   return this;
 
- };
 
- Spinner.prototype.isSpinning = function() {
 
-   return this.id !== undefined;
 
- }
 
- Spinner.prototype.setSpinnerDelay = function(n) {
 
-   this.delay = n;
 
-   return this;
 
- };
 
- Spinner.prototype.setSpinnerString = function(str) {
 
-   const map = mapToSpinner(str, this.spinners);
 
-   this.chars = Array.isArray(map) ? map : map.split('');
 
-   return this;
 
- };
 
- Spinner.prototype.setSpinnerTitle = function(str) {
 
-   this.text = str;
 
-   return this;
 
- }
 
- Spinner.prototype.stop = function(clear) {
 
-   if(this.isSpinning === false) {
 
-     return this;
 
-   }
 
-   clearInterval(this.id);
 
-   this.id = undefined;
 
-   if (clear) {
 
-     this.clearLine(this.stream);
 
-   }
 
-   return this;
 
- };
 
- Spinner.prototype.clearLine = function(stream) {
 
-   readline.clearLine(stream, 0);
 
-   readline.cursorTo(stream, 0);
 
-   return this;
 
- }
 
- // Helpers
 
- function isInt(value) {
 
-   return (typeof value==='number' && (value%1)===0);
 
- }
 
- function mapToSpinner(value, spinners) {
 
-   // Not an integer, return as strng
 
-   if (!isInt(value)) {
 
-     return value + '';
 
-   }
 
-   var length = Spinner.spinners.length;
 
-   // Check if index is within bounds
 
-   value = (value >= length) ? 0 : value;
 
-   // If negative, count from the end
 
-   value = (value < 0) ? length + value : value;
 
-   return Spinner.spinners[value];
 
- }
 
- exports.Spinner = Spinner;
 
- /***/ }),
 
- /***/ 41595:
 
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 
- "use strict";
 
- const fs = __webpack_require__(35747);
 
- let isDocker;
 
- function hasDockerEnv() {
 
- 	try {
 
- 		fs.statSync('/.dockerenv');
 
- 		return true;
 
- 	} catch (_) {
 
- 		return false;
 
- 	}
 
- }
 
- function hasDockerCGroup() {
 
- 	try {
 
- 		return fs.readFileSync('/proc/self/cgroup', 'utf8').includes('docker');
 
- 	} catch (_) {
 
- 		return false;
 
- 	}
 
- }
 
- module.exports = () => {
 
- 	if (isDocker === undefined) {
 
- 		isDocker = hasDockerEnv() || hasDockerCGroup();
 
- 	}
 
- 	return isDocker;
 
- };
 
- /***/ }),
 
- /***/ 82818:
 
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 
- "use strict";
 
- const os = __webpack_require__(12087);
 
- const fs = __webpack_require__(35747);
 
- const isDocker = __webpack_require__(41595);
 
- const isWsl = () => {
 
- 	if (process.platform !== 'linux') {
 
- 		return false;
 
- 	}
 
- 	if (os.release().toLowerCase().includes('microsoft')) {
 
- 		if (isDocker()) {
 
- 			return false;
 
- 		}
 
- 		return true;
 
- 	}
 
- 	try {
 
- 		return fs.readFileSync('/proc/version', 'utf8').toLowerCase().includes('microsoft') ?
 
- 			!isDocker() : false;
 
- 	} catch (_) {
 
- 		return false;
 
- 	}
 
- };
 
- if (process.env.__IS_WSL_TEST__) {
 
- 	module.exports = isWsl;
 
- } else {
 
- 	module.exports = isWsl();
 
- }
 
- /***/ }),
 
- /***/ 78318:
 
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 
- "use strict";
 
- const {promisify} = __webpack_require__(31669);
 
- const path = __webpack_require__(85622);
 
- const childProcess = __webpack_require__(63129);
 
- const fs = __webpack_require__(35747);
 
- const isWsl = __webpack_require__(82818);
 
- const isDocker = __webpack_require__(41595);
 
- const pAccess = promisify(fs.access);
 
- const pReadFile = promisify(fs.readFile);
 
- // Path to included `xdg-open`.
 
- const localXdgOpenPath = path.join(__dirname, 'xdg-open');
 
- /**
 
- Get the mount point for fixed drives in WSL.
 
- @inner
 
- @returns {string} The mount point.
 
- */
 
- const getWslDrivesMountPoint = (() => {
 
- 	// Default value for "root" param
 
- 	// according to https://docs.microsoft.com/en-us/windows/wsl/wsl-config
 
- 	const defaultMountPoint = '/mnt/';
 
- 	let mountPoint;
 
- 	return async function () {
 
- 		if (mountPoint) {
 
- 			// Return memoized mount point value
 
- 			return mountPoint;
 
- 		}
 
- 		const configFilePath = '/etc/wsl.conf';
 
- 		let isConfigFileExists = false;
 
- 		try {
 
- 			await pAccess(configFilePath, fs.constants.F_OK);
 
- 			isConfigFileExists = true;
 
- 		} catch (_) {}
 
- 		if (!isConfigFileExists) {
 
- 			return defaultMountPoint;
 
- 		}
 
- 		const configContent = await pReadFile(configFilePath, {encoding: 'utf8'});
 
- 		const configMountPoint = /root\s*=\s*(.*)/g.exec(configContent);
 
- 		if (!configMountPoint) {
 
- 			return defaultMountPoint;
 
- 		}
 
- 		mountPoint = configMountPoint[1].trim();
 
- 		mountPoint = mountPoint.endsWith('/') ? mountPoint : mountPoint + '/';
 
- 		return mountPoint;
 
- 	};
 
- })();
 
- module.exports = async (target, options) => {
 
- 	if (typeof target !== 'string') {
 
- 		throw new TypeError('Expected a `target`');
 
- 	}
 
- 	options = {
 
- 		wait: false,
 
- 		background: false,
 
- 		allowNonzeroExitCode: false,
 
- 		...options
 
- 	};
 
- 	let command;
 
- 	let {app} = options;
 
- 	let appArguments = [];
 
- 	const cliArguments = [];
 
- 	const childProcessOptions = {};
 
- 	if (Array.isArray(app)) {
 
- 		appArguments = app.slice(1);
 
- 		app = app[0];
 
- 	}
 
- 	if (process.platform === 'darwin') {
 
- 		command = 'open';
 
- 		if (options.wait) {
 
- 			cliArguments.push('--wait-apps');
 
- 		}
 
- 		if (options.background) {
 
- 			cliArguments.push('--background');
 
- 		}
 
- 		if (app) {
 
- 			cliArguments.push('-a', app);
 
- 		}
 
- 	} else if (process.platform === 'win32' || (isWsl && !isDocker())) {
 
- 		const mountPoint = await getWslDrivesMountPoint();
 
- 		command = isWsl ?
 
- 			`${mountPoint}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe` :
 
- 			`${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`;
 
- 		cliArguments.push(
 
- 			'-NoProfile',
 
- 			'-NonInteractive',
 
- 			'–ExecutionPolicy',
 
- 			'Bypass',
 
- 			'-EncodedCommand'
 
- 		);
 
- 		if (!isWsl) {
 
- 			childProcessOptions.windowsVerbatimArguments = true;
 
- 		}
 
- 		const encodedArguments = ['Start'];
 
- 		if (options.wait) {
 
- 			encodedArguments.push('-Wait');
 
- 		}
 
- 		if (app) {
 
- 			// Double quote with double quotes to ensure the inner quotes are passed through.
 
- 			// Inner quotes are delimited for PowerShell interpretation with backticks.
 
- 			encodedArguments.push(`"\`"${app}\`""`, '-ArgumentList');
 
- 			appArguments.unshift(target);
 
- 		} else {
 
- 			encodedArguments.push(`"${target}"`);
 
- 		}
 
- 		if (appArguments.length > 0) {
 
- 			appArguments = appArguments.map(arg => `"\`"${arg}\`""`);
 
- 			encodedArguments.push(appArguments.join(','));
 
- 		}
 
- 		// Using Base64-encoded command, accepted by PowerShell, to allow special characters.
 
- 		target = Buffer.from(encodedArguments.join(' '), 'utf16le').toString('base64');
 
- 	} else {
 
- 		if (app) {
 
- 			command = app;
 
- 		} else {
 
- 			// When bundled by Webpack, there's no actual package file path and no local `xdg-open`.
 
- 			const isBundled = !__dirname || __dirname === '/';
 
- 			// Check if local `xdg-open` exists and is executable.
 
- 			let exeLocalXdgOpen = false;
 
- 			try {
 
- 				await pAccess(localXdgOpenPath, fs.constants.X_OK);
 
- 				exeLocalXdgOpen = true;
 
- 			} catch (_) {}
 
- 			const useSystemXdgOpen = process.versions.electron ||
 
- 				process.platform === 'android' || isBundled || !exeLocalXdgOpen;
 
- 			command = useSystemXdgOpen ? 'xdg-open' : localXdgOpenPath;
 
- 		}
 
- 		if (appArguments.length > 0) {
 
- 			cliArguments.push(...appArguments);
 
- 		}
 
- 		if (!options.wait) {
 
- 			// `xdg-open` will block the process unless stdio is ignored
 
- 			// and it's detached from the parent even if it's unref'd.
 
- 			childProcessOptions.stdio = 'ignore';
 
- 			childProcessOptions.detached = true;
 
- 		}
 
- 	}
 
- 	cliArguments.push(target);
 
- 	if (process.platform === 'darwin' && appArguments.length > 0) {
 
- 		cliArguments.push('--args', ...appArguments);
 
- 	}
 
- 	const subprocess = childProcess.spawn(command, cliArguments, childProcessOptions);
 
- 	if (options.wait) {
 
- 		return new Promise((resolve, reject) => {
 
- 			subprocess.once('error', reject);
 
- 			subprocess.once('close', exitCode => {
 
- 				if (options.allowNonzeroExitCode && exitCode > 0) {
 
- 					reject(new Error(`Exited with code ${exitCode}`));
 
- 					return;
 
- 				}
 
- 				resolve(subprocess);
 
- 			});
 
- 		});
 
- 	}
 
- 	subprocess.unref();
 
- 	return subprocess;
 
- };
 
- /***/ }),
 
- /***/ 27974:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- "use strict";
 
- Object.defineProperty(exports, "__esModule", ({ value: true }));
 
- const open = __webpack_require__(78318);
 
- const uuid_1 = __webpack_require__(42277);
 
- const Debug = __webpack_require__(15158);
 
- const cli_spinner_1 = __webpack_require__(62148);
 
- const snyk = __webpack_require__(9146);
 
- const is_authed_1 = __webpack_require__(71771);
 
- const is_ci_1 = __webpack_require__(10090);
 
- const is_docker_1 = __webpack_require__(14953);
 
- const args_1 = __webpack_require__(94765);
 
- const config_1 = __webpack_require__(25425);
 
- const request_1 = __webpack_require__(52050);
 
- const errors_1 = __webpack_require__(55191);
 
- const errors_2 = __webpack_require__(55191);
 
- const token_expired_error_1 = __webpack_require__(79578);
 
- const misconfigured_auth_in_ci_error_1 = __webpack_require__(27747);
 
- const query_strings_1 = __webpack_require__(36479);
 
- const apiUrl = new URL(config_1.default.API);
 
- // Ensure user gets redirected to the login page
 
- if (apiUrl.host.startsWith('api.')) {
 
-     apiUrl.host = apiUrl.host.replace(/^api\./, 'app.');
 
- }
 
- const debug = Debug('snyk-auth');
 
- let attemptsLeft = 0;
 
- function resetAttempts() {
 
-     attemptsLeft = is_docker_1.isDocker() ? 60 : 3 * 60;
 
- }
 
- async function webAuth() {
 
-     const token = uuid_1.v4(); // generate a random key
 
-     apiUrl.pathname = '/login';
 
-     apiUrl.searchParams.append('token', token);
 
-     let urlStr = apiUrl.toString();
 
-     // It's not optimal, but I have to parse args again here. Alternative is reworking everything about how we parse args
 
-     const args = [args_1.args(process.argv).options];
 
-     const utmParams = query_strings_1.getQueryParamsAsString(args);
 
-     if (utmParams) {
 
-         urlStr += '&' + utmParams;
 
-     }
 
-     // suppress this message in CI
 
-     if (!is_ci_1.isCI()) {
 
-         console.log(browserAuthPrompt(is_docker_1.isDocker(), urlStr));
 
-     }
 
-     else {
 
-         return Promise.reject(misconfigured_auth_in_ci_error_1.MisconfiguredAuthInCI());
 
-     }
 
-     const spinner = new cli_spinner_1.Spinner('Waiting...');
 
-     spinner.setSpinnerString('|/-\\');
 
-     const ipFamily = await getIpFamily();
 
-     try {
 
-         spinner.start();
 
-         if (!is_docker_1.isDocker()) {
 
-             await setTimeout(() => {
 
-                 open(urlStr);
 
-             }, 0);
 
-         }
 
-         return await testAuthComplete(token, ipFamily);
 
-     }
 
-     finally {
 
-         spinner.stop(true);
 
-     }
 
- }
 
- async function testAuthComplete(token, ipFamily) {
 
-     const payload = {
 
-         body: {
 
-             token,
 
-         },
 
-         url: config_1.default.API + '/verify/callback',
 
-         json: true,
 
-         method: 'post',
 
-     };
 
-     if (ipFamily) {
 
-         payload.family = ipFamily;
 
-     }
 
-     return new Promise((resolve, reject) => {
 
-         debug(payload);
 
-         request_1.makeRequest(payload, (error, res, body) => {
 
-             debug(error, (res || {}).statusCode, body);
 
-             if (error) {
 
-                 return reject(error);
 
-             }
 
-             if (res.statusCode !== 200) {
 
-                 return reject(errorForFailedAuthAttempt(res, body));
 
-             }
 
-             // we have success
 
-             if (body.api) {
 
-                 return resolve({
 
-                     res,
 
-                     body,
 
-                 });
 
-             }
 
-             // we need to wait and poll again in a moment
 
-             setTimeout(() => {
 
-                 attemptsLeft--;
 
-                 if (attemptsLeft > 0) {
 
-                     return resolve(testAuthComplete(token, ipFamily));
 
-                 }
 
-                 reject(token_expired_error_1.TokenExpiredError());
 
-             }, 1000);
 
-         });
 
-     });
 
- }
 
- async function auth(apiToken) {
 
-     let promise;
 
-     resetAttempts();
 
-     if (apiToken) {
 
-         // user is manually setting the API token on the CLI - let's trust them
 
-         promise = is_authed_1.verifyAPI(apiToken);
 
-     }
 
-     else {
 
-         promise = webAuth();
 
-     }
 
-     return promise.then((data) => {
 
-         const res = data.res;
 
-         const body = res.body;
 
-         debug(body);
 
-         if (res.statusCode === 200 || res.statusCode === 201) {
 
-             snyk.config.set('api', body.api);
 
-             return ('\nYour account has been authenticated. Snyk is now ready to ' +
 
-                 'be used.\n');
 
-         }
 
-         throw errorForFailedAuthAttempt(res, body);
 
-     });
 
- }
 
- exports.default = auth;
 
- /**
 
-  * Resolve an appropriate error for a failed attempt to authenticate
 
-  *
 
-  * @param res The response from the API
 
-  * @param body The body of the failed authentication request
 
-  */
 
- function errorForFailedAuthAttempt(res, body) {
 
-     if (res.statusCode === 401 || res.statusCode === 403) {
 
-         return errors_2.AuthFailedError(body.userMessage, res.statusCode);
 
-     }
 
-     else {
 
-         const userMessage = body && body.userMessage;
 
-         const error = new errors_1.CustomError(userMessage || 'Auth request failed');
 
-         if (userMessage) {
 
-             error.userMessage = userMessage;
 
-         }
 
-         error.code = res.statusCode;
 
-         return error;
 
-     }
 
- }
 
- async function getIpFamily() {
 
-     const family = 6;
 
-     try {
 
-         // Dispatch a FORCED IPv6 request to test client's ISP and network capability
 
-         await request_1.makeRequest({
 
-             url: config_1.default.API + '/verify/callback',
 
-             family,
 
-             method: 'post',
 
-         });
 
-         return family;
 
-     }
 
-     catch (e) {
 
-         return undefined;
 
-     }
 
- }
 
- function browserAuthPrompt(isDocker, urlStr) {
 
-     if (isDocker) {
 
-         return ('\nTo authenticate your account, open the below URL in your browser.\n' +
 
-             'After your authentication is complete, return to this prompt to ' +
 
-             'start using Snyk.\n\n' +
 
-             urlStr +
 
-             '\n');
 
-     }
 
-     else {
 
-         return ('\nNow redirecting you to our auth page, go ahead and log in,\n' +
 
-             "and once the auth is complete, return to this prompt and you'll\n" +
 
-             "be ready to start using snyk.\n\nIf you can't wait use this url:\n" +
 
-             urlStr +
 
-             '\n');
 
-     }
 
- }
 
- /***/ }),
 
- /***/ 71771:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- "use strict";
 
- Object.defineProperty(exports, "__esModule", ({ value: true }));
 
- exports.verifyAPI = exports.isAuthed = void 0;
 
- const snyk = __webpack_require__(9146);
 
- const config_1 = __webpack_require__(25425);
 
- const request_1 = __webpack_require__(52050);
 
- function isAuthed() {
 
-     const token = snyk.config.get('api');
 
-     return verifyAPI(token).then((res) => {
 
-         return res.body.ok;
 
-     });
 
- }
 
- exports.isAuthed = isAuthed;
 
- function verifyAPI(api) {
 
-     const payload = {
 
-         body: {
 
-             api,
 
-         },
 
-         method: 'POST',
 
-         url: config_1.default.API + '/verify/token',
 
-         json: true,
 
-     };
 
-     return new Promise((resolve, reject) => {
 
-         request_1.makeRequest(payload, (error, res, body) => {
 
-             if (error) {
 
-                 return reject(error);
 
-             }
 
-             resolve({
 
-                 res,
 
-                 body,
 
-             });
 
-         });
 
-     });
 
- }
 
- exports.verifyAPI = verifyAPI;
 
- /***/ }),
 
- /***/ 27747:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- "use strict";
 
- Object.defineProperty(exports, "__esModule", ({ value: true }));
 
- exports.MisconfiguredAuthInCI = void 0;
 
- const custom_error_1 = __webpack_require__(17188);
 
- function MisconfiguredAuthInCI() {
 
-     const errorMsg = 'Snyk is missing auth token in order to run inside CI. You must include ' +
 
-         'your API token as an environment value: `SNYK_TOKEN=12345678`';
 
-     const error = new custom_error_1.CustomError(errorMsg);
 
-     error.code = 401;
 
-     error.strCode = 'noAuthInCI';
 
-     error.userMessage = errorMsg;
 
-     return error;
 
- }
 
- exports.MisconfiguredAuthInCI = MisconfiguredAuthInCI;
 
- /***/ }),
 
- /***/ 79578:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- "use strict";
 
- Object.defineProperty(exports, "__esModule", ({ value: true }));
 
- exports.TokenExpiredError = void 0;
 
- const custom_error_1 = __webpack_require__(17188);
 
- function TokenExpiredError() {
 
-     const errorMsg = 'Sorry, but your authentication token has now' +
 
-         ' expired.\nPlease try to authenticate again.';
 
-     const error = new custom_error_1.CustomError(errorMsg);
 
-     error.code = 401;
 
-     error.strCode = 'AUTH_TIMEOUT';
 
-     error.userMessage = errorMsg;
 
-     return error;
 
- }
 
- exports.TokenExpiredError = TokenExpiredError;
 
- /***/ }),
 
- /***/ 14953:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- "use strict";
 
- Object.defineProperty(exports, "__esModule", ({ value: true }));
 
- exports.isDocker = void 0;
 
- const fs = __webpack_require__(35747);
 
- function isDocker() {
 
-     return hasDockerEnv() || hasDockerCGroup();
 
- }
 
- exports.isDocker = isDocker;
 
- function hasDockerEnv() {
 
-     try {
 
-         fs.statSync('/.dockerenv');
 
-         return true;
 
-     }
 
-     catch (_) {
 
-         return false;
 
-     }
 
- }
 
- function hasDockerCGroup() {
 
-     try {
 
-         return fs.readFileSync('/proc/self/cgroup', 'utf8').includes('docker');
 
-     }
 
-     catch (_) {
 
-         return false;
 
-     }
 
- }
 
- /***/ }),
 
- /***/ 36479:
 
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
- "use strict";
 
- Object.defineProperty(exports, "__esModule", ({ value: true }));
 
- exports.getQueryParamsAsString = void 0;
 
- const url = __webpack_require__(78835);
 
- const os = __webpack_require__(12087);
 
- const is_docker_1 = __webpack_require__(14953);
 
- const sources_1 = __webpack_require__(71653);
 
- function getQueryParamsAsString(args) {
 
-     var _a;
 
-     const utm_source = process.env.SNYK_UTM_SOURCE || 'cli';
 
-     const utm_medium = process.env.SNYK_UTM_MEDIUM || 'cli';
 
-     const utm_campaign = process.env.SNYK_UTM_CAMPAIGN || sources_1.getIntegrationName(args) || 'cli';
 
-     const utm_campaign_content = process.env.SNYK_UTM_CAMPAIGN_CONTENT || sources_1.getIntegrationVersion(args);
 
-     const osType = (_a = os.type()) === null || _a === void 0 ? void 0 : _a.toLowerCase();
 
-     const docker = is_docker_1.isDocker().toString();
 
-     const queryParams = new url.URLSearchParams({
 
-         utm_medium,
 
-         utm_source,
 
-         utm_campaign,
 
-         utm_campaign_content,
 
-         os: osType,
 
-         docker,
 
-     });
 
-     // It may not be set and URLSearchParams won't filter out undefined values
 
-     if (!utm_campaign_content) {
 
-         queryParams.delete('utm_campaign_content');
 
-     }
 
-     return queryParams.toString();
 
- }
 
- exports.getQueryParamsAsString = getQueryParamsAsString;
 
- /***/ }),
 
- /***/ 18138:
 
- /***/ ((module) => {
 
- "use strict";
 
- module.exports = JSON.parse('["|/-\\\\","⠂-–—–-","◐◓◑◒","◴◷◶◵","◰◳◲◱","▖▘▝▗","■□▪▫","▌▀▐▄","▉▊▋▌▍▎▏▎▍▌▋▊▉","▁▃▄▅▆▇█▇▆▅▄▃","←↖↑↗→↘↓↙","┤┘┴└├┌┬┐","◢◣◤◥",".oO°Oo.",".oO@*",["🌍","🌎","🌏"],"◡◡ ⊙⊙ ◠◠","☱☲☴","⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏","⠋⠙⠚⠞⠖⠦⠴⠲⠳⠓","⠄⠆⠇⠋⠙⠸⠰⠠⠰⠸⠙⠋⠇⠆","⠋⠙⠚⠒⠂⠂⠒⠲⠴⠦⠖⠒⠐⠐⠒⠓⠋","⠁⠉⠙⠚⠒⠂⠂⠒⠲⠴⠤⠄⠄⠤⠴⠲⠒⠂⠂⠒⠚⠙⠉⠁","⠈⠉⠋⠓⠒⠐⠐⠒⠖⠦⠤⠠⠠⠤⠦⠖⠒⠐⠐⠒⠓⠋⠉⠈","⠁⠁⠉⠙⠚⠒⠂⠂⠒⠲⠴⠤⠄⠄⠤⠠⠠⠤⠦⠖⠒⠐⠐⠒⠓⠋⠉⠈⠈","⢄⢂⢁⡁⡈⡐⡠","⢹⢺⢼⣸⣇⡧⡗⡏","⣾⣽⣻⢿⡿⣟⣯⣷","⠁⠂⠄⡀⢀⠠⠐⠈",["🌑","🌒","🌓","🌔","🌕","🌝","🌖","🌗","🌘","🌚"],["🕛","🕐","🕑","🕒","🕓","🕔","🕕","🕖","🕗","🕘","🕙","🕚"]]');
 
- /***/ })
 
- };
 
- ;
 
- //# sourceMappingURL=974.index.js.map
 
 
  |