Loads SCSS files using the PHP implementation of scss, scssphp.
Scss files are mostly compatible, but there are slight differences.
@link http://leafo.net/scssphp/
@author Bart van den Burg <bart@samson-it.nl>
Expanded class hierarchy of ScssphpFilter
class ScssphpFilter implements DependencyExtractorInterface {
private $compass = false;
private $importPaths = array();
public function enableCompass($enable = true) {
$this->compass = (bool) $enable;
}
public function isCompassEnabled() {
return $this->compass;
}
public function filterLoad(AssetInterface $asset) {
$root = $asset
->getSourceRoot();
$path = $asset
->getSourcePath();
$lc = new \scssc();
if ($this->compass) {
new \scss_compass($lc);
}
if ($root && $path) {
$lc
->addImportPath(dirname($root . '/' . $path));
}
foreach ($this->importPaths as $path) {
$lc
->addImportPath($path);
}
$asset
->setContent($lc
->compile($asset
->getContent()));
}
public function setImportPaths(array $paths) {
$this->importPaths = $paths;
}
public function addImportPath($path) {
$this->importPaths[] = $path;
}
public function filterDump(AssetInterface $asset) {
}
public function getChildren(AssetFactory $factory, $content, $loadPath = null) {
// todo
return array();
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ScssphpFilter:: |
private | property | ||
ScssphpFilter:: |
private | property | ||
ScssphpFilter:: |
public | function | ||
ScssphpFilter:: |
public | function | ||
ScssphpFilter:: |
public | function |
Filters an asset just before it's dumped. Overrides FilterInterface:: |
|
ScssphpFilter:: |
public | function |
Filters an asset after it has been loaded. Overrides FilterInterface:: |
|
ScssphpFilter:: |
public | function |
Returns child assets. Overrides DependencyExtractorInterface:: |
|
ScssphpFilter:: |
public | function | ||
ScssphpFilter:: |
public | function |