Skip to content

Commit d42cda0

Browse files
authored
Merge pull request #1955 from armanio123/AddVueTemplate
Added Vue project and file templates
2 parents ed6bde9 + 3a1b533 commit d42cda0

33 files changed

+625
-3
lines changed

Nodejs/Product/Nodejs/Nodejs.csproj

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -636,6 +636,34 @@
636636
<ZipItem Include="Templates\Files\EmptyPug\EmptyPug.pug" />
637637
<Compile Include="SharedProject\CommonProjectNode.DiskMerger.cs" />
638638
<ZipItem Include="Templates\Files\TypeScriptJsConfig\jsconfig.json" />
639+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\.babelrc" />
640+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\.postcssrc.js" />
641+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\App.vue" />
642+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\favicon.ico" />
643+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\Home.vue" />
644+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\index.html" />
645+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\main.ts" />
646+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\package.json" />
647+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\README.md" />
648+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\shims.d.ts" />
649+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\tsconfig.json" />
650+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\TypeScriptVuejsApp.njsproj" />
651+
<TypeScriptProject Include="ProjectTemplates\TypeScriptVuejsApp\TypeScriptVuejsApp.vstemplate" />
652+
<ZipProject Include="ProjectTemplates\VuejsApp\.babelrc" />
653+
<ZipProject Include="ProjectTemplates\VuejsApp\.postcssrc.js" />
654+
<ZipProject Include="ProjectTemplates\VuejsApp\App.vue" />
655+
<ZipProject Include="ProjectTemplates\VuejsApp\favicon.ico" />
656+
<ZipProject Include="ProjectTemplates\VuejsApp\Home.vue" />
657+
<ZipProject Include="ProjectTemplates\VuejsApp\index.html" />
658+
<ZipProject Include="ProjectTemplates\VuejsApp\main.js" />
659+
<ZipProject Include="ProjectTemplates\VuejsApp\package.json" />
660+
<ZipProject Include="ProjectTemplates\VuejsApp\README.md" />
661+
<ZipProject Include="ProjectTemplates\VuejsApp\VuejsApp.njsproj" />
662+
<ZipProject Include="ProjectTemplates\VuejsApp\VuejsApp.vstemplate" />
663+
<ZipItem Include="Templates\Files\JavaScriptVueComponent\JavaScriptVueComponent.vstemplate" />
664+
<ZipItem Include="Templates\Files\JavaScriptVueComponent\JavaScriptVueComponent.vue" />
665+
<ZipItem Include="Templates\Files\TypeScriptVueComponent\TypeScriptVueComponent.vstemplate" />
666+
<ZipItem Include="Templates\Files\TypeScriptVueComponent\TypeScriptVueComponent.vue" />
639667
<None Include="Theme\contrast.vstheme">
640668
<SubType>Designer</SubType>
641669
</None>

Nodejs/Product/Nodejs/ProjectTemplates/TypeScriptAzureWebApp/TypeScriptWebApp.vstemplate

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
1313
<PromptForSaveOnCreation>true</PromptForSaveOnCreation>
1414
<PreviewImage>Preview.png</PreviewImage>
15-
<TemplateGroupID>Node.jss</TemplateGroupID>
15+
<TemplateGroupID>Node.js</TemplateGroupID>
1616
</TemplateData>
1717
<TemplateContent>
1818
<Project File="TypeScriptWebApp.njsproj" ReplaceParameters="true">

