Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[feat]: Update `<pf-v6-dropdown>` for PatternFly v6

Đang mở
#3,008 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
css, html, typescript
Lĩnh vực
accessibility, design, frontend

Hướng nghiên cứu

Start with .claude/ADVICE.md and the existing elements/pf-v5-dropdown/ implementation, then study the referenced PatternFly React v6 Dropdown and the existing pf-v6-menu and pf-v6-menu-toggle elements. Review elements/package.json, eslint.config.js, _snippets/, and framework-integration/ for rename impacts. Done means the implementation, demos, tests, reviews, changeset, and staging/pfv6 target satisfy the checklist.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

1:1 for dev priority: medium

Summary

Update `` to implement the PatternFly v6 Dropdown component.

Action menu triggered by a toggle button, for presenting a list of actions or links.

Prior Art

Source Element Status
PFE v4 `` Exists
cem `` Exists
cockpit `` Exists
chickadee -- --

Sub-components

  • `` - Individual action item
  • `` - Grouped items with optional title

Requirements

  • MUST implement PFv6 visual designs
  • MUST provide end-user feature parity with `@patternfly/react-core` Dropdown
  • MAY adjust element API to leverage web platform strengths
  • SHOULD maintain CSS custom property theming compatibility
  • SHOULD expose useful CSS shadow parts

Element-specific considerations

  • MAJOR API CHANGE: React v6 Dropdown is a thin wrapper around `Menu` + `MenuToggle`. Its API is fundamentally different from v5. Study the v6 React source carefully before porting.
  • React v6 `Dropdown` props: `toggle` (render prop for `MenuToggle`), `popperProps`, `isScrollable`, `isPlain`, `isGrouped`, `minMenuHeight`, `maxMenuHeight`
  • React `DropdownItem` is effectively `MenuItem`; `DropdownGroup` is `MenuGroup`; `DropdownList` is `MenuList`
  • Floating UI used for positioning (popperProps)
  • Consider whether to implement as composition of `` + ``, or as a standalone element; strongly prefer composition
  • Keyboard: Arrow keys navigate items, Escape closes, Enter/Space selects
  • Focus returns to toggle on close

Checklist

Rename
  • Delete `elements/pf-v5-dropdown/`
  • Update `elements/package.json` exports
  • Update `eslint.config.js` ignore globs if applicable
  • Update docs `_snippets/` and `framework-integration/` references
Implementation
  • API per `.claude/ADVICE.md`
  • CSS uses v6 tokens, logical properties, nesting
  • `@summary` and JSDoc on element class
Demos
  • Demos match patternfly.org naming/structure
  • CSS custom properties match computed styles from patternfly.org (Chrome MCP)
  • Visual parity verified via Chrome MCP
Tests
  • Public API covered (attributes, properties, events, slots)
  • `a11ySnapshot` assertions
Reviews
  • `/review-api` passes
  • `/review-demos` passes
  • `/review-a11y` passes
  • `eslint` and `stylelint` pass
Ship
  • Add changeset
  • PR targets `staging/pfv6` (NOT `main`)
Ngôn ngữ chính
TypeScript
Star
395
Fork
107
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của patternfly/patternfly-elements

Tất cả issue của patternfly/patternfly-elements

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.