Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

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

Aperta
#3,049 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
typescript

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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)
Lingua principale
TypeScript
Stelle
394
Fork
107
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di patternfly/patternfly-elements

Tutte le issue di patternfly/patternfly-elements

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.