JqueryColorpickerColorItem.php in Jquery Colorpicker 8.2
File
src/Plugin/Field/FieldType/JqueryColorpickerColorItem.php
View source
<?php
namespace Drupal\jquery_colorpicker\Plugin\Field\FieldType;
use Drupal\Core\Field\FieldItemBase;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
use Drupal\Core\TypedData\DataDefinition;
class JqueryColorpickerColorItem extends FieldItemBase {
public static function schema(FieldStorageDefinitionInterface $field_definition) {
return [
'columns' => [
'name' => [
'type' => 'varchar',
'length' => 255,
'not null' => FALSE,
],
'color' => [
'type' => 'varchar',
'length' => 7,
'not null' => TRUE,
],
],
];
}
public function isEmpty() {
return TRUE;
}
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$typed_data_manager = \Drupal::typedDataManager();
$properties['name'] = DataDefinition::create('string')
->setLabel(t('Name'))
->setDescription(t('The human readable name of the color'));
$color_definition_info = $typed_data_manager
->getDefinition('colorapi_color');
$properties['color'] = $color_definition_info['definition_class']::create('colorapi_color')
->setLabel(t('Color'))
->setDescription(t('The color, in hexadecimal and RGB format.'))
->setRequired(TRUE);
return $properties;
}
}