diff --git a/src/Umbraco.Core/Constants-PropertyEditors.cs b/src/Umbraco.Core/Constants-PropertyEditors.cs
index fa785f152f..b34351d902 100644
--- a/src/Umbraco.Core/Constants-PropertyEditors.cs
+++ b/src/Umbraco.Core/Constants-PropertyEditors.cs
@@ -1,4 +1,4 @@
-using Umbraco.Cms.Core.PropertyEditors;
+using Umbraco.Cms.Core.PropertyEditors;
namespace Umbraco.Cms.Core
{
@@ -52,7 +52,7 @@ namespace Umbraco.Cms.Core
public const string ColorPicker = "Umbraco.ColorPicker";
///
- /// EyeDropper Color Picker.
+ /// Eye Dropper Color Picker.
///
public const string ColorPickerEyeDropper = "Umbraco.ColorPicker.EyeDropper";
diff --git a/src/Umbraco.Core/PropertyEditors/ValueConverters/EyeDropperValueConverter.cs b/src/Umbraco.Core/PropertyEditors/ValueConverters/EyeDropperValueConverter.cs
new file mode 100644
index 0000000000..69f768ce6d
--- /dev/null
+++ b/src/Umbraco.Core/PropertyEditors/ValueConverters/EyeDropperValueConverter.cs
@@ -0,0 +1,22 @@
+using System;
+using Umbraco.Cms.Core.Models.PublishedContent;
+using Umbraco.Extensions;
+
+namespace Umbraco.Cms.Core.PropertyEditors.ValueConverters
+{
+ [DefaultPropertyValueConverter]
+ public class EyeDropperValueConverter : PropertyValueConverterBase
+ {
+ public override bool IsConverter(IPublishedPropertyType propertyType)
+ => propertyType.EditorAlias.InvariantEquals(Constants.PropertyEditors.Aliases.ColorPickerEyeDropper);
+
+ public override Type GetPropertyValueType(IPublishedPropertyType propertyType)
+ => typeof(string);
+
+ public override PropertyCacheLevel GetPropertyCacheLevel(IPublishedPropertyType propertyType)
+ => PropertyCacheLevel.Element;
+
+ public override object ConvertIntermediateToObject(IPublishedElement owner, IPublishedPropertyType propertyType, PropertyCacheLevel cacheLevel, object source, bool preview)
+ => source?.ToString() ?? string.Empty;
+ }
+}
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerConfigurationEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerConfigurationEditor.cs
index 514200ff68..7d7957147f 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerConfigurationEditor.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerConfigurationEditor.cs
@@ -1,4 +1,4 @@
-
+
using System.Collections.Generic;
using Umbraco.Cms.Core.IO;
using Umbraco.Extensions;
@@ -25,8 +25,6 @@ namespace Umbraco.Cms.Core.PropertyEditors
///
public override EyeDropperColorPickerConfiguration FromConfigurationEditor(IDictionary editorValues, EyeDropperColorPickerConfiguration configuration)
{
- var output = new EyeDropperColorPickerConfiguration();
-
var showAlpha = true;
var showPalette = true;
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerPropertyEditor.cs
index e37a0e62cd..98929bdf4d 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerPropertyEditor.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/EyeDropperColorPickerPropertyEditor.cs
@@ -8,6 +8,7 @@ namespace Umbraco.Cms.Core.PropertyEditors
{
[DataEditor(
Constants.PropertyEditors.Aliases.ColorPickerEyeDropper,
+ EditorType.PropertyValue | EditorType.MacroParameter,
"Eye Dropper Color Picker",
"eyedropper",
Icon = "icon-colorpicker",