aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/ducks/utils
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2016-06-05 18:43:17 -0700
committerMaximilian Hils <git@maximilianhils.com>2016-06-05 18:43:17 -0700
commitd878122cf9c0daabd6f390f53e1fa13dcc1eb3a3 (patch)
tree0c60f715b671002fb625b6957c4e78e3b4a18bd8 /web/src/js/ducks/utils
parentb6ebde3b1de228c7a3687f1d0de2842f8c0d52d3 (diff)
downloadmitmproxy-d878122cf9c0daabd6f390f53e1fa13dcc1eb3a3.tar.gz
mitmproxy-d878122cf9c0daabd6f390f53e1fa13dcc1eb3a3.tar.bz2
mitmproxy-d878122cf9c0daabd6f390f53e1fa13dcc1eb3a3.zip
web: fix list update propagation
Diffstat (limited to 'web/src/js/ducks/utils')
-rw-r--r--web/src/js/ducks/utils/list.js3
-rw-r--r--web/src/js/ducks/utils/view.js6
2 files changed, 6 insertions, 3 deletions
diff --git a/web/src/js/ducks/utils/list.js b/web/src/js/ducks/utils/list.js
index 6668e85e..a830fe99 100644
--- a/web/src/js/ducks/utils/list.js
+++ b/web/src/js/ducks/utils/list.js
@@ -63,7 +63,8 @@ export default function makeList(actionType, fetchURL) {
list[itemIndex] = action.item
return {
...state,
- list
+ list,
+ byId: {...state.byId, [action.item.id]: action.item},
}
case REMOVE:
diff --git a/web/src/js/ducks/utils/view.js b/web/src/js/ducks/utils/view.js
index 5535ed83..ff6f4c12 100644
--- a/web/src/js/ducks/utils/view.js
+++ b/web/src/js/ducks/utils/view.js
@@ -96,10 +96,12 @@ export function updateViewList(currentView, currentList, nextList, action, filte
return sortedInsert(currentView, sortFn, action.item)
if (isInView && !shouldBeInView)
return sortedRemove(currentView, sortFn, action.item)
- if (isInView && shouldBeInView && sortFn && sortFn(currentItemState) !== sortFn(nextItemState)) {
+ if (isInView && shouldBeInView) {
let s = [...currentView]
- s.sort(makeCompareFn(sortFn))
s.indexOf = x => sortedIndexOf(s, x, sortFn)
+ s[s.indexOf(currentItemState)] = nextItemState
+ if (sortFn && sortFn(currentItemState) !== sortFn(nextItemState))
+ s.sort(makeCompareFn(sortFn))
return s
}
return currentView