diff --git a/frontend/src/metabase/entities/revisions.js b/frontend/src/metabase/entities/revisions.js
index 47fcb0fbc2e65806d6412cba6d8fddcd4e19bd93..20d79b3c2e617d719ec8b936704b092f89d168e9 100644
--- a/frontend/src/metabase/entities/revisions.js
+++ b/frontend/src/metabase/entities/revisions.js
@@ -2,9 +2,10 @@ import { createEntity } from "metabase/lib/entities";
 
 import { GET, POST } from "metabase/lib/api";
 
-const listRevisions = GET("/api/revision");
+import Dashboards from "./dashboards";
+import Questions from "./questions";
 
-const ASSOCIATED_ENTITY_TYPES = ["questions", "dashboards"];
+const listRevisions = GET("/api/revision");
 
 const Revision = createEntity({
   name: "revisions",
@@ -35,14 +36,11 @@ const Revision = createEntity({
   },
 
   actionShouldInvalidateLists(action) {
-    const entities = require("metabase/entities");
-    for (const type of ASSOCIATED_ENTITY_TYPES) {
-      if (entities[type].actionShouldInvalidateLists(action)) {
-        return true;
-      }
-    }
-
-    return action.type === this.actionTypes.INVALIDATE_LISTS_ACTION;
+    return (
+      action.type === this.actionTypes.INVALIDATE_LISTS_ACTION ||
+      Dashboards.actionShouldInvalidateLists(action) ||
+      Questions.actionShouldInvalidateLists(action)
+    );
   },
 });
 
diff --git a/frontend/src/metabase/entities/search.js b/frontend/src/metabase/entities/search.js
index 3d7dc6221ebe89450b6f5f8d9992b04025d4c5d4..4c8c119574eb68671502153ebe05b391e657fa22 100644
--- a/frontend/src/metabase/entities/search.js
+++ b/frontend/src/metabase/entities/search.js
@@ -3,11 +3,19 @@ import { createEntity } from "metabase/lib/entities";
 import { GET } from "metabase/lib/api";
 import { entityTypeForObject } from "metabase/lib/schema";
 
-import { ObjectUnionSchema, ENTITIES_SCHEMA_MAP } from "metabase/schema";
+import { ObjectUnionSchema } from "metabase/schema";
 
 import { canonicalCollectionId } from "metabase/collections/utils";
 
-const ENTITIES_TYPES = Object.keys(ENTITIES_SCHEMA_MAP);
+import Bookmarks from "./bookmarks";
+import Collections from "./collections";
+import Dashboards from "./dashboards";
+import Metrics from "./metrics";
+import Pulses from "./pulses";
+import Questions from "./questions";
+import Segments from "./segments";
+import Snippets from "./snippets";
+import SnippetCollections from "./snippet-collections";
 
 const searchList = GET("/api/search");
 const collectionList = GET("/api/collection/:collection/items");
@@ -82,12 +90,16 @@ export default createEntity({
 
   // delegate to each entity's actionShouldInvalidateLists
   actionShouldInvalidateLists(action) {
-    const entities = require("metabase/entities");
-    for (const type of ENTITIES_TYPES) {
-      if (entities[type].actionShouldInvalidateLists(action)) {
-        return true;
-      }
-    }
-    return false;
+    return (
+      Bookmarks.actionShouldInvalidateLists(action) ||
+      Collections.actionShouldInvalidateLists(action) ||
+      Dashboards.actionShouldInvalidateLists(action) ||
+      Metrics.actionShouldInvalidateLists(action) ||
+      Pulses.actionShouldInvalidateLists(action) ||
+      Questions.actionShouldInvalidateLists(action) ||
+      Segments.actionShouldInvalidateLists(action) ||
+      Snippets.actionShouldInvalidateLists(action) ||
+      SnippetCollections.actionShouldInvalidateLists(action)
+    );
   },
 });