You are here

public function SubtitleFormatter::__construct in Facebook Instant Articles 8.2

Same name and namespace in other branches
  1. 3.x src/Plugin/Field/FieldFormatter/SubtitleFormatter.php \Drupal\fb_instant_articles\Plugin\Field\FieldFormatter\SubtitleFormatter::__construct()

Create a new instance of TransformerFormatter.

Parameters

string $plugin_id: The plugin_id for the formatter.

mixed $plugin_definition: The plugin implementation definition.

\Drupal\Core\Field\FieldDefinitionInterface $field_definition: The definition of the field to which the formatter is associated.

array $settings: The formatter settings.

string $label: The formatter label display setting.

string $view_mode: The view mode.

array $third_party_settings: Any third party settings settings.

\Drupal\Core\Render\RendererInterface $renderer: The renderer service.

\Drupal\fb_instant_articles\Transformer $transformer: Facebook transformer.

Overrides FormatterBase::__construct

File

src/Plugin/Field/FieldFormatter/SubtitleFormatter.php, line 74

Class

SubtitleFormatter
Plugin implementation of the 'fbia_subtitle' formatter.

Namespace

Drupal\fb_instant_articles\Plugin\Field\FieldFormatter

Code

public function __construct($plugin_id, $plugin_definition, FieldDefinitionInterface $field_definition, array $settings, $label, $view_mode, array $third_party_settings, RendererInterface $renderer, Transformer $transformer) {
  parent::__construct($plugin_id, $plugin_definition, $field_definition, $settings, $label, $view_mode, $third_party_settings);
  $this->renderer = $renderer;
  $this->transformer = $transformer;
  $this->transformer
    ->setRules([
    TextNodeRule::createFrom([]),
    PassThroughRule::createFrom([
      'selector' => '//html|//body|//p|//div|//blockquote|//h1|//h2|//h3|//h4',
    ]),
    ItalicRule::createFrom([
      'selector' => 'i',
    ]),
    ItalicRule::createFrom([
      'selector' => 'em',
    ]),
    BoldRule::createFrom([
      'selector' => 'b',
    ]),
    BoldRule::createFrom([
      'selector' => 'strong',
    ]),
    AnchorRule::createFrom([
      'selector' => 'a',
      'properties' => [
        AnchorRule::PROPERTY_ANCHOR_HREF => [
          'type' => 'string',
          'selector' => 'a',
          'attribute' => 'href',
        ],
        AnchorRule::PROPERTY_ANCHOR_REL => [
          'type' => 'string',
          'selector' => 'a',
          'attribute' => 'rel',
        ],
      ],
    ]),
  ]);
}