create-nx-workspace
Advanced tools
Comparing version 0.0.0-pr-26793-c134574 to 0.0.0-pr-26793-f306648
@@ -17,3 +17,2 @@ "use strict"; | ||
const show_nx_warning_1 = require("../src/utils/nx/show-nx-warning"); | ||
const nx_cloud_1 = require("../src/utils/nx/nx-cloud"); | ||
const ab_testing_1 = require("../src/utils/nx/ab-testing"); | ||
@@ -126,6 +125,7 @@ const error_utils_1 = require("../src/utils/error-utils"); | ||
ab_testing_1.messages.codeOfSelectedPromptMessage('setupNxCloud'), | ||
parsedArgs.nxCloud, | ||
], | ||
}); | ||
if (parsedArgs.nxCloud && workspaceInfo.nxCloudInfo) { | ||
(0, nx_cloud_1.printNxCloudSuccessMessage)(workspaceInfo.nxCloudInfo); | ||
console.log(workspaceInfo.nxCloudInfo); | ||
} | ||
@@ -132,0 +132,0 @@ if ((0, preset_1.isKnownPreset)(parsedArgs.preset)) { |
{ | ||
"name": "create-nx-workspace", | ||
"version": "0.0.0-pr-26793-c134574", | ||
"version": "0.0.0-pr-26793-f306648", | ||
"private": false, | ||
@@ -40,3 +40,3 @@ "description": "Smart Monorepos · Fast CI", | ||
"yargs": "^17.6.2", | ||
"axios": "^1.6.0" | ||
"axios": "^1.7.2" | ||
}, | ||
@@ -43,0 +43,0 @@ "publishConfig": { |
@@ -66,3 +66,3 @@ <p style="text-align: center;"> | ||
- [Official Nx YouTube Channel](https://www.youtube.com/@NxDevtools) | ||
- [Blog Posts About Nx](https://blog.nrwl.io/nx/home) | ||
- [Blog Posts About Nx](https://nx.dev/blog) | ||
@@ -69,0 +69,0 @@ <p style="text-align: center;"><a href="https://nx.dev/#learning-materials" target="_blank" rel="noreferrer"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-courses-and-videos.svg" |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.createEmptyWorkspace = void 0; | ||
exports.createEmptyWorkspace = createEmptyWorkspace; | ||
const ora = require("ora"); | ||
@@ -67,2 +67,1 @@ const path_1 = require("path"); | ||
} | ||
exports.createEmptyWorkspace = createEmptyWorkspace; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.createPreset = void 0; | ||
exports.createPreset = createPreset; | ||
const output_1 = require("./utils/output"); | ||
@@ -44,2 +44,1 @@ const package_manager_1 = require("./utils/package-manager"); | ||
} | ||
exports.createPreset = createPreset; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.createSandbox = void 0; | ||
exports.createSandbox = createSandbox; | ||
const fs_1 = require("fs"); | ||
@@ -55,2 +55,1 @@ const tmp_1 = require("tmp"); | ||
} | ||
exports.createSandbox = createSandbox; |
@@ -6,1 +6,2 @@ import { CreateWorkspaceOptions } from './create-workspace-options'; | ||
}>; | ||
export declare function extractConnectUrl(text: string): string | null; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.createWorkspace = void 0; | ||
exports.createWorkspace = createWorkspace; | ||
exports.extractConnectUrl = extractConnectUrl; | ||
const output_1 = require("./utils/output"); | ||
@@ -28,7 +29,16 @@ const nx_cloud_1 = require("./utils/nx/nx-cloud"); | ||
} | ||
let gitSuccess = false; | ||
if (!skipGit && commit) { | ||
let connectUrl; | ||
let nxCloudInfo; | ||
if (nxCloud !== 'skip') { | ||
const token = (0, nx_cloud_1.readNxCloudToken)(directory); | ||
if (nxCloud !== 'yes') { | ||
await (0, setup_ci_1.setupCI)(directory, nxCloud, packageManager); | ||
} | ||
const { connectCloudUrl, output } = await (0, nx_cloud_1.getOnboardingInfo)(nxCloud, token, directory, useGitHub); | ||
connectUrl = connectCloudUrl; | ||
nxCloudInfo = output; | ||
} | ||
if (!skipGit) { | ||
try { | ||
await (0, git_1.initializeGitRepo)(directory, { defaultBase, commit }); | ||
gitSuccess = true; | ||
await (0, git_1.initializeGitRepo)(directory, { defaultBase, commit, connectUrl }); | ||
} | ||
@@ -47,17 +57,11 @@ catch (e) { | ||
} | ||
let nxCloudInstallRes; | ||
if (nxCloud !== 'skip') { | ||
nxCloudInstallRes = await (0, nx_cloud_1.setupNxCloud)(directory, packageManager, nxCloud, useGitHub); | ||
if (nxCloud !== 'yes') { | ||
const nxCIsetupRes = await (0, setup_ci_1.setupCI)(directory, nxCloud, packageManager, nxCloudInstallRes?.code === 0); | ||
if (nxCIsetupRes?.code === 0) { | ||
(0, git_1.commitChanges)(directory, `feat(nx): Generated CI workflow`); | ||
} | ||
} | ||
} | ||
return { | ||
nxCloudInfo: nxCloudInstallRes?.stdout, | ||
nxCloudInfo, | ||
directory, | ||
}; | ||
} | ||
exports.createWorkspace = createWorkspace; | ||
function extractConnectUrl(text) { | ||
const urlPattern = /(https:\/\/[^\s]+\/connect\/[^\s]+)/g; | ||
const match = text.match(urlPattern); | ||
return match ? match[0] : null; | ||
} |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.determinePackageManager = exports.determineDefaultBase = exports.determineIfGitHubWillBeUsed = exports.determineNxCloud = void 0; | ||
exports.determineNxCloud = determineNxCloud; | ||
exports.determineIfGitHubWillBeUsed = determineIfGitHubWillBeUsed; | ||
exports.determineDefaultBase = determineDefaultBase; | ||
exports.determinePackageManager = determinePackageManager; | ||
const ab_testing_1 = require("../utils/nx/ab-testing"); | ||
@@ -19,3 +22,2 @@ const output_1 = require("../utils/output"); | ||
} | ||
exports.determineNxCloud = determineNxCloud; | ||
async function determineIfGitHubWillBeUsed(nxCloud) { | ||
@@ -36,3 +38,2 @@ if (nxCloud === 'yes' || nxCloud === 'circleci') { | ||
} | ||
exports.determineIfGitHubWillBeUsed = determineIfGitHubWillBeUsed; | ||
async function nxCloudPrompt(key) { | ||
@@ -87,3 +88,2 @@ const { message, choices, initial, fallback, footer, hint } = ab_testing_1.messages.getPrompt(key); | ||
} | ||
exports.determineDefaultBase = determineDefaultBase; | ||
async function determinePackageManager(parsedArgs) { | ||
@@ -125,2 +125,1 @@ const packageManager = parsedArgs.packageManager; | ||
} | ||
exports.determinePackageManager = determinePackageManager; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.withOptions = exports.withGitOptions = exports.withPackageManager = exports.withAllPrompts = exports.withUseGitHub = exports.withNxCloud = void 0; | ||
exports.withNxCloud = withNxCloud; | ||
exports.withUseGitHub = withUseGitHub; | ||
exports.withAllPrompts = withAllPrompts; | ||
exports.withPackageManager = withPackageManager; | ||
exports.withGitOptions = withGitOptions; | ||
exports.withOptions = withOptions; | ||
const chalk = require("chalk"); | ||
@@ -17,3 +22,2 @@ const ab_testing_1 = require("../utils/nx/ab-testing"); | ||
} | ||
exports.withNxCloud = withNxCloud; | ||
function withUseGitHub(argv) { | ||
@@ -26,3 +30,2 @@ return argv.option('useGitHub', { | ||
} | ||
exports.withUseGitHub = withUseGitHub; | ||
function withAllPrompts(argv) { | ||
@@ -36,3 +39,2 @@ return argv.option('allPrompts', { | ||
} | ||
exports.withAllPrompts = withAllPrompts; | ||
function withPackageManager(argv) { | ||
@@ -47,3 +49,2 @@ return argv.option('packageManager', { | ||
} | ||
exports.withPackageManager = withPackageManager; | ||
function withGitOptions(argv) { | ||
@@ -76,3 +77,2 @@ return argv | ||
} | ||
exports.withGitOptions = withGitOptions; | ||
function withOptions(argv, ...options) { | ||
@@ -83,2 +83,1 @@ // Reversing the options keeps the execution order correct. | ||
} | ||
exports.withOptions = withOptions; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.execAndWait = exports.spawnAndWait = void 0; | ||
exports.spawnAndWait = spawnAndWait; | ||
exports.execAndWait = execAndWait; | ||
const child_process_1 = require("child_process"); | ||
@@ -30,3 +31,2 @@ const fs_1 = require("fs"); | ||
} | ||
exports.spawnAndWait = spawnAndWait; | ||
function execAndWait(command, cwd) { | ||
@@ -47,2 +47,1 @@ return new Promise((res, rej) => { | ||
} | ||
exports.execAndWait = execAndWait; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.isCI = void 0; | ||
exports.isCI = isCI; | ||
function isCI() { | ||
@@ -20,2 +20,1 @@ return ((process.env.CI && process.env.CI !== 'false') || | ||
} | ||
exports.isCI = isCI; |
import { PackageManager } from '../package-manager'; | ||
export declare function setupCI(directory: string, ci: string, packageManager: PackageManager, nxCloudSuccessfullyInstalled: boolean): Promise<{ | ||
export declare function setupCI(directory: string, ci: string, packageManager: PackageManager): Promise<{ | ||
code: number; | ||
stdout: string; | ||
}>; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.setupCI = void 0; | ||
exports.setupCI = setupCI; | ||
const ora = require("ora"); | ||
@@ -9,12 +9,3 @@ const child_process_utils_1 = require("../child-process-utils"); | ||
const package_manager_1 = require("../package-manager"); | ||
async function setupCI(directory, ci, packageManager, nxCloudSuccessfullyInstalled) { | ||
if (!nxCloudSuccessfullyInstalled) { | ||
output_1.output.error({ | ||
title: `CI workflow generation skipped`, | ||
bodyLines: [ | ||
`Nx Cloud was not installed`, | ||
`The autogenerated CI workflow requires Nx Cloud to be set-up.`, | ||
], | ||
}); | ||
} | ||
async function setupCI(directory, ci, packageManager) { | ||
const ciSpinner = ora(`Generating CI workflow`).start(); | ||
@@ -44,2 +35,1 @@ try { | ||
} | ||
exports.setupCI = setupCI; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.mapErrorToBodyLines = exports.CreateNxWorkspaceError = void 0; | ||
exports.CreateNxWorkspaceError = void 0; | ||
exports.mapErrorToBodyLines = mapErrorToBodyLines; | ||
class CreateNxWorkspaceError extends Error { | ||
@@ -32,2 +33,1 @@ constructor(logMessage, code, logFile) { | ||
} | ||
exports.mapErrorToBodyLines = mapErrorToBodyLines; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.deduceDefaultBase = void 0; | ||
exports.deduceDefaultBase = deduceDefaultBase; | ||
const child_process_1 = require("child_process"); | ||
@@ -12,4 +12,5 @@ /* | ||
try { | ||
return ((0, child_process_1.execSync)('git config --get init.defaultBranch').toString().trim() || | ||
nxDefaultBase); | ||
return ((0, child_process_1.execSync)('git config --get init.defaultBranch', { windowsHide: true }) | ||
.toString() | ||
.trim() || nxDefaultBase); | ||
} | ||
@@ -20,2 +21,1 @@ catch { | ||
} | ||
exports.deduceDefaultBase = deduceDefaultBase; |
@@ -9,3 +9,3 @@ export declare function checkGitVersion(): string | null | undefined; | ||
}; | ||
connectUrl?: string | null; | ||
}): Promise<void>; | ||
export declare function commitChanges(directory: string, message: string): void; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.commitChanges = exports.initializeGitRepo = exports.checkGitVersion = void 0; | ||
exports.checkGitVersion = checkGitVersion; | ||
exports.initializeGitRepo = initializeGitRepo; | ||
const child_process_1 = require("child_process"); | ||
@@ -9,3 +10,5 @@ const default_base_1 = require("./default-base"); | ||
try { | ||
let gitVersionOutput = (0, child_process_1.execSync)('git --version').toString().trim(); | ||
let gitVersionOutput = (0, child_process_1.execSync)('git --version', { windowsHide: true }) | ||
.toString() | ||
.trim(); | ||
return gitVersionOutput.match(/[0-9]+\.[0-9]+\.+[0-9]+/)?.[0]; | ||
@@ -17,3 +20,2 @@ } | ||
} | ||
exports.checkGitVersion = checkGitVersion; | ||
async function initializeGitRepo(directory, options) { | ||
@@ -76,23 +78,14 @@ const execute = (args, ignoreErrorStream = false) => { | ||
if (options.commit) { | ||
const message = options.commit.message || 'initial commit'; | ||
let message = `${options.commit.message}` || 'initial commit'; | ||
if (options.connectUrl) { | ||
message = `${message} | ||
To connect your workspace to Nx Cloud, push your repository | ||
to your git hosting provider and go to the following URL: | ||
${options.connectUrl} | ||
`; | ||
} | ||
await execute(['commit', `-m "${message}"`]); | ||
} | ||
} | ||
exports.initializeGitRepo = initializeGitRepo; | ||
function commitChanges(directory, message) { | ||
try { | ||
(0, child_process_1.execSync)('git add -A', { encoding: 'utf8', stdio: 'pipe', cwd: directory }); | ||
(0, child_process_1.execSync)('git commit --no-verify -F -', { | ||
encoding: 'utf8', | ||
stdio: 'pipe', | ||
input: message, | ||
cwd: directory, | ||
}); | ||
} | ||
catch (e) { | ||
console.error(`There was an error committing your Nx Cloud token.\n | ||
Please commit the changes manually and push to your new repository.\n | ||
\n${e}`); | ||
} | ||
} | ||
exports.commitChanges = commitChanges; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.recordStat = exports.messages = exports.PromptMessages = exports.NxCloudChoices = void 0; | ||
exports.messages = exports.PromptMessages = exports.NxCloudChoices = void 0; | ||
exports.recordStat = recordStat; | ||
const node_child_process_1 = require("node:child_process"); | ||
@@ -12,3 +13,3 @@ const is_ci_1 = require("../ci/is-ci"); | ||
'azure', | ||
'bitbucket', | ||
'bitbucket-pipelines', | ||
'skip', | ||
@@ -18,2 +19,5 @@ 'yes', // Deprecated but still handled | ||
const messageOptions = { | ||
/** | ||
* These messages are for setting up CI as part of create-nx-workspace and nx init | ||
*/ | ||
setupCI: [ | ||
@@ -29,30 +33,15 @@ { | ||
{ value: 'azure', name: 'Azure DevOps' }, | ||
{ value: 'bitbucket', name: 'BitBucket Pipelines' }, | ||
{ value: 'bitbucket-pipelines', name: 'BitBucket Pipelines' }, | ||
{ value: 'skip', name: '\nDo it later' }, | ||
], | ||
footer: '\nRemote caching, task distribution, and test splitting are provided by Nx Cloud. Read more at https://nx.dev/ci', | ||
footer: '\nRemote caching, task distribution and test splitting are provided by Nx Cloud. Read more at https://nx.dev/ci', | ||
fallback: { value: 'skip', key: 'setupNxCloud' }, | ||
}, | ||
{ | ||
code: 'set-up-ci', | ||
message: `Set up CI with caching, distribution and test deflaking`, | ||
initial: 0, | ||
choices: [ | ||
{ value: 'github', name: 'GitHub Actions' }, | ||
{ value: 'circleci', name: 'CircleCI' }, | ||
{ value: 'gitlab', name: 'Gitlab' }, | ||
{ value: 'azure', name: 'Azure DevOps' }, | ||
{ | ||
value: 'bitbucket', | ||
name: 'BitBucket Pipelines', | ||
}, | ||
{ value: 'skip', name: '\nDo it later' }, | ||
], | ||
footer: '\nRemote caching, task distribution, and test splitting are provided by Nx Cloud. Read more at https://nx.dev/ci', | ||
fallback: { value: 'skip', key: 'setupNxCloud' }, | ||
}, | ||
], | ||
/** | ||
* These messages are a fallback for setting up CI as well as when migrating major versions | ||
*/ | ||
setupNxCloud: [ | ||
{ | ||
code: 'enable-caching', | ||
code: 'enable-caching2', | ||
message: `Would you like remote caching to make your build faster?`, | ||
@@ -62,6 +51,9 @@ initial: 0, | ||
{ value: 'yes', name: 'Yes' }, | ||
{ value: 'skip', name: 'Skip for now' }, | ||
{ | ||
value: 'skip', | ||
name: 'No - I would not like remote caching', | ||
}, | ||
], | ||
footer: '\nRead more about remote caching at https://nx.dev/ci/features/remote-cache', | ||
hint: `\n(it's free and can be disabled any time)`, | ||
hint: `\n(can be disabled any time)`, | ||
fallback: undefined, | ||
@@ -126,3 +118,2 @@ }, | ||
} | ||
exports.recordStat = recordStat; | ||
function shouldRecordStats() { | ||
@@ -136,3 +127,6 @@ const pmc = (0, package_manager_1.getPackageManagerCommand)(); | ||
try { | ||
const stdout = (0, node_child_process_1.execSync)(pmc.getRegistryUrl, { encoding: 'utf-8' }); | ||
const stdout = (0, node_child_process_1.execSync)(pmc.getRegistryUrl, { | ||
encoding: 'utf-8', | ||
windowsHide: true, | ||
}); | ||
const url = new URL(stdout.trim()); | ||
@@ -139,0 +133,0 @@ // don't record stats when testing locally |
@@ -1,7 +0,6 @@ | ||
import { PackageManager } from '../package-manager'; | ||
export type NxCloud = 'yes' | 'github' | 'circleci' | 'skip'; | ||
export declare function setupNxCloud(directory: string, packageManager: PackageManager, nxCloud: NxCloud, useGitHub?: boolean): Promise<{ | ||
code: number; | ||
stdout: string; | ||
export declare function readNxCloudToken(directory: string): string | undefined; | ||
export declare function getOnboardingInfo(nxCloud: NxCloud, token: string, directory: string, useGithub?: boolean): Promise<{ | ||
output: string; | ||
connectCloudUrl: string; | ||
}>; | ||
export declare function printNxCloudSuccessMessage(nxCloudOut: string): void; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.printNxCloudSuccessMessage = exports.setupNxCloud = void 0; | ||
exports.readNxCloudToken = readNxCloudToken; | ||
exports.getOnboardingInfo = getOnboardingInfo; | ||
const output_1 = require("../output"); | ||
const messages_1 = require("./messages"); | ||
const ora = require("ora"); | ||
const child_process_utils_1 = require("../child-process-utils"); | ||
const output_1 = require("../output"); | ||
const package_manager_1 = require("../package-manager"); | ||
const error_utils_1 = require("../error-utils"); | ||
async function setupNxCloud(directory, packageManager, nxCloud, useGitHub) { | ||
const nxCloudSpinner = ora(`Setting up Nx Cloud`).start(); | ||
try { | ||
const pmc = (0, package_manager_1.getPackageManagerCommand)(packageManager); | ||
const res = await (0, child_process_utils_1.execAndWait)(`${pmc.exec} nx g nx:connect-to-nx-cloud --installationSource=create-nx-workspace --directory=${directory} ${useGitHub ? '--github' : ''} --no-interactive`, directory); | ||
if (nxCloud !== 'yes') { | ||
nxCloudSpinner.succeed('CI workflow with Nx Cloud has been generated successfully'); | ||
} | ||
else { | ||
nxCloudSpinner.succeed('Nx Cloud has been set up successfully'); | ||
} | ||
return res; | ||
function readNxCloudToken(directory) { | ||
const nxCloudSpinner = ora(`Checking Nx Cloud setup`).start(); | ||
// nx-ignore-next-line | ||
const { getCloudOptions } = require(require.resolve('nx/src/nx-cloud/utilities/get-cloud-options', { | ||
paths: [directory], | ||
} | ||
catch (e) { | ||
nxCloudSpinner.fail(); | ||
if (e instanceof Error) { | ||
output_1.output.error({ | ||
title: `Failed to setup Nx Cloud`, | ||
bodyLines: (0, error_utils_1.mapErrorToBodyLines)(e), | ||
}); | ||
} | ||
else { | ||
console.error(e); | ||
} | ||
process.exit(1); | ||
// nx-ignore-next-line | ||
)); | ||
const { accessToken } = getCloudOptions(directory); | ||
nxCloudSpinner.succeed('Nx Cloud has been set up successfully'); | ||
return accessToken; | ||
} | ||
async function getOnboardingInfo(nxCloud, token, directory, useGithub) { | ||
// nx-ignore-next-line | ||
const { createNxCloudOnboardingURL } = require(require.resolve('nx/src/nx-cloud/utilities/url-shorten', { | ||
paths: [directory], | ||
} | ||
finally { | ||
nxCloudSpinner.stop(); | ||
// nx-ignore-next-line | ||
)); | ||
const source = nxCloud === 'yes' | ||
? 'create-nx-workspace-success-cache-setup' | ||
: 'create-nx-workspace-success-ci-setup'; | ||
const { code, createMessage } = (0, messages_1.getMessageFactory)(source); | ||
const connectCloudUrl = await createNxCloudOnboardingURL(source, token, useGithub ?? | ||
(nxCloud === 'yes' || nxCloud === 'github' || nxCloud === 'circleci'), code); | ||
const out = new output_1.CLIOutput(false); | ||
const message = createMessage(connectCloudUrl); | ||
if (message.type === 'success') { | ||
out.success(message); | ||
} | ||
else { | ||
out.warn(message); | ||
} | ||
return { output: out.getOutput(), connectCloudUrl }; | ||
} | ||
exports.setupNxCloud = setupNxCloud; | ||
function printNxCloudSuccessMessage(nxCloudOut) { | ||
// remove leading Nx carret and any new lines | ||
const logContent = nxCloudOut.split('NX ')[1]; | ||
const indexOfTitleEnd = logContent.indexOf('\n'); | ||
const title = logContent.slice(0, logContent.indexOf('\n')).trim(); | ||
const bodyLines = logContent | ||
.slice(indexOfTitleEnd) | ||
.replace(/^\n*/, '') // remove leading new lines | ||
.replace(/\n*$/, '') // remove trailing new lines | ||
.split('\n') | ||
.map((r) => r.trim()); | ||
output_1.output.warn({ | ||
title, | ||
bodyLines, | ||
}); | ||
} | ||
exports.printNxCloudSuccessMessage = printNxCloudSuccessMessage; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.showNxWarning = void 0; | ||
exports.showNxWarning = showNxWarning; | ||
const child_process_1 = require("child_process"); | ||
@@ -14,2 +14,3 @@ const path_1 = require("path"); | ||
stdio: ['ignore', 'ignore', 'ignore'], | ||
windowsHide: true, | ||
}); | ||
@@ -30,2 +31,1 @@ } | ||
} | ||
exports.showNxWarning = showNxWarning; |
@@ -18,3 +18,6 @@ import * as chalk from 'chalk'; | ||
} | ||
declare class CLIOutput { | ||
export declare class CLIOutput { | ||
private real; | ||
private outstream; | ||
constructor(real?: boolean); | ||
/** | ||
@@ -57,4 +60,4 @@ * Longer dash character which forms more of a continuous line when place side to side | ||
}): void; | ||
getOutput(): string; | ||
} | ||
export declare const output: CLIOutput; | ||
export {}; |
@@ -7,3 +7,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.output = void 0; | ||
exports.output = exports.CLIOutput = void 0; | ||
const chalk = require("chalk"); | ||
@@ -19,3 +19,5 @@ const os_1 = require("os"); | ||
class CLIOutput { | ||
constructor() { | ||
constructor(real = true) { | ||
this.real = real; | ||
this.outstream = this.real ? process.stdout : new FakeStdout(); | ||
/** | ||
@@ -50,3 +52,3 @@ * Expose some color and other utility functions so that other parts of the codebase that need | ||
writeToStdOut(str) { | ||
process.stdout.write(str); | ||
this.outstream.write(str); | ||
} | ||
@@ -140,3 +142,18 @@ writeOutputTitle({ color, title, }) { | ||
} | ||
getOutput() { | ||
return this.outstream.toString(); | ||
} | ||
} | ||
exports.CLIOutput = CLIOutput; | ||
exports.output = new CLIOutput(); | ||
class FakeStdout { | ||
constructor() { | ||
this.content = ''; | ||
} | ||
write(str) { | ||
this.content += str; | ||
} | ||
toString() { | ||
return this.content; | ||
} | ||
} |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.detectInvokedPackageManager = exports.getPackageManagerVersion = exports.generatePackageManagerFiles = exports.getPackageManagerCommand = exports.detectPackageManager = exports.packageManagerList = void 0; | ||
exports.packageManagerList = void 0; | ||
exports.detectPackageManager = detectPackageManager; | ||
exports.getPackageManagerCommand = getPackageManagerCommand; | ||
exports.generatePackageManagerFiles = generatePackageManagerFiles; | ||
exports.getPackageManagerVersion = getPackageManagerVersion; | ||
exports.detectInvokedPackageManager = detectInvokedPackageManager; | ||
const child_process_1 = require("child_process"); | ||
@@ -21,3 +26,2 @@ const fs_1 = require("fs"); | ||
} | ||
exports.detectPackageManager = detectPackageManager; | ||
/** | ||
@@ -81,3 +85,2 @@ * Returns commands for the package manager used in the workspace. | ||
} | ||
exports.getPackageManagerCommand = getPackageManagerCommand; | ||
function generatePackageManagerFiles(root, packageManager = detectPackageManager()) { | ||
@@ -95,3 +98,2 @@ const [pmMajor] = getPackageManagerVersion(packageManager).split('.'); | ||
} | ||
exports.generatePackageManagerFiles = generatePackageManagerFiles; | ||
const pmVersionCache = new Map(); | ||
@@ -105,2 +107,3 @@ function getPackageManagerVersion(packageManager, cwd = process.cwd()) { | ||
encoding: 'utf-8', | ||
windowsHide: true, | ||
}).trim(); | ||
@@ -110,3 +113,2 @@ pmVersionCache.set(packageManager, version); | ||
} | ||
exports.getPackageManagerVersion = getPackageManagerVersion; | ||
/** | ||
@@ -137,2 +139,1 @@ * Detects which package manager was used to invoke create-nx-{plugin|workspace} command | ||
} | ||
exports.detectInvokedPackageManager = detectInvokedPackageManager; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.getPackageNameFromThirdPartyPreset = void 0; | ||
exports.getPackageNameFromThirdPartyPreset = getPackageNameFromThirdPartyPreset; | ||
const validate_npm_package_1 = require("../validate-npm-package"); | ||
@@ -29,2 +29,1 @@ const preset_1 = require("./preset"); | ||
} | ||
exports.getPackageNameFromThirdPartyPreset = getPackageNameFromThirdPartyPreset; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.pointToTutorialAndCourse = void 0; | ||
exports.pointToTutorialAndCourse = pointToTutorialAndCourse; | ||
const output_1 = require("../output"); | ||
@@ -74,2 +74,1 @@ const preset_1 = require("./preset"); | ||
} | ||
exports.pointToTutorialAndCourse = pointToTutorialAndCourse; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.isKnownPreset = exports.Preset = void 0; | ||
exports.Preset = void 0; | ||
exports.isKnownPreset = isKnownPreset; | ||
var Preset; | ||
@@ -41,2 +42,1 @@ (function (Preset) { | ||
} | ||
exports.isKnownPreset = isKnownPreset; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.stringifyCollection = void 0; | ||
exports.stringifyCollection = stringifyCollection; | ||
function stringifyCollection(items) { | ||
return items.map((item) => `"${item}"`).join(', '); | ||
} | ||
exports.stringifyCollection = stringifyCollection; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.unparse = void 0; | ||
exports.unparse = unparse; | ||
const flat_1 = require("flat"); | ||
@@ -13,3 +13,2 @@ function unparse(options) { | ||
} | ||
exports.unparse = unparse; | ||
function unparseOption(key, value, unparsed) { | ||
@@ -16,0 +15,0 @@ if (value === true) { |
@@ -7,3 +7,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.validateNpmPackage = void 0; | ||
exports.validateNpmPackage = validateNpmPackage; | ||
const scopedPackagePattern = new RegExp('^(?:@([^/]+?)[/])?([^/]+?)$'); | ||
@@ -71,3 +71,2 @@ const denyList = ['node_modules', 'favicon.ico']; | ||
} | ||
exports.validateNpmPackage = validateNpmPackage; | ||
function formatResult(warnings, errors) { | ||
@@ -74,0 +73,0 @@ return { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
109407
69
2985
12
Updatedaxios@^1.7.2