From 00644623eb6c99a33b3b08771f4f23841f747b88 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Wed, 2 Aug 2023 12:45:30 -0300 Subject: content: pass color directly through slots in various places Primarily through generateColorStyle{Rules,Variables}, the former of which is also refactored into generatePageLayout, which now takes a direct color slot itself as well. --- src/content/dependencies/generatePageLayout.js | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) (limited to 'src/content/dependencies/generatePageLayout.js') diff --git a/src/content/dependencies/generatePageLayout.js b/src/content/dependencies/generatePageLayout.js index c4047ed8..899725b8 100644 --- a/src/content/dependencies/generatePageLayout.js +++ b/src/content/dependencies/generatePageLayout.js @@ -68,8 +68,9 @@ export default { }; }, - data({wikiName}) { + data({wikiColor, wikiName}) { return { + wikiColor, wikiName, }; }, @@ -86,8 +87,8 @@ export default { relations.defaultFooterContent = relation('transformContent', sprawl.footerContent); - relations.defaultColorStyleRules = - relation('generateColorStyleRules', sprawl.wikiColor); + relations.colorStyleRules = + relation('generateColorStyleRules'); return relations; }, @@ -100,12 +101,9 @@ export default { socialEmbed: {type: 'html'}, - colorStyleRules: { - validate: v => v.sparseArrayOf(v.isString), - default: [], - }, + color: {validate: v => v.isColor}, - additionalStyleRules: { + styleRules: { validate: v => v.sparseArrayOf(v.isString), default: [], }, @@ -588,10 +586,9 @@ export default { }), html.tag('style', [ - (empty(slots.colorStyleRules) - ? relations.defaultColorStyleRules - : slots.colorStyleRules), - slots.additionalStyleRules, + relations.colorStyleRules + .slot('color', slots.color ?? data.wikiColor), + slots.styleRules, ]), html.tag('script', { -- cgit 1.3.0-6-gf8a5