CssGenerator

Struct CssGenerator 

Source
pub struct CssGenerator {
Show 79 fields pub rules: HashMap<String, CssRule>, pub breakpoints: HashMap<Breakpoint, String>, pub custom_properties: HashMap<String, String>, pub config: CssGenerationConfig, pub spacing_parser: SpacingParser, pub advanced_spacing_parser: AdvancedSpacingParser, pub color_parser: ColorParser, pub advanced_color_parser: AdvancedColorParser, pub typography_parser: TypographyParser, pub layout_parser: LayoutParser, pub positioning_parser: PositioningParser, pub flexbox_parser: FlexboxParser, pub effects_parser: EffectsParser, pub sizing_parser: SizingParser, pub advanced_border_parser: AdvancedBorderParser, pub ring_parser: RingParser, pub transition_parser: TransitionParser, pub shadow_parser: ShadowParser, pub svg_parser: SvgParser, pub margin_parser: MarginParser, pub group_parser: GroupParser, pub advanced_grid_parser: AdvancedGridParser, pub animation_parser: AnimationParser, pub interactive_parser: InteractiveParser, pub prose_parser: ProseParser, pub divide_parser: DivideParser, pub gradient_parser: GradientParser, pub object_fit_parser: ObjectFitParser, pub transform_parser: TransformParser, pub arbitrary_parser: ArbitraryParser, pub data_attribute_parser: DataAttributeParser, pub background_properties_parser: BackgroundPropertiesParser, pub transition_properties_parser: TransitionPropertiesParser, pub fractional_transforms_parser: FractionalTransformsParser, pub aspect_ratio_parser: AspectRatioParser, pub columns_parser: ColumnsParser, pub break_control_parser: BreakControlParser, pub box_utilities_parser: BoxUtilitiesParser, pub layout_utilities_parser: LayoutUtilitiesParser, pub overflow_parser: OverflowParser, pub overscroll_parser: OverscrollParser, pub position_parser: PositionParser, pub inset_parser: InsetParser, pub visibility_parser: VisibilityParser, pub z_index_parser: ZIndexParser, pub flex_basis_parser: FlexBasisParser, pub flex_direction_parser: FlexDirectionParser, pub flex_wrap_parser: FlexWrapParser, pub flex_parser: FlexParser, pub flex_grow_parser: FlexGrowParser, pub flex_shrink_parser: FlexShrinkParser, pub order_parser: OrderParser, pub grid_template_columns_parser: GridTemplateColumnsParser, pub grid_column_parser: GridColumnParser, pub grid_template_rows_parser: GridTemplateRowsParser, pub grid_row_parser: GridRowParser, pub grid_auto_flow_parser: GridAutoFlowParser, pub grid_auto_columns_parser: GridAutoColumnsParser, pub grid_auto_rows_parser: GridAutoRowsParser, pub gap_parser: GapParser, pub justify_content_parser: JustifyContentParser, pub justify_items_parser: JustifyItemsParser, pub justify_self_parser: JustifySelfParser, pub align_content_parser: AlignContentParser, pub align_items_parser: AlignItemsParser, pub align_self_parser: AlignSelfParser, pub place_content_parser: PlaceContentParser, pub place_items_parser: PlaceItemsParser, pub place_self_parser: PlaceSelfParser, pub background_parser: BackgroundParser, pub border_utilities_parser: BorderUtilitiesParser, pub effects_utilities_parser: EffectsUtilitiesParser, pub filter_utilities_parser: FilterUtilitiesParser, pub backdrop_filter_utilities_parser: BackdropFilterUtilitiesParser, pub accessibility_parser: AccessibilityParser, pub table_parser: TableParser, pub mask_utilities_parser: MaskUtilitiesParser, pub accent_color_parser: AccentColorParser, pub variant_parser: VariantParser,
}
Expand description

Re-export core tailwind-rs functionality CSS generator that converts Tailwind classes to CSS rules

