diff options
Long List of items.
On branch main
Your branch is up to date with 'origin/main'.
You are currently rebasing.
Changes to be committed:
deleted: .browserslistrc
deleted: .eleventy.js
deleted: .eslintrc.js
modified: .gitignore
deleted: .stylelintrc.json
deleted: .vscode/tasks.json
deleted: _headers
modified: assets/index.js
modified: assets/sw.js
renamed: gen-icons.sh -> deploy
new file: eleventy.config.js
new file: license
modified: package-lock.json
modified: package.json
renamed: src/data/env.js -> src/_data/env.js
renamed: src/data/metadata.js -> src/_data/metadata.js
new file: src/_includes/base.njk
new file: src/_includes/page.njk
new file: src/_includes/post.njk
deleted: src/about.md
new file: src/about.njk
deleted: src/blog.11ty.js
new file: src/blog.njk
deleted: src/gen/atom.11ty.js
new file: src/gen/atom.njk
deleted: src/gen/error.11ty.js
new file: src/gen/error.njk
new file: src/gen/feedjson.11ty.js
modified: src/gen/gen.11tydata.js
deleted: src/gen/json.11ty.js
modified: src/gen/metadata.11ty.js
deleted: src/gen/robot.11ty.js
new file: src/gen/robot.njk
deleted: src/gen/sitemap.11ty.js
new file: src/gen/sitemap.njk
renamed: src/index.md -> src/index.njk
deleted: src/layouts/base.11ty.js
deleted: src/layouts/page.11ty.js
deleted: src/layouts/post.11ty.js
Diffstat (limited to 'src/gen/feedjson.11ty.js')
-rw-r--r-- | src/gen/feedjson.11ty.js | 35 |
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) + } +} |