Browse Source

Refactor bundling.

pull/301/head
Halil ibrahim Kalkan 8 years ago
parent
commit
eaf83ac603
  1. 8
      src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpBundleItemTagHelper.cs
  2. 5
      src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpScriptTagHelper.cs
  3. 5
      src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpStyleTagHelper.cs
  4. 26
      src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/BundleTagHelperContributorTypeItem.cs
  5. 25
      src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/BundleTagHelperFileItem.cs
  6. 37
      src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/BundleTagHelperItem.cs

8
src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpBundleItemTagHelper.cs

@ -33,7 +33,7 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
return Src
.RemovePreFix("/")
.RemovePostFix(StringComparison.OrdinalIgnoreCase, ".js")
.RemovePostFix(StringComparison.OrdinalIgnoreCase, "." + GetFileExtension())
.Replace("/", ".");
}
@ -44,15 +44,17 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
if (Type != null)
{
return new BundleTagHelperItem(Type);
return new BundleTagHelperContributorTypeItem(Type);
}
if (Src != null)
{
return new BundleTagHelperItem(Src);
return new BundleTagHelperFileItem(Src);
}
throw new AbpException("abp-script tag helper requires to set either src or type!");
}
protected abstract string GetFileExtension();
}
}

5
src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpScriptTagHelper.cs

@ -10,5 +10,10 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
}
protected override string GetFileExtension()
{
return "js";
}
}
}

5
src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpStyleTagHelper.cs

@ -10,5 +10,10 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
}
protected override string GetFileExtension()
{
return "css";
}
}
}

26
src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/BundleTagHelperContributorTypeItem.cs

@ -0,0 +1,26 @@
using System;
using JetBrains.Annotations;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
public class BundleTagHelperContributorTypeItem : BundleTagHelperItem
{
[NotNull]
public Type Type { get; }
public BundleTagHelperContributorTypeItem([NotNull] Type type)
{
Type = Check.NotNull(type, nameof(type));
}
public override string ToString()
{
return Type.FullName;
}
public override void AddToConfiguration(BundleConfiguration configuration)
{
configuration.AddContributors(Type);
}
}
}

25
src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/BundleTagHelperFileItem.cs

@ -0,0 +1,25 @@
using JetBrains.Annotations;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
public class BundleTagHelperFileItem : BundleTagHelperItem
{
[NotNull]
public string File { get; }
public BundleTagHelperFileItem([NotNull] string file)
{
File = Check.NotNull(file, nameof(file));
}
public override string ToString()
{
return File;
}
public override void AddToConfiguration(BundleConfiguration configuration)
{
configuration.AddFiles(File);
}
}
}

37
src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/BundleTagHelperItem.cs

@ -1,38 +1,7 @@
using System;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{
public class BundleTagHelperItem
public abstract class BundleTagHelperItem
{
public string File { get; }
public Type Type { get; }
public BundleTagHelperItem(string file)
{
File = file;
}
public BundleTagHelperItem(Type type)
{
Type = type;
}
public override string ToString()
{
return File ?? Type.FullName ?? "?";
}
public void AddToConfiguration(BundleConfiguration configuration)
{
if (File != null)
{
configuration.AddFiles(File);
}
else if (Type != null)
{
configuration.AddContributors(Type);
}
}
public abstract void AddToConfiguration(BundleConfiguration configuration);
}
}
Loading…
Cancel
Save