gridstack-8.x-2.5/src/GridStackSkinPluginBase.php
src/GridStackSkinPluginBase.php
<?php
namespace Drupal\gridstack;
use Drupal\Core\Plugin\PluginBase;
use Drupal\Core\StringTranslation\StringTranslationTrait;
/**
* Provides base class for all gridstack skins.
*/
abstract class GridStackSkinPluginBase extends PluginBase implements GridStackSkinPluginInterface {
use StringTranslationTrait;
/**
* The gridstack main/thumbnail skin definitions.
*
* @var array
*/
protected $skins;
/**
* {@inheritdoc}
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition) {
parent::__construct($configuration, $plugin_id, $plugin_definition);
$this->skins = $this->setSkins();
}
/**
* {@inheritdoc}
*/
public function label() {
return $this->configuration['label'];
}
/**
* {@inheritdoc}
*/
public function skins() {
return $this->skins;
}
/**
* Sets the required plugin main/thumbnail skins.
*/
abstract protected function setSkins();
}
