package Mojolicious::Plugin::AssetPack::Preprocessor::Css; =encoding utf8 =head1 NAME Mojolicious::Plugin::AssetPack::Preprocessor::Css - Preprocessor for CSS =head1 DESCRIPTION L<Mojolicious::Plugin::AssetPack::Preprocessor::Css> is a preprocessor for C<.css> files. CSS is minified using L<CSS::Minifier::XS>. This module is optional and must be installed manually. NOTE! L<CSS::Minifier::XS> might be replaced with something better. =cut use Mojo::Base 'Mojolicious::Plugin::AssetPack::Preprocessor'; use CSS::Minifier::XS; =head1 METHODS =head2 process This method use L<CSS::Minifier::XS> to process C<$text>. See L<Mojolicious::Plugin::AssetPack::Preprocessor/process>. =cut sub process { my ($self, $assetpack, $text, $path) = @_; if ($assetpack->minify and length $$text) { $$text = CSS::Minifier::XS::minify($$text) // die "CSS::Minifier::XS::minify could not minify $path"; } return $self; } =head1 COPYRIGHT AND LICENSE Copyright (C) 2014, Jan Henning Thorsen This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0. =head1 AUTHOR Jan Henning Thorsen - C<jhthorsen@cpan.org> =cut 1;