Reproducible demo link https://node-projects.github.io/web-component-designer-demo/index.htmlDescribe the bug I started a Framework to design webpages with webcomponents a few years ago, and now I found GrapeJS. Thought maybe we have the same goals and could benefit from each other? (Don't know how atm., but maybe) (l...
GJS Helper
Thank you for reaching out and for your interest in GrapesJS! It's great to see other innovative projects in the web design space. Your Web Component Designer looks very interesting, especially with its strong focus on web components, adva...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122 Reproducible demo link https://grapesjs.com/demo.html Describe the bug This may be by design, but it seems odd given the intent. How to reproduce the bug?Click preview (eye) What is the expected behavior? The p...
bernesto
Awesome @artf you are a rockstar!
artf
Thanks @bernesto there is actually an update to do on the demo side. I prepared the change and will fix it on the next release.
GJS Helper
You've identified a common point of confusion regarding GrapesJS's preview mode. The behavior you're observing, where component outlines (dashed borders) persist in preview mode, is indeed not the intended user experience for a clean, end-...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Arc Version 1.35.0 / Chromium Engine 123.0 Reproducible demo link https://grapesjs.com/demo.html Describe the bug How to reproduce the bug?Open dev toolsSelect a componentRun in console: What is the expected behavior? Shou...
artf
If you need to make a copy of traits I'd suggest simply doing this JSON.parse(JSON.stringify(editor.getSelected().getTraits())). I don't remember ever mentioning cloning traits in docs, so I'd avoid using non-public APIs.
GJS Helper
You've identified a legitimate bug in GrapesJS where calling component.get('traits').clone() throws a TypeError. This issue arises because the Traits collection's clone() method, which internally relies on Backbone.Collection.prototype.clo...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122 Reproducible demo link not applicable Describe the bug The GrapeJs Docs indicate that it is possible to add mixed content to the "content" property of a block (see https://grapesjs.com/docs/modules/Blocks.html#...
GJS Helper
You've accurately identified a discrepancy between the GrapesJS documentation and its TypeScript type definitions for the content property within BlockProperties. This is indeed a bug in the type definition, as the content property is desi...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122, Safari 17 Reproducible demo link https://grapesjs.com/demo.html Describe the bug How to reproduce the bug?Add link component, try editing the link text What is the expected behavior? The link text should be ed...
artf
Thanks for the report, will be fixed in the next release.
Mauzer93
I have the same issue recently.
GJS Helper
The issue you're encountering, where link titles are not editable, likely stems from a common misunderstanding of how GrapesJS handles different parts of a link component, specifically the distinction between the link's visible text and it...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122 Reproducible demo link N/A Describe the bug How to reproduce the bug?Checkout git onto a Windows 10+ machineBuild using provided procedure. What is the expected behavior? It should build the same as in a *inx s...
bernesto
Yeah, I did all the usual stuff. Lock files, updates, various ways of imports ({}, require, *, full path, etc.) Not sure why, but when I break stuff, I break it good. Always tier 2 or 3 support LMAO. I do believe the issue resides in CLI,...
bernesto
Good points. I have not tried the other versions of Node. I will give that a shot.
artf
Yeah build/serve are managed by the CLI (let's move the issue there) but I'm not sure what might be the problem (no Windows to test ๐ฅฒ)
GrapesJS version[X] I confirm to use the latest version of GrapesJSWhat browser are you using? Chrome v122Reproducible demo link https://jsfiddle.net/zwo0mdqf/5/Describe the bug How to reproduce the bug?Create valid inline block elements such as span, b, i, em, etc. that use multiple space, tab(s), or line breaks as w...
danstarns
Closing in favor of merged commit. https://github.com/GrapesJS/grapesjs/pull/5719
GJS Helper
The issue you're encountering with whitespace handling in GrapesJS, specifically with inline elements and the getHtml() output, stems from how HTML parsers and GrapesJS's component model treat different types of whitespace. Root Cause HTML...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122 Reproducible demo link https://jsfiddle.net/n38vbktg/ Describe the bug How to reproduce the bug?Create a component that propagates defaults that include layerable = true. Introduce a comment under the competent...
artf
Good catch @bernesto
GJS Helper
This is a valid bug report. The issue arises because GrapesJS's component system, particularly when layerable: true is propagated, attempts to process HTML comment nodes as if they were standard HTML elements. This leads to errors when met...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Version 122.0.6261.95 (Official Build) (64-bit) Reproducible demo link https://jsfiddle.net/n4x6L1v0/2/ Describe the bug How to reproduce the bug?Save component data from an earlier version of grapejs (0.18)Attempt...
artf
Thanks @mitcht but as I already mentioned the main component could never been textnode in the first place so it doesn't make sense to handle such a case in the core or have this issue open. Anyway, if the logic works for you just use it in...
GJS Helper
The issue you're encountering is a known breaking change related to the evolution of GrapesJS's internal component architecture, specifically how the root component of a frame is handled. In older versions (like 0.18), the default root com...
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122 Reproducible demo link https://jsfiddle.net/Lk2bwhp4/ Describe the bug How to reproduce the bug?Place the editor inside of a container, then programmatically resize the container's width. What is the expected b...
artf
Thanks @bernesto for the report but as we can't detect programmatic layout changes without impacting the performances, in this case, you have to update the editor layout manually via editor.refresh() (eg. in your example you would put the...
bernesto
Hi @artf, I actually had this accidentally mixed in the last pull request you accepted (src/canvas/model/Frame.ts). You might want to take a look at what I added and see if it is causing an issue. We have it in testing right now and haven'...
artf
I actually had this accidentally mixed in the last pull request you accepted and I actually removed it cause it seemed to be unrelated ๐คฃ Not a problem to add it back but consider that your example will work only because of the desktop Dev...