import { DateTime } from "luxon"; export default function (eleventyConfig) { /* Return the keys used in an object */ eleventyConfig.addFilter("getKeys", (target) => { return Object.keys(target); }); /* Return n elements from a list */ eleventyConfig.addFilter("head", (collection = [], n) => { if (!Array.isArray(collection) || collection.length === 0) { return []; } if (n < 0) { return collection.slice(n); } return collection.slice(0, n); }); eleventyConfig.addFilter("inThePast", (dateString) => { if (DateTime.fromISO(dateString) < DateTime.now()) return true; return false; }); eleventyConfig.addFilter("dateStringsEqual", (dateString1, dateString2) => { const date1 = DateTime.fromISO(dateString1); const date2 = DateTime.fromISO(dateString2); if ((date1.hasSame(date2, "year") && date1.hasSame(date2, "month")) && date1.hasSame(date2, "day")) return true; return false; }); /* For