callstack / callstack/react-native-paper
feat: modernize Badge according to MD3
- 主要言語
- TypeScript
- スター
- 14.5k
- フォーク
- 2.2k
- 平均マージ
- 5日 23時間
- マージ済み PR(30日)
- 12
説明
The goal is to modernize the Badge component to the latest Material Design specs by reusing theme tokens (shape, typography, colors etc).
# Current state
## Badge
**MD3 spec:** Badges
**Specs link:** https://m3.material.io/components/badges/specs
### Color tokens
- Background `error` ✅
- Label text `onError` ✅
### Spacing / sizing
- [ ] Default `size` is 20dp. MD3 defines small badge at 6dp (no label) and large badge at 16dp (with label)
- [ ] No small/large distinction. Size should be determined automatically: 6dp when no children, 16dp when children are present
- [ ] `paddingHorizontal: 3`. Spec requires 4dp between badge edge and text
- [ ] `fontSize = size * 0.5` yields 8sp at 16dp. Spec requires 11sp for large badge label text
- [ ] Large badge max character count size (16x34dp) not handled; text currently overflows unconstrained
### Behavior
- [ ] No automatic small vs large variant. Component should render as a 6dp dot when childless and as a 16dp pill when a label is provided
コントリビューションガイド
調査の方向性
Start with the existing Badge component and compare its current sizing, padding, typography, and overflow behavior with the linked Material Design 3 badge specs. Done means childless badges render as 6dp dots, labeled badges as 16dp pills, spacing and text sizing use the specified values, and long labels respect the 16x34dp limit.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- react-native, typescript
- 領域
- mobile
- issue の種類
- 機能追加
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 58/100