diff --git a/.env.local b/.env.local deleted file mode 100644 index 09856db4..00000000 --- a/.env.local +++ /dev/null @@ -1,2 +0,0 @@ -VITE_DUFFLEPUD_URL=http://localhost:8000 -VITE_SHOW_DEBUG_ROUTE=true diff --git a/.gitignore b/.gitignore index 9a33a9db..5b13a0e8 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ yarn-debug.log* yarn-error.log* pnpm-debug.log* lerna-debug.log* +.env.local node_modules dist diff --git a/src/agent/pool.ts b/src/agent/pool.ts index 44053c37..1ba50d51 100644 --- a/src/agent/pool.ts +++ b/src/agent/pool.ts @@ -1,12 +1,17 @@ import type {Relay, Filter} from "nostr-tools" import type {MyEvent} from "src/util/types" import {relayInit} from "nostr-tools" -import {pluck, is} from "ramda" +import {pluck, objOf, identity, is} from "ramda" import {ensurePlural} from "hurdak/lib/hurdak" import {warn, log, error} from "src/util/logger" import {union, now, difference} from "src/util/misc" import {isRelay, normalizeRelayUrl} from "src/util/nostr" +const forceRelays = (import.meta.env.VITE_FORCE_RELAYS || "") + .split(",") + .filter(identity) + .map(objOf("url")) + // Connection management const connections = {} @@ -138,6 +143,10 @@ const connect = url => { // Public api - publish/subscribe const publish = async ({relays, event, onProgress, timeout = 5000}) => { + if (forceRelays.length > 0) { + relays = forceRelays + } + if (relays.length === 0) { error(`Attempted to publish to zero relays`, event) } else { @@ -231,6 +240,10 @@ type SubscribeOpts = { const subscribe = async ({relays, filter, onEvent, onEose, onError}: SubscribeOpts) => { filter = ensurePlural(filter) + if (forceRelays.length > 0) { + relays = forceRelays + } + const id = createFilterId(filter) const now = Date.now() const seen = new Set() @@ -353,6 +366,7 @@ const describeFilter = ({kinds = [], ...filter}) => { } export default { + forceRelays, getConnections, getConnection, connect, diff --git a/src/routes/PersonDetail.svelte b/src/routes/PersonDetail.svelte index 04557428..5e4efee1 100644 --- a/src/routes/PersonDetail.svelte +++ b/src/routes/PersonDetail.svelte @@ -1,5 +1,5 @@