From 9263e8a57d219ea84848cf6edb71d1f09f587542 Mon Sep 17 00:00:00 2001 From: "Calum H. (IMB11)" Date: Tue, 28 Jul 2026 18:44:45 +0100 Subject: [PATCH 01/11] refactor: breadcrumbs system --- apps/app-frontend/src/App.vue | 6 + .../src/components/ui/Breadcrumbs.vue | 49 ++--- apps/app-frontend/src/pages/Browse.vue | 153 ++++++++++---- apps/app-frontend/src/pages/Index.vue | 12 +- apps/app-frontend/src/pages/Servers.vue | 9 + apps/app-frontend/src/pages/Skins.vue | 8 + apps/app-frontend/src/pages/User.vue | 55 ++--- apps/app-frontend/src/pages/Worlds.vue | 11 +- .../src/pages/hosting/manage/Index.vue | 71 ++++--- .../app-frontend/src/pages/instance/Index.vue | 70 ++++-- apps/app-frontend/src/pages/library/Index.vue | 10 +- .../src/pages/project/Gallery.vue | 11 + apps/app-frontend/src/pages/project/Index.vue | 37 +++- .../src/pages/project/Version.vue | 53 ++++- .../src/pages/project/Versions.vue | 29 ++- .../app-frontend/src/providers/breadcrumbs.ts | 200 ++++++++++++++++++ apps/app-frontend/src/routes.js | 88 -------- apps/app-frontend/src/store/breadcrumbs.js | 37 ---- apps/app-frontend/src/store/state.js | 3 +- 19 files changed, 614 insertions(+), 298 deletions(-) create mode 100644 apps/app-frontend/src/providers/breadcrumbs.ts delete mode 100644 apps/app-frontend/src/store/breadcrumbs.js diff --git a/apps/app-frontend/src/App.vue b/apps/app-frontend/src/App.vue index f7e78a4963..3625fb0545 100644 --- a/apps/app-frontend/src/App.vue +++ b/apps/app-frontend/src/App.vue @@ -138,6 +138,10 @@ import { setAppUpdateActions, } from '@/providers/app-update.ts' import { createContentInstall, provideContentInstall } from '@/providers/content-install' +import { + createBreadcrumbManager, + provideBreadcrumbManager, +} from '@/providers/breadcrumbs' import { provideAppUpdateDownloadProgress, subscribeToDownloadProgress, @@ -157,6 +161,8 @@ import { AppPopupNotificationManager } from './providers/app-popup-notifications const themeStore = useTheming() const router = useRouter() const route = useRoute() +const breadcrumbManager = createBreadcrumbManager() +provideBreadcrumbManager(breadcrumbManager) const APP_LEFT_NAV_WIDTH = '4rem' const APP_SIDEBAR_WIDTH = 300 const INTERCOM_BUBBLE_DEFAULT_PADDING = 20 diff --git a/apps/app-frontend/src/components/ui/Breadcrumbs.vue b/apps/app-frontend/src/components/ui/Breadcrumbs.vue index 032a569be0..7049ac7d46 100644 --- a/apps/app-frontend/src/components/ui/Breadcrumbs.vue +++ b/apps/app-frontend/src/components/ui/Breadcrumbs.vue @@ -15,26 +15,26 @@ :class="{ 'breadcrumbs-scroll': isAnimating }" @animationiteration="onAnimationIteration" > - {{ breadcrumbData.resetToNames(breadcrumbs) }} -