Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

[feat]: Create `<pf-v6-tree-view>` element

Offen
#3,049 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
35/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Tech-Stack
typescript

Rechercherichtung

Start with .claude/ADVICE.md and review the PatternFly v6 Tree view design and @patternfly/react-core feature set. Define the element and tree-item API, demos, and public accessibility tests around the listed variants, keyboard behavior, attributes, properties, events, and slots. Done means the implementation, demos, a11ySnapshot assertions, review commands, lint checks, changeset, and staging/pfv6 targeting all pass.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

1:1 for dev priority: medium

Summary

Create a <pf-v6-tree-view> web component implementing the PatternFly v6 Tree view component.

Hierarchical tree display for nested data, with expandable nodes, checkboxes, and action menus.

Prior Art

Source Element Status
PFE v4 -- --
cem <pf-v6-tree-view> Exists
cockpit <pf-v6-tree-view> Exists
chickadee -- --

Sub-components

  • <pf-v6-tree-item> - Individual tree node

Requirements

  • MUST implement PFv6 visual designs
  • MUST provide end-user feature parity with @patternfly/react-core TreeView
  • 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

  • Tree ARIA pattern: role="tree" on root, role="treeitem" per node, role="group" on child lists
  • aria-expanded on expandable nodes, aria-selected for selection
  • Keyboard: Arrow Up/Down navigate siblings, Arrow Right expands/enters children, Arrow Left collapses/exits, Home/End jump to first/last, Enter/Space select
  • hasCheckboxes variant: each node has checkbox; aria-checked for tri-state (indeterminate when partial children selected)
  • hasActions variant: action button per node (e.g., edit, delete)
  • hasBadges variant: badge on each node showing child count
  • hasGuides variant: vertical guide lines
  • isNested for compact nested style
  • onSelect event with node data; onExpand / onCollapse
  • activeItems prop for controlled selection
  • Search/filter: onSearch callback or toolbar integration
  • Data-driven API: data prop array vs slotted <pf-v6-tree-item> children - evaluate both approaches

Checklist

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)
Vorherrschende Sprache
TypeScript
Sterne
395
Forks
107
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus patternfly/patternfly-elements

Alle Issues in patternfly/patternfly-elements

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

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