2022-11-20 23:13:24 +01:00
|
|
|
const externalLinks = require("eleventy-plugin-external-links");
|
|
|
|
const markdownIt = require("markdown-it");
|
|
|
|
|
2020-05-06 18:21:28 +02:00
|
|
|
module.exports = (eleventyConfig) => {
|
2022-11-20 23:13:24 +01:00
|
|
|
// Format date
|
|
|
|
eleventyConfig.addFilter("isoDate", dateObj => dateObj.toISOString().substring(0, 10));
|
|
|
|
|
|
|
|
// Extract excerpts
|
|
|
|
eleventyConfig.setFrontMatterParsingOptions({
|
|
|
|
excerpt: true,
|
|
|
|
excerpt_separator: "<!-- excerpt -->",
|
2020-05-06 18:21:28 +02:00
|
|
|
});
|
|
|
|
|
2022-11-20 23:13:24 +01:00
|
|
|
// 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));
|
|
|
|
|
2020-05-06 18:21:28 +02:00
|
|
|
return {
|
2021-07-18 11:19:11 +02:00
|
|
|
pathPrefix: "/blog/",
|
2020-05-06 18:21:28 +02:00
|
|
|
dir: {
|
|
|
|
input: "src/main/",
|
2021-07-18 14:56:52 +02:00
|
|
|
output: "dist/",
|
2020-05-06 18:21:28 +02:00
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|