-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.eleventy.js
35 lines (29 loc) · 977 Bytes
/
.eleventy.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
const fs = require("fs");
const filters = require("./eleventy/filters.js");
const passthroughs = require("./eleventy/passthroughs");
const plugins = require("./eleventy/plugins");
const transforms = require("./eleventy/transforms.js");
// Create the cache dir
if (!fs.existsSync("cache")) fs.mkdirSync("cache");
module.exports = (eleventyConfig) => {
// Filters
Object.keys(filters).forEach((filterName) => {
eleventyConfig.addFilter(filterName, filters[filterName]);
});
// Passthroughs
passthroughs.forEach((passthrough) =>
eleventyConfig.addPassthroughCopy(passthrough),
);
// Plugins
plugins(eleventyConfig);
// Transform
Object.keys(transforms).forEach((transformName) => {
eleventyConfig.addTransform(transformName, transforms[transformName]);
});
return {
dir: { input: "src", output: "dist", data: "_data" },
passthroughFileCopy: true,
templateFormats: ["njk", "md", "html"],
htmlTemplateEngine: "njk",
};
};