[ScrollArea] Add scrollbar customization and expose sub-component refs
メンテナーはふだん 5 日以内に返信
@rohanchkrabrty がすでに取り組んでいます。
2026年9月29日 から。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- react, typescript
- 領域
- frontend
調査の方向性
まず packages/raystack/raystack/components/scroll-area/ 配下のファイルを読み、既存の wrapper と Base UI ScrollArea primitive を比較します。Viewport、Content、Scrollbar、Thumb、Corner の現在の使用状況を追跡し、要求されている props、refs、classNames、Corner のカスタマイズが、issues #672 と #673 に移された横断的な作業を重複させることなく公開されていることを確認します。
索引モデルが issue の本文から書いたものです。
説明
Summary
ScrollArea wraps Base UI's ScrollArea primitive. Lacks configuration props for scrollbar appearance and missing accessibility attributes.
Improvements
3. Make overscroll-behavior configurable
Hardcoded to auto in viewport CSS. Should be a prop for controlling scroll chaining behavior.
4. Expose sub-component refs via compound pattern
Cannot access Viewport or Content refs. Cannot customize Content/Viewport classNames from parent.
5. Add corner element customization
Corner element is rendered but not customizable.
API Differences from Base UI
| Base UI | Apsara | Notes |
|---|---|---|
ScrollArea.Root |
ScrollArea |
Flattened naming |
ScrollArea.Viewport |
(internal) | Not exposed |
ScrollArea.Scrollbar |
ScrollArea.Scrollbar |
Wrapped with defaults |
ScrollArea.Thumb |
(internal) | Not exposed |
ScrollArea.Corner |
(internal) | Not exposed |
Moved to Cross-Cutting Issues
The following items have been moved to cross-cutting issues that address them across all components:
- Replace hardcoded CSS values with design tokens (#672)
- Accessibility baseline (#673)
Files
packages/raystack/raystack/components/scroll-area/
- 主要言語
- TypeScript
- スター
- 69
- フォーク
- 13
- 平均マージ
- 4日 4時間
- マージ済み PR(30日)
- 27
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
raystack/apsara のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 5 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
メンテナーはふだん 5 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 5 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
メンテナーはふだん 5 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
メンテナーはふだん 5 日以内に返信
raystack/apsara の issue をすべて見る
似ている issue
-
難易度 1/5 1〜3時間 初心者へのやさしさ 70/100
siyuan-note/siyuan#20517 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
NaturalIntelligence/fast-xml-parser#890 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
zsviczian/obsidian-excalidraw-plugin#3000 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
pnpm/get.pnpm.io#68 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
nuxt-modules/better-auth#578 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信