notedeck

One damus client to rule them all
git clone git://jb55.com/notedeck
Log | Files | Refs | README | LICENSE

commit 41fdf47b47682635940e4a5b0cc677b373598747
parent 42994d721fdc59fc7399ed9ee0c4d010e41788ef
Author: kernelkind <kernelkind@gmail.com>
Date:   Tue, 16 Dec 2025 16:01:54 -0500

feat(dm-relay-list): send default DMs relay list on acc creation

Signed-off-by: kernelkind <kernelkind@gmail.com>

Diffstat:
Mcrates/notedeck_columns/src/accounts/mod.rs | 3++-
Mcrates/notedeck_columns/src/profile.rs | 21+++++++++++++++++++++
2 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/crates/notedeck_columns/src/accounts/mod.rs b/crates/notedeck_columns/src/accounts/mod.rs @@ -8,7 +8,7 @@ pub use crate::accounts::route::AccountsResponse; use crate::app::get_active_columns_mut; use crate::decks::DecksCache; use crate::onboarding::Onboarding; -use crate::profile::send_new_contact_list; +use crate::profile::{send_default_dms_relay_list, send_new_contact_list}; use crate::subscriptions::Subscriptions; use crate::ui::onboarding::{FollowPackOnboardingView, FollowPacksResponse, OnboardingResponse}; use crate::{ @@ -184,6 +184,7 @@ pub fn process_login_view_response( let kp = FullKeypair::generate(); send_new_contact_list(kp.to_filled(), app_ctx.ndb, app_ctx.pool, pks_to_follow); + send_default_dms_relay_list(kp.to_filled(), app_ctx.ndb, app_ctx.pool); cur_router.go_back(); onboarding.end_onboarding(app_ctx.pool, app_ctx.ndb); diff --git a/crates/notedeck_columns/src/profile.rs b/crates/notedeck_columns/src/profile.rs @@ -288,3 +288,24 @@ fn construct_new_contact_list<'a>(pks: Vec<Pubkey>) -> NoteBuilder<'a> { builder } + +pub fn send_default_dms_relay_list(kp: FilledKeypair<'_>, ndb: &Ndb, pool: &mut RelayPool) { + send_note_builder(construct_default_dms_relay_list(), ndb, pool, kp); +} + +fn construct_default_dms_relay_list<'a>() -> NoteBuilder<'a> { + let mut builder = NoteBuilder::new() + .content("") + .kind(10050) + .options(NoteBuildOptions::default()); + + for relay in default_dms_relays() { + builder = builder.start_tag().tag_str("relay").tag_str(relay); + } + + builder +} + +fn default_dms_relays() -> Vec<&'static str> { + vec!["wss://relay.damus.io", "wss://nos.lol"] +}