Skip to content

Commit

Permalink
Merge branch 'Developer-NewSamples' into Developer
Browse files Browse the repository at this point in the history
  • Loading branch information
JeffreySu committed Apr 2, 2022
2 parents 8ea0b6e + 18ad842 commit 7bfda49
Show file tree
Hide file tree
Showing 122 changed files with 13,289 additions and 836 deletions.
22 changes: 22 additions & 0 deletions Samples/All/net6-mvc/Senparc.Weixin.Sample.Net6.sln
Original file line number Diff line number Diff line change
Expand Up @@ -91,10 +91,13 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Senparc.Weixin.Sample.Work"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Senparc.Weixin.Sample.WxOpen", "..\..\WxOpen\Senparc.Weixin.Sample.WxOpen\Senparc.Weixin.Sample.WxOpen.csproj", "{5CDE163E-A083-418F-B70A-63F25A957666}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Senparc.Weixin.Sample.TenPayV2", "..\..\TenPayV2\Senparc.Weixin.Sample.TenPayV2\Senparc.Weixin.Sample.TenPayV2.csproj", "{94C58964-01E0-4AA0-AF98-5851208D9755}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
..\..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems*{5cde163e-a083-418f-b70a-63f25a957666}*SharedItemsImports = 5
..\..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems*{81a078a9-97d1-446d-88ed-87f4bb484d91}*SharedItemsImports = 5
..\..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems*{94c58964-01e0-4aa0-af98-5851208d9755}*SharedItemsImports = 5
..\..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems*{9fe36012-8b32-488e-96ad-ba7cedaeeab8}*SharedItemsImports = 13
..\..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems*{defd229c-0482-4924-8746-73d21b9dab02}*SharedItemsImports = 5
EndGlobalSection
Expand Down Expand Up @@ -616,6 +619,24 @@ Global
{5CDE163E-A083-418F-B70A-63F25A957666}.Test|x64.Build.0 = Debug|Any CPU
{5CDE163E-A083-418F-B70A-63F25A957666}.Test|x86.ActiveCfg = Debug|Any CPU
{5CDE163E-A083-418F-B70A-63F25A957666}.Test|x86.Build.0 = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Debug|Any CPU.Build.0 = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Debug|x64.ActiveCfg = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Debug|x64.Build.0 = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Debug|x86.ActiveCfg = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Debug|x86.Build.0 = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Release|Any CPU.ActiveCfg = Release|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Release|Any CPU.Build.0 = Release|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Release|x64.ActiveCfg = Release|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Release|x64.Build.0 = Release|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Release|x86.ActiveCfg = Release|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Release|x86.Build.0 = Release|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Test|Any CPU.ActiveCfg = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Test|Any CPU.Build.0 = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Test|x64.ActiveCfg = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Test|x64.Build.0 = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Test|x86.ActiveCfg = Debug|Any CPU
{94C58964-01E0-4AA0-AF98-5851208D9755}.Test|x86.Build.0 = Debug|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -657,6 +678,7 @@ Global
{9FE36012-8B32-488E-96AD-BA7CEDAEEAB8} = {34CFB1D8-6025-4E93-A67F-D94DD3B9198F}
{DEFD229C-0482-4924-8746-73D21B9DAB02} = {34CFB1D8-6025-4E93-A67F-D94DD3B9198F}
{5CDE163E-A083-418F-B70A-63F25A957666} = {34CFB1D8-6025-4E93-A67F-D94DD3B9198F}
{94C58964-01E0-4AA0-AF98-5851208D9755} = {34CFB1D8-6025-4E93-A67F-D94DD3B9198F}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {DC7AD3EC-AB37-497E-925B-DCD5129FE6D3}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ public IActionResult Index()
var sdkList = new List<Home_IndexVD_AssemblyModel>();
sdkList.Add(new Home_IndexVD_AssemblyModel("SDK 公共基础库", "Senparc.Weixin", typeof(Senparc.Weixin.WeixinRegister), gitHubUrl: sdkGitHubUrl));
sdkList.Add(new Home_IndexVD_AssemblyModel("公众号<br />JSSDK<br />摇一摇周边", "Senparc.Weixin.MP", typeof(Senparc.Weixin.MP.Register), gitHubUrl: sdkGitHubUrl));//DPBMARK MP DPBMARK_END
sdkList.Add(new Home_IndexVD_AssemblyModel("公众号MvcExtension", "Senparc.Weixin.MP.MvcExtension", typeof(Senparc.Weixin.MP.MvcExtension.WeixinResult), "Senparc.Weixin.MP.Mvc", gitHubUrl: sdkGitHubUrl));//DPBMARK MP DPBMARK_END
sdkList.Add(new Home_IndexVD_AssemblyModel("公众号MvcExtension", "Senparc.Weixin.MP.MvcExtension", typeof(Senparc.Weixin.MP.MvcExtension.SenparcOAuthAttribute), "Senparc.Weixin.MP.Mvc", gitHubUrl: sdkGitHubUrl));//DPBMARK MP DPBMARK_END
sdkList.Add(new Home_IndexVD_AssemblyModel("小程序", "Senparc.Weixin.WxOpen", typeof(Senparc.Weixin.WxOpen.Register), gitHubUrl: sdkGitHubUrl));//DPBMARK MiniProgram DPBMARK_END
sdkList.Add(new Home_IndexVD_AssemblyModel("微信支付", "Senparc.Weixin.TenPay", typeof(Senparc.Weixin.TenPay.Register), gitHubUrl: sdkGitHubUrl));//DPBMARK TenPay DPBMARK_END
sdkList.Add(new Home_IndexVD_AssemblyModel("微信支付V3(新)", "Senparc.Weixin.TenPayV3", typeof(Senparc.Weixin.TenPayV3.Register), supportNet45: false, gitHubUrl: sdkGitHubUrl));//DPBMARK TenPay DPBMARK_END
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,30 +22,27 @@ 2. 目前 Senparc.Weixin SDK 已经全面转向异步方法驱动,
*/

