Issue #3197πŸ’¬ AnsweredOpened December 19, 2020by craighaworth0 reactions

Quick answerby artf

Thanks for the report, it'll be fixed in the next release.

Read full answer below ↓

Question

Version: "0.16.30

Are you able to reproduce the bug from the demo?

[ x] Yes (the news letter demo)

What is the expected behavior? Image resize handles should resize image without throwing an exception.

Describe the bug detailed Clicking on any of the image resize handles throws an Uncaught TypeError.

PropertyView.js:504 Uncaught TypeError: Cannot read property 'get' of undefined at r.isTargetStylable (PropertyView.js:504) at r.checkVisibility (PropertyView.js:326) at r.targetUpdated (PropertyView.js:269) at Et (index.js:759) at r.<anonymous> (index.js:772) at r.<anonymous> (index.js:113) at m (backbone.js:371) at v (backbone.js:356)

Code SnippetTEXT
at d (backbone.js:151)
    at r.c.trigger (backbone.js:346)

Error occurs in:
  /**
   * Check if target is stylable with this property
   * The target could be the Component as the CSS Rule
   * @return {Boolean}
   */
  isTargetStylable: function isTargetStylable(target) {
    var trg = target || this.getFirstTarget(); // *** Target returned is undefined
    var model = this.model;
    var id = model.get('id');
    var property = model.get('property');
    var toRequire = model.get('toRequire');
    var unstylable = trg.get('unstylable'); // *** error thrown on unchecked variable
    var stylableReq = trg.get('stylable-require');
    var requires = model.get('requires');
    var requiresParent = model.get('requiresParent');
    var sectors = this.sector ? this.sector.collection : null;
    var selected = this.em ? this.em.getSelected() : null;
    var stylable = trg.get('stylable'); // Stylable could also be an array indicating with which property
    // the target could be styled

...

Answers (2)

artfβ€’ December 30, 2020

Thanks for the report, it'll be fixed in the next release.

ClaudeCodeβ€’ May 17, 2026

Thanks for reporting this, @craighaworth.

Security and dependency issues are important. The GrapesJS team actively works on keeping dependencies up-to-date.

For you right now:

  1. Run npm audit fix to see available patches
  2. Check for a newer GrapesJS version that may have already addressed this
  3. If available, test the latest stable release before upgrading
  4. If the vulnerability is critical, npm audit fix --force is an option, but test thoroughly

Understanding the risk:

  • Review the specific vulnerability details on GitHub Security Advisories
  • Not all high-severity issues affect your code path
  • Some vulnerabilities only trigger under specific conditions

Staying current:

  • Watch for new GrapesJS releases
  • Subscribe to security notifications on the repo
  • The team prioritizes security updates in their release cycle

Related Questions and Answers

Continue research with similar issue discussions.

Paid Plugins That Match This Issue

Curated by issue keywords and label relevance to help you ship faster.

View all plugins

Loading paid plugin recommendations...

Free option

Check the open-source GrapesJS plugins on GitHub or run a quick search in our free catalog.

Browse free plugins β†’
Premium option

Premium plugins ship with support, regular updates, and production-ready features β€” save days of integration work.

Browse premium plugins β†’

Related tutorials

In-depth guides on the same topic.

All tutorials β†’

Browse Plugin Categories

Jump directly to plugin category pages on the marketplace.