CSS-Prepare

 view release on metacpan or  search on metacpan

lib/CSS/Prepare/Property/Values.pm  view on Meta::CPAN

        is_length_value
        is_percentage_value
        is_string_value
        is_url_value
        
        is_background_attachment_value
        is_background_colour_value
        is_background_image_value
        is_background_position_value
        is_background_repeat_value
        is_border_collapse_value
        is_border_colour_value
        is_border_radius_corner_value
        is_border_radius_value
        is_border_spacing_value
        is_border_style_value
        is_border_width_value
        is_caption_side_value
        is_clear_value
        is_clip_value
        is_colour_value
        is_content_value
        is_counter_increment_value
        is_counter_reset_value
        is_cursor_value
        is_direction_value
        is_display_value
        is_empty_cells_value
        is_float_value
        is_font_family_value
        is_font_size_line_height_value
        is_font_size_value
        is_font_style_value
        is_font_variant_value
        is_font_weight_value
        is_height_value
        is_letter_spacing_value
        is_line_height_value
        is_list_style_image_value
        is_list_style_position_value
        is_list_style_type_value
        is_margin_width_value
        is_max_height_value
        is_max_width_value
        is_min_height_value
        is_min_width_value
        is_offset_value
        is_opacity_value
        is_outline_colour_value
        is_outline_style_value
        is_outline_width_value
        is_overflow_value
        is_padding_width_value
        is_position_value
        is_quotes_value
        is_table_layout_value
        is_text_align_value
        is_text_decoration_value
        is_text_indent_value
        is_text_transform_value
        is_unicode_bidi_value
        is_vertical_align_value
        is_visibility_value
        is_white_space_value
        is_width_value
        is_word_spacing_value
        is_z_index_value
        
        @standard_directions
        @standard_corners
        
        $background_attachment_value
        $background_colour_value
        $background_image_value
        $background_repeat_value
        $background_position_value
        $border_colour_value
        $individual_border_radius_value
        $border_radius_corner_value
        $border_radius_value
        $border_style_value
        $border_width_value
        $colour_value
        $font_family
        $font_family_value
        $font_style_value
        $font_size_value
        $font_style_value
        $font_variant_value
        $font_weight_value
        $length_value
        $line_height_value
        $list_style_type_value
        $list_style_image_value
        $list_style_position_value
        $margin_width_value
        $media_types_value
        $outline_colour_value
        $outline_style_value
        $outline_width_value
        $padding_width_value
        $positive_length_value
        $positive_percentage_value
        $string_value
        $url_value
        
        $concise_format
        $pretty_format
        $concise_separator
        $pretty_separator
    );


# shorthands
our @standard_directions = qw( top right bottom left );
our @standard_corners    = qw( top-left top-right bottom-right bottom-left );

# primitive types
my $integer_value = qr{ [+-]? [0-9]+ }x;
my $positive_integer_value = qr{ [+]? [0-9]+ }x;
my $identifier_value = qr{ [a-z][a-zA-z0-9_-]* }ix;

lib/CSS/Prepare/Property/Values.pm  view on Meta::CPAN

my $height_value
    = qr{ (?: $length_value | $percentage_value | auto | inherit ) }x;
my $letter_spacing_value = qr{ (?: normal | $length_value | inherit ) }x;
our $list_style_image_value = qr{ (?: $url_value | none | inherit ) }x;
our $list_style_position_value = qr{ (?: inside | outside | inherit ) }x;
our $list_style_type_value = qr{
        (?:
              armenian    | circle      | decimal     | decimal-leading-zero
            | disc        | georgian    | lower-alpha | lower-greek
            | lower-latin | lower-roman | upper-alpha | upper-latin
            | upper-roman
            
            | none | inherit
        )
    }x;

our $margin_width_value
    = qr{ (?: $length_value | $percentage_value | auto | inherit ) }x;
my $max_height_value
    = qr{ (?: $length_value | $percentage_value | none | inherit ) }x;
my $max_width_value
    = qr{ (?: $length_value | $percentage_value | none | inherit ) }x;
my $min_height_value
    = qr{ (?: $length_value | $percentage_value | inherit ) }x;
my $min_width_value
    = qr{ (?: $length_value | $percentage_value | inherit ) }x;

my $offset_value
    = qr{ (?: $length_value | $percentage_value | auto | inherit ) }x;
my $opacity_value = qr{ (?: $number_value | inherit ) }x;
our $outline_colour_value = qr{ (?: invert | inherit | $colour_value ) }x;
our $outline_style_value = qr{ (?: $border_style_value ) }x;
our $outline_width_value = qr{ (?: $border_width_value ) }x;
my $overflow_value = qr{ (?: visible | hidden | scroll | auto | inherit ) }x;
our $padding_width_value = qr{
        (?: $positive_length_value | $positive_percentage_value | inherit )
    }x;
my $position_value
    = qr{ (?: absolute | fixed | relative | static | inherit ) }x;
my $quotes_value = qr{
        (?:
              (?:
                  (?: $string_value \s+ $string_value )
                  (?: \s+ $string_value \s+ $string_value )*
              )
            | none | inherit
        )
    }x;

