From 42d525279b31f13fc4b7ea40a43399c4ea94305f Mon Sep 17 00:00:00 2001 From: Oscar Date: Sun, 17 Nov 2019 19:49:50 +0100 Subject: [PATCH] feat(11ty): add filter for subterm output --- .eleventy.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.eleventy.js b/.eleventy.js index 771d2823..032c181f 100644 --- a/.eleventy.js +++ b/.eleventy.js @@ -1,11 +1,12 @@ const makeItemLink = (slug) => `#${slug}` +const findExistingDefinition = (word, collection) => collection.find(item => item.data.title === word) module.exports = function (config) { // Add a filter using the Config API config.addFilter('linkTarget', makeItemLink); config.addFilter('linkIfExistsInCollection', (word, collection) => { - const existingDefinition = collection.find(item => item.data.title === word) + const existingDefinition = findExistingDefinition(word, collection) if (existingDefinition) { return `${word}` @@ -14,6 +15,16 @@ module.exports = function (config) { return word }) + config.addFilter('linkSubTermIfDefined', (subTermData, collection) => { + const existingDefinition = findExistingDefinition(subTermData.full_title, collection) + + if (existingDefinition) { + return `${subTermData.text}` + } + + return subTermData.text + }) + // just a debug filter to lazily inspect the content of anything in a template config.addFilter('postInspect', function (post) { console.log(post);