diff --git a/utils.js b/utils.js index 5f963e2..f5f753b 100644 --- a/utils.js +++ b/utils.js @@ -49,6 +49,20 @@ export async function getRSSItemTitle(feedUrl) { return { text: cleanTitle, url: link } } +export async function getAtomFeedItem(feedUrl) { + const res = await fetch(feedUrl) + const data = await res.text() + const dom = new JSDOM(data) + const entry = dom.window.document.querySelector('entry') + const title = entry.querySelector('title').textContent + const link = entry.querySelector('link').getAttribute('href') + const cleanTitle = sanitizeHtml(title, { + allowedTags: [], + allowedAttributes: {}, + })?.trim() + return { text: cleanTitle, url: link } +} + export async function getJsonFeedItemTitle(feedUrl, showImage = true) { const res = await fetch(feedUrl) const data = await res.json()