refactor(card): modernize composition model and improve MD3 behavior
Los mantenedores suelen responder en 7 días
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Refactorización
- Claridad
- Necesita aclaración
- Estado de actividad
- Tranquilo
- Stack tecnológico
- react-native, typescript
Línea de trabajo
El issue menciona Card, Card.Content y Card.Actions, pero no indica ningún archivo ni test. Empieza localizando la implementación de Card y su API pública existente; después compara la composición, las variantes, la elevation, el espaciado y el comportamiento pressable actuales con la dirección de slots propuesta; no se han especificado los criterios de finalización ni los tests, por lo que el alcance debe acordarse con los maintainers.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Refactor Card to improve Material Design 3 compliance, remove problematic children patterns, improve performance characteristics, and modernize the public API.
Problems
- Current API relies heavily on children composition in ways that are difficult to optimize
- Internal layout logic is tightly coupled to arbitrary child structures
- MD3 behaviors and visuals are not fully aligned with current Material guidelines
- Rendering performance can degrade in large lists or frequently updated screens
- Type safety and discoverability of the API can be improved
- The component has inconsistent behavior between platforms and edge cases
Focus Areas
- Reduce dependence on deeply nested children
- Improve Card.Content / Card.Actions architecture
- Improve elevation and surface behavior
- Improve shape and outlined variants
- Simplify internal spacing rules
Proposed API Direction
Introduce clearer slot-based APIs:
<Card title="Title" subtitle="Subtitle" content={<Text>Content</Text>} actions={[...]} />
Performance Opportunities
- Reduce nested wrappers
- Optimize pressable behavior
- Avoid unnecessary subtree re-renders
- Improve memoization boundaries
- Lenguaje dominante
- TypeScript
- Estrellas
- 14.5k
- Forks
- 2.2k
- Merge medio
- 6 d 12 h
- PR fusionados (30 d)
- 5
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 callstack/react-native-paper
-
Menu ignores the keyboard when it mounts while the keyboard is already openPosiblemente ocupada @manchoudhary la tomó hace 25 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
callstack/react-native-paper#5096 ·
Los mantenedores suelen responder en 7 días
-
Color Picker Popup Is Obscured On "Guides -> Theming -> Creating Dynamic Theme Colors" Documentation On Both v5 and v6Posiblemente ocupada @fatihcvs la tomó hace 20 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
callstack/react-native-paper#5093 ·
Los mantenedores suelen responder en 7 días
-
Tooltip: onPress event object is not propagated to parent component on nativePosiblemente ocupada @Shevilll la tomó hace 111 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
callstack/react-native-paper#5003 ·
Los mantenedores suelen responder en 7 días
-
Snackbar stays mounted after `visible=false` under new architecture (iOS + Android)Posiblemente ocupada @momomuchu la tomó hace 99 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
callstack/react-native-paper#4951 ·
Los mantenedores suelen responder en 7 días
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
callstack/react-native-paper#4881 ·
Los mantenedores suelen responder en 7 días
Todos los issues de callstack/react-native-paper
Issues similares
-
[Docs] README: FAQ setup command, IDA in the intro, Node badgePosiblemente ocupada @akram1089 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
morluto/rea#1353 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[Feature]: [P3] engine-rs: the package source hash should ignore line endings and untracked filesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
maniator/verticopolis#880 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
siyuan-note/siyuan#20353 ·
Los mantenedores suelen responder en 1 día
-
afk-ok area:data-quality importer size:S
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
enorm-labs/event-junkie#3027 ·
Los mantenedores suelen responder en 1 día