fix: remove self from mentions
This commit is contained in:
@@ -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')}{' '}
|
||||||
|
|||||||
Reference in New Issue
Block a user