@highlight-run/rrweb 2.0.15 → 2.0.16
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/dist/replay/rrweb-replay-unpack.js +4 -4
- package/dist/replay/rrweb-replay-unpack.min.js +4 -4
- package/dist/replay/rrweb-replay-unpack.min.js.map +1 -1
- package/dist/replay/rrweb-replay.js +4 -4
- package/dist/replay/rrweb-replay.min.js +4 -4
- package/dist/replay/rrweb-replay.min.js.map +1 -1
- package/dist/rrweb-all.js +5 -5
- package/dist/rrweb-all.min.js +5 -5
- package/dist/rrweb-all.min.js.map +1 -1
- package/dist/rrweb.js +5 -5
- package/dist/rrweb.min.js +5 -5
- package/dist/rrweb.min.js.map +1 -1
- package/es/rrweb/packages/rrdom/es/rrdom.js +20 -5
- package/lib/replay/rrweb-replay-unpack.js +20 -5
- package/lib/replay/rrweb-replay.js +20 -5
- package/lib/rrweb-all.js +20 -5
- package/lib/rrweb.js +20 -5
- package/package.json +3 -3
|
@@ -629,29 +629,41 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
629
629
|
let oldStartNode = oldChildren[oldStartIndex], oldEndNode = oldChildren[oldEndIndex], newStartNode = newChildren[newStartIndex], newEndNode = newChildren[newEndIndex];
|
|
630
630
|
let oldIdToIndex = undefined, indexInOld;
|
|
631
631
|
while (oldStartIndex <= oldEndIndex && newStartIndex <= newEndIndex) {
|
|
632
|
+
const oldStartId = replayer.mirror.getId(oldStartNode);
|
|
633
|
+
const oldEndId = replayer.mirror.getId(oldEndNode);
|
|
634
|
+
const newStartId = rrnodeMirror.getId(newStartNode);
|
|
635
|
+
const newEndId = rrnodeMirror.getId(newEndNode);
|
|
636
|
+
console.log('oldStartId', oldStartId);
|
|
637
|
+
console.log('oldEndId', oldEndId);
|
|
638
|
+
console.log('newStartId', newStartId);
|
|
639
|
+
console.log('newEndId', newEndId);
|
|
632
640
|
if (oldStartNode === undefined) {
|
|
633
641
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
634
642
|
}
|
|
635
643
|
else if (oldEndNode === undefined) {
|
|
636
644
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
637
645
|
}
|
|
638
|
-
else if (
|
|
646
|
+
else if (oldStartId !== -1 &&
|
|
647
|
+
oldStartId === newStartId) {
|
|
639
648
|
diff(oldStartNode, newStartNode, replayer, rrnodeMirror);
|
|
640
649
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
641
650
|
newStartNode = newChildren[++newStartIndex];
|
|
642
651
|
}
|
|
643
|
-
else if (
|
|
652
|
+
else if (oldEndId !== -1 &&
|
|
653
|
+
oldEndId === newEndId) {
|
|
644
654
|
diff(oldEndNode, newEndNode, replayer, rrnodeMirror);
|
|
645
655
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
646
656
|
newEndNode = newChildren[--newEndIndex];
|
|
647
657
|
}
|
|
648
|
-
else if (
|
|
658
|
+
else if (oldStartId !== -1 &&
|
|
659
|
+
oldStartId === newEndId) {
|
|
649
660
|
parentNode.insertBefore(oldStartNode, oldEndNode.nextSibling);
|
|
650
661
|
diff(oldStartNode, newEndNode, replayer, rrnodeMirror);
|
|
651
662
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
652
663
|
newEndNode = newChildren[--newEndIndex];
|
|
653
664
|
}
|
|
654
|
-
else if (
|
|
665
|
+
else if (oldEndId !== -1 &&
|
|
666
|
+
oldEndId === newStartId) {
|
|
655
667
|
parentNode.insertBefore(oldEndNode, oldStartNode);
|
|
656
668
|
diff(oldEndNode, newStartNode, replayer, rrnodeMirror);
|
|
657
669
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
@@ -713,8 +725,11 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
713
725
|
}
|
|
714
726
|
}
|
|
715
727
|
function createOrGetNode(rrNode, domMirror, rrnodeMirror) {
|
|
716
|
-
|
|
728
|
+
const nodeId = rrnodeMirror.getId(rrNode);
|
|
717
729
|
const sn = rrnodeMirror.getMeta(rrNode);
|
|
730
|
+
let node = null;
|
|
731
|
+
if (nodeId > -1)
|
|
732
|
+
node = domMirror.getNode(nodeId);
|
|
718
733
|
if (node !== null)
|
|
719
734
|
return node;
|
|
720
735
|
switch (rrNode.RRNodeType) {
|
|
@@ -1548,29 +1548,41 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
1548
1548
|
let oldStartNode = oldChildren[oldStartIndex], oldEndNode = oldChildren[oldEndIndex], newStartNode = newChildren[newStartIndex], newEndNode = newChildren[newEndIndex];
|
|
1549
1549
|
let oldIdToIndex = undefined, indexInOld;
|
|
1550
1550
|
while (oldStartIndex <= oldEndIndex && newStartIndex <= newEndIndex) {
|
|
1551
|
+
const oldStartId = replayer.mirror.getId(oldStartNode);
|
|
1552
|
+
const oldEndId = replayer.mirror.getId(oldEndNode);
|
|
1553
|
+
const newStartId = rrnodeMirror.getId(newStartNode);
|
|
1554
|
+
const newEndId = rrnodeMirror.getId(newEndNode);
|
|
1555
|
+
console.log('oldStartId', oldStartId);
|
|
1556
|
+
console.log('oldEndId', oldEndId);
|
|
1557
|
+
console.log('newStartId', newStartId);
|
|
1558
|
+
console.log('newEndId', newEndId);
|
|
1551
1559
|
if (oldStartNode === undefined) {
|
|
1552
1560
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
1553
1561
|
}
|
|
1554
1562
|
else if (oldEndNode === undefined) {
|
|
1555
1563
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
1556
1564
|
}
|
|
1557
|
-
else if (
|
|
1565
|
+
else if (oldStartId !== -1 &&
|
|
1566
|
+
oldStartId === newStartId) {
|
|
1558
1567
|
diff(oldStartNode, newStartNode, replayer, rrnodeMirror);
|
|
1559
1568
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
1560
1569
|
newStartNode = newChildren[++newStartIndex];
|
|
1561
1570
|
}
|
|
1562
|
-
else if (
|
|
1571
|
+
else if (oldEndId !== -1 &&
|
|
1572
|
+
oldEndId === newEndId) {
|
|
1563
1573
|
diff(oldEndNode, newEndNode, replayer, rrnodeMirror);
|
|
1564
1574
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
1565
1575
|
newEndNode = newChildren[--newEndIndex];
|
|
1566
1576
|
}
|
|
1567
|
-
else if (
|
|
1577
|
+
else if (oldStartId !== -1 &&
|
|
1578
|
+
oldStartId === newEndId) {
|
|
1568
1579
|
parentNode.insertBefore(oldStartNode, oldEndNode.nextSibling);
|
|
1569
1580
|
diff(oldStartNode, newEndNode, replayer, rrnodeMirror);
|
|
1570
1581
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
1571
1582
|
newEndNode = newChildren[--newEndIndex];
|
|
1572
1583
|
}
|
|
1573
|
-
else if (
|
|
1584
|
+
else if (oldEndId !== -1 &&
|
|
1585
|
+
oldEndId === newStartId) {
|
|
1574
1586
|
parentNode.insertBefore(oldEndNode, oldStartNode);
|
|
1575
1587
|
diff(oldEndNode, newStartNode, replayer, rrnodeMirror);
|
|
1576
1588
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
@@ -1632,8 +1644,11 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
1632
1644
|
}
|
|
1633
1645
|
}
|
|
1634
1646
|
function createOrGetNode(rrNode, domMirror, rrnodeMirror) {
|
|
1635
|
-
|
|
1647
|
+
const nodeId = rrnodeMirror.getId(rrNode);
|
|
1636
1648
|
const sn = rrnodeMirror.getMeta(rrNode);
|
|
1649
|
+
let node = null;
|
|
1650
|
+
if (nodeId > -1)
|
|
1651
|
+
node = domMirror.getNode(nodeId);
|
|
1637
1652
|
if (node !== null)
|
|
1638
1653
|
return node;
|
|
1639
1654
|
switch (rrNode.RRNodeType) {
|
|
@@ -1548,29 +1548,41 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
1548
1548
|
let oldStartNode = oldChildren[oldStartIndex], oldEndNode = oldChildren[oldEndIndex], newStartNode = newChildren[newStartIndex], newEndNode = newChildren[newEndIndex];
|
|
1549
1549
|
let oldIdToIndex = undefined, indexInOld;
|
|
1550
1550
|
while (oldStartIndex <= oldEndIndex && newStartIndex <= newEndIndex) {
|
|
1551
|
+
const oldStartId = replayer.mirror.getId(oldStartNode);
|
|
1552
|
+
const oldEndId = replayer.mirror.getId(oldEndNode);
|
|
1553
|
+
const newStartId = rrnodeMirror.getId(newStartNode);
|
|
1554
|
+
const newEndId = rrnodeMirror.getId(newEndNode);
|
|
1555
|
+
console.log('oldStartId', oldStartId);
|
|
1556
|
+
console.log('oldEndId', oldEndId);
|
|
1557
|
+
console.log('newStartId', newStartId);
|
|
1558
|
+
console.log('newEndId', newEndId);
|
|
1551
1559
|
if (oldStartNode === undefined) {
|
|
1552
1560
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
1553
1561
|
}
|
|
1554
1562
|
else if (oldEndNode === undefined) {
|
|
1555
1563
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
1556
1564
|
}
|
|
1557
|
-
else if (
|
|
1565
|
+
else if (oldStartId !== -1 &&
|
|
1566
|
+
oldStartId === newStartId) {
|
|
1558
1567
|
diff(oldStartNode, newStartNode, replayer, rrnodeMirror);
|
|
1559
1568
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
1560
1569
|
newStartNode = newChildren[++newStartIndex];
|
|
1561
1570
|
}
|
|
1562
|
-
else if (
|
|
1571
|
+
else if (oldEndId !== -1 &&
|
|
1572
|
+
oldEndId === newEndId) {
|
|
1563
1573
|
diff(oldEndNode, newEndNode, replayer, rrnodeMirror);
|
|
1564
1574
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
1565
1575
|
newEndNode = newChildren[--newEndIndex];
|
|
1566
1576
|
}
|
|
1567
|
-
else if (
|
|
1577
|
+
else if (oldStartId !== -1 &&
|
|
1578
|
+
oldStartId === newEndId) {
|
|
1568
1579
|
parentNode.insertBefore(oldStartNode, oldEndNode.nextSibling);
|
|
1569
1580
|
diff(oldStartNode, newEndNode, replayer, rrnodeMirror);
|
|
1570
1581
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
1571
1582
|
newEndNode = newChildren[--newEndIndex];
|
|
1572
1583
|
}
|
|
1573
|
-
else if (
|
|
1584
|
+
else if (oldEndId !== -1 &&
|
|
1585
|
+
oldEndId === newStartId) {
|
|
1574
1586
|
parentNode.insertBefore(oldEndNode, oldStartNode);
|
|
1575
1587
|
diff(oldEndNode, newStartNode, replayer, rrnodeMirror);
|
|
1576
1588
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
@@ -1632,8 +1644,11 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
1632
1644
|
}
|
|
1633
1645
|
}
|
|
1634
1646
|
function createOrGetNode(rrNode, domMirror, rrnodeMirror) {
|
|
1635
|
-
|
|
1647
|
+
const nodeId = rrnodeMirror.getId(rrNode);
|
|
1636
1648
|
const sn = rrnodeMirror.getMeta(rrNode);
|
|
1649
|
+
let node = null;
|
|
1650
|
+
if (nodeId > -1)
|
|
1651
|
+
node = domMirror.getNode(nodeId);
|
|
1637
1652
|
if (node !== null)
|
|
1638
1653
|
return node;
|
|
1639
1654
|
switch (rrNode.RRNodeType) {
|
package/lib/rrweb-all.js
CHANGED
|
@@ -5011,29 +5011,41 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
5011
5011
|
let oldStartNode = oldChildren[oldStartIndex], oldEndNode = oldChildren[oldEndIndex], newStartNode = newChildren[newStartIndex], newEndNode = newChildren[newEndIndex];
|
|
5012
5012
|
let oldIdToIndex = undefined, indexInOld;
|
|
5013
5013
|
while (oldStartIndex <= oldEndIndex && newStartIndex <= newEndIndex) {
|
|
5014
|
+
const oldStartId = replayer.mirror.getId(oldStartNode);
|
|
5015
|
+
const oldEndId = replayer.mirror.getId(oldEndNode);
|
|
5016
|
+
const newStartId = rrnodeMirror.getId(newStartNode);
|
|
5017
|
+
const newEndId = rrnodeMirror.getId(newEndNode);
|
|
5018
|
+
console.log('oldStartId', oldStartId);
|
|
5019
|
+
console.log('oldEndId', oldEndId);
|
|
5020
|
+
console.log('newStartId', newStartId);
|
|
5021
|
+
console.log('newEndId', newEndId);
|
|
5014
5022
|
if (oldStartNode === undefined) {
|
|
5015
5023
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
5016
5024
|
}
|
|
5017
5025
|
else if (oldEndNode === undefined) {
|
|
5018
5026
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
5019
5027
|
}
|
|
5020
|
-
else if (
|
|
5028
|
+
else if (oldStartId !== -1 &&
|
|
5029
|
+
oldStartId === newStartId) {
|
|
5021
5030
|
diff(oldStartNode, newStartNode, replayer, rrnodeMirror);
|
|
5022
5031
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
5023
5032
|
newStartNode = newChildren[++newStartIndex];
|
|
5024
5033
|
}
|
|
5025
|
-
else if (
|
|
5034
|
+
else if (oldEndId !== -1 &&
|
|
5035
|
+
oldEndId === newEndId) {
|
|
5026
5036
|
diff(oldEndNode, newEndNode, replayer, rrnodeMirror);
|
|
5027
5037
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
5028
5038
|
newEndNode = newChildren[--newEndIndex];
|
|
5029
5039
|
}
|
|
5030
|
-
else if (
|
|
5040
|
+
else if (oldStartId !== -1 &&
|
|
5041
|
+
oldStartId === newEndId) {
|
|
5031
5042
|
parentNode.insertBefore(oldStartNode, oldEndNode.nextSibling);
|
|
5032
5043
|
diff(oldStartNode, newEndNode, replayer, rrnodeMirror);
|
|
5033
5044
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
5034
5045
|
newEndNode = newChildren[--newEndIndex];
|
|
5035
5046
|
}
|
|
5036
|
-
else if (
|
|
5047
|
+
else if (oldEndId !== -1 &&
|
|
5048
|
+
oldEndId === newStartId) {
|
|
5037
5049
|
parentNode.insertBefore(oldEndNode, oldStartNode);
|
|
5038
5050
|
diff(oldEndNode, newStartNode, replayer, rrnodeMirror);
|
|
5039
5051
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
@@ -5095,8 +5107,11 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
5095
5107
|
}
|
|
5096
5108
|
}
|
|
5097
5109
|
function createOrGetNode(rrNode, domMirror, rrnodeMirror) {
|
|
5098
|
-
|
|
5110
|
+
const nodeId = rrnodeMirror.getId(rrNode);
|
|
5099
5111
|
const sn = rrnodeMirror.getMeta(rrNode);
|
|
5112
|
+
let node = null;
|
|
5113
|
+
if (nodeId > -1)
|
|
5114
|
+
node = domMirror.getNode(nodeId);
|
|
5100
5115
|
if (node !== null)
|
|
5101
5116
|
return node;
|
|
5102
5117
|
switch (rrNode.RRNodeType) {
|
package/lib/rrweb.js
CHANGED
|
@@ -5011,29 +5011,41 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
5011
5011
|
let oldStartNode = oldChildren[oldStartIndex], oldEndNode = oldChildren[oldEndIndex], newStartNode = newChildren[newStartIndex], newEndNode = newChildren[newEndIndex];
|
|
5012
5012
|
let oldIdToIndex = undefined, indexInOld;
|
|
5013
5013
|
while (oldStartIndex <= oldEndIndex && newStartIndex <= newEndIndex) {
|
|
5014
|
+
const oldStartId = replayer.mirror.getId(oldStartNode);
|
|
5015
|
+
const oldEndId = replayer.mirror.getId(oldEndNode);
|
|
5016
|
+
const newStartId = rrnodeMirror.getId(newStartNode);
|
|
5017
|
+
const newEndId = rrnodeMirror.getId(newEndNode);
|
|
5018
|
+
console.log('oldStartId', oldStartId);
|
|
5019
|
+
console.log('oldEndId', oldEndId);
|
|
5020
|
+
console.log('newStartId', newStartId);
|
|
5021
|
+
console.log('newEndId', newEndId);
|
|
5014
5022
|
if (oldStartNode === undefined) {
|
|
5015
5023
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
5016
5024
|
}
|
|
5017
5025
|
else if (oldEndNode === undefined) {
|
|
5018
5026
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
5019
5027
|
}
|
|
5020
|
-
else if (
|
|
5028
|
+
else if (oldStartId !== -1 &&
|
|
5029
|
+
oldStartId === newStartId) {
|
|
5021
5030
|
diff(oldStartNode, newStartNode, replayer, rrnodeMirror);
|
|
5022
5031
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
5023
5032
|
newStartNode = newChildren[++newStartIndex];
|
|
5024
5033
|
}
|
|
5025
|
-
else if (
|
|
5034
|
+
else if (oldEndId !== -1 &&
|
|
5035
|
+
oldEndId === newEndId) {
|
|
5026
5036
|
diff(oldEndNode, newEndNode, replayer, rrnodeMirror);
|
|
5027
5037
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
5028
5038
|
newEndNode = newChildren[--newEndIndex];
|
|
5029
5039
|
}
|
|
5030
|
-
else if (
|
|
5040
|
+
else if (oldStartId !== -1 &&
|
|
5041
|
+
oldStartId === newEndId) {
|
|
5031
5042
|
parentNode.insertBefore(oldStartNode, oldEndNode.nextSibling);
|
|
5032
5043
|
diff(oldStartNode, newEndNode, replayer, rrnodeMirror);
|
|
5033
5044
|
oldStartNode = oldChildren[++oldStartIndex];
|
|
5034
5045
|
newEndNode = newChildren[--newEndIndex];
|
|
5035
5046
|
}
|
|
5036
|
-
else if (
|
|
5047
|
+
else if (oldEndId !== -1 &&
|
|
5048
|
+
oldEndId === newStartId) {
|
|
5037
5049
|
parentNode.insertBefore(oldEndNode, oldStartNode);
|
|
5038
5050
|
diff(oldEndNode, newStartNode, replayer, rrnodeMirror);
|
|
5039
5051
|
oldEndNode = oldChildren[--oldEndIndex];
|
|
@@ -5095,8 +5107,11 @@ function diffChildren(oldChildren, newChildren, parentNode, replayer, rrnodeMirr
|
|
|
5095
5107
|
}
|
|
5096
5108
|
}
|
|
5097
5109
|
function createOrGetNode(rrNode, domMirror, rrnodeMirror) {
|
|
5098
|
-
|
|
5110
|
+
const nodeId = rrnodeMirror.getId(rrNode);
|
|
5099
5111
|
const sn = rrnodeMirror.getMeta(rrNode);
|
|
5112
|
+
let node = null;
|
|
5113
|
+
if (nodeId > -1)
|
|
5114
|
+
node = domMirror.getNode(nodeId);
|
|
5100
5115
|
if (node !== null)
|
|
5101
5116
|
return node;
|
|
5102
5117
|
switch (rrNode.RRNodeType) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@highlight-run/rrweb",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.16",
|
|
4
4
|
"description": "record and replay the web",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"prepare": "npm run prepack",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"typescript": "^4.7.3"
|
|
75
75
|
},
|
|
76
76
|
"dependencies": {
|
|
77
|
-
"@highlight-run/rrdom": ">=0.1.
|
|
77
|
+
"@highlight-run/rrdom": ">=0.1.13",
|
|
78
78
|
"@highlight-run/rrweb-snapshot": ">=1.1.22",
|
|
79
79
|
"@types/css-font-loading-module": "0.0.7",
|
|
80
80
|
"@xstate/fsm": "^1.4.0",
|
|
@@ -82,5 +82,5 @@
|
|
|
82
82
|
"fflate": "^0.4.4",
|
|
83
83
|
"mitt": "^1.1.3"
|
|
84
84
|
},
|
|
85
|
-
"gitHead": "
|
|
85
|
+
"gitHead": "563c1119c1eb935ab8dd07b1893143e5b2e4e59d"
|
|
86
86
|
}
|