69 lines
1.9 KiB
JavaScript
Executable File
69 lines
1.9 KiB
JavaScript
Executable File
const fs = require('fs');
|
|
//const appRoot = require('app-root-path').path; // fails when the eleventy package is linked (edge case)
|
|
const glob = require('fast-glob');
|
|
|
|
// find nearest package.json
|
|
function findNearestPackageDir() {
|
|
const dirs = __dirname.split('/');
|
|
while (dirs.length > 0) {
|
|
const d = dirs.join('/');
|
|
const f = d + '/package.json';
|
|
if (fs.existsSync(f)) return d;
|
|
dirs.pop();
|
|
}
|
|
}
|
|
const appRoot = findNearestPackageDir();
|
|
|
|
// use last modify-time as version
|
|
const version = glob.sync(appRoot + '/src/pages/page-*.html')
|
|
.map(file => ({ file, mtime: fs.statSync(file).mtime }))
|
|
.sort((a, b) => (b.mtime - a.mtime)) // sort descending
|
|
[0]
|
|
.mtime
|
|
.toLocaleDateString('af')
|
|
;
|
|
|
|
console.log(`metadata.js: version = ${version}`)
|
|
|
|
|
|
|
|
const metadata = {};
|
|
|
|
metadata.languages = "en es de tr ru ar fa cs ro hu zh"; // TODO add new languages here
|
|
|
|
metadata.defaultLanguage = "en";
|
|
metadata.primarylanguage = metadata.defaultLanguage; // TODO rename to defaultLanguage
|
|
|
|
// TODO translate
|
|
metadata.basename = {};
|
|
metadata.basename.de = "alchi-book";
|
|
|
|
metadata.iconSvgPath = "alchi-pallas-symbol.small.svg";
|
|
|
|
metadata.title = "Your Blog Name"; // TODO
|
|
metadata.version = version;
|
|
|
|
metadata.url = "https://example.com/";
|
|
|
|
// TODO SEO
|
|
metadata.description = "description"; // TODO
|
|
metadata.keywords = "keywords"; // TODO
|
|
|
|
metadata.feed = {};
|
|
metadata.feed.subtitle = "I am writing about my experiences as a naval navel-gazer.";
|
|
metadata.feed.filename = "feed.xml";
|
|
metadata.feed.path = "/feed/feed.xml";
|
|
metadata.feed.id = "https://example.com/";
|
|
|
|
metadata.jsonfeed = {};
|
|
metadata.jsonfeed.path = "/feed/feed.json";
|
|
metadata.jsonfeed.url = "https://example.com/feed/feed.json";
|
|
|
|
metadata.author = {};
|
|
metadata.author.name = "Milan Hauth";
|
|
metadata.author.email = "milahu@gmail.com";
|
|
metadata.author.url = "https://github.com/milahu";
|
|
|
|
//export default metadata;
|
|
module.exports = metadata;
|