mirror of https://github.com/abpframework/abp.git
28 changed files with 430 additions and 71 deletions
@ -0,0 +1,30 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
||||
|
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. --> |
||||
|
<xs:element name="Weavers"> |
||||
|
<xs:complexType> |
||||
|
<xs:all> |
||||
|
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1"> |
||||
|
<xs:complexType> |
||||
|
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" /> |
||||
|
</xs:complexType> |
||||
|
</xs:element> |
||||
|
</xs:all> |
||||
|
<xs:attribute name="VerifyAssembly" type="xs:boolean"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
<xs:attribute name="VerifyIgnoreCodes" type="xs:string"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
<xs:attribute name="GenerateXsd" type="xs:boolean"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
</xs:complexType> |
||||
|
</xs:element> |
||||
|
</xs:schema> |
||||
@ -0,0 +1,30 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
||||
|
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. --> |
||||
|
<xs:element name="Weavers"> |
||||
|
<xs:complexType> |
||||
|
<xs:all> |
||||
|
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1"> |
||||
|
<xs:complexType> |
||||
|
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" /> |
||||
|
</xs:complexType> |
||||
|
</xs:element> |
||||
|
</xs:all> |
||||
|
<xs:attribute name="VerifyAssembly" type="xs:boolean"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
<xs:attribute name="VerifyIgnoreCodes" type="xs:string"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
<xs:attribute name="GenerateXsd" type="xs:boolean"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
</xs:complexType> |
||||
|
</xs:element> |
||||
|
</xs:schema> |
||||
@ -0,0 +1,16 @@ |
|||||
|
using AutoMapper; |
||||
|
using Volo.Blogging.Admin.Blogs; |
||||
|
using Volo.Blogging.Admin.Pages.Blogging.Admin.Blogs; |
||||
|
using EditModel = Volo.Blogging.Admin.Pages.Blogging.Admin.Blogs.EditModel; |
||||
|
|
||||
|
namespace Volo.Blogging.Admin |
||||
|
{ |
||||
|
public class AbpBloggingAdminWebAutoMapperProfile : Profile |
||||
|
{ |
||||
|
public AbpBloggingAdminWebAutoMapperProfile() |
||||
|
{ |
||||
|
CreateMap<CreateModel.BlogCreateModalView, CreateBlogDto>(); |
||||
|
CreateMap<BlogDto, EditModel.BlogEditViewModel>(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,53 @@ |
|||||
|
using Microsoft.Extensions.DependencyInjection; |
||||
|
using Volo.Abp.AspNetCore.Mvc.Localization; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Bundling; |
||||
|
using Volo.Abp.AutoMapper; |
||||
|
using Volo.Abp.Modularity; |
||||
|
using Volo.Abp.UI.Navigation; |
||||
|
using Volo.Abp.VirtualFileSystem; |
||||
|
using Volo.Blogging.Localization; |
||||
|
|
||||
|
namespace Volo.Blogging.Admin |
||||
|
{ |
||||
|
[DependsOn( |
||||
|
typeof(BloggingAdminHttpApiModule), |
||||
|
typeof(AbpAspNetCoreMvcUiBootstrapModule), |
||||
|
typeof(AbpAspNetCoreMvcUiBundlingModule), |
||||
|
typeof(AbpAutoMapperModule) |
||||
|
)] |
||||
|
public class BloggingAdminWebModule : AbpModule |
||||
|
{ |
||||
|
public override void PreConfigureServices(ServiceConfigurationContext context) |
||||
|
{ |
||||
|
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => |
||||
|
{ |
||||
|
options.AddAssemblyResource(typeof(BloggingResource), typeof(BloggingAdminWebModule).Assembly); |
||||
|
}); |
||||
|
|
||||
|
PreConfigure<IMvcBuilder>(mvcBuilder => |
||||
|
{ |
||||
|
mvcBuilder.AddApplicationPartIfNotExists(typeof(BloggingAdminWebModule).Assembly); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
public override void ConfigureServices(ServiceConfigurationContext context) |
||||
|
{ |
||||
|
Configure<AbpNavigationOptions>(options => |
||||
|
{ |
||||
|
options.MenuContributors.Add(new BloggingAdminMenuContributor()); |
||||
|
}); |
||||
|
|
||||
|
Configure<AbpVirtualFileSystemOptions>(options => |
||||
|
{ |
||||
|
options.FileSets.AddEmbedded<BloggingAdminWebModule>("Volo.Blogging"); |
||||
|
}); |
||||
|
|
||||
|
context.Services.AddAutoMapperObjectMapper<BloggingAdminWebModule>(); |
||||
|
Configure<AbpAutoMapperOptions>(options => |
||||
|
{ |
||||
|
options.AddProfile<AbpBloggingAdminWebAutoMapperProfile>(validate: true); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,3 @@ |
|||||
|
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd"> |
||||
|
<ConfigureAwait ContinueOnCapturedContext="false" /> |
||||
|
</Weavers> |
||||
@ -0,0 +1,30 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
||||
|
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. --> |
||||
|
<xs:element name="Weavers"> |
||||
|
<xs:complexType> |
||||
|
<xs:all> |
||||
|
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1"> |
||||
|
<xs:complexType> |
||||
|
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" /> |
||||
|
</xs:complexType> |
||||
|
</xs:element> |
||||
|
</xs:all> |
||||
|
<xs:attribute name="VerifyAssembly" type="xs:boolean"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
<xs:attribute name="VerifyIgnoreCodes" type="xs:string"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
<xs:attribute name="GenerateXsd" type="xs:boolean"> |
||||
|
<xs:annotation> |
||||
|
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation> |
||||
|
</xs:annotation> |
||||
|
</xs:attribute> |
||||
|
</xs:complexType> |
||||
|
</xs:element> |
||||
|
</xs:schema> |
||||
@ -1,8 +1,7 @@ |
|||||
@page |
@page |
||||
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal |
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal |
||||
@using Volo.Blogging.Pages.Blog |
@inherits Volo.Blogging.Admin.Pages.Blogging.BloggingAdminPage |
||||
@inherits BloggingPage |
@model Volo.Blogging.Admin.Pages.Blogging.Admin.Blogs.CreateModel |
||||
@model Volo.Blogging.Pages.Admin.Blogs.CreateModel |
|
||||
@{ |
@{ |
||||
Layout = null; |
Layout = null; |
||||
} |
} |
||||
@ -0,0 +1,17 @@ |
|||||
|
using Microsoft.AspNetCore.Mvc.Localization; |
||||
|
using Microsoft.AspNetCore.Mvc.Razor.Internal; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.RazorPages; |
||||
|
using Volo.Blogging.Localization; |
||||
|
|
||||
|
namespace Volo.Blogging.Admin.Pages.Blogging |
||||
|
{ |
||||
|
public abstract class BloggingAdminPage : AbpPage |
||||
|
{ |
||||
|
[RazorInject] |
||||
|
public IHtmlLocalizer<BloggingResource> L { get; set; } |
||||
|
|
||||
|
public const string DefaultTitle = "Blogging"; |
||||
|
|
||||
|
public const int MaxShortContentLength = 200; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,12 @@ |
|||||
|
using Volo.Abp.AspNetCore.Mvc.UI.RazorPages; |
||||
|
|
||||
|
namespace Volo.Blogging.Admin.Pages |
||||
|
{ |
||||
|
public abstract class BloggingAdminPageModel : AbpPageModel |
||||
|
{ |
||||
|
public BloggingAdminPageModel() |
||||
|
{ |
||||
|
ObjectMapperContext = typeof(BloggingAdminWebModule); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,5 @@ |
|||||
|
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers |
||||
|
@addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI |
||||
|
@addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bootstrap |
||||
|
@addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bundling |
||||
|
@addTagHelper *, Volo.Blogging.Web |
||||
@ -0,0 +1,27 @@ |
|||||
|
{ |
||||
|
"iisSettings": { |
||||
|
"windowsAuthentication": false, |
||||
|
"anonymousAuthentication": true, |
||||
|
"iisExpress": { |
||||
|
"applicationUrl": "http://localhost:50000/", |
||||
|
"sslPort": 0 |
||||
|
} |
||||
|
}, |
||||
|
"profiles": { |
||||
|
"IIS Express": { |
||||
|
"commandName": "IISExpress", |
||||
|
"launchBrowser": true, |
||||
|
"environmentVariables": { |
||||
|
"ASPNETCORE_ENVIRONMENT": "Development" |
||||
|
} |
||||
|
}, |
||||
|
"Volo.Blogging.Web": { |
||||
|
"commandName": "Project", |
||||
|
"launchBrowser": true, |
||||
|
"environmentVariables": { |
||||
|
"ASPNETCORE_ENVIRONMENT": "Development" |
||||
|
}, |
||||
|
"applicationUrl": "http://localhost:50014/" |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,85 @@ |
|||||
|
<Project Sdk="Microsoft.NET.Sdk.Web"> |
||||
|
|
||||
|
<Import Project="..\..\..\..\configureawait.props" /> |
||||
|
<Import Project="..\..\..\..\common.props" /> |
||||
|
|
||||
|
<PropertyGroup> |
||||
|
<TargetFramework>netcoreapp3.1</TargetFramework> |
||||
|
<AssemblyName>Volo.Blogging.Admin.Web</AssemblyName> |
||||
|
<PackageId>Volo.Blogging.Admin.Web</PackageId> |
||||
|
<TypeScriptToolsVersion>2.8</TypeScriptToolsVersion> |
||||
|
<OutputType>Library</OutputType> |
||||
|
<IsPackable>true</IsPackable> |
||||
|
<RootNamespace>Volo.Blogging.Admin</RootNamespace> |
||||
|
</PropertyGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Packages\Volo.Abp.AspNetCore.Mvc.UI.Packages.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bundling\Volo.Abp.AspNetCore.Mvc.UI.Bundling.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" /> |
||||
|
<ProjectReference Include="..\Volo.Blogging.Admin.HttpApi\Volo.Blogging.Admin.HttpApi.csproj" /> |
||||
|
<PackageReference Include="Markdig.Signed" Version="0.18.0" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<EmbeddedResource Include="Pages\**\*.js" /> |
||||
|
<EmbeddedResource Include="Pages\**\*.css" /> |
||||
|
<Content Remove="Pages\**\*.js" /> |
||||
|
<Content Remove="Pages\**\*.css" /> |
||||
|
<Content Remove="compilerconfig.json" /> |
||||
|
<Content Remove="Properties\launchSettings.json" /> |
||||
|
<Content Update="Pages\Admin\Blogs\Create.cshtml"> |
||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile> |
||||
|
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> |
||||
|
</Content> |
||||
|
<Content Update="Pages\Admin\Blogs\Edit.cshtml"> |
||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile> |
||||
|
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> |
||||
|
</Content> |
||||
|
<Content Update="Pages\Admin\Blogs\Index.cshtml"> |
||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile> |
||||
|
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> |
||||
|
</Content> |
||||
|
<EmbeddedResource Update="Pages\Blogs\Posts\Index.min.css"> |
||||
|
<DependentUpon>Index.css</DependentUpon> |
||||
|
</EmbeddedResource> |
||||
|
<EmbeddedResource Update="Pages\Blogs\Posts\new.min.css"> |
||||
|
<DependentUpon>new.css</DependentUpon> |
||||
|
</EmbeddedResource> |
||||
|
<EmbeddedResource Update="Pages\Blogs\Shared\Styles\blog.min.css"> |
||||
|
<DependentUpon>blog.css</DependentUpon> |
||||
|
</EmbeddedResource> |
||||
|
<EmbeddedResource Update="Pages\Blogs\Shared\Styles\_home.min.css"> |
||||
|
<DependentUpon>_home.css</DependentUpon> |
||||
|
</EmbeddedResource> |
||||
|
<Content Update="Pages\_ViewImports.cshtml"> |
||||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile> |
||||
|
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> |
||||
|
</Content> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<None Include="compilerconfig.json" /> |
||||
|
<None Include="Properties\launchSettings.json" /> |
||||
|
<None Update="Pages\Blogs\Posts\new.css.map"> |
||||
|
<DependentUpon>new.css</DependentUpon> |
||||
|
</None> |
||||
|
<None Update="Pages\Blogs\Shared\Styles\blog.css.map"> |
||||
|
<DependentUpon>blog.css</DependentUpon> |
||||
|
</None> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<Compile Update="Pages\Admin\Blogs\Create.cshtml.cs"> |
||||
|
<DependentUpon>Create.cshtml</DependentUpon> |
||||
|
</Compile> |
||||
|
<Compile Update="Pages\Admin\Blogs\Edit.cshtml.cs"> |
||||
|
<DependentUpon>Edit.cshtml</DependentUpon> |
||||
|
</Compile> |
||||
|
<Compile Update="Pages\Admin\Blogs\Index.cshtml.cs"> |
||||
|
<DependentUpon>Index.cshtml</DependentUpon> |
||||
|
</Compile> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
</Project> |
||||
@ -0,0 +1,18 @@ |
|||||
|
[ |
||||
|
{ |
||||
|
"outputFile": "Pages/Blog/Shared/Styles/blog.css", |
||||
|
"inputFile": "Pages/Blog/Shared/Styles/blog.scss" |
||||
|
}, |
||||
|
{ |
||||
|
"outputFile": "Pages/Blog/Shared/Styles/_home.css", |
||||
|
"inputFile": "Pages/Blog/Shared/Styles/_home.scss" |
||||
|
}, |
||||
|
{ |
||||
|
"outputFile": "Pages/Blog/Posts/Index.css", |
||||
|
"inputFile": "Pages/Blog/Posts/Index.scss" |
||||
|
}, |
||||
|
{ |
||||
|
"outputFile": "Pages/Blogs/Shared/Styles/blog.css", |
||||
|
"inputFile": "Pages/Blogs/Shared/Styles/blog.scss" |
||||
|
} |
||||
|
] |
||||
@ -0,0 +1,49 @@ |
|||||
|
{ |
||||
|
"compilers": { |
||||
|
"less": { |
||||
|
"autoPrefix": "", |
||||
|
"cssComb": "none", |
||||
|
"ieCompat": true, |
||||
|
"strictMath": false, |
||||
|
"strictUnits": false, |
||||
|
"relativeUrls": true, |
||||
|
"rootPath": "", |
||||
|
"sourceMapRoot": "", |
||||
|
"sourceMapBasePath": "", |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"sass": { |
||||
|
"includePath": "", |
||||
|
"indentType": "space", |
||||
|
"indentWidth": 2, |
||||
|
"outputStyle": "nested", |
||||
|
"Precision": 5, |
||||
|
"relativeUrls": true, |
||||
|
"sourceMapRoot": "", |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"stylus": { |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"babel": { |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"coffeescript": { |
||||
|
"bare": false, |
||||
|
"runtimeMode": "node", |
||||
|
"sourceMap": false |
||||
|
} |
||||
|
}, |
||||
|
"minifiers": { |
||||
|
"css": { |
||||
|
"enabled": true, |
||||
|
"termSemicolons": true, |
||||
|
"gzip": false |
||||
|
}, |
||||
|
"javascript": { |
||||
|
"enabled": true, |
||||
|
"termSemicolons": true, |
||||
|
"gzip": false |
||||
|
} |
||||
|
} |
||||
|
} |
||||
Loading…
Reference in new issue