prosemirror-transform 1.7.4 → 1.7.5

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.7.5 (2023-08-22)
2
+
3
+ ### Bug fixes
4
+
5
+ Fix a failure in `replaceRange` to drop wrapper nodes when the same wrapper is already present.
6
+
1
7
  ## 1.7.4 (2023-07-28)
2
8
 
3
9
  ### Bug fixes
package/dist/index.cjs CHANGED
@@ -28,10 +28,6 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
28
28
 
29
29
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
30
30
 
31
- Object.defineProperty(exports, '__esModule', {
32
- value: true
33
- });
34
-
35
31
  var prosemirrorModel = require('prosemirror-model');
36
32
 
37
33
  var lower16 = 0xffff;
@@ -1663,9 +1659,9 @@ function _replaceRange(tr, from, to, slice) {
1663
1659
  }
1664
1660
 
1665
1661
  for (var _d3 = preferredDepth - 1; _d3 >= 0; _d3--) {
1666
- var type = leftNodes[_d3].type,
1667
- def = definesContent(type);
1668
- if (def && $from.node(preferredTargetIndex).type != type) preferredDepth = _d3;else if (def || !type.isTextblock) break;
1662
+ var leftNode = leftNodes[_d3],
1663
+ def = definesContent(leftNode.type);
1664
+ if (def && !leftNode.sameMarkup($from.node(Math.abs(preferredTarget) - 1))) preferredDepth = _d3;else if (def || !leftNode.type.isTextblock) break;
1669
1665
  }
1670
1666
 
1671
1667
  for (var j = slice.openStart; j >= 0; j--) {
@@ -1828,17 +1824,17 @@ var AttrStep = function (_Step7) {
1828
1824
  Step.jsonID("attr", AttrStep);
1829
1825
 
1830
1826
  exports.TransformError = function (_Error) {
1831
- _inherits(_class, _Error);
1827
+ _inherits(TransformError, _Error);
1832
1828
 
1833
- var _super8 = _createSuper(_class);
1829
+ var _super8 = _createSuper(TransformError);
1834
1830
 
1835
- function _class() {
1836
- _classCallCheck(this, _class);
1831
+ function TransformError() {
1832
+ _classCallCheck(this, TransformError);
1837
1833
 
1838
1834
  return _super8.apply(this, arguments);
1839
1835
  }
1840
1836
 
1841
- return _createClass(_class);
1837
+ return _createClass(TransformError);
1842
1838
  }(_wrapNativeSuper(Error));
1843
1839
 
1844
1840
  exports.TransformError = function TransformError(message) {
package/dist/index.js CHANGED
@@ -1601,10 +1601,10 @@ function replaceRange(tr, from, to, slice) {
1601
1601
  // Back up preferredDepth to cover defining textblocks directly
1602
1602
  // above it, possibly skipping a non-defining textblock.
1603
1603
  for (let d = preferredDepth - 1; d >= 0; d--) {
1604
- let type = leftNodes[d].type, def = definesContent(type);
1605
- if (def && $from.node(preferredTargetIndex).type != type)
1604
+ let leftNode = leftNodes[d], def = definesContent(leftNode.type);
1605
+ if (def && !leftNode.sameMarkup($from.node(Math.abs(preferredTarget) - 1)))
1606
1606
  preferredDepth = d;
1607
- else if (def || !type.isTextblock)
1607
+ else if (def || !leftNode.type.isTextblock)
1608
1608
  break;
1609
1609
  }
1610
1610
  for (let j = slice.openStart; j >= 0; j--) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prosemirror-transform",
3
- "version": "1.7.4",
3
+ "version": "1.7.5",
4
4
  "description": "ProseMirror document transformations",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
package/src/replace.ts CHANGED
@@ -359,7 +359,7 @@ export function replaceRange(tr: Transform, from: number, to: number, slice: Sli
359
359
  // target depth, starting with the preferred depths.
360
360
  let preferredTargetIndex = targetDepths.indexOf(preferredTarget)
361
361
 
362
- let leftNodes = [], preferredDepth = slice.openStart
362
+ let leftNodes: Node[] = [], preferredDepth = slice.openStart
363
363
  for (let content = slice.content, i = 0;; i++) {
364
364
  let node = content.firstChild!
365
365
  leftNodes.push(node)
@@ -370,9 +370,9 @@ export function replaceRange(tr: Transform, from: number, to: number, slice: Sli
370
370
  // Back up preferredDepth to cover defining textblocks directly
371
371
  // above it, possibly skipping a non-defining textblock.
372
372
  for (let d = preferredDepth - 1; d >= 0; d--) {
373
- let type = leftNodes[d].type, def = definesContent(type)
374
- if (def && $from.node(preferredTargetIndex).type != type) preferredDepth = d
375
- else if (def || !type.isTextblock) break
373
+ let leftNode = leftNodes[d], def = definesContent(leftNode.type)
374
+ if (def && !leftNode.sameMarkup($from.node(Math.abs(preferredTarget) - 1))) preferredDepth = d
375
+ else if (def || !leftNode.type.isTextblock) break
376
376
  }
377
377
 
378
378
  for (let j = slice.openStart; j >= 0; j--) {
@@ -443,7 +443,7 @@ export function deleteRange(tr: Transform, from: number, to: number) {
443
443
  // Returns an array of all depths for which $from - $to spans the
444
444
  // whole content of the nodes at that depth.
445
445
  function coveredDepths($from: ResolvedPos, $to: ResolvedPos) {
446
- let result = [], minDepth = Math.min($from.depth, $to.depth)
446
+ let result: number[] = [], minDepth = Math.min($from.depth, $to.depth)
447
447
  for (let d = minDepth; d >= 0; d--) {
448
448
  let start = $from.start(d)
449
449
  if (start < $from.pos - ($from.depth - d) ||