mirror of
https://github.com/luminous-devs/lume.git
synced 2024-09-29 00:10:47 +00:00
improve relay connection
This commit is contained in:
parent
5318f6c4cb
commit
092cf49227
5
src-tauri/migrations/20231130105202_clean_up_table.sql
Normal file
5
src-tauri/migrations/20231130105202_clean_up_table.sql
Normal file
@ -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;
|
@ -115,7 +115,6 @@ fn main() {
|
|||||||
.plugin(tauri_plugin_updater::Builder::new().build())?;
|
.plugin(tauri_plugin_updater::Builder::new().build())?;
|
||||||
Ok(())
|
Ok(())
|
||||||
})
|
})
|
||||||
.plugin(ThemePlugin::init(ctx.config_mut()))
|
|
||||||
.plugin(
|
.plugin(
|
||||||
tauri_plugin_sql::Builder::default()
|
tauri_plugin_sql::Builder::default()
|
||||||
.add_migrations(
|
.add_migrations(
|
||||||
@ -133,10 +132,17 @@ fn main() {
|
|||||||
sql: include_str!("../migrations/20231028083224_add_ndk_cache_table.sql"),
|
sql: include_str!("../migrations/20231028083224_add_ndk_cache_table.sql"),
|
||||||
kind: MigrationKind::Up,
|
kind: MigrationKind::Up,
|
||||||
},
|
},
|
||||||
|
Migration {
|
||||||
|
version: 20231130105202,
|
||||||
|
description: "clean up table",
|
||||||
|
sql: include_str!("../migrations/20231130105202_clean_up_table.sql"),
|
||||||
|
kind: MigrationKind::Up,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
.build(),
|
.build(),
|
||||||
)
|
)
|
||||||
|
.plugin(ThemePlugin::init(ctx.config_mut()))
|
||||||
.plugin(tauri_plugin_clipboard_manager::init())
|
.plugin(tauri_plugin_clipboard_manager::init())
|
||||||
.plugin(tauri_plugin_dialog::init())
|
.plugin(tauri_plugin_dialog::init())
|
||||||
.plugin(tauri_plugin_fs::init())
|
.plugin(tauri_plugin_fs::init())
|
||||||
|
@ -8,7 +8,7 @@ import { ndkAdapter } from '@nostr-fetch/adapter-ndk';
|
|||||||
import { useQueryClient } from '@tanstack/react-query';
|
import { useQueryClient } from '@tanstack/react-query';
|
||||||
import { ask } from '@tauri-apps/plugin-dialog';
|
import { ask } from '@tauri-apps/plugin-dialog';
|
||||||
import { relaunch } from '@tauri-apps/plugin-process';
|
import { relaunch } from '@tauri-apps/plugin-process';
|
||||||
import { NostrFetcher } from 'nostr-fetch';
|
import { NostrFetcher, normalizeRelayUrlSet } from 'nostr-fetch';
|
||||||
import { useEffect, useState } from 'react';
|
import { useEffect, useState } from 'react';
|
||||||
|
|
||||||
import NDKCacheAdapterTauri from '@libs/ndk/cache';
|
import NDKCacheAdapterTauri from '@libs/ndk/cache';
|
||||||
@ -51,7 +51,12 @@ export const NDKInstance = () => {
|
|||||||
const outbox = !!parseInt(outboxSetting);
|
const outbox = !!parseInt(outboxSetting);
|
||||||
|
|
||||||
const signer = await getSigner(bunker);
|
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 tauriAdapter = new NDKCacheAdapterTauri(db);
|
||||||
const instance = new NDK({
|
const instance = new NDK({
|
||||||
|
@ -3,7 +3,6 @@ import { invoke } from '@tauri-apps/api/primitives';
|
|||||||
import { Platform } from '@tauri-apps/plugin-os';
|
import { Platform } from '@tauri-apps/plugin-os';
|
||||||
import Database from '@tauri-apps/plugin-sql';
|
import Database from '@tauri-apps/plugin-sql';
|
||||||
|
|
||||||
import { FULL_RELAYS } from '@utils/constants';
|
|
||||||
import { rawEvent } from '@utils/transform';
|
import { rawEvent } from '@utils/transform';
|
||||||
import type {
|
import type {
|
||||||
Account,
|
Account,
|
||||||
@ -399,17 +398,6 @@ export class LumeStorage {
|
|||||||
return results.length < 1;
|
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) {
|
public async createRelay(relay: string, purpose?: string) {
|
||||||
const existRelays: Relays[] = await this.db.select(
|
const existRelays: Relays[] = await this.db.select(
|
||||||
'SELECT * FROM relays WHERE relay = $1 AND account_id = $2 ORDER BY id DESC LIMIT 1;',
|
'SELECT * FROM relays WHERE relay = $1 AND account_id = $2 ORDER BY id DESC LIMIT 1;',
|
||||||
|
Loading…
Reference in New Issue
Block a user