[BUGFIX] Update ColorPicker to use cleaned minicolors hex value
[Packages/TYPO3.CMS.git] / typo3 / sysext / backend / Resources / Private / TypeScript / ColorPicker.ts
index 5bd6a92..049d72a 100644 (file)
@@ -13,6 +13,7 @@
 
 import * as $ from 'jquery';
 import 'TYPO3/CMS/Core/Contrib/jquery.minicolors';
+import FormEngine = require('TYPO3/CMS/Backend/FormEngine');
 
 /**
  * Module: TYPO3/CMS/Backend/ColorPicker
@@ -51,6 +52,16 @@ class ColorPicker {
         $element.val('');
       }
     });
+    // On blur, use the formatted value from minicolors
+    $(document).on('blur', '.t3js-color-picker', (event: Event): void => {
+      const $element = $(event.target);
+      $element.closest('.t3js-formengine-field-item')
+        .find('INPUT[type="hidden"]')
+        .val($element.val());
+      if ($element.val() === '') { // force FormEngineReview if value is empty
+        FormEngine.Validation.validate();
+      }
+    });
   }
 }
 // create an instance and return it