blog/.eleventy.js

33 lines
906 B
JavaScript

const externalLinks = require("eleventy-plugin-external-links");
const markdownIt = require("markdown-it");
module.exports = (eleventyConfig) => {
// Format date
eleventyConfig.addFilter("isoDate", dateObj => dateObj.toISOString().substring(0, 10));
// Extract excerpts
eleventyConfig.setFrontMatterParsingOptions({
excerpt: true,
excerpt_separator: "<!-- excerpt -->",
});
// Make external links go `target="_blank"`
eleventyConfig.addPlugin(externalLinks, {
name: "external-links",
regex: /^(?!https:\/\/.*fwdekker.com|\/.*)/i,
rel: null,
includeDoctype: true,
});
// Convert string to HTML
eleventyConfig.addFilter("toHTML", str => new markdownIt({}).renderInline(str));
return {
pathPrefix: "/blog/",
dir: {
input: "src/main/",
output: "dist/",
}
};
};