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 return Src
.RemovePreFix("/") .RemovePreFix("/")
.RemovePostFix(StringComparison.OrdinalIgnoreCase, ".js") .RemovePostFix(StringComparison.OrdinalIgnoreCase, "." + GetFileExtension())
.Replace("/", "."); .Replace("/", ".");
} }
@ -44,15 +44,17 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers
{ {
if (Type != null) if (Type != null)
{ {
return new BundleTagHelperItem(Type); return new BundleTagHelperContributorTypeItem(Type);
} }
if (Src != null) 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!"); 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 abstract void AddToConfiguration(BundleConfiguration configuration);
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);
}
}
} }
} }
Loading…
Cancel
Save