From 0179639ef632dde53e38cf8ee89ae5679df99ed2 Mon Sep 17 00:00:00 2001 From: Lars Gebhardt-Kusche Date: Wed, 28 Jan 2026 23:50:59 +0100 Subject: [PATCH] asdasd --- config/current.ver | 2 +- public/assets/js/bridge/rte-editor.js | 5 +---- public/editor/bridge-core.js | 31 +++++++++++++++++++++++++++ 3 files changed, 33 insertions(+), 5 deletions(-) diff --git a/config/current.ver b/config/current.ver index e200604..3361394 100644 --- a/config/current.ver +++ b/config/current.ver @@ -1 +1 @@ -1.1.47 \ No newline at end of file +1.1.48 \ No newline at end of file diff --git a/public/assets/js/bridge/rte-editor.js b/public/assets/js/bridge/rte-editor.js index f91f519..da3f709 100644 --- a/public/assets/js/bridge/rte-editor.js +++ b/public/assets/js/bridge/rte-editor.js @@ -177,10 +177,7 @@ try { if (isText && component.components) { try { - const comps = component.components(); - if (comps && comps.length) { - component.components([]); - } + component.components(content); } catch {} } if (component.set) component.set('content', content); diff --git a/public/editor/bridge-core.js b/public/editor/bridge-core.js index 1696370..72f3588 100644 --- a/public/editor/bridge-core.js +++ b/public/editor/bridge-core.js @@ -437,6 +437,14 @@ if (viewHtml === modelHtml) return; try { syncing.add(target); + if (target.components) { + try { + const comps = target.components(); + if (!comps || !comps.length) { + target.components(viewHtml); + } + } catch {} + } if (target.set) target.set('content', viewHtml); target.trigger && target.trigger('change:content'); if (target.view && typeof target.view.render === 'function') { @@ -469,6 +477,13 @@ if (viewHtml === modelHtml && hasComps) return; try { syncing.add(target); + if (target.components) { + try { + if (!hasComps) { + target.components(viewHtml); + } + } catch {} + } if (target.set) target.set('content', viewHtml); target.trigger && target.trigger('change:content'); if (target.view && typeof target.view.render === 'function') { @@ -605,6 +620,14 @@ if (viewHtml === modelHtml) return; try { syncing.add(component); + if (component.components) { + try { + const comps = component.components(); + if (!comps || !comps.length) { + component.components(viewHtml); + } + } catch {} + } if (component.set) component.set('content', viewHtml); component.trigger && component.trigger('change:content'); if (component.view && typeof component.view.render === 'function') { @@ -669,6 +692,14 @@ const viewHtml = normalizeViewHtml(selectedEl.innerHTML || ''); if (!viewHtml) return; syncing.add(selected); + if (selected.components) { + try { + const comps = selected.components(); + if (!comps || !comps.length) { + selected.components(viewHtml); + } + } catch {} + } if (selected.set) selected.set('content', viewHtml); selected.trigger && selected.trigger('change:content'); if (selected.view && typeof selected.view.render === 'function') {