Loading core/modules/rest/src/Plugin/views/display/RestExport.php +10 −9 Original line number Diff line number Diff line Loading @@ -10,6 +10,8 @@ use Drupal\Core\Render\RendererInterface; use Drupal\Core\Routing\RouteProviderInterface; use Drupal\Core\State\StateInterface; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\views\Attribute\ViewsDisplay; use Drupal\views\Plugin\views\display\ResponseDisplayPluginInterface; use Drupal\views\Render\ViewsRenderPipelineMarkup; use Drupal\views\ViewExecutable; Loading @@ -22,16 +24,15 @@ * The plugin that handles Data response callbacks for REST resources. * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "rest_export", * title = @Translation("REST export"), * help = @Translation("Create a REST export resource."), * uses_route = TRUE, * admin = @Translation("REST export"), * returns_response = TRUE * ) */ #[ViewsDisplay( id: "rest_export", title: new TranslatableMarkup("REST export"), help: new TranslatableMarkup("Create a REST export resource."), admin: new TranslatableMarkup("REST export"), uses_route: TRUE, returns_response: TRUE )] class RestExport extends PathPluginBase implements ResponseDisplayPluginInterface { /** Loading core/modules/views/src/Attribute/ViewsDisplay.php 0 → 100644 +89 −0 Original line number Diff line number Diff line <?php declare(strict_types=1); namespace Drupal\views\Attribute; use Drupal\Component\Plugin\Attribute\Plugin; use Drupal\Core\StringTranslation\TranslatableMarkup; /** * Defines a Plugin attribute object for views display plugins. * * @see \Drupal\views\Plugin\views\display\DisplayPluginBase * * @ingroup views_display_plugins */ #[\Attribute(\Attribute::TARGET_CLASS)] class ViewsDisplay extends Plugin { /** * Constructs a views display attribute object. * * @param string $id * The plugin ID. * @param \Drupal\Core\StringTranslation\TranslatableMarkup $title * The plugin title used in the views UI. * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $short_title * (optional) The short title used in the views UI. * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $admin * (optional) The administrative name of the display. * The name is displayed on the Views overview and also used as default name * for new displays. * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $help * (optional) A short help string; this is displayed in the views UI. * @param bool $uses_menu_links * (optional) Whether or not to use hook_menu() to register a route. * Defaults to FALSE. * @param bool $uses_route * (optional) Does the display plugin registers routes to the route. * Defaults to FALSE. * @param bool $uses_hook_block * (optional) Does the display plugin provide blocks. Defaults to FALSE. * @param bool $returns_response * (optional) Whether the display returns a response object. * Defaults to FALSE. * @param string[]|null $contextual_links_locations * (optional) A list of places where contextual links should be added. * If you don't specify it there will be contextual links rendered for all * displays of a view. If this is not set or regions have been specified, * views will display an option to 'hide contextual links'. Use an empty * array to disable. * @param string[] $base * (optional) The base tables on which this exposed form plugin can be used. * If no base table is specified the plugin can be used with all tables. * @param string|null $theme * (optional) The theme function used to render the style output. * @param bool $no_ui * (optional) Whether the plugin should be not selectable in the UI. * If it's set to TRUE, you can still use it via the API in config files. * Defaults to FALSE. * @param bool $register_theme * (optional) Whether to register a theme function automatically. Defaults * to TRUE. * @param bool $entity_reference_display * (optional) Custom property, used with \Drupal\views\Views::getApplicableViews(). * Defaults to FALSE. * @param class-string|null $deriver * (optional) The deriver class. */ public function __construct( public readonly string $id, public readonly TranslatableMarkup $title, public readonly ?TranslatableMarkup $short_title = NULL, public readonly ?TranslatableMarkup $admin = NULL, public readonly ?TranslatableMarkup $help = NULL, public readonly bool $uses_menu_links = FALSE, public readonly bool $uses_route = FALSE, public readonly bool $uses_hook_block = FALSE, public readonly bool $returns_response = FALSE, public readonly ?array $contextual_links_locations = NULL, public readonly array $base = [], public readonly ?string $theme = NULL, public readonly bool $no_ui = FALSE, public readonly bool $register_theme = TRUE, public readonly bool $entity_reference_display = FALSE, public readonly ?string $deriver = NULL ) {} } core/modules/views/src/Plugin/views/display/Attachment.php +9 −8 Original line number Diff line number Diff line Loading @@ -3,6 +3,8 @@ namespace Drupal\views\Plugin\views\display; use Drupal\Core\Form\FormStateInterface; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\views\Attribute\ViewsDisplay; use Drupal\views\ViewExecutable; /** Loading @@ -13,15 +15,14 @@ * the same view. They can share some information. * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "attachment", * title = @Translation("Attachment"), * help = @Translation("Attachments added to other displays to achieve multiple views in the same view."), * theme = "views_view", * contextual_links_locations = {""} * ) */ #[ViewsDisplay( id: "attachment", title: new TranslatableMarkup("Attachment"), help: new TranslatableMarkup("Attachments added to other displays to achieve multiple views in the same view."), theme: "views_view", contextual_links_locations: [""] )] class Attachment extends DisplayPluginBase { /** Loading core/modules/views/src/Plugin/views/display/Block.php +12 −11 Original line number Diff line number Diff line Loading @@ -3,11 +3,13 @@ namespace Drupal\views\Plugin\views\display; use Drupal\Component\Utility\Unicode; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\Core\Url; use Drupal\Component\Plugin\Discovery\CachedDiscoveryInterface; use Drupal\Core\Block\BlockManagerInterface; use Drupal\Core\Entity\EntityTypeManagerInterface; use Drupal\Core\Form\FormStateInterface; use Drupal\views\Attribute\ViewsDisplay; use Drupal\views\Plugin\Block\ViewsBlock; use Symfony\Component\DependencyInjection\ContainerInterface; Loading @@ -16,20 +18,19 @@ * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "block", * title = @Translation("Block"), * help = @Translation("Display the view as a block."), * theme = "views_view", * register_theme = FALSE, * uses_hook_block = TRUE, * contextual_links_locations = {"block"}, * admin = @Translation("Block") * ) * * @see \Drupal\views\Plugin\Block\ViewsBlock * @see \Drupal\views\Plugin\Derivative\ViewsBlock */ #[ViewsDisplay( id: "block", title: new TranslatableMarkup("Block"), help: new TranslatableMarkup("Display the view as a block."), admin: new TranslatableMarkup("Block"), theme: "views_view", register_theme: FALSE, uses_hook_block: TRUE, contextual_links_locations: ["block"] )] class Block extends DisplayPluginBase { /** Loading core/modules/views/src/Plugin/views/display/DefaultDisplay.php +10 −8 Original line number Diff line number Diff line Loading @@ -2,19 +2,21 @@ namespace Drupal\views\Plugin\views\display; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\views\Attribute\ViewsDisplay; /** * A plugin to handle defaults on a view. * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "default", * title = @Translation("Default"), * help = @Translation("Default settings for this view."), * theme = "views_view", * no_ui = TRUE * ) */ #[ViewsDisplay( id: "default", title: new TranslatableMarkup("Default"), help: new TranslatableMarkup("Default settings for this view."), theme: "views_view", no_ui: TRUE )] class DefaultDisplay extends DisplayPluginBase { /** Loading Loading
core/modules/rest/src/Plugin/views/display/RestExport.php +10 −9 Original line number Diff line number Diff line Loading @@ -10,6 +10,8 @@ use Drupal\Core\Render\RendererInterface; use Drupal\Core\Routing\RouteProviderInterface; use Drupal\Core\State\StateInterface; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\views\Attribute\ViewsDisplay; use Drupal\views\Plugin\views\display\ResponseDisplayPluginInterface; use Drupal\views\Render\ViewsRenderPipelineMarkup; use Drupal\views\ViewExecutable; Loading @@ -22,16 +24,15 @@ * The plugin that handles Data response callbacks for REST resources. * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "rest_export", * title = @Translation("REST export"), * help = @Translation("Create a REST export resource."), * uses_route = TRUE, * admin = @Translation("REST export"), * returns_response = TRUE * ) */ #[ViewsDisplay( id: "rest_export", title: new TranslatableMarkup("REST export"), help: new TranslatableMarkup("Create a REST export resource."), admin: new TranslatableMarkup("REST export"), uses_route: TRUE, returns_response: TRUE )] class RestExport extends PathPluginBase implements ResponseDisplayPluginInterface { /** Loading
core/modules/views/src/Attribute/ViewsDisplay.php 0 → 100644 +89 −0 Original line number Diff line number Diff line <?php declare(strict_types=1); namespace Drupal\views\Attribute; use Drupal\Component\Plugin\Attribute\Plugin; use Drupal\Core\StringTranslation\TranslatableMarkup; /** * Defines a Plugin attribute object for views display plugins. * * @see \Drupal\views\Plugin\views\display\DisplayPluginBase * * @ingroup views_display_plugins */ #[\Attribute(\Attribute::TARGET_CLASS)] class ViewsDisplay extends Plugin { /** * Constructs a views display attribute object. * * @param string $id * The plugin ID. * @param \Drupal\Core\StringTranslation\TranslatableMarkup $title * The plugin title used in the views UI. * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $short_title * (optional) The short title used in the views UI. * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $admin * (optional) The administrative name of the display. * The name is displayed on the Views overview and also used as default name * for new displays. * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $help * (optional) A short help string; this is displayed in the views UI. * @param bool $uses_menu_links * (optional) Whether or not to use hook_menu() to register a route. * Defaults to FALSE. * @param bool $uses_route * (optional) Does the display plugin registers routes to the route. * Defaults to FALSE. * @param bool $uses_hook_block * (optional) Does the display plugin provide blocks. Defaults to FALSE. * @param bool $returns_response * (optional) Whether the display returns a response object. * Defaults to FALSE. * @param string[]|null $contextual_links_locations * (optional) A list of places where contextual links should be added. * If you don't specify it there will be contextual links rendered for all * displays of a view. If this is not set or regions have been specified, * views will display an option to 'hide contextual links'. Use an empty * array to disable. * @param string[] $base * (optional) The base tables on which this exposed form plugin can be used. * If no base table is specified the plugin can be used with all tables. * @param string|null $theme * (optional) The theme function used to render the style output. * @param bool $no_ui * (optional) Whether the plugin should be not selectable in the UI. * If it's set to TRUE, you can still use it via the API in config files. * Defaults to FALSE. * @param bool $register_theme * (optional) Whether to register a theme function automatically. Defaults * to TRUE. * @param bool $entity_reference_display * (optional) Custom property, used with \Drupal\views\Views::getApplicableViews(). * Defaults to FALSE. * @param class-string|null $deriver * (optional) The deriver class. */ public function __construct( public readonly string $id, public readonly TranslatableMarkup $title, public readonly ?TranslatableMarkup $short_title = NULL, public readonly ?TranslatableMarkup $admin = NULL, public readonly ?TranslatableMarkup $help = NULL, public readonly bool $uses_menu_links = FALSE, public readonly bool $uses_route = FALSE, public readonly bool $uses_hook_block = FALSE, public readonly bool $returns_response = FALSE, public readonly ?array $contextual_links_locations = NULL, public readonly array $base = [], public readonly ?string $theme = NULL, public readonly bool $no_ui = FALSE, public readonly bool $register_theme = TRUE, public readonly bool $entity_reference_display = FALSE, public readonly ?string $deriver = NULL ) {} }
core/modules/views/src/Plugin/views/display/Attachment.php +9 −8 Original line number Diff line number Diff line Loading @@ -3,6 +3,8 @@ namespace Drupal\views\Plugin\views\display; use Drupal\Core\Form\FormStateInterface; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\views\Attribute\ViewsDisplay; use Drupal\views\ViewExecutable; /** Loading @@ -13,15 +15,14 @@ * the same view. They can share some information. * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "attachment", * title = @Translation("Attachment"), * help = @Translation("Attachments added to other displays to achieve multiple views in the same view."), * theme = "views_view", * contextual_links_locations = {""} * ) */ #[ViewsDisplay( id: "attachment", title: new TranslatableMarkup("Attachment"), help: new TranslatableMarkup("Attachments added to other displays to achieve multiple views in the same view."), theme: "views_view", contextual_links_locations: [""] )] class Attachment extends DisplayPluginBase { /** Loading
core/modules/views/src/Plugin/views/display/Block.php +12 −11 Original line number Diff line number Diff line Loading @@ -3,11 +3,13 @@ namespace Drupal\views\Plugin\views\display; use Drupal\Component\Utility\Unicode; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\Core\Url; use Drupal\Component\Plugin\Discovery\CachedDiscoveryInterface; use Drupal\Core\Block\BlockManagerInterface; use Drupal\Core\Entity\EntityTypeManagerInterface; use Drupal\Core\Form\FormStateInterface; use Drupal\views\Attribute\ViewsDisplay; use Drupal\views\Plugin\Block\ViewsBlock; use Symfony\Component\DependencyInjection\ContainerInterface; Loading @@ -16,20 +18,19 @@ * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "block", * title = @Translation("Block"), * help = @Translation("Display the view as a block."), * theme = "views_view", * register_theme = FALSE, * uses_hook_block = TRUE, * contextual_links_locations = {"block"}, * admin = @Translation("Block") * ) * * @see \Drupal\views\Plugin\Block\ViewsBlock * @see \Drupal\views\Plugin\Derivative\ViewsBlock */ #[ViewsDisplay( id: "block", title: new TranslatableMarkup("Block"), help: new TranslatableMarkup("Display the view as a block."), admin: new TranslatableMarkup("Block"), theme: "views_view", register_theme: FALSE, uses_hook_block: TRUE, contextual_links_locations: ["block"] )] class Block extends DisplayPluginBase { /** Loading
core/modules/views/src/Plugin/views/display/DefaultDisplay.php +10 −8 Original line number Diff line number Diff line Loading @@ -2,19 +2,21 @@ namespace Drupal\views\Plugin\views\display; use Drupal\Core\StringTranslation\TranslatableMarkup; use Drupal\views\Attribute\ViewsDisplay; /** * A plugin to handle defaults on a view. * * @ingroup views_display_plugins * * @ViewsDisplay( * id = "default", * title = @Translation("Default"), * help = @Translation("Default settings for this view."), * theme = "views_view", * no_ui = TRUE * ) */ #[ViewsDisplay( id: "default", title: new TranslatableMarkup("Default"), help: new TranslatableMarkup("Default settings for this view."), theme: "views_view", no_ui: TRUE )] class DefaultDisplay extends DisplayPluginBase { /** Loading