Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Oct 17, 2021. It is now read-only.

Commit 01ad236

Browse files
author
Jack Chan
committed
fix: add oldIndex in update
1 parent 7a1f675 commit 01ad236

File tree

2 files changed

+21
-7
lines changed

2 files changed

+21
-7
lines changed

‎dist/updated/index.js

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,17 +108,26 @@
108108
var _loop = function _loop(i) {
109109
if (!_lodash2.default.isEqual(leftArray[i], rightArray[i])) {
110110
(function () {
111-
var index = _lodash2.default.findIndex(r[key], function (value) {
111+
var newIndex = _lodash2.default.findIndex(r[key], function (value) {
112112
return _lodash2.default.isEqual(value, rightArray[i]);
113113
});
114114
for (var j = 0; j < allKeysCounter[rightArray[i]]; j++) {
115-
index = _lodash2.default.findIndex(r[key], function (value) {
116-
return _lodash2.default.isEqual(value, rightArray[i], index + 1);
115+
newIndex = _lodash2.default.findIndex(r[key], function (value) {
116+
return _lodash2.default.isEqual(value, rightArray[i], newIndex + 1);
117+
});
118+
}
119+
var oldIndex = _lodash2.default.findIndex(l[key], function (value) {
120+
return _lodash2.default.isEqual(value, rightArray[i]);
121+
});
122+
for (var _j = 0; _j < allKeysCounter[rightArray[i]]; _j++) {
123+
oldIndex = _lodash2.default.findIndex(l[key], function (value) {
124+
return _lodash2.default.isEqual(value, rightArray[i], oldIndex + 1);
117125
});
118126
}
119127
allKeysObject[rightArray[i]].push({
120128
counter: allKeysCounter[rightArray[i]],
121-
newIndex: index
129+
newIndex: newIndex,
130+
oldIndex: oldIndex
122131
});
123132
})();
124133
}

‎src/updated/index.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,18 @@ const updatedDiff = (lhs, rhs, simpleArray = true) => {
3636
const allKeysObject = _.reduce(allKeys, (acc, curr) => (acc[curr] = [], acc), {})
3737
for (let i = 0; i < leftArray.length; i++) {
3838
if (!_.isEqual(leftArray[i], rightArray[i])) {
39-
let index = _.findIndex(r[key], value => _.isEqual(value, rightArray[i]))
39+
let newIndex = _.findIndex(r[key], value => _.isEqual(value, rightArray[i]))
4040
for (let j = 0; j < allKeysCounter[rightArray[i]]; j++) {
41-
index = _.findIndex(r[key], value => _.isEqual(value, rightArray[i], index + 1))
41+
newIndex = _.findIndex(r[key], value => _.isEqual(value, rightArray[i], newIndex + 1))
42+
}
43+
let oldIndex = _.findIndex(l[key], value => _.isEqual(value, rightArray[i]))
44+
for (let j = 0; j < allKeysCounter[rightArray[i]]; j++) {
45+
oldIndex = _.findIndex(l[key], value => _.isEqual(value, rightArray[i], oldIndex + 1))
4246
}
4347
allKeysObject[rightArray[i]].push({
4448
counter: allKeysCounter[rightArray[i]],
45-
newIndex: index
49+
newIndex,
50+
oldIndex,
4651
})
4752
}
4853
allKeysCounter[rightArray[i]] = allKeysCounter[rightArray[i]]++

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /