mirror of
https://github.com/hzrd149/nostrudel.git
synced 2025-04-01 00:19:45 +02:00
improve getShareableEventAddress and get rid of legacy.
This commit is contained in:
parent
e740b6f059
commit
a0fd8c9752
@ -34,7 +34,7 @@ import UserAvatarLink from "./user-avatar-link";
|
||||
import { UserLink } from "./user-link";
|
||||
import { UserDnsIdentityIcon } from "./user-dns-identity-icon";
|
||||
import styled from "@emotion/styled";
|
||||
import { getSharableNoteId } from "../helpers/nip19";
|
||||
import { getSharableEventAddress } from "../helpers/nip19";
|
||||
|
||||
type RefType = MutableRefObject<HTMLElement | null>;
|
||||
|
||||
@ -101,7 +101,7 @@ function getRefPath(ref: RefType) {
|
||||
}
|
||||
|
||||
function EventSlideHeader({ event, ...props }: { event: NostrEvent } & Omit<FlexProps, "children">) {
|
||||
const encoded = useMemo(() => getSharableNoteId(event.id), [event.id]);
|
||||
const encoded = useMemo(() => getSharableEventAddress(event), [event]);
|
||||
|
||||
return (
|
||||
<Flex gap="2" alignItems="center" p="2" {...props}>
|
||||
|
@ -67,30 +67,19 @@ export function normalizeToHex(hex: string) {
|
||||
return null;
|
||||
}
|
||||
|
||||
/** @deprecated */
|
||||
export function getSharableNoteId(eventId: string) {
|
||||
const relays = getEventRelays(eventId).value;
|
||||
const ranked = relayScoreboardService.getRankedRelays(relays);
|
||||
const onlyTwo = ranked.slice(0, 2);
|
||||
|
||||
if (onlyTwo.length > 0) {
|
||||
return nip19.neventEncode({ id: eventId, relays: onlyTwo });
|
||||
} else return nip19.noteEncode(eventId);
|
||||
}
|
||||
|
||||
export function getSharableEventAddress(event: NostrEvent) {
|
||||
const relays = getEventRelays(getEventUID(event)).value;
|
||||
const ranked = relayScoreboardService.getRankedRelays(relays);
|
||||
const onlyTwo = ranked.slice(0, 2);
|
||||
const maxTwo = ranked.slice(0, 2);
|
||||
|
||||
if (isReplaceable(event.kind)) {
|
||||
const d = event.tags.find(isDTag)?.[1];
|
||||
if (!d) return null;
|
||||
return nip19.naddrEncode({ kind: event.kind, identifier: d, pubkey: event.pubkey, relays: onlyTwo });
|
||||
return nip19.naddrEncode({ kind: event.kind, identifier: d, pubkey: event.pubkey, relays: maxTwo });
|
||||
} else {
|
||||
if (onlyTwo.length > 0) {
|
||||
return nip19.neventEncode({ id: event.id, relays: onlyTwo });
|
||||
} else return nip19.noteEncode(event.id);
|
||||
if (maxTwo.length == 2) {
|
||||
return nip19.neventEncode({ id: event.id, relays: maxTwo });
|
||||
} else return nip19.neventEncode({ id: event.id, relays: maxTwo, author: event.pubkey });
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user