From 092cf4922716cce1938f2bdc215386425b05a7e7 Mon Sep 17 00:00:00 2001 From: reya Date: Thu, 30 Nov 2023 18:19:24 +0700 Subject: [PATCH] improve relay connection --- .../migrations/20231130105202_clean_up_table.sql | 5 +++++ src-tauri/src/main.rs | 8 +++++++- src/libs/ndk/instance.ts | 9 +++++++-- src/libs/storage/instance.ts | 12 ------------ 4 files changed, 19 insertions(+), 15 deletions(-) create mode 100644 src-tauri/migrations/20231130105202_clean_up_table.sql diff --git a/src-tauri/migrations/20231130105202_clean_up_table.sql b/src-tauri/migrations/20231130105202_clean_up_table.sql new file mode 100644 index 00000000..6de5aed6 --- /dev/null +++ b/src-tauri/migrations/20231130105202_clean_up_table.sql @@ -0,0 +1,5 @@ +ALTER TABLE accounts DROP COLUMN follows; +ALTER TABLE accounts DROP COLUMN circles; +ALTER TABLE accounts DROP COLUMN last_login_at; +DROP TABLE IF EXISTS events; +DROP TABLE IF EXISTS relays; diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index 7a2b646f..0d2b36ea 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -115,7 +115,6 @@ fn main() { .plugin(tauri_plugin_updater::Builder::new().build())?; Ok(()) }) - .plugin(ThemePlugin::init(ctx.config_mut())) .plugin( tauri_plugin_sql::Builder::default() .add_migrations( @@ -133,10 +132,17 @@ fn main() { sql: include_str!("../migrations/20231028083224_add_ndk_cache_table.sql"), kind: MigrationKind::Up, }, + Migration { + version: 20231130105202, + description: "clean up table", + sql: include_str!("../migrations/20231130105202_clean_up_table.sql"), + kind: MigrationKind::Up, + }, ], ) .build(), ) + .plugin(ThemePlugin::init(ctx.config_mut())) .plugin(tauri_plugin_clipboard_manager::init()) .plugin(tauri_plugin_dialog::init()) .plugin(tauri_plugin_fs::init()) diff --git a/src/libs/ndk/instance.ts b/src/libs/ndk/instance.ts index ee9a0489..48c92c01 100644 --- a/src/libs/ndk/instance.ts +++ b/src/libs/ndk/instance.ts @@ -8,7 +8,7 @@ import { ndkAdapter } from '@nostr-fetch/adapter-ndk'; import { useQueryClient } from '@tanstack/react-query'; import { ask } from '@tauri-apps/plugin-dialog'; import { relaunch } from '@tauri-apps/plugin-process'; -import { NostrFetcher } from 'nostr-fetch'; +import { NostrFetcher, normalizeRelayUrlSet } from 'nostr-fetch'; import { useEffect, useState } from 'react'; import NDKCacheAdapterTauri from '@libs/ndk/cache'; @@ -51,7 +51,12 @@ export const NDKInstance = () => { const outbox = !!parseInt(outboxSetting); const signer = await getSigner(bunker); - const explicitRelayUrls = await db.getExplicitRelayUrls(); + const explicitRelayUrls = normalizeRelayUrlSet([ + 'wss://relay.damus.io', + 'wss://relay.nostr.band', + 'wss://nos.lol', + 'wss://nostr.mutinywallet.com', + ]); const tauriAdapter = new NDKCacheAdapterTauri(db); const instance = new NDK({ diff --git a/src/libs/storage/instance.ts b/src/libs/storage/instance.ts index ea62f700..5121a540 100644 --- a/src/libs/storage/instance.ts +++ b/src/libs/storage/instance.ts @@ -3,7 +3,6 @@ import { invoke } from '@tauri-apps/api/primitives'; import { Platform } from '@tauri-apps/plugin-os'; import Database from '@tauri-apps/plugin-sql'; -import { FULL_RELAYS } from '@utils/constants'; import { rawEvent } from '@utils/transform'; import type { Account, @@ -399,17 +398,6 @@ export class LumeStorage { return results.length < 1; } - public async getExplicitRelayUrls() { - if (!this.account) return FULL_RELAYS; - - const result: Relays[] = await this.db.select( - `SELECT * FROM relays WHERE account_id = "${this.account.id}" ORDER BY id DESC LIMIT 50;` - ); - - if (!result || !result.length) return FULL_RELAYS; - return result.map((el) => el.relay); - } - public async createRelay(relay: string, purpose?: string) { const existRelays: Relays[] = await this.db.select( 'SELECT * FROM relays WHERE relay = $1 AND account_id = $2 ORDER BY id DESC LIMIT 1;',