class Extras in GridStack 8.2
Provides the extras styles.
Plugin annotation
@GridStackStylizer(
id = "extras",
label = @Translation("Extras")
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\gridstack\GridStackPluginBase implements GridStackPluginInterface
- class \Drupal\gridstack\GridStackStylizerPluginBase implements GridStackStylizerPluginInterface
- class \Drupal\gridstack\Plugin\gridstack\stylizer\StyleBase
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Animation
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Range
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Color
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Background
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Color
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Range
- class \Drupal\gridstack\Plugin\gridstack\stylizer\Animation
- class \Drupal\gridstack\Plugin\gridstack\stylizer\StyleBase
- class \Drupal\gridstack\GridStackStylizerPluginBase implements GridStackStylizerPluginInterface
- class \Drupal\gridstack\GridStackPluginBase implements GridStackPluginInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of Extras
File
- src/
Plugin/ gridstack/ stylizer/ Extras.php, line 17
Namespace
Drupal\gridstack\Plugin\gridstack\stylizerView source
class Extras extends Wrapper {
/**
* Returns utilities settings.
*/
public static function options() {
return [
'background' => 'BG (image as background)',
'contentless' => 'BG/ Image only mode (contentless)',
'ete' => 'BG/ Image spans edge to egde (EtE)',
'overlay' => 'BG color overlays BG/ Image',
'shrink' => 'BG/ Image shrink (not for EtE)',
'parallax' => 'BG/ Image simple parallax',
'parallax-fs' => 'Make the above parallax full screen',
];
}
/**
* {@inheritdoc}
*
* @todo implements when having enough consistency.
*/
public function defaultConfiguration() {
$config = [];
foreach (array_keys(static::options()) as $key) {
$config[$key] = '';
}
return $config;
}
/**
* Provides gridstack skins and libraries.
*/
public function attach(array &$load, array $attach = []) {
parent::attach($load, $attach);
if ($this
->getStyle('parallax', $attach) && empty($attach['_ipe'])) {
$load['library'][] = 'gridstack/parallax';
}
}
/**
* Provides extras form elements.
*/
protected function extrasElement($optionset, FormStateInterface $form_state, array $settings, array $extras = []) {
$context = $settings['_scope'];
$options = [];
foreach (static::options() as $key => $title) {
if ($this
->isWideRegionOption($key) && empty($settings['_fullwidth'])) {
continue;
}
if (in_array($key, [
'shrink',
]) && !$optionset
->isFramework()) {
continue;
}
$options[$key] = $this
->t('@title', [
'@title' => $title,
]);
}
if ($context != GridStackDefault::ROOT) {
unset($options['parallax'], $options['parallax-fs']);
}
$css_classes = [
'form-wrapper--extras',
'is-collapsible',
'is-collapsed',
'is-gs-fieldset',
];
$values = $settings['extras'];
return [
'#type' => 'checkboxes',
'#options' => $options,
'#title' => $this
->t('Applicable for image above, not blocks'),
'#default_value' => empty($values) ? [] : array_values($values),
'#attributes' => [
'class' => $css_classes,
],
'#after_build' => [
[
$this,
'afterBuildExtras',
],
],
'#region' => $context,
'#settings' => $settings,
];
}
/**
* Checks if an option should be for 12 column wide.
*/
protected function isWideRegionOption($key) {
return in_array($key, [
'ete',
'contentless',
'parallax',
'parallax-fs',
]);
}
/**
* Provides preview classes.
*/
public function afterBuildExtras(array $element) {
$settings = $element['#settings'];
$use_background = $this
->getStyle('background', $settings);
$removed = [
'form-wrapper--extras',
'is-collapsible',
'is-collapsed',
'is-gs-fieldset',
];
foreach (Element::children($element) as $key) {
$element[$key]['#attributes']['data-gs-extras-region'] = $element['#region'];
$element[$key]['#attributes']['data-gs-extras-region-class'] = 'is-gs-' . str_replace('_', '-', $key);
$element[$key]['#attributes']['data-gs-bg-selector'] = $use_background ? '.b-gs .media__element' : '.b-gs';
if ($key == 'parallax') {
$element[$key]['#description'] = $this
->t('Recipes: BG, Min height, EtE at odd rows, non-EtE even, or vice versa, for simple parallax. Use non-BG for regular transitions. Plus few more adjustments.');
}
// Unfortunately container classes are also inherited by each item.
if (isset($element[$key]['#attributes']['class'])) {
$classes = $element[$key]['#attributes']['class'];
$classes = array_diff($classes, $removed);
$element[$key]['#attributes']['class'] = $classes;
}
}
return $element;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
Animation:: |
protected | function | Provides animation form elements. | |
Animation:: |
public static | function | Returns utilities settings. | |
Background:: |
protected | function | Returns the background colors grouped by the given key, w/o text colors. | |
Classes:: |
protected | property | The black opacity for backgrounds or colors. | |
Classes:: |
public | function | Provides preview classes. | |
Classes:: |
protected | function | Returns common class element. | |
Classes:: |
protected | function | ||
Classes:: |
protected | function | ||
Classes:: |
public | function | Returns the module feature CSS classes, not available at CSS frameworks. | |
Classes:: |
protected | function | ||
Classes:: |
protected | function | ||
Classes:: |
protected | function | ||
Color:: |
protected | function | Provides extras form elements. | |
Color:: |
protected | function | Returns the text colors grouped by the given key. | |
Color:: |
protected | function | Return the color palette element. | |
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
Extras:: |
public | function | Provides preview classes. | |
Extras:: |
public | function |
Provides gridstack skins and libraries. Overrides GridStackStylizerPluginBase:: |
1 |
Extras:: |
public | function |
@todo implements when having enough consistency. Overrides GridStackPluginBase:: |
|
Extras:: |
protected | function | Provides extras form elements. | |
Extras:: |
protected | function | Checks if an option should be for 12 column wide. | |
Extras:: |
public static | function | Returns utilities settings. | |
GridStackPluginBase:: |
protected | property | The layout breakpoints. | |
GridStackPluginBase:: |
protected | property | The optionset cell height. | |
GridStackPluginBase:: |
protected | property | The breakpoint columns. | |
GridStackPluginBase:: |
protected | property | The current user. | |
GridStackPluginBase:: |
protected | property | The gridstack manager service. | |
GridStackPluginBase:: |
protected | property | The optionset min-width. | |
GridStackPluginBase:: |
protected | property | The gridstack optionset. | |
GridStackPluginBase:: |
protected | property | The optionset vertical margin. | |
GridStackPluginBase:: |
protected | function | Returns gridstack config shortcut. | |
GridStackPluginBase:: |
public | function | ||
GridStackPluginBase:: |
public | function |
Gets this plugin's configuration. Overrides ConfigurableInterface:: |
|
GridStackPluginBase:: |
public | function | ||
GridStackPluginBase:: |
public | function | ||
GridStackPluginBase:: |
public | function |
Returns the plugin label. Overrides GridStackPluginInterface:: |
|
GridStackPluginBase:: |
public | function |
Sets the configuration for this plugin instance. Overrides ConfigurableInterface:: |
|
GridStackPluginBase:: |
public | function | Sets the optionset. | |
GridStackPluginBase:: |
public | function | ||
GridStackStylizerPluginBase:: |
protected | property | The blazy entity service to support Media Library at Layout Builder pages. | |
GridStackStylizerPluginBase:: |
protected | function | Returns unique variant ID. | |
GridStackStylizerPluginBase:: |
public | function | 1 | |
Media:: |
protected | property | The field name to store media. | |
Media:: |
public | function | Returns the formatted media as Blazy CSS background. | |
Media:: |
public static | function |
Creates an instance of the plugin. Overrides GridStackStylizerPluginBase:: |
|
Media:: |
public | function | Returns the selected field name. | |
Media:: |
protected | function | Returns the data understood by Blazy for CSS background. | |
Media:: |
protected | function | Returns the formatted media as Blazy output. | |
Media:: |
protected | function | Returns the media overlay. | |
Media:: |
public | function | Sets the field name. | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
PluginBase:: |
public | function | Constructs a \Drupal\Component\Plugin\PluginBase object. | 92 |
Range:: |
protected | function | Returns the range element. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
StyleBase:: |
public | function | Provides both CSS grid and js-driven attributes configurable via UI. | |
StyleBase:: |
protected | function | Returns the CSS rule with a selector and sub selector if available. | |
StyleBase:: |
protected | function | Modifies any attributes relevant to use backgrounds. | |
StyleBase:: |
public | function | Returns an animation. | |
StyleBase:: |
protected | function | Checks for valid color excluding black (#000000) by design. | |
StyleBase:: |
protected | function | Returns available colors. | |
StyleBase:: |
public | function | Returns selectors and sub-selectors with context related to box levels. | |
StyleBase:: |
public | function | Returns a style. | |
StyleBase:: |
public | function | Returns the variant class. | |
StyleBase:: |
protected | function | Checks if it has colors. | |
StyleBase:: |
public | function | Modifies inline style to not nullify others. | |
StyleBase:: |
protected | function | Parses the string attribute: role|navigation,data-something|some value. | |
StyleBase:: |
protected | function | Parses the given string classes. | |
StyleBase:: |
public | function | Builds inline styles if so required with multiple instances on a page. | |
StyleBase:: |
protected | function | Return the style element. | |
Wrapper:: |
protected | function |