|
|
|
@ -2,10 +2,12 @@ |
|
|
|
using System.Text; |
|
|
|
using System.Threading.Tasks; |
|
|
|
using Microsoft.AspNetCore.Mvc; |
|
|
|
using Microsoft.Extensions.Options; |
|
|
|
using Microsoft.Extensions.Logging; |
|
|
|
using Volo.Abp.Auditing; |
|
|
|
using Volo.Abp.Http; |
|
|
|
using Volo.Abp.Json; |
|
|
|
using Volo.Abp.Minify.Scripts; |
|
|
|
|
|
|
|
namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations |
|
|
|
{ |
|
|
|
@ -16,19 +18,30 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations |
|
|
|
{ |
|
|
|
private readonly IAbpApplicationConfigurationAppService _configurationAppService; |
|
|
|
private readonly IJsonSerializer _jsonSerializer; |
|
|
|
private readonly AbpAspNetCoreMvcOptions _options; |
|
|
|
private readonly IJavascriptMinifier _javascriptMinifier; |
|
|
|
|
|
|
|
public AbpApplicationConfigurationScriptController( |
|
|
|
IAbpApplicationConfigurationAppService configurationAppService, |
|
|
|
IJsonSerializer jsonSerializer) |
|
|
|
IJsonSerializer jsonSerializer, |
|
|
|
IOptions<AbpAspNetCoreMvcOptions> options, |
|
|
|
IJavascriptMinifier javascriptMinifier) |
|
|
|
{ |
|
|
|
_configurationAppService = configurationAppService; |
|
|
|
_jsonSerializer = jsonSerializer; |
|
|
|
_options = options.Value; |
|
|
|
_javascriptMinifier = javascriptMinifier; |
|
|
|
} |
|
|
|
|
|
|
|
[HttpGet] |
|
|
|
[Produces(MimeTypes.Application.Javascript, MimeTypes.Text.Plain)] |
|
|
|
public async Task<ActionResult> Get() |
|
|
|
{ |
|
|
|
var script = CreateAbpExtendScript(await _configurationAppService.GetAsync()); |
|
|
|
|
|
|
|
return Content(_options.MinifyGeneratedScript == true ? _javascriptMinifier.Minify(script) : script, |
|
|
|
MimeTypes.Application.Javascript |
|
|
|
|
|
|
|
Logger.LogDebug("Executing AbpApplicationConfigurationScriptController.Get()"); |
|
|
|
|
|
|
|
var result = CreateAbpExtendScript( |
|
|
|
@ -46,7 +59,7 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations |
|
|
|
|
|
|
|
script.AppendLine("(function(){"); |
|
|
|
script.AppendLine(); |
|
|
|
script.AppendLine($"$.extend(true, abp, {_jsonSerializer.Serialize(config, indented: Debugger.IsAttached)})"); |
|
|
|
script.AppendLine($"$.extend(true, abp, {_jsonSerializer.Serialize(config, indented: true)})"); |
|
|
|
script.AppendLine(); |
|
|
|
script.AppendLine("abp.event.trigger('abp.configurationInitialized');"); |
|
|
|
script.AppendLine(); |
|
|
|
|