@nx-dotnet/core
Version:
- Have an existing nx workspace. For creating this, see [nrwl's documentation](https://nx.dev/latest/angular/getting-started/nx-setup). - .NET SDK is installed, and `dotnet` is available on the path. For help on this, see [Microsoft's documentation](https
52 lines • 1.99 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveVersionMismatch = resolveVersionMismatch;
const inquirer_1 = require("inquirer");
const utils_1 = require("@nx-dotnet/utils");
async function resolveVersionMismatch(desired, configured, allowVersionMismatch, packageName) {
if (configured) {
if (configured !== desired) {
if (allowVersionMismatch || configured === utils_1.ALLOW_MISMATCH) {
return utils_1.ALLOW_MISMATCH;
}
if (!desired) {
console.log(`Installing with pre-configured version ${configured}`);
return configured;
}
return getResolvedVersion({ packageName, desired, configured });
}
}
if (!desired) {
return promptForDesiredVersion(packageName);
}
return desired;
}
async function promptForDesiredVersion(packageName) {
const { choice } = await (0, inquirer_1.prompt)([
{
name: 'choice',
message: `You have not yet set a version for ${packageName ?? 'this package'}. Which version would you like to install?`,
},
]);
return choice;
}
async function getResolvedVersion({ packageName, desired, configured, }) {
const { resolution } = await (0, inquirer_1.prompt)([
{
type: 'list',
name: 'resolution',
choices: [
desired,
configured,
{
name: 'Allow mismatched versions for this package',
value: utils_1.ALLOW_MISMATCH,
short: 'Allow mismatch',
},
],
message: `There appears to be a mismatch between your current package preferences and the requested version ${packageName ? 'for ' + packageName : ''}. Which version would you like to use?`,
},
]);
return resolution;
}
//# sourceMappingURL=resolve-version-mismatch.js.map