refactor(appbar): improve MD3 variants and action composition
Maintainer antworten meist innerhalb von 7 Tagen
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 25/100
- Issue-Typ
- Refactoring
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- react-native, typescript
- Bereich
- accessibility, design, mobile
Rechercherichtung
Beginne mit dem Lesen der aktuellen AppBar-Implementierung und der öffentlichen API und vergleiche anschließend ihr Verhalten mit den aufgeführten MD3-Varianten der oberen AppBar und der Richtung der Aktionszusammenstellung. Definiere die betroffenen API- und Komponentengrenzen, bevor du das Scrollverhalten, die Barrierefreiheit und die Rendering-Performance behandelst; abgeschlossen bedeutet, dass die Varianten und Aktionen plattformübergreifend konsistent mit den angegebenen Performance-Zielen funktionieren.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Refactor AppBar 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
- Improve support for MD3 top app bar variants
- Simplify action rendering
- Improve scroll behavior integration
- Improve accessibility and semantics
Proposed API Direction
<Appbar variant="small" title="Inbox" actions={[...]} />
Performance Opportunities
- Reduce action re-renders
- Improve animated scroll performance
- Reduce style recalculation
- Vorherrschende Sprache
- TypeScript
- Sterne
- 14.5k
- Forks
- 2.3k
- Ø Merge
- 8 T. 2 Std.
- Gemergte PRs (30 T.)
- 4
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus callstack/react-native-paper
-
Menu ignores the keyboard when it mounts while the keyboard is already openEvtl. vergeben @manchoudhary hat das vor 34 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
callstack/react-native-paper#5096 ·
Maintainer antworten meist innerhalb von 7 Tagen
-
Color Picker Popup Is Obscured On "Guides -> Theming -> Creating Dynamic Theme Colors" Documentation On Both v5 and v6Evtl. vergeben @fatihcvs hat das vor 28 Tagen übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
callstack/react-native-paper#5093 ·
Maintainer antworten meist innerhalb von 7 Tagen
-
Tooltip: onPress event object is not propagated to parent component on nativeEvtl. vergeben @Shevilll hat das vor 120 Tagen übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
callstack/react-native-paper#5003 ·
Maintainer antworten meist innerhalb von 7 Tagen
-
Snackbar stays mounted after `visible=false` under new architecture (iOS + Android)Evtl. vergeben @momomuchu hat das vor 108 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
callstack/react-native-paper#4951 ·
Maintainer antworten meist innerhalb von 7 Tagen
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
callstack/react-native-paper#4881 ·
Maintainer antworten meist innerhalb von 7 Tagen
Alle Issues in callstack/react-native-paper
Ähnliche Issues
-
freshness freshness:observed-only
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
thoroc/context-radar#280 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
-
documentation story
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
Billing: computeBundleEconomicsFrom treats a NULL component cost as 0, inflating bundle marginOffenbug category:billing priority:p3 track:fast
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
LanternOps/breeze#9223 ·
Maintainer antworten meist innerhalb von 1 Tag