Mercurial > addons > firefox-addons > feed-preview
view content_scripts/feed-probe.js @ 70:e405ff21ab31 version-14
Release version 14
author | Guido Berhoerster <guido+feed-preview@berhoerster.name> |
---|---|
date | Sun, 03 Mar 2024 18:12:27 +0100 |
parents | ede87e1004f9 |
children |
line wrap: on
line source
/* * Copyright (C) 2018 Guido Berhoerster <guido+feed-preview@berhoerster.name> * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 'use strict'; function getFeeds() { let urlsFeeds = new Map(); let elements = document.querySelectorAll(':-moz-any(link, a)[href]' + '[rel~=alternate]:-moz-any([type="application/atom+xml"], ' + '[type="application/rss+xml"])'); for (let element of elements) { if (element.href === document.URL) { // do not indicate the availability of a feed if the current // document is already a feed preview continue; } if (!element.href.match(/^https?:\/\//)) { continue; } urlsFeeds.set(element.href, { href: element.href, title: element.title || browser.i18n.getMessage('defaultFeedTitle'), type: element.type }); } return Array.from(urlsFeeds.values()); } browser.runtime.onMessage.addListener((request, sender, sendResponse) => { // background page querying available feeds sendResponse(getFeeds()); });