const { DateTime } = require("luxon"); const pluginNavigation = require("@11ty/eleventy-navigation"); module.exports = function(eleventyConfig) { eleventyConfig.addPlugin(pluginNavigation); eleventyConfig.addPassthroughCopy("css"); eleventyConfig.addPassthroughCopy("dl"); eleventyConfig.addPassthroughCopy("images"); eleventyConfig.addFilter("readableDate", dateObj => { return DateTime.fromJSDate(dateObj, {zone: 'utc'}).setLocale("fr").toFormat("dd LLL yyyy"); }); // https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#valid-date-string eleventyConfig.addFilter('htmlDateString', (dateObj) => { return DateTime.fromJSDate(dateObj, {zone: 'utc'}).toFormat('yyyy-LL-dd'); }); // Get the first `n` elements of a collection. eleventyConfig.addFilter("head", (array, n) => { if (!Array.isArray(array) || array.length === 0) { return []; } if (n < 0) { return array.slice(n); } return array.slice(0, n); }); eleventyConfig.addFilter("nlToBr", string => string.replaceAll('\n', '
')) return { // Pre-process *.md files with: (default: `liquid`) markdownTemplateEngine: "njk", // Pre-process *.html files with: (default: `liquid`) htmlTemplateEngine: "njk", } }