my $table_layout_value = qr{ (?: auto | fixed | inherit ) }x;
my $text_align_value
    = qr{ (?: left | right | center | justify | inherit ) }x;
my $text_decoration_value = qr{
       (?: none | underline | overline | line-through | blink | inherit )
   }x;
my $text_indent_value
    = qr{ (?: $length_value | $percentage_value | inherit ) }x;
my $text_transform_value
    = qr{ (?: capitalize | uppercase | lowercase | none | inherit ) }x;

my $unicode_bidi_value
    = qr{ (?: normal | embed | bidi-override | inherit ) }x;
my $vertical_align_value = qr{
        (?:
              baseline | sub    | super  | top
            | text-top | middle | bottom | text-bottom
            | $length_value | $percentage_value
            | inherit
        )
    }x;
my $visibility_value = qr{ (?: visible | hidden | collapse | inherit ) }x;
my $white_space_value
    = qr{ (?: normal | pre | nowrap | pre-wrap | pre-line | inherit ) }x;
my $width_value
    = qr{ (?: $length_value | $percentage_value | auto | inherit ) }x;
my $word_spacing_value = qr{ (?: normal | $length_value | inherit ) }x;
my $z_index_value = qr{ (?: $integer_value | auto | inherit ) }x;



our $concise_format    = "%s%s;";
our $pretty_format     = "    %-23s %s;\n";
our $concise_separator = ' ';
our $pretty_separator  = "\n" . ( ' ' x 28 );


sub is_length_value {
    my $value = shift;
    return $value =~ m{^ $length_value $}x;
}
sub is_percentage_value {
    my $value = shift;
    return $value =~ m{^ $percentage_value $}x;
}
sub is_string_value {
    my $value = shift;
    return $value =~ m{^ $string_value $}x;
}
sub is_url_value {
    my $value = shift;
    return $value =~ m{^ $url_value $}x;
}

sub is_background_attachment_value {
    my $value = shift;
    return $value =~ m{^ $background_attachment_value $}x;
}
sub is_background_colour_value {
    my $value = shift;
    return $value =~ m{^ $background_colour_value $}x;
}
sub is_background_image_value {
    my $value = shift;
    return $value =~ m{^ $background_image_value $}x;
}
sub is_background_position_value {
    my $value = shift;
    return $value =~ m{^ $background_position_value $}x;
}
sub is_background_repeat_value {
    my $value = shift;

lib/CSS/Prepare/Property/Values.pm  view on Meta::CPAN

    return $value =~ m{^ $offset_value $}x;
}
sub is_opacity_value {
    my $value = shift;
    
    if ( $value =~ m{^ $opacity_value $}x ) {
        return 1
            if ( 0 <= $value && 1 >= $value );
    }
    
    return 0;
}
sub is_outline_colour_value {
    my $value = shift;
    return $value =~ m{^ $outline_colour_value $}x;
}
sub is_outline_style_value {
    my $value  = shift;
    return $value =~ m{^ $outline_style_value $}x;
}
sub is_outline_width_value {
    my $value = shift;
    return $value =~ m{^ $outline_width_value $}x;
}
sub is_overflow_value {
    my $value = shift;
    return $value =~ m{^ $overflow_value $}x;
}
sub is_padding_width_value {
    my $value = shift;
    return $value =~ m{^ $padding_width_value $}x;
}
sub is_position_value {
    my $value = shift;
    return $value =~ m{^ $position_value $}x;
}
sub is_quotes_value {
    my $value = shift;
    return $value =~ m{^ $quotes_value $}x;
}
sub is_table_layout_value {
    my $value = shift;
    return $value =~ m{^ $table_layout_value $}x;
}
sub is_text_align_value {
    my $value = shift;
    return $value =~ m{^ $text_align_value $}x;
}
sub is_text_decoration_value {
    my $value = shift;
    return $value =~ m{^ $text_decoration_value $}x;
}
sub is_text_indent_value {
    my $value = shift;
    return $value =~ m{^ $text_indent_value $}x;
}
sub is_text_transform_value {
    my $value = shift;
    return $value =~ m{^ $text_transform_value $}x;
}
sub is_unicode_bidi_value {
    my $value = shift;
    return $value =~ m{^ $unicode_bidi_value $}x;
}
sub is_vertical_align_value {
    my $value = shift;
    return $value =~ m{^ $vertical_align_value $}x;
}
sub is_visibility_value {
    my $value = shift;
    return $value =~ m{^ $visibility_value $}x;
}
sub is_white_space_value {
    my $value = shift;
    return $value =~ m{^ $white_space_value $}x;
}
sub is_width_value {
    my $value = shift;
    return $value =~ m{^ $width_value $}x;
}
sub is_word_spacing_value {
    my $value = shift;
    return $value =~ m{^ $word_spacing_value $}x;
}
sub is_z_index_value {
    my $value = shift;
    return $value =~ m{^ $z_index_value $}x;
}

1;



( run in 0.642 second using v1.01-cache-2.11-cpan-39bf76dae61 )