Browse Source

Update insert component in text

pull/4134/head
Artur Arseniev 5 years ago
parent
commit
014e970ab6
  1. 8
      src/dom_components/view/ComponentTextView.js
  2. 2
      src/utils/Sorter.js

8
src/dom_components/view/ComponentTextView.js

@ -136,7 +136,7 @@ export default ComponentView.extend({
} }
}, },
insertAtCursor(content) { insertComponent(content) {
const { model, el } = this; const { model, el } = this;
const doc = el.ownerDocument; const doc = el.ownerDocument;
const selection = doc.getSelection(); const selection = doc.getSelection();
@ -151,10 +151,11 @@ export default ComponentView.extend({
model.components().forEach(cmp => { model.components().forEach(cmp => {
if (cmp === textModel) { if (cmp === textModel) {
const type = 'textnode';
const cnt = cmp.get('content'); const cnt = cmp.get('content');
newCmps.push(cnt.slice(0, offset)); newCmps.push({ type, content: cnt.slice(0, offset) });
newCmps.push(content); newCmps.push(content);
newCmps.push(cnt.slice(offset)); newCmps.push({ type, content: cnt.slice(offset) });
} else { } else {
newCmps.push(cmp); newCmps.push(cmp);
} }
@ -162,7 +163,6 @@ export default ComponentView.extend({
const result = newCmps.filter(Boolean); const result = newCmps.filter(Boolean);
const index = result.indexOf(content); const index = result.indexOf(content);
console.log({ newCmps, index, content });
cmps.reset(result); cmps.reset(result);
return cmps.at(index); return cmps.at(index);

2
src/utils/Sorter.js

@ -1079,7 +1079,7 @@ export default Backbone.View.extend({
} }
if (this.isTextableActive(srcModel, trgModel)) { if (this.isTextableActive(srcModel, trgModel)) {
created = trgModel.getView().insertAtCursor(modelToDrop); created = trgModel.getView().insertComponent(modelToDrop);
} else { } else {
created = targetCollection.add(modelToDrop, opts); created = targetCollection.add(modelToDrop, opts);
} }

Loading…
Cancel
Save