From af2879406e252b23fe1a598df87e2bd47739df79 Mon Sep 17 00:00:00 2001 From: Kieran Date: Mon, 12 May 2025 12:59:58 +0100 Subject: [PATCH] chore: add snort relay --- lib/main.dart | 3 ++- lib/rx_filter.dart | 30 ++++++++++++++++++------------ 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index c5a4f0a..283ea11 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -27,13 +27,14 @@ class NoVerify extends EventVerifier { final ndkCache = DbObjectBox(); final eventVerifier = kDebugMode ? NoVerify() : RustEventVerifier(); -var ndk = Ndk(NdkConfig(eventVerifier: eventVerifier, cache: ndkCache)); +var ndk = Ndk(NdkConfig(eventVerifier: eventVerifier, cache: ndkCache, bootstrapRelays: defaultRelays)); const userAgent = "zap.stream/1.0"; const defaultRelays = [ "wss://nos.lol", "wss://relay.damus.io", "wss://relay.primal.net", + "wss://relay.snort.social" ]; const searchRelays = ["wss://relay.nostr.band", "wss://search.nos.today"]; diff --git a/lib/rx_filter.dart b/lib/rx_filter.dart index ae6f956..f31beaf 100644 --- a/lib/rx_filter.dart +++ b/lib/rx_filter.dart @@ -54,20 +54,24 @@ class _RxFilter extends State> { developer.log("RX:ERROR $e"); }) .listen((events) { - setState(() { - _events ??= HashMap(); - developer.log("RX:GOT ${events.length} events for ${widget.filters}"); - events.forEach(_replaceInto); - }); - }); + setState(() { + _events ??= HashMap(); + developer.log( + "RX:GOT ${events.length} events for ${widget.filters}", + ); + events.forEach(_replaceInto); + }); + }); } void _replaceInto(Nip01Event ev) { final evKey = _eventKey(ev); final existing = _events?[evKey]; if (existing == null || existing.$1 < ev.createdAt) { - _events?[evKey] = - (ev.createdAt, widget.mapper != null ? widget.mapper!(ev) : ev as T); + _events?[evKey] = ( + ev.createdAt, + widget.mapper != null ? widget.mapper!(ev) : ev as T, + ); } } @@ -91,8 +95,7 @@ class _RxFilter extends State> { @override Widget build(BuildContext context) { - return widget.builder(context, - _events?.values.map((v) => v.$2).toList()); + return widget.builder(context, _events?.values.map((v) => v.$2).toList()); } } @@ -120,11 +123,14 @@ class RxFutureFilter extends StatelessWidget { builder: (ctx, data) { if (data.hasData) { return RxFilter( - filters: data.data!, mapper: mapper, builder: builder); + filters: data.data!, + mapper: mapper, + builder: builder, + ); } else { return loadingWidget ?? SizedBox.shrink(); } }, ); } -} \ No newline at end of file +}