Browse Source

fix: attempt to fix issue of no parent reply

imwald
codytseng 1 year ago
parent
commit
e9ebf1bc00
  1. 2
      src/lib/draft-event.ts
  2. 15
      src/lib/event.ts

2
src/lib/draft-event.ts

@ -60,7 +60,7 @@ export async function createShortTextNoteDraftEvent( @@ -60,7 +60,7 @@ export async function createShortTextNoteDraftEvent(
const tags = pubkeys
.map((pubkey) => ['p', pubkey])
.concat(otherRelatedEventIds.map((eventId) => ['e', eventId]))
.concat(quoteEventIds.map((eventId) => ['q', eventId]))
.concat(quoteEventIds.map((eventId) => ['q', eventId, '', 'mention']))
.concat(hashtags.map((hashtag) => ['t', hashtag]))
if (rootEventId) {

15
src/lib/event.ts

@ -17,17 +17,20 @@ export function isReplyNoteEvent(event: Event) { @@ -17,17 +17,20 @@ export function isReplyNoteEvent(event: Event) {
if (event.kind !== kinds.ShortTextNote) return false
let hasETag = false
let hasMarker = false
let hasMentionMarker = false
for (const [tagName, , , marker] of event.tags) {
if (tagName !== 'e') continue
hasETag = true
if (!marker) continue
hasMarker = true
if (marker === 'mention') {
hasMentionMarker = true
continue
}
if (['root', 'reply'].includes(marker)) return true
}
return hasETag && !hasMarker
return hasETag && !hasMentionMarker
}
export function isCommentEvent(event: Event) {
@ -39,11 +42,13 @@ export function isPictureEvent(event: Event) { @@ -39,11 +42,13 @@ export function isPictureEvent(event: Event) {
}
export function getParentEventId(event?: Event) {
return event?.tags.find(isReplyETag)?.[1]
if (!event || !isReplyNoteEvent(event)) return undefined
return event.tags.find(isReplyETag)?.[1] ?? event.tags.find(tagNameEquals('e'))?.[1]
}
export function getRootEventId(event?: Event) {
return event?.tags.find(isRootETag)?.[1]
if (!event || !isReplyNoteEvent(event)) return undefined
return event.tags.find(isRootETag)?.[1]
}
export function isReplaceable(kind: number) {

Loading…
Cancel
Save