shadowdaoandClaude Opus 4.8 1a88baa95d fix(builder): deep-clone node data on id regeneration to avoid shared props
regenerateTreeIds shallow-copied each node's data, leaving data.props (and
data.custom) as the same object reference between the original node and its
duplicate/pasted copy. Craft.js's setProp mutates data.props in place, so
editing the duplicate's props silently mutated the original too. Deep-clone
data via structuredClone before applying id remaps so no mutable sub-object
is shared between original and regenerated nodes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 12:25:22 -07:00
S
Description
Visual drag-and-drop website builder using GrapesJS
6.5 MiB
0 Stars 6 Watchers 0 Forks
Languages
TypeScript 75.9%
JavaScript 12.3%
HTML 8.6%
CSS 2.6%
PHP 0.4%
Other 0.2%