GrapesJS Issues

3,464 parsed GitHub issues β€” 370 solved Β· 90 open. Search, filter and explore battle-tested answers.

43 issues found

πŸ” keyboard
#3548Jun 18, 2021by tannguyen972 answers
0 reactions

Cann't copy with "control + C" when elements have attribute tabindex = -1

Hi everyone! i have a problem with custom component. i was created a modal component have attribute tabindex = -1 and i can't use key Ctrl + C to copy this component. Pls helps me. thanks very much !!!

artf

Just remove that attribute in your component view (eg. in onRender method) in that way you'll still get the attribute in your final HTML

GJSBlock

Thanks for reporting this, @tannguyen97. Thanks for sharing your report about cann't copy with "control + C" when elements have attribute tabindex = -1. To help the team investigate and prioritize this: Please provide: A minimal reproducib...

#3496May 28, 2021by anlumo4 answers
1 reactions

Mark Component as Dirty

What are you trying to add to GrapesJS? Component should be able to mark themselves as dirty, triggering the onbeforeunload warning message. Describe your feature request detailed I have a (custom) text component where the user can enter arbitrary text. I'm storing the data on my server, and I want autosave. However,...

anlumo

I worked around this by completely disabling the onbeforeunload handling and rolling my own.

artf

The editor has editing property which changes any time RTE is enabled/disabled, so I guess, in your case, this should work

anlumo

Wouldn't this onbeforeunload handler be overwritten afterwards by the snippet I referenced above?

#3337Mar 12, 2021by wfcheng4 answers
0 reactions

Use arrow keys to move blocks in canvas configured in absolute positioning mode

Hi, I am building a solution for students to tell their high school experiences as slides built from grapejs editor (similar to canva), and have configured the editor in 'absolute' mode, which works wonderfully. However I can't seem to find a way to move the dropped block in the editor with the arrow keys. I am aware...

artf

No, unfortunately, for such a case, the custom keymap would be the only solution. You should just get the selected component and update its style.

michaelhofer

I have found a working solution for this as follows: The commands are being added as follows: The moveSelectedElements method just does the following: However, when moving the elements with arrow keys, the canvas scrolls as well, which is...

sathudeva7

keymaps.add('ns:my-keymap', '⌘+s, ctrl+s', 'some-gjs-command', { // Prevent the default browser action prevent: true, });

#3325Mar 9, 2021by mmotov4 answers
0 reactions

JSON.stringify(this.editor.getComponents()) Error

Version: 0.16.44 Hi there! I have remote storage for pages, and recently I faced an issue when saving page, JSON.stringify(editor.getComponents()) started to throw error Uncaught TypeError: e[M].getId is not a function. I investigated the already saved JSON representation of the page and found out that it fails on thi...

yucomds

Same error here ... do you have a solution? [EDIT] Downgrading seems to be the only solution for now

josfh2005

Same problem here, if I preprocess the components and remove that attribute (__symbol) before load the Editor the template works fine. Is the a way @artf to disable the symbols for now?

artf

Yeah unfortunately the previous version of grapesjs had a bug that created symbols involuntary. In the current version, the bug is fixed and symbols are disabled, but unfortunately, this still happens if you try to load a component with a...

#3320Mar 7, 2021by alumpe1 answer
0 reactions

Typo for word "layer" in german language support

In the german locale file there is a typo in line 75 for the word "layer". Instead of layer: 'Evene' it should be layer: 'Ebene' someone must have accidently hit v instead of b on the keyboard when translating it. I am creating a pull request for it right now.

GJSBlock

Thanks for reporting this, @alumpe. Thanks for sharing your report about Typo for word "layer" in german language support. To help the team investigate and prioritize this: Please provide: A minimal reproducible example (CodeSandbox/JSFidd...

#3286Feb 23, 2021by abulka3 answers
0 reactions

Codemirror custom keys and addons

Is there a way of adding shortcut keys and add-ons for the built in Codemirror editor? I especially want a commenting hot key. There are various plugins that use the Grapesjs editor, incl. https://github.com/artf/grapesjs/issues/324#issuecomment-330571539 and the custom html code plugins https://github.com/Ju99ernaut/...

abulka

I finally got the Grapesjs bundled commentRange to work - it must be invoked directly cm.commentRange not via cm.execCommand. Furthermore, it takes parameters. Thus I was able to get some commenting working, as long as you select the area...

artf

Yeah, I think it's not a problem exposing it in CodeMirrorEditor.js

GJSBlock

Thanks for reporting this, @abulka. Security and dependency issues are important. The GrapesJS team actively works on keeping dependencies up-to-date. For you right now: Run npm audit fix to see available patches Check for a newer GrapesJS...

#3263Feb 4, 2021by san-1232 answers
0 reactions

Remote storage issues

Hi, grapeJs initiated, I normally load function call and append content to gjs div, $.ajax({ type: "GET", url: '' processData: false, contentType: 'application/json; charset=utf-8', DataType: "Json", $.each(data, function (key, data) { $('#gjs').append(html); } }); My issues, After save content, reload same function c...

artf

https://grapesjs.com/docs/modules/Storage.html

GJSBlock

Thanks for reporting this, @san-123. Great question about Remote storage issues. The recommended approach with GrapesJS is to use the event-driven API. Start here: Check the GrapesJS documentation for your specific module Look for the on()...

#3215Jan 4, 2021by san-1232 answers
0 reactions

Content loading issues from remote database

Hi, I created Grapejs Pagebuilder. I have two links one for pagebuilder1 and another for PAgeBuilder2. Both are redirected to grpaejs editor and loading content from database based on id. When I clicking by PageBuilder1 goes to index.html?id=1 (load saved content from database) When I clicking by PageBuilder2 goes to...

artf

Follow this guide https://grapesjs.com/docs/modules/Storage.html#setup-remote-storage

GJSBlock

Thanks for reporting this, @san-123. Great suggestion about Content loading issues from remote database! While this specific feature isn't yet in the core API, there are several ways to achieve similar behavior. Using the event system: Alt...

#3206Dec 23, 2020by jrkd4 answers
6 reactions

Page Manager Plugin

Feature: The ability to create multiple pages in Grapesjs. Functional design Globally:[ ] Include a link to the right of 'Device [dropdown list]' in the top banner that says 'Current Page: <page-name>'[x] Include a new menu item to the right of 'Blocks' in the right column. The icon will be something like the FA pages...

artf

The Pages module is now merged https://github.com/artf/grapesjs/pull/3411 and the new version will be soon released. A simple demo using the Pages API: https://codepen.io/artf/pen/XWpJQoY

artf

Sounds great, I really like the idea of having this one as a plugin, so if you think we need something to add (eg. some event) to make it work better, let me know.

jrkd

Got the core of this functionality working this arvo. @artf Let me know if this is still desired and I'll spend some more time on it in Jan. Note to self, TODO: add/remove page actions, visual tweaks, integrate with the storage manager & r...

#3193Dec 18, 2020by jlong-crestron4 answers
0 reactions

Change of current internal object store to allow for relation mappings instead of current indexable container implementation

What are you trying to add to GrapesJS? Currently newly instantiated editor instances are added to a indexable collection where the user must manage the relationship of these editors in their implementation. Instead there should be a managed collection where the user can provide a key value which will then be mapped t...

artf

I'm not sure if I got it right, can you illustrate somehow the current behavior and your proposal?

jlong-crestron

Basically, I am looking for a change of the exposed list that aggregates the editor instances on initialization so changing editors from a list to a map with a new property on the init configuration object in the resemblance of editorInsta...

no-response[bot]

This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take ac...

Browse all topics