snyk-nuget-plugin
Version:
Snyk CLI NuGet plugin
121 lines (117 loc) • 3.96 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.generate = generate;
const generator = __importStar(require("./generator"));
function targetFrameworkFromSdkVersion(sdkVersion) {
const major = parseInt(sdkVersion.split('.')[0], 10);
return `net${major}.0`;
}
function generate(sdkVersion) {
const targetFramework = targetFrameworkFromSdkVersion(sdkVersion);
const files = [
{
name: 'Parse.csproj',
contents: `
<Project Sdk='Microsoft.NET.Sdk'>
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>${targetFramework}</TargetFramework>
<Nullable>enable</Nullable>
<RootNamespace>ShortNameToLongName</RootNamespace>
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
<RollForward>LatestMajor</RollForward>
</PropertyGroup>
<ItemGroup>
<PackageReference Include='Newtonsoft.Json' Version='13.0.3' />
<PackageReference Include='NuGet.Frameworks' Version='6.7.0' />
</ItemGroup>
</Project>
`,
},
{
name: 'Program.cs',
contents: `
using System;
using NuGet.Frameworks;
using Newtonsoft.Json;
class Program
{
static void Main(string[] args)
{
if (args.Length < 1)
{
Console.WriteLine("Usage: dotnet run <shortTargetFramework>");
return;
}
string shortName = args[0];
try
{
NuGetFramework framework = NuGetFramework.Parse(shortName);
string json = JsonConvert.SerializeObject(new
{
framework.Framework,
framework.Version,
framework.Platform,
framework.PlatformVersion,
framework.HasPlatform,
framework.HasProfile,
framework.Profile,
framework.DotNetFrameworkName,
framework.DotNetPlatformName,
framework.IsPCL,
framework.IsPackageBased,
framework.AllFrameworkVersions,
framework.IsUnsupported,
framework.IsAgnostic,
framework.IsAny,
framework.IsSpecificFramework,
ShortName = shortName
}, Formatting.None);
Console.Write(json);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
`,
},
];
const tempDir = generator.generate('csharp', files);
return tempDir;
}
//# sourceMappingURL=nugetframeworks_parser.js.map