Nodejs/Product/Nodejs/ProjectTemplates/TypeScriptAzureWebRole/TypeScriptAzureWebRole.vstemplate

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
1414
<PromptForSaveOnCreation>true</PromptForSaveOnCreation>
1515
<PreviewImage>Preview.png</PreviewImage>
16-
<TemplateGroupID>Node.jss</TemplateGroupID>
16+
<TemplateGroupID>Node.js</TemplateGroupID>
1717
</TemplateData>
1818
<TemplateContent>
1919
<Project File="TypeScriptWebApp.njsproj" ReplaceParameters="true">
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"presets": [
3+
"@vue/app"
4+
]
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module.exports = {
2+
plugins: {
3+
autoprefixer: {}
4+
}
5+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<template>
2+
<div id="app">
3+
<Home msg="Hello world!" />
4+
</div>
5+
</template>
6+
7+
<script lang="ts">
8+
import { Component, Vue } from 'vue-property-decorator';
9+
import Home from './components/Home.vue';
10+
11+
@Component({
12+
components: {
13+
Home
14+
},
15+
})
16+
export default class App extends Vue { }
17+
</script>
18+
19+
<style>
20+
</style>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<template>
2+
<div class="home">
3+
<h1>{{ msg }}</h1>
4+
<p>Welcome to your new single-page application, built with <a href="https://vuejs.org" target="_blank">Vue.js</a> and <a href="http://www.typescriptlang.org/" target="_blank">TypeScript</a>.</p>
5+
</div>
6+
</template>
7+
8+
<script lang="ts">
9+
import { Component, Prop, Vue } from 'vue-property-decorator';
10+
11+
@Component
12+
export default class Home extends Vue {
13+
@Prop() private msg!: string;
14+
}
15+
</script>
16+
17+
<!-- Add "scoped" attribute to limit CSS to this component only -->
18+
<style scoped>
19+
</style>
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# $projectname$
2+
3+
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
3+
<PropertyGroup>
4+
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
5+
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
6+
</PropertyGroup>
7+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
8+
<PropertyGroup>
9+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
10+
<SchemaVersion>2.0</SchemaVersion>
11+
<ProjectGuid>$guid1$</ProjectGuid>
12+
<ProjectHome>.</ProjectHome>
13+
<StartupFile>node_modules\@vue\cli-service\bin\vue-cli-service.js</StartupFile>
14+
<StartWebBrowser>True</StartWebBrowser>
15+
<SearchPath></SearchPath>
16+
<WorkingDirectory>.</WorkingDirectory>
17+
<OutputPath>.</OutputPath>
18+
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
19+
<ProjectTypeGuids>{3AF33F2E-1136-4D97-BBB7-1795711AC8B8};{349c5851-65df-11da-9384-00065b846f21};{9092AA53-FB77-4645-B42D-1CCCA6BD08BD}</ProjectTypeGuids>
20+
<NodejsPort>1337</NodejsPort>
21+
<TypeScriptSourceMap>true</TypeScriptSourceMap>
22+
<TypeScriptModuleKind>CommonJS</TypeScriptModuleKind>
23+
<TypeScriptToolsVersion>$typescriptversion$</TypeScriptToolsVersion>
24+
<EnableTypeScript>true</EnableTypeScript>
25+
<StartWebBrowser>true</StartWebBrowser>
26+
<ScriptArguments>serve</ScriptArguments>
27+
</PropertyGroup>
28+
29+
<ItemGroup>
30+
<Content Include=".babelrc" />
31+
<Content Include="public\favicon.ico" />
32+
<Content Include="public\index.html" />
33+
<Content Include="src\App.vue" />
34+
<Content Include="src\components\Home.vue" />
35+
<Content Include="tsconfig.json" />
36+
<Content Include="package.json" />
37+
<Content Include="README.md" />
38+
</ItemGroup>
39+
<ItemGroup>
40+
<Folder Include="dist\" />
41+
<Folder Include="public\" />
42+
<Folder Include="src\" />
43+
<Folder Include="src\assets\" />
44+
<Folder Include="src\components\" />
45+
</ItemGroup>
46+
<ItemGroup>
47+
<TypeScriptCompile Include="src\main.ts" />
48+
<TypeScriptCompile Include="src\shims.d.ts" />
49+
</ItemGroup>
50+
<ItemGroup>
51+
<Compile Include=".postcssrc.js" />
52+
</ItemGroup>
53+
54+
<!-- Do not delete the following Import Project. While this appears to do nothing it is a marker for setting TypeScript properties before our import that depends on them. -->
55+
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="False" />
56+
<PropertyGroup>
57+
<PostBuildEvent>
58+
npm run build
59+
</PostBuildEvent>
60+
</PropertyGroup>
61+
<Import Project="$(VSToolsPath)\Node.js Tools\Microsoft.NodejsTools.targets" />
62+
63+
<ProjectExtensions>
64+
<VisualStudio>
65+
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
66+
<WebProjectProperties>
67+
<UseIIS>False</UseIIS>
68+
<AutoAssignPort>True</AutoAssignPort>
69+
<DevelopmentServerPort>0</DevelopmentServerPort>
70+
<DevelopmentServerVPath>/</DevelopmentServerVPath>
71+
<IISUrl>http://localhost:48022/</IISUrl>
72+
<NTLMAuthentication>False</NTLMAuthentication>
73+
<UseCustomServer>True</UseCustomServer>
74+
<CustomServerUrl>http://localhost:1337</CustomServerUrl>
75+
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
76+
</WebProjectProperties>
77+
</FlavorProperties>
78+
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}" User="">
79+
<WebProjectProperties>
80+
<StartPageUrl>
81+
</StartPageUrl>
82+
<StartAction>CurrentPage</StartAction>
83+
<AspNetDebugging>True</AspNetDebugging>
84+
<SilverlightDebugging>False</SilverlightDebugging>
85+
<NativeDebugging>False</NativeDebugging>
86+
<SQLDebugging>False</SQLDebugging>
87+
<ExternalProgram>
88+
</ExternalProgram>
89+
<StartExternalURL>
90+
</StartExternalURL>
91+
<StartCmdLineArguments>
92+
</StartCmdLineArguments>
93+
<StartWorkingDirectory>
94+
</StartWorkingDirectory>
95+
<EnableENC>False</EnableENC>
96+
<AlwaysStartWebServerOnDebug>False</AlwaysStartWebServerOnDebug>
97+
</WebProjectProperties>
98+
</FlavorProperties>
99+
</VisualStudio>
100+
</ProjectExtensions>
101+
</Project>
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<VSTemplate Version="3.0.0" Type="Project" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
2+
<TemplateData>
3+
<Name Package="{FE8A8C3D-328A-476D-99F9-2A24B75F8C7F}" ID="4009"/>
4+
<Description Package="{FE8A8C3D-328A-476D-99F9-2A24B75F8C7F}" ID="4010"/>
5+
<Icon Package="{FE8A8C3D-328A-476D-99F9-2A24B75F8C7F}" ID="412"/>
6+
<ProjectType>TypeScript</ProjectType>
7+
<TemplateID>Microsoft.TypeScript.VuejsApp</TemplateID>
8+
<SortOrder>130</SortOrder>
9+
<CreateNewFolder>true</CreateNewFolder>
10+
<DefaultName>VuejsApp</DefaultName>
11+
<ProvideDefaultName>true</ProvideDefaultName>
12+
<NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
13+
<PromptForSaveOnCreation>true</PromptForSaveOnCreation>
14+
<TemplateGroupID>Node.js</TemplateGroupID>
15+
</TemplateData>
16+
<TemplateContent>
17+
<Project File="TypeScriptVuejsApp.njsproj" ReplaceParameters="true">
18+
<Folder Name="dist" />
19+
<Folder Name="public">
20+
<ProjectItem>favicon.ico</ProjectItem>
21+
<ProjectItem ReplaceParameters="true">index.html</ProjectItem>
22+
</Folder>
23+
<Folder Name="src">
24+
<Folder Name="assets" />
25+
<Folder Name="components">
26+
<ProjectItem>Home.vue</ProjectItem>
27+
</Folder>
28+
<ProjectItem>App.vue</ProjectItem>
29+
<ProjectItem OpenInEditor="true">main.ts</ProjectItem>
30+
<ProjectItem>shims.d.ts</ProjectItem>
31+
</Folder>
32+
<ProjectItem>.babelrc</ProjectItem>
33+
<ProjectItem>.postcssrc.js</ProjectItem>
34+
<ProjectItem ReplaceParameters="true">package.json</ProjectItem>
35+
<ProjectItem ReplaceParameters="true">README.md</ProjectItem>
36+
<ProjectItem>tsconfig.json</ProjectItem>
37+
</Project>
38+
</TemplateContent>
39+
<WizardExtension>
40+
<Assembly>Microsoft.NodejsTools.ProjectWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Assembly>
41+
<FullClassName>Microsoft.NodejsTools.ProjectWizard.NpmWizardExtension</FullClassName>
42+
</WizardExtension>
43+
<WizardExtension>
44+
<Assembly>Microsoft.NodejsTools.ProjectWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Assembly>
45+
<FullClassName>Microsoft.NodejsTools.ProjectWizard.NodejsPackageParametersExtension</FullClassName>
46+
</WizardExtension>
47+
</VSTemplate>

0 commit comments

Comments
 (0)