view release on metacpan or search on metacpan
author:
- Mark Norman Francis <norm@cackhanded.net>
license: unknown
distribution_type: module
configure_requires:
ExtUtils::MakeMaker: 0
build_requires:
ExtUtils::MakeMaker: 0
requires:
Digest::SHA1: 0
Modern::Perl: 0
Test::More: 0
version: 0
no_index:
directory:
- t
- inc
generated_by: ExtUtils::MakeMaker version 6.56
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
Makefile.PL view on Meta::CPAN
AUTHOR => 'Mark Norman Francis <norm@cackhanded.net>',
VERSION_FROM => 'lib/CSS/Prepare.pm',
ABSTRACT_FROM => 'lib/CSS/Prepare.pm',
PL_FILES => {},
EXE_FILES => [
'bin/cssprepare',
'bin/assets',
],
PREREQ_PM => {
'Test::More' => 0,
'Modern::Perl' => 0,
'version' => 0,
'Digest::SHA1' => 0,
},
dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
clean => { FILES => 'CSS-Prepare-*' },
);
It understands (almost) all of CSS2.1 and some aspects of CSS3.
Plugins can extend the syntax of CSS, allowing features such as variables,
server-side calculated values, compound elements and mixins.
Dependencies
------------
- Perl v5.10 or better
- Modern::Perl
- Digest::SHA1
Copyright and license
---------------------
Copyright (c) 2010-2011 Mark Norman Francis <norm@cackhanded.net>.
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
#!/usr/bin/env perl
use Modern::Perl;
use CSS::Prepare;
use Getopt::Long qw( :config bundling );
use Pod::Usage;
use constant OPTIONS => qw(
help|h
assets-output|m=s
assets-base|n=s
);
use constant REQUIRED_OPTIONS => qw( assets-output );
bin/cssprepare view on Meta::CPAN
#!/usr/bin/env perl
use Modern::Perl;
use CSS::Prepare;
use File::stat;
use FileHandle;
use Getopt::Long qw( :config bundling );
use IO::Handle;
use POSIX qw( mkfifo );
use Pod::Usage;
use Term::ANSIColor;
use Time::HiRes qw( gettimeofday tv_interval );
lib/CSS/Prepare.pm view on Meta::CPAN
package CSS::Prepare;
use Modern::Perl;
use CSS::Prepare::CSSGrammar;
use CSS::Prepare::Property::Background;
use CSS::Prepare::Property::Border;
use CSS::Prepare::Property::BorderRadius;
use CSS::Prepare::Property::Color;
use CSS::Prepare::Property::Effects;
use CSS::Prepare::Property::Font;
use CSS::Prepare::Property::Formatting;
use CSS::Prepare::Property::Generated;
lib/CSS/Prepare/CSSGrammar.pm view on Meta::CPAN
package CSS::Prepare::CSSGrammar;
use Modern::Perl;
use Exporter;
our @ISA = qw( Exporter );
our @EXPORT = qw(
$grammar_media_query_list
);
my $ident = qr{ -? [_a-z] [_a-z0-9-]* }ix;
lib/CSS/Prepare/Plugin/BorderRadius.pm view on Meta::CPAN
package CSS::Prepare::Plugin::BorderRadius;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
my $get_border_radius_value = qr{
(?'h1' $individual_border_radius_value )
(?: \s+ (?'h2' $individual_border_radius_value ) )?
(?: \s+ (?'h3' $individual_border_radius_value ) )?
(?: \s+ (?'h4' $individual_border_radius_value ) )?
(?:
\s* / \s*
lib/CSS/Prepare/Plugin/Contain.pm view on Meta::CPAN
package CSS::Prepare::Plugin::Contain;
# TODO
# - how to inject styles for _DIFFERENT_ selectors? (append to the end of
# the current block, which helps with the following)
# - stop optimise from turning display:inline; display:block; into
# one rule by putting it within two chunks ($prep->add_chunk()?)
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
my $contain_value = qr{
(?'overflow' overflow )
|
(?'easy' easy )
(?: \s+ (?'easytype' valid | hack ) )?
}x;
lib/CSS/Prepare/Plugin/Opacity.pm view on Meta::CPAN
package CSS::Prepare::Plugin::Opacity;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub expand {
my $self = shift;
my $property = shift;
my $value = shift;
if ( '-cp-opacity' eq $property ) {
my $ms_opacity = $value * 100;
lib/CSS/Prepare/Property/Background.pm view on Meta::CPAN
package CSS::Prepare::Property::Background;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
lib/CSS/Prepare/Property/Border.pm view on Meta::CPAN
package CSS::Prepare::Property::Border;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/BorderRadius.pm view on Meta::CPAN
package CSS::Prepare::Property::BorderRadius;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
my $get_border_radius_values = qr{
(?'h1' $individual_border_radius_value )
(?: \s+ (?'h2' $individual_border_radius_value ) )?
(?: \s+ (?'h3' $individual_border_radius_value ) )?
(?: \s+ (?'h4' $individual_border_radius_value ) )?
(?:
\s* / \s*
lib/CSS/Prepare/Property/Color.pm view on Meta::CPAN
package CSS::Prepare::Property::Color;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Effects.pm view on Meta::CPAN
package CSS::Prepare::Property::Effects;
use Modern::Perl;
use CSS::Prepare::Property::Values;
use CSS::Prepare::Property::Expansions;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Expansions.pm view on Meta::CPAN
package CSS::Prepare::Property::Expansions;
use Modern::Perl;
use CSS::Prepare::Property::Values;
use Exporter;
our @ISA = qw( Exporter );
our @EXPORT = qw(
expand_trbl_shorthand
collapse_trbl_shorthand
expand_clip
shorten_colour_value
shorten_length_value
lib/CSS/Prepare/Property/Font.pm view on Meta::CPAN
package CSS::Prepare::Property::Font;
use Modern::Perl;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Formatting.pm view on Meta::CPAN
package CSS::Prepare::Property::Formatting;
use Modern::Perl;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Generated.pm view on Meta::CPAN
package CSS::Prepare::Property::Generated;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Hacks.pm view on Meta::CPAN
package CSS::Prepare::Property::Hacks;
use Modern::Perl;
my @COMMON_HACK_PROPERTIES = qw( zoom filter );
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Margin.pm view on Meta::CPAN
package CSS::Prepare::Property::Margin;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Padding.pm view on Meta::CPAN
package CSS::Prepare::Property::Padding;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Tables.pm view on Meta::CPAN
package CSS::Prepare::Property::Tables;
use Modern::Perl;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Text.pm view on Meta::CPAN
package CSS::Prepare::Property::Text;
use Modern::Perl;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/UI.pm view on Meta::CPAN
package CSS::Prepare::Property::UI;
use Modern::Perl;
use CSS::Prepare::Property::Expansions;
use CSS::Prepare::Property::Values;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
lib/CSS/Prepare/Property/Values.pm view on Meta::CPAN
package CSS::Prepare::Property::Values;
use Modern::Perl;
use Exporter;
our @ISA = qw( Exporter );
our @EXPORT = qw(
is_length_value
is_percentage_value
is_string_value
is_url_value
is_background_attachment_value
lib/CSS/Prepare/Property/Vendor.pm view on Meta::CPAN
package CSS::Prepare::Property::Vendor;
use Modern::Perl;
sub parse {
my $self = shift;
my $has_hack = shift;
my $location = shift;
my %declaration = @_;
my $property = $declaration{'property'};
t/01.expansion.t view on Meta::CPAN
use Modern::Perl;
use Test::More tests => 4;
use CSS::Prepare::Property::Expansions;
use Data::Dumper;
local $Data::Dumper::Terse = 1;
local $Data::Dumper::Indent = 1;
local $Data::Dumper::Useqq = 1;
local $Data::Dumper::Deparse = 1;
local $Data::Dumper::Quotekeys = 0;
local $Data::Dumper::Sortkeys = 1;
t/01.parse.t view on Meta::CPAN
use Modern::Perl;
use Test::More tests => 28;
use CSS::Prepare;
use Data::Dumper;
local $Data::Dumper::Terse = 1;
local $Data::Dumper::Indent = 1;
local $Data::Dumper::Useqq = 1;
local $Data::Dumper::Deparse = 1;
local $Data::Dumper::Quotekeys = 0;
local $Data::Dumper::Sortkeys = 1;
t/01.plugins.t view on Meta::CPAN
use Modern::Perl;
use Test::More tests => 4;
use CSS::Prepare;
use Data::Dumper;
local $Data::Dumper::Terse = 1;
local $Data::Dumper::Indent = 1;
local $Data::Dumper::Useqq = 1;
local $Data::Dumper::Deparse = 1;
local $Data::Dumper::Quotekeys = 0;
local $Data::Dumper::Sortkeys = 1;
view all matches for this distributionview release on metacpan - search on metacpan