public function mainAction()
    {
        $this->line('Compiling js... ');

        $options = $this->config->assets->js->toArray();

        $result = $this->getDI()->get(ClosureCompiler::class)->compile($options);

        if (!empty($result['errors'])) {
            $this->outputErrors($result['errors'], 'errors', 'error', $options);
        }

        if (!empty($result['warnings'])) {
            $this->outputErrors($result['warnings'], 'warnings', 'warn', $options);
        }

        $this->block([str_pad(strtoupper('STATISTICS'), 40, ' ', STR_PAD_BOTH)], 'question', 4);

        $statistics = [];
        foreach ($result['statistics'] as $type => $statistic) {
            $statistics[] = ['stats' => $type, 'value' => $statistic];
        }
        $this->table($statistics);

        $this->info('Success');
    }
public function mainAction()
    {
        $this->line('Compiling js... ');

        $options = $this->config->assets->js->toArray();

        $result = $this->getDI()->get(ClosureCompiler::class)->compile($options);

        if (!empty($result['errors'])) {
            $this->outputErrors($result['errors'], 'errors', 'error', $options);
        }

        if (!empty($result['warnings'])) {
            $this->outputErrors($result['warnings'], 'warnings', 'warn', $options);
        }

        $this->block([str_pad(strtoupper('STATISTICS'), 40, ' ', STR_PAD_BOTH)], 'question', 4);

        $statistics = [];
        foreach ($result['statistics'] as $type => $statistic) {
            $statistics[] = ['stats' => $type, 'value' => $statistic];
        }
        $this->table($statistics);

        $this->info('Success');
    }
public function mainAction ( ) { $ this -> line ( 'Compiling js... ' ) ; $ options = $ this -> config -> assets -> js -> toArray ( ) ; $ result = $ this -> getDI ( ) -> get ( ClosureCompiler :: class ) -> compile ( $ options ) ; if ( ! empty ( $ result [ 'errors' ] ) ) { $ this -> outputErrors ( $ result [ 'errors' ] , 'errors' , 'error' , $ options ) ; } if ( ! empty ( $ result [ 'warnings' ] ) ) { $ this -> outputErrors ( $ result [ 'warnings' ] , 'warnings' , 'warn' , $ options ) ; } $ this -> block ( [ str_pad ( strtoupper ( 'STATISTICS' ) , 40 , ' ' , STR_PAD_BOTH ) ] , 'question' , 4 ) ; $ statistics = [ ] ; foreach ( $ result [ 'statistics' ] as $ type => $ statistic ) { $ statistics [ ] = [ 'stats' => $ type , 'value' => $ statistic ] ; } $ this -> table ( $ statistics ) ; $ this -> info ( 'Success' ) ; }
Compilation, Optimization, Minification of assets js.
Use the Closure Compile API.

@option --verbose-externs : Display errors & warnings of externals files
Compilation Optimization Minification of assets js . Use the Closure Compile API .