You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

22 lines
651 B

export function tagNameEquals(tagName: string) {
return (tag: string[]) => tag[0] === tagName
}
export function isReplyETag([tagName, , , marker]: string[]) {
return tagName === 'e' && marker === 'reply'
}
export function isRootETag([tagName, , , marker]: string[]) {
return tagName === 'e' && marker === 'root'
}
export function isMentionETag([tagName, , , marker]: string[]) {
return tagName === 'e' && marker === 'mention'
}
export function extractImetaUrlFromTag(tag: string[]) {
if (tag[0] !== 'imeta') return null
const urlItem = tag.find((item) => item.startsWith('url '))
const url = urlItem?.slice(4)
return url || null
}