Remove template build dynamic filename replacement. Working towards eliminating template build process completely.
This commit is contained in:
Родитель
8d6119f31d
Коммит
45d645931b
|
@ -11,11 +11,11 @@
|
|||
"preferNameDirectory": true,
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"path": "WebApplicationBasic.csproj"
|
||||
"path": "AureliaSpa.csproj"
|
||||
}
|
||||
],
|
||||
"shortName": "aurelia",
|
||||
"sourceName": "WebApplicationBasic",
|
||||
"sourceName": "AureliaSpa",
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="#/home">WebApplicationBasic</a>
|
||||
<a class="navbar-brand" href="#/home">AureliaSpa</a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="navbar-collapse collapse">
|
||||
|
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace AureliaSpa.Controllers
|
||||
{
|
||||
public class HomeController : Controller
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace AureliaSpa.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class SampleDataController : Controller
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Hosting;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace AureliaSpa
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.SpaServices.Webpack;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace AureliaSpa
|
||||
{
|
||||
public class Startup
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>@ViewData["Title"] - WebApplicationBasic</title>
|
||||
<title>@ViewData["Title"] - AureliaSpa</title>
|
||||
<base href="~/" />
|
||||
|
||||
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
@using WebApplicationBasic
|
||||
@using AureliaSpa
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@addTagHelper *, Microsoft.AspNetCore.SpaServices
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "AureliaSpa",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@types/webpack-env": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "AureliaSpa",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
"preferNameDirectory": true,
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"path": "WebApplicationBasic.csproj"
|
||||
"path": "KnockoutSpa.csproj"
|
||||
}
|
||||
],
|
||||
"shortName": "knockout",
|
||||
"sourceName": "WebApplicationBasic",
|
||||
"sourceName": "KnockoutSpa",
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<span class='icon-bar'></span>
|
||||
<span class='icon-bar'></span>
|
||||
</button>
|
||||
<a class='navbar-brand' href='/'>WebApplicationBasic</a>
|
||||
<a class='navbar-brand' href='/'>KnockoutSpa</a>
|
||||
</div>
|
||||
<div class='clearfix'></div>
|
||||
<div class='navbar-collapse collapse'>
|
||||
|
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace KnockoutSpa.Controllers
|
||||
{
|
||||
public class HomeController : Controller
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace KnockoutSpa.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class SampleDataController : Controller
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Hosting;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace KnockoutSpa
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.SpaServices.Webpack;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace KnockoutSpa
|
||||
{
|
||||
public class Startup
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>@ViewData["Title"] - WebApplicationBasic</title>
|
||||
<title>@ViewData["Title"] - KnockoutSpa</title>
|
||||
<base href="~/" />
|
||||
|
||||
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
@using WebApplicationBasic
|
||||
@using KnockoutSpa
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@addTagHelper *, Microsoft.AspNetCore.SpaServices
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "KnockoutSpa",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@types/core-js": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "KnockoutSpa",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"devDependencies": {
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
"preferNameDirectory": true,
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"path": "WebApplicationBasic.csproj"
|
||||
"path": "VueSpa.csproj"
|
||||
}
|
||||
],
|
||||
"shortName": "vue",
|
||||
"sourceName": "WebApplicationBasic",
|
||||
"sourceName": "VueSpa",
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="/">WebApplicationBasic</a>
|
||||
<a class="navbar-brand" href="/">VueSpa</a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="navbar-collapse collapse">
|
||||
|
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace VueSpa.Controllers
|
||||
{
|
||||
public class HomeController : Controller
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace VueSpa.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class SampleDataController : Controller
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Hosting;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace VueSpa
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.SpaServices.Webpack;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace VueSpa
|
||||
{
|
||||
public class Startup
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>@ViewData["Title"] - WebApplicationBasic</title>
|
||||
<title>@ViewData["Title"] - VueSpa</title>
|
||||
<base href="~/" />
|
||||
|
||||
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
@using WebApplicationBasic
|
||||
@using VueSpa
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@addTagHelper *, Microsoft.AspNetCore.SpaServices
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "VueSpa",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@types/webpack-env": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "VueSpa",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"devDependencies": {
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
"preferNameDirectory": true,
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"path": "WebApplicationBasic.csproj"
|
||||
"path": "AngularSpa.csproj"
|
||||
}
|
||||
],
|
||||
"shortName": "angular",
|
||||
"sourceName": "WebApplicationBasic",
|
||||
"sourceName": "AngularSpa",
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<span class='icon-bar'></span>
|
||||
<span class='icon-bar'></span>
|
||||
</button>
|
||||
<a class='navbar-brand' [routerLink]="['/home']">WebApplicationBasic</a>
|
||||
<a class='navbar-brand' [routerLink]="['/home']">AngularSpa</a>
|
||||
</div>
|
||||
<div class='clearfix'></div>
|
||||
<div class='navbar-collapse collapse'>
|
||||
|
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace AngularSpa.Controllers
|
||||
{
|
||||
public class HomeController : Controller
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace AngularSpa.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class SampleDataController : Controller
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Hosting;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace AngularSpa
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.SpaServices.Webpack;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace AngularSpa
|
||||
{
|
||||
public class Startup
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>@ViewData["Title"] - WebApplicationBasic</title>
|
||||
<title>@ViewData["Title"] - AngularSpa</title>
|
||||
<base href="~/" />
|
||||
|
||||
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
@using WebApplicationBasic
|
||||
@using AngularSpa
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@addTagHelper *, Microsoft.AspNetCore.SpaServices
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "AngularSpa",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@angular/animations": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "AngularSpa",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"scripts": {
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
"preferNameDirectory": true,
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"path": "WebApplicationBasic.csproj"
|
||||
"path": "ReactSpa.csproj"
|
||||
}
|
||||
],
|
||||
"shortName": "react",
|
||||
"sourceName": "WebApplicationBasic",
|
||||
"sourceName": "ReactSpa",
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
|
|
|
@ -12,7 +12,7 @@ export class NavMenu extends React.Component<{}, {}> {
|
|||
<span className='icon-bar'></span>
|
||||
<span className='icon-bar'></span>
|
||||
</button>
|
||||
<Link className='navbar-brand' to={ '/' }>WebApplicationBasic</Link>
|
||||
<Link className='navbar-brand' to={ '/' }>ReactSpa</Link>
|
||||
</div>
|
||||
<div className='clearfix'></div>
|
||||
<div className='navbar-collapse collapse'>
|
||||
|
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace ReactSpa.Controllers
|
||||
{
|
||||
public class HomeController : Controller
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace ReactSpa.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class SampleDataController : Controller
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Hosting;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace ReactSpa
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.SpaServices.Webpack;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace ReactSpa
|
||||
{
|
||||
public class Startup
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>@ViewData["Title"] - WebApplicationBasic</title>
|
||||
<title>@ViewData["Title"] - ReactSpa</title>
|
||||
<base href="~/" />
|
||||
|
||||
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
@using WebApplicationBasic
|
||||
@using ReactSpa
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@addTagHelper *, Microsoft.AspNetCore.SpaServices
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "ReactSpa",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@types/history": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "ReactSpa",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"devDependencies": {
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
"preferNameDirectory": true,
|
||||
"primaryOutputs": [
|
||||
{
|
||||
"path": "WebApplicationBasic.csproj"
|
||||
"path": "ReactReduxSpa.csproj"
|
||||
}
|
||||
],
|
||||
"shortName": "reactredux",
|
||||
"sourceName": "WebApplicationBasic",
|
||||
"sourceName": "ReactReduxSpa",
|
||||
"sources": [
|
||||
{
|
||||
"source": "./",
|
||||
|
|
|
@ -12,7 +12,7 @@ export class NavMenu extends React.Component<{}, {}> {
|
|||
<span className='icon-bar'></span>
|
||||
<span className='icon-bar'></span>
|
||||
</button>
|
||||
<Link className='navbar-brand' to={ '/' }>WebApplicationBasic</Link>
|
||||
<Link className='navbar-brand' to={ '/' }>ReactReduxSpa</Link>
|
||||
</div>
|
||||
<div className='clearfix'></div>
|
||||
<div className='navbar-collapse collapse'>
|
||||
|
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace ReactReduxSpa.Controllers
|
||||
{
|
||||
public class HomeController : Controller
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
|||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace WebApplicationBasic.Controllers
|
||||
namespace ReactReduxSpa.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class SampleDataController : Controller
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Hosting;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace ReactReduxSpa
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
|
|
|
@ -8,7 +8,7 @@ using Microsoft.AspNetCore.SpaServices.Webpack;
|
|||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace WebApplicationBasic
|
||||
namespace ReactReduxSpa
|
||||
{
|
||||
public class Startup
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>@ViewData["Title"] - WebApplicationBasic</title>
|
||||
<title>@ViewData["Title"] - ReactReduxSpa</title>
|
||||
<base href="~/" />
|
||||
|
||||
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
@using WebApplicationBasic
|
||||
@using ReactReduxSpa
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@addTagHelper *, Microsoft.AspNetCore.SpaServices
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "ReactReduxSpa",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@types/history": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "WebApplicationBasic",
|
||||
"name": "ReactReduxSpa",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
|
|
|
@ -9,18 +9,12 @@ import * as childProcess from 'child_process';
|
|||
import * as targz from 'tar.gz';
|
||||
|
||||
const isWindows = /^win/.test(process.platform);
|
||||
const textFileExtensions = ['.gitignore', '.config', '.cs', '.cshtml', '.csproj', '.html', '.js', '.json', '.jsx', '.md', '.nuspec', '.ts', '.tsx'];
|
||||
|
||||
const dotNetPackages = [
|
||||
'Microsoft.DotNet.Web.Spa.ProjectTemplates',
|
||||
'Microsoft.AspNetCore.SpaTemplates'
|
||||
];
|
||||
|
||||
function isTextFile(filename: string): boolean {
|
||||
return textFileExtensions.indexOf(path.extname(filename).toLowerCase()) >= 0
|
||||
|| textFileExtensions.indexOf(path.basename(filename)) >= 0;
|
||||
}
|
||||
|
||||
function writeFileEnsuringDirExists(root: string, filename: string, contents: string | Buffer) {
|
||||
let fullPath = path.join(root, filename);
|
||||
mkdirp.sync(path.dirname(fullPath));
|
||||
|
@ -45,18 +39,9 @@ function applyContentReplacements(sourceContent: Buffer, contentReplacements: {
|
|||
return new Buffer(sourceText, 'utf8');
|
||||
}
|
||||
|
||||
function writeTemplate(sourceRoot: string, destRoot: string, contentReplacements: { from: RegExp, to: string }[], filenameReplacements: { from: RegExp, to: string }[]) {
|
||||
function writeTemplate(sourceRoot: string, destRoot: string) {
|
||||
listFilesExcludingGitignored(sourceRoot).forEach(fn => {
|
||||
let sourceContent = fs.readFileSync(path.join(sourceRoot, fn));
|
||||
if (isTextFile(fn)) {
|
||||
sourceContent = applyContentReplacements(sourceContent, contentReplacements);
|
||||
}
|
||||
|
||||
// Also apply replacements in filenames
|
||||
filenameReplacements.forEach(replacement => {
|
||||
fn = fn.replace(replacement.from, replacement.to);
|
||||
});
|
||||
|
||||
writeFileEnsuringDirExists(destRoot, fn, sourceContent);
|
||||
});
|
||||
}
|
||||
|
@ -93,20 +78,13 @@ function buildDotNetNewNuGetPackage(packageId: string) {
|
|||
rimraf.sync(outputRoot);
|
||||
|
||||
// Copy template files
|
||||
const sourceProjectName = 'WebApplicationBasic';
|
||||
const projectGuid = '00000000-0000-0000-0000-000000000000';
|
||||
const filenameReplacements = [
|
||||
{ from: /.*\.csproj$/, to: `${sourceProjectName}.csproj` }
|
||||
];
|
||||
const contentReplacements = [];
|
||||
|
||||
const packageSourceRootDir = path.join('../', packageId);
|
||||
const templatesInPackage = fs.readdirSync(path.join(packageSourceRootDir, 'Content'));
|
||||
|
||||
_.forEach(templatesInPackage, templateName => {
|
||||
const templateSourceDir = path.join(packageSourceRootDir, 'Content', templateName);
|
||||
const templateOutputDir = path.join(outputRoot, 'Content', templateName);
|
||||
writeTemplate(templateSourceDir, templateOutputDir, contentReplacements, filenameReplacements);
|
||||
writeTemplate(templateSourceDir, templateOutputDir);
|
||||
});
|
||||
|
||||
// Create the .nuspec file
|
||||
|
|
Загрузка…
Ссылка в новой задаче