DotVvmBp
Changes
.editorconfig 22(+22 -0)
.gitignore 401(+401 -0)
DotVvmBp.sln 31(+31 -0)
src/DotVvmBp/App_Start/DotvvmStartup.cs 36(+36 -0)
src/DotVvmBp/App_Start/Startup.cs 19(+19 -0)
src/DotVvmBp/DotVvmBp.csproj 368(+368 -0)
src/DotVvmBp/favicon.ico 0(+0 -0)
src/DotVvmBp/Helpers/Constants.cs 8(+8 -0)
src/DotVvmBp/libman.json 10(+10 -0)
src/DotVvmBp/packages.config 48(+48 -0)
src/DotVvmBp/Properties/AssemblyInfo.cs 35(+35 -0)
src/DotVvmBp/ViewModels/DefaultViewModel.cs 12(+12 -0)
src/DotVvmBp/Views/Default.dothtml 21(+21 -0)
src/DotVvmBp/Views/Site.dotmaster 22(+22 -0)
src/DotVvmBp/Web.config 101(+101 -0)
src/DotVvmBp/Web.Debug.config 30(+30 -0)
src/DotVvmBp/Web.Release.config 31(+31 -0)
Details
.editorconfig 22(+22 -0)
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..2f50fa8
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,22 @@
+# EditorConfig is awesome: https://EditorConfig.org
+
+# top-most EditorConfig file
+root = true
+
+# Windows-style newlines with a newline ending every file
+[*]
+charset = utf-8
+end_of_line = crlf
+insert_final_newline = true
+
+# Matches files
+[Scripts/views/**/*.{ts,tsx,json,js,jsx,vue}]
+trim_trailing_whitespace = true
+insert_final_newline = true
+indent_style = space
+indent_size = 2
+
+# Matches the exact files either package.json
+[package.json]
+indent_style = space
+indent_size = 2
.gitignore 401(+401 -0)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..dc332ea
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,401 @@
+
+# Created by https://www.toptal.com/developers/gitignore/api/visualstudio
+# Edit at https://www.toptal.com/developers/gitignore?templates=visualstudio
+
+### VisualStudio ###
+## Ignore Visual Studio temporary files, build results, and
+## files generated by popular Visual Studio add-ons.
+##
+## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
+
+#libman
+**/wwwroot/css/bootstrap/
+
+# User-specific files
+*.rsuser
+*.suo
+*.user
+*.userosscache
+*.sln.docstates
+
+# User-specific files (MonoDevelop/Xamarin Studio)
+*.userprefs
+
+# Mono auto generated files
+mono_crash.*
+
+# Build results
+[Dd]ebug/
+[Dd]ebugPublic/
+[Rr]elease/
+[Rr]eleases/
+x64/
+x86/
+[Ww][Ii][Nn]32/
+[Aa][Rr][Mm]/
+[Aa][Rr][Mm]64/
+bld/
+[Bb]in/
+[Oo]bj/
+[Ll]og/
+[Ll]ogs/
+
+# Visual Studio 2015/2017 cache/options directory
+.vs/
+# Uncomment if you have tasks that create the project's static files in wwwroot
+#wwwroot/
+
+# Visual Studio 2017 auto generated files
+Generated\ Files/
+
+# MSTest test Results
+[Tt]est[Rr]esult*/
+[Bb]uild[Ll]og.*
+
+# NUnit
+*.VisualState.xml
+TestResult.xml
+nunit-*.xml
+
+# Build Results of an ATL Project
+[Dd]ebugPS/
+[Rr]eleasePS/
+dlldata.c
+
+# Benchmark Results
+BenchmarkDotNet.Artifacts/
+
+# .NET Core
+project.lock.json
+project.fragment.lock.json
+artifacts/
+
+# ASP.NET Scaffolding
+ScaffoldingReadMe.txt
+
+# StyleCop
+StyleCopReport.xml
+
+# Files built by Visual Studio
+*_i.c
+*_p.c
+*_h.h
+*.ilk
+*.meta
+*.obj
+*.iobj
+*.pch
+*.pdb
+*.ipdb
+*.pgc
+*.pgd
+*.rsp
+*.sbr
+*.tlb
+*.tli
+*.tlh
+*.tmp
+*.tmp_proj
+*_wpftmp.csproj
+*.log
+*.tlog
+*.vspscc
+*.vssscc
+.builds
+*.pidb
+*.svclog
+*.scc
+
+# Chutzpah Test files
+_Chutzpah*
+
+# Visual C++ cache files
+ipch/
+*.aps
+*.ncb
+*.opendb
+*.opensdf
+*.sdf
+*.cachefile
+*.VC.db
+*.VC.VC.opendb
+
+# Visual Studio profiler
+*.psess
+*.vsp
+*.vspx
+*.sap
+
+# Visual Studio Trace Files
+*.e2e
+
+# TFS 2012 Local Workspace
+$tf/
+
+# Guidance Automation Toolkit
+*.gpState
+
+# ReSharper is a .NET coding add-in
+_ReSharper*/
+*.[Rr]e[Ss]harper
+*.DotSettings.user
+
+# TeamCity is a build add-in
+_TeamCity*
+
+# DotCover is a Code Coverage Tool
+*.dotCover
+
+# AxoCover is a Code Coverage Tool
+.axoCover/*
+!.axoCover/settings.json
+
+# Coverlet is a free, cross platform Code Coverage Tool
+coverage*.json
+coverage*.xml
+coverage*.info
+
+# Visual Studio code coverage results
+*.coverage
+*.coveragexml
+
+# NCrunch
+_NCrunch_*
+.*crunch*.local.xml
+nCrunchTemp_*
+
+# MightyMoose
+*.mm.*
+AutoTest.Net/
+
+# Web workbench (sass)
+.sass-cache/
+
+# Installshield output folder
+[Ee]xpress/
+
+# DocProject is a documentation generator add-in
+DocProject/buildhelp/
+DocProject/Help/*.HxT
+DocProject/Help/*.HxC
+DocProject/Help/*.hhc
+DocProject/Help/*.hhk
+DocProject/Help/*.hhp
+DocProject/Help/Html2
+DocProject/Help/html
+
+# Click-Once directory
+publish/
+
+# Publish Web Output
+*.[Pp]ublish.xml
+*.azurePubxml
+# Note: Comment the next line if you want to checkin your web deploy settings,
+# but database connection strings (with potential passwords) will be unencrypted
+*.pubxml
+*.publishproj
+
+# Microsoft Azure Web App publish settings. Comment the next line if you want to
+# checkin your Azure Web App publish settings, but sensitive information contained
+# in these scripts will be unencrypted
+PublishScripts/
+
+# NuGet Packages
+*.nupkg
+# NuGet Symbol Packages
+*.snupkg
+# The packages folder can be ignored because of Package Restore
+**/[Pp]ackages/*
+# except build/, which is used as an MSBuild target.
+!**/[Pp]ackages/build/
+# Uncomment if necessary however generally it will be regenerated when needed
+#!**/[Pp]ackages/repositories.config
+# NuGet v3's project.json files produces more ignorable files
+*.nuget.props
+*.nuget.targets
+
+# Nuget personal access tokens and Credentials
+nuget.config
+
+# Microsoft Azure Build Output
+csx/
+*.build.csdef
+
+# Microsoft Azure Emulator
+ecf/
+rcf/
+
+# Windows Store app package directories and files
+AppPackages/
+BundleArtifacts/
+Package.StoreAssociation.xml
+_pkginfo.txt
+*.appx
+*.appxbundle
+*.appxupload
+
+# Visual Studio cache files
+# files ending in .cache can be ignored
+*.[Cc]ache
+# but keep track of directories ending in .cache
+!?*.[Cc]ache/
+
+# Others
+ClientBin/
+~$*
+*~
+*.dbmdl
+*.dbproj.schemaview
+*.jfm
+*.pfx
+*.publishsettings
+orleans.codegen.cs
+
+# Including strong name files can present a security risk
+# (https://github.com/github/gitignore/pull/2483#issue-259490424)
+#*.snk
+
+# Since there are multiple workflows, uncomment next line to ignore bower_components
+# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
+#bower_components/
+
+# RIA/Silverlight projects
+Generated_Code/
+
+# Backup & report files from converting an old project file
+# to a newer Visual Studio version. Backup files are not needed,
+# because we have git ;-)
+_UpgradeReport_Files/
+Backup*/
+UpgradeLog*.XML
+UpgradeLog*.htm
+ServiceFabricBackup/
+*.rptproj.bak
+
+# SQL Server files
+*.mdf
+*.ldf
+*.ndf
+
+# Business Intelligence projects
+*.rdl.data
+*.bim.layout
+*.bim_*.settings
+*.rptproj.rsuser
+*- [Bb]ackup.rdl
+*- [Bb]ackup ([0-9]).rdl
+*- [Bb]ackup ([0-9][0-9]).rdl
+
+# Microsoft Fakes
+FakesAssemblies/
+
+# GhostDoc plugin setting file
+*.GhostDoc.xml
+
+# Node.js Tools for Visual Studio
+.ntvs_analysis.dat
+node_modules/
+
+# Visual Studio 6 build log
+*.plg
+
+# Visual Studio 6 workspace options file
+*.opt
+
+# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
+*.vbw
+
+# Visual Studio LightSwitch build output
+**/*.HTMLClient/GeneratedArtifacts
+**/*.DesktopClient/GeneratedArtifacts
+**/*.DesktopClient/ModelManifest.xml
+**/*.Server/GeneratedArtifacts
+**/*.Server/ModelManifest.xml
+_Pvt_Extensions
+
+# Paket dependency manager
+.paket/paket.exe
+paket-files/
+
+# FAKE - F# Make
+.fake/
+
+# CodeRush personal settings
+.cr/personal
+
+# Python Tools for Visual Studio (PTVS)
+__pycache__/
+*.pyc
+
+# Cake - Uncomment if you are using it
+# tools/**
+# !tools/packages.config
+
+# Tabs Studio
+*.tss
+
+# Telerik's JustMock configuration file
+*.jmconfig
+
+# BizTalk build output
+*.btp.cs
+*.btm.cs
+*.odx.cs
+*.xsd.cs
+
+# OpenCover UI analysis results
+OpenCover/
+
+# Azure Stream Analytics local run output
+ASALocalRun/
+
+# MSBuild Binary and Structured Log
+*.binlog
+
+# NVidia Nsight GPU debugger configuration file
+*.nvuser
+
+# MFractors (Xamarin productivity tool) working folder
+.mfractor/
+
+# Local History for Visual Studio
+.localhistory/
+
+# BeatPulse healthcheck temp database
+healthchecksdb
+
+# Backup folder for Package Reference Convert tool in Visual Studio 2017
+MigrationBackup/
+
+# Ionide (cross platform F# VS Code tools) working folder
+.ionide/
+
+# Fody - auto-generated XML schema
+FodyWeavers.xsd
+
+# VS Code files for those working on multiple tools
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+*.code-workspace
+
+# Local History for Visual Studio Code
+.history/
+
+# Windows Installer files from build outputs
+*.cab
+*.msi
+*.msix
+*.msm
+*.msp
+
+# JetBrains Rider
+.idea/
+*.sln.iml
+
+### VisualStudio Patch ###
+# Additional files built by Visual Studio
+
+# End of https://www.toptal.com/developers/gitignore/api/visualstudio
DotVvmBp.sln 31(+31 -0)
diff --git a/DotVvmBp.sln b/DotVvmBp.sln
new file mode 100644
index 0000000..1ed9026
--- /dev/null
+++ b/DotVvmBp.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.31624.102
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotVvmBp", "src\DotVvmBp\DotVvmBp.csproj", "{FD4B8762-099E-45E9-AFC2-F13371866B21}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{4A45BA38-B613-4077-B9B6-20FF59B88F6F}"
+ ProjectSection(SolutionItems) = preProject
+ .editorconfig = .editorconfig
+ .gitignore = .gitignore
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {FD4B8762-099E-45E9-AFC2-F13371866B21}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FD4B8762-099E-45E9-AFC2-F13371866B21}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FD4B8762-099E-45E9-AFC2-F13371866B21}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FD4B8762-099E-45E9-AFC2-F13371866B21}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {D3252A11-1DF4-4E43-9E91-E899055BE5E9}
+ EndGlobalSection
+EndGlobal
src/DotVvmBp/App_Start/DotvvmStartup.cs 36(+36 -0)
diff --git a/src/DotVvmBp/App_Start/DotvvmStartup.cs b/src/DotVvmBp/App_Start/DotvvmStartup.cs
new file mode 100644
index 0000000..03c0de4
--- /dev/null
+++ b/src/DotVvmBp/App_Start/DotvvmStartup.cs
@@ -0,0 +1,36 @@
+
+namespace DotVvmBP
+{
+ using DotVVM.Framework.Configuration;
+ using Microsoft.Extensions.DependencyInjection;
+
+ public class DotvvmStartup : IDotvvmStartup, IDotvvmServiceConfigurator
+ {
+ public void Configure(DotvvmConfiguration config, string appPath)
+ {
+ ConfigureRoutes(config, appPath);
+ ConfigureResources(config, appPath);
+ ConfigureControls(config, appPath);
+ }
+
+ private void ConfigureControls(DotvvmConfiguration config, string appPath)
+ {
+ }
+
+ private void ConfigureResources(DotvvmConfiguration config, string appPath)
+ {
+ }
+
+ private void ConfigureRoutes(DotvvmConfiguration config, string appPath)
+ {
+ config.RouteTable.Add("Default", "", "Views/Default.dothtml");
+ // config.RouteTable.AutoDiscoverRoutes(new DefaultRouteStrategy(config));
+ }
+
+ public void ConfigureServices(IDotvvmServiceCollection svc)
+ {
+ svc.AddBusinessPack();
+ svc.AddDefaultTempStorages(Helpers.Constants.DefaultTemporaryStoragePath);
+ }
+ }
+}
src/DotVvmBp/App_Start/Startup.cs 19(+19 -0)
diff --git a/src/DotVvmBp/App_Start/Startup.cs b/src/DotVvmBp/App_Start/Startup.cs
new file mode 100644
index 0000000..18548f9
--- /dev/null
+++ b/src/DotVvmBp/App_Start/Startup.cs
@@ -0,0 +1,19 @@
+using DotVvmBP;
+using Microsoft.Owin;
+
+[assembly: OwinStartup(typeof(Startup))]
+namespace DotVvmBP
+{
+ using Owin;
+ using System.Web.Hosting;
+
+ public class Startup
+ {
+ public void Configuration(IAppBuilder app)
+ {
+ app.UseDotVVM<DotvvmStartup>(HostingEnvironment.ApplicationPhysicalPath,
+ HostingEnvironment.IsDevelopmentEnvironment,
+ HostingEnvironment.IsDevelopmentEnvironment);
+ }
+ }
+}
src/DotVvmBp/DotVvmBp.csproj 368(+368 -0)
diff --git a/src/DotVvmBp/DotVvmBp.csproj b/src/DotVvmBp/DotVvmBp.csproj
new file mode 100644
index 0000000..8253135
--- /dev/null
+++ b/src/DotVvmBp/DotVvmBp.csproj
@@ -0,0 +1,368 @@
+<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.props" Condition="Exists('..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.props')" />
+ <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>
+ </ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{FD4B8762-099E-45E9-AFC2-F13371866B21}</ProjectGuid>
+ <ProjectTypeGuids>{94ee71e2-ee2a-480b-8704-af46d2e58d94};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>DotVvmBP</RootNamespace>
+ <AssemblyName>DotVvmBP</AssemblyName>
+ <TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
+ <UseIISExpress>true</UseIISExpress>
+ <Use64BitIISExpress />
+ <IISExpressSSLPort>44335</IISExpressSSLPort>
+ <IISExpressAnonymousAuthentication />
+ <IISExpressWindowsAuthentication />
+ <IISExpressUseClassicPipelineMode />
+ <UseGlobalApplicationHostFile />
+ <NuGetPackageImportStamp>
+ </NuGetPackageImportStamp>
+ <TargetFrameworkProfile />
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Ben.Demystifier, Version=0.4.0.0, Culture=neutral, PublicKeyToken=a6d206e05440431a, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Ben.Demystifier.0.4.1\lib\net45\Ben.Demystifier.dll</HintPath>
+ </Reference>
+ <Reference Include="DotVVM.BusinessPack, Version=2.5.3.0, Culture=neutral, PublicKeyToken=77e8efd43b7ae75f, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\DotVVM.BusinessPack.2.5.3\lib\net451\DotVVM.BusinessPack.dll</HintPath>
+ </Reference>
+ <Reference Include="DotVVM.BusinessPack.Core, Version=2.5.3.0, Culture=neutral, PublicKeyToken=77e8efd43b7ae75f, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\DotVVM.BusinessPack.Core.2.5.3\lib\net451\DotVVM.BusinessPack.Core.dll</HintPath>
+ </Reference>
+ <Reference Include="DotVVM.Core, Version=2.5.2.0, Culture=neutral, PublicKeyToken=23f3607db32275da, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\DotVVM.Core.2.5.2\lib\net451\DotVVM.Core.dll</HintPath>
+ </Reference>
+ <Reference Include="DotVVM.Framework, Version=2.5.2.0, Culture=neutral, PublicKeyToken=23f3607db32275da, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\DotVVM.2.5.2\lib\net451\DotVVM.Framework.dll</HintPath>
+ </Reference>
+ <Reference Include="DotVVM.Framework.Hosting.Owin, Version=2.5.2.0, Culture=neutral, PublicKeyToken=23f3607db32275da, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\DotVVM.Owin.2.5.2\lib\net451\DotVVM.Framework.Hosting.Owin.dll</HintPath>
+ </Reference>
+ <Reference Include="DotVVM.Utils.HtmlElements, Version=2.5.3.0, Culture=neutral, PublicKeyToken=77e8efd43b7ae75f, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\DotVVM.Utils.HtmlElements.2.5.3\lib\net451\DotVVM.Utils.HtmlElements.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.CodeAnalysis, Version=3.11.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.CodeAnalysis.Common.3.11.0\lib\netstandard2.0\Microsoft.CodeAnalysis.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.CodeAnalysis.CSharp, Version=3.11.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.CodeAnalysis.CSharp.3.11.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.CSharp" />
+ <Reference Include="Microsoft.Extensions.DependencyInjection, Version=5.0.0.2, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Extensions.DependencyInjection.5.0.2\lib\net461\Microsoft.Extensions.DependencyInjection.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions, Version=5.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.5.0.0\lib\net461\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Extensions.Options, Version=5.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Extensions.Options.5.0.0\lib\net461\Microsoft.Extensions.Options.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Extensions.Primitives, Version=5.0.0.1, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Extensions.Primitives.5.0.1\lib\net461\Microsoft.Extensions.Primitives.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Owin, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Owin.4.2.0\lib\net45\Microsoft.Owin.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Owin.Host.SystemWeb, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Owin.Host.SystemWeb.4.2.0\lib\net45\Microsoft.Owin.Host.SystemWeb.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Owin.Security, Version=4.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Owin.Security.4.2.0\lib\net45\Microsoft.Owin.Security.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
+ </Reference>
+ <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
+ </Reference>
+ <Reference Include="Newtonsoft.Json.Bson, Version=1.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Newtonsoft.Json.Bson.1.0.2\lib\net45\Newtonsoft.Json.Bson.dll</HintPath>
+ </Reference>
+ <Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Collections.Immutable, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll</HintPath>
+ </Reference>
+ <Reference Include="System.ComponentModel.Composition" />
+ <Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Net" />
+ <Reference Include="System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
+ <Reference Include="System.Numerics" />
+ <Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Reflection.Metadata, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Reflection.Metadata.5.0.0\lib\net461\System.Reflection.Metadata.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Runtime.CompilerServices.Unsafe, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Runtime.CompilerServices.Unsafe.5.0.0\lib\net45\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Runtime.Remoting" />
+ <Reference Include="System.Text.Encoding.CodePages, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Text.Encoding.CodePages.5.0.0\lib\net461\System.Text.Encoding.CodePages.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
+ </Reference>
+ <Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+ <HintPath>..\..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Web.DynamicData" />
+ <Reference Include="System.Web.Entity" />
+ <Reference Include="System.Web.ApplicationServices" />
+ <Reference Include="System.ComponentModel.DataAnnotations" />
+ <Reference Include="System" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Web" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Web.Services" />
+ <Reference Include="System.EnterpriseServices" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="favicon.ico" />
+ <Content Include="Web.config" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.rtl.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.rtl.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.rtl.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.rtl.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.rtl.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.rtl.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.min.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.rtl.css" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.rtl.min.css" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.bundle.js" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.bundle.min.js" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.esm.js" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.esm.min.js" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.js" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.min.js" />
+ <Content Include="wwwroot\images\bootstrap-logo.svg" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="App_Start\DotvvmStartup.cs" />
+ <Compile Include="Helpers\Constants.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="App_Start\Startup.cs" />
+ <Compile Include="ViewModels\DefaultViewModel.cs" />
+ <Compile Include="ViewModels\SiteViewModel.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="libman.json" />
+ <None Include="packages.config" />
+ <Content Include="Views\Site.dotmaster" />
+ <Content Include="Views\Default.dothtml" />
+ <None Include="Web.Debug.config">
+ <DependentUpon>Web.config</DependentUpon>
+ </None>
+ <None Include="Web.Release.config">
+ <DependentUpon>Web.config</DependentUpon>
+ </None>
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.rtl.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-grid.rtl.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.rtl.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-reboot.rtl.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.rtl.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap-utilities.rtl.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.rtl.css.map" />
+ <Content Include="wwwroot\css\bootstrap\css\bootstrap.rtl.min.css.map" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.bundle.js.map" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.bundle.min.js.map" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.esm.js.map" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.esm.min.js.map" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.js.map" />
+ <Content Include="wwwroot\css\bootstrap\js\bootstrap.min.js.map" />
+ <Content Include="wwwroot\css\bootstrap\scss\_accordion.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_alert.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_badge.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_breadcrumb.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_button-group.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_buttons.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_card.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_carousel.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_close.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_containers.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_dropdown.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_forms.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_functions.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_grid.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_helpers.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_images.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_list-group.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_mixins.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_modal.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_nav.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_navbar.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_offcanvas.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_pagination.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_placeholders.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_popover.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_progress.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_reboot.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_root.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_spinners.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_tables.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_toasts.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_tooltip.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_transitions.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_type.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_utilities.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\_variables.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\bootstrap-grid.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\bootstrap-reboot.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\bootstrap-utilities.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\bootstrap.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_floating-labels.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_form-check.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_form-control.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_form-range.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_form-select.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_form-text.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_input-group.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_labels.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\forms\_validation.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_clearfix.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_colored-links.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_position.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_ratio.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_stacks.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_stretched-link.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_text-truncation.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_visually-hidden.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\helpers\_vr.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_alert.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_backdrop.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_border-radius.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_box-shadow.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_breakpoints.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_buttons.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_caret.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_clearfix.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_color-scheme.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_container.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_deprecate.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_forms.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_gradients.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_grid.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_image.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_list-group.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_lists.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_pagination.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_reset-text.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_resize.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_table-variants.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_text-truncate.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_transition.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_utilities.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\mixins\_visually-hidden.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\utilities\_api.scss" />
+ <Content Include="wwwroot\css\bootstrap\scss\vendor\_rfs.scss" />
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="App_Data\temporary\uploadedFiles\" />
+ </ItemGroup>
+ <ItemGroup>
+ <Analyzer Include="..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\analyzers\dotnet\cs\Microsoft.CodeAnalysis.Analyzers.dll" />
+ <Analyzer Include="..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\analyzers\dotnet\cs\Microsoft.CodeAnalysis.CSharp.Analyzers.dll" />
+ </ItemGroup>
+ <PropertyGroup>
+ <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
+ <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
+ </PropertyGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+ <WebProjectProperties>
+ <UseIIS>True</UseIIS>
+ <AutoAssignPort>True</AutoAssignPort>
+ <DevelopmentServerPort>58467</DevelopmentServerPort>
+ <DevelopmentServerVPath>/</DevelopmentServerVPath>
+ <IISUrl>http://localhost:5000/</IISUrl>
+ <NTLMAuthentication>False</NTLMAuthentication>
+ <UseCustomServer>False</UseCustomServer>
+ <CustomServerUrl>
+ </CustomServerUrl>
+ <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+ </WebProjectProperties>
+ </FlavorProperties>
+ <FlavorProperties GUID="{94ee71e2-ee2a-480b-8704-af46d2e58d94}" Configuration="Debug|Any CPU">
+ <DotvvmPropertyPageProjectFlavorCfg />
+ </FlavorProperties>
+ <FlavorProperties GUID="{94ee71e2-ee2a-480b-8704-af46d2e58d94}" Configuration="Release|Any CPU">
+ <DotvvmPropertyPageProjectFlavorCfg />
+ </FlavorProperties>
+ </VisualStudio>
+ </ProjectExtensions>
+ <Import Project="..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\build\net46\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.targets" Condition="Exists('..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\build\net46\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.targets')" />
+ <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
+ <PropertyGroup>
+ <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
+ </PropertyGroup>
+ <Error Condition="!Exists('..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\build\net46\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.3.6.0\build\net46\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.targets'))" />
+ <Error Condition="!Exists('..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.props'))" />
+ <Error Condition="!Exists('..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.targets'))" />
+ </Target>
+ <Import Project="..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.targets" Condition="Exists('..\..\packages\Microsoft.CodeAnalysis.Analyzers.3.3.2\build\Microsoft.CodeAnalysis.Analyzers.targets')" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
\ No newline at end of file
src/DotVvmBp/favicon.ico 0(+0 -0)
diff --git a/src/DotVvmBp/favicon.ico b/src/DotVvmBp/favicon.ico
new file mode 100644
index 0000000..0af01ac
Binary files /dev/null and b/src/DotVvmBp/favicon.ico differ
src/DotVvmBp/Helpers/Constants.cs 8(+8 -0)
diff --git a/src/DotVvmBp/Helpers/Constants.cs b/src/DotVvmBp/Helpers/Constants.cs
new file mode 100644
index 0000000..a6708e4
--- /dev/null
+++ b/src/DotVvmBp/Helpers/Constants.cs
@@ -0,0 +1,8 @@
+namespace DotVvmBP.Helpers
+{
+ public class Constants
+ {
+ public const string DefaultTemporaryStoragePath = "App_Data\\temporary";
+ public const string ViewModelsNamespace = "DotVvmBP.ViewModels";
+ }
+}
src/DotVvmBp/libman.json 10(+10 -0)
diff --git a/src/DotVvmBp/libman.json b/src/DotVvmBp/libman.json
new file mode 100644
index 0000000..fa65391
--- /dev/null
+++ b/src/DotVvmBp/libman.json
@@ -0,0 +1,10 @@
+{
+ "version": "1.0",
+ "defaultProvider": "cdnjs",
+ "libraries": [
+ {
+ "library": "bootstrap@5.1.0",
+ "destination": "wwwroot/css/bootstrap/"
+ }
+ ]
+}
\ No newline at end of file
src/DotVvmBp/packages.config 48(+48 -0)
diff --git a/src/DotVvmBp/packages.config b/src/DotVvmBp/packages.config
new file mode 100644
index 0000000..4a80e3c
--- /dev/null
+++ b/src/DotVvmBp/packages.config
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Ben.Demystifier" version="0.4.1" targetFramework="net461" />
+ <package id="DotVVM" version="2.5.2" targetFramework="net48" />
+ <package id="DotVVM.BusinessPack" version="2.5.3" targetFramework="net461" />
+ <package id="DotVVM.BusinessPack.Core" version="2.5.3" targetFramework="net461" />
+ <package id="DotVVM.Core" version="2.5.2" targetFramework="net48" />
+ <package id="DotVVM.Owin" version="2.5.2" targetFramework="net48" />
+ <package id="DotVVM.Utils.HtmlElements" version="2.5.3" targetFramework="net461" />
+ <package id="Microsoft.Bcl.AsyncInterfaces" version="5.0.0" targetFramework="net461" />
+ <package id="Microsoft.CodeAnalysis.Analyzers" version="3.3.2" targetFramework="net461" developmentDependency="true" />
+ <package id="Microsoft.CodeAnalysis.Common" version="3.11.0" targetFramework="net461" />
+ <package id="Microsoft.CodeAnalysis.CSharp" version="3.11.0" targetFramework="net461" />
+ <package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="3.6.0" targetFramework="net461" requireReinstallation="true" />
+ <package id="Microsoft.Extensions.DependencyInjection" version="5.0.2" targetFramework="net461" />
+ <package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="5.0.0" targetFramework="net461" />
+ <package id="Microsoft.Extensions.Options" version="5.0.0" targetFramework="net461" />
+ <package id="Microsoft.Extensions.Primitives" version="5.0.1" targetFramework="net461" />
+ <package id="Microsoft.Owin" version="4.2.0" targetFramework="net461" />
+ <package id="Microsoft.Owin.Host.SystemWeb" version="4.2.0" targetFramework="net461" />
+ <package id="Microsoft.Owin.Security" version="4.2.0" targetFramework="net461" />
+ <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net461" />
+ <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net461" />
+ <package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net461" />
+ <package id="Owin" version="1.0" targetFramework="net461" />
+ <package id="System.Buffers" version="4.5.1" targetFramework="net461" />
+ <package id="System.Collections" version="4.3.0" targetFramework="net461" />
+ <package id="System.Collections.Concurrent" version="4.3.0" targetFramework="net461" />
+ <package id="System.Collections.Immutable" version="5.0.0" targetFramework="net461" />
+ <package id="System.ComponentModel" version="4.3.0" targetFramework="net461" />
+ <package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="net461" />
+ <package id="System.Globalization" version="4.3.0" targetFramework="net461" />
+ <package id="System.Linq" version="4.3.0" targetFramework="net461" requireReinstallation="true" />
+ <package id="System.Linq.Expressions" version="4.3.0" targetFramework="net461" requireReinstallation="true" />
+ <package id="System.Memory" version="4.5.4" targetFramework="net461" />
+ <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net461" />
+ <package id="System.Reflection" version="4.3.0" targetFramework="net461" requireReinstallation="true" />
+ <package id="System.Reflection.Metadata" version="5.0.0" targetFramework="net461" />
+ <package id="System.Resources.ResourceManager" version="4.3.0" targetFramework="net461" />
+ <package id="System.Runtime" version="4.3.1" targetFramework="net461" requireReinstallation="true" />
+ <package id="System.Runtime.CompilerServices.Unsafe" version="5.0.0" targetFramework="net461" />
+ <package id="System.Runtime.Extensions" version="4.3.1" targetFramework="net461" requireReinstallation="true" />
+ <package id="System.Text.Encoding.CodePages" version="5.0.0" targetFramework="net461" />
+ <package id="System.Threading" version="4.3.0" targetFramework="net461" />
+ <package id="System.Threading.Tasks" version="4.3.0" targetFramework="net461" />
+ <package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net461" />
+ <package id="System.ValueTuple" version="4.5.0" targetFramework="net461" requireReinstallation="true" />
+</packages>
\ No newline at end of file
src/DotVvmBp/Properties/AssemblyInfo.cs 35(+35 -0)
diff --git a/src/DotVvmBp/Properties/AssemblyInfo.cs b/src/DotVvmBp/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..0e7cd0a
--- /dev/null
+++ b/src/DotVvmBp/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("DotVvmCastleWindsor")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("DotVvmCastleWindsor")]
+[assembly: AssemblyCopyright("Copyright © 2021")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("fd4b8762-099e-45e9-afc2-f13371866b21")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
src/DotVvmBp/ViewModels/DefaultViewModel.cs 12(+12 -0)
diff --git a/src/DotVvmBp/ViewModels/DefaultViewModel.cs b/src/DotVvmBp/ViewModels/DefaultViewModel.cs
new file mode 100644
index 0000000..0f4153d
--- /dev/null
+++ b/src/DotVvmBp/ViewModels/DefaultViewModel.cs
@@ -0,0 +1,12 @@
+namespace DotVvmBP.ViewModels
+{
+ public class DefaultViewModel : SiteViewModel
+ {
+ public override string Title => "Default";
+
+ public void Refresh()
+ {
+ Context.RedirectToLocalUrl("/");
+ }
+ }
+}
diff --git a/src/DotVvmBp/ViewModels/SiteViewModel.cs b/src/DotVvmBp/ViewModels/SiteViewModel.cs
new file mode 100644
index 0000000..5270f1b
--- /dev/null
+++ b/src/DotVvmBp/ViewModels/SiteViewModel.cs
@@ -0,0 +1,9 @@
+namespace DotVvmBP.ViewModels
+{
+ using DotVVM.Framework.ViewModel;
+
+ public abstract class SiteViewModel : DotvvmViewModelBase
+ {
+ public abstract string Title { get; }
+ }
+}
src/DotVvmBp/Views/Default.dothtml 21(+21 -0)
diff --git a/src/DotVvmBp/Views/Default.dothtml b/src/DotVvmBp/Views/Default.dothtml
new file mode 100644
index 0000000..6e19c51
--- /dev/null
+++ b/src/DotVvmBp/Views/Default.dothtml
@@ -0,0 +1,21 @@
+@viewModel DotVvmBP.ViewModels.DefaultViewModel, DotVvmBP
+@masterPage Views/Site.dotmaster
+
+<dot:Content ContentPlaceHolderID="Main">
+ <div class="px-4 py-5 my-5 text-center">
+ <img class="d-block mx-auto mb-4" src="/wwwroot/images/bootstrap-logo.svg" alt="Bootstrap Logo" width="72" height="57">
+ <h1 class="display-5 fw-bold">DotVvm with Business Pack</h1>
+ <div class="col-lg-6 mx-auto">
+ <p class="lead mb-4">Try setting a breakpoint on the <i>DefaultViewModel.Refresh()</i> handler. This page will result in the following error message:</p>
+
+ <div class="alert alert-danger" role="alert">
+ The binding property 'SimplePathExpressionBindingProeprty' is not supported.
+ </div>
+
+ <div class="d-grid gap-2 d-sm-flex justify-content-sm-center">
+ <dot:Button type="button" class="btn btn-primary btn-lg px-4 gap-3" Click="{command: Refresh()}">Refresh</dot:Button>
+ </div>
+ </div>
+ </div>
+</dot:Content>
+
src/DotVvmBp/Views/Site.dotmaster 22(+22 -0)
diff --git a/src/DotVvmBp/Views/Site.dotmaster b/src/DotVvmBp/Views/Site.dotmaster
new file mode 100644
index 0000000..1090ac7
--- /dev/null
+++ b/src/DotVvmBp/Views/Site.dotmaster
@@ -0,0 +1,22 @@
+@viewModel DotVvmBP.ViewModels.SiteViewModel, DotVvmBP
+
+<!doctype html>
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <title>DotVvm Castle Windsor</title>
+ <meta name="description" content="Illustrates issue with wiring up a Castle Windsor container in the DotVvmStartup class.">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="theme-color" content="#fafafa">
+ <%--<link href="../wwwroot/css/bootstrap/css/bootstrap.min.css" rel="stylesheet" />--%>
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
+</head>
+
+<body>
+ <dot:ContentPlaceHolder ID="Main" />
+</body>
+
+</html>
+
+
src/DotVvmBp/Web.config 101(+101 -0)
diff --git a/src/DotVvmBp/Web.config b/src/DotVvmBp/Web.config
new file mode 100644
index 0000000..e58544a
--- /dev/null
+++ b/src/DotVvmBp/Web.config
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ For more information on how to configure your ASP.NET application, please visit
+ https://go.microsoft.com/fwlink/?LinkId=169433
+ -->
+<configuration>
+ <!--
+ For a description of web.config changes see http://go.microsoft.com/fwlink/?LinkId=235367.
+
+ The following attributes can be set on the <httpRuntime> tag.
+ <system.Web>
+ <httpRuntime targetFramework="4.8" />
+ </system.Web>
+ -->
+ <system.web>
+ <compilation targetFramework="4.8" debug="true">
+ <assemblies>
+ <add assembly="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" />
+ </assemblies>
+ </compilation>
+ <httpRuntime targetFramework="4.6.1" />
+ </system.web>
+ <system.codedom>
+ <compilers>
+ <compiler extension=".cs" language="c#;cs;csharp" warningLevel="4" compilerOptions="/langversion:7.0 /nowarn:1659;1699;1701;612;618" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <compiler extension=".vb" language="vb;vbs;visualbasic;vbscript" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008,40000,40008 /define:_MYTYPE=\"Web\" /optionInfer+" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ </compilers>
+ </system.codedom>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection.Metadata" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-1.4.2.0" newVersion="1.4.2.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.Extensions.DependencyInjection.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.Extensions.Options" publicKeyToken="adb9793829ddae60" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.Extensions.DependencyInjection" publicKeyToken="adb9793829ddae60" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.2" newVersion="5.0.0.2" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.CodeAnalysis.CSharp" publicKeyToken="31bf3856ad364e35" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-3.11.0.0" newVersion="3.11.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.CodeAnalysis" publicKeyToken="31bf3856ad364e35" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-3.11.0.0" newVersion="3.11.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Ben.Demystifier" publicKeyToken="a6d206e05440431a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-0.4.0.0" newVersion="0.4.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="Microsoft.Extensions.Primitives" publicKeyToken="adb9793829ddae60" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.1" newVersion="5.0.0.1" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding.CodePages" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="DotVVM.Core" publicKeyToken="23f3607db32275da" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-2.5.2.0" newVersion="2.5.2.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="DotVVM.Framework" publicKeyToken="23f3607db32275da" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-2.5.2.0" newVersion="2.5.2.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration>
\ No newline at end of file
src/DotVvmBp/Web.Debug.config 30(+30 -0)
diff --git a/src/DotVvmBp/Web.Debug.config b/src/DotVvmBp/Web.Debug.config
new file mode 100644
index 0000000..fae9cfe
--- /dev/null
+++ b/src/DotVvmBp/Web.Debug.config
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!-- For more information on using web.config transformation visit https://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an attribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration>
\ No newline at end of file
src/DotVvmBp/Web.Release.config 31(+31 -0)
diff --git a/src/DotVvmBp/Web.Release.config b/src/DotVvmBp/Web.Release.config
new file mode 100644
index 0000000..da6e960
--- /dev/null
+++ b/src/DotVvmBp/Web.Release.config
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!-- For more information on using web.config transformation visit https://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an attribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <compilation xdt:Transform="RemoveAttributes(debug)" />
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration>
\ No newline at end of file
diff --git a/src/DotVvmBp/wwwroot/images/bootstrap-logo.svg b/src/DotVvmBp/wwwroot/images/bootstrap-logo.svg
new file mode 100644
index 0000000..f018965
--- /dev/null
+++ b/src/DotVvmBp/wwwroot/images/bootstrap-logo.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="512" height="408"><defs><linearGradient id="bs-logo-a" x1="76.079" x2="523.48" y1="10.798" y2="365.945" gradientUnits="userSpaceOnUse"><stop stop-color="#9013fe"/><stop offset="1" stop-color="#6610f2"/></linearGradient><linearGradient id="bs-logo-b" x1="193.508" x2="293.514" y1="109.74" y2="278.872" gradientUnits="userSpaceOnUse"><stop stop-color="#fff"/><stop offset="1" stop-color="#f1e5fc"/></linearGradient><filter xmlns="http://www.w3.org/2000/svg" id="bs-logo-c" width="197" height="249" x="161.901" y="83.457" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/><feOffset dy="4"/><feGaussianBlur stdDeviation="8"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.15 0"/><feBlend in2="BackgroundImageFix" result="effect1_dropShadow"/><feBlend in="SourceGraphic" in2="effect1_dropShadow" result="shape"/></filter></defs><path fill="url(#bs-logo-a)" d="M56.481 53.32C55.515 25.58 77.128 0 106.342 0h299.353c29.214 0 50.827 25.58 49.861 53.32-.928 26.647.277 61.165 8.964 89.31 8.715 28.232 23.411 46.077 47.48 48.37v26c-24.069 2.293-38.765 20.138-47.48 48.37-8.687 28.145-9.892 62.663-8.964 89.311.966 27.739-20.647 53.319-49.861 53.319H106.342c-29.214 0-50.827-25.58-49.86-53.319.927-26.648-.278-61.166-8.966-89.311C38.802 237.138 24.07 219.293 0 217v-26c24.069-2.293 38.802-20.138 47.516-48.37 8.688-28.145 9.893-62.663 8.965-89.31z"/><path fill="url(#bs-logo-b)" filter="url(#bs-logo-c)" stroke="#fff" d="M267.103 312.457c47.297 0 75.798-23.158 75.798-61.355 0-28.873-20.336-49.776-50.532-53.085v-1.203c22.185-3.609 39.594-24.211 39.594-47.219 0-32.783-25.882-54.138-65.322-54.138h-88.74v217h89.202zm-54.692-189.48h45.911c24.958 0 39.131 11.128 39.131 31.279 0 21.505-16.484 33.535-46.372 33.535h-38.67v-64.814zm0 161.961v-71.431h45.602c32.661 0 49.608 12.03 49.608 35.49 0 23.459-16.484 35.941-47.605 35.941h-47.605z"/></svg>