PhoneInput: full country list + basic E.164 validation
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- react, typescript
- Área
- frontend, internationalization
Línea de trabajo
The payload names no file, so start by locating the existing PhoneInput component and its 50-country list in the repository. Replace the list with the full E.164 set, add the optional countries and preferredCountries props, and add basic digits-only, 15-digit validation that sets aria-invalid and calls onValidityChange(valid, e164). Done when the tests check every entry's ISO code and dial code, filtering, and the callback, and the PR notes the bundle size.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
PhoneInput: full country list + basic E.164 validation
PhoneInput currently ships 50 countries, so users in most of the world (e.g. Sri Lanka, Nepal, Peru, Morocco, Ukraine) can't select their dial code.
Proposal
- Full list — all ITU-T E.164 country codes (~245 entries). Flags can be derived from the ISO code rather than stored, and English names via
Intl.DisplayNamesto keep bundle size down. - Optional
countriesprop — allow consumers to restrict / reorder the list (e.g.["IN", "US", "GB"]), pluspreferredCountriespinned at the top. - Basic validation — strip formatting characters, enforce digits-only and E.164 max length (15 digits incl. country code); expose
aria-invalidand anonValidityChange(valid, e164)callback. Full per-country rules (libphonenumber) stay out of scope to keep zero extra deps.
Acceptance
- Test that every entry has a valid ISO code and
+-prefixed dial code - Tests for
countriesfiltering and validation callback - Bundle size noted in the PR
- Lenguaje dominante
- TypeScript
- Estrellas
- 39
- Forks
- 16
- Merge medio
- 2 d 12 h
- PR fusionados (30 d)
- 10
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de babelize/babelize-elements
-
bug website
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
babelize/babelize-elements#46 ·
Los mantenedores suelen responder en 1 día
-
bug language-switcher priority: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
babelize/babelize-elements#26 ·
Los mantenedores suelen responder en 1 día
-
component enhancement help wanted
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
babelize/babelize-elements#47 ·
Los mantenedores suelen responder en 1 día
-
bug component rtl-layout
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
babelize/babelize-elements#45 ·
Los mantenedores suelen responder en 1 día
-
Website: revamp and improve the landing pagePosiblemente ocupada @anjalinayak01 la tomó hace 5 días. Abiertoenhancement help wanted priority: medium website
Dificultad 4/5 Más de una semana Aptitud para principiantes 30/100
babelize/babelize-elements#37 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de babelize/babelize-elements
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
xdjs/MusicNerdWeb#1532 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
sebastian-software/ardo#352 ·
Los mantenedores suelen responder en 1 día
-
@react95/core good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Los mantenedores suelen responder en 3 días
-
@shikijs/stream: `ShikiStreamTokenizer.clone()` shares its `tokensStable` array with the originalPosiblemente ocupada @xyrolle la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 6 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día