Namespace
  Drupal\advagg_js_minify\EventSubscriber
File
  - 
              advagg_js_minify/src/EventSubscriber/MinificationSubscriber.php
    
   
  
    View source
  
  <?php
namespace Drupal\advagg_js_minify\EventSubscriber;
use Drupal\advagg\Asset\AssetOptimizationEvent;
use Drupal\advagg\Asset\SingleAssetOptimizerBase;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class MinificationSubscriber implements EventSubscriberInterface {
    
    protected $minifier;
    
    public function __construct(SingleAssetOptimizerBase $minifier) {
        $this->minifier = $minifier;
    }
    
    public function minify(AssetOptimizationEvent $asset) {
        $content = $asset->getContent();
        $content = $this->minifier
            ->optimize($content, $asset->getAsset(), $asset->getData());
        $this->minifier
            ->addLicense($content, $asset->getAsset()['data']);
        $asset->setContent($content);
    }
    
    public static function getSubscribedEvents() {
        return [
            AssetOptimizationEvent::JS => [
                'minify',
                0,
            ],
        ];
    }
}
 
Classes