¿Hay alguna forma de añadir teclas de acceso directo y complementos para el editor Codemirror integrado? Especialmente quiero una tecla rápida para comentar. Hay varios plugins que usan el editor Grapesjs, incluyendo https://github.com/artf/grapesjs/issues/324#issuecomment-330571539 y los plugins personalizados de cód...
abulka
Por fin he conseguido que el 'commentRange' incluido en Grapesjs funcione: debe invocarse directamente en 'cm.commentRange', no a través de 'cm.execCommand'. Además, toma parámetros. Así que pude hacer que funcionara algo de comentario, si...
artf
Sí, creo que no es un problema exponerlo en CodeMirrorEditor.js
ClaudeCode
Gracias por informar de esto, @abulka. Los problemas de seguridad y dependencias son importantes. El equipo de GrapesJS trabaja activamente para mantener las dependencias actualizadas. Para ti ahora mismo: Ejecutar 'npm audit fix' para ver...
Hola. Esta pregunta ya se ha hecho dos veces (aquí y aquí) pero nunca ha recibido respuesta. ¿Hay alguna forma de añadir '<!DOCTYPE html>' como inicio del iframe de lienzo para que el iframe esté en modo estándar? Necesito esto porque intento usar tinyMce como RTE personalizado, y tinyMce requiere modo estándares.
artf
En la próxima versión, añadiré un nuevo asistente para eventos que permitirá editar contenido iframe antes de cargar: '''js editor.on('frame:load:before', ({ el }) => { const doc = el.contentDocument; doc.open(); doc.write("<!DOCTYPE html>...
bgrand-ch
Hola, Para futuras preguntas o problemas técnicos, que no sean errores, la pestaña Discussions de GitHub es el lugar ideal. No olvides cerrar este problema si se resuelve o escribir un nuevo mensaje detallado en la categoría Discussiones -...
artf
No realmente, pero estoy abierto a soluciones para hacerlo personalizable.
https://github.com/artf/grapesjs/blob/b199083f6a6128ecff41d20865493294f71fe0a1/src/block_manager/view/BlocksView.js#L142 Esta línea hace que el bloque se vuelva a renderizar, ya que el renderizado es escuchar eventos de 'cambio', pero dado que esta propiedad no afecta al renderizado del bloque en sí, el conjunto deber...
ClaudeCode
Gracias por informar de esto, @mig8447. Gracias por compartir tu informe sobre El renderizado en bloques está siendo llamado dos veces. Para ayudar al equipo a investigar y priorizar esto: Por favor, proporciona: Un ejemplo mínimo reproduc...
https://github.com/artf/grapesjs/blob/b199083f6a6128ecff41d20865493294f71fe0a1/src/block_manager/view/BlocksView.js#L186 El Administrador de Bloques busca una propiedad de 'renderizado' en el modelo para saber si la vista ya se ha renderizado o no, pero este método no establece dicha propiedad y, por tanto, esta funci...
mig8447
@RutujaBadbe Este es exactamente el cambio que necesitas: https://github.com/artf/grapesjs/commit/640661b0a44e5e2857b615559c1db27da3e17a6c
artf
Sí, tiene sentido, gracias
RutujaBadbe
https://github.com/artf/grapesjs/blob/b199083f6a6128ecff41d20865493294f71fe0a1/src/block_manager/view/BlocksView.js#L186El Administrador de Bloques busca una propiedad de 'renderizado' en el modelo para saber si la vista ya se ha renderiza...
CleanID sigue sin funcionar para el código MJML, ni siquiera en la última versión de grapesJS (0.16.41) Está relacionado con este tema cerrado: https://github.com/artf/grapesjs/issues/3276 Esta función no lee las etiquetas MJML: los 'attrs' están vacíos, y no encuentro por qué...
artf
El problema del id debería haberse resuelto ya en la última versión del plugin de mjml
ClaudeCode
Gracias por informar de esto, @ThomasPof. Buena pregunta sobre la función CleanId que no funciona con código MJML. El enfoque recomendado con GrapesJS es usar la API orientada a eventos. Empieza aquí: Consulta la documentación de GrapesJS...
¿Qué intentas añadir a GrapesJS? Intento estilizar GrapesJS y posicionar sus elementos (paneles, botones, lienzo, etc.), es molesto anular todos los elementos de estilo. Describe tu solicitud de función Un GrapesJS sin renderizado.Añadir un elemento específico de GrapesJS (paneles, botones, lienzo, etc.) en cualquier...
ClaudeCode
Gracias por informar de esto, @bgrand-ch. ¡Gran sugerencia sobre HAZAÑA: Renderizado! Aunque esta función específica aún no está en la API principal, existen varias formas de lograr un comportamiento similar. Usando el sistema de eventos:...
Estoy creando un componente personalizado de 'textarea' y quiero que se comporte como el componente 'text' incorporado, de modo que al editar el textnode en el lienzo de grapesjs se actualice el 'textnode' que se encuentra en '.components'. Y quiero que el componente se exporte correctamente como HTML, por ejemplo, '<...
artf
Hola @abulka, mientras la edición se realiza en la vista, deberías actualizar el modelo de componentes una vez que la vista esté actualizada. Así que debería funcionar con algo así '''js modelo: { ... }, Vista: { eventos: { entrada: 'handl...
ClaudeCode
Gracias por informar de esto, @abulka. El problema con ¿cómo hacer que la edición de nodos de texto actualice el contenido de los componentes? parece ser una condición de carrera o un problema de sincronización de gestión de estado. Esto s...
Versión: Reproducido en codepen a continuación usando 0.16.34 (devuelto de https://unpkg.com/grapesjs) y 0.16.22 en un proyecto Preact Describe el error detallado Un componente personalizado de GrapesJS llama a la función "onRender" de su vista cuando el componente se renderiza en el lienzo. Según la documentación: !...
ClaudeCode
Gracias por informar de esto, @Dmurl5. El problema con Vista de componentes personalizados en Render se llama early parece ser una condición de carrera o un problema de sincronización de gestión de estado. Esto suele ocurrir cuando los eve...
ADVERTENCIA LEE y SIGUE los siguientes 3 pasos, luego ELIMÍNALOS antes de publicar el númeroPlantilla de inicio de JSFiddle https://jsfiddle.net/szLp8h4nPlantilla de inicio de CodeSandbox https://codesandbox.io/s/1r0w2pk1vl *Versión:0.16.3 Puedes obtener la versión escribiendo 'grapesjs.version' en la consola ¿Puedes...
artf
Hola Franco, puedes definir el tamaño del fotograma cambiando dispositivos
ClaudeCode
Gracias por informar de esto, @FrancoFasano. El problema con Tamaño PDF por defecto: carta estadounidense ¿Cómo configurar A4? parece ser una condición de carrera o un problema de sincronización de gestión estatal. Esto suele ocurrir cuand...
Este problema es sobre el código MJML, pero creo que esto tiene más que ver con grapesjs que con grapesjs-mjml Hay una función que elimina identificadores innecesarios en 'src/code_manager/model/HtmlGenerator.js'. Esta función funciona bien con etiquetas HTML, pero no con etiquetas MJML. Lo que he encontrado es
Gracias por informar de esto, @ThomasPof. Gracias por compartir tu informe sobre la función CleanId que no funciona con código MJML. Para ayudar al equipo a investigar y priorizar esto: Por favor, proporciona: Un ejemplo mínimo reproducibl...