Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

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

Abierto
#3,022 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
html, typescript

Línea de trabajo

Start with .claude/ADVICE.md and inspect elements/pf-v5-modal/ before planning the replacement. Check elements/package.json, eslint.config.js, _snippets/, and framework-integration/ for references to update. Done means a PatternFly v6 modal with the requested API, demos, public API and a11y tests, review checks, changeset, and a PR targeting staging/pfv6.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

1:1 for dev priority: medium

Summary

Update `` to implement the PatternFly v6 Modal component.

Dialog overlay for focused tasks, confirmations, or information display. Supports size variants and custom footers.

Prior Art

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

Notes

  • Should use the native `` element internally
  • Use `popover` attribute where appropriate for light-dismiss behavior

Requirements

  • MUST implement PFv6 visual designs
  • MUST provide end-user feature parity with `@patternfly/react-core` Modal
  • 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 `variant`: `small`, `medium`, `large`, `xlarge`, `default` - map to `size` attribute
  • React `isScrollable` - scrollable body with sticky header/footer; map to `scrollable` attribute
  • React `title`, `titleIconVariant` (`success`, `danger`, `warning`, `info`, `custom`) - use slot or attribute
  • React `actions` - footer button group; use `slot="footer"`
  • React `description` - subtitle below title
  • React `hasNoBodyWrapper` - removes the default `ModalBoxBody` padding wrapper
  • React `disableFocusTrap` - should almost never be needed; do not expose unless truly necessary
  • Native `` handles: focus trap, Escape key close, backdrop (`::backdrop` pseudo-element)
  • Light-dismiss (click outside): use `dialog.addEventListener("click", ...)` pattern on backdrop
  • `showModal()` vs `show()` vs `popover`: use `showModal()` for proper modal semantics (blocks interaction)
  • Expose `open` property/attribute for declarative open/close

Checklist

Rename
  • Delete `elements/pf-v5-modal/`
  • 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`)
Lenguaje dominante
TypeScript
Estrellas
394
Forks
107
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de patternfly/patternfly-elements

Todos los issues de patternfly/patternfly-elements

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.