remove the need for utils.js by parsing site.toml

This commit is contained in:
yuki 2025-10-18 09:10:18 -03:00
parent 5f326cbe6d
commit c4403bfe35
Signed by: yuki
GPG key ID: 0C98E6FF04EC3915
2 changed files with 16 additions and 17 deletions

View file

@ -1,7 +0,0 @@
const TIME_ZONE = "America/Santiago";
const defaultLanguage = "en";
module.exports = {
TIME_ZONE,
defaultLanguage
};

View file

@ -1,9 +1,21 @@
const { TIME_ZONE, defaultLanguage } = require("./_config/utils");
const fs = require("fs");
const path = require("path");
const toml = require("@iarna/toml");
const addDateParsing = require("./_config/date");
const addFilters = require("./_config/filters");
const addPlugins = require("./_config/plugins");
module.exports = function (eleventyConfig) {
let siteData;
const siteToml = fs.readFileSync(
path.join(__dirname, "_data", "site.toml"),
"utf-8"
);
siteData = toml.parse(siteToml);
eleventyConfig.addGlobalData("site", siteData);
eleventyConfig.setLayoutsDirectory("_layouts");
eleventyConfig.addPassthroughCopy("img");
@ -13,15 +25,9 @@ module.exports = function (eleventyConfig) {
eleventyConfig.addPassthroughCopy("robots.txt");
eleventyConfig.addPassthroughCopy("roms");
// add global site data for templates
// TODO: move _config/utils.js and global site data to _data/meta.toml
eleventyConfig.addGlobalData("site", {
defaultLocale: defaultLanguage
});
addDateParsing(eleventyConfig, { TIME_ZONE });
addFilters(eleventyConfig, { TIME_ZONE, defaultLanguage });
addPlugins(eleventyConfig, { defaultLanguage });
addDateParsing(eleventyConfig, { TIME_ZONE: siteData.timezone });
addFilters(eleventyConfig, { TIME_ZONE: siteData.timezone, defaultLanguage: siteData.default_language });
addPlugins(eleventyConfig, { defaultLanguage: siteData.default_language });
return {
markdownTemplateEngine: "njk",