Nested Replicator inside Bard set remounts and resets collapsed state on field interaction
Los mantenedores suelen responder en 1 día
@edalzell ya está trabajando en esto.
Desde el 21/10/2026.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
Línea de trabajo
Start by tracing the Bard NodeView attribute sync and the Replicator initialization from node.attrs.values and meta.collapsed; the issue does not name source files or tests. Reproduce the nested Bard → set → Replicator → Grid interaction and inspect whether a remount resets expanded state. Done means editing a nested field preserves the expanded set.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Bug description
When a Replicator (with collapse: true) lives inside a Bard set, interacting with nested fields (e.g. Grid stacked rows, nested Bard) destroys and remounts the parent Bard NodeView. The nested Replicator re-initializes from meta.collapsed, which still lists every set as collapsed from page load, so an expanded set snaps shut.
This makes nested page-builder blocks (Accordion / FAQ style sets with Grid + Bard inside) very hard to edit: open the set, click a field inside, the whole set collapses.
How to reproduce
- Bard field with a set that contains a Replicator (
collapse: true). - That Replicator set contains a Grid (stacked) and/or nested Bard fields.
- Edit an entry, expand one Replicator set.
- Click into a nested field (heading input, ProseMirror, field header, etc.).
- Observe: the Bard NodeView / Replicator DOM is remounted (
data-replicator-setnode replaced), and the set is collapsed again.
Evidence from debugging
- After expand:
data-collapsed="false". - After clicking nested UI: previous set node is gone (
document.contains(oldNode) === false), new node mounts withdata-collapsed="true"whencollapse: true. - The Replicator set header toggle button does not receive the click; collapse comes from remount +
collapsed: clone(this.meta.collapsed)re-init. - Workaround:
collapse: falseon the nested Replicator — remount still happens, but sets stay open.
Expected behaviour
Expanding a nested Replicator set should survive interaction with its own fields. Collapsed state (and preferably the set DOM) should not reset when nested values cause the parent Bard set NodeView to sync/remount.
Environment
- Statamic 6.36.0
- Reproduced in Chromium (Cursor browser) against a Prime site page-builder Bard → set → Replicator → Grid/Bard nest
Related
Possibly related to Bard NodeView attr sync / remount behaviour when nested publish values change (watcher updating node.attrs.values).
- Lenguaje dominante
- PHP
- Estrellas
- 4.9k
- Forks
- 647
- Merge medio
- 1 d 13 h
- PR fusionados (30 d)
- 133
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de statamic/cms
-
Setting up URL to a custom elevated session page in config/statamic/users.php won't work in CpAbiertoauth needs more info
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
statamic/cms#15698 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Make native filesystem directory permissions configurable to support shared POSIX ACL accessAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 1 día
-
accessibility
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 1 día
-
[7.x] Reintroduce parser error for mixed pipe/shorthand modifier syntaxPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertoantlers
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
bard
Dificultad 4/5 1-2 días Aptitud para principiantes 45/100
statamic/cms#15704 · 1 reacción ·
Los mantenedores suelen responder en 1 día
Todos los issues de statamic/cms
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
[2.x] extension-manager: translation keys that changed meaning keep their old namesPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertotype/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
needs-triage Technical TODO
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
Security: Vulnerable PHP version (CVE-2026-109618 / CVE-2026-109619) in current Docker imagesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
MISP/misp-docker#478 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
glpi-project/glpi#26045 ·
Los mantenedores suelen responder en 1 día