cd70bba3b4ea1a365a38976a2f371ac115d323a4
[yaffs-website] / web / themes / contrib / bootstrap / src / Plugin / Prerender / Dropbutton.php
1 <?php
2
3 namespace Drupal\bootstrap\Plugin\Prerender;
4
5 use Drupal\bootstrap\Utility\Element;
6
7 /**
8  * Pre-render callback for the "dropbutton" element type.
9  *
10  * @ingroup plugins_prerender
11  *
12  * @BootstrapPrerender("dropbutton",
13  *   replace = "Drupal\Core\Render\Element\Dropbutton::preRenderDropbutton"
14  * )
15  *
16  * @see \Drupal\Core\Render\Element\Dropbutton::preRenderDropbutton()
17  */
18 class Dropbutton extends PrerenderBase {
19
20   /**
21    * {@inheritdoc}
22    */
23   public static function preRenderElement(Element $element) {
24     $element['#attached']['library'][] = 'bootstrap/dropdown';
25
26     // Enable targeted theming of specific dropbuttons (e.g., 'operations' or
27     // 'operations__node').
28     if ($subtype = $element->getProperty('subtype')) {
29       $element->setProperty('theme', $element->getProperty('theme') . "__$subtype");
30     }
31   }
32
33 }