WiFi Plug
WiFi Plug
NNuxt
Created by WiFi Plug on 4/30/2025 in #❓・help
supabase nuxt confirm page on email confirmation
@kapa.ai yeah that still didn't work, so the link i get sent to when clicking the confirmation email link in my email is my root page localhost:3000 rather than the redirect so could that be a part of it? but why does it send me to my root page and not the confirm page?
15 replies
NNuxt
Created by WiFi Plug on 4/30/2025 in #❓・help
supabase nuxt confirm page on email confirmation
@kapa.ai so my email template is set to the default {{ .confirmationemail }} my site url in supabase dashboard is set to http://localhost:3000 and my redirect urls is set to http://localhost:3000/auth/confirm my nuxt.config.ts is set to
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
modules: [
'@nuxt/eslint',
'@nuxt/ui-pro',
'@nuxt/image',
'@nuxtjs/supabase',
'@pinia/nuxt',
'pinia-plugin-persistedstate/nuxt',
],

imports: {
dirs: ['shared/**'],
},
devtools: { enabled: true },

css: ['~/assets/css/main.css'],

future: {
compatibilityVersion: 4,
},
compatibilityDate: '2024-11-01',

nitro: {
imports: {
dirs: ['shared/**'],
},
},

eslint: {
config: {
stylistic: true,
},
},

supabase: {
redirectOptions: {
login: '/',
callback: '/auth/confirm', // This should match your confirm page
exclude: ['/*'],
},
},
})
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
modules: [
'@nuxt/eslint',
'@nuxt/ui-pro',
'@nuxt/image',
'@nuxtjs/supabase',
'@pinia/nuxt',
'pinia-plugin-persistedstate/nuxt',
],

imports: {
dirs: ['shared/**'],
},
devtools: { enabled: true },

css: ['~/assets/css/main.css'],

future: {
compatibilityVersion: 4,
},
compatibilityDate: '2024-11-01',

nitro: {
imports: {
dirs: ['shared/**'],
},
},

eslint: {
config: {
stylistic: true,
},
},

supabase: {
redirectOptions: {
login: '/',
callback: '/auth/confirm', // This should match your confirm page
exclude: ['/*'],
},
},
})
and i have a page created at pages/auth/confirm.vue with
<script setup lang="ts">
const user = useSupabaseUser()
const redirectInfo = useSupabaseCookieRedirect()

watch(
user,
() => {
if (user.value) {
// Get redirect path, and clear it from the cookie
const path = redirectInfo.pluck()
// Redirect to the saved path, or fallback to home
return navigateTo(path || '/')
}
},
{ immediate: true }
)
</script>

<template>
<div>Waiting for login...</div>
</template>
<script setup lang="ts">
const user = useSupabaseUser()
const redirectInfo = useSupabaseCookieRedirect()

watch(
user,
() => {
if (user.value) {
// Get redirect path, and clear it from the cookie
const path = redirectInfo.pluck()
// Redirect to the saved path, or fallback to home
return navigateTo(path || '/')
}
},
{ immediate: true }
)
</script>

<template>
<div>Waiting for login...</div>
</template>
so why might it not be working?
15 replies
NNuxt
Created by WiFi Plug on 4/29/2025 in #❓・help
multiple modals how to be more efficient loading them
@kapa.ai so i should keep my v-model inside the individual components but also have the v-if in my layout where i load the modals?
20 replies
NNuxt
Created by WiFi Plug on 4/29/2025 in #❓・help
multiple modals how to be more efficient loading them
@kapa.ai so what does the conditional v-if achieve over using lazy? i thought lazy would only render when needed? as inside my register modal component for example i have "<template> <!-- Use Nuxt UI Modal component --> <!-- v-model controls visibility, bind directly to the Pinia store getter --> <UModal v-model="uiStore.isRegisterModalOpen" prevent-close>"
20 replies
NNuxt
Created by WiFi Plug on 4/29/2025 in #❓・help
multiple modals how to be more efficient loading them
so what does the conditional v-if achieve over using lazy? i thought lazy would only render when needed? as inside my register modal component for example i have "<template> <!-- Use Nuxt UI Modal component --> <!-- v-model controls visibility, bind directly to the Pinia store getter --> <UModal v-model="uiStore.isRegisterModalOpen" prevent-close>"
20 replies
NNuxt
Created by WiFi Plug on 4/29/2025 in #❓・help
multiple modals how to be more efficient loading them
@kapa.ai so i have a pinia ui store which stores which modal is currently open if any and my modals listen to that to be opened or closed. i do use nuxt ui but is my approach correct as im a beginner. and if not putting the modals in my default layout then where can i initialise them? i thought i could use the lazy prefix as a good solution?
20 replies
NNuxt
Created by WiFi Plug on 4/24/2025 in #❓・help
Custom layout
@kapa.ai "export default defineAppConfig({ uiPro: { dashboardPanel: { slots: { root: 'relative flex flex-col min-w-0 min-h-svh lg:not-last:border-r lg:not-last:border-default shrink-0', body: 'flex flex-col gap-4 sm:gap-6 flex-1 overflow-y-auto p-4 sm:p-6', handle: '' }, variants: { size: { true: { root: 'w-full lg:w-(--width)' }, false: { root: 'flex-1' } } } } } }) " "export default defineAppConfig({ uiPro: { dashboardGroup: { base: 'fixed inset-0 flex overflow-hidden' } } }) " this is the config for dashboard group and dashboard panel and the header component "export default defineAppConfig({ uiPro: { header: { slots: { root: 'bg-default/75 backdrop-blur border-b border-default h-(--ui-header-height) sticky top-0 z-50', container: 'flex items-center justify-between gap-3 h-full', left: 'lg:flex-1 flex items-center gap-1.5', center: 'hidden lg:flex', right: 'flex items-center justify-end lg:flex-1 gap-1.5', title: 'shrink-0 font-bold text-xl text-highlighted flex items-end gap-1.5', toggle: 'lg:hidden', content: 'lg:hidden', overlay: 'lg:hidden', header: 'px-4 sm:px-6 h-(--ui-header-height) shrink-0 flex items-center justify-between gap-3', body: 'p-4 sm:p-6 overflow-y-auto' }, variants: { toggleSide: { left: { toggle: '-ms-1.5' }, right: { toggle: '-me-1.5' } } } } } }) " based on this what's the simplest way to create my layout
15 replies
NNuxt
Created by WiFi Plug on 4/24/2025 in #❓・help
Custom layout
@kapa.ai the navbar in your example is hiding the top part of the chat and the top part of the main content
15 replies
NNuxt
Created by WiFi Plug on 4/24/2025 in #❓・help
Layout with chat on the right side that can be closed with main content filling remaining space
@kapa.ai now the chat is still full height and overlaying the navbar but i want the navbar on top then the chat below. can we do something where the navbar is outside of the dahboardnavbar as then it was properly on top taking up the full width?
16 replies
NNuxt
Created by WiFi Plug on 4/24/2025 in #❓・help
Layout with chat on the right side that can be closed with main content filling remaining space
@kapa.ai well i would like the navbar to be stuck to the top of the screen but full width of the screen too. so that the chat is not the full height of the screen but it starts below the navbar
16 replies
NNuxt
Created by WiFi Plug on 4/24/2025 in #❓・help
Layout with chat on the right side that can be closed with main content filling remaining space
well i would like the navbar to be stuck to the top of the screen but full width of the screen too. so that the chat is not the full height of the screen but it starts below the navbar
16 replies