mercury_editor-2.0.x-dev/tests/modules/mercury_editor_field_validation_test/mercury_editor_field_validation_test.install
tests/modules/mercury_editor_field_validation_test/mercury_editor_field_validation_test.install
<?php
/**
* @file
* Installation hooks for Mercury Editor Field Validation Test module.
*/
use Drupal\field\Entity\FieldConfig;
use Drupal\field\Entity\FieldStorageConfig;
/**
* Implements hook_install().
*/
function mercury_editor_field_validation_test_install() {
$field_storage = FieldStorageConfig::loadByName('paragraph', 'field_me_test_label');
if (!$field_storage) {
// Add a paragraphs field.
$field_storage = FieldStorageConfig::create([
'field_name' => 'field_me_test_label',
'entity_type' => 'paragraph',
'type' => 'text',
'cardinality' => '1',
'required' => TRUE,
]);
$field_storage->save();
}
$field_config = FieldConfig::loadByName('paragraph', 'me_test_section', 'field_me_test_label');
if (!$field_config) {
$field = FieldConfig::create([
'field_storage' => $field_storage,
'bundle' => 'me_test_section',
'label' => 'Label (Validation Test)',
'required' => TRUE,
]);
$field->save();
}
$form_display = \Drupal::service('entity_display.repository')->getFormDisplay('paragraph', 'me_test_section');
$form_display->setComponent('field_me_test_label', ['type' => 'text_textfield']);
$form_display->save();
$view_display = \Drupal::service('entity_display.repository')->getViewDisplay('paragraph', 'me_test_section');
$view_display->setComponent('field_me_test_label', ['type' => 'text_default', 'label' => 'hidden']);
$view_display->save();
}
/**
* Implements hook_uninstall().
*
* Delete the field config and field storage.
*/
function mercury_editor_field_validation_test_uninstall() {
$field_config = FieldConfig::loadByName('paragraph', 'me_test_section', 'field_me_test_label');
if ($field_config) {
$field_config->delete();
}
$field_storage = FieldStorageConfig::loadByName('paragraph', 'field_me_test_label');
if ($field_storage) {
$field_storage->delete();
}
}
