From c398a4d6d888a7a5b727b912f9654b2e67808f7b Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Sun, 10 May 2020 15:41:47 +0300
Subject: [PATCH] add swtich

---
 .../track-changes/trackedTransaction.js       | 29 +++++++++----------
 1 file changed, 13 insertions(+), 16 deletions(-)

diff --git a/wax-prosemirror-services/src/TrackChangeService/track-changes/trackedTransaction.js b/wax-prosemirror-services/src/TrackChangeService/track-changes/trackedTransaction.js
index cf30f6c3d..74f9aa347 100644
--- a/wax-prosemirror-services/src/TrackChangeService/track-changes/trackedTransaction.js
+++ b/wax-prosemirror-services/src/TrackChangeService/track-changes/trackedTransaction.js
@@ -25,7 +25,6 @@ const trackedTransaction = (tr, state, user) => {
       !Object.keys(tr.meta).every(metadata =>
         ["inputType", "uiEvent", "paste"].includes(metadata)
       )) ||
-    // don't replace history TRs
     ["historyUndo", "historyRedo"].includes(tr.getMeta("inputType"))
   ) {
     return tr;
@@ -42,24 +41,22 @@ const trackedTransaction = (tr, state, user) => {
       return;
     }
 
-    if (step instanceof ReplaceStep) {
-      replaceStep(state, tr, step, newTr, map, doc, user, date);
-    }
-
-    if (step instanceof ReplaceAroundStep) {
-      replaceAroundStep(state, tr, step, newTr, map, doc, user, date);
-    }
-
-    if (step instanceof AddMarkStep) {
-      addMarkStep(state, tr, step, newTr, map, doc, user, date);
-    }
-
-    if (step instanceof RemoveMarkStep) {
-      removeMarkStep(state, tr, step, newTr, map, doc, user, date);
+    switch (step.constructor) {
+      case ReplaceStep:
+        replaceStep(state, tr, step, newTr, map, doc, user, date);
+        break;
+      case ReplaceAroundStep:
+        replaceAroundStep(state, tr, step, newTr, map, doc, user, date);
+        break;
+      case AddMarkStep:
+        addMarkStep(state, tr, step, newTr, map, doc, user, date);
+        break;
+      case RemoveMarkStep:
+        removeMarkStep(state, tr, step, newTr, map, doc, user, date);
+        break;
     }
   });
 
-  // We copy the input type meta data from the original transaction.
   if (tr.getMeta("inputType")) {
     newTr.setMeta(tr.getMeta("inputType"));
   }
-- 
GitLab