cloudinary-8.x-1.x-dev/modules/cloudinary_media_library_widget/src/Plugin/Field/FieldType/CloudinaryRaw.php
modules/cloudinary_media_library_widget/src/Plugin/Field/FieldType/CloudinaryRaw.php
<?php
namespace Drupal\cloudinary_media_library_widget\Plugin\Field\FieldType;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
use Drupal\Core\Form\FormStateInterface;
use Drupal\file\Plugin\Field\FieldType\FileItem;
/**
* Plugin implementation of the 'cloudinary_raw' field type.
*
* @FieldType(
* id = "cloudinary_raw",
* label = @Translation("Cloudinary raw"),
* description = @Translation("This field stores a cloudinary asset info and the ID of the file as an integer value."),
* category = @Translation("Media"),
* default_widget = "cloudinary_widget",
* default_formatter = "file_default",
* no_ui = TRUE,
* list_class = "\Drupal\file\Plugin\Field\FieldType\FileFieldItemList",
* constraints = {"ReferenceAccess" = {}, "FileValidation" = {}}
* )
*/
class CloudinaryRaw extends FileItem {
use CloudinaryFileTrait {
schema as baseSchema;
propertyDefinitions as basePropertyDefinitions;
storageSettingsForm as baseStorageSettingsForm;
fieldSettingsForm as baseFieldSettingsForm;
}
/**
* {@inheritdoc}
*/
public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
$element = $this->baseStorageSettingsForm($form, $form_state, $has_data);
unset($element['display_field']);
unset($element['display_default']);
return $element;
}
/**
* {@inheritdoc}
*/
public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
$element = $this->baseFieldSettingsForm($form, $form_state);
unset($element['description_field']);
return $element;
}
/**
* {@inheritdoc}
*/
public static function defaultFieldSettings() {
$settings = parent::defaultFieldSettings();
$settings['file_extensions'] = 'txt rtf doc docx ppt pptx xls xlsx pdf odf odg odp ods odt fodt fods fodp fodg key numbers pages';
unset($settings['description_field']);
return $settings;
}
/**
* {@inheritdoc}
*/
public static function schema(FieldStorageDefinitionInterface $field_definition) {
$schema = self::baseSchema($field_definition);
unset($schema['columns']['display']);
return $schema;
}
/**
* {@inheritdoc}
*/
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$properties = self::basePropertyDefinitions($field_definition);
unset($properties['display']);
return $properties;
}
}
