toCss method

  1. @override
String toCss()
override

Converts the stylesheet to a CSS string.

Implementation

@override
String toCss() {
  if (_cssCache != null) return _cssCache!;
  final buffer = StringBuffer();
  final sortedKeys = rules.keys.toList()..sort();

  if (_minify) {
    for (final selector in sortedKeys) {
      final style = rules[selector]!;
      // Remove spaces around braces and colons
      buffer.write('$selector{${style.toCss()}}');
    }
  } else {
    for (final selector in sortedKeys) {
      final style = rules[selector]!;
      buffer.writeln('$selector {');
      buffer.write(style.toCss());
      buffer.writeln('}');
    }
  }
  _cssCache = buffer.toString();
  return _cssCache!;
}