appendClasses method
Implementation
void appendClasses(Object? classes1, [Object? classes2]) {
List<String> classesNames;
if (classes1 != null && classes2 != null) {
classesNames = <String>[
...parseClasses(classes1),
...parseClasses(classes2)
];
} else if (classes1 != null) {
classesNames = parseClasses(classes1);
} else if (classes2 != null) {
classesNames = parseClasses(classes2);
} else {
return;
}
var classesNamesRemove = classesNames
.where((e) => e.startsWith('!'))
.map((e) => e.substring(1))
.toList();
if (classesNamesRemove.isNotEmpty) {
classesNames.removeWhere((s) => s.startsWith('!'));
}
var content = this.content!;
content.classes.addAll(classesNames);
if (classesNamesRemove.isNotEmpty) {
content.classes.removeAll(classesNamesRemove);
}
}