Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const homedir = require('os').homedir()
const path = require('path')
// eslint-disable-next-line security/detect-child-process
const execSync = require('child_process').execSync
const getKubesailConfig = require('get-kubesail-config')
const inquirer = require('inquirer')
inquirer.registerPrompt('fuzzypath', require('inquirer-fuzzy-path'))
const fs = require('fs')
const program = require('commander')
const yaml = require('js-yaml')
const style = require('ansi-styles')
const errArrows = `${style.red.open}>>${style.red.close}`
const warning = `${style.green.open}!!${style.green.close}`
const NEW_KUBESAIL_CONTEXT = `KubeSail${style.gray.open} | Deploy on a free Kubernetes namespace${
style.gray.close
}`
const KUBESAIL_REGISTRY = 'registry.kubesail.io'
const KUBE_CONFIG_PATH = path.join(homedir, '.kube', 'config')
const execToStdout = { stdio: [process.stdin, process.stdout, process.stderr] }
function fatal (message /*: string */) {
process.stderr.write(`${errArrows} ${message}\n`)
process.exit(1)
}
const packageJsonPath = 'package.json'
let packageJson
try {
const style = require('ansi-styles')
const fs = require('fs')
const path = require('path')
const homedir = require('os').homedir()
const yaml = require('js-yaml')
const inquirer = require('inquirer')
// eslint-disable-next-line security/detect-child-process
const execSync = require('child_process').execSync
const commandExists = require('command-exists')
const chalk = require('chalk')
const WARNING = `${style.green.open}!!${style.green.close}`
const ERR_ARROWS = `${style.red.open}>>${style.red.close}`
const KUBE_CONFIG_PATH = path.join(homedir, '.kube', 'config')
const NEW_KUBESAIL_CONTEXT = `KubeSail${style.gray.open} | Deploy on a free Kubernetes namespace${style.gray.close}`
function fatal (message /*: string */) {
process.stderr.write(`${ERR_ARROWS} ${message}\n`)
process.exit(1)
}
const execSyncWithEnv = (cmd, options = {}) => {
const mergedOpts = Object.assign({}, options, {
catchErr: true,
env: Object.assign({}, process.env, options.env)
})
let output
try {
output = execSync(cmd, mergedOpts)
} catch (err) {
if (mergedOpts.catchErr) {
const homedir = require('os').homedir()
const path = require('path')
// eslint-disable-next-line security/detect-child-process
const execSync = require('child_process').execSync
const getKubesailConfig = require('get-kubesail-config')
const inquirer = require('inquirer')
inquirer.registerPrompt('fuzzypath', require('inquirer-fuzzy-path'))
const fs = require('fs')
const program = require('commander')
const yaml = require('js-yaml')
const style = require('ansi-styles')
const errArrows = `${style.red.open}>>${style.red.close}`
const warning = `${style.green.open}!!${style.green.close}`
const NEW_KUBESAIL_CONTEXT = `KubeSail${style.gray.open} | Deploy on a free Kubernetes namespace${
style.gray.close
}`
const KUBESAIL_REGISTRY = 'registry.kubesail.io'
const KUBE_CONFIG_PATH = path.join(homedir, '.kube', 'config')
const execToStdout = { stdio: [process.stdin, process.stdout, process.stderr] }
function fatal (message /*: string */) {
process.stderr.write(`${errArrows} ${message}\n`)
process.exit(1)
}
const packageJsonPath = 'package.json'
let packageJson
try {
packageJson = JSON.parse(fs.readFileSync(packageJsonPath))
function teamNumberToAnsi(teamNum) {
if (teamNum === 2 /* Terrorists */) {
return ansiStyles.redBright.open;
}
if (teamNum === 3 /* CounterTerrorists */) {
return ansiStyles.blueBright.open;
}
return ansiStyles.gray.open;
}
function parseDemoFile(path) {
var styles = (function () {
var ret = {};
ansiStyles.grey = ansiStyles.gray;
Object.keys(ansiStyles).forEach(function (key) {
ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), 'g');
ret[key] = {
get: function () {
return build(this._styles.concat(key));
}
};
});
return ret;
})();
var styles = (function () {
var ret = {};
ansiStyles.grey = ansiStyles.gray;
Object.keys(ansiStyles).forEach(function (key) {
ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), 'g');
ret[key] = {
get: function () {
return build(this._styles.concat(key));
}
};
});
return ret;
})();
module.exports = function createHeader(nameAndArgs, packageInfo, isTTY) {
if (!packageInfo) {
return `\n> ${nameAndArgs}\n\n`
}
const index = nameAndArgs.indexOf(" ")
const name = (index === -1) ? nameAndArgs : nameAndArgs.slice(0, index)
const args = (index === -1) ? "" : nameAndArgs.slice(index + 1)
const packageName = packageInfo.body.name
const packageVersion = packageInfo.body.version
const scriptBody = packageInfo.body.scripts[name]
const packagePath = packageInfo.path
const color = isTTY ? ansiStyles.gray : { open: "", close: "" }
return `
${color.open}> ${packageName}@${packageVersion} ${name} ${packagePath}${color.close}
${color.open}> ${scriptBody} ${args}${color.close}
`
}
module.exports = function terminal_plugin(md,options) {
var defaultOptions = {
styleOptions: {
code: styles.yellow,
blockquote: terminal.compoundStyle(['gray','italic']),
html: styles.gray,
heading: terminal.compoundStyle(['green','bold']),
firstHeading: terminal.compoundStyle(['magenta','underline','bold']),
hr: styles.reset,
listitem: styles.reset,
table: styles.reset,
paragraph: styles.reset,
strong: styles.bold,
em: styles.italic,
codespan: styles.yellow,
del: terminal.compoundStyle(['dim','gray','strikethrough']),
link: styles.blue,
href: terminal.compoundStyle(['blue','underline'])
},
unescape: true
};