fix: Re-write Nuxt auth backend and get rid of sidebase auth (#6322)

This commit is contained in:
Michael Genson
2025-10-05 20:43:38 -05:00
committed by GitHub
parent fffe7b05e0
commit 6895b49543
30 changed files with 182 additions and 78 deletions

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
definePageMeta({
middleware: ["sidebase-auth", "admin-only"],
middleware: ["admin-only"],
});
</script>

View File

@@ -145,7 +145,7 @@ import { useCookbookPreferences } from "~/composables/use-users/preferences";
export default defineNuxtComponent({
components: { CookbookEditor, VueDraggable },
middleware: ["sidebase-auth", "group-only"],
middleware: ["group-only"],
setup() {
const dialogStates = reactive({
create: false,

View File

@@ -49,7 +49,7 @@ import AdvancedOnly from "~/components/global/AdvancedOnly.vue";
export default defineNuxtComponent({
components: { AdvancedOnly },
middleware: ["sidebase-auth", "group-only"],
middleware: ["group-only"],
setup() {
const i18n = useI18n();
const $auth = useMealieAuth();

View File

@@ -23,7 +23,7 @@ export default defineNuxtComponent({
components: {
RecipeOrganizerPage,
},
middleware: ["sidebase-auth", "group-only"],
middleware: ["group-only"],
setup() {
const { store, actions } = useCategoryStore();
const i18n = useI18n();

View File

@@ -23,7 +23,7 @@ export default defineNuxtComponent({
components: {
RecipeOrganizerPage,
},
middleware: ["sidebase-auth", "group-only"],
middleware: ["group-only"],
setup() {
const { store, actions } = useTagStore();
const i18n = useI18n();

View File

@@ -36,7 +36,7 @@ import RecipeTimeline from "~/components/Domain/Recipe/RecipeTimeline.vue";
export default defineNuxtComponent({
components: { RecipeTimeline },
middleware: ["sidebase-auth", "group-only"],
middleware: ["group-only"],
setup() {
const i18n = useI18n();
const api = useUserApi();

View File

@@ -28,7 +28,7 @@ export default defineNuxtComponent({
components: {
RecipeOrganizerPage,
},
middleware: ["sidebase-auth", "group-only"],
middleware: ["group-only"],
setup() {
const $auth = useMealieAuth();
const toolStore = useToolStore();

View File

@@ -36,7 +36,7 @@
<script lang="ts">
export default defineNuxtComponent({
middleware: ["sidebase-auth", "can-organize-only"],
middleware: ["can-organize-only"],
setup() {
const i18n = useI18n();
const buttonLookup: { [key: string]: string } = {

View File

@@ -47,7 +47,7 @@
import { useGroupSelf } from "~/composables/use-groups";
export default defineNuxtComponent({
middleware: ["sidebase-auth", "can-manage-only"],
middleware: ["can-manage-only"],
setup() {
const { group, actions: groupActions } = useGroupSelf();
const i18n = useI18n();

View File

@@ -127,7 +127,7 @@ const MIGRATIONS = {
};
export default defineNuxtComponent({
middleware: ["sidebase-auth", "advanced-only"],
middleware: ["advanced-only"],
setup() {
const i18n = useI18n();
const { $globals } = useNuxtApp();

View File

@@ -52,7 +52,6 @@ import { useUserApi } from "~/composables/api";
import type { ReportOut } from "~/lib/api/types/reports";
export default defineNuxtComponent({
middleware: "sidebase-auth",
setup() {
const route = useRoute();
const id = route.params.id as string;

View File

@@ -43,7 +43,7 @@ export default defineNuxtComponent({
components: {
HouseholdPreferencesEditor,
},
middleware: ["sidebase-auth", "can-manage-household-only"],
middleware: ["can-manage-household-only"],
setup() {
const { household, actions: householdActions } = useHouseholdSelf();
const i18n = useI18n();

View File

@@ -75,7 +75,6 @@ import { useMealplans } from "~/composables/use-group-mealplan";
import { useUserMealPlanPreferences } from "~/composables/use-users/preferences";
export default defineNuxtComponent({
middleware: ["sidebase-auth"],
setup() {
const route = useRoute();
const router = useRouter();

View File

@@ -183,7 +183,6 @@ export default defineNuxtComponent({
GroupMealPlanRuleForm,
RecipeChips,
},
middleware: ["sidebase-auth"],
props: {
modelValue: {
type: Boolean,

View File

@@ -124,7 +124,6 @@ export default defineNuxtComponent({
components: {
UserAvatar,
},
middleware: ["sidebase-auth"],
setup() {
const $auth = useMealieAuth();
const api = useUserApi();

View File

@@ -199,7 +199,7 @@ interface OptionSection {
}
export default defineNuxtComponent({
middleware: ["sidebase-auth", "advanced-only"],
middleware: ["advanced-only"],
setup() {
const api = useUserApi();
const i18n = useI18n();

View File

@@ -75,7 +75,7 @@ import { alert } from "~/composables/use-toast";
export default defineNuxtComponent({
components: { GroupWebhookEditor },
middleware: ["sidebase-auth", "advanced-only"],
middleware: ["advanced-only"],
setup() {
const i18n = useI18n();
const { actions, webhooks } = useGroupWebhooks();

View File

@@ -304,7 +304,6 @@ export default defineNuxtComponent({
oidcLoggingIn.value = true;
try {
await $auth.oauthSignIn();
window.location.href = "/"; // Reload the app to get the new user
}
catch (error) {
await router.replace("/login?direct=1");
@@ -330,8 +329,7 @@ export default defineNuxtComponent({
formData.append("remember_me", String(form.remember));
try {
await $auth.signIn(formData, { redirect: false });
window.location.href = "/"; // Reload the app to get the new user
await $auth.signIn(formData);
}
catch (error) {
console.log(error);

View File

@@ -131,7 +131,6 @@ import { useShoppingListPreferences } from "~/composables/use-users/preferences"
import type { UserOut } from "~/lib/api/types/user";
export default defineNuxtComponent({
middleware: "sidebase-auth",
setup() {
const $auth = useMealieAuth();
const i18n = useI18n();

View File

@@ -21,7 +21,6 @@ import { useLoggedInState } from "~/composables/use-logged-in-state";
export default defineNuxtComponent({
components: { RecipeCardSection },
middleware: "sidebase-auth",
setup() {
const route = useRoute();
const i18n = useI18n();

View File

@@ -111,7 +111,7 @@ import { useUserApi } from "~/composables/api";
import type { VForm } from "~/types/auto-forms";
export default defineNuxtComponent({
middleware: ["sidebase-auth", "advanced-only"],
middleware: ["advanced-only"],
setup() {
const i18n = useI18n();
const $auth = useMealieAuth();

View File

@@ -213,7 +213,6 @@ export default defineNuxtComponent({
UserAvatar,
UserPasswordStrength,
},
middleware: "sidebase-auth",
setup() {
const i18n = useI18n();
const $auth = useMealieAuth();

View File

@@ -291,7 +291,6 @@ export default defineNuxtComponent({
UserAvatar,
StatsCards,
},
middleware: "sidebase-auth",
scrollToTop: true,
async setup() {
const i18n = useI18n();