hook_event_dispatcher-8.x-2.04/modules/field_event_dispatcher/field_event_dispatcher.module

modules/field_event_dispatcher/field_event_dispatcher.module
<?php

/**
 * @file
 * Field event dispatcher submodule.
 */

use Drupal\Core\Field\FieldDefinitionInterface;
use Drupal\Core\Field\FormatterInterface;
use Drupal\Core\Field\WidgetInterface;
use Drupal\Core\Form\FormStateInterface;
use Drupal\field_event_dispatcher\Event\Field\FieldFormatterSettingsSummaryAlterEvent;
use Drupal\field_event_dispatcher\Event\Field\FieldFormatterThirdPartySettingsFormEvent;
use Drupal\field_event_dispatcher\Event\Field\FieldWidgetSettingsSummaryAlterEvent;
use Drupal\field_event_dispatcher\Event\Field\FieldWidgetThirdPartySettingsFormEvent;

// @todo hook_field_ui_preconfigured_options_alter()
// @todo hook_field_storage_config_update_forbid()
// @todo hook_field_widget_info_alter()
// @todo hook_field_info_max_weight()
// @todo hook_field_purge_field_storage()
// @todo hook_field_purge_field()

/**
 * Implements hook_field_formatter_settings_summary_alter().
 *
 * {@inheritdoc}
 */
function field_event_dispatcher_field_formatter_settings_summary_alter(
  array &$summary,
  array $context,
): void {
  /** @var \Drupal\hook_event_dispatcher\Manager\HookEventDispatcherManagerInterface $manager */
  $manager = Drupal::service('hook_event_dispatcher.manager');
  $event = new FieldFormatterSettingsSummaryAlterEvent($summary, $context);
  $manager->register($event);
}

/**
 * Implements hook_field_formatter_third_party_settings_form().
 *
 * {@inheritdoc}
 */
function field_event_dispatcher_field_formatter_third_party_settings_form(
  FormatterInterface $plugin,
  FieldDefinitionInterface $fieldDefinition,
  string $viewMode,
  array $form,
  FormStateInterface $formState,
): array {
  /** @var \Drupal\hook_event_dispatcher\Manager\HookEventDispatcherManagerInterface $manager */
  $manager = Drupal::service('hook_event_dispatcher.manager');
  $event = new FieldFormatterThirdPartySettingsFormEvent($plugin, $fieldDefinition, $viewMode, $form, $formState);
  $manager->register($event);

  return $event->getElements();
}

/**
 * Implements hook_field_widget_settings_summary_alter().
 *
 * {@inheritdoc}
 */
function field_event_dispatcher_field_widget_settings_summary_alter(
  array &$summary,
  array $context,
): void {
  /** @var \Drupal\hook_event_dispatcher\Manager\HookEventDispatcherManagerInterface $manager */
  $manager = Drupal::service('hook_event_dispatcher.manager');
  $event = new FieldWidgetSettingsSummaryAlterEvent($summary, $context);
  $manager->register($event);
}

/**
 * Implements hook_field_widget_third_party_settings_form().
 *
 * {@inheritdoc}
 */
function field_event_dispatcher_field_widget_third_party_settings_form(
  WidgetInterface $plugin,
  FieldDefinitionInterface $fieldDefinition,
  string $formMode,
  array $form,
  FormStateInterface $formState,
): array {
  /** @var \Drupal\hook_event_dispatcher\Manager\HookEventDispatcherManagerInterface $manager */
  $manager = Drupal::service('hook_event_dispatcher.manager');
  $event = new FieldWidgetThirdPartySettingsFormEvent($plugin, $fieldDefinition, $formMode, $form, $formState);
  $manager->register($event);

  return $event->getElements();
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc