From 59bbd19df3de93e155467b3e1e1ffd9e597dd841 Mon Sep 17 00:00:00 2001 From: Dennis Heutinck Date: Mon, 18 Dec 2023 12:35:14 +0000 Subject: [PATCH] Merged PR 11119: Fix bundler issue Fixes an error that is thrown when running Umbraco in production mode. In production mode, the assets used to be processed by smidge, causing a minification error. --- .../Assets/IcomoonManifestFilter.cs | 28 +++++++++++++++++++ .../Assets/ScriptAsset.cs | 17 ----------- .../Composers/IcomoonPickerComposer.cs | 7 +++-- 3 files changed, 32 insertions(+), 20 deletions(-) create mode 100644 src/Infocaster.Umbraco.IcomoonPicker/Assets/IcomoonManifestFilter.cs delete mode 100644 src/Infocaster.Umbraco.IcomoonPicker/Assets/ScriptAsset.cs diff --git a/src/Infocaster.Umbraco.IcomoonPicker/Assets/IcomoonManifestFilter.cs b/src/Infocaster.Umbraco.IcomoonPicker/Assets/IcomoonManifestFilter.cs new file mode 100644 index 0000000..9b82d37 --- /dev/null +++ b/src/Infocaster.Umbraco.IcomoonPicker/Assets/IcomoonManifestFilter.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; +using Umbraco.Cms.Core.Manifest; + +namespace Infocaster.Umbraco.IcomoonPicker.Assets +{ + internal class IcomoonManifestFilter + : IManifestFilter + { + public void Filter(List manifests) + { + manifests.Add(new PackageManifest + { + PackageName = "Icomoon icon picker", + Version = Assembly.GetExecutingAssembly().GetName().Version?.ToString() ?? "1.0.0", + Scripts = new[] + { + Defaults_IcomoonPicker.PluginBasePath + "/script.iife.js" + }, + BundleOptions = BundleOptions.None + }); + } + } +} diff --git a/src/Infocaster.Umbraco.IcomoonPicker/Assets/ScriptAsset.cs b/src/Infocaster.Umbraco.IcomoonPicker/Assets/ScriptAsset.cs deleted file mode 100644 index 4b7d293..0000000 --- a/src/Infocaster.Umbraco.IcomoonPicker/Assets/ScriptAsset.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -using Umbraco.Cms.Core.WebAssets; - -namespace Infocaster.Umbraco.IcomoonPicker -{ - internal class ScriptAsset - : JavaScriptFile - { - public ScriptAsset() : base(Defaults_IcomoonPicker.PluginBasePath + "/script.iife.js") - { } - } -} diff --git a/src/Infocaster.Umbraco.IcomoonPicker/Composers/IcomoonPickerComposer.cs b/src/Infocaster.Umbraco.IcomoonPicker/Composers/IcomoonPickerComposer.cs index dabf436..4ad2c10 100644 --- a/src/Infocaster.Umbraco.IcomoonPicker/Composers/IcomoonPickerComposer.cs +++ b/src/Infocaster.Umbraco.IcomoonPicker/Composers/IcomoonPickerComposer.cs @@ -1,4 +1,5 @@ -using Microsoft.Extensions.DependencyInjection; +using Infocaster.Umbraco.IcomoonPicker.Assets; +using Microsoft.Extensions.DependencyInjection; using Umbraco.Cms.Core.Composing; using Umbraco.Cms.Core.DependencyInjection; @@ -8,8 +9,8 @@ public class IcomoonPickerComposer : IComposer { public void Compose(IUmbracoBuilder builder) { - builder.BackOfficeAssets() - .Append(); + builder.ManifestFilters() + .Append(); builder.Services.AddHttpClient(); } }