From 222379e166c0bb338dcb74208340da4a2a516266 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Sun, 6 Dec 2020 16:33:06 +0100 Subject: [PATCH] Create symbols on clone --- src/dom_components/model/Component.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/dom_components/model/Component.js b/src/dom_components/model/Component.js index a4008da59..314c96554 100644 --- a/src/dom_components/model/Component.js +++ b/src/dom_components/model/Component.js @@ -585,6 +585,11 @@ const Component = Backbone.Model.extend(Styleable).extend( return isArray(this.get('__symbol')); }, + __isSymbolTop() { + const parent = this.parent(); + return this.__isSymbol() && parent && !parent.__isSymbol(); + }, + __getSymbolOf() { return this.get('__symbolOf'); }, @@ -972,6 +977,10 @@ const Component = Backbone.Model.extend(Styleable).extend( attr.classes = []; attr.traits = []; + if (this.__isSymbolTop()) { + opt.symbol = 1; + } + this.get('components').each((md, i) => { attr.components[i] = md.clone({ ...opt, _inner: 1 }); });