Volver a la wiki

Editor Rich-Text del Cuaderno (TipTap)

Descripción

El Cuaderno es el módulo de notas estructuradas de CreaRack Pro. Su editor de contenido está construido sobre TipTap v3 (ProseMirror bajo el capó), expuesto a través del componente NoteEditor.tsx. Permite editar notas con formato enriquecido: texto, listas, tablas, tareas, bloques de código, comandos slash y más.

Componentes principales

ComponenteRutaResponsabilidad
NoteEditorsrc/components/notebook/NoteEditor.tsxOrquestador principal del editor
Toolbarsrc/components/notebook/Toolbar.tsxBarra de herramientas fija superior
TableBubbleMenusrc/components/notebook/TableBubbleMenu.tsxMenú flotante contextual para tablas
SlashMenusrc/components/notebook/slashCommands.tsxPaleta de comandos / al estilo Notion

Extensiones TipTap activas

@tiptap/extension-bubble-menu        v3.23.1  (bump en commit 61ccda3)
@tiptap/extension-color              v3.23.1
@tiptap/extension-link               v3.22.5
@tiptap/extension-placeholder        v3.22.5
@tiptap/extension-table              (incluye Table, TableRow, TableCell, TableHeader)
tiptap-markdown                      (serialización Markdown ↔ TipTap)

Capacidades del editor (estado actual)

Listas

Corregidas en el commit 61ccda3 (marcadores anteriormente invisibles por reset CSS de Astro/Tailwind):

TipoCSS forzado
ul nivel 1list-style-type: disc
ul nivel 2list-style-type: circle
ul nivel 3list-style-type: square
ollist-style-type: decimal
lidisplay: list-item (explícito contra el reset)
li::markercolor: var(--fg-muted)

Las task lists ([data-type="taskList"]) quedan excluidas de estos estilos con :not([data-type="taskList"]) — usan display: flex y checkbox personalizado.

Tablas

Comandos slash

Activados escribiendo / en una línea vacía. Extensión personalizada en slashCommands.tsx.

Persistencia

Las notas se serializan a Markdown mediante tiptap-markdown y se persisten a través de la función onPersist inyectada en NoteEditor. La lógica de almacenamiento (Cloudflare D1 / API) es responsabilidad del consumidor del componente.

Historial de cambios relevantes

CommitCambio
61ccda3 (2026-05-08)Fix listas invisibles + TableBubbleMenu + resize visible de columnas

Notas de arquitectura

Véase también

Subir