|
|
|
@ -1,10 +1,11 @@ |
|
|
|
import { Button } from '@renderer/components/ui/button' |
|
|
|
import { Button } from '@renderer/components/ui/button' |
|
|
|
import { Popover, PopoverContent, PopoverTrigger } from '@renderer/components/ui/popover' |
|
|
|
import { Popover, PopoverContent, PopoverTrigger } from '@renderer/components/ui/popover' |
|
|
|
import { extractMentions } from '@renderer/lib/event' |
|
|
|
import { extractMentions } from '@renderer/lib/event' |
|
|
|
|
|
|
|
import { useNostr } from '@renderer/providers/NostrProvider' |
|
|
|
|
|
|
|
import { Event } from 'nostr-tools' |
|
|
|
import { useEffect, useState } from 'react' |
|
|
|
import { useEffect, useState } from 'react' |
|
|
|
import UserAvatar from '../UserAvatar' |
|
|
|
import UserAvatar from '../UserAvatar' |
|
|
|
import Username from '../Username' |
|
|
|
import Username from '../Username' |
|
|
|
import { Event } from 'nostr-tools' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export default function Mentions({ |
|
|
|
export default function Mentions({ |
|
|
|
content, |
|
|
|
content, |
|
|
|
@ -13,10 +14,13 @@ export default function Mentions({ |
|
|
|
content: string |
|
|
|
content: string |
|
|
|
parentEvent?: Event |
|
|
|
parentEvent?: Event |
|
|
|
}) { |
|
|
|
}) { |
|
|
|
|
|
|
|
const { pubkey } = useNostr() |
|
|
|
const [pubkeys, setPubkeys] = useState<string[]>([]) |
|
|
|
const [pubkeys, setPubkeys] = useState<string[]>([]) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
extractMentions(content, parentEvent).then(({ pubkeys }) => setPubkeys(pubkeys)) |
|
|
|
extractMentions(content, parentEvent).then(({ pubkeys }) => |
|
|
|
|
|
|
|
setPubkeys(pubkeys.filter((p) => p !== pubkey)) |
|
|
|
|
|
|
|
) |
|
|
|
}, [content]) |
|
|
|
}, [content]) |
|
|
|
|
|
|
|
|
|
|
|
return ( |
|
|
|
return ( |
|
|
|
|