From 8e16ba839103fa7a640b28d7ee1fcf3c6ba47a26 Mon Sep 17 00:00:00 2001 From: adevopg Date: Wed, 15 Jul 2026 07:11:07 +0000 Subject: [PATCH] =?UTF-8?q?store:=20iguala=20el=20carrito=20y=20el=20cuadr?= =?UTF-8?q?o=20de=20=C3=ADtem=20al=20dise=C3=B1o=20original?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Comparado contra el store original (ultimowow /es/store-bennu) con una sesión real: markup, CSS y clases que aplica su power.js. Cinco causas distintas: - Los nombres de ítem salían azules: el layout declaraba `const whTooltips`, que queda en el ámbito léxico del script y NO crea propiedad en `window`, que es de donde tooltips.js lee la config -> se ignoraba entera. Ahora `window.whTooltips`, con colorLinks+iconizeLinks (el original no define whTooltips y usa esos defaults; sus enlaces acaban con clases `icontinyl q4`). renameLinks sigue en false: el texto sale de nuestra BD, en español. - tooltips.js solo recorre el DOM al cargar, así que los enlaces que monta React (hoja del árbol, carrito) no se teñían. Se pasan por $WowheadPower.refreshLinks(), igual que hace el original tras cada AJAX. - globals.css redefinía .item-box/.item-name/.item-img-box/.max-left-table2, que el tema nw-ryu ya trae del original, y con más especificidad ganaba la cascada. El peor: un `border-collapse` que anulaba el `border-spacing: 0 8px` del tema, que es lo que separa las filas del carrito. - Faltaban la caja "Carrito - " y "Personaje seleccionado: " (coloreado por clase), que el original sí tiene. - El total de la columna "Cant" mostraba el número de líneas en vez de la suma de cantidades: un ítem que entrega un mazo de 20 debe contar 20, no 1. Verificado con navegador contra un build de producción: el nombre del ítem sale con clases `icontinyl q4` y color rgb(163,53,238), el mismo valor exacto que devuelve el original. Co-Authored-By: Claude Opus 4.8 (1M context) --- web-next/app/[locale]/layout.tsx | 15 ++- web-next/app/[locale]/store/page.tsx | 1 + web-next/app/globals.css | 33 ++--- web-next/components/StoreBrowser.tsx | 181 +++++++++++++++++---------- web-next/messages/en.json | 2 + web-next/messages/es.json | 2 + 6 files changed, 142 insertions(+), 92 deletions(-) diff --git a/web-next/app/[locale]/layout.tsx b/web-next/app/[locale]/layout.tsx index e28786b..374658f 100644 --- a/web-next/app/[locale]/layout.tsx +++ b/web-next/app/[locale]/layout.tsx @@ -68,11 +68,20 @@ export default async function LocaleLayout({ {/* Tema real de NovaWoW (nw-ryu). Va el ÚLTIMO para ganar la cascada. */} {/* Config de los tooltips de wowhead (debe definirse antes de tooltips.js). - Solo tooltips: no recolorea/renombra/iconiza nuestros enlaces. El idioma - del tooltip lo da el subdominio del enlace (es./www.). */} + OJO con el `window.`: tooltips.js lee `window.whTooltips`, y un `const` a + nivel de script queda en el ámbito léxico del script (no crea propiedad en + window), así que la config se ignoraba entera y valían los valores por + defecto de wowhead. + `colorLinks` tiñe cada enlace según la calidad del ítem e `iconizeLinks` le + antepone el icono pequeño: los dos replican lo que hace el store original + (sus enlaces acaban con las clases `icontinyl q4`). Sin colorLinks los + nombres caen al `a{color:#2471a9}` del tema y salen todos azules. + `renameLinks` NO: el texto de los enlaces es el nombre de nuestra BD (en + español), y wowhead lo sobreescribiría. El idioma del tooltip lo da el + subdominio del enlace (es./www.). */}