protected function CssOptimizer::processFile in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Asset/CssOptimizer.php \Drupal\Core\Asset\CssOptimizer::processFile()
Build aggregate CSS file.
1 call to CssOptimizer::processFile()
- CssOptimizer::optimize in core/
lib/ Drupal/ Core/ Asset/ CssOptimizer.php - Optimizes an asset.
File
- core/
lib/ Drupal/ Core/ Asset/ CssOptimizer.php, line 76
Class
- CssOptimizer
- Optimizes a CSS asset.
Namespace
Drupal\Core\AssetCode
protected function processFile($css_asset) {
$contents = $this
->loadFile($css_asset['data'], TRUE);
$contents = $this
->clean($contents);
// Get the parent directory of this file, relative to the Drupal root.
$css_base_path = substr($css_asset['data'], 0, strrpos($css_asset['data'], '/'));
// Store base path.
$this->rewriteFileURIBasePath = $css_base_path . '/';
// Anchor all paths in the CSS with its base URL, ignoring external and absolute paths.
return preg_replace_callback('/url\\(\\s*[\'"]?(?![a-z]+:|\\/+)([^\'")]+)[\'"]?\\s*\\)/i', [
$this,
'rewriteFileURI',
], $contents);
}