mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-10-31 10:13:32 -04:00 
			
		
		
		
	feat: Remove Explore URLs and make the normal URLs public (#2632)
* add groupSlug to most routes * fixed more routing issues * fixed jank and incorrect routes * remove public explore links * remove unused groupSlug and explore routes * nuked explore pages * fixed public toolstore bug * fixed various routes missing group slug * restored public app header menu * fix janky login redirect * 404 recipe API call returns to login * removed unused explore layout * force redirect when using the wrong group slug * fixed dead admin links * removed unused middleware from earlier attempt * 🧹 * improve cookbooks sidebar fixed sidebar link not working fixed sidebar link target hide cookbooks header when there are none * added group slug to user * fix $auth typehints * vastly simplified groupSlug logic * allow logged-in users to view other groups * fixed some edgecases that bypassed isOwnGroup * fixed static home ref * 🧹 * fixed redirect logic * lint warning * removed group slug from group and user pages refactored all components to use route groupSlug or user group slug moved some group pages to recipe pages * fixed some bad types * 🧹 * moved groupSlug routes under /g/groupSlug * move /recipe/ to /r/ * fix backend url generation and metadata injection * moved shopping lists to root/other route fixes * changed shared from /recipes/ to /r/ * fixed 404 redirect not awaiting * removed unused import * fix doc links * fix public recipe setting not affecting public API * fixed backend tests * fix nuxt-generate command --------- Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
This commit is contained in:
		| @@ -31,7 +31,7 @@ | ||||
|           <div class="mr-auto"> | ||||
|             {{ $t("search.results") }} | ||||
|           </div> | ||||
|           <router-link to="/"> {{ $t("search.advanced-search") }} </router-link> | ||||
|           <router-link :to="advancedSearchUrl"> {{ $t("search.advanced-search") }} </router-link> | ||||
|         </v-card-actions> | ||||
|  | ||||
|         <RecipeCardMobile | ||||
| @@ -54,11 +54,13 @@ | ||||
| </template> | ||||
|  | ||||
| <script lang="ts"> | ||||
| import { defineComponent, toRefs, reactive, ref, watch, useRoute } from "@nuxtjs/composition-api"; | ||||
| import { computed, defineComponent, toRefs, reactive, ref, watch, useContext, useRoute } from "@nuxtjs/composition-api"; | ||||
| import RecipeCardMobile from "./RecipeCardMobile.vue"; | ||||
| import { useLoggedInState } from "~/composables/use-logged-in-state"; | ||||
| import { RecipeSummary } from "~/lib/api/types/recipe"; | ||||
| import { useUserApi } from "~/composables/api"; | ||||
| import { useRecipeSearch } from "~/composables/recipes/use-recipe-search"; | ||||
| import { usePublicExploreApi } from "~/composables/api/api-client"; | ||||
| const SELECTED_EVENT = "selected"; | ||||
| export default defineComponent({ | ||||
|   components: { | ||||
| @@ -66,6 +68,7 @@ export default defineComponent({ | ||||
|   }, | ||||
|  | ||||
|   setup(_, context) { | ||||
|     const { $auth } = useContext(); | ||||
|     const state = reactive({ | ||||
|       loading: false, | ||||
|       selectedIndex: -1, | ||||
| @@ -128,7 +131,9 @@ export default defineComponent({ | ||||
|       } | ||||
|     }); | ||||
|  | ||||
|     const groupSlug = computed(() => route.value.params.groupSlug || $auth.user?.groupSlug || ""); | ||||
|     const route = useRoute(); | ||||
|     const advancedSearchUrl = computed(() => `/g/${groupSlug.value}`) | ||||
|     watch(route, close); | ||||
|  | ||||
|     function open() { | ||||
| @@ -140,7 +145,8 @@ export default defineComponent({ | ||||
|  | ||||
|     // =========================================================================== | ||||
|     // Basic Search | ||||
|     const api = useUserApi(); | ||||
|     const { isOwnGroup } = useLoggedInState(); | ||||
|     const api = isOwnGroup.value ? useUserApi() : usePublicExploreApi(groupSlug.value).explore; | ||||
|     const search = useRecipeSearch(api); | ||||
|  | ||||
|     // Select Handler | ||||
| @@ -152,6 +158,7 @@ export default defineComponent({ | ||||
|  | ||||
|     return { | ||||
|       ...toRefs(state), | ||||
|       advancedSearchUrl, | ||||
|       dialog, | ||||
|       open, | ||||
|       close, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user