Tengo un requisito que me permite usar selectores para determinar si un elemento es soltable. Por ejemplo: ! imagen El componente "hijo" debe estar dentro de un componente "padre", sin embargo, si el componente hijo contiene un atributo ref, solo puede arrastrarse a otros contenedores padres que coincidan con el mismo...
@artf tienes alguna pregunta sobre esta característica o sobre el enfoque adoptado en la PR?
ClaudeCode
Gracias por informar de esto, @rywilson28. Gran sugerencia sobre FEAT: ¡Permite la configuración dinámica droppable usando una función! Aunque esta función específica aún no está en la API principal, existen varias formas de lograr un comp...
Hola artf, me gustaría darte las gracias por crear una herramienta tan potente para crear CMS personalizados. Estoy implementando una función de nueva página en mi proyecto, así que estoy usando tu referencia para cambiar entre componentes, pero me da un error. ¿Podrías indicarme cómo construir una nueva página al hac...
Ju99ernaut
Creo que los arrays no son el mejor método para almacenar objetos de página, así que ejecutar operaciones de array para conseguir la página más cargarla probablemente sea demasiado para tu pila de llamadas. Deberías considerar cargar las p...
artf
No sé qué está pasando por tu parte, pero te sugeriría que estés atento al #3206, ya que el gestor de páginas integrado está casi listo (actualizaré ese número).
ClaudeCode
Gracias por informar de esto, @pranay2210. ¡Gran sugerencia sobre Cambiar entre componentes da un error de tamaño máximo de pila de llamadas! Aunque esta función específica aún no está en la API principal, existen varias formas de lograr u...
Hola, chicos, estoy creando un generador de documentos a través de grapesjs, me gustaría insertar números de página como "Página 1 de 5" al final de cada página. Mis plantillas iniciales tienen una clase de envolvimiento llamada .page, de hecho puedo clonar una página debajo de otra para conseguir más páginas. ¿Tienes...
devtechk
¡Hola a todos! ¡He encontrado la manera de alcanzar mi objetivo! ¡Propiedad CSS! Aquí está mi código de trabajo (puedes llamar a la etiqueta de paginación como quieras). Fuente: https://www.pagedmedia.org/paged-js/ HTML: ' <clase de pagina...
ClaudeCode
Gracias por informar de esto, @devtechk. ¡Gran sugerencia sobre ¿Generar números de páginas, alguna idea?!'. Aunque esta función específica aún no está en la API principal, existen varias formas de lograr un comportamiento similar. Usando...
ADVERTENCIA LEE y SIGUE los siguientes 3 pasos, luego ELIMÍNALOS antes de publicar el númeroSeguir las Directrices de CONTRIBUCIÓN https://github.com/artf/grapesjs/blob/master/CONTRIBUTING.mdHaz una BÚSQUEDA rápida primero, para ver si alguien más no abrió el mismo problemaTodas las afirmaciones/preguntas relativas de...
NagarRahul
@artf ! imagen cuando arrastro el botón es pasar. Quiero arreglarlo. No debería gastarse al arrastrar un botón nuevo. Hace scroll de zapato después del desbordamiento.
artf
Depende del estilo del componente (por ejemplo, usar un bloque en línea de pantalla para ese botón podría arreglarlo)
ClaudeCode
Gracias por informar de esto, @NagarRahul. Gran sugerencia sobre FEAT: @How fijar el tamaño del contenedor cuando arrastramos el elemento dentro del contenedor, el contenedor se gastará según el elemento arrastrado hijo. Cómo podemos dimen...
¿Qué intentas añadir a GrapesJS? Versiones no minificadas para cada versión Describe tu solicitud de función detallado Estoy trabajando con métodos más complejos utilizando el Gestor de Componentes. La última versión que tuvo una versión de 'depuración' sin minificar fue la 0.15.xx. ¿Podríais publicar las versiones no...
artf
Hola @mitcht el paquete actual incluye el archivo minificado pero también su mapa fuente, así que puedes ver fácilmente el código original de las herramientas de desarrollo (más sobre ello aquí), por lo tanto no hay razón para incluir tamb...
ClaudeCode
Gracias por informar de esto, @mitcht. El problema con FEAT: Versión no minificada en la última versión parece ser una condición de carrera o un problema de sincronización de gestión de estado. Esto suele ocurrir cuando los eventos del cic...
Estoy intentando que Grapejs funcione con Vue.js y no tengo suerte, estoy siguiendo el proceso de inicio pero no consigo que funcione bien. Hasta ahora lo he añadido a la sección 'montado()' y he conseguido que aparezcan algunos botones con bloques y se añadan, sin embargo, no he tenido suerte consiguiendo que la secc...
uchoaaa
Echa un vistazo a este problema, quizá ayude: https://github.com/artf/grapesjs/issues/275
artf
Hola @joshk132 sinceramente el código se ve bien, ¿puedes crear una demo reproducible (en algo como Codesandbox)?
joshk132
@artf he conseguido que funcione donde aparecen los paneles, pero ahora no se muestra correctamente. La solución que tuve que hacer fue cambiar para usar el código que aparece abajo. Básicamente tuve que tener "editor" como variable que ha...
Después de NPM I podemos ver que el nivel de vulnerabilidades es inaceptable. Añadimos 646 paquetes de 383 colaboradores y auditaron 762 paquetes en 7.892 Se encontraron 724 vulnerabilidades (353 bajas, 23 moderadas, 348 altas) Ejecuta 'NPM Audit Fix' para corregirlos, o 'NPM Audit' para más detalles Estoy intentando...
AmtechInnovarch
Por eso los programadores veteranos con décadas de experiencia desaprueban JS como lenguaje de back-end. Javascript no está pensado para ser un lenguaje de lado servidor, y estos paquetes de nodos crean vulnerabilidades que provocan que lo...
KernelDeimos
¿GrapesJS tiene una capa del lado del servidor?
KernelDeimos
Javascript no está pensado para ser un lenguaje de lado servidor, y estos paquetes de nodos crean vulnerabilidades que provocan que los servidores sean hackeados. ¿Estás insinuando que Javascript es el único lenguaje donde las dependencias...
¿Qué intentas añadir a GrapesJS? Soporte para editores de texto enriquecido con APIs basadas en promesas. Describe tu solicitud de función detallado Los métodos 'Editor.create' y 'Editor.destroy' de CKEditor5 devolven una 'Promesa' que se resuelve cuando el editor ha sido completamente creado o destruido. Esto causa u...
artf
Sí, tiene sentido, probablemente intentaría comprobar si es posible hacer que los métodos activados/desactivables (desde ComponentTextView) sean asíncronos por defecto sin romper nada, pero comprobar si son entonces siempre es una opción.
artf
Esto ya debería ser posible.
ClaudeCode
Gracias por informar de esto, @martijnc. Gran sugerencia sobre FEAT: ¡Añadir soporte para promesas de API personalizada de RTE! Aunque esta función específica aún no está en la API principal, existen varias formas de lograr un comportamien...
ADVERTENCIA LEE y SIGUE los siguientes 3 pasos, luego ELIMÍNALOS antes de publicar el númeroSeguir las Directrices de CONTRIBUCIÓN https://github.com/artf/grapesjs/blob/master/CONTRIBUTING.mdHaz una BÚSQUEDA rápida primero, para ver si alguien más no abrió el mismo problemaTodas las afirmaciones/preguntas relativas de...
Andrew-Chen-Wang
Un solo clic puede ser molesto al arrastrar bloques. Si ya has seleccionado un bloque, aún tienes que hacer doble clic. Si no seleccionaste un bloque, puedes simplemente hacer doble clic en el bloque para editar el texto. Creo que eso ya e...
fahad157
@Andrew-Chen-Wang: Sí, es correcto, pero en mi caso quiero editar con un solo clic, si es posible, por favor guíaos.
¿Qué intentas añadir a GrapesJS? El panel lateral parece arrugado. A menos que tengas un sobremesa grande, prefiero que las imágenes del panel de bloques no se desvíen hacia un lado. Además, los iconos de arriba, por ejemplo el icono de "conseguir un nuevo bloque", están simplemente ocultos a menos que tengas una pant...
Ju99ernaut
La idea es maximizar el área cubierta por el lienzo, pero puedes cambiar fácilmente el tamaño de los paneles con CSS personalizado.
Andrew-Chen-Wang
Desde luego, no creo que la demo deba quedar tan arrugada así :P Supongo que es una opinión personal, entonces.
ClaudeCode
Gracias por informar de esto, @Andrew-Chen-Wang. Gran sugerencia sobre FEAT: ¡Haz que el ancho del panel lateral sea del 20%! Aunque esta función específica aún no está en la API principal, existen varias formas de lograr un comportamiento...