prosemirror-view 1.33.5 → 1.33.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 1.33.6 (2024-04-30)
2
+
3
+ ### Bug fixes
4
+
5
+ Make sure the content slice stored for an in-editor drag is the one that was transformed by `transformCopied`.
6
+
1
7
  ## 1.33.5 (2024-04-22)
2
8
 
3
9
  ### Bug fixes
package/dist/index.cjs CHANGED
@@ -2602,7 +2602,8 @@ function serializeForClipboard(view, slice) {
2602
2602
  }) || slice.content.textBetween(0, slice.content.size, "\n\n");
2603
2603
  return {
2604
2604
  dom: wrap,
2605
- text: text
2605
+ text: text,
2606
+ slice: slice
2606
2607
  };
2607
2608
  }
2608
2609
  function parseFromClipboard(view, text, html, plainText, $context) {
@@ -3366,10 +3367,11 @@ handlers.dragstart = function (view, _event) {
3366
3367
  var desc = view.docView.nearestDesc(event.target, true);
3367
3368
  if (desc && desc.node.type.spec.draggable && desc != view.docView) node = prosemirrorState.NodeSelection.create(view.state.doc, desc.posBefore);
3368
3369
  }
3369
- var slice = (node || view.state.selection).content(),
3370
- _serializeForClipboar2 = serializeForClipboard(view, slice),
3370
+ var draggedSlice = (node || view.state.selection).content();
3371
+ var _serializeForClipboar2 = serializeForClipboard(view, draggedSlice),
3371
3372
  dom = _serializeForClipboar2.dom,
3372
- text = _serializeForClipboar2.text;
3373
+ text = _serializeForClipboar2.text,
3374
+ slice = _serializeForClipboar2.slice;
3373
3375
  event.dataTransfer.clearData();
3374
3376
  event.dataTransfer.setData(brokenClipboardAPI ? "Text" : "text/html", dom.innerHTML);
3375
3377
  event.dataTransfer.effectAllowed = "copyMove";
package/dist/index.js CHANGED
@@ -2753,7 +2753,7 @@ function serializeForClipboard(view, slice) {
2753
2753
  firstChild.setAttribute("data-pm-slice", `${openStart} ${openEnd}${wrappers ? ` -${wrappers}` : ""} ${JSON.stringify(context)}`);
2754
2754
  let text = view.someProp("clipboardTextSerializer", f => f(slice, view)) ||
2755
2755
  slice.content.textBetween(0, slice.content.size, "\n\n");
2756
- return { dom: wrap, text };
2756
+ return { dom: wrap, text, slice };
2757
2757
  }
2758
2758
  // Read a slice of content from the clipboard (or drop data).
2759
2759
  function parseFromClipboard(view, text, html, plainText, $context) {
@@ -3625,7 +3625,8 @@ handlers.dragstart = (view, _event) => {
3625
3625
  if (desc && desc.node.type.spec.draggable && desc != view.docView)
3626
3626
  node = NodeSelection.create(view.state.doc, desc.posBefore);
3627
3627
  }
3628
- let slice = (node || view.state.selection).content(), { dom, text } = serializeForClipboard(view, slice);
3628
+ let draggedSlice = (node || view.state.selection).content();
3629
+ let { dom, text, slice } = serializeForClipboard(view, draggedSlice);
3629
3630
  event.dataTransfer.clearData();
3630
3631
  event.dataTransfer.setData(brokenClipboardAPI ? "Text" : "text/html", dom.innerHTML);
3631
3632
  // See https://github.com/ProseMirror/prosemirror/issues/1156
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prosemirror-view",
3
- "version": "1.33.5",
3
+ "version": "1.33.6",
4
4
  "description": "ProseMirror's view component",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
package/src/clipboard.ts CHANGED
@@ -36,7 +36,7 @@ export function serializeForClipboard(view: EditorView, slice: Slice) {
36
36
  let text = view.someProp("clipboardTextSerializer", f => f(slice, view)) ||
37
37
  slice.content.textBetween(0, slice.content.size, "\n\n")
38
38
 
39
- return {dom: wrap, text}
39
+ return {dom: wrap, text, slice}
40
40
  }
41
41
 
42
42
  // Read a slice of content from the clipboard (or drop data).
package/src/input.ts CHANGED
@@ -674,7 +674,8 @@ handlers.dragstart = (view, _event) => {
674
674
  if (desc && desc.node.type.spec.draggable && desc != view.docView)
675
675
  node = NodeSelection.create(view.state.doc, desc.posBefore)
676
676
  }
677
- let slice = (node || view.state.selection).content(), {dom, text} = serializeForClipboard(view, slice)
677
+ let draggedSlice = (node || view.state.selection).content()
678
+ let {dom, text, slice} = serializeForClipboard(view, draggedSlice)
678
679
  event.dataTransfer.clearData()
679
680
  event.dataTransfer.setData(brokenClipboardAPI ? "Text" : "text/html", dom.innerHTML)
680
681
  // See https://github.com/ProseMirror/prosemirror/issues/1156