diff --git a/resources/js/components/entries/Listing.vue b/resources/js/components/entries/Listing.vue
index 08abfe662a3..f2fa40727b7 100644
--- a/resources/js/components/entries/Listing.vue
+++ b/resources/js/components/entries/Listing.vue
@@ -112,6 +112,10 @@ export default {
this.items = items;
},
+ refresh() {
+ this.$refs.listing.refresh();
+ },
+
setSiteFilter(site) {
this.$refs.listing.setFilter('site', site ? { site } : null);
},
diff --git a/resources/js/components/entries/calendar/Calendar.vue b/resources/js/components/entries/calendar/Calendar.vue
index 82da82e55ab..36c18475652 100644
--- a/resources/js/components/entries/calendar/Calendar.vue
+++ b/resources/js/components/entries/calendar/Calendar.vue
@@ -159,6 +159,8 @@ function shouldFetchEntries(
return false;
}
+
+defineExpose({ refresh: fetchEntries });
diff --git a/resources/js/pages/collections/Show.vue b/resources/js/pages/collections/Show.vue
index 5e378e05847..860811644db 100644
--- a/resources/js/pages/collections/Show.vue
+++ b/resources/js/pages/collections/Show.vue
@@ -15,7 +15,7 @@
-
+
this.refreshCurrentView() });
+ },
+
+ refreshCurrentView() {
+ if (this.view === 'list') this.$refs.list?.refresh();
+ if (this.view === 'calendar') this.$refs.calendar?.refresh();
+ if (this.view === 'tree' && !this.treeIsDirty) this.$refs.tree?.refresh();
},
addToCommandPalette() {
diff --git a/resources/js/pages/navigation/Show.vue b/resources/js/pages/navigation/Show.vue
index f770edd0802..af88c32d199 100644
--- a/resources/js/pages/navigation/Show.vue
+++ b/resources/js/pages/navigation/Show.vue
@@ -136,6 +136,10 @@ export default {
},
methods: {
+ afterActionSuccessfullyCompleted() {
+ if (!this.isDirty) this.$refs.tree?.refresh();
+ },
+
addLink() {
if (!this.hasCollections) this.linkPage();
},