fix: remove self from mentions

This commit is contained in:
codytseng
2025-03-03 20:33:02 +08:00
parent 8f8f595940
commit 264e188e48

View File

@@ -22,20 +22,17 @@ export default function Mentions({
}) { }) {
const { t } = useTranslation() const { t } = useTranslation()
const { pubkey } = useNostr() const { pubkey } = useNostr()
const [pubkeys, setPubkeys] = useState<string[]>([])
const [relatedPubkeys, setRelatedPubkeys] = useState<string[]>([])
const [potentialMentions, setPotentialMentions] = useState<string[]>([]) const [potentialMentions, setPotentialMentions] = useState<string[]>([])
const [parentEventPubkey, setParentEventPubkey] = useState<string | undefined>() const [parentEventPubkey, setParentEventPubkey] = useState<string | undefined>()
const [removedPubkeys, setRemovedPubkeys] = useState<string[]>([]) const [removedPubkeys, setRemovedPubkeys] = useState<string[]>([])
useEffect(() => { useEffect(() => {
extractMentions(content, parentEvent).then(({ pubkeys, relatedPubkeys, parentEventPubkey }) => { extractMentions(content, parentEvent).then(({ pubkeys, relatedPubkeys, parentEventPubkey }) => {
setPubkeys(pubkeys.filter((p) => p !== pubkey)) const _parentEventPubkey = parentEventPubkey !== pubkey ? parentEventPubkey : undefined
setRelatedPubkeys(relatedPubkeys.filter((p) => p !== pubkey)) setParentEventPubkey(_parentEventPubkey)
setParentEventPubkey(parentEventPubkey !== pubkey ? parentEventPubkey : undefined) const potentialMentions = [...pubkeys, ...relatedPubkeys].filter((p) => p !== pubkey)
const potentialMentions = [...pubkeys, ...relatedPubkeys] if (_parentEventPubkey) {
if (parentEventPubkey) { potentialMentions.push(_parentEventPubkey)
potentialMentions.push(parentEventPubkey)
} }
setPotentialMentions(potentialMentions) setPotentialMentions(potentialMentions)
setRemovedPubkeys((pubkeys) => { setRemovedPubkeys((pubkeys) => {
@@ -55,7 +52,7 @@ export default function Mentions({
<Button <Button
className="px-3" className="px-3"
variant="ghost" variant="ghost"
disabled={pubkeys.length === 0 && relatedPubkeys.length === 0 && !parentEventPubkey} disabled={potentialMentions.length === 0}
onClick={(e) => e.stopPropagation()} onClick={(e) => e.stopPropagation()}
> >
{t('Mentions')}{' '} {t('Mentions')}{' '}