diff --git a/zero.Core/Entities/DatabaseEntity.cs b/zero.Core/Entities/DatabaseEntity.cs
index 86a82ce8..f89d03ea 100644
--- a/zero.Core/Entities/DatabaseEntity.cs
+++ b/zero.Core/Entities/DatabaseEntity.cs
@@ -16,6 +16,7 @@ namespace zero.Core.Entities
public string AppId { get; set; }
///
+ [Inherit]
public string Name { get; set; }
///
diff --git a/zero.Core/Entities/InheritAttribute.cs b/zero.Core/Entities/InheritAttribute.cs
new file mode 100644
index 00000000..b2ac527c
--- /dev/null
+++ b/zero.Core/Entities/InheritAttribute.cs
@@ -0,0 +1,8 @@
+using System;
+
+namespace zero.Core.Entities
+{
+ internal class InheritAttribute : Attribute
+ {
+ }
+}
\ No newline at end of file
diff --git a/zero.Web/Mapper/DefaultMapper.cs b/zero.Core/Mapper/DefaultMapper.cs
similarity index 99%
rename from zero.Web/Mapper/DefaultMapper.cs
rename to zero.Core/Mapper/DefaultMapper.cs
index 274f5723..ac6614f5 100644
--- a/zero.Web/Mapper/DefaultMapper.cs
+++ b/zero.Core/Mapper/DefaultMapper.cs
@@ -7,7 +7,7 @@ using System.Reflection;
using System.Threading.Tasks;
using zero.Core.Entities;
-namespace zero.Web.Mapper
+namespace zero.Core.Mapper
{
public class DefaultMapper : IMapper
{
diff --git a/zero.Web/Mapper/IMapperConfig.cs b/zero.Core/Mapper/IMapperConfig.cs
similarity index 80%
rename from zero.Web/Mapper/IMapperConfig.cs
rename to zero.Core/Mapper/IMapperConfig.cs
index c4aa4f32..444f59ee 100644
--- a/zero.Web/Mapper/IMapperConfig.cs
+++ b/zero.Core/Mapper/IMapperConfig.cs
@@ -1,6 +1,6 @@
using Raven.Client.Documents;
-namespace zero.Web.Mapper
+namespace zero.Core.Mapper
{
public interface IMapperConfig
{
diff --git a/zero.Web/Mapper/MapperServiceCollectionExtensions.cs b/zero.Core/Mapper/MapperServiceCollectionExtensions.cs
similarity index 94%
rename from zero.Web/Mapper/MapperServiceCollectionExtensions.cs
rename to zero.Core/Mapper/MapperServiceCollectionExtensions.cs
index fccc02de..7ea44be8 100644
--- a/zero.Web/Mapper/MapperServiceCollectionExtensions.cs
+++ b/zero.Core/Mapper/MapperServiceCollectionExtensions.cs
@@ -1,10 +1,8 @@
using Microsoft.Extensions.DependencyInjection;
using Raven.Client.Documents;
using System;
-using zero.Core;
-using zero.Web.Mapper;
-namespace zero.Web
+namespace zero.Core.Mapper
{
public static class MapperServiceCollectionExtensions
{
diff --git a/zero.Core/Plugins/ZeroPlugin.cs b/zero.Core/Plugins/ZeroPlugin.cs
index 676d903a..4ef9e710 100644
--- a/zero.Core/Plugins/ZeroPlugin.cs
+++ b/zero.Core/Plugins/ZeroPlugin.cs
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using zero.Core.Entities;
using zero.Core.Identity;
+using zero.Core.Mapper;
namespace zero.Core.Plugins
{
@@ -20,6 +21,8 @@ namespace zero.Core.Plugins
protected FeatureCollection Features { get; private set; }
+ protected IMapper Mapper { get; private set; }
+
protected virtual IServiceCollection ConfigureServices(IServiceCollection services)
{
return services;
diff --git a/zero.Web/App/Components/pickers/iconPicker/iconpicker.vue b/zero.Web/App/Components/pickers/iconPicker/iconpicker.vue
index 804ed9a4..1f6cfe7c 100644
--- a/zero.Web/App/Components/pickers/iconPicker/iconpicker.vue
+++ b/zero.Web/App/Components/pickers/iconPicker/iconpicker.vue
@@ -25,6 +25,10 @@
type: Boolean,
default: false
},
+ colors: {
+ type: Boolean,
+ default: false
+ },
options: {
type: Object,
default: () =>
@@ -69,7 +73,8 @@
component: PickIconOverlay,
display: 'editor',
items: FEATHER_ICONS,
- model: this.value
+ model: this.value,
+ colors: this.colors,
}, typeof this.options === 'object' ? this.options : {});
return Overlay.open(options).then(value =>
diff --git a/zero.Web/App/Components/pickers/iconPicker/overlay.vue b/zero.Web/App/Components/pickers/iconPicker/overlay.vue
index e938fa4c..9d9ce818 100644
--- a/zero.Web/App/Components/pickers/iconPicker/overlay.vue
+++ b/zero.Web/App/Components/pickers/iconPicker/overlay.vue
@@ -9,7 +9,7 @@
-