fix: Don't hit authenticated endpoints when logged out (#7563)

This commit is contained in:
garlic-hub
2026-04-29 21:21:48 -07:00
committed by GitHub
parent f354f12853
commit 5b37eb012c
4 changed files with 18 additions and 8 deletions

View File

@@ -110,7 +110,7 @@ const route = useRoute();
const groupSlug = computed(() => route.params.groupSlug as string || auth.user.value?.groupSlug || "");
const cookbookPreferences = useCookbookPreferences();
const ownCookbookStore = useCookbookStore(i18n);
const ownCookbookStore = computed(() => isOwnGroup.value ? useCookbookStore(i18n) : null);
const publicCookbookStoreCache = ref<Record<string, ReturnType<typeof usePublicCookbookStore>>>({});
function getPublicCookbookStore(slug: string) {
@@ -121,8 +121,8 @@ function getPublicCookbookStore(slug: string) {
}
const cookbooks = computed(() => {
if (isOwnGroup.value) {
return ownCookbookStore.store.value;
if (ownCookbookStore.value) {
return ownCookbookStore.value.store.value;
}
else if (groupSlug.value) {
const publicStore = getPublicCookbookStore(groupSlug.value);

View File

@@ -6,7 +6,12 @@ const loading = ref(false);
export const useGroupSelf = function () {
const api = useUserApi();
const auth = useMealieAuth();
async function refreshGroupSelf() {
if (!auth.user.value) {
groupSelfRef.value = null;
return;
}
loading.value = true;
const { data } = await api.groups.getCurrentUserGroup();
groupSelfRef.value = data;

View File

@@ -6,8 +6,13 @@ const loading = ref(false);
export const useHouseholdSelf = function () {
const api = useUserApi();
const auth = useMealieAuth();
async function refreshHouseholdSelf() {
if (!auth.user.value) {
householdSelfRef.value = null;
return;
}
loading.value = true;
const { data } = await api.households.getCurrentUserHousehold();
householdSelfRef.value = data;

View File

@@ -73,11 +73,11 @@ function createRecipeExplorerSearchState(groupSlug: ComputedRef<string>): Recipe
});
// Store references
const categories = isOwnGroup ? useCategoryStore() : usePublicCategoryStore(groupSlug.value);
const foods = isOwnGroup ? useFoodStore() : usePublicFoodStore(groupSlug.value);
const households = isOwnGroup ? useHouseholdStore() : usePublicHouseholdStore(groupSlug.value);
const tags = isOwnGroup ? useTagStore() : usePublicTagStore(groupSlug.value);
const tools = isOwnGroup ? useToolStore() : usePublicToolStore(groupSlug.value);
const categories = isOwnGroup.value ? useCategoryStore() : usePublicCategoryStore(groupSlug.value);
const foods = isOwnGroup.value ? useFoodStore() : usePublicFoodStore(groupSlug.value);
const households = isOwnGroup.value ? useHouseholdStore() : usePublicHouseholdStore(groupSlug.value);
const tags = isOwnGroup.value ? useTagStore() : usePublicTagStore(groupSlug.value);
const tools = isOwnGroup.value ? useToolStore() : usePublicToolStore(groupSlug.value);
// Selected items
const selectedCategories = ref<NoUndefinedField<RecipeCategory>[]>([]);