Вход Регистрация
Файл: contao-3.5.8/vendor/leafo/scssphp/src/Formatter/Compressed.php
Строк: 67
<?php
/**
 * SCSSPHP
 *
 * @copyright 2012-2015 Leaf Corcoran
 *
 * @license http://opensource.org/licenses/MIT MIT
 *
 * @link http://leafo.github.io/scssphp
 */

namespace LeafoScssPhpFormatter;

use 
LeafoScssPhpFormatter;
use 
LeafoScssPhpFormatterOutputBlock;

/**
 * SCSS compressed formatter
 *
 * @author Leaf Corcoran <leafot@gmail.com>
 */
class Compressed extends Formatter
{
    
/**
     * {@inheritdoc}
     */
    
public function __construct()
    {
        
$this->indentLevel 0;
        
$this->indentChar '  ';
        
$this->break '';
        
$this->open '{';
        
$this->close '}';
        
$this->tagSeparator ',';
        
$this->assignSeparator ':';
    }

    
/**
     * {@inheritdoc}
     */
    
public function stripSemicolon(&$lines)
    {
        if ((
$count count($lines))
            && 
substr($lines[$count 1], -1) === ';'
        
) {
            
$lines[$count 1] = substr($lines[$count 1], 0, -1);
        }
    }

    
/**
     * {@inheritdoc}
     */
    
public function blockLines(OutputBlock $block)
    {
        
$inner $this->indentStr();

        
$glue $this->break $inner;

        foreach (
$block->lines as $index => $line) {
            if (
substr($line02) === '/*' && substr($line21) !== '!') {
                unset(
$block->lines[$index]);
            } elseif (
substr($line03) === '/*!') {
                
$block->lines[$index] = '/*' substr($line3);
            }
        }

        echo 
$inner implode($glue$block->lines);

        if (! empty(
$block->children)) {
            echo 
$this->break;
        }
    }

    
/**
     * {@inherit}
     */
    
public function format(OutputBlock $block)
    {
        return 
parent::format($block);

        
// TODO: we need to fix the 2 "compressed" tests where the "close" is applied
        
return trim(str_replace(';}''}'parent::format($block)));
    }
}
Онлайн: 0
Реклама