[feat]: Create `<pf-v6-drawer>` element
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- html, typescript
- Bereich
- frontend
Rechercherichtung
Start with .claude/ADVICE.md, then review the existing elements in cem and cockpit for API and behavior guidance. Define the element, named slots, attributes, properties, events, demos, and tests described in the issue, including accessibility and focus management. Done means the v6 visual design and React Drawer feature parity are covered, reviews pass, and a changeset is added for staging/pfv6.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
Create `` to implement the PatternFly v6 Drawer component.
Slide-out panel overlay or inline panel for secondary content, details, or actions.
Prior Art
| Source | Element | Status |
|---|---|---|
| PFE v4 | -- | -- |
| cem | `` | Exists |
| cockpit | `` | Exists |
| chickadee | -- | -- |
Requirements
- MUST implement PFv6 visual designs
- MUST provide end-user feature parity with `@patternfly/react-core` Drawer
- 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
- React `isExpanded` / `defaultExpanded` - open/close state; map to `expanded` attribute; emit `toggle` event
- React `isInline` - panel is inline (pushes content) vs overlay (overlaps); map to `inline` attribute
- React `isStatic` - always visible, no toggle; map to `static` attribute
- React `position`: `right`, `left`, `bottom` - map to `position` attribute
- React `onExpand` - called after animation ends; emit `expanded` event
- React sub-components: `DrawerContent`, `DrawerContentBody`, `DrawerPanelContent`, `DrawerPanelBody`, `DrawerHead`, `DrawerActions`, `DrawerCloseButton` - use named slots
- Panel width/height as CSS custom property (default ~50%)
- Responsive: panel may become full-width on mobile
- Focus management: when drawer opens, focus should move into the panel; on close, return to trigger
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
- 394
- Forks
- 107
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus patternfly/patternfly-elements
-
[bug] ssr-shims.js uses deprecated globalThis.litSsrCallConnectedCallbackEvtl. wieder frei @zeroedin hat das vor 51 Tagen übernommen, und es ist kein Pull Request offen. Offenbug
patternfly/patternfly-elements#3158 · 1 zugewiesene Person ·
-
chore: evaluate removing isolatedDeclarations from tsconfigEvtl. wieder frei @bennypowers hat das vor 141 Tagen übernommen, und es ist kein Pull Request offen. Offen
patternfly/patternfly-elements#3136 · 1 Kommentar · 1 zugewiesene Person ·
-
chore: update docs scaffolding for v6 elementsEvtl. wieder frei @zeroedin hat das vor 142 Tagen übernommen, und es ist kein Pull Request offen. Offendocs
patternfly/patternfly-elements#3131 · 1 zugewiesene Person ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
patternfly/patternfly-elements#3122 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 38/100
patternfly/patternfly-elements#3118 ·
Alle Issues in patternfly/patternfly-elements
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
melgarafael/DeskcommCRM#1812 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
prisma/prisma-cli#309 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
gregwebs/pi-quota-dispatcher#26 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
openwatersio/slackwater.xyz#124 ·
Maintainer antworten meist innerhalb von 1 Tag
-
agent-reported area/browser area/docs documentation good first issue hacktoberfest help wanted P2
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
Maintainer antworten meist innerhalb von 2 Tagen