search method

List<UDocMarkup> search(
  1. String query, {
  2. UDocMarkupKind? kind,
  3. Color? color,
})

Implementation

List<UDocMarkup> search(String query, {UDocMarkupKind? kind, Color? color}) {
  final String needle = UDocText.forSearch(query);
  return _markups.where((UDocMarkup markup) {
    if (kind != null && markup.kind != kind) return false;
    if (color != null && markup.color.toARGB32() != color.toARGB32()) return false;
    if (needle.isEmpty) return true;
    return UDocText.forSearch("${markup.text} ${markup.note}").contains(needle);
  }).toList()..sort(_readingOrder);
}