loadEvents method

  1. @override
List<Nip01Event> loadEvents({
  1. List<String>? pubKeys,
  2. List<int>? kinds,
  3. String? pTag,
})
override

Implementation

@override
List<Nip01Event> loadEvents({List<String>? pubKeys, List<int>? kinds, String? pTag}) {
  List<Nip01Event> events = isar.dbEvents.where()
      .optional(kinds!=null && kinds.isNotEmpty, (q) => q.anyOf(kinds!, (q, kind) => q.kindEqualTo(kind)))
      .and()
      .optional(pubKeys!=null && pubKeys.isNotEmpty, (q) => q.anyOf(pubKeys!, (q, pubKey) => q.pubKeyEqualTo(pubKey)))
      .and()
      .optional(Helpers.isNotBlank(pTag), (q) => q.pTagsElementEqualTo(pTag!))
      .findAll();
  return eventFilter!=null? events.where((event) => eventFilter!.filter(event)).toList() : events;
}