GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? Chrome Version 114.0.5735.199 (Official Build) (64-bit)Reproducible demo link N/ADescribe the bug How to reproduce the bug?Drop this component <div class=\"flex items-center rounded shadow-md overflow-hidden max-w-xl relativ...
artf
Probably in the first week of August
artf
Hi @joukhar is it happening with the latest version? I'm able to see nulls in the export code if I use your exact JSON example (that should be fixable), but I'm unable to generate those textnodes with nulls by using your HTML example, can...
joukhar
thanks for the replay, if you need demo so please give me some time until i make one , i will comment again when im finished it the problem happens only when u store it and load it, but when u drop the component for the first time nothing...
GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? Safari 16.5Reproducible demo link https://grapesjs.com/demo.html https://staubgeborener.de/Describe the bug I was trying out the official demo. I changed nothing, but simply click the view code button and download the html a...
artf
This is not related to the core but simply a missing meta tag in the exported HTML from the demo.html If you want to submit a PR I'll be happy to merge it there
GJS Helper
The issue you're experiencing is not a bug in GrapesJS itself, but rather a common oversight when deploying responsive web pages. The root cause is the absence of the viewport meta tag in the <head> section of your exported HTML file. Root...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? v9.2 Reproducible demo link https://jsfiddle.net/szLp8h4n Describe the bug I am using it in vue3 project when I want to add new components , page is hanged and not response this is my code : Code of Conduct [X] I agree to...
gxanshu
Hi there! ๐ I don't believe this is a bug with GrapesJS. I checked your reproduction link and tried adding a component to the canvas, and it worked perfectly fine for me without any issues. ๐
artf
You have to bypass Vue's Proxy observers https://github.com/GrapesJS/grapesjs/issues/4497#issuecomment-1213078160
GJS Helper
The issue you're encountering, where the page hangs when programmatically adding new components, stems from an incorrect approach to component creation and attachment within GrapesJS. You're essentially trying to add a component that is al...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome latest Reproducible demo link https://codesandbox.io/s/withered-bush-wv29dx?file=/index.js Describe the bug How to reproduce the bug?... create multi pages in grapesjs.init()... check the styles of each page What is...
artf
This is intentional and I'm not planning to change this behaviour as you can easily create specific CSS selectors if you need different styles per page. The big benefit of this approach is to allow reusing selectors across pages.
hasan-aa
I think I'm experiencing an issue with this approach. I'm saving the pages to server like this: and loading them like this in a loop: The css rules targeting ids are working fine, but the rules with a class are duplicating even when loaded...
GJS Helper
The issue you're encountering with duplicated CSS across multiple pages in GrapesJS is a common point of confusion related to how GrapesJS manages styles globally within an editor instance. By default, GrapesJS's CssComposer (the component...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v114 Reproducible demo link https://jsfiddle.net/rmadeiraneto/t659usxv/39/ Describe the bug How to reproduce the bug?Go to the blocks list and drag the custom component "example" to the canvasThree elements that are...
artf
Thanks @rmadeiraneto for the report. Yeah, unfortunately that's an issue if you're mutating arrays/objects properties in that way and to avoid that you have 2 options:Avoid direct mutations (assign new references when you have to update th...
rmadeiraneto
@artf using defaults as a function works, thanks for quick response and for providing the alternative fix on this issue. About the first suggestion, I think it's not about people should mutate or not the object, because we're talking about...
GJS Helper
The issue you've described is a common JavaScript pitfall related to how mutable objects (like arrays and objects) are handled when assigned as default values. In GrapesJS, when you define a component with defaults that include arrays or o...
GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? Version 113.0.5672.126 (Build officiel) (64 bits)Reproducible demo link https://grapesjs.com/demo-newsletter-editor.htmlDescribe the bug How to reproduce the bug?Go on demo website : https://grapesjs.com/demo-newsletter-edit...
artf
Thanks @acantepie please open the issue in the proper repo as this is not core related one
GJS Helper
The issue you're encountering, where the Rich Text Editor (RTE) toolbar in GrapesJS doesn't correctly refresh its state (e.g., bold, italic buttons) when switching between multiple text components, is a known synchronization challenge. Thi...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Reproducible demo link https://codesandbox.io/s/adoring-margulis-873kdv Describe the bug Context Move component method doesn't work as expected. This piece of code doesn't work as expected. this piece of code should...
krishnaeverestengineering
Fix for this issue: https://github.com/GrapesJS/grapesjs/pull/5176
artf
Thanks @krishnaeverestengineering but this is actually the expected behaviour for moving the component inside the same parent. This is because the at should account also for the index of the component itself. So, if you try to move "Compon...
krishnaeverestengineering
Thanks @krishnaeverestengineering but this is actually the expected behaviour for moving the component inside the same parent. This is because the at should account also for the index of the component itself. So, if you try to move "Compon...
GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? Chrome 114.0.5735.110 (Official Build) (64-bit)Reproducible demo link https://grapejs.com *EDIT: This site / domain serves malware, it is missing the "s" in the real grapesjs.com domainDescribe the bug Upon visiting grapejs....
tomsleeter
This is intermittent, I'm now getting grapejs.com homepage as expected
tomsleeter
Okay this was my mistake, I mis-typed the URL / domain name-- missing the "s" in grapesjs.com. Visiting URL grapejs.com is a bogus address with a bunch of malware / popups I believe the incorrect domain redirects to grapesjs.com every othe...
GJS Helper
It appears you've encountered a malicious website exploiting a common typo in the GrapesJS domain name. Thank you for reporting this critical observation. Root Cause and Explanation: The issue you've described is not a bug or vulnerability...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Version 112.0.5615.137 (Official Build) (arm64) Reproducible demo link https://jsfiddle.net/yhj6qa1u/6/ Describe the bug How to reproduce the bug?Select a component and add some style using Style Manager.Use editor.Css.set...
artf
Hi @FaisalShaikhHA this is expected behaviour but I guess the documentation of setRule is a bit misleading. The rule is actually updated (it doesn't create a new one with the same selector) but styles are simply replaced. This is what you...
FaisalShaikhHA
Thanks @artf for the clarification
GJS Helper
The behavior you're observing with editor.Css.setRule is not a bug but rather how the GrapesJS CSS Composer API is designed to handle rule updates. When you call editor.Css.setRule(selector, styleObject), if a rule with that exact selector...
GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? AllReproducible demo link NoneDescribe the bug Following the documentation on creating a plugin with the usage of typescript and using the "usePlugin" function to import the plugin into the editor, the browser displays the f...
sneddobuilds
Getting the same issue.
GJS Helper
The TypeError: g.usePlugin is not a function error in GrapesJS typically arises from a misunderstanding of how plugins are registered and loaded, specifically confusing the global grapesjs library object with an editor instance. Root Cause...