From 860729ca8bcf56eef5eb02002ad7ee06f5f98fee Mon Sep 17 00:00:00 2001 From: Felipe Mojica Date: Sat, 13 Jun 2026 10:01:23 -0600 Subject: [PATCH] v2.9: compartir doc por URL, regex en reemplazo, JSONPath y accesibilidad MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Features: - Compartir documento por URL: botón que comprime el documento con CompressionStream (gzip nativo del navegador, cero dependencias) y lo codifica en base64url dentro del hash de la URL — que nunca se envía a ningún servidor. loadDocFromHash() descomprime al abrir el enlace. Límite ~45KB comprimido; aviso en navegadores sin soporte. - Regex en buscar y reemplazar: checkbox 'regex' con grupos $1,$2... en Reemplazar y Todo. Regex inválida muestra aviso sin romper. - JSONPath en el árbol JSON: click en una clave copia su ruta ($.tienda.libros[0].titulo) al portapapeles, en paridad con el árbol XML. - Accesibilidad (primera pasada WCAG): role=alert en errores, aria-live en validación, aria-label en iconos/selects, aria-hidden en gutters, y foco visible por teclado (outline ámbar) en todos los controles y temas. Descartado: UI bilingüe ES/EN (~100+ strings, riesgo de regresiones). Tests: 7 nuevos — 92/92 pasando. Co-Authored-By: Claude Fable 5 --- CLAUDE.md | 4 +- README.md | 21 ++++++- docs/ROADMAP.md | 47 ++++++++++++++- docs/SCOPE.md | 9 +++ index.html | 150 ++++++++++++++++++++++++++++++++++++++++-------- tests.html | 60 ++++++++++++++++++- 6 files changed, 261 insertions(+), 30 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index f66ff02..cbf6507 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -39,7 +39,7 @@ CI: `.github/workflows/tests.yml` runs the full suite headless (Playwright + Chr ## Architecture -Everything is in `index.html` (~2180 lines): CSS in `