Fields§

§rules: HashMap<String, CssRule>

Generated CSS rules

§breakpoints: HashMap<Breakpoint, String>

Responsive breakpoints

§custom_properties: HashMap<String, String>

Custom CSS properties

§config: CssGenerationConfig

Generation configuration

§spacing_parser: SpacingParser

Spacing parser

§advanced_spacing_parser: AdvancedSpacingParser

Advanced spacing parser

§color_parser: ColorParser

Color parser

§advanced_color_parser: AdvancedColorParser

Advanced color parser

§typography_parser: TypographyParser

Typography parser

§layout_parser: LayoutParser

Layout parser

§positioning_parser: PositioningParser

Positioning parser

§flexbox_parser: FlexboxParser

Flexbox parser

§effects_parser: EffectsParser

Effects parser

§sizing_parser: SizingParser

Sizing parser

§advanced_border_parser: AdvancedBorderParser

Advanced border parser

§ring_parser: RingParser

Ring parser

§transition_parser: TransitionParser

Transition parser

§shadow_parser: ShadowParser

Shadow parser

§svg_parser: SvgParser

SVG parser

§margin_parser: MarginParser

Margin parser

§group_parser: GroupParser

Group parser

§advanced_grid_parser: AdvancedGridParser

Advanced grid parser

§animation_parser: AnimationParser

Animation parser

§interactive_parser: InteractiveParser

Interactive parser

§prose_parser: ProseParser

Prose parser

§divide_parser: DivideParser

Divide parser

§gradient_parser: GradientParser

Gradient parser

§object_fit_parser: ObjectFitParser

Object fit parser

§transform_parser: TransformParser

Transform parser

§arbitrary_parser: ArbitraryParser

Arbitrary values parser

§data_attribute_parser: DataAttributeParser

Data attributes parser

§background_properties_parser: BackgroundPropertiesParser

Background properties parser

§transition_properties_parser: TransitionPropertiesParser

Transition properties parser

§fractional_transforms_parser: FractionalTransformsParser

Fractional transforms parser

§aspect_ratio_parser: AspectRatioParser

Aspect ratio parser

§columns_parser: ColumnsParser

Columns parser

§break_control_parser: BreakControlParser

Break control parser

§box_utilities_parser: BoxUtilitiesParser

Box utilities parser

§layout_utilities_parser: LayoutUtilitiesParser

Layout utilities parser

§overflow_parser: OverflowParser

Overflow parser

§overscroll_parser: OverscrollParser

Overscroll parser

§position_parser: PositionParser

Position parser

§inset_parser: InsetParser

Inset parser

§visibility_parser: VisibilityParser

Visibility parser

§z_index_parser: ZIndexParser

Z-index parser

§flex_basis_parser: FlexBasisParser

Flex basis parser

§flex_direction_parser: FlexDirectionParser

Flex direction parser

§flex_wrap_parser: FlexWrapParser

Flex wrap parser

§flex_parser: FlexParser

Flex parser

§flex_grow_parser: FlexGrowParser

Flex grow parser

§flex_shrink_parser: FlexShrinkParser

Flex shrink parser

§order_parser: OrderParser

Order parser

§grid_template_columns_parser: GridTemplateColumnsParser

Grid template columns parser

§grid_column_parser: GridColumnParser

Grid column parser

§grid_template_rows_parser: GridTemplateRowsParser

Grid template rows parser

§grid_row_parser: GridRowParser

Grid row parser

§grid_auto_flow_parser: GridAutoFlowParser

Grid auto flow parser

§grid_auto_columns_parser: GridAutoColumnsParser

Grid auto columns parser

§grid_auto_rows_parser: GridAutoRowsParser

Grid auto rows parser

§gap_parser: GapParser

Gap parser

§justify_content_parser: JustifyContentParser

Justify content parser

§justify_items_parser: JustifyItemsParser

