update
This commit is contained in:
@@ -308,7 +308,7 @@ export default function App() {
|
|||||||
router={router}
|
router={router}
|
||||||
fallbackElement={
|
fallbackElement={
|
||||||
<div className="flex h-full w-full items-center justify-center">
|
<div className="flex h-full w-full items-center justify-center">
|
||||||
<LoaderIcon className="h-6 w-6 animate-spin text-white" />
|
<LoaderIcon className="h-6 w-6 animate-spin" />
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
future={{ v7_startTransition: true }}
|
future={{ v7_startTransition: true }}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { NDKEvent } from '@nostr-dev-kit/ndk';
|
import { NDKEvent, NDKSubscriptionCacheUsage, NostrEvent } from '@nostr-dev-kit/ndk';
|
||||||
import { useQuery } from '@tanstack/react-query';
|
import { useQuery } from '@tanstack/react-query';
|
||||||
import { nip19 } from 'nostr-tools';
|
import { nip19 } from 'nostr-tools';
|
||||||
import { AddressPointer } from 'nostr-tools/lib/types/nip19';
|
import { AddressPointer } from 'nostr-tools/lib/types/nip19';
|
||||||
@@ -30,20 +30,26 @@ export function useEvent(id: undefined | string, embed?: undefined | string) {
|
|||||||
|
|
||||||
// return embed event (nostr.band api)
|
// return embed event (nostr.band api)
|
||||||
if (embed) {
|
if (embed) {
|
||||||
const event: NDKEvent = JSON.parse(embed);
|
const embedEvent: NostrEvent = JSON.parse(embed);
|
||||||
return event;
|
const ndkEvent = new NDKEvent(ndk, embedEvent);
|
||||||
|
|
||||||
|
return ndkEvent;
|
||||||
}
|
}
|
||||||
|
|
||||||
// get event from relay
|
// get event from relay
|
||||||
const event = await ndk.fetchEvent(id);
|
const event = await ndk.fetchEvent(id, {
|
||||||
|
cacheUsage: NDKSubscriptionCacheUsage.CACHE_FIRST,
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!event)
|
||||||
|
throw new Error(`Cannot get event with ${id}, will be retry after 10 seconds`);
|
||||||
|
|
||||||
if (!event) throw new Error('event not found');
|
|
||||||
return event;
|
return event;
|
||||||
},
|
},
|
||||||
staleTime: Infinity,
|
|
||||||
refetchOnWindowFocus: false,
|
refetchOnWindowFocus: false,
|
||||||
refetchOnMount: false,
|
refetchOnMount: false,
|
||||||
refetchOnReconnect: false,
|
refetchOnReconnect: false,
|
||||||
|
retry: 2,
|
||||||
});
|
});
|
||||||
|
|
||||||
return { status, isFetching, isError, data };
|
return { status, isFetching, isError, data };
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { NDKUserProfile } from '@nostr-dev-kit/ndk';
|
import { NDKSubscriptionCacheUsage, NDKUserProfile } from '@nostr-dev-kit/ndk';
|
||||||
import { useQuery } from '@tanstack/react-query';
|
import { useQuery } from '@tanstack/react-query';
|
||||||
import { nip19 } from 'nostr-tools';
|
import { nip19 } from 'nostr-tools';
|
||||||
|
|
||||||
@@ -30,15 +30,21 @@ export function useProfile(pubkey: string, embed?: string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const user = ndk.getUser({ pubkey: hexstring });
|
const user = ndk.getUser({ pubkey: hexstring });
|
||||||
const profile = await user.fetchProfile();
|
const profile = await user.fetchProfile({
|
||||||
|
cacheUsage: NDKSubscriptionCacheUsage.CACHE_FIRST,
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!profile)
|
||||||
|
throw new Error(
|
||||||
|
`Cannot get metadata for ${pubkey}, will be retry after 10 seconds`
|
||||||
|
);
|
||||||
|
|
||||||
return profile;
|
return profile;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
throw new Error(e);
|
||||||
throw new Error(
|
|
||||||
`Cannot get metadata for ${pubkey}, will be retry after 10 seconds`
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
refetchOnMount: false,
|
||||||
refetchOnWindowFocus: false,
|
refetchOnWindowFocus: false,
|
||||||
refetchOnReconnect: false,
|
refetchOnReconnect: false,
|
||||||
retry: 2,
|
retry: 2,
|
||||||
|
|||||||
Reference in New Issue
Block a user