From 685e29c061e3b63d72e1109398a760b994c53b99 Mon Sep 17 00:00:00 2001 From: Peter Morris Date: Thu, 5 May 2022 17:14:03 +0100 Subject: [PATCH] Logo + docs --- Docs/Releases.md | 30 +++++++++++ Images/control-flow-logo.png | Bin 0 -> 3195 bytes Images/control-flow-logo.psd | Bin 0 -> 59155 bytes README.md | 49 +++++++++++------- Source/Lib/Directory.Build.props | 6 +-- .../Morris.Blazor.ControlFlow.csproj | 15 ++++++ Source/Morris.Blazor.ControlFlow.sln | 5 +- 7 files changed, 82 insertions(+), 23 deletions(-) create mode 100644 Docs/Releases.md create mode 100644 Images/control-flow-logo.png create mode 100644 Images/control-flow-logo.psd diff --git a/Docs/Releases.md b/Docs/Releases.md new file mode 100644 index 0000000..62d447e --- /dev/null +++ b/Docs/Releases.md @@ -0,0 +1,30 @@ +# Morris.Blazor.ControlFlow + +![](../Images/control-flow-logo.png) + + +## Releases +### New in 1.0.0 +- `ForEach` +``` + +
  • @Person.Name
  • +``` + +- Simple `If` +``` + + Content + +``` +- `If` with `Else` +``` + + + Content + + + Other content + + +``` \ No newline at end of file diff --git a/Images/control-flow-logo.png b/Images/control-flow-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..379c4f06ee3b15300225ffe73c119710abc602fe GIT binary patch literal 3195 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 literal 0 HcmV?d00001 diff --git a/Images/control-flow-logo.psd b/Images/control-flow-logo.psd new file mode 100644 index 0000000000000000000000000000000000000000..e714c7d8e2e9e79ec8c5b94d4e2726171c951dba GIT binary patch literal 59155 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 8747a24..2c1d329 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,39 @@ # Morris.Blazor.ControlFlow -## New in 1.0.0 -- `ForEach` -``` - -
  • @Person.Name
  • -``` +![](./Images/control-flow-logo.png) + + +## Introduction +[![NuGet version (Morris.Blazor.ControlFlow)](https://img.shields.io/nuget/v/Morris.Blazor.ControlFlow.svg?style=flat-square)](https://www.nuget.org/packages/Morris.Blazor.ControlFlow/) + +***ControlFlow*** is a Blazor library created to help reduce the amount of C# +code found in markup files. -- Simple `If` +Instead of this ``` - - Content - +@if (People?.Length > 0) +{ +
      + @foreach (var person in People) + { +
    1. @person.FullName
    2. + } +
    +} ``` -- `If` with `Else` + +You can write this + ``` - - - Content - - - Other content - + +
      + +
    1. @person.FullName
    2. +
      +
    ``` + +## More information +- View the [Example projects](https://github.com/mrpmorris/Morris.Blazor.ControlFlow/tree/master/Source/Tutorials) +- Read the [Release notes](./Docs/Releases.md) \ No newline at end of file diff --git a/Source/Lib/Directory.Build.props b/Source/Lib/Directory.Build.props index 4b2153c..b52ab80 100644 --- a/Source/Lib/Directory.Build.props +++ b/Source/Lib/Directory.Build.props @@ -2,9 +2,9 @@ netcoreapp3.1;net5.0;net6.0 10 - 1.0.0 - 1.0.0.0 - 1.0.0.0 + 1.0.1 + 1.0.1 + 1.0.1 Peter Morris diff --git a/Source/Lib/Morris.Blazor.ControlFlow/Morris.Blazor.ControlFlow.csproj b/Source/Lib/Morris.Blazor.ControlFlow/Morris.Blazor.ControlFlow.csproj index 8097afc..cdd17f7 100644 --- a/Source/Lib/Morris.Blazor.ControlFlow/Morris.Blazor.ControlFlow.csproj +++ b/Source/Lib/Morris.Blazor.ControlFlow/Morris.Blazor.ControlFlow.csproj @@ -3,6 +3,10 @@ 3.0 enable + A control flow library for Blazor to help eliminate C# code in your markup files. + control-flow-logo.png + README.md + Blazor @@ -11,6 +15,17 @@ ..\..\Lib\MrPMorris.snk + + + True + \ + + + True + \ + + + diff --git a/Source/Morris.Blazor.ControlFlow.sln b/Source/Morris.Blazor.ControlFlow.sln index a9f5ed6..9f74f30 100644 --- a/Source/Morris.Blazor.ControlFlow.sln +++ b/Source/Morris.Blazor.ControlFlow.sln @@ -7,6 +7,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig Lib\Directory.Build.props = Lib\Directory.Build.props + ..\README.md = ..\README.md EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Morris.Blazor.ControlFlow", "Lib\Morris.Blazor.ControlFlow\Morris.Blazor.ControlFlow.csproj", "{5B499DA3-0DB1-48A5-B8E5-3E0B04F53EB7}" @@ -15,11 +16,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tutorials", "Tutorials", "{ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ForEachExample", "Tutorials\ForEachExample\ForEachExample.csproj", "{E438D699-B285-4F8A-8087-095765599DFA}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IfThenElseSample", "Tutorials\IfThenElseSample\IfThenElseSample.csproj", "{06B9F71D-5203-4CDD-90A5-627BACFADA75}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IfThenElseSample", "Tutorials\IfThenElseSample\IfThenElseSample.csproj", "{06B9F71D-5203-4CDD-90A5-627BACFADA75}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{CE4D64CF-C516-4E76-8D3B-8F45E795F4D2}" ProjectSection(SolutionItems) = preProject - ..\README.md = ..\README.md + ..\Docs\Releases.md = ..\Docs\Releases.md EndProjectSection EndProject Global