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
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 |
|
}
|
|
|