From 803ab7b09eedcca8a839d103caa3cf762c4deac1 Mon Sep 17 00:00:00 2001 From: Marwin Hochfelsner <50826859+hlfan@users.noreply.github.com> Date: Mon, 20 Apr 2026 21:31:56 +0200 Subject: [PATCH] Add color scheme ranking logic --- app/assets/javascripts/index/element.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/index/element.js b/app/assets/javascripts/index/element.js index b952c8a64..e4b6aa1ab 100644 --- a/app/assets/javascripts/index/element.js +++ b/app/assets/javascripts/index/element.js @@ -92,8 +92,10 @@ } function getLocalizedResponse(entity) { - const rank = ({ rank }) => ({ preferred: 1, normal: 0, deprecated: -1 })[rank] ?? 0; - const toBestClaim = (out, claim) => (rank(claim) > rank(out)) ? claim : out; + const siteScheme = ({ light: "Q101608434", dark: "Q6545942" })[$("html").data("bs-theme")]; + const scheme = ({ qualifiers }) => qualifiers?.P8798?.some(q => q?.datavalue?.value?.id === siteScheme) ?? 0; + const rank = ({ rank }) => ({ preferred: 2, normal: 0, deprecated: -2 })[rank] ?? 0; + const toBestClaim = (out, claim) => (rank(claim) + scheme(claim) > rank(out) + scheme(out)) ? claim : out; const toFirstOf = (property) => (out, localization) => out ?? property[localization]; const data = { qid: entity.id, -- 2.39.5