toCss method
Convert to CSS gradient string.
Implementation
String toCss() {
final sorted = List<NiceGradientStop>.from(stops)
..sort((a, b) => a.position.compareTo(b.position));
final stopsStr = sorted
.map((s) =>
'#${(s.color.toARGB32() & 0xFFFFFF).toRadixString(16).padLeft(6, '0')} ${(s.position * 100).round()}%')
.join(', ');
final prefix = repeating ? 'repeating-' : '';
switch (type) {
case NiceGradientType.linear:
return '${prefix}linear-gradient(${angle.round()}deg, $stopsStr)';
case NiceGradientType.radial:
return '${prefix}radial-gradient(circle, $stopsStr)';
case NiceGradientType.conic:
return '${prefix}conic-gradient($stopsStr)';
}
}