Browse Source

Card Tag Helper improvements

pull/670/head
Yunus Emre Kalkan 7 years ago
parent
commit
f32fc5a0f3
  1. 19
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBackgroundTagHelper.cs
  2. 23
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBackgroundTagHelperService.cs
  3. 15
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBackgroundType.cs
  4. 15
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBorderColorType.cs
  5. 11
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardFooterTagHelper.cs
  6. 14
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardFooterTagHelperService.cs
  7. 1
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardImageTagHelper.cs
  8. 2
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTagHelper.cs
  9. 11
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTagHelperService.cs
  10. 19
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTextColorTagHelper.cs
  11. 23
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTextColorTagHelperService.cs
  12. 16
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTextColorType.cs

19
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBackgroundTagHelper.cs

@ -0,0 +1,19 @@
using Microsoft.AspNetCore.Razor.TagHelpers;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
[HtmlTargetElement("abp-card", Attributes = "background")]
[HtmlTargetElement("abp-card-header", Attributes = "background")]
[HtmlTargetElement("abp-card-body", Attributes = "background")]
[HtmlTargetElement("abp-card-footer", Attributes = "background")]
public class AbpCardBackgroundTagHelper : AbpTagHelper<AbpCardBackgroundTagHelper, AbpCardBackgroundTagHelperService>
{
public AbpCardBackgroundType Background { get; set; } = AbpCardBackgroundType.Default;
public AbpCardBackgroundTagHelper(AbpCardBackgroundTagHelperService tagHelperService)
: base(tagHelperService)
{
}
}
}

23
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBackgroundTagHelperService.cs

@ -0,0 +1,23 @@
using Microsoft.AspNetCore.Razor.TagHelpers;
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Microsoft.AspNetCore.Razor.TagHelpers;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public class AbpCardBackgroundTagHelperService : AbpTagHelperService<AbpCardBackgroundTagHelper>
{
public override void Process(TagHelperContext context, TagHelperOutput output)
{
SetBackground(context, output);
}
protected virtual void SetBackground(TagHelperContext context, TagHelperOutput output)
{
if (TagHelper.Background == AbpCardBackgroundType.Default)
{
return;
}
output.Attributes.AddClass("bg-" + TagHelper.Background.ToString().ToLowerInvariant());
}
}
}

15
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBackgroundType.cs

@ -0,0 +1,15 @@
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public enum AbpCardBackgroundType
{
Default,
Primary,
Secondary,
Success,
Danger,
Warning,
Info,
Light,
Dark,
}
}

15
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardBorderColorType.cs

@ -0,0 +1,15 @@
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public enum AbpCardBorderColorType
{
Default,
Primary,
Secondary,
Success,
Danger,
Warning,
Info,
Light,
Dark,
}
}

11
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardFooterTagHelper.cs

@ -0,0 +1,11 @@
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public class AbpCardFooterTagHelper : AbpTagHelper<AbpCardFooterTagHelper, AbpCardFooterTagHelperService>
{
public AbpCardFooterTagHelper(AbpCardFooterTagHelperService tagHelperService)
: base(tagHelperService)
{
}
}
}

14
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardFooterTagHelperService.cs

@ -0,0 +1,14 @@
using Microsoft.AspNetCore.Razor.TagHelpers;
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Microsoft.AspNetCore.Razor.TagHelpers;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public class AbpCardFooterTagHelperService : AbpTagHelperService<AbpCardFooterTagHelper>
{
public override void Process(TagHelperContext context, TagHelperOutput output)
{
output.Attributes.AddClass("card-footer");
output.TagName = "div";
}
}
}

1
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardImageTagHelper.cs

@ -3,6 +3,7 @@
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
[HtmlTargetElement("img", Attributes = "abp-card-image", TagStructure = TagStructure.WithoutEndTag)]
[HtmlTargetElement("abp-image", Attributes = "abp-card-image", TagStructure = TagStructure.WithoutEndTag)]
public class AbpCardImageTagHelper : AbpTagHelper<AbpCardImageTagHelper, AbpCardImageTagHelperService>
{
[HtmlAttributeName("abp-card-image")]

2
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTagHelper.cs

@ -2,6 +2,8 @@
{
public class AbpCardTagHelper : AbpTagHelper<AbpCardTagHelper, AbpCardTagHelperService>
{
public AbpCardBorderColorType Border { get; set; } = AbpCardBorderColorType.Default;
public AbpCardTagHelper(AbpCardTagHelperService tagHelperService)
: base(tagHelperService)
{

11
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTagHelperService.cs

@ -9,6 +9,17 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
output.TagName = "div";
output.Attributes.AddClass("card");
SetBorder(context, output);
}
protected virtual void SetBorder(TagHelperContext context, TagHelperOutput output)
{
if (TagHelper.Border == AbpCardBorderColorType.Default)
{
return;
}
output.Attributes.AddClass("border-" + TagHelper.Border.ToString().ToLowerInvariant());
}
}
}

19
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTextColorTagHelper.cs

@ -0,0 +1,19 @@
using Microsoft.AspNetCore.Razor.TagHelpers;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
[HtmlTargetElement("abp-card", Attributes = "text-color")]
[HtmlTargetElement("abp-card-header", Attributes = "text-color")]
[HtmlTargetElement("abp-card-body", Attributes = "text-color")]
[HtmlTargetElement("abp-card-footer", Attributes = "text-color")]
public class AbpCardTextColorTagHelper : AbpTagHelper<AbpCardTextColorTagHelper, AbpCardTextColorTagHelperService>
{
public AbpCardTextColorType TextColor { get; set; } = AbpCardTextColorType.Default;
public AbpCardTextColorTagHelper(AbpCardTextColorTagHelperService tagHelperService)
: base(tagHelperService)
{
}
}
}

23
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTextColorTagHelperService.cs

@ -0,0 +1,23 @@
using Microsoft.AspNetCore.Razor.TagHelpers;
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Microsoft.AspNetCore.Razor.TagHelpers;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public class AbpCardTextColorTagHelperService : AbpTagHelperService<AbpCardTextColorTagHelper>
{
public override void Process(TagHelperContext context, TagHelperOutput output)
{
SetTextColor(context, output);
}
protected virtual void SetTextColor(TagHelperContext context, TagHelperOutput output)
{
if (TagHelper.TextColor == AbpCardTextColorType.Default)
{
return;
}
output.Attributes.AddClass("text-" + TagHelper.TextColor.ToString().ToLowerInvariant());
}
}
}

16
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Card/AbpCardTextColorType.cs

@ -0,0 +1,16 @@
namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Card
{
public enum AbpCardTextColorType
{
Default,
White,
Primary,
Secondary,
Success,
Danger,
Warning,
Info,
Light,
Dark
}
}
Loading…
Cancel
Save