70 lines
2.8 KiB
JavaScript
70 lines
2.8 KiB
JavaScript
import Head from 'next/head'
|
|
|
|
const rss = (lang, type, title) => ({
|
|
title,
|
|
type: "application/rss+xml",
|
|
href: `/feeds/${type}-${lang}.rss.xml`
|
|
})
|
|
const atom = (lang, type, title) => ({
|
|
title,
|
|
type: "application/rss+atom",
|
|
href: `/feeds/${type}-${lang}.atom.xml`
|
|
})
|
|
const json = (lang, type, title) => ({
|
|
title,
|
|
type: "application/json",
|
|
href: `/feeds/${type}-${lang}.json`
|
|
})
|
|
|
|
|
|
const feeds = {
|
|
en: [
|
|
atom('en', 'blog', "Atom feed of FreeSewing.org blog posts"),
|
|
json('en', 'blog', "JSON feed of FreeSewing.org blog posts"),
|
|
rss( 'en', 'blog', "RSS feed of FreeSewing.org blog posts"),
|
|
atom('en', 'showcase', "Atom feed of FreeSewing.org showcase posts"),
|
|
json('en', 'showcase', "JSON feed of FreeSewing.org showcase posts"),
|
|
rss( 'en', 'showcase', "RSS feed of FreeSewing.org showcase posts"),
|
|
],
|
|
de: [
|
|
atom('de', 'blog', "Atom-Feed von FreeSewing.org-Blogbeiträgen"),
|
|
json('de', 'blog', "JSON-Feed von FreeSewing.org-Blogbeiträgen"),
|
|
rss( 'de', 'blog', "RSS-Feed von FreeSewing.org-Blogbeiträgen"),
|
|
atom('de', 'showcase', "Atom-Feed von FreeSewing.org-Galeriebeiträgen"),
|
|
json('de', 'showcase', "JSON-Feed von FreeSewing.org-Galeriebeiträgen"),
|
|
rss( 'de', 'showcase', "RSS-Feed von FreeSewing.org-Galeriebeiträgen"),
|
|
],
|
|
es: [
|
|
atom('es', 'blog', "Fuente Atom de las publicaciones del blog FreeSewing.org"),
|
|
json('es', 'blog', "Fuente JSON de las publicaciones del blog FreeSewing.org"),
|
|
rss( 'es', 'blog', "Fuente RSS de las publicaciones del blog FreeSewing.org"),
|
|
atom('es', 'showcase', "Fuente Atom de publicaciones de exhibición de FreeSewing.org"),
|
|
json('es', 'showcase', "Fuente JSON de publicaciones de exhibición de FreeSewing.org"),
|
|
rss( 'es', 'showcase', "Fuente RSS de publicaciones de exhibición de FreeSewing.org"),
|
|
],
|
|
fr: [
|
|
atom('fr', 'blog', "Flux Atom des articles du blog FreeSewing.org"),
|
|
json('fr', 'blog', "Flux JSON des articles du blog FreeSewing.org"),
|
|
rss( 'fr', 'blog', "Flux RSS des articles du blog FreeSewing.org"),
|
|
atom('fr', 'showcase', "Flux Atom des articles du galerie FreeSewing.org"),
|
|
json('fr', 'showcase', "Flux JSON des articles du galerie FreeSewing.org"),
|
|
rss( 'fr', 'showcase', "Flux RSS des articles du galerie FreeSewing.org"),
|
|
],
|
|
nl: [
|
|
atom('nl', 'blog', "Atom feed van FreeSewing.org blog posts"),
|
|
json('nl', 'blog', "JSON feed van FreeSewing.org blog posts"),
|
|
rss( 'nl', 'blog', "RSS feed van FreeSewing.org blog posts"),
|
|
atom('nl', 'showcase', "Atom feed van FreeSewing.org voorbeelden"),
|
|
json('nl', 'showcase', "JSON feed van FreeSewing.org voorbeelden"),
|
|
rss( 'nl', 'showcase', "RSS feed van FreeSewing.org voorbeelden"),
|
|
],
|
|
}
|
|
|
|
|
|
const Feeds = ({ lang='en' }) => (
|
|
<Head>
|
|
{feeds[lang].map(feed => <link key={feed.href} {...feed} />)}
|
|
</Head>
|
|
)
|
|
|
|
export default Feeds
|