Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

fix: don't echo unknown region codes as their name in the by-region table

Abierto Apto para principiantes
#46 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
typescript
Área
frontend

Línea de trabajo

Empieza con countryName en lib/utils.ts, donde Intl.DisplayNames se crea sin la opción fallback, y con REGION_ALIASES en blocks/charts/region-map.tsx. Establece fallback: "none" para que los códigos desconocidos como EL y XX no muestren ningún nombre, y mueve el mapa de alias a lib/regions.ts para que la tabla pueda buscar el país asignado. Está terminado cuando un fixture que declara EL, XX y UK muestra "greece", ningún nombre y "united kingdom", y pnpm typecheck y pnpm lint pasan. El issue depende de #45, así que comprueba primero si ese cambio ya está fusionado.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug good first issue

Spotted while building the world map (#45).

Problem

The by-region table shows each code's country name next to it, via countryName (lib/utils.ts after #45, before that in blocks/by-region.tsx). Intl.DisplayNames defaults to fallback: "code", so for a code it doesn't know it returns the code itself, which we lowercase:

declared shown
EL EL el
XX XX xx
UK UK united kingdom (Intl knows this one)

EL is the EU's code for Greece, and the map (#45) already draws it on GR through REGION_ALIASES, so the table and the map disagree.

Solution

  1. In countryName, pass fallback: "none" to Intl.DisplayNames. It then returns undefined for an unknown code, so the existing ?? "" shows no name:
    const regionNames = new Intl.DisplayNames(["en"], {
      type: "region",
      fallback: "none",
    })
    
    Checked in Node: EL/XX → undefined, UK/GB → "United Kingdom", GR → "Greece".
  2. Name an aliased code after the country the map draws it on. Move REGION_ALIASES from blocks/charts/region-map.tsx to lib/regions.ts, and have the table look up countryName(REGION_ALIASES[code] ?? code), so EL reads "greece". The code column still shows what was declared.

Out of scope: rewriting declared codes in the indexer (regionCode in worker/src/stats.ts), which would split history between the old and new code.

Verify

pnpm typecheck && pnpm lint, then with a local fixture (see CLAUDE.md) that declares EL, XX and UK, check that the table shows "greece", no name, and "united kingdom".

🤖 Generated with Claude Code

Lenguaje dominante
TypeScript
Estrellas
2
Forks
0
Merge medio
9 h 7 min
PR fusionados (30 d)
53

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de decdn/stats

Todos los issues de decdn/stats

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.