//DPBMARK_FILE MP
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;
using System;
using System.IO;

using Microsoft.AspNetCore.Mvc;
using Senparc.Weixin.MP.Entities.Request;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace Senparc.Weixin.Sample.Net6.Controllers
{
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Options;
using Senparc.CO2NET.AspNet.HttpUtility;
using Senparc.CO2NET.Cache;
using Senparc.CO2NET.HttpUtility;
using Senparc.CO2NET.Utilities;
using Senparc.NeuChar.MessageHandlers;
using Senparc.Weixin.AspNet.MvcExtension;
using Senparc.Weixin.Entities;
using Senparc.Weixin.HttpUtility;
using Senparc.Weixin.MP;
using Senparc.Weixin.MP.MvcExtension;
using Senparc.Weixin.MP.Entities.Request;
using Senparc.Weixin.Sample.CommonService.CustomMessageHandler;
using Senparc.Weixin.Sample.CommonService.Utilities;
using System.Text;
using System.Threading;
using System.Threading.Tasks;


public partial class WeixinController : BaseController
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
using System.Threading.Tasks;
using Senparc.Weixin.MP.MessageContexts;
using Senparc.CO2NET.AspNet.HttpUtility;
using Senparc.Weixin.AspNet.MvcExtension;

namespace Senparc.Weixin.Sample.Net6.Controllers
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
using Senparc.CO2NET.HttpUtility;
using Senparc.CO2NET.Utilities;
using Senparc.CO2NET.AspNet.HttpUtility;
using Senparc.Weixin.AspNet.MvcExtension;

namespace Senparc.Weixin.Sample.Net6.Controllers
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ 2. 目前 Senparc.Weixin SDK 已经全面转向异步方法驱动,
using Microsoft.AspNetCore.Mvc;
using Senparc.CO2NET.AspNet.HttpUtility;
using Senparc.CO2NET.Utilities;
using Senparc.Weixin.AspNet.MvcExtension;
using Senparc.Weixin.Entities;
using Senparc.Weixin.MP.MvcExtension;
using Senparc.Weixin.Sample.CommonService.WorkMessageHandlers;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ 2. 目前 Senparc.Weixin SDK 已经全面转向异步方法驱动,
using System.Collections;
using Senparc.Weixin.Exceptions;
using Senparc.Weixin.WxOpen.AdvancedAPIs.Template;
using Senparc.Weixin.AspNet.MvcExtension;
using System.Threading;

namespace Senparc.Weixin.Sample.Net6.Controllers.WxOpen
{
Expand Down Expand Up @@ -78,7 +80,7 @@ public ActionResult Get(PostModel postModel, string echostr)
/// </summary>
[HttpPost]
[ActionName("Index")]
public ActionResult Post(PostModel postModel)
public async Task<ActionResult> Post(PostModel postModel)
{
if (!CheckSignature.Check(postModel.Signature, postModel.Timestamp, postModel.Nonce, Token))
{
Expand All @@ -99,7 +101,7 @@ public ActionResult Post(PostModel postModel)
}

//自定义MessageHandler,对微信请求的详细判断操作都在这里面。
var messageHandler = new CustomWxOpenMessageHandler(Request.GetRequestMemoryStream(), postModel, maxRecordCount);
var messageHandler = new CustomWxOpenMessageHandler(await Request.GetRequestMemoryStreamAsync(), postModel, maxRecordCount);


try
Expand All @@ -111,7 +113,8 @@ public ActionResult Post(PostModel postModel)
//测试时可开启此记录,帮助跟踪数据,使用前请确保App_Data文件夹存在,且有读写权限。
messageHandler.SaveRequestMessageLog();//记录 Request 日志(可选)

messageHandler.Execute();//执行微信处理过程(关键)
var ct = new CancellationToken();
await messageHandler.ExecuteAsync(ct);//执行微信处理过程(关键)

messageHandler.SaveResponseMessageLog();//记录 Response 日志(可选)

Expand All @@ -123,25 +126,25 @@ public ActionResult Post(PostModel postModel)
{
using (TextWriter tw = new StreamWriter(ServerUtility.ContentRootMapPath("~/App_Data/Error_WxOpen_" + _getRandomFileName() + ".txt")))
{
tw.WriteLine("ExecptionMessage:" + ex.Message);
tw.WriteLine(ex.Source);
tw.WriteLine(ex.StackTrace);
await tw.WriteLineAsync("ExecptionMessage:" + ex.Message);
await tw.WriteLineAsync(ex.Source);
await tw.WriteLineAsync(ex.StackTrace);
//tw.WriteLine("InnerExecptionMessage:" + ex.InnerException.Message);

if (messageHandler.ResponseDocument != null)
{
tw.WriteLine(messageHandler.ResponseDocument.ToString());
await tw.WriteLineAsync(messageHandler.ResponseDocument.ToString());
}

if (ex.InnerException != null)
{
tw.WriteLine("========= InnerException =========");
tw.WriteLine(ex.InnerException.Message);
tw.WriteLine(ex.InnerException.Source);
tw.WriteLine(ex.InnerException.StackTrace);
await tw.WriteLineAsync("========= InnerException =========");
await tw.WriteLineAsync(ex.InnerException.Message);
await tw.WriteLineAsync(ex.InnerException.Source);
await tw.WriteLineAsync(ex.InnerException.StackTrace);
}

tw.Flush();
await tw.FlushAsync();
tw.Close();
}
return Content("");
Expand Down Expand Up @@ -538,7 +541,7 @@ public async Task<ActionResult> UniformSend(string sessionId)
sessionBag.OpenId,
new Mp_Template_Msg(mpAppId,
mpTemplateId,
"https://dev.senparc.com",
"https://dev.senparc.com",
miniprogram,
templateData)
);
Expand Down
28 changes: 28 additions & 0 deletions Samples/MP/Senparc.Weixin.Sample.MP.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.0.31903.59
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Senparc.Weixin.Sample.MP", "Senparc.Weixin.Sample.MP\Senparc.Weixin.Sample.MP.csproj", "{99EEB8CC-FE5E-4A1D-80C2-9A0C1FA757BD}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems*{99eeb8cc-fe5e-4a1d-80c2-9a0c1fa757bd}*SharedItemsImports = 5
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{99EEB8CC-FE5E-4A1D-80C2-9A0C1FA757BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{99EEB8CC-FE5E-4A1D-80C2-9A0C1FA757BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{99EEB8CC-FE5E-4A1D-80C2-9A0C1FA757BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{99EEB8CC-FE5E-4A1D-80C2-9A0C1FA757BD}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {34AD62B8-CE7D-43AB-82FD-C46CBB2A6E76}
EndGlobalSection
EndGlobal
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ namespace Senparc.Weixin.Sample.MP.Controllers
using Senparc.CO2NET.AspNet.HttpUtility;
using Senparc.CO2NET.Utilities;
using Senparc.NeuChar.MessageHandlers;
using Senparc.Weixin.AspNet.MvcExtension;
using Senparc.Weixin.MP;
using Senparc.Weixin.MP.Entities.Request;
using Senparc.Weixin.MP.MvcExtension;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:17965",
"sslPort": 44325
"sslPort": 44365
}
},
"profiles": {
"Senparc.Weixin.Sample.MP": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "https://localhost:7078;http://localhost:5078",
"applicationUrl": "https://localhost:7065;http://localhost:5065",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
Expand Down
41 changes: 20 additions & 21 deletions Samples/MP/Senparc.Weixin.Sample.MP/Senparc.Weixin.Sample.MP.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,24 +8,8 @@
<!-- 此节点为 Sample 共享文件需要而添加,实际项目无需添加 -->
<GenerateEmbeddedFilesManifest Condition=" '$(Configuration)' != 'Release' ">true</GenerateEmbeddedFilesManifest>
</PropertyGroup>

<ItemGroup>
<None Remove="Views\Shared\_Layout.cshtml.css" />
</ItemGroup>

<ItemGroup>
<Content Include="Views\Shared\_Layout.cshtml.css" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\src\Senparc.Weixin.AspNet\Senparc.Weixin.AspNet.net6.csproj" />
<ProjectReference Include="..\..\..\src\Senparc.Weixin.MP.Middleware\Senparc.Weixin.MP.Middleware.net6.csproj" />
<ProjectReference Include="..\..\..\src\Senparc.Weixin.MP.MvcExtension\Senparc.Weixin.MP.MvcExtension\Senparc.Weixin.MP.MvcExtension.net6.csproj" />
<ProjectReference Include="..\..\..\src\Senparc.Weixin.MP\Senparc.Weixin.MP\Senparc.Weixin.MP.net6.csproj" />
</ItemGroup>


<!-- 此节点为 Sample 共享文件需要而添加,实际项目无需添加 -->

<!-- 此节点为 Sample 共享文件需要而添加,实际项目无需添加 -->
<ItemGroup Condition=" '$(Configuration)' != 'Release' ">
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.2.0" />
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0" />
Expand All @@ -35,10 +19,25 @@
</EmbeddedResource>-->
<EmbeddedResource Include="wwwroot\**\*" />
</ItemGroup>
<ItemGroup>
<Folder Include="wwwroot\css\" />
</ItemGroup>
<!-- 此节点为 Sample 共享文件需要而添加,实际项目无需添加 -->
<Import Project="..\..\Shared\Senparc.Weixin.Sample.Shared\Senparc.Weixin.Sample.Shared.projitems" Label="Shared" />


<!--引用 Nuget 包-->
<ItemGroup>
<PackageReference Include="Senparc.Weixin.AspNet" Version="0.7.6" />
<PackageReference Include="Senparc.Weixin.MP" Version="16.17.8" />
<PackageReference Include="Senparc.Weixin.MP.Middleware" Version="0.7.6" />
<PackageReference Include="Senparc.Weixin.MP.MVC" Version="7.11.6" />
</ItemGroup>

<!--直接引用源码-->
<!--<ItemGroup>
<ProjectReference Include="..\..\..\src\Senparc.Weixin.AspNet\Senparc.Weixin.AspNet.net6.csproj" />
<ProjectReference Include="..\..\..\src\Senparc.Weixin.MP.Middleware\Senparc.Weixin.MP.Middleware.net6.csproj" />
<ProjectReference Include="..\..\..\src\Senparc.Weixin.MP.MvcExtension\Senparc.Weixin.MP.MvcExtension\Senparc.Weixin.MP.MvcExtension.net6.csproj" />
<ProjectReference Include="..\..\..\src\Senparc.Weixin.MP\Senparc.Weixin.MP\Senparc.Weixin.MP.net6.csproj" />
</ItemGroup>-->


</Project>
7 changes: 3 additions & 4 deletions Samples/MP/Senparc.Weixin.Sample.MP/Views/Home/Index.cshtml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
</nav>
</div>

@(await Html.PartialAsync("_SideNote"))
@(await Html.PartialAsync("_SideBottomNote"))
</div>

<div class="col-sm-10 bd-main" data-bs-spy="scroll" data-bs-target="#navbar_left" data-bs-offset="0" tabindex="0">
Expand Down Expand Up @@ -321,7 +321,7 @@
var result = await Senparc.Weixin.MP.AdvancedAPIs.UserApi.GetAsync(appId);//获取关注者 OpenId 信息</code></pre>
</p>
<blockquote class="blockquote">
appId 参数,必须是已经经过注册的,这样即使AccessToken 过期,SDK也会全自动处理。如果是未经过注册的 appId,则需要先获取 AccessToken,然后调用接口。
appId 参数,必须是已经经过注册的,这样即使 AccessToken 过期,SDK也会全自动处理。如果是未经过注册的 appId,则需要先获取 AccessToken,然后调用接口。
</blockquote>

<h5>使用 AccessToken 调用接口(不推荐)</h5>
Expand Down Expand Up @@ -424,9 +424,8 @@ var result = await Senparc.Weixin.MP.AdvancedAPIs.UserApi.GetAsync(accessToken);
</figcaption>
</figure>
<p>更多设置详情请参考:<a href="https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html" target="_blank">JS-SDK说明文档</a>。</p>
<!-- JSSDK 结束 -->
</div>

<!-- JSSDK 结束 -->
<!-- OAuth 2.0 开始 -->
<div class="tab-pane fade" id="nav-oauth" role="tabpanel" aria-labelledby="nav-profile-tab">
<p>当你需要在网页上获取用户的 OpenId、头像、昵称等信息的时候,就需要使用 OAuth 2.0 的方式和微信服务器通讯。</p>
Expand Down
10 changes: 7 additions & 3 deletions Samples/MP/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,12 @@

当前 Sample 用于独立演示公众号的主要功能

正在快速更新中,非最终版,敬请期待!
打开 `Senparc.Weixin.Sample.MP.sln` 打开解决方案(使用 Nuget 包引用)。

## 打开项目
## 打开全量 Sample 项目

当前您仍然可以使用 [全量 Sample](../All/net6-mvc/) 解决方案打开,并单独运行 Senparc.Weixin.Sample.MP 项目。
当前您仍然可以使用 [全量 Sample](../All/net6-mvc/) 解决方案打开,并将 Senparc.Weixin.Sample.MP 项目设为启动项目。

## 引用源码调试

当前项目默认使用 Nuget 包引用,如果您想直接引用源码调试,可以打开 [全量 Sample](../All/net6-mvc/),并编辑当前项目 .csproj 文件,根据注释,删除 Nuget 包引用代码,并启用源码项目引用。
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,12 @@ figure.file {
color: #810303;
}


blockquote.blockquote {
border-left: 2px solid #026da7;
padding: 10px 16px;
background: #e6f0f5;
font-size: 1.05rem;
}

figure.file blockquote.blockquote {
Expand Down

Large diffs are not rendered by default.

Loading

0 comments on commit 7bfda49

Please sign in to comment.