summaryrefslogtreecommitdiffstats
path: root/src/gen/feedjson.11ty.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/gen/feedjson.11ty.js')
-rw-r--r--src/gen/feedjson.11ty.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/gen/feedjson.11ty.js b/src/gen/feedjson.11ty.js
new file mode 100644
index 0000000..7ddbf51
--- /dev/null
+++ b/src/gen/feedjson.11ty.js
@@ -0,0 +1,35 @@
+module.exports = class {
+ data() {
+ return {
+ permalink: "/feed.json"
+ };
+ }
+
+ async render(data) {
+ const out = {
+ version: "https://jsonfeed.org/version/1.1",
+ title: data.metadata.title,
+ language: data.metadata.language,
+ home_page_url: data.metadata.url,
+ feed_url: data.page.url,
+ description: data.metadata.description,
+ author: {
+ name: data.metadata.author.name,
+ url: data.metadata.author.url
+ },
+ items: (data.collections.posts || []).map(
+ async function (e) {
+ const absolutePostUrl = this.absoluteUrl(this.url(e.url), data.metadata.url)
+ return {
+ id: absolutePostUrl,
+ url: absolutePostUrl,
+ title: e.data.title,
+ date_published: this.dateToRfc3339(e.date),
+ content_html: htmlToAbsoluteUrls(e.templateContent, absolutePostUrl),
+ }
+ }
+ )
+ }
+ return JSON.stringify(out)
+ }
+}