callstack / callstack/react-native-paper

refactor(button): improve MD3 compliance and modernize content API

Offen
#4,928 3 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @azizbecha Auf GitHub ansehen
v6
Vorherrschende Sprache
TypeScript
Sterne
14.5k
Forks
2.2k
Ø Merge
5 T. 23 Std.
Gemergte PRs (30 T.)
12

Beschreibung

Refactor Button 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**

- Remove implicit text child handling
- Improve icon + label composition
- Standardize loading and disabled states
- Improve ripple and state layer behavior
- Reduce nested render structure
- Improve accessibility semantics

**Proposed API Direction**

Instead of:

`Create`

Prefer:

``

**Performance Opportunities**

- Memoize content container
- Avoid cloning children
- Reduce dynamic style allocations
- Optimize ripple rendering

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.