callstack / callstack/react-native-paper
refactor(radio-button): modernize selection model and improve MD3 compliance
- 主要言語
- TypeScript
- スター
- 14.5k
- フォーク
- 2.2k
- 平均マージ
- 5日 23時間
- マージ済み PR(30日)
- 12
説明
Refactor RadioButton 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 RadioButton.Group architecture
- Improve accessibility semantics
- Improve spacing and density consistency
- Simplify internal selection propagation
**Proposed API Direction**
``
**Performance Opportunities**
- Reduce context-driven rerenders
- Improve group memoization
- Simplify animation paths
コントリビューションガイド
調査の方向性
まず、既存の RadioButton と RadioButton.Group の実装を追跡し、選択、アクセシビリティ、間隔、アニメーションが現在どのように処理されているかを確認します。動作を、提案されている value/onValueChange API および現在の Material Design 3 のガイダンスと比較します。完了条件は、ドキュメント化された設計と、すべてのプラットフォームで一貫したセマンティクス、密度、選択の伝播、改善された再レンダリング動作を備えたグループアーキテクチャが実装されていることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- react-native, typescript
- 領域
- frontend, mobile
- issue の種類
- リファクタリング
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 静か
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 30/100