acquia_dam-1.0.0-rc1/src/Plugin/media/Source/AssetDeriver.php
src/Plugin/media/Source/AssetDeriver.php
<?php declare(strict_types=1); namespace Drupal\acquia_dam\Plugin\media\Source; use Drupal\Component\Plugin\Derivative\DeriverBase; /** * Deriver to create asset media source plugins based on supported asset types. */ final class AssetDeriver extends DeriverBase { /** * {@inheritdoc} */ public function getDerivativeDefinitions($base_plugin_definition) { $this->derivatives = [ 'pdf' => [ 'id' => 'pdf', 'label' => t('PDF (DAM)'), 'default_thumbnail_filename' => 'generic.png', 'asset_search_key' => 'ft', 'asset_search_value' => 'pdf', ] + $base_plugin_definition, 'video' => [ 'id' => 'video', 'label' => t('Video (DAM)'), 'default_thumbnail_filename' => 'generic.png', 'asset_search_key' => 'ft', 'asset_search_value' => 'video', ] + $base_plugin_definition, 'spinset' => [ 'id' => 'spinset', 'label' => t('Spinset (DAM)'), 'default_thumbnail_filename' => 'generic.png', 'asset_search_key' => 'ff', 'asset_search_value' => 'SpinSet', ] + $base_plugin_definition, 'image' => [ 'id' => 'image', 'label' => t('Image (DAM)'), 'default_thumbnail_filename' => 'generic.png', 'asset_search_key' => 'ft', 'asset_search_value' => 'image', ] + $base_plugin_definition, 'documents' => [ 'id' => 'documents', 'label' => t('Documents (DAM)'), 'default_thumbnail_filename' => 'generic.png', 'asset_search_key' => 'ft', 'asset_search_value' => 'office', ] + $base_plugin_definition, ]; return parent::getDerivativeDefinitions($base_plugin_definition); } }