Skip to content

Commit

Permalink
Relay UI: add filters for all the bits (spamsafe, search, discover, ...)
Browse files Browse the repository at this point in the history
  • Loading branch information
mikedilger committed Feb 21, 2025
1 parent 69f3ec4 commit a551be0
Showing 1 changed file with 36 additions and 12 deletions.
48 changes: 36 additions & 12 deletions gossip-bin/src/ui/relays/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,13 @@ pub(super) enum RelayFilter {
Configured,
Write,
Read,
Advertise,
Private,
Hidden,
Discover,
SpamSafe,
DM,
Search,
Global,
Hidden,
AlwaysAllowConnect,
NeverAllowConnect,
AlwaysAllowAuthenticate,
Expand All @@ -126,10 +129,13 @@ impl RelayFilter {
RelayFilter::Configured => "Configured",
RelayFilter::Write => "Write",
RelayFilter::Read => "Read",
RelayFilter::Advertise => "Advertise",
RelayFilter::Private => "Private",
RelayFilter::Hidden => "Hidden",
RelayFilter::Discover => "Discover",
RelayFilter::SpamSafe => "SpamSafe",
RelayFilter::DM => "DM",
RelayFilter::Search => "Search",
RelayFilter::Global => "Global Feed",
RelayFilter::Hidden => "Hidden",
RelayFilter::AlwaysAllowConnect => "Always allow connect",
RelayFilter::NeverAllowConnect => "Never allow connect",
RelayFilter::AlwaysAllowAuthenticate => "Always allow auth",
Expand Down Expand Up @@ -563,24 +569,39 @@ pub(super) fn relay_filter_combo(app: &mut GossipUi, ui: &mut Ui) {
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::Advertise,
RelayFilter::Advertise.get_name(),
RelayFilter::Private,
RelayFilter::Private.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::Private,
RelayFilter::Private.get_name(),
RelayFilter::Discover,
RelayFilter::Discover.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::Hidden,
RelayFilter::Hidden.get_name(),
RelayFilter::SpamSafe,
RelayFilter::SpamSafe.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::DM,
RelayFilter::DM.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::Search,
RelayFilter::Search.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::Global,
RelayFilter::Global.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::Hidden,
RelayFilter::Hidden.get_name(),
);
ui.selectable_value(
&mut app.relays.filter,
RelayFilter::AlwaysAllowConnect,
Expand Down Expand Up @@ -660,14 +681,17 @@ pub(super) fn filter_relay(rui: &RelayUi, ri: &Relay) -> bool {
RelayFilter::Configured => ri.has_any_usage_bit(),
RelayFilter::Write => ri.has_usage_bits(Relay::WRITE),
RelayFilter::Read => ri.has_usage_bits(Relay::READ),
RelayFilter::Advertise => ri.is_good_for_advertise(),
RelayFilter::Private => {
ri.has_any_usage_bit()
&& !ri.has_usage_bits(Relay::INBOX)
&& !ri.has_usage_bits(Relay::OUTBOX)
}
RelayFilter::Hidden => ri.hidden,
RelayFilter::Discover => ri.has_usage_bits(Relay::DISCOVER),
RelayFilter::SpamSafe => ri.has_usage_bits(Relay::SPAMSAFE),
RelayFilter::DM => ri.has_usage_bits(Relay::DM),
RelayFilter::Search => ri.has_usage_bits(Relay::SEARCH),
RelayFilter::Global => ri.has_usage_bits(Relay::GLOBAL),
RelayFilter::Hidden => ri.hidden,
RelayFilter::AlwaysAllowConnect => ri.allow_connect == Some(true),
RelayFilter::NeverAllowConnect => ri.allow_connect == Some(false),
RelayFilter::AlwaysAllowAuthenticate => ri.allow_auth == Some(true),
Expand Down

0 comments on commit a551be0

Please sign in to comment.