13. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
!
$js = new AssetCollection(array(
# Todos los archivos dentro de js/
new GlobAsset('/path/to/js/*'),
!
# Un único archivo
new FileAsset('/path/to/another.js'),
));
!
# Imprime en pantalla el resultado de la combinación
echo $js->dump();
Cómo …?
https://github.com/kriswallsmith/assetic#assetic--
14. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
!
$js = new AssetCollection(array(
# Todos los archivos dentro de js/
new GlobAsset('/path/to/js/*'),
!
# Un único archivo
new FileAsset('/path/to/another.js'),
));
!
# Imprime en pantalla el resultado de la combinación
echo $js->dump();
Cómo …?
Crea la colección de
assets
15. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
!
$js = new AssetCollection(array(
# Todos los archivos dentro de js/
new GlobAsset('/path/to/js/*'),
!
# Un único archivo
new FileAsset('/path/to/another.js'),
));
!
# Imprime en pantalla el resultado de la combinación
echo $js->dump();
Cómo …?
Con los assets a
utilizar
16. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
!
$js = new AssetCollection(array(
# Todos los archivos dentro de js/
new GlobAsset('/path/to/js/*'),
!
# Un único archivo
new FileAsset('/path/to/another.js'),
));
!
# Imprime en pantalla el resultado de la combinación
echo $js->dump();
Cómo …?
Muestra el resultado
18. FileAsset
Carga el asset desde un archivo
GlobAsset
Carga el/los assets desde un pattern
HttpAsset
Carga el asset desde una URL
StringAsset
Crea un asset desde un string :)
Tipos de assets
20. Filtros …?
“Los filtros permiten manipular los assets”
https://github.com/kriswallsmith/assetic#filters
21. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
use AsseticFilterLessFilter;
use AsseticFilterYui;
!
$css = new AssetCollection(array(
new FileAsset('/path/to/src/styles.less', array(new LessFilter())),
new GlobAsset('/path/to/css/*'),
), array(
new YuiCssCompressorFilter('/path/to/yuicompressor.jar'),
));
!
# Imprime el resultado de la combinación
# con la compresión de los estilos
echo $css->dump();
Filtros …?
https://github.com/kriswallsmith/assetic#filters
22. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
use AsseticFilterLessFilter;
use AsseticFilterYui;
!
$css = new AssetCollection(array(
new FileAsset('/path/to/src/styles.less', array(new LessFilter())),
new GlobAsset('/path/to/css/*'),
), array(
new YuiCssCompressorFilter('/path/to/yuicompressor.jar'),
));
!
# Imprime el resultado de la combinación
# con la compresión de los estilos
echo $css->dump();
Filtros …?
Indica los filtros a
aplicar al asset
23. use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
use AsseticFilterLessFilter;
use AsseticFilterYui;
!
$css = new AssetCollection(array(
new FileAsset('/path/to/src/styles.less', array(new LessFilter())),
new GlobAsset('/path/to/css/*'),
), array(
new YuiCssCompressorFilter('/path/to/yuicompressor.jar'),
));
!
# Imprime el resultado de la combinación
# con la compresión de los estilos
echo $css->dump();
Filtros …?
Indico los filtros a
aplicar a la colección
24. Filtros …?
use AsseticAssetAssetCollection;
use AsseticAssetFileAsset;
use AsseticAssetGlobAsset;
use AsseticFilterLessFilter;
use AsseticFilterYui;
!
$css = new AssetCollection(array(
new FileAsset('/path/to/src/styles.less', array(new LessFilter())),
new GlobAsset('/path/to/css/*'),
), array(
new YuiCssCompressorFilter('/path/to/yuicompressor.jar'),
));
!
# Imprime el resultado de la combinación
# con la compresión de los estilos
echo $css->dump();
Muestra el resultado
45. AssetFactory
https://github.com/kriswallsmith/assetic#asset-factory
use AsseticFactoryAssetFactory;
!
$factory = new AssetFactory('/path/to/asset/directory/');
$factory->setAssetManager($am);
$factory->setFilterManager($fm);
!
$css = $factory->createAsset(array(
# Carga el asset “reset” desde el asset manager
'@reset',
'css/src/*.scss',
), array(
'scss',
!
# No utiliza el filtro en modo debug
'?yui_css',
));
!
echo $css->dump();
Se instancia con un
directorio base
46. AssetFactory
https://github.com/kriswallsmith/assetic#asset-factory
use AsseticFactoryAssetFactory;
!
$factory = new AssetFactory('/path/to/asset/directory/');
$factory->setAssetManager($am);
$factory->setFilterManager($fm);
!
$css = $factory->createAsset(array(
# Carga el asset “reset” desde el asset manager
'@reset',
'css/src/*.scss',
), array(
'scss',
!
# No utiliza el filtro en modo debug
'?yui_css',
));
!
echo $css->dump();
Configura los
managers
49. use AsseticFactoryAssetFactory;
!
$factory = new AssetFactory('/path/to/asset/directory/');
$factory->setAssetManager($am);
$factory->setFilterManager($fm);
!
$css = $factory->createAsset(array(
# Carga el asset “reset” desde el asset manager
'@reset',
'css/src/*.scss',
), array(
'scss',
!
# No utiliza el filtro en modo debug
'?yui_css',
));
!
echo $css->dump();
AssetFactory
http://www.thumbresources.org/wp-content/uploads/2012/10/thumb-resources.jpg
50. AssetFactory
https://github.com/kriswallsmith/assetic#asset-factory
use AsseticFactoryAssetFactory;
!
$factory = new AssetFactory('/path/to/asset/directory/');
$factory->setAssetManager($am);
$factory->setFilterManager($fm);
!
$css = $factory->createAsset(array(
# Carga el asset “reset” desde el asset manager
'@reset',
'css/src/*.scss',
), array(
'scss',
!
# No utiliza el filtro en modo debug
'?yui_css',
));
!
echo $css->dump(); Muestra el resultado
51. Symfony
Incluido por defecto en la versión standard
Zend Framework 2
https://github.com/widmogrod/zf2-assetic-module/
Laravel
https://github.com/barryvdh/laravel-assetic
https://github.com/slushie/laravel-assetic
Integración con Frameworks