diff --git a/build/NuSpecs/UmbracoCms.nuspec b/build/NuSpecs/UmbracoCms.nuspec
index d0bd4a2688..a6b06d9964 100644
--- a/build/NuSpecs/UmbracoCms.nuspec
+++ b/build/NuSpecs/UmbracoCms.nuspec
@@ -42,7 +42,6 @@
-
diff --git a/src/Umbraco.ModelsBuilder.Embedded/Compose/DisableModelsBuilderManifestFilter.cs b/src/Umbraco.ModelsBuilder.Embedded/Compose/DisableModelsBuilderManifestFilter.cs
deleted file mode 100644
index 617c5ced9b..0000000000
--- a/src/Umbraco.ModelsBuilder.Embedded/Compose/DisableModelsBuilderManifestFilter.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-using System;
-using System.Collections.Generic;
-using Umbraco.Core.Manifest;
-
-namespace Umbraco.ModelsBuilder.Embedded.Compose
-{
- ///
- /// Removes the built in embedded models builder manifest from being loaded
- ///
- internal class DisableModelsBuilderManifestFilter : IManifestFilter
- {
- public void Filter(List manifests)
- {
- manifests.RemoveAll(x => x.Source.EndsWith("App_Plugins\\UmbModelsBuilder\\package.manifest", StringComparison.InvariantCultureIgnoreCase));
- }
- }
-}
diff --git a/src/Umbraco.ModelsBuilder.Embedded/Compose/ModelsBuilderComposer.cs b/src/Umbraco.ModelsBuilder.Embedded/Compose/ModelsBuilderComposer.cs
index cf70adb6fe..c6924e3abe 100644
--- a/src/Umbraco.ModelsBuilder.Embedded/Compose/ModelsBuilderComposer.cs
+++ b/src/Umbraco.ModelsBuilder.Embedded/Compose/ModelsBuilderComposer.cs
@@ -6,6 +6,7 @@ using Umbraco.Core.Composing;
using Umbraco.Core.Models.PublishedContent;
using Umbraco.ModelsBuilder.Embedded.Building;
using Umbraco.ModelsBuilder.Embedded.Configuration;
+using Umbraco.Web;
using Umbraco.Web.PublishedCache.NuCache;
using Umbraco.Web.Features;
@@ -58,9 +59,9 @@ namespace Umbraco.ModelsBuilder.Embedded.Compose
private void ComposeForLegacyModelsBuilder(Composition composition)
{
- composition.Logger.Info("ModelsBuilder.Embedded is disabled, the legacy ModelsBuilder was detected.");
+ composition.Logger.Info("ModelsBuilder.Embedded is disabled, the external ModelsBuilder was detected.");
composition.Components().Append();
- composition.ManifestFilters().Append();
+ composition.Dashboards().Remove();
}
private void ComposeForDefaultModelsFactory(Composition composition)
diff --git a/src/Umbraco.ModelsBuilder.Embedded/ModelsBuilderDashboard.cs b/src/Umbraco.ModelsBuilder.Embedded/ModelsBuilderDashboard.cs
new file mode 100644
index 0000000000..b8b1945f32
--- /dev/null
+++ b/src/Umbraco.ModelsBuilder.Embedded/ModelsBuilderDashboard.cs
@@ -0,0 +1,19 @@
+using System;
+using Umbraco.Core.Composing;
+using Umbraco.Core.Dashboards;
+
+namespace Umbraco.ModelsBuilder.Embedded
+{
+ [Weight(40)]
+ public class ModelsBuilderDashboard : IDashboard
+ {
+ public string Alias => "settingsModelsBuilder";
+
+ public string[] Sections => new [] { "settings" };
+
+ public string View => "views/dashboard/settings/modelsbuildermanagement.html";
+
+ public IAccessRule[] AccessRules => Array.Empty();
+ }
+
+}
diff --git a/src/Umbraco.ModelsBuilder.Embedded/Umbraco.ModelsBuilder.Embedded.csproj b/src/Umbraco.ModelsBuilder.Embedded/Umbraco.ModelsBuilder.Embedded.csproj
index c09703ecfb..75121a635d 100644
--- a/src/Umbraco.ModelsBuilder.Embedded/Umbraco.ModelsBuilder.Embedded.csproj
+++ b/src/Umbraco.ModelsBuilder.Embedded/Umbraco.ModelsBuilder.Embedded.csproj
@@ -59,7 +59,6 @@
-
@@ -68,6 +67,7 @@
+
diff --git a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.resource.js b/src/Umbraco.Web.UI.Client/src/common/resources/modelsbuildermanagement.resource.js
similarity index 80%
rename from src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.resource.js
rename to src/Umbraco.Web.UI.Client/src/common/resources/modelsbuildermanagement.resource.js
index 58ca77cbdb..ee3cd80c71 100644
--- a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.resource.js
+++ b/src/Umbraco.Web.UI.Client/src/common/resources/modelsbuildermanagement.resource.js
@@ -1,4 +1,4 @@
-function modelsBuilderResource($q, $http, umbRequestHelper) {
+function modelsBuilderManagementResource($q, $http, umbRequestHelper) {
return {
getModelsOutOfDateStatus: function () {
@@ -20,4 +20,4 @@
}
};
}
-angular.module("umbraco.resources").factory("modelsBuilderResource", modelsBuilderResource);
+angular.module("umbraco.resources").factory("modelsBuilderManagementResource", modelsBuilderManagementResource);
diff --git a/src/Umbraco.Web.UI.Client/src/common/services/contenttypehelper.service.js b/src/Umbraco.Web.UI.Client/src/common/services/contenttypehelper.service.js
index 5c3e6eb4c8..305e4a694d 100644
--- a/src/Umbraco.Web.UI.Client/src/common/services/contenttypehelper.service.js
+++ b/src/Umbraco.Web.UI.Client/src/common/services/contenttypehelper.service.js
@@ -27,7 +27,7 @@ function contentTypeHelper(contentTypeResource, dataTypeResource, $filter, $inje
generateModels: function () {
var deferred = $q.defer();
- var modelsResource = $injector.has("modelsBuilderResource") ? $injector.get("modelsBuilderResource") : null;
+ var modelsResource = $injector.has("modelsBuilderManagementResource") ? $injector.get("modelsBuilderManagementResource") : null;
var modelsBuilderEnabled = Umbraco.Sys.ServerVariables.umbracoPlugins.modelsBuilder.enabled;
if (modelsBuilderEnabled && modelsResource) {
modelsResource.buildModels().then(function(result) {
@@ -48,7 +48,7 @@ function contentTypeHelper(contentTypeResource, dataTypeResource, $filter, $inje
checkModelsBuilderStatus: function () {
var deferred = $q.defer();
- var modelsResource = $injector.has("modelsBuilderResource") ? $injector.get("modelsBuilderResource") : null;
+ var modelsResource = $injector.has("modelsBuilderManagementResource") ? $injector.get("modelsBuilderManagementResource") : null;
var modelsBuilderEnabled = (Umbraco && Umbraco.Sys && Umbraco.Sys.ServerVariables && Umbraco.Sys.ServerVariables.umbracoPlugins && Umbraco.Sys.ServerVariables.umbracoPlugins.modelsBuilder && Umbraco.Sys.ServerVariables.umbracoPlugins.modelsBuilder.enabled === true);
if (modelsBuilderEnabled && modelsResource) {
diff --git a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.controller.js b/src/Umbraco.Web.UI.Client/src/views/dashboard/settings/modelsbuildermanagement.controller.js
similarity index 59%
rename from src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/dashboard/settings/modelsbuildermanagement.controller.js
index b0e0c303cf..423a20d864 100644
--- a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/dashboard/settings/modelsbuildermanagement.controller.js
@@ -1,4 +1,4 @@
-function modelsBuilderController($scope, $http, umbRequestHelper, modelsBuilderResource) {
+function modelsBuilderManagementController($scope, $http, umbRequestHelper, modelsBuilderManagementResource) {
var vm = this;
@@ -9,8 +9,8 @@
function generate() {
vm.generating = true;
umbRequestHelper.resourcePromise(
- $http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
- 'Failed to generate.')
+ $http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
+ 'Failed to generate.')
.then(function (result) {
vm.generating = false;
vm.dashboard = result;
@@ -19,7 +19,7 @@
function reload() {
vm.loading = true;
- modelsBuilderResource.getDashboard().then(function (result) {
+ modelsBuilderManagementResource.getDashboard().then(function (result) {
vm.dashboard = result;
vm.loading = false;
});
@@ -27,7 +27,7 @@
function init() {
vm.loading = true;
- modelsBuilderResource.getDashboard().then(function (result) {
+ modelsBuilderManagementResource.getDashboard().then(function (result) {
vm.dashboard = result;
vm.loading = false;
});
@@ -35,4 +35,4 @@
init();
}
-angular.module("umbraco").controller("Umbraco.Dashboard.ModelsBuilderController", modelsBuilderController);
\ No newline at end of file
+angular.module("umbraco").controller("Umbraco.Dashboard.ModelsBuilderManagementController", modelsBuilderManagementController);
diff --git a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.html b/src/Umbraco.Web.UI.Client/src/views/dashboard/settings/modelsbuildermanagement.html
similarity index 94%
rename from src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.html
rename to src/Umbraco.Web.UI.Client/src/views/dashboard/settings/modelsbuildermanagement.html
index 0c10c33e39..1ba86bf72b 100644
--- a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/modelsbuilder.html
+++ b/src/Umbraco.Web.UI.Client/src/views/dashboard/settings/modelsbuildermanagement.html
@@ -1,4 +1,4 @@
-
+
diff --git a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/package.manifest b/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/package.manifest
deleted file mode 100644
index 5e64177046..0000000000
--- a/src/Umbraco.Web.UI/App_Plugins/UmbModelsBuilder/package.manifest
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- // array of files we want to inject into the application
- "javascript": [
- "~/App_Plugins/ModelsBuilder/modelsbuilder.controller.js",
- "~/App_Plugins/ModelsBuilder/modelsbuilder.resource.js"
- ],
-
- // models builder dashboard
- "dashboards": [
- {
- "alias": "settingsModelsBuilder",
- "name": "Models Builder",
- "view": "/App_Plugins/ModelsBuilder/modelsbuilder.html",
- "sections": [ "settings" ],
- "weight": 40
- }
- ]
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
index ceec3ee927..c556ffe773 100644
--- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
+++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
@@ -80,6 +80,7 @@
+
@@ -104,9 +105,6 @@
-
- 8.1.0
-
@@ -144,9 +142,6 @@
True
Settings.settings
-
-
-
@@ -172,7 +167,6 @@
-
ClientDependency.config
Designer