28 lines
No EOL
1.7 KiB
JavaScript
28 lines
No EOL
1.7 KiB
JavaScript
const eleventySass = require("eleventy-sass");
|
|
|
|
module.exports = function (eleventyConfig) {
|
|
|
|
// eleventyConfig.addPassthroughCopy('src/assets/fonts');
|
|
// eleventyConfig.addPassthroughCopy("./src/assets/js");
|
|
// eleventyConfig.addPassthroughCopy('src/assets/images/**/*.png');
|
|
// eleventyConfig.addPassthroughCopy('src/assets/images/**/*.svg');
|
|
// eleventyConfig.addPassthroughCopy('src/assets/images/**/*.jpg');
|
|
// eleventyConfig.addPassthroughCopy('src/assets/images/**/*.gif');
|
|
|
|
//plugins
|
|
eleventyConfig.addPlugin(eleventySass);
|
|
|
|
eleventyConfig.addFilter('isActive', (arr) => arr.filter(guest => guest.name != ''));
|
|
eleventyConfig.addFilter('day', (arr,givenDate, givenLoc) => arr.filter(guest => guest.dates.some(e => (e.date == givenDate && e.day == givenLoc))));
|
|
eleventyConfig.addFilter('night', (arr,givenDate, givenLoc) => arr.filter(guest => guest.dates.some(e => (e.date == givenDate && e.night == givenLoc))));
|
|
//eleventyConfig.addFilter('total', (arr) => arr.reduce((prev,current) => ({...prev, count: current.count + prev.count})));
|
|
eleventyConfig.addFilter('total', arr => arr.map(a => a.count).reduce((prev,current) => current + prev));
|
|
//https://stackoverflow.com/questions/5732043/how-to-call-reduce-on-an-array-of-objects-to-sum-their-properties
|
|
eleventyConfig.addFilter('byGuest', (arr, givenSlug) => arr.filter(guest => guest.slug == givenSlug));
|
|
eleventyConfig.addFilter('byDate', (arr,givenDate) => arr.filter(d => d.date == givenDate));
|
|
eleventyConfig.addFilter('byAbbr', (arr,givenAbbr) => arr.filter(l => l.abbr == givenAbbr));
|
|
|
|
return {
|
|
dir: { input: "src", output: "_site", data: "_data" },
|
|
};
|
|
}; |