Justify items parser

§justify_self_parser: JustifySelfParser

Justify self parser

§align_content_parser: AlignContentParser

Align content parser

§align_items_parser: AlignItemsParser

Align items parser

§align_self_parser: AlignSelfParser

Align self parser

§place_content_parser: PlaceContentParser

Place content parser

§place_items_parser: PlaceItemsParser

Place items parser

§place_self_parser: PlaceSelfParser

Place self parser

§background_parser: BackgroundParser

Background parser

§border_utilities_parser: BorderUtilitiesParser

Border utilities parser

§effects_utilities_parser: EffectsUtilitiesParser

Effects utilities parser

§filter_utilities_parser: FilterUtilitiesParser

Filter utilities parser

§backdrop_filter_utilities_parser: BackdropFilterUtilitiesParser

Backdrop filter utilities parser

§accessibility_parser: AccessibilityParser

Accessibility parser

§table_parser: TableParser

Table parser

§mask_utilities_parser: MaskUtilitiesParser

Mask utilities parser

§accent_color_parser: AccentColorParser

Accent color parser

§variant_parser: VariantParser

Variant parser

Implementations§

Source§

impl CssGenerator

Source

pub fn new() -> CssGenerator

Create a new CSS generator

Source

pub fn with_config(config: CssGenerationConfig) -> CssGenerator

Create a new CSS generator with custom configuration

Source

pub fn add_class(&mut self, class: &str) -> Result<(), TailwindError>

Add a class to the generator

Source

pub fn add_css_selector( &mut self, selector: &str, properties: &str, ) -> Result<(), TailwindError>

Add a CSS selector directly (for non-Tailwind CSS selectors)

Source

pub fn add_responsive_class( &mut self, breakpoint: Breakpoint, class: &str, ) -> Result<(), TailwindError>

Add a responsive class

Source

pub fn add_custom_property(&mut self, name: &str, value: &str)

Add a custom CSS property

Source

pub fn config(&self) -> &CssGenerationConfig

Get the current configuration

Source

pub fn set_config(&mut self, config: CssGenerationConfig)

Update the configuration

Source

pub fn rules(&self) -> &HashMap<String, CssRule>

Get all generated rules

Source

pub fn rule_count(&self) -> usize

Get the number of generated rules

Source

pub fn generate_comprehensive_css( &mut self, _config: &CssGenerationConfig, ) -> Result<String, TailwindError>

Generate comprehensive CSS with all utilities

Source

pub fn get_rules(&self) -> &HashMap<String, CssRule>

Get all rules (for compatibility)

Source

pub fn remove_rule(&mut self, selector: &str)

Remove a rule by selector

Source

pub fn update_rule(&mut self, selector: &str, rule: CssRule)

Update a rule

Source

pub fn generate_css(&self) -> String

Generate CSS from all added classes

Source

pub fn generate_minified_css(&self) -> String

Generate minified CSS from all added classes

Source

pub fn class_to_css_rule(&self, class: &str) -> Result<CssRule, TailwindError>

Convert a class name to a CSS rule

Source

pub fn class_to_properties( &self, class: &str, ) -> Result<Vec<CssProperty>, TailwindError>

Convert a class name to CSS properties

Trait Implementations§

Source§

impl Clone for CssGenerator

Source§

fn clone(&self) -> CssGenerator

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl CoreParsers for CssGenerator

Source§

fn parse_spacing_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse spacing classes (padding, margin, etc.)
Source§

fn parse_animation_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse animation classes
Source§

fn parse_color_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse color classes
Source§

fn parse_typography_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse typography classes
Source§

fn parse_layout_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse layout classes
Source§

fn parse_border_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse border classes
Source§

fn parse_effects_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse effects classes
Source§

fn parse_transform_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse transform classes
Source§

fn parse_interactive_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse interactive classes
Source§

impl CssGeneratorBuilder for CssGenerator

Source§

fn new() -> CssGenerator

Create a new CSS generator
Source§

fn with_config(config: CssGenerationConfig) -> CssGenerator

Create a new CSS generator with custom configuration
Source§

fn initialize_default_breakpoints(&mut self)

Initialize default breakpoints
Source§

fn initialize_custom_breakpoints(&mut self)

Initialize custom breakpoints from config
Source§

impl CssGeneratorOperations for CssGenerator

Source§

fn add_class(&mut self, class: &str) -> Result<(), TailwindError>

Add a class to the generator
Source§

fn add_css_selector( &mut self, selector: &str, properties: &str, ) -> Result<(), TailwindError>

Add a CSS selector directly (for non-Tailwind CSS selectors)
Source§

fn add_responsive_class( &mut self, breakpoint: Breakpoint, class: &str, ) -> Result<(), TailwindError>

Add a responsive class
Source§

fn add_custom_property(&mut self, name: &str, value: &str)

Add a custom CSS property
Source§

fn remove_rule(&mut self, selector: &str)

Remove a rule by selector
Source§

fn update_rule(&mut self, selector: &str, rule: CssRule)

Update a rule
Source§

impl CssGeneratorParsers for CssGenerator

Source§

fn class_to_properties( &self, class: &str, ) -> Result<Vec<CssProperty>, TailwindError>

Convert a class name to CSS properties
Source§

fn parse_variants(&self, class: &str) -> (Vec<String>, String)

Parse variants from a class name and return (variants, base_class)
Source§

fn class_to_css_rule(&self, class: &str) -> Result<CssRule, TailwindError>

Convert a class name to a CSS rule
Source§

impl Debug for CssGenerator

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for CssGenerator

Source§

fn default() -> CssGenerator

Returns the “default value” for a type. Read more
Source§

impl FlexboxParsers for CssGenerator

Source§

fn parse_flex_basis_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse flex basis classes
Source§

fn parse_flex_direction_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse flex direction classes
Source§

fn parse_flex_wrap_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse flex wrap classes
Source§

fn parse_flex_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse flex classes
Source§

fn parse_flex_grow_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse flex grow classes
Source§

fn parse_flex_shrink_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse flex shrink classes
Source§

fn parse_order_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse order classes
Source§

impl GridParsers for CssGenerator

Source§

fn parse_grid_template_columns_class( &self, class: &str, ) -> Option<Vec<CssProperty>>

Parse grid template columns classes
Source§

fn parse_grid_column_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse grid column classes
Source§

fn parse_grid_template_rows_class( &self, class: &str, ) -> Option<Vec<CssProperty>>

Parse grid template rows classes
Source§

fn parse_grid_row_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse grid row classes
Source§

fn parse_grid_auto_flow_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse grid auto flow classes
Source§

fn parse_grid_auto_columns_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse grid auto columns classes
Source§

fn parse_grid_auto_rows_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse grid auto rows classes
Source§

fn parse_gap_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse gap classes
Source§

fn parse_justify_content_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse justify content classes
Source§

fn parse_justify_items_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse justify items classes
Source§

fn parse_justify_self_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse justify self classes
Source§

fn parse_align_content_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse align content classes
Source§

fn parse_align_items_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse align items classes
Source§

fn parse_align_self_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse align self classes
Source§

fn parse_place_content_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse place content classes
Source§

fn parse_place_items_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse place items classes
Source§

fn parse_place_self_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse place self classes
Source§

impl LayoutParsers for CssGenerator

Source§

fn parse_overflow_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse overflow classes
Source§

fn parse_overscroll_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse overscroll classes
Source§

fn parse_position_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse position classes
Source§

fn parse_inset_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse inset classes
Source§

fn parse_visibility_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse visibility classes
Source§

fn parse_z_index_class(&self, class: &str) -> Option<Vec<CssProperty>>

Parse z-index classes

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.