From a375f2f5e2a29837bfebc8739cd5631d60635adc Mon Sep 17 00:00:00 2001 From: larbish Date: Wed, 18 Dec 2024 10:35:40 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20nuxt-mod?= =?UTF-8?q?ules/supabase@575e407f68b1d43d10a8a3f19fafb7030757b455=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 200.html | 2 +- 404.html | 2 +- _nuxt/builds/latest.json | 2 +- .../meta/4bd10805-dd97-440a-9ec7-7f593f481396.json | 1 + .../meta/b8bb49a0-d714-420e-9a48-3dcd8231d009.json | 1 - _payload.json | 2 +- api/_content/cache.1733842287527.json | 1 - api/_content/cache.1734518075052.json | 1 + ...733842287527.json => i5pZc4XEtQ.1734518075052.json} | 0 ...733842287527.json => 0CgxMh2nDn.1734518075052.json} | 0 ...733842287527.json => 0z8C0XHO1T.1734518075052.json} | 0 ...733842287527.json => 45OFyaq6jH.1734518075052.json} | 0 ...733842287527.json => 4SGzzquaGr.1734518075052.json} | 0 ...733842287527.json => 5439goEiFh.1734518075052.json} | 0 ...733842287527.json => 7akagRHES3.1734518075052.json} | 0 ...733842287527.json => 80r9Q1yB5X.1734518075052.json} | 0 ...733842287527.json => Gxz9GZ4NK0.1734518075052.json} | 0 ...733842287527.json => JJ9Joz4sQk.1734518075052.json} | 2 +- ...733842287527.json => MZBly8ycYV.1734518075052.json} | 0 ...733842287527.json => NX6rA77pmQ.1734518075052.json} | 0 ...733842287527.json => NmhWrRnmKx.1734518075052.json} | 0 ...733842287527.json => PKwnxE4Dvh.1734518075052.json} | 0 ...733842287527.json => Ue1UBSoyPa.1734518075052.json} | 0 ...733842287527.json => Xxnd0ydUti.1734518075052.json} | 0 ...733842287527.json => Z0Gn1CUVQt.1734518075052.json} | 0 ...733842287527.json => fAcRU6Tr0q.1734518075052.json} | 0 ...733842287527.json => hJ9QUBFRaO.1734518075052.json} | 0 ...733842287527.json => hTR0awNBk6.1734518075052.json} | 0 ...733842287527.json => kTW5TvkZlR.1734518075052.json} | 0 ...733842287527.json => lNIwYbwZIk.1734518075052.json} | 0 ...733842287527.json => qkxNYcIfXu.1734518075052.json} | 0 ...733842287527.json => qrL652uheB.1734518075052.json} | 0 ...733842287527.json => w5fRUDFpBK.1734518075052.json} | 0 ...733842287527.json => y8Nv5yEpsm.1734518075052.json} | 0 api/_github/contributors/index.json | 2 +- api/_github/releases/index.json | 2 +- api/search.json | 2 +- authentication/_payload.json | 2 +- authentication/index.html | 6 +++--- changelog/_payload.json | 2 +- changelog/index.html | 8 ++++---- demo/_payload.json | 2 +- demo/index.html | 6 +++--- get-started/_payload.json | 2 +- get-started/index.html | 8 ++++---- index.html | 6 +++--- roadmap/_payload.json | 2 +- roadmap/index.html | 6 +++--- usage/composables/usesupabaseclient/_payload.json | 2 +- usage/composables/usesupabaseclient/index.html | 6 +++--- usage/composables/usesupabasesession/_payload.json | 2 +- usage/composables/usesupabasesession/index.html | 10 +++++----- usage/composables/usesupabaseuser/_payload.json | 2 +- usage/composables/usesupabaseuser/index.html | 10 +++++----- usage/services/serversupabaseclient/_payload.json | 2 +- usage/services/serversupabaseclient/index.html | 6 +++--- usage/services/serversupabaseservicerole/_payload.json | 2 +- usage/services/serversupabaseservicerole/index.html | 6 +++--- usage/services/serversupabasesession/_payload.json | 2 +- usage/services/serversupabasesession/index.html | 6 +++--- usage/services/serversupabaseuser/_payload.json | 2 +- usage/services/serversupabaseuser/index.html | 6 +++--- 62 files changed, 67 insertions(+), 67 deletions(-) create mode 100644 _nuxt/builds/meta/4bd10805-dd97-440a-9ec7-7f593f481396.json delete mode 100644 _nuxt/builds/meta/b8bb49a0-d714-420e-9a48-3dcd8231d009.json delete mode 100644 api/_content/cache.1733842287527.json create mode 100644 api/_content/cache.1734518075052.json rename api/_content/navigation/{i5pZc4XEtQ.1733842287527.json => i5pZc4XEtQ.1734518075052.json} (100%) rename api/_content/query/{0CgxMh2nDn.1733842287527.json => 0CgxMh2nDn.1734518075052.json} (100%) rename api/_content/query/{0z8C0XHO1T.1733842287527.json => 0z8C0XHO1T.1734518075052.json} (100%) rename api/_content/query/{45OFyaq6jH.1733842287527.json => 45OFyaq6jH.1734518075052.json} (100%) rename api/_content/query/{4SGzzquaGr.1733842287527.json => 4SGzzquaGr.1734518075052.json} (100%) rename api/_content/query/{5439goEiFh.1733842287527.json => 5439goEiFh.1734518075052.json} (100%) rename api/_content/query/{7akagRHES3.1733842287527.json => 7akagRHES3.1734518075052.json} (100%) rename api/_content/query/{80r9Q1yB5X.1733842287527.json => 80r9Q1yB5X.1734518075052.json} (100%) rename api/_content/query/{Gxz9GZ4NK0.1733842287527.json => Gxz9GZ4NK0.1734518075052.json} (100%) rename api/_content/query/{JJ9Joz4sQk.1733842287527.json => JJ9Joz4sQk.1734518075052.json} (55%) rename api/_content/query/{MZBly8ycYV.1733842287527.json => MZBly8ycYV.1734518075052.json} (100%) rename api/_content/query/{NX6rA77pmQ.1733842287527.json => NX6rA77pmQ.1734518075052.json} (100%) rename api/_content/query/{NmhWrRnmKx.1733842287527.json => NmhWrRnmKx.1734518075052.json} (100%) rename api/_content/query/{PKwnxE4Dvh.1733842287527.json => PKwnxE4Dvh.1734518075052.json} (100%) rename api/_content/query/{Ue1UBSoyPa.1733842287527.json => Ue1UBSoyPa.1734518075052.json} (100%) rename api/_content/query/{Xxnd0ydUti.1733842287527.json => Xxnd0ydUti.1734518075052.json} (100%) rename api/_content/query/{Z0Gn1CUVQt.1733842287527.json => Z0Gn1CUVQt.1734518075052.json} (100%) rename api/_content/query/{fAcRU6Tr0q.1733842287527.json => fAcRU6Tr0q.1734518075052.json} (100%) rename api/_content/query/{hJ9QUBFRaO.1733842287527.json => hJ9QUBFRaO.1734518075052.json} (100%) rename api/_content/query/{hTR0awNBk6.1733842287527.json => hTR0awNBk6.1734518075052.json} (100%) rename api/_content/query/{kTW5TvkZlR.1733842287527.json => kTW5TvkZlR.1734518075052.json} (100%) rename api/_content/query/{lNIwYbwZIk.1733842287527.json => lNIwYbwZIk.1734518075052.json} (100%) rename api/_content/query/{qkxNYcIfXu.1733842287527.json => qkxNYcIfXu.1734518075052.json} (100%) rename api/_content/query/{qrL652uheB.1733842287527.json => qrL652uheB.1734518075052.json} (100%) rename api/_content/query/{w5fRUDFpBK.1733842287527.json => w5fRUDFpBK.1734518075052.json} (100%) rename api/_content/query/{y8Nv5yEpsm.1733842287527.json => y8Nv5yEpsm.1734518075052.json} (100%) diff --git a/200.html b/200.html index 5374a5e3a..1ed6027af 100644 --- a/200.html +++ b/200.html @@ -27,4 +27,4 @@
- \ No newline at end of file + \ No newline at end of file diff --git a/404.html b/404.html index 5374a5e3a..1ed6027af 100644 --- a/404.html +++ b/404.html @@ -27,4 +27,4 @@
- \ No newline at end of file + \ No newline at end of file diff --git a/_nuxt/builds/latest.json b/_nuxt/builds/latest.json index ffb3dcc43..7db52ed94 100644 --- a/_nuxt/builds/latest.json +++ b/_nuxt/builds/latest.json @@ -1 +1 @@ -{"id":"b8bb49a0-d714-420e-9a48-3dcd8231d009","timestamp":1733842291928} \ No newline at end of file +{"id":"4bd10805-dd97-440a-9ec7-7f593f481396","timestamp":1734518078358} \ No newline at end of file diff --git a/_nuxt/builds/meta/4bd10805-dd97-440a-9ec7-7f593f481396.json b/_nuxt/builds/meta/4bd10805-dd97-440a-9ec7-7f593f481396.json new file mode 100644 index 000000000..a18a3dd66 --- /dev/null +++ b/_nuxt/builds/meta/4bd10805-dd97-440a-9ec7-7f593f481396.json @@ -0,0 +1 @@ +{"id":"4bd10805-dd97-440a-9ec7-7f593f481396","timestamp":1734518078358,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":["/","/authentication","/get-started","/usage/services/serversupabaseclient","/demo","/usage/services/serversupabaseuser","/usage/services/serversupabasesession","/usage/composables/usesupabaseuser","/usage/services/serversupabaseservicerole","/usage/composables/usesupabaseclient","/usage/composables/usesupabasesession","/roadmap","/changelog"]} \ No newline at end of file diff --git a/_nuxt/builds/meta/b8bb49a0-d714-420e-9a48-3dcd8231d009.json b/_nuxt/builds/meta/b8bb49a0-d714-420e-9a48-3dcd8231d009.json deleted file mode 100644 index 201cdd6ac..000000000 --- a/_nuxt/builds/meta/b8bb49a0-d714-420e-9a48-3dcd8231d009.json +++ /dev/null @@ -1 +0,0 @@ -{"id":"b8bb49a0-d714-420e-9a48-3dcd8231d009","timestamp":1733842291928,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":["/","/authentication","/usage/services/serversupabaseclient","/get-started","/demo","/usage/services/serversupabasesession","/usage/services/serversupabaseuser","/usage/composables/usesupabasesession","/usage/composables/usesupabaseuser","/roadmap","/usage/composables/usesupabaseclient","/usage/services/serversupabaseservicerole","/changelog"]} \ No newline at end of file diff --git a/_payload.json b/_payload.json index 69239141e..ebe864a3b 100644 --- a/_payload.json +++ b/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":374},["ShallowReactive",2],{"navigation":3,"index":58,"1CZYD6bgNK":110,"q3uGftTUSs":135},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":59,"_dir":60,"_draft":61,"_partial":61,"_locale":60,"title":62,"description":63,"navigation":61,"hero":64,"features":78,"_id":104,"_type":105,"_source":106,"_file":107,"_stem":108,"_extension":109},"/","",false,"Nuxt Supabase - Home","A supa simple wrapper around supabase-js to enable usage and integration within Nuxt.",{"title":65,"description":63,"orientation":66,"links":67,"code":77},"Nuxt [Supabase]{.text-primary}","horizontal",[68,71],{"label":69,"icon":7,"to":6,"size":70},"Get started","lg",{"label":72,"icon":73,"color":74,"to":75,"target":76,"size":70},"Star on github","i-heroicons-star","white","https://github.com/nuxt-modules/supabase","_blank","```ts\n const supabase = useSupabaseClient()\n const email = ref('')\n\n const signInWithOtp = async () => {\n await supabase.auth.signInWithOtp({\n email: email.value,\n })\n }\n```\n",{"title":79,"items":80},"Shipped with many features",[81,85,89,93,97,100],{"title":82,"icon":83,"to":84,"target":76},"Nuxt 3 ready","i-simple-icons-nuxtdotjs","https://nuxt.com",{"title":86,"icon":87,"to":88,"target":76},"Vue 3 composables","i-simple-icons-vuedotjs","https://vuejs.org/guide/reusability/composables.html",{"title":90,"icon":91,"to":92,"target":76},"Supabase-js V2","i-simple-icons-supabase","https://supabase.com",{"title":94,"icon":95,"to":96},"Usage in API server routes","i-heroicons-server","usage/services/serversupabaseclient",{"title":98,"icon":99,"to":10},"Authentication support","i-heroicons-key",{"title":101,"icon":102,"to":103,"target":76},"TypeScript support","i-simple-icons-typescript","https://www.typescriptlang.org","content:index.yml","yaml","content","index.yml","index","yml",{"data":111,"body":113,"excerpt":-1,"toc":132},{"title":60,"description":112},"Nuxt Supabase",{"type":114,"children":115},"root",[116],{"type":117,"tag":118,"props":119,"children":120},"element","p",{},[121,124],{"type":122,"value":123},"text","Nuxt ",{"type":117,"tag":125,"props":126,"children":129},"span",{"className":127},[128],"text-primary",[130],{"type":122,"value":131},"Supabase",{"title":60,"searchDepth":133,"depth":133,"links":134},2,[],{"data":136,"body":137,"excerpt":-1,"toc":372},{"title":60,"description":60},{"type":114,"children":138},[139,366],{"type":117,"tag":140,"props":141,"children":145},"pre",{"className":142,"code":143,"language":144,"meta":60,"style":60},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight"," const supabase = useSupabaseClient()\n const email = ref('')\n\n const signInWithOtp = async () => {\n await supabase.auth.signInWithOtp({\n email: email.value,\n })\n }\n","ts",[146],{"type":117,"tag":147,"props":148,"children":149},"code",{"__ignoreMap":60},[150,184,220,230,267,311,344,357],{"type":117,"tag":125,"props":151,"children":154},{"class":152,"line":153},"line",1,[155,161,167,173,179],{"type":117,"tag":125,"props":156,"children":158},{"style":157},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[159],{"type":122,"value":160}," const",{"type":117,"tag":125,"props":162,"children":164},{"style":163},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[165],{"type":122,"value":166}," supabase ",{"type":117,"tag":125,"props":168,"children":170},{"style":169},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[171],{"type":122,"value":172},"=",{"type":117,"tag":125,"props":174,"children":176},{"style":175},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[177],{"type":122,"value":178}," useSupabaseClient",{"type":117,"tag":125,"props":180,"children":181},{"style":163},[182],{"type":122,"value":183},"()\n",{"type":117,"tag":125,"props":185,"children":186},{"class":152,"line":133},[187,191,196,200,205,210,215],{"type":117,"tag":125,"props":188,"children":189},{"style":157},[190],{"type":122,"value":160},{"type":117,"tag":125,"props":192,"children":193},{"style":163},[194],{"type":122,"value":195}," email ",{"type":117,"tag":125,"props":197,"children":198},{"style":169},[199],{"type":122,"value":172},{"type":117,"tag":125,"props":201,"children":202},{"style":175},[203],{"type":122,"value":204}," ref",{"type":117,"tag":125,"props":206,"children":207},{"style":163},[208],{"type":122,"value":209},"(",{"type":117,"tag":125,"props":211,"children":212},{"style":169},[213],{"type":122,"value":214},"''",{"type":117,"tag":125,"props":216,"children":217},{"style":163},[218],{"type":122,"value":219},")\n",{"type":117,"tag":125,"props":221,"children":223},{"class":152,"line":222},3,[224],{"type":117,"tag":125,"props":225,"children":227},{"emptyLinePlaceholder":226},true,[228],{"type":122,"value":229},"\n",{"type":117,"tag":125,"props":231,"children":233},{"class":152,"line":232},4,[234,238,243,247,252,257,262],{"type":117,"tag":125,"props":235,"children":236},{"style":157},[237],{"type":122,"value":160},{"type":117,"tag":125,"props":239,"children":240},{"style":163},[241],{"type":122,"value":242}," signInWithOtp ",{"type":117,"tag":125,"props":244,"children":245},{"style":169},[246],{"type":122,"value":172},{"type":117,"tag":125,"props":248,"children":249},{"style":157},[250],{"type":122,"value":251}," async",{"type":117,"tag":125,"props":253,"children":254},{"style":169},[255],{"type":122,"value":256}," ()",{"type":117,"tag":125,"props":258,"children":259},{"style":157},[260],{"type":122,"value":261}," =>",{"type":117,"tag":125,"props":263,"children":264},{"style":169},[265],{"type":122,"value":266}," {\n",{"type":117,"tag":125,"props":268,"children":270},{"class":152,"line":269},5,[271,277,282,287,292,296,301,306],{"type":117,"tag":125,"props":272,"children":274},{"style":273},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[275],{"type":122,"value":276}," await",{"type":117,"tag":125,"props":278,"children":279},{"style":163},[280],{"type":122,"value":281}," supabase",{"type":117,"tag":125,"props":283,"children":284},{"style":169},[285],{"type":122,"value":286},".",{"type":117,"tag":125,"props":288,"children":289},{"style":163},[290],{"type":122,"value":291},"auth",{"type":117,"tag":125,"props":293,"children":294},{"style":169},[295],{"type":122,"value":286},{"type":117,"tag":125,"props":297,"children":298},{"style":175},[299],{"type":122,"value":300},"signInWithOtp",{"type":117,"tag":125,"props":302,"children":304},{"style":303},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[305],{"type":122,"value":209},{"type":117,"tag":125,"props":307,"children":308},{"style":169},[309],{"type":122,"value":310},"{\n",{"type":117,"tag":125,"props":312,"children":314},{"class":152,"line":313},6,[315,320,325,330,334,339],{"type":117,"tag":125,"props":316,"children":317},{"style":303},[318],{"type":122,"value":319}," email",{"type":117,"tag":125,"props":321,"children":322},{"style":169},[323],{"type":122,"value":324},":",{"type":117,"tag":125,"props":326,"children":327},{"style":163},[328],{"type":122,"value":329}," email",{"type":117,"tag":125,"props":331,"children":332},{"style":169},[333],{"type":122,"value":286},{"type":117,"tag":125,"props":335,"children":336},{"style":163},[337],{"type":122,"value":338},"value",{"type":117,"tag":125,"props":340,"children":341},{"style":169},[342],{"type":122,"value":343},",\n",{"type":117,"tag":125,"props":345,"children":347},{"class":152,"line":346},7,[348,353],{"type":117,"tag":125,"props":349,"children":350},{"style":169},[351],{"type":122,"value":352}," }",{"type":117,"tag":125,"props":354,"children":355},{"style":303},[356],{"type":122,"value":219},{"type":117,"tag":125,"props":358,"children":360},{"class":152,"line":359},8,[361],{"type":117,"tag":125,"props":362,"children":363},{"style":169},[364],{"type":122,"value":365}," }\n",{"type":117,"tag":367,"props":368,"children":369},"style",{},[370],{"type":122,"value":371},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":60,"searchDepth":133,"depth":133,"links":373},[],1733842348634] \ No newline at end of file +[{"data":1,"prerenderedAt":374},["ShallowReactive",2],{"navigation":3,"index":58,"1CZYD6bgNK":110,"q3uGftTUSs":135},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":59,"_dir":60,"_draft":61,"_partial":61,"_locale":60,"title":62,"description":63,"navigation":61,"hero":64,"features":78,"_id":104,"_type":105,"_source":106,"_file":107,"_stem":108,"_extension":109},"/","",false,"Nuxt Supabase - Home","A supa simple wrapper around supabase-js to enable usage and integration within Nuxt.",{"title":65,"description":63,"orientation":66,"links":67,"code":77},"Nuxt [Supabase]{.text-primary}","horizontal",[68,71],{"label":69,"icon":7,"to":6,"size":70},"Get started","lg",{"label":72,"icon":73,"color":74,"to":75,"target":76,"size":70},"Star on github","i-heroicons-star","white","https://github.com/nuxt-modules/supabase","_blank","```ts\n const supabase = useSupabaseClient()\n const email = ref('')\n\n const signInWithOtp = async () => {\n await supabase.auth.signInWithOtp({\n email: email.value,\n })\n }\n```\n",{"title":79,"items":80},"Shipped with many features",[81,85,89,93,97,100],{"title":82,"icon":83,"to":84,"target":76},"Nuxt 3 ready","i-simple-icons-nuxtdotjs","https://nuxt.com",{"title":86,"icon":87,"to":88,"target":76},"Vue 3 composables","i-simple-icons-vuedotjs","https://vuejs.org/guide/reusability/composables.html",{"title":90,"icon":91,"to":92,"target":76},"Supabase-js V2","i-simple-icons-supabase","https://supabase.com",{"title":94,"icon":95,"to":96},"Usage in API server routes","i-heroicons-server","usage/services/serversupabaseclient",{"title":98,"icon":99,"to":10},"Authentication support","i-heroicons-key",{"title":101,"icon":102,"to":103,"target":76},"TypeScript support","i-simple-icons-typescript","https://www.typescriptlang.org","content:index.yml","yaml","content","index.yml","index","yml",{"data":111,"body":113,"excerpt":-1,"toc":132},{"title":60,"description":112},"Nuxt Supabase",{"type":114,"children":115},"root",[116],{"type":117,"tag":118,"props":119,"children":120},"element","p",{},[121,124],{"type":122,"value":123},"text","Nuxt ",{"type":117,"tag":125,"props":126,"children":129},"span",{"className":127},[128],"text-primary",[130],{"type":122,"value":131},"Supabase",{"title":60,"searchDepth":133,"depth":133,"links":134},2,[],{"data":136,"body":137,"excerpt":-1,"toc":372},{"title":60,"description":60},{"type":114,"children":138},[139,366],{"type":117,"tag":140,"props":141,"children":145},"pre",{"className":142,"code":143,"language":144,"meta":60,"style":60},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight"," const supabase = useSupabaseClient()\n const email = ref('')\n\n const signInWithOtp = async () => {\n await supabase.auth.signInWithOtp({\n email: email.value,\n })\n }\n","ts",[146],{"type":117,"tag":147,"props":148,"children":149},"code",{"__ignoreMap":60},[150,184,220,230,267,311,344,357],{"type":117,"tag":125,"props":151,"children":154},{"class":152,"line":153},"line",1,[155,161,167,173,179],{"type":117,"tag":125,"props":156,"children":158},{"style":157},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[159],{"type":122,"value":160}," const",{"type":117,"tag":125,"props":162,"children":164},{"style":163},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[165],{"type":122,"value":166}," supabase ",{"type":117,"tag":125,"props":168,"children":170},{"style":169},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[171],{"type":122,"value":172},"=",{"type":117,"tag":125,"props":174,"children":176},{"style":175},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[177],{"type":122,"value":178}," useSupabaseClient",{"type":117,"tag":125,"props":180,"children":181},{"style":163},[182],{"type":122,"value":183},"()\n",{"type":117,"tag":125,"props":185,"children":186},{"class":152,"line":133},[187,191,196,200,205,210,215],{"type":117,"tag":125,"props":188,"children":189},{"style":157},[190],{"type":122,"value":160},{"type":117,"tag":125,"props":192,"children":193},{"style":163},[194],{"type":122,"value":195}," email ",{"type":117,"tag":125,"props":197,"children":198},{"style":169},[199],{"type":122,"value":172},{"type":117,"tag":125,"props":201,"children":202},{"style":175},[203],{"type":122,"value":204}," ref",{"type":117,"tag":125,"props":206,"children":207},{"style":163},[208],{"type":122,"value":209},"(",{"type":117,"tag":125,"props":211,"children":212},{"style":169},[213],{"type":122,"value":214},"''",{"type":117,"tag":125,"props":216,"children":217},{"style":163},[218],{"type":122,"value":219},")\n",{"type":117,"tag":125,"props":221,"children":223},{"class":152,"line":222},3,[224],{"type":117,"tag":125,"props":225,"children":227},{"emptyLinePlaceholder":226},true,[228],{"type":122,"value":229},"\n",{"type":117,"tag":125,"props":231,"children":233},{"class":152,"line":232},4,[234,238,243,247,252,257,262],{"type":117,"tag":125,"props":235,"children":236},{"style":157},[237],{"type":122,"value":160},{"type":117,"tag":125,"props":239,"children":240},{"style":163},[241],{"type":122,"value":242}," signInWithOtp ",{"type":117,"tag":125,"props":244,"children":245},{"style":169},[246],{"type":122,"value":172},{"type":117,"tag":125,"props":248,"children":249},{"style":157},[250],{"type":122,"value":251}," async",{"type":117,"tag":125,"props":253,"children":254},{"style":169},[255],{"type":122,"value":256}," ()",{"type":117,"tag":125,"props":258,"children":259},{"style":157},[260],{"type":122,"value":261}," =>",{"type":117,"tag":125,"props":263,"children":264},{"style":169},[265],{"type":122,"value":266}," {\n",{"type":117,"tag":125,"props":268,"children":270},{"class":152,"line":269},5,[271,277,282,287,292,296,301,306],{"type":117,"tag":125,"props":272,"children":274},{"style":273},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[275],{"type":122,"value":276}," await",{"type":117,"tag":125,"props":278,"children":279},{"style":163},[280],{"type":122,"value":281}," supabase",{"type":117,"tag":125,"props":283,"children":284},{"style":169},[285],{"type":122,"value":286},".",{"type":117,"tag":125,"props":288,"children":289},{"style":163},[290],{"type":122,"value":291},"auth",{"type":117,"tag":125,"props":293,"children":294},{"style":169},[295],{"type":122,"value":286},{"type":117,"tag":125,"props":297,"children":298},{"style":175},[299],{"type":122,"value":300},"signInWithOtp",{"type":117,"tag":125,"props":302,"children":304},{"style":303},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[305],{"type":122,"value":209},{"type":117,"tag":125,"props":307,"children":308},{"style":169},[309],{"type":122,"value":310},"{\n",{"type":117,"tag":125,"props":312,"children":314},{"class":152,"line":313},6,[315,320,325,330,334,339],{"type":117,"tag":125,"props":316,"children":317},{"style":303},[318],{"type":122,"value":319}," email",{"type":117,"tag":125,"props":321,"children":322},{"style":169},[323],{"type":122,"value":324},":",{"type":117,"tag":125,"props":326,"children":327},{"style":163},[328],{"type":122,"value":329}," email",{"type":117,"tag":125,"props":331,"children":332},{"style":169},[333],{"type":122,"value":286},{"type":117,"tag":125,"props":335,"children":336},{"style":163},[337],{"type":122,"value":338},"value",{"type":117,"tag":125,"props":340,"children":341},{"style":169},[342],{"type":122,"value":343},",\n",{"type":117,"tag":125,"props":345,"children":347},{"class":152,"line":346},7,[348,353],{"type":117,"tag":125,"props":349,"children":350},{"style":169},[351],{"type":122,"value":352}," }",{"type":117,"tag":125,"props":354,"children":355},{"style":303},[356],{"type":122,"value":219},{"type":117,"tag":125,"props":358,"children":360},{"class":152,"line":359},8,[361],{"type":117,"tag":125,"props":362,"children":363},{"style":169},[364],{"type":122,"value":365}," }\n",{"type":117,"tag":367,"props":368,"children":369},"style",{},[370],{"type":122,"value":371},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":60,"searchDepth":133,"depth":133,"links":373},[],1734518131701] \ No newline at end of file diff --git a/api/_content/cache.1733842287527.json b/api/_content/cache.1733842287527.json deleted file mode 100644 index 8b8da96c3..000000000 --- a/api/_content/cache.1733842287527.json +++ /dev/null @@ -1 +0,0 @@ -{"generatedAt":1733842348581,"generateTime":3203,"contents":[{"_path":"/get-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get Started","description":"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.","icon":"i-heroicons-rocket-launch","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" is a Nuxt module for first class integration with Supabase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt 3"}]},{"type":"text","value":" documentation and "},{"type":"element","tag":"a","props":{"href":"https://supabase.com","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" to learn more."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For integrating Supabase with Nuxt 2, checkout "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase-community/nuxt-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-community/nuxt-supabase"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" dev dependency to your project:"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"npx nuxi@latest module add supabase\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"npx"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxi@latest"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" module"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" add"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" supabase\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"modules"}]},{"type":"text","value":" section of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" modules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" ["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"]"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\"\n","filename":"env","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Alternatively, you can prefix the env variables with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NUXT_PUBLIC_"}]},{"type":"text","value":" in order to use runtimeConfig."}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can configure the supabase module by using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"supabase"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Options\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"url"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"url"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_URL"}]},{"type":"text","value":" (ex: "},{"type":"element","tag":"a","props":{"href":"https://example.supabase.co","rel":["nofollow"]},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The unique Supabase URL which is supplied when you create a new project in your project dashboard."}]},{"type":"element","tag":"h3","props":{"id":"key"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies."}]},{"type":"element","tag":"h3","props":{"id":"servicekey"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serviceKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_SERVICE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'service role key', has super admin rights and can bypass your Row Level Security."}]},{"type":"element","tag":"h3","props":{"id":"redirect"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false."}]},{"type":"element","tag":"h3","props":{"id":"redirectoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" redirectOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" callback"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" include"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" undefined,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" exclude"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" []"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieRedirect"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" false"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login"}]},{"type":"text","value":": User will be redirected to this path if not authenticated or after logout."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"callback"}]},{"type":"text","value":": This is the path the user will be redirect to after supabase login redirection. Should match configured "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectTo"}]},{"type":"text","value":" option of your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithoauth","rel":["nofollow"]},"children":[{"type":"text","value":"signIn method"}]},{"type":"text","value":". Should also be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":": Routes to include in the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/admin(/*)?']"}]},{"type":"text","value":" will enable the redirect only for the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"admin"}]},{"type":"text","value":" page and all sub-pages."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":": Routes to exclude from the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/foo', '/bar/*']"}]},{"type":"text","value":" will exclude the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"foo"}]},{"type":"text","value":" page and all pages in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bar"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"text","value":" page to redirect the user to the page they previously tried to visit."}]}]},{"type":"element","tag":"h3","props":{"id":"cookiename"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Cookie name used for storing the redirect path when using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option, added in front of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"text","value":" to form the full cookie name e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb-redirect-path"}]}]},{"type":"element","tag":"h3","props":{"id":"cookieoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" maxAge"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 8"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" sameSite"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"lax"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" secure"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Options for cookies used to share tokens between server and client, refer to "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/api/composables/use-cookie#options","rel":["nofollow"]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":" for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime."}]},{"type":"element","tag":"h3","props":{"id":"types"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"types"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Set to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" to disable."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"h3","props":{"id":"clientoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: { }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase client options "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing#parameters","rel":["nofollow"]},"children":[{"type":"text","value":"available here"}]},{"type":"text","value":" merged with default values from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" flowType"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pkce"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" autoRefreshToken"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" detectSessionInUrl"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" persistSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"demo"},"children":[{"type":"text","value":"Demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A live demo is made for see this module in action on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]},{"type":"text","value":", read more in the "},{"type":"element","tag":"a","props":{"href":"/demo"},"children":[{"type":"text","value":"demo section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Also checkout the "},{"type":"element","tag":"a","props":{"href":"https://www.youtube.com/watch?v=jIyiRT6zT8Q","rel":["nofollow"]},"children":[{"type":"text","value":"YouTube video"}]},{"type":"text","value":" about its usage in a live demo."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"options","depth":2,"text":"Options","children":[{"id":"url","depth":3,"text":"url"},{"id":"key","depth":3,"text":"key"},{"id":"servicekey","depth":3,"text":"serviceKey"},{"id":"redirect","depth":3,"text":"redirect"},{"id":"redirectoptions","depth":3,"text":"redirectOptions"},{"id":"cookiename","depth":3,"text":"cookieName"},{"id":"cookieoptions","depth":3,"text":"cookieOptions"},{"id":"types","depth":3,"text":"types"},{"id":"clientoptions","depth":3,"text":"clientOptions"}]},{"id":"demo","depth":2,"text":"Demo"}]}},"_type":"markdown","_id":"content:2.get-started.md","_source":"content","_file":"2.get-started.md","_stem":"2.get-started","_extension":"md"},{"_path":"/authentication","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Authentication","description":"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server","icon":"i-heroicons-lock-closed","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"With the default options, the module requires a log-in page and a confirm page to handle the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/resources/glossary#pkce","rel":["nofollow"]},"children":[{"type":"text","value":"PKCE authorization code flow"}]},{"type":"text","value":". If you want to understand how it works under the hood, you can read this "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/server-side-rendering#understanding-the-authentication-flow","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"All you need to do is to create a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login.vue"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"confirm.vue"}]},{"type":"text","value":" page in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"pages"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For advanced users who want to implement the auth behaviour themselves, you can disable or override the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect options"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"log-in-page-login"},"children":[{"type":"text","value":"Log-in page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/login"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Each time a user is trying to access a page that needs authentication, he will automatically be redirected to the configured log in page. If you want to allow access to \"public\" page, you just need to add them in the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Ensure to activate the authentication providers you want in the Supabase Dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> Providers"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The log-in page initiates the log-in method(s) you choose from the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithpassword","rel":["nofollow"]},"children":[{"type":"text","value":"available authorization methods"}]},{"type":"text","value":" provided by Supabase, it could looks like:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/login.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"''"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOtp "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" emailRedirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" @"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"click"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Sign In with E-Mail\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"input\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" />\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once the authorization flow is triggered using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"auth"}]},{"type":"text","value":" wrapper of the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable, the session management is handled automatically and the user will be redirected to the page you specify in the redirect option ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]},{"type":"text","value":" by default)."}]},{"type":"element","tag":"h2","props":{"id":"confirm-page-confirm"},"children":[{"type":"text","value":"Confirm page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The confirmation page receives the supabase callback. From there you can check the user value and redirect to the appropriate page."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The redirect URL must be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to protected page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"redirect-path"},"children":[{"type":"text","value":"Redirect path"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can easily handle redirection to the initial requested route after login."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You must enable the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":" option of the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"redirectOptions"}]},{"type":"text","value":" to allow cookie storage and take benefit of this feature."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Get redirect path from cookies\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" cookieName "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRuntimeConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" redirectPath "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Clear cookie\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" null\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to path\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"redirectPath"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ||"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"log-in-page-login","depth":2,"text":"Log-in page - /login"},{"id":"confirm-page-confirm","depth":2,"text":"Confirm page - /confirm","children":[{"id":"redirect-path","depth":3,"text":"Redirect path"}]}]}},"_type":"markdown","_id":"content:3.authentication.md","_source":"content","_file":"3.authentication.md","_stem":"3.authentication","_extension":"md"},{"_path":"/usage/_dir","_dir":"usage","_draft":false,"_partial":true,"_locale":"","title":"Usage","icon":"heroicons:book-open","_id":"content:4.usage:_dir.yml","_type":"yaml","_source":"content","_file":"4.usage/_dir.yml","_stem":"4.usage/_dir","_extension":"yml"},{"_path":"/usage/composables/_dir","_dir":"composables","_draft":false,"_partial":true,"_locale":"","title":"Vue composables","_id":"content:4.usage:composables:_dir.yml","_type":"yaml","_source":"content","_file":"4.usage/composables/_dir.yml","_stem":"4.usage/composables/_dir","_extension":"yml"},{"_path":"/usage/composables/usesupabaseclient","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseClient","description":"Make requests to the Supabase API with the useSupabaseClient composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"Auto-import"}]},{"type":"text","value":" your client inside your vue files."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This composable is using "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/supabase-js/","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js"}]},{"type":"text","value":" under the hood, it gives access to the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase client"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. It establishes the connection with the database and make use of user JWT to apply "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"RLS Policies"}]},{"type":"text","value":" implemented in Supabase. If you want to bypass policies, you can use the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseservicerole"},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"authentication"},"children":[{"type":"text","value":"Authentication"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The useSupabaseClient composable is providing all methods to manage authorization under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient().auth"}]},{"type":"text","value":". For more details please see the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-api","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js auth documentation"}]},{"type":"text","value":". Here is an example for signing in and out:"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you want a full explanation on how to handle the authentication process, please read this "},{"type":"element","tag":"a","props":{"href":"/get-started#handle-authentication"},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"script setup lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOAuth "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOAuth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" provider"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"github"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" redirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signOut "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signOut"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please also take a look at "},{"type":"element","tag":"a","props":{"href":"/get-started"},"children":[{"type":"text","value":"Get Started"}]},{"type":"text","value":" for the authorization flow."}]},{"type":"element","tag":"h2","props":{"id":"database-request"},"children":[{"type":"text","value":"Database Request"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please check "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/select","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" documentation to fully use the power of Supabase client."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here is an example of a fetch using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"select"}]},{"type":"text","value":" method with Nuxt 3 "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#useasyncdata","rel":["nofollow"]},"children":[{"type":"text","value":"useAsyncData"}]},{"type":"text","value":" composable."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" restaurant "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurant"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurants"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name, location"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"eq"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"My Restaurant Name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"single"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"realtime"},"children":[{"type":"text","value":"Realtime"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Based on "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/realtime","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase Realtime"}]},{"type":"text","value":", listen to changes in your PostgreSQL Database and broadcasts them over WebSockets."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To enable it, make sure you have turned on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/api#realtime-api","rel":["nofollow"]},"children":[{"type":"text","value":"Realtime API"}]},{"type":"text","value":" for your table."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then, listen to changes directly in your vue page / component:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" RealtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@supabase/supabase-js"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"let"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" RealtimeChannel\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Fetch collaborators and get the refresh method provided by useAsyncData\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" refresh"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" refreshCollaborators "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onMounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Real time listener for new workouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"channel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public:collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"on"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"postgres_changes"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" schema"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" refreshCollaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" )\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"subscribe"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Don't forget to unsubscribe when user left the page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onUnmounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"removeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"typescript"},"children":[{"type":"text","value":"Typescript"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Database typings are passed to the client out of the box if the database generated types are found at "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]},{"type":"text","value":" or "},{"type":"element","tag":"a","props":{"href":"/get-started#types"},"children":[{"type":"text","value":"your configured types path"}]},{"type":"text","value":". Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types typescript --local > types/database.types.ts\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can also pass Database typings to the client manually:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"~/types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"authentication","depth":2,"text":"Authentication"},{"id":"database-request","depth":2,"text":"Database Request"},{"id":"realtime","depth":2,"text":"Realtime"},{"id":"typescript","depth":2,"text":"Typescript"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseClient.md","_source":"content","_file":"4.usage/composables/useSupabaseClient.md","_stem":"4.usage/composables/useSupabaseClient","_extension":"md"},{"_path":"/usage/composables/usesupabasesession","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseSession","description":"Auto import and use your Supabase user's session with the useSupabaseSession composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user's session everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you just need the User's information you can use "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" which returns just the User information of the session."}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const session = useSupabaseSession()\n\n if (!session.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseSession.md","_source":"content","_file":"4.usage/composables/useSupabaseSession.md","_stem":"4.usage/composables/useSupabaseSession","_extension":"md"},{"_path":"/usage/composables/usesupabaseuser","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseUser","description":"Auto import and use your Supabase user with the useSupabaseUser composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const user = useSupabaseUser()\n\n if (!user.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseUser.md","_source":"content","_file":"4.usage/composables/useSupabaseUser.md","_stem":"4.usage/composables/useSupabaseUser","_extension":"md"},{"_path":"/usage/services/_dir","_dir":"services","_draft":false,"_partial":true,"_locale":"","title":"Server services","_id":"content:4.usage:services:_dir.yml","_type":"yaml","_source":"content","_file":"4.usage/services/_dir.yml","_stem":"4.usage/services/_dir","_extension":"yml"},{"_path":"/usage/services/serversupabaseclient","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseClient","description":"Make requests to the Supabase API on server side with the serverSupabaseClient service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is working similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable but is designed to be used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":". Be careful, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" is returning a promise."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseClient } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = await serverSupabaseClient(event)\n\n const { data } = await client.from('libraries').select('*')\n\n return { libraries: data }\n})\n","filename":"server/api/libraries.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchLibrary = async () => {\n const { libraries } = await $fetch('/api/libraries')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchLibrary "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const { data: { libraries }} = await useFetch('/api/libraries', {\n headers: useRequestHeaders(['cookie'])\n})\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:1.serverSupabaseClient.md","_source":"content","_file":"4.usage/services/1.serverSupabaseClient.md","_stem":"4.usage/services/1.serverSupabaseClient","_extension":"md"},{"_path":"/usage/services/serversupabaseservicerole","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseServiceRole","description":"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service","navigation":{"title":"serverSupabaseServiceRole"},"body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is designed to work only in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":", there is no vue composable equivalent."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"It works similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseclient"},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" but it provides a client with super admin rights that can bypass your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"Row Level Security"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_SERVICE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. Checkout the doc if you want to know more about "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-deep-dive-jwts#jwts-in-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase keys"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseServiceRole } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = serverSupabaseServiceRole(event)\n\n const { data } = await client.from('rls-protected-table').select()\n\n return { sensitiveData: data }\n})\n","filename":"server/api/bypass-rls.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"rls-protected-table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchSensitiveData = async () => {\n const { sensitiveData } = await useFetch('/api/bypass-rls')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSensitiveData "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/bypass-rls"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:2.serverSupabaseServiceRole.md","_source":"content","_file":"4.usage/services/2.serverSupabaseServiceRole.md","_stem":"4.usage/services/2.serverSupabaseServiceRole","_extension":"md"},{"_path":"/usage/services/serversupabasesession","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseSession","description":"Get your Supabase user's session from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabasesession"},"children":[{"type":"text","value":"useSupabaseSession"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be advised that "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" is considered unsafe, since the session comes from the client and users can tamper with it. For checking if the user is logged in, always use "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseuser"},"children":[{"type":"text","value":"serverSupabaseUser"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseSession } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseSession(event)\n})\n","filename":"server/api/session.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst fetchSession = async () => {\n session.value = await $fetch('/api/session')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSession "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst { data } = await useFetch('/api/session', {\n headers: useRequestHeaders(['cookie'])\n})\n\nsession.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:3.serverSupabaseSession.md","_source":"content","_file":"4.usage/services/3.serverSupabaseSession.md","_stem":"4.usage/services/3.serverSupabaseSession","_extension":"md"},{"_path":"/usage/services/serversupabaseuser","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseUser","description":"Get your Supabase user from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseUser"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseUser } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseUser(event)\n})\n","filename":"server/api/me.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst fetchMe = async () => {\n user.value = await $fetch('/api/me')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchMe "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst { data } = await useFetch('/api/me', {\n headers: useRequestHeaders(['cookie'])\n})\n\nuser.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:4.serverSupabaseUser.md","_source":"content","_file":"4.usage/services/4.serverSupabaseUser.md","_stem":"4.usage/services/4.serverSupabaseUser","_extension":"md"},{"_path":"/demo","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Demo","description":"Demonstration of using Supabase with Nuxt.","icon":"i-heroicons-computer-desktop-20-solid","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Demonstration of using Supabase with Nuxt."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"h2","props":{"id":"live-demo"},"children":[{"type":"text","value":"Live demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can play with the demo on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]}]},{"type":"element","tag":"h2","props":{"id":"running-locally"},"children":[{"type":"text","value":"Running locally"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Follow the instruction in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo Readme"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h2","props":{"id":"source-code"},"children":[{"type":"text","value":"Source code"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The source code is available on Github in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo/ directory"}]},{"type":"text","value":"."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"live-demo","depth":2,"text":"Live demo"},{"id":"running-locally","depth":2,"text":"Running locally"},{"id":"source-code","depth":2,"text":"Source code"}]}},"_type":"markdown","_id":"content:5.demo.md","_source":"content","_file":"5.demo.md","_stem":"5.demo","_extension":"md"},{"_path":"/changelog","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Changelog","description":"Discover the latest updates of the Supabase Module","icon":"i-heroicons-bookmark","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Discover the lastest updates."}]},{"type":"element","tag":"releases","props":{},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:6.changelog.md","_source":"content","_file":"6.changelog.md","_stem":"6.changelog","_extension":"md"},{"_path":"/roadmap","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Roadmap","description":"Discover our kaban board for the next release of the Supabase module.","icon":"i-heroicons-map","body":{"type":"root","children":[{"type":"element","tag":"volta-board","props":{"token":"eyJzdGF0dXNlcyI6WyJ0cmlhZ2UiLCJiYWNrbG9nIiwidG9kbyIsImluX3Byb2dyZXNzIiwiaW5fcmV2aWV3IiwiZG9uZSIsInJlbGVhc2VkIiwiY2FuY2VsbGVkIl0sImZpbHRlcnMiOnt9LCJvd25lciI6Im51eHQtbW9kdWxlcyIsIm5hbWUiOiJzdXBhYmFzZSJ9"},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:7.roadmap.md","_source":"content","_file":"7.roadmap.md","_stem":"7.roadmap","_extension":"md"},{"_path":"/","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Nuxt Supabase - Home","description":"A supa simple wrapper around supabase-js to enable usage and integration within Nuxt.","navigation":false,"hero":{"title":"Nuxt [Supabase]{.text-primary}","description":"A supa simple wrapper around supabase-js to enable usage and integration within Nuxt.","orientation":"horizontal","links":[{"label":"Get started","icon":"i-heroicons-rocket-launch","to":"/get-started","size":"lg"},{"label":"Star on github","icon":"i-heroicons-star","color":"white","to":"https://github.com/nuxt-modules/supabase","target":"_blank","size":"lg"}],"code":"```ts\n const supabase = useSupabaseClient()\n const email = ref('')\n\n const signInWithOtp = async () => {\n await supabase.auth.signInWithOtp({\n email: email.value,\n })\n }\n```\n"},"features":{"title":"Shipped with many features","items":[{"title":"Nuxt 3 ready","icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.com","target":"_blank"},{"title":"Vue 3 composables","icon":"i-simple-icons-vuedotjs","to":"https://vuejs.org/guide/reusability/composables.html","target":"_blank"},{"title":"Supabase-js V2","icon":"i-simple-icons-supabase","to":"https://supabase.com","target":"_blank"},{"title":"Usage in API server routes","icon":"i-heroicons-server","to":"usage/services/serversupabaseclient"},{"title":"Authentication support","icon":"i-heroicons-key","to":"/authentication"},{"title":"TypeScript support","icon":"i-simple-icons-typescript","to":"https://www.typescriptlang.org","target":"_blank"}]},"_id":"content:index.yml","_type":"yaml","_source":"content","_file":"index.yml","_stem":"index","_extension":"yml"}],"navigation":[{"title":"Get Started","_path":"/get-started","icon":"i-heroicons-rocket-launch"},{"title":"Authentication","_path":"/authentication","icon":"i-heroicons-lock-closed"},{"title":"Usage","_path":"/usage","children":[{"title":"Vue composables","_path":"/usage/composables","children":[{"title":"useSupabaseClient","_path":"/usage/composables/usesupabaseclient"},{"title":"useSupabaseSession","_path":"/usage/composables/usesupabasesession"},{"title":"useSupabaseUser","_path":"/usage/composables/usesupabaseuser"}]},{"title":"Server services","_path":"/usage/services","children":[{"title":"serverSupabaseClient","_path":"/usage/services/serversupabaseclient"},{"title":"serverSupabaseServiceRole","_path":"/usage/services/serversupabaseservicerole"},{"title":"serverSupabaseSession","_path":"/usage/services/serversupabasesession"},{"title":"serverSupabaseUser","_path":"/usage/services/serversupabaseuser"}]}],"icon":"heroicons:book-open"},{"title":"Demo","_path":"/demo","icon":"i-heroicons-computer-desktop-20-solid"},{"title":"Changelog","_path":"/changelog","icon":"i-heroicons-bookmark"},{"title":"Roadmap","_path":"/roadmap","icon":"i-heroicons-map"}]} \ No newline at end of file diff --git a/api/_content/cache.1734518075052.json b/api/_content/cache.1734518075052.json new file mode 100644 index 000000000..7d846c748 --- /dev/null +++ b/api/_content/cache.1734518075052.json @@ -0,0 +1 @@ +{"generatedAt":1734518131656,"generateTime":4101,"contents":[{"_path":"/get-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get Started","description":"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.","icon":"i-heroicons-rocket-launch","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" is a Nuxt module for first class integration with Supabase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt 3"}]},{"type":"text","value":" documentation and "},{"type":"element","tag":"a","props":{"href":"https://supabase.com","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" to learn more."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For integrating Supabase with Nuxt 2, checkout "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase-community/nuxt-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-community/nuxt-supabase"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" dev dependency to your project:"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"npx nuxi@latest module add supabase\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"npx"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxi@latest"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" module"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" add"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" supabase\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"modules"}]},{"type":"text","value":" section of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" modules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" ["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"]"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\"\n","filename":"env","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Alternatively, you can prefix the env variables with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NUXT_PUBLIC_"}]},{"type":"text","value":" in order to use runtimeConfig."}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can configure the supabase module by using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"supabase"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Options\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"url"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"url"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_URL"}]},{"type":"text","value":" (ex: "},{"type":"element","tag":"a","props":{"href":"https://example.supabase.co","rel":["nofollow"]},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The unique Supabase URL which is supplied when you create a new project in your project dashboard."}]},{"type":"element","tag":"h3","props":{"id":"key"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies."}]},{"type":"element","tag":"h3","props":{"id":"servicekey"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serviceKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_SERVICE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'service role key', has super admin rights and can bypass your Row Level Security."}]},{"type":"element","tag":"h3","props":{"id":"redirect"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false."}]},{"type":"element","tag":"h3","props":{"id":"redirectoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" redirectOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" callback"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" include"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" undefined,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" exclude"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" []"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieRedirect"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" false"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login"}]},{"type":"text","value":": User will be redirected to this path if not authenticated or after logout."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"callback"}]},{"type":"text","value":": This is the path the user will be redirect to after supabase login redirection. Should match configured "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectTo"}]},{"type":"text","value":" option of your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithoauth","rel":["nofollow"]},"children":[{"type":"text","value":"signIn method"}]},{"type":"text","value":". Should also be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":": Routes to include in the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/admin(/*)?']"}]},{"type":"text","value":" will enable the redirect only for the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"admin"}]},{"type":"text","value":" page and all sub-pages."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":": Routes to exclude from the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/foo', '/bar/**']"}]},{"type":"text","value":" will exclude the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"foo"}]},{"type":"text","value":" page and all pages in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bar"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"text","value":" page to redirect the user to the page they previously tried to visit."}]}]},{"type":"element","tag":"h3","props":{"id":"cookiename"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Cookie name used for storing the redirect path when using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option, added in front of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"text","value":" to form the full cookie name e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb-redirect-path"}]}]},{"type":"element","tag":"h3","props":{"id":"cookieoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" maxAge"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 8"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" sameSite"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"lax"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" secure"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Options for cookies used to share tokens between server and client, refer to "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/api/composables/use-cookie#options","rel":["nofollow"]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":" for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime."}]},{"type":"element","tag":"h3","props":{"id":"types"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"types"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Set to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" to disable."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"h3","props":{"id":"clientoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: { }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase client options "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing#parameters","rel":["nofollow"]},"children":[{"type":"text","value":"available here"}]},{"type":"text","value":" merged with default values from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" flowType"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pkce"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" autoRefreshToken"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" detectSessionInUrl"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" persistSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"demo"},"children":[{"type":"text","value":"Demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A live demo is made for see this module in action on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]},{"type":"text","value":", read more in the "},{"type":"element","tag":"a","props":{"href":"/demo"},"children":[{"type":"text","value":"demo section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Also checkout the "},{"type":"element","tag":"a","props":{"href":"https://www.youtube.com/watch?v=jIyiRT6zT8Q","rel":["nofollow"]},"children":[{"type":"text","value":"YouTube video"}]},{"type":"text","value":" about its usage in a live demo."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"options","depth":2,"text":"Options","children":[{"id":"url","depth":3,"text":"url"},{"id":"key","depth":3,"text":"key"},{"id":"servicekey","depth":3,"text":"serviceKey"},{"id":"redirect","depth":3,"text":"redirect"},{"id":"redirectoptions","depth":3,"text":"redirectOptions"},{"id":"cookiename","depth":3,"text":"cookieName"},{"id":"cookieoptions","depth":3,"text":"cookieOptions"},{"id":"types","depth":3,"text":"types"},{"id":"clientoptions","depth":3,"text":"clientOptions"}]},{"id":"demo","depth":2,"text":"Demo"}]}},"_type":"markdown","_id":"content:2.get-started.md","_source":"content","_file":"2.get-started.md","_stem":"2.get-started","_extension":"md"},{"_path":"/authentication","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Authentication","description":"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server","icon":"i-heroicons-lock-closed","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"With the default options, the module requires a log-in page and a confirm page to handle the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/resources/glossary#pkce","rel":["nofollow"]},"children":[{"type":"text","value":"PKCE authorization code flow"}]},{"type":"text","value":". If you want to understand how it works under the hood, you can read this "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/server-side-rendering#understanding-the-authentication-flow","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"All you need to do is to create a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login.vue"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"confirm.vue"}]},{"type":"text","value":" page in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"pages"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For advanced users who want to implement the auth behaviour themselves, you can disable or override the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect options"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"log-in-page-login"},"children":[{"type":"text","value":"Log-in page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/login"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Each time a user is trying to access a page that needs authentication, he will automatically be redirected to the configured log in page. If you want to allow access to \"public\" page, you just need to add them in the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Ensure to activate the authentication providers you want in the Supabase Dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> Providers"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The log-in page initiates the log-in method(s) you choose from the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithpassword","rel":["nofollow"]},"children":[{"type":"text","value":"available authorization methods"}]},{"type":"text","value":" provided by Supabase, it could looks like:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/login.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"''"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOtp "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" emailRedirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" @"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"click"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Sign In with E-Mail\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"input\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" />\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once the authorization flow is triggered using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"auth"}]},{"type":"text","value":" wrapper of the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable, the session management is handled automatically and the user will be redirected to the page you specify in the redirect option ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]},{"type":"text","value":" by default)."}]},{"type":"element","tag":"h2","props":{"id":"confirm-page-confirm"},"children":[{"type":"text","value":"Confirm page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The confirmation page receives the supabase callback. From there you can check the user value and redirect to the appropriate page."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The redirect URL must be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to protected page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"redirect-path"},"children":[{"type":"text","value":"Redirect path"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can easily handle redirection to the initial requested route after login."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You must enable the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":" option of the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"redirectOptions"}]},{"type":"text","value":" to allow cookie storage and take benefit of this feature."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Get redirect path from cookies\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" cookieName "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRuntimeConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" redirectPath "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Clear cookie\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" null\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to path\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"redirectPath"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ||"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"log-in-page-login","depth":2,"text":"Log-in page - /login"},{"id":"confirm-page-confirm","depth":2,"text":"Confirm page - /confirm","children":[{"id":"redirect-path","depth":3,"text":"Redirect path"}]}]}},"_type":"markdown","_id":"content:3.authentication.md","_source":"content","_file":"3.authentication.md","_stem":"3.authentication","_extension":"md"},{"_path":"/usage/_dir","_dir":"usage","_draft":false,"_partial":true,"_locale":"","title":"Usage","icon":"heroicons:book-open","_id":"content:4.usage:_dir.yml","_type":"yaml","_source":"content","_file":"4.usage/_dir.yml","_stem":"4.usage/_dir","_extension":"yml"},{"_path":"/usage/composables/_dir","_dir":"composables","_draft":false,"_partial":true,"_locale":"","title":"Vue composables","_id":"content:4.usage:composables:_dir.yml","_type":"yaml","_source":"content","_file":"4.usage/composables/_dir.yml","_stem":"4.usage/composables/_dir","_extension":"yml"},{"_path":"/usage/composables/usesupabaseclient","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseClient","description":"Make requests to the Supabase API with the useSupabaseClient composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"Auto-import"}]},{"type":"text","value":" your client inside your vue files."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This composable is using "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/supabase-js/","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js"}]},{"type":"text","value":" under the hood, it gives access to the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase client"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. It establishes the connection with the database and make use of user JWT to apply "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"RLS Policies"}]},{"type":"text","value":" implemented in Supabase. If you want to bypass policies, you can use the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseservicerole"},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"authentication"},"children":[{"type":"text","value":"Authentication"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The useSupabaseClient composable is providing all methods to manage authorization under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient().auth"}]},{"type":"text","value":". For more details please see the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-api","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js auth documentation"}]},{"type":"text","value":". Here is an example for signing in and out:"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you want a full explanation on how to handle the authentication process, please read this "},{"type":"element","tag":"a","props":{"href":"/get-started#handle-authentication"},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"script setup lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOAuth "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOAuth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" provider"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"github"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" redirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signOut "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signOut"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please also take a look at "},{"type":"element","tag":"a","props":{"href":"/get-started"},"children":[{"type":"text","value":"Get Started"}]},{"type":"text","value":" for the authorization flow."}]},{"type":"element","tag":"h2","props":{"id":"database-request"},"children":[{"type":"text","value":"Database Request"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please check "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/select","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" documentation to fully use the power of Supabase client."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here is an example of a fetch using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"select"}]},{"type":"text","value":" method with Nuxt 3 "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#useasyncdata","rel":["nofollow"]},"children":[{"type":"text","value":"useAsyncData"}]},{"type":"text","value":" composable."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" restaurant "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurant"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurants"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name, location"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"eq"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"My Restaurant Name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"single"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"realtime"},"children":[{"type":"text","value":"Realtime"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Based on "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/realtime","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase Realtime"}]},{"type":"text","value":", listen to changes in your PostgreSQL Database and broadcasts them over WebSockets."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To enable it, make sure you have turned on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/api#realtime-api","rel":["nofollow"]},"children":[{"type":"text","value":"Realtime API"}]},{"type":"text","value":" for your table."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then, listen to changes directly in your vue page / component:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" RealtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@supabase/supabase-js"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"let"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" RealtimeChannel\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Fetch collaborators and get the refresh method provided by useAsyncData\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" refresh"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" refreshCollaborators "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onMounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Real time listener for new workouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"channel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public:collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"on"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"postgres_changes"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" schema"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" refreshCollaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" )\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"subscribe"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Don't forget to unsubscribe when user left the page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onUnmounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"removeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"typescript"},"children":[{"type":"text","value":"Typescript"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Database typings are passed to the client out of the box if the database generated types are found at "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]},{"type":"text","value":" or "},{"type":"element","tag":"a","props":{"href":"/get-started#types"},"children":[{"type":"text","value":"your configured types path"}]},{"type":"text","value":". Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types typescript --local > types/database.types.ts\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can also pass Database typings to the client manually:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"~/types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"authentication","depth":2,"text":"Authentication"},{"id":"database-request","depth":2,"text":"Database Request"},{"id":"realtime","depth":2,"text":"Realtime"},{"id":"typescript","depth":2,"text":"Typescript"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseClient.md","_source":"content","_file":"4.usage/composables/useSupabaseClient.md","_stem":"4.usage/composables/useSupabaseClient","_extension":"md"},{"_path":"/usage/composables/usesupabasesession","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseSession","description":"Auto import and use your Supabase user's session with the useSupabaseSession composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user's session everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you just need the User's information you can use "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" which returns just the User information of the session."}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const session = useSupabaseSession()\n\n if (!session.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseSession.md","_source":"content","_file":"4.usage/composables/useSupabaseSession.md","_stem":"4.usage/composables/useSupabaseSession","_extension":"md"},{"_path":"/usage/composables/usesupabaseuser","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseUser","description":"Auto import and use your Supabase user with the useSupabaseUser composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const user = useSupabaseUser()\n\n if (!user.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseUser.md","_source":"content","_file":"4.usage/composables/useSupabaseUser.md","_stem":"4.usage/composables/useSupabaseUser","_extension":"md"},{"_path":"/usage/services/_dir","_dir":"services","_draft":false,"_partial":true,"_locale":"","title":"Server services","_id":"content:4.usage:services:_dir.yml","_type":"yaml","_source":"content","_file":"4.usage/services/_dir.yml","_stem":"4.usage/services/_dir","_extension":"yml"},{"_path":"/usage/services/serversupabaseclient","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseClient","description":"Make requests to the Supabase API on server side with the serverSupabaseClient service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is working similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable but is designed to be used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":". Be careful, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" is returning a promise."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseClient } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = await serverSupabaseClient(event)\n\n const { data } = await client.from('libraries').select('*')\n\n return { libraries: data }\n})\n","filename":"server/api/libraries.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchLibrary = async () => {\n const { libraries } = await $fetch('/api/libraries')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchLibrary "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const { data: { libraries }} = await useFetch('/api/libraries', {\n headers: useRequestHeaders(['cookie'])\n})\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:1.serverSupabaseClient.md","_source":"content","_file":"4.usage/services/1.serverSupabaseClient.md","_stem":"4.usage/services/1.serverSupabaseClient","_extension":"md"},{"_path":"/usage/services/serversupabaseservicerole","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseServiceRole","description":"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service","navigation":{"title":"serverSupabaseServiceRole"},"body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is designed to work only in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":", there is no vue composable equivalent."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"It works similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseclient"},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" but it provides a client with super admin rights that can bypass your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"Row Level Security"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_SERVICE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. Checkout the doc if you want to know more about "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-deep-dive-jwts#jwts-in-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase keys"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseServiceRole } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = serverSupabaseServiceRole(event)\n\n const { data } = await client.from('rls-protected-table').select()\n\n return { sensitiveData: data }\n})\n","filename":"server/api/bypass-rls.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"rls-protected-table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchSensitiveData = async () => {\n const { sensitiveData } = await useFetch('/api/bypass-rls')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSensitiveData "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/bypass-rls"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:2.serverSupabaseServiceRole.md","_source":"content","_file":"4.usage/services/2.serverSupabaseServiceRole.md","_stem":"4.usage/services/2.serverSupabaseServiceRole","_extension":"md"},{"_path":"/usage/services/serversupabasesession","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseSession","description":"Get your Supabase user's session from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabasesession"},"children":[{"type":"text","value":"useSupabaseSession"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be advised that "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" is considered unsafe, since the session comes from the client and users can tamper with it. For checking if the user is logged in, always use "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseuser"},"children":[{"type":"text","value":"serverSupabaseUser"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseSession } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseSession(event)\n})\n","filename":"server/api/session.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst fetchSession = async () => {\n session.value = await $fetch('/api/session')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSession "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst { data } = await useFetch('/api/session', {\n headers: useRequestHeaders(['cookie'])\n})\n\nsession.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:3.serverSupabaseSession.md","_source":"content","_file":"4.usage/services/3.serverSupabaseSession.md","_stem":"4.usage/services/3.serverSupabaseSession","_extension":"md"},{"_path":"/usage/services/serversupabaseuser","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseUser","description":"Get your Supabase user from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseUser"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseUser } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseUser(event)\n})\n","filename":"server/api/me.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst fetchMe = async () => {\n user.value = await $fetch('/api/me')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchMe "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst { data } = await useFetch('/api/me', {\n headers: useRequestHeaders(['cookie'])\n})\n\nuser.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:4.serverSupabaseUser.md","_source":"content","_file":"4.usage/services/4.serverSupabaseUser.md","_stem":"4.usage/services/4.serverSupabaseUser","_extension":"md"},{"_path":"/demo","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Demo","description":"Demonstration of using Supabase with Nuxt.","icon":"i-heroicons-computer-desktop-20-solid","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Demonstration of using Supabase with Nuxt."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"h2","props":{"id":"live-demo"},"children":[{"type":"text","value":"Live demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can play with the demo on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]}]},{"type":"element","tag":"h2","props":{"id":"running-locally"},"children":[{"type":"text","value":"Running locally"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Follow the instruction in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo Readme"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h2","props":{"id":"source-code"},"children":[{"type":"text","value":"Source code"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The source code is available on Github in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo/ directory"}]},{"type":"text","value":"."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"live-demo","depth":2,"text":"Live demo"},{"id":"running-locally","depth":2,"text":"Running locally"},{"id":"source-code","depth":2,"text":"Source code"}]}},"_type":"markdown","_id":"content:5.demo.md","_source":"content","_file":"5.demo.md","_stem":"5.demo","_extension":"md"},{"_path":"/changelog","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Changelog","description":"Discover the latest updates of the Supabase Module","icon":"i-heroicons-bookmark","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Discover the lastest updates."}]},{"type":"element","tag":"releases","props":{},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:6.changelog.md","_source":"content","_file":"6.changelog.md","_stem":"6.changelog","_extension":"md"},{"_path":"/roadmap","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Roadmap","description":"Discover our kaban board for the next release of the Supabase module.","icon":"i-heroicons-map","body":{"type":"root","children":[{"type":"element","tag":"volta-board","props":{"token":"eyJzdGF0dXNlcyI6WyJ0cmlhZ2UiLCJiYWNrbG9nIiwidG9kbyIsImluX3Byb2dyZXNzIiwiaW5fcmV2aWV3IiwiZG9uZSIsInJlbGVhc2VkIiwiY2FuY2VsbGVkIl0sImZpbHRlcnMiOnt9LCJvd25lciI6Im51eHQtbW9kdWxlcyIsIm5hbWUiOiJzdXBhYmFzZSJ9"},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:7.roadmap.md","_source":"content","_file":"7.roadmap.md","_stem":"7.roadmap","_extension":"md"},{"_path":"/","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Nuxt Supabase - Home","description":"A supa simple wrapper around supabase-js to enable usage and integration within Nuxt.","navigation":false,"hero":{"title":"Nuxt [Supabase]{.text-primary}","description":"A supa simple wrapper around supabase-js to enable usage and integration within Nuxt.","orientation":"horizontal","links":[{"label":"Get started","icon":"i-heroicons-rocket-launch","to":"/get-started","size":"lg"},{"label":"Star on github","icon":"i-heroicons-star","color":"white","to":"https://github.com/nuxt-modules/supabase","target":"_blank","size":"lg"}],"code":"```ts\n const supabase = useSupabaseClient()\n const email = ref('')\n\n const signInWithOtp = async () => {\n await supabase.auth.signInWithOtp({\n email: email.value,\n })\n }\n```\n"},"features":{"title":"Shipped with many features","items":[{"title":"Nuxt 3 ready","icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.com","target":"_blank"},{"title":"Vue 3 composables","icon":"i-simple-icons-vuedotjs","to":"https://vuejs.org/guide/reusability/composables.html","target":"_blank"},{"title":"Supabase-js V2","icon":"i-simple-icons-supabase","to":"https://supabase.com","target":"_blank"},{"title":"Usage in API server routes","icon":"i-heroicons-server","to":"usage/services/serversupabaseclient"},{"title":"Authentication support","icon":"i-heroicons-key","to":"/authentication"},{"title":"TypeScript support","icon":"i-simple-icons-typescript","to":"https://www.typescriptlang.org","target":"_blank"}]},"_id":"content:index.yml","_type":"yaml","_source":"content","_file":"index.yml","_stem":"index","_extension":"yml"}],"navigation":[{"title":"Get Started","_path":"/get-started","icon":"i-heroicons-rocket-launch"},{"title":"Authentication","_path":"/authentication","icon":"i-heroicons-lock-closed"},{"title":"Usage","_path":"/usage","children":[{"title":"Vue composables","_path":"/usage/composables","children":[{"title":"useSupabaseClient","_path":"/usage/composables/usesupabaseclient"},{"title":"useSupabaseSession","_path":"/usage/composables/usesupabasesession"},{"title":"useSupabaseUser","_path":"/usage/composables/usesupabaseuser"}]},{"title":"Server services","_path":"/usage/services","children":[{"title":"serverSupabaseClient","_path":"/usage/services/serversupabaseclient"},{"title":"serverSupabaseServiceRole","_path":"/usage/services/serversupabaseservicerole"},{"title":"serverSupabaseSession","_path":"/usage/services/serversupabasesession"},{"title":"serverSupabaseUser","_path":"/usage/services/serversupabaseuser"}]}],"icon":"heroicons:book-open"},{"title":"Demo","_path":"/demo","icon":"i-heroicons-computer-desktop-20-solid"},{"title":"Changelog","_path":"/changelog","icon":"i-heroicons-bookmark"},{"title":"Roadmap","_path":"/roadmap","icon":"i-heroicons-map"}]} \ No newline at end of file diff --git a/api/_content/navigation/i5pZc4XEtQ.1733842287527.json b/api/_content/navigation/i5pZc4XEtQ.1734518075052.json similarity index 100% rename from api/_content/navigation/i5pZc4XEtQ.1733842287527.json rename to api/_content/navigation/i5pZc4XEtQ.1734518075052.json diff --git a/api/_content/query/0CgxMh2nDn.1733842287527.json b/api/_content/query/0CgxMh2nDn.1734518075052.json similarity index 100% rename from api/_content/query/0CgxMh2nDn.1733842287527.json rename to api/_content/query/0CgxMh2nDn.1734518075052.json diff --git a/api/_content/query/0z8C0XHO1T.1733842287527.json b/api/_content/query/0z8C0XHO1T.1734518075052.json similarity index 100% rename from api/_content/query/0z8C0XHO1T.1733842287527.json rename to api/_content/query/0z8C0XHO1T.1734518075052.json diff --git a/api/_content/query/45OFyaq6jH.1733842287527.json b/api/_content/query/45OFyaq6jH.1734518075052.json similarity index 100% rename from api/_content/query/45OFyaq6jH.1733842287527.json rename to api/_content/query/45OFyaq6jH.1734518075052.json diff --git a/api/_content/query/4SGzzquaGr.1733842287527.json b/api/_content/query/4SGzzquaGr.1734518075052.json similarity index 100% rename from api/_content/query/4SGzzquaGr.1733842287527.json rename to api/_content/query/4SGzzquaGr.1734518075052.json diff --git a/api/_content/query/5439goEiFh.1733842287527.json b/api/_content/query/5439goEiFh.1734518075052.json similarity index 100% rename from api/_content/query/5439goEiFh.1733842287527.json rename to api/_content/query/5439goEiFh.1734518075052.json diff --git a/api/_content/query/7akagRHES3.1733842287527.json b/api/_content/query/7akagRHES3.1734518075052.json similarity index 100% rename from api/_content/query/7akagRHES3.1733842287527.json rename to api/_content/query/7akagRHES3.1734518075052.json diff --git a/api/_content/query/80r9Q1yB5X.1733842287527.json b/api/_content/query/80r9Q1yB5X.1734518075052.json similarity index 100% rename from api/_content/query/80r9Q1yB5X.1733842287527.json rename to api/_content/query/80r9Q1yB5X.1734518075052.json diff --git a/api/_content/query/Gxz9GZ4NK0.1733842287527.json b/api/_content/query/Gxz9GZ4NK0.1734518075052.json similarity index 100% rename from api/_content/query/Gxz9GZ4NK0.1733842287527.json rename to api/_content/query/Gxz9GZ4NK0.1734518075052.json diff --git a/api/_content/query/JJ9Joz4sQk.1733842287527.json b/api/_content/query/JJ9Joz4sQk.1734518075052.json similarity index 55% rename from api/_content/query/JJ9Joz4sQk.1733842287527.json rename to api/_content/query/JJ9Joz4sQk.1734518075052.json index 3c61ac783..c424396e9 100644 --- a/api/_content/query/JJ9Joz4sQk.1733842287527.json +++ b/api/_content/query/JJ9Joz4sQk.1734518075052.json @@ -1 +1 @@ -{"_path":"/get-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get Started","description":"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.","icon":"i-heroicons-rocket-launch","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" is a Nuxt module for first class integration with Supabase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt 3"}]},{"type":"text","value":" documentation and "},{"type":"element","tag":"a","props":{"href":"https://supabase.com","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" to learn more."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For integrating Supabase with Nuxt 2, checkout "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase-community/nuxt-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-community/nuxt-supabase"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" dev dependency to your project:"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"npx nuxi@latest module add supabase\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"npx"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxi@latest"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" module"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" add"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" supabase\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"modules"}]},{"type":"text","value":" section of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" modules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" ["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"]"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\"\n","filename":"env","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Alternatively, you can prefix the env variables with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NUXT_PUBLIC_"}]},{"type":"text","value":" in order to use runtimeConfig."}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can configure the supabase module by using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"supabase"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Options\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"url"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"url"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_URL"}]},{"type":"text","value":" (ex: "},{"type":"element","tag":"a","props":{"href":"https://example.supabase.co","rel":["nofollow"]},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The unique Supabase URL which is supplied when you create a new project in your project dashboard."}]},{"type":"element","tag":"h3","props":{"id":"key"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies."}]},{"type":"element","tag":"h3","props":{"id":"servicekey"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serviceKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_SERVICE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'service role key', has super admin rights and can bypass your Row Level Security."}]},{"type":"element","tag":"h3","props":{"id":"redirect"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false."}]},{"type":"element","tag":"h3","props":{"id":"redirectoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" redirectOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" callback"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" include"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" undefined,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" exclude"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" []"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieRedirect"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" false"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login"}]},{"type":"text","value":": User will be redirected to this path if not authenticated or after logout."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"callback"}]},{"type":"text","value":": This is the path the user will be redirect to after supabase login redirection. Should match configured "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectTo"}]},{"type":"text","value":" option of your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithoauth","rel":["nofollow"]},"children":[{"type":"text","value":"signIn method"}]},{"type":"text","value":". Should also be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":": Routes to include in the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/admin(/*)?']"}]},{"type":"text","value":" will enable the redirect only for the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"admin"}]},{"type":"text","value":" page and all sub-pages."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":": Routes to exclude from the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/foo', '/bar/*']"}]},{"type":"text","value":" will exclude the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"foo"}]},{"type":"text","value":" page and all pages in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bar"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"text","value":" page to redirect the user to the page they previously tried to visit."}]}]},{"type":"element","tag":"h3","props":{"id":"cookiename"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Cookie name used for storing the redirect path when using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option, added in front of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"text","value":" to form the full cookie name e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb-redirect-path"}]}]},{"type":"element","tag":"h3","props":{"id":"cookieoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" maxAge"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 8"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" sameSite"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"lax"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" secure"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Options for cookies used to share tokens between server and client, refer to "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/api/composables/use-cookie#options","rel":["nofollow"]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":" for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime."}]},{"type":"element","tag":"h3","props":{"id":"types"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"types"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Set to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" to disable."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"h3","props":{"id":"clientoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: { }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase client options "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing#parameters","rel":["nofollow"]},"children":[{"type":"text","value":"available here"}]},{"type":"text","value":" merged with default values from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" flowType"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pkce"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" autoRefreshToken"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" detectSessionInUrl"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" persistSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"demo"},"children":[{"type":"text","value":"Demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A live demo is made for see this module in action on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]},{"type":"text","value":", read more in the "},{"type":"element","tag":"a","props":{"href":"/demo"},"children":[{"type":"text","value":"demo section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Also checkout the "},{"type":"element","tag":"a","props":{"href":"https://www.youtube.com/watch?v=jIyiRT6zT8Q","rel":["nofollow"]},"children":[{"type":"text","value":"YouTube video"}]},{"type":"text","value":" about its usage in a live demo."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"options","depth":2,"text":"Options","children":[{"id":"url","depth":3,"text":"url"},{"id":"key","depth":3,"text":"key"},{"id":"servicekey","depth":3,"text":"serviceKey"},{"id":"redirect","depth":3,"text":"redirect"},{"id":"redirectoptions","depth":3,"text":"redirectOptions"},{"id":"cookiename","depth":3,"text":"cookieName"},{"id":"cookieoptions","depth":3,"text":"cookieOptions"},{"id":"types","depth":3,"text":"types"},{"id":"clientoptions","depth":3,"text":"clientOptions"}]},{"id":"demo","depth":2,"text":"Demo"}]}},"_type":"markdown","_id":"content:2.get-started.md","_source":"content","_file":"2.get-started.md","_stem":"2.get-started","_extension":"md"} \ No newline at end of file +{"_path":"/get-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get Started","description":"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.","icon":"i-heroicons-rocket-launch","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" is a Nuxt module for first class integration with Supabase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt 3"}]},{"type":"text","value":" documentation and "},{"type":"element","tag":"a","props":{"href":"https://supabase.com","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" to learn more."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For integrating Supabase with Nuxt 2, checkout "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase-community/nuxt-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-community/nuxt-supabase"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" dev dependency to your project:"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"npx nuxi@latest module add supabase\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"npx"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxi@latest"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" module"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" add"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" supabase\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"modules"}]},{"type":"text","value":" section of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" modules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" ["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"]"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\"\n","filename":"env","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Alternatively, you can prefix the env variables with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NUXT_PUBLIC_"}]},{"type":"text","value":" in order to use runtimeConfig."}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can configure the supabase module by using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"supabase"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Options\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"url"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"url"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_URL"}]},{"type":"text","value":" (ex: "},{"type":"element","tag":"a","props":{"href":"https://example.supabase.co","rel":["nofollow"]},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The unique Supabase URL which is supplied when you create a new project in your project dashboard."}]},{"type":"element","tag":"h3","props":{"id":"key"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies."}]},{"type":"element","tag":"h3","props":{"id":"servicekey"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serviceKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_SERVICE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'service role key', has super admin rights and can bypass your Row Level Security."}]},{"type":"element","tag":"h3","props":{"id":"redirect"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false."}]},{"type":"element","tag":"h3","props":{"id":"redirectoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" redirectOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" callback"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" include"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" undefined,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" exclude"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" []"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieRedirect"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" false"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login"}]},{"type":"text","value":": User will be redirected to this path if not authenticated or after logout."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"callback"}]},{"type":"text","value":": This is the path the user will be redirect to after supabase login redirection. Should match configured "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectTo"}]},{"type":"text","value":" option of your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithoauth","rel":["nofollow"]},"children":[{"type":"text","value":"signIn method"}]},{"type":"text","value":". Should also be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":": Routes to include in the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/admin(/*)?']"}]},{"type":"text","value":" will enable the redirect only for the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"admin"}]},{"type":"text","value":" page and all sub-pages."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":": Routes to exclude from the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/foo', '/bar/**']"}]},{"type":"text","value":" will exclude the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"foo"}]},{"type":"text","value":" page and all pages in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bar"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"text","value":" page to redirect the user to the page they previously tried to visit."}]}]},{"type":"element","tag":"h3","props":{"id":"cookiename"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Cookie name used for storing the redirect path when using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option, added in front of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"text","value":" to form the full cookie name e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb-redirect-path"}]}]},{"type":"element","tag":"h3","props":{"id":"cookieoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" maxAge"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 8"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" sameSite"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"lax"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" secure"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Options for cookies used to share tokens between server and client, refer to "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/api/composables/use-cookie#options","rel":["nofollow"]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":" for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime."}]},{"type":"element","tag":"h3","props":{"id":"types"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"types"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Set to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" to disable."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"h3","props":{"id":"clientoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: { }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase client options "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing#parameters","rel":["nofollow"]},"children":[{"type":"text","value":"available here"}]},{"type":"text","value":" merged with default values from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" flowType"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pkce"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" autoRefreshToken"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" detectSessionInUrl"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" persistSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"demo"},"children":[{"type":"text","value":"Demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A live demo is made for see this module in action on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]},{"type":"text","value":", read more in the "},{"type":"element","tag":"a","props":{"href":"/demo"},"children":[{"type":"text","value":"demo section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Also checkout the "},{"type":"element","tag":"a","props":{"href":"https://www.youtube.com/watch?v=jIyiRT6zT8Q","rel":["nofollow"]},"children":[{"type":"text","value":"YouTube video"}]},{"type":"text","value":" about its usage in a live demo."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"options","depth":2,"text":"Options","children":[{"id":"url","depth":3,"text":"url"},{"id":"key","depth":3,"text":"key"},{"id":"servicekey","depth":3,"text":"serviceKey"},{"id":"redirect","depth":3,"text":"redirect"},{"id":"redirectoptions","depth":3,"text":"redirectOptions"},{"id":"cookiename","depth":3,"text":"cookieName"},{"id":"cookieoptions","depth":3,"text":"cookieOptions"},{"id":"types","depth":3,"text":"types"},{"id":"clientoptions","depth":3,"text":"clientOptions"}]},{"id":"demo","depth":2,"text":"Demo"}]}},"_type":"markdown","_id":"content:2.get-started.md","_source":"content","_file":"2.get-started.md","_stem":"2.get-started","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/MZBly8ycYV.1733842287527.json b/api/_content/query/MZBly8ycYV.1734518075052.json similarity index 100% rename from api/_content/query/MZBly8ycYV.1733842287527.json rename to api/_content/query/MZBly8ycYV.1734518075052.json diff --git a/api/_content/query/NX6rA77pmQ.1733842287527.json b/api/_content/query/NX6rA77pmQ.1734518075052.json similarity index 100% rename from api/_content/query/NX6rA77pmQ.1733842287527.json rename to api/_content/query/NX6rA77pmQ.1734518075052.json diff --git a/api/_content/query/NmhWrRnmKx.1733842287527.json b/api/_content/query/NmhWrRnmKx.1734518075052.json similarity index 100% rename from api/_content/query/NmhWrRnmKx.1733842287527.json rename to api/_content/query/NmhWrRnmKx.1734518075052.json diff --git a/api/_content/query/PKwnxE4Dvh.1733842287527.json b/api/_content/query/PKwnxE4Dvh.1734518075052.json similarity index 100% rename from api/_content/query/PKwnxE4Dvh.1733842287527.json rename to api/_content/query/PKwnxE4Dvh.1734518075052.json diff --git a/api/_content/query/Ue1UBSoyPa.1733842287527.json b/api/_content/query/Ue1UBSoyPa.1734518075052.json similarity index 100% rename from api/_content/query/Ue1UBSoyPa.1733842287527.json rename to api/_content/query/Ue1UBSoyPa.1734518075052.json diff --git a/api/_content/query/Xxnd0ydUti.1733842287527.json b/api/_content/query/Xxnd0ydUti.1734518075052.json similarity index 100% rename from api/_content/query/Xxnd0ydUti.1733842287527.json rename to api/_content/query/Xxnd0ydUti.1734518075052.json diff --git a/api/_content/query/Z0Gn1CUVQt.1733842287527.json b/api/_content/query/Z0Gn1CUVQt.1734518075052.json similarity index 100% rename from api/_content/query/Z0Gn1CUVQt.1733842287527.json rename to api/_content/query/Z0Gn1CUVQt.1734518075052.json diff --git a/api/_content/query/fAcRU6Tr0q.1733842287527.json b/api/_content/query/fAcRU6Tr0q.1734518075052.json similarity index 100% rename from api/_content/query/fAcRU6Tr0q.1733842287527.json rename to api/_content/query/fAcRU6Tr0q.1734518075052.json diff --git a/api/_content/query/hJ9QUBFRaO.1733842287527.json b/api/_content/query/hJ9QUBFRaO.1734518075052.json similarity index 100% rename from api/_content/query/hJ9QUBFRaO.1733842287527.json rename to api/_content/query/hJ9QUBFRaO.1734518075052.json diff --git a/api/_content/query/hTR0awNBk6.1733842287527.json b/api/_content/query/hTR0awNBk6.1734518075052.json similarity index 100% rename from api/_content/query/hTR0awNBk6.1733842287527.json rename to api/_content/query/hTR0awNBk6.1734518075052.json diff --git a/api/_content/query/kTW5TvkZlR.1733842287527.json b/api/_content/query/kTW5TvkZlR.1734518075052.json similarity index 100% rename from api/_content/query/kTW5TvkZlR.1733842287527.json rename to api/_content/query/kTW5TvkZlR.1734518075052.json diff --git a/api/_content/query/lNIwYbwZIk.1733842287527.json b/api/_content/query/lNIwYbwZIk.1734518075052.json similarity index 100% rename from api/_content/query/lNIwYbwZIk.1733842287527.json rename to api/_content/query/lNIwYbwZIk.1734518075052.json diff --git a/api/_content/query/qkxNYcIfXu.1733842287527.json b/api/_content/query/qkxNYcIfXu.1734518075052.json similarity index 100% rename from api/_content/query/qkxNYcIfXu.1733842287527.json rename to api/_content/query/qkxNYcIfXu.1734518075052.json diff --git a/api/_content/query/qrL652uheB.1733842287527.json b/api/_content/query/qrL652uheB.1734518075052.json similarity index 100% rename from api/_content/query/qrL652uheB.1733842287527.json rename to api/_content/query/qrL652uheB.1734518075052.json diff --git a/api/_content/query/w5fRUDFpBK.1733842287527.json b/api/_content/query/w5fRUDFpBK.1734518075052.json similarity index 100% rename from api/_content/query/w5fRUDFpBK.1733842287527.json rename to api/_content/query/w5fRUDFpBK.1734518075052.json diff --git a/api/_content/query/y8Nv5yEpsm.1733842287527.json b/api/_content/query/y8Nv5yEpsm.1734518075052.json similarity index 100% rename from api/_content/query/y8Nv5yEpsm.1733842287527.json rename to api/_content/query/y8Nv5yEpsm.1734518075052.json diff --git a/api/_github/contributors/index.json b/api/_github/contributors/index.json index d5eff58dd..10283cc1a 100644 --- a/api/_github/contributors/index.json +++ b/api/_github/contributors/index.json @@ -1 +1 @@ -[{"avatar_url":"https://avatars.githubusercontent.com/u/7290030?v=4","login":"larbish"},{"avatar_url":"https://avatars.githubusercontent.com/u/904724?v=4","login":"atinux"},{"avatar_url":"https://avatars.githubusercontent.com/in/2740?v=4","login":"renovate[bot]"},{"avatar_url":"https://avatars.githubusercontent.com/u/52822112?v=4","login":"th1m0"},{"avatar_url":"https://avatars.githubusercontent.com/u/27334472?v=4","login":"felixgabler"},{"avatar_url":"https://avatars.githubusercontent.com/u/28706372?v=4","login":"danielroe"},{"avatar_url":"https://avatars.githubusercontent.com/u/5158436?v=4","login":"pi0"},{"avatar_url":"https://avatars.githubusercontent.com/u/5823770?v=4","login":"Aietes"},{"avatar_url":"https://avatars.githubusercontent.com/u/25272043?v=4","login":"kevinmarrec"},{"avatar_url":"https://avatars.githubusercontent.com/u/739984?v=4","login":"benjamincanac"},{"avatar_url":"https://avatars.githubusercontent.com/u/1259364?v=4","login":"levibe"},{"avatar_url":"https://avatars.githubusercontent.com/u/25180681?v=4","login":"renovate-bot"},{"avatar_url":"https://avatars.githubusercontent.com/u/982975?v=4","login":"AlbertBrand"},{"avatar_url":"https://avatars.githubusercontent.com/u/1248148?v=4","login":"blqke"},{"avatar_url":"https://avatars.githubusercontent.com/u/61005888?v=4","login":"kuizuo"},{"avatar_url":"https://avatars.githubusercontent.com/u/1463854?v=4","login":"Matthewenderle"},{"avatar_url":"https://avatars.githubusercontent.com/u/51825926?v=4","login":"onurusluca"},{"avatar_url":"https://avatars.githubusercontent.com/u/83463097?v=4","login":"oumarbarry"},{"avatar_url":"https://avatars.githubusercontent.com/u/16822008?v=4","login":"pascalwengerter"},{"avatar_url":"https://avatars.githubusercontent.com/u/7809845?v=4","login":"psto"},{"avatar_url":"https://avatars.githubusercontent.com/u/16954673?v=4","login":"relisora"},{"avatar_url":"https://avatars.githubusercontent.com/u/38413630?v=4","login":"icarusgk"},{"avatar_url":"https://avatars.githubusercontent.com/u/3911343?v=4","login":"stafyniaksacha"},{"avatar_url":"https://avatars.githubusercontent.com/u/7547335?v=4","login":"smarroufin"},{"avatar_url":"https://avatars.githubusercontent.com/u/24540801?v=4","login":"vinceglb"},{"avatar_url":"https://avatars.githubusercontent.com/u/70212709?v=4","login":"yannaufray"},{"avatar_url":"https://avatars.githubusercontent.com/u/44604921?v=4","login":"shinGangan"},{"avatar_url":"https://avatars.githubusercontent.com/u/66277921?v=4","login":"jojomatik"},{"avatar_url":"https://avatars.githubusercontent.com/u/126086612?v=4","login":"kiri10ten"},{"avatar_url":"https://avatars.githubusercontent.com/in/257149?v=4","login":"nuxt-studio[bot]"}] \ No newline at end of file +[{"avatar_url":"https://avatars.githubusercontent.com/u/7290030?v=4","login":"larbish"},{"avatar_url":"https://avatars.githubusercontent.com/u/904724?v=4","login":"atinux"},{"avatar_url":"https://avatars.githubusercontent.com/in/2740?v=4","login":"renovate[bot]"},{"avatar_url":"https://avatars.githubusercontent.com/u/52822112?v=4","login":"th1m0"},{"avatar_url":"https://avatars.githubusercontent.com/u/27334472?v=4","login":"felixgabler"},{"avatar_url":"https://avatars.githubusercontent.com/u/28706372?v=4","login":"danielroe"},{"avatar_url":"https://avatars.githubusercontent.com/u/5158436?v=4","login":"pi0"},{"avatar_url":"https://avatars.githubusercontent.com/u/5823770?v=4","login":"Aietes"},{"avatar_url":"https://avatars.githubusercontent.com/u/25272043?v=4","login":"kevinmarrec"},{"avatar_url":"https://avatars.githubusercontent.com/u/739984?v=4","login":"benjamincanac"},{"avatar_url":"https://avatars.githubusercontent.com/u/1259364?v=4","login":"levibe"},{"avatar_url":"https://avatars.githubusercontent.com/u/25180681?v=4","login":"renovate-bot"},{"avatar_url":"https://avatars.githubusercontent.com/u/982975?v=4","login":"AlbertBrand"},{"avatar_url":"https://avatars.githubusercontent.com/u/96275757?v=4","login":"52cs"},{"avatar_url":"https://avatars.githubusercontent.com/u/61005888?v=4","login":"kuizuo"},{"avatar_url":"https://avatars.githubusercontent.com/u/1463854?v=4","login":"Matthewenderle"},{"avatar_url":"https://avatars.githubusercontent.com/u/51825926?v=4","login":"onurusluca"},{"avatar_url":"https://avatars.githubusercontent.com/u/83463097?v=4","login":"oumarbarry"},{"avatar_url":"https://avatars.githubusercontent.com/u/16822008?v=4","login":"pascalwengerter"},{"avatar_url":"https://avatars.githubusercontent.com/u/7809845?v=4","login":"psto"},{"avatar_url":"https://avatars.githubusercontent.com/u/16954673?v=4","login":"relisora"},{"avatar_url":"https://avatars.githubusercontent.com/u/38413630?v=4","login":"icarusgk"},{"avatar_url":"https://avatars.githubusercontent.com/u/3911343?v=4","login":"stafyniaksacha"},{"avatar_url":"https://avatars.githubusercontent.com/u/7547335?v=4","login":"smarroufin"},{"avatar_url":"https://avatars.githubusercontent.com/u/24540801?v=4","login":"vinceglb"},{"avatar_url":"https://avatars.githubusercontent.com/u/70212709?v=4","login":"yannaufray"},{"avatar_url":"https://avatars.githubusercontent.com/u/9140811?v=4","login":"andreasvirkus"},{"avatar_url":"https://avatars.githubusercontent.com/u/44604921?v=4","login":"shinGangan"},{"avatar_url":"https://avatars.githubusercontent.com/u/66277921?v=4","login":"jojomatik"},{"avatar_url":"https://avatars.githubusercontent.com/u/126086612?v=4","login":"kiri10ten"}] \ No newline at end of file diff --git a/api/_github/releases/index.json b/api/_github/releases/index.json index dec7de74d..3b9d59405 100644 --- a/api/_github/releases/index.json +++ b/api/_github/releases/index.json @@ -1 +1 @@ -[{"name":"v1.4.3","tag_name":"v1.4.3","date":"2024-11-20T10:32:56Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"refactor"},"children":[{"type":"text","value":"Refactor"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" inject earlier ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/pull/433","rel":["nofollow"]},"children":[{"type":"text","value":"#433"}]},{"type":"text","value":") "},{"type":"element","tag":"span","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/6a5bb33cc36ee287d83b4f020bd2837496183128","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"6a5bb33"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.2...v1.4.3","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-11-20)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"refactor","depth":3,"text":"Refactor"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.3","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.3.md"},{"name":"v1.4.2","tag_name":"v1.4.2","date":"2024-11-07T09:13:16Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.1...v1.4.2","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-11-07)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/184098070/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.2.md"},{"name":"v1.4.1","tag_name":"v1.4.1","date":"2024-10-11T07:57:46Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"session:"}]},{"type":"text","value":" ssr getSession warning ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/418","rel":["nofollow"]},"children":[{"type":"text","value":"#418"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/95d905b9b1f54a3aa15b3e4e583151cfcf00878f","rel":["nofollow"]},"children":[{"type":"text","value":"95d905b"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" added explicit types annotations for "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/411","rel":["nofollow"]},"children":[{"type":"text","value":"#411"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/3f9864069b758bd945b30c1eebaba618b4bfd95e","rel":["nofollow"]},"children":[{"type":"text","value":"3f98640"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.0...v1.4.1","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-08-30)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/th1m0","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@th1m0"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.1","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.1.md"},{"name":"v1.4.0","tag_name":"v1.4.0","date":"2024-08-30T12:31:31Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" add explicit type annotations for plugins ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/408","rel":["nofollow"]},"children":[{"type":"text","value":"#408"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/09bff844d29cfb788cb334860202e2e14a5da2a9","rel":["nofollow"]},"children":[{"type":"text","value":"09bff84"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" add explicit types for composables & remove "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"baseUrl"}]},{"type":"text","value":" from tsconfig ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/404","rel":["nofollow"]},"children":[{"type":"text","value":"#404"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/596ece2460e7b4d08bcb2ac2322c10912e0a5977","rel":["nofollow"]},"children":[{"type":"text","value":"596ece2"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" nullable composable types ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/407","rel":["nofollow"]},"children":[{"type":"text","value":"#407"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/cbbfd86150bba779743dd7c02341b97484d4cc49","rel":["nofollow"]},"children":[{"type":"text","value":"cbbfd86"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" add retries to fetch ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/382","rel":["nofollow"]},"children":[{"type":"text","value":"#382"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/98ca959c8d3f502dab78439709422e83d539b70d","rel":["nofollow"]},"children":[{"type":"text","value":"98ca959"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.3.5...v1.4.0","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-08-30)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/th1m0","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@th1m0"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"features","depth":3,"text":"Features"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.0","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/172753836/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.0.md"},{"name":"v1.3.5","tag_name":"v1.3.5","date":"2024-07-15T12:59:37Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" generate ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/671295a3f8e1743384913f2940975c2e4217ff2e","rel":["nofollow"]},"children":[{"type":"text","value":"671295a"}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/383","rel":["nofollow"]},"children":[{"type":"text","value":"#383"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.3.4...v1.3.5","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.5","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.5.md"},{"name":"v1.3.4","tag_name":"v1.3.4","date":"2024-07-10T07:00:38Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"vite:"}]},{"type":"text","value":" optimize order ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/663bd73ebb146ecde1abe5f29b52326e6dc2b6cd","rel":["nofollow"]},"children":[{"type":"text","value":"663bd73"}]},{"type":"text","value":") fixes "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/385","rel":["nofollow"]},"children":[{"type":"text","value":"#385"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.4","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.4.md"},{"name":"v1.3.2","tag_name":"v1.3.2","date":"2024-07-05T16:26:23Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"vite:"}]},{"type":"text","value":" optimize postgrest ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/2a6d91a3ee83aa65cc5741afea907ca474e61d64","rel":["nofollow"]},"children":[{"type":"text","value":"2a6d91a"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ci:"}]},{"type":"text","value":" nightly version ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/298e608442ac5e8c15aa61c01411585e57732f4a","rel":["nofollow"]},"children":[{"type":"text","value":"298e608"}]},{"type":"text","value":")"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"features","depth":3,"text":"Features"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/164188781/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.2.md"},{"name":"v1.3.1","tag_name":"v1.3.1","date":"2024-07-05T12:25:51Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ You can switch directly to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"1.3.1"}]},{"type":"text","value":", since "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"1.3.0"}]},{"type":"text","value":" has been superseded."}]},{"type":"element","tag":"h3","props":{"id":"major-changes"},"children":[{"type":"text","value":"Major changes"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We're now using the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/server-side/creating-a-client","rel":["nofollow"]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":" library under the hood 🎉 ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/357","rel":["nofollow"]},"children":[{"type":"text","value":"#357"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"There are "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"no breaking changes"}]},{"type":"text","value":" related to this improvement. However, a non-disruptive warning appears in this release:\r\n"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This warning is related to "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/auth-js/issues/912","rel":["nofollow"]},"children":[{"type":"text","value":"an issue"}]},{"type":"text","value":" in the Supabase library itself. Initially, I intended to wait for this fix but since managing updates across two separate branches is challenging I chose to merge it anyway. I could no longer delay the release due to users raising concerns about outdated dependencies and other issues within the module."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can upvote "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/auth-js/issues/912","rel":["nofollow"]},"children":[{"type":"text","value":"the issue"}]},{"type":"text","value":" to encourage the Supabase maintainers to address it."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This improvement might fix:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/298","rel":["nofollow"]},"children":[{"type":"text","value":"#298"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/381","rel":["nofollow"]},"children":[{"type":"text","value":"#381"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/380","rel":["nofollow"]},"children":[{"type":"text","value":"#380"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/367","rel":["nofollow"]},"children":[{"type":"text","value":"#367"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/326","rel":["nofollow"]},"children":[{"type":"text","value":"#326"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A big thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]},{"type":"text","value":" for initiating this change and helping refactor the module."}]},{"type":"element","tag":"h3","props":{"id":"other-update"},"children":[{"type":"text","value":"Other update"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Automatic database types by "},{"type":"element","tag":"a","props":{"href":"https://github.com/IsraelOrtuno","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@IsraelOrtuno"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/336","rel":["nofollow"]},"children":[{"type":"text","value":"#336"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.2.2...v1.3.1","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"major-changes","depth":3,"text":"Major changes"},{"id":"other-update","depth":3,"text":"Other update"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.1","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/164152561/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":2,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.1.md"},{"name":"v1.2.2","tag_name":"v1.2.2","date":"2024-05-02T15:33:41Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"serverSupabaseSession:"}]},{"type":"text","value":" export service ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/9cfeb8726d562c5aac6fe1efa7dd1664bc39ed66","rel":["nofollow"]},"children":[{"type":"text","value":"9cfeb87"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.2.1...v1.2.2","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/153851448/reactions","total_count":4,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":2,"rocket":0,"eyes":1},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.2.2.md"},{"name":"v1.2.1","tag_name":"v1.2.1","date":"2024-04-18T08:32:42Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"improvements"},"children":[{"type":"text","value":"Improvements"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Performance improvements by "},{"type":"element","tag":"a","props":{"href":"https://github.com/vinceglb","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@vinceglb"}]}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/352","rel":["nofollow"]},"children":[{"type":"text","value":"#352"}]}]},{"type":"element","tag":"h3","props":{"id":"chore"},"children":[{"type":"text","value":"Chore"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Move to eslint v9 using "},{"type":"element","tag":"a","props":{"href":"https://eslint.nuxt.com","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxt/eslint"}]},{"type":"text","value":" package"}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from:"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/vinceglb","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@vinceglb"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.2.0...v1.2.1","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"improvements","depth":3,"text":"Improvements"},{"id":"chore","depth":3,"text":"Chore"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from:"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.1","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/151694236/reactions","total_count":5,"+1":0,"-1":0,"laugh":0,"hooray":2,"confused":0,"heart":3,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.2.1.md"},{"name":"v1.2.0","tag_name":"v1.2.0","date":"2024-03-29T09:33:20Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"minor-version-since-we-have-a-new-composable"},"children":[{"type":"text","value":"Minor version since we have a new composable 🎉"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage/composables/usesupabasesession","rel":["nofollow"]},"children":[{"type":"text","value":"useSupabaseSession"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage/services/serversupabasesession","rel":["nofollow"]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" are now available to fetch your session client and server side ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/338","rel":["nofollow"]},"children":[{"type":"text","value":"#338"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/07eb081d532510da4152554c7010c79ed6008559","rel":["nofollow"]},"children":[{"type":"text","value":"07eb081"}]},{"type":"text","value":" & "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/9dee37ee030506fc7888dfbb6cc1f29b9126a728","rel":["nofollow"]},"children":[{"type":"text","value":"9dee37e"}]},{"type":"text","value":")"}]},{"type":"element","tag":"h4","props":{"id":"thanks-joeychilson-for-this-feature"},"children":[{"type":"text","value":"Thanks "},{"type":"element","tag":"a","props":{"href":"https://github.com/joeychilson","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@joeychilson"}]}]},{"type":"text","value":" for this feature 🙏"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.7...v1.2.0","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"minor-version-since-we-have-a-new-composable","depth":3,"text":"Minor version since we have a new composable 🎉"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.0","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.2.0.md"},{"name":"v1.1.7","tag_name":"v1.1.7","date":"2024-03-07T09:33:03Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"auth-middleware:"}]},{"type":"text","value":" add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"RedirectOptions"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/336","rel":["nofollow"]},"children":[{"type":"text","value":"#336"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/f9aad558da8171af1c442a60915c979eb10b8fab","rel":["nofollow"]},"children":[{"type":"text","value":"f9aad55"}]},{"type":"text","value":"), closes "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/268","rel":["nofollow"]},"children":[{"type":"text","value":"#268"}]}]}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/jojomatik","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@jojomatik"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.6...v1.1.7","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"features","depth":3,"text":"Features"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.7","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.7","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.7","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/145217172/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.7.md"},{"name":"v1.1.6","tag_name":"v1.1.6","date":"2024-01-26T15:22:23Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"deps:"}]},{"type":"text","value":" set resolution ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/db8c102fb9d69395528eece3e1e0552a16e673da","rel":["nofollow"]},"children":[{"type":"text","value":"db8c102"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"playground:"}]},{"type":"text","value":" watch on confirm page ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/0caf5c11d632df6b7e74e5e8973ee56a38b1c968","rel":["nofollow"]},"children":[{"type":"text","value":"0caf5c1"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"app:"}]},{"type":"text","value":" added redirect path cookie for use after signin ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/327","rel":["nofollow"]},"children":[{"type":"text","value":"#327"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/1b78a050fdc6da155434e261823b029f9dce2d40","rel":["nofollow"]},"children":[{"type":"text","value":"1b78a05"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/Matthewenderle","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Matthewenderle"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.5...v1.1.6","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"features","depth":3,"text":"Features"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.6","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.6","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.6","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/138681536/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":3,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.6.md"},{"name":"v1.1.5","tag_name":"v1.1.5","date":"2023-12-28T14:29:18Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"server:"}]},{"type":"text","value":" fetch user from session ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/7a3b73c36cc9aea10100a0ff37b0e0e7ecefe2a8","rel":["nofollow"]},"children":[{"type":"text","value":"7a3b73c"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"improvements"},"children":[{"type":"text","value":"Improvements"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"app:"}]},{"type":"text","value":" use module-builder stub mode for more accurate types "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/315","rel":["nofollow"]},"children":[{"type":"text","value":"#315"}]}]}]},{"type":"element","tag":"h3","props":{"id":"docs"},"children":[{"type":"text","value":"Docs"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"get-started:"}]},{"type":"text","value":" bun command "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/317","rel":["nofollow"]},"children":[{"type":"text","value":"#317"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"readme:"}]},{"type":"text","value":" typo in #dev section "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/316","rel":["nofollow"]},"children":[{"type":"text","value":"#316"}]}]}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/danielroe","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@danielroe"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/joshuabyler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@joshuabyler"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/hafizjavaid","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@hafizjavaid"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/relisora","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@relisora"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.4...v1.1.5","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"improvements","depth":3,"text":"Improvements"},{"id":"docs","depth":3,"text":"Docs"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.5","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/135279818/reactions","total_count":4,"+1":3,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.5.md"},{"name":"v1.1.4","tag_name":"v1.1.4","date":"2023-11-17T14:42:47Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" prevent useCookie usage outside of effect scope ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/309","rel":["nofollow"]},"children":[{"type":"text","value":"#309"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/bb55bed870efb68c39f255ddbcbe0b5446965399","rel":["nofollow"]},"children":[{"type":"text","value":"bb55bed"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/AlbertBrand","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@AlbertBrand"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.4","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/129966845/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.4.md"},{"name":"v1.1.3","tag_name":"v1.1.3","date":"2023-10-06T07:51:37Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" clientOptions merge"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/275","rel":["nofollow"]},"children":[{"type":"text","value":"#275"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/277","rel":["nofollow"]},"children":[{"type":"text","value":"#277"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c0097a355b859cb6a2d97884a7648284128acca2","rel":["nofollow"]},"children":[{"type":"text","value":"c0097a3"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"module:"}]},{"type":"text","value":" do not warn when using runtimeConfig to set url and key ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/281","rel":["nofollow"]},"children":[{"type":"text","value":"#281"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/8c151737b55738c68fc24b5e4db2517c4e866693","rel":["nofollow"]},"children":[{"type":"text","value":"8c15173"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/stafyniaksacha","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@stafyniaksacha"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/jonesisg1","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@jonesisg1"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.3","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/123992311/reactions","total_count":4,"+1":2,"-1":0,"laugh":0,"hooray":2,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.3.md"},{"name":"v1.1.2","tag_name":"v1.1.2","date":"2023-09-06T17:44:35Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ BREAKING CHANGE ⚠️\r\nBreaking change is related to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/244","rel":["nofollow"]},"children":[{"type":"text","value":"#244"}]},{"type":"text","value":" and was first adressed in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"v1.1.0"}]},{"type":"text","value":" but patch has been necessary to fix the version."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"On the confirm page, configured in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect.callback"}]},{"type":"text","value":" option (default to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]},{"type":"text","value":"), ensure to set the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"immediate"}]},{"type":"text","value":" option in the watch.\r\nCheck out the doc: "},{"type":"element","tag":"a","props":{"href":"http://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"text","value":"http://supabase.nuxtjs.org/authentication#confirm-page-confirm"}]},{"type":"text","value":"\r\nCheck out the demo code: "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/blob/main/demo/pages/confirm.vue","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-modules/supabase/blob/main/demo/pages/confirm.vue"}]}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"module:"}]},{"type":"text","value":" priority of redirect options made by defu ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/256","rel":["nofollow"]},"children":[{"type":"text","value":"#256"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c4e30bf50eb7816fee3a2e46b404df5ce9f7cf4d","rel":["nofollow"]},"children":[{"type":"text","value":"c4e30bf"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"plugin:"}]},{"type":"text","value":" retrieve user for client only page ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/244","rel":["nofollow"]},"children":[{"type":"text","value":"#244"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/4a35428e26542bf22b3288db6e9a9309f1310705","rel":["nofollow"]},"children":[{"type":"text","value":"4a35428"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"useSupabaseUser:"}]},{"type":"text","value":" add explicit user type ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/254","rel":["nofollow"]},"children":[{"type":"text","value":"#254"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/60d8551ee83a9c64a962b9f76b881b17d7384736","rel":["nofollow"]},"children":[{"type":"text","value":"60d8551"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.0.2...v1.1.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v1.0.2...v1.1.0"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/52cs","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@52cs"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/Aietes","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Aietes"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/AlbertBrand","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@AlbertBrand"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/kiri10ten","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@kiri10ten"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/xMorthi","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@xMorthi"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/120162649/reactions","total_count":4,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":0,"eyes":1},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.2.md"},{"name":"v1.0.2","tag_name":"v1.0.2","date":"2023-08-04T15:56:13Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(auth): update ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/df00ffe8ecc253fc23572b65465ad7928e185b13","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"df00ffe"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): correct provider_token assignment to cookie ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/a76df3f67d6b08daf359f38130ce08aeab57317b","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"a76df3f"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.0.1...v1.0.2","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v1.0.1...v1.0.2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/blqke","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@blqke"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/Aietes","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Aietes"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/115135546/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.0.2.md"},{"name":"v1.0.1","tag_name":"v1.0.1","date":"2023-08-02T15:46:15Z","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"I am happy to announce the release of version "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"1.0.0"}]},{"type":"text","value":" of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release."}]},{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Supabase introduced a new authentication flow (PKCE) a few months ago, which is now the default behavior of the module. However, you can still revert to the old (and less secure) authentication method through the module configuration. To help you seamlessly integrate this new flow, a "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication","rel":["nofollow"]},"children":[{"type":"text","value":"dedicated section"}]},{"type":"text","value":" has been added to the documentation. ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/219","rel":["nofollow"]},"children":[{"type":"text","value":"#219"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Building upon the previous point, we have implemented substantial changes to the session management, involving alterations to how Supabase clients are instantiated and how sessions are synchronized between the server and client-side. Consequently, these changes result in some breaking changes, which are listed below."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"A brand new documentation has been built entirely using "},{"type":"element","tag":"a","props":{"href":"https://nuxt.studio","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt Studio"}]},{"type":"text","value":". Feel free to create PRs to suggest fixes or add any necessary changes to further enhance the documentation. ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/210","rel":["nofollow"]},"children":[{"type":"text","value":"#210"}]},{"type":"text","value":" / "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/221","rel":["nofollow"]},"children":[{"type":"text","value":"#221"}]},{"type":"text","value":") => "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.nuxtjs.org"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here's documentation that can help you understand the PKCE authentication flow:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.com/blog/supabase-auth-sso-pkce#server-side-and-mobile-auth","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.com/blog/supabase-auth-sso-pkce#server-side-and-mobile-auth"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/resources/glossary#pkce","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.com/docs/guides/resources/glossary#pkce"}]}]}]},{"type":"element","tag":"br","props":{},"children":[]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ BREAKING CHANGES ⚠️"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseAuthClient"}]},{"type":"text","value":" has been removed in favor of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" in all cases"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" is now returning a promise (should be called with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"await"}]},{"type":"text","value":" in an "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"async"}]},{"type":"text","value":" method)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is enable by default, follow this "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication","rel":["nofollow"]},"children":[{"type":"text","value":"guide"}]},{"type":"text","value":" to update your app"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"client"}]},{"type":"text","value":" option becomes "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]},{"type":"text","value":" with new "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/get-started#clientoptions","rel":["nofollow"]},"children":[{"type":"text","value":"default value"}]},{"type":"text","value":" (including the PKCE flow)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookies"}]},{"type":"text","value":" options is split in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":", "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/get-started#cookieoptions","rel":["nofollow"]},"children":[{"type":"text","value":"default values"}]},{"type":"text","value":" have not changed"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here si the commit done for updating the demo with the last version: "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/10e05860862b68c49817f6420d50d082452f7a7f","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"10e0586"}]}]}]},{"type":"element","tag":"br","props":{},"children":[]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A huge thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/Aietes","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Aietes"}]}]},{"type":"text","value":" for initialising all those changes and help me built it 💚"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's changed"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.1","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/114843996/reactions","total_count":40,"+1":9,"-1":0,"laugh":0,"hooray":19,"confused":0,"heart":4,"rocket":8,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"I am happy to announce the release of version 1.0.0 of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release.","_type":"markdown","_id":"github:v1.0.1.md"},{"name":"v0.3.8","tag_name":"v0.3.8","date":"2023-07-03T08:29:53Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat(session): save provider access/refresh tokens in cookies ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ea8c21f3d625984832cb27a3ae7605b16caaf94b","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ea8c21f"}]}]},{"type":"text","value":") in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/197","rel":["nofollow"]},"children":[{"type":"text","value":"#197"}]},{"type":"text","value":" by "},{"type":"element","tag":"a","props":{"href":"https://github.com/mitjans","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@mitjans"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): upgrade to latest ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/a52abc871b6ab756c2b477f7c6b3c0f51279693c","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"a52abc8"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.7...v0.3.8","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.7...v0.3.8"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/mitjans","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@mitjans"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.8","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.8","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.8","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/110829614/reactions","total_count":5,"+1":0,"-1":0,"laugh":0,"hooray":5,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.8.md"},{"name":"v0.3.7","tag_name":"v0.3.7","date":"2023-06-12T07:51:13Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): fix persist session warning for "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/194","rel":["nofollow"]},"children":[{"type":"text","value":"#194"}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/193","rel":["nofollow"]},"children":[{"type":"text","value":"#193"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(get-started): remove defineNuxtConfig ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/0151901","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"0151901"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/jawngee","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@jawngee"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.7","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.7","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.7","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.7.md"},{"name":"v0.3.6","tag_name":"v0.3.6","date":"2023-06-02T14:33:38Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): upgrade to nuxt and supabase latest version"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): remove persist session warning on server side in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/227113f68fb8723f9687adfa12150f825940e0c9","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"227113f"}]}]},{"type":"text","value":" (Resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/188","rel":["nofollow"]},"children":[{"type":"text","value":"#188"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(chore): resolve imports (Resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/190","rel":["nofollow"]},"children":[{"type":"text","value":"#190"}]},{"type":"text","value":")"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.6","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.6","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.6","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/105847469/reactions","total_count":5,"+1":1,"-1":0,"laugh":0,"hooray":4,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.6.md"},{"name":"v0.3.5","tag_name":"v0.3.5","date":"2023-04-03T09:50:57Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): upgrade on last version ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/9bb9e2856823a0bb86c07ae7775462e02a1e430d","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"9bb9e28"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): generate database types from supabase cli ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bca199292dfeb23d5e0581ab40a6994fed3d1157","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bca1992"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(links): update nuxt & supabase links and fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/5699dc6c22f9182e9593936fc1260fc785eea450","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"5699dc6"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(app): move to pnpm ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/94f7e130747801584d2b0999bd2f5f904e575082","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"94f7e13"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(module): conditionally add redirect plugin ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/0cad0a557934f669f2ab424ef072f6b07c098646","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"0cad0a5"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(get-started): fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ba437a8534f3dcda53f805cc34b5d6a943297354","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ba437a8"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(composables): correct grammar errors ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/034d7dfaf9f52a08da0ade4bf6d5ed31ec740734","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"034d7df"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat(demo): add call from server route("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/989a91eacdc471de90a2307c39cd03f23cca57ee","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"989a91e"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"perf(useSupabaseAuthClient): avoid declaring unused variables ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/8c070b9e571b3fe7870c08033ea561624a6ae575","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8c070b9"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(dev): optimize supabase deps ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/d1da3f6b2f463e7196c69c3a580833438926a6e1","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"d1da3f6"}]}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/172","rel":["nofollow"]},"children":[{"type":"text","value":"#172"}]},{"type":"text","value":" & "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/151","rel":["nofollow"]},"children":[{"type":"text","value":"#151"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): transpile websocket lib prod only ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/a1ee40c848c9da81aa41acc53dc3555b32bafd86","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"a1ee40c"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(deps): transpile gotrue only on client ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/fcc6823e248395a513706cf67ab664f84daacb45","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"fcc6823"}]}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/172","rel":["nofollow"]},"children":[{"type":"text","value":"#172"}]},{"type":"text","value":" on server side"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.5","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.5"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=kuizuo","rel":["nofollow"]},"children":[{"type":"text","value":"kuizuo"}]},{"type":"text","value":"\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=tnntwister","rel":["nofollow"]},"children":[{"type":"text","value":"tnntwister"}]},{"type":"text","value":"\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=yannaufray","rel":["nofollow"]},"children":[{"type":"text","value":"yannaufray"}]},{"type":"text","value":"\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=DamianGlowala","rel":["nofollow"]},"children":[{"type":"text","value":"DamianGlowala"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.5","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/97822579/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":1,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.5.md"},{"name":"v0.3.3","tag_name":"v0.3.3","date":"2023-03-31T21:51:14Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"perf(useSupabaseAuthClient): avoid declaring unused variables ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/166","rel":["nofollow"]},"children":[{"type":"text","value":"#166"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/8c070b9","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8c070b9"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat(demo): add call from server route ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/989a91e","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"989a91e"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): upgrade deps ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/9ebbc77","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"9ebbc77"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): upgrade ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/e274a5e","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"e274a5e"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(composables): correct grammar errors ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/162","rel":["nofollow"]},"children":[{"type":"text","value":"#162"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/034d7df","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"034d7df"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(readme): add nuxt badge ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/68271b8","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"68271b8"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(demo): fix typo ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/125","rel":["nofollow"]},"children":[{"type":"text","value":"#125"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bd33d12","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bd33d12"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(get-started): fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/154","rel":["nofollow"]},"children":[{"type":"text","value":"#154"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ba437a8","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ba437a8"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(module): conditionally add redirect plugin ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/157","rel":["nofollow"]},"children":[{"type":"text","value":"#157"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/0cad0a5","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"0cad0a5"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(app): move to pnpm ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/94f7e13","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"94f7e13"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(links): update nuxt & supabase links and fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/126","rel":["nofollow"]},"children":[{"type":"text","value":"#126"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/5699dc6","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"5699dc6"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): generate database types from supabase cli ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bca1992","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bca1992"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.3","prerelease":true,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/97697076/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.3.md"},{"name":"v0.3.1","tag_name":"v0.3.1","date":"2023-02-07T20:18:04Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(app): upgrade deps and fix lint ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/68baf68","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"68baf68"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): unset user before session on logout ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ab574ef","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ab574ef"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): update with latest and fix logout"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.1","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.1.md"},{"name":"v0.3.0","tag_name":"v0.3.0","date":"2022-11-22T15:26:02Z","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ BREAKING CHANGES ⚠️"}]},{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In order to resolve "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/114","rel":["nofollow"]},"children":[{"type":"text","value":"#114"}]},{"type":"text","value":", I have made the choice to separate the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" in two other composables:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseAuthClient"}]},{"type":"text","value":" is dedicated to authentification purpose only. It won't be recreate if your token expires, it is used in the client plugin to listen to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"onAuthStateChange"}]},{"type":"text","value":" events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" is now only useful for data request."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To avoid regression you just need to use "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseAuthClient"}]},{"type":"text","value":" instead of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" everywhere you use "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signup","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase auth methods"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage/composables/use-supabase-auth-client","rel":["nofollow"]},"children":[{"type":"text","value":"Documentation"}]},{"type":"text","value":" has been updated."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.0","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/83886320/reactions","total_count":8,"+1":2,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":3,"rocket":3,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"⚠️ BREAKING CHANGES ⚠️","_type":"markdown","_id":"github:v0.3.0.md"},{"name":"v0.2.6","tag_name":"v0.2.6","date":"2022-11-22T15:16:16Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: update to Nuxt 3 stable 🚀 "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/v3","rel":["nofollow"]},"children":[{"type":"text","value":"https://nuxt.com/v3"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.5...v0.2.6","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.5...v0.2.6"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.6","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.6","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.6","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.6.md"},{"name":"v0.2.5","tag_name":"v0.2.5","date":"2022-11-22T15:14:51Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: use Router instead of navigateTo for login redirect in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/79fc0e43655d4dee5858acf06cf1979e3ead542b","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"79fc0e4"}]}]},{"type":"text","value":" (resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/89","rel":["nofollow"]},"children":[{"type":"text","value":"#89"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.5","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.5.md"},{"name":"v0.2.4","tag_name":"v0.2.4","date":"2022-11-13T19:36:18Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: handle TOKEN_REFRESHED session event in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bf503029b48113b4b66545d0d2065c899209a06a","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bf50302"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.3...v0.2.4","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.3...v0.2.4"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.4","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/82920199/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":2,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.4.md"},{"name":"v0.2.3","tag_name":"v0.2.3","date":"2022-11-11T17:27:14Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: typed supabase client in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/b59ff1acfbbe2cd36aea1ade2d2b538404909260","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"b59ff1a"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/fd751d7e50c63c48df9e03763458cc826409ff35","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"fd751d7"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to nuxt "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.13","rel":["nofollow"]},"children":[{"type":"text","value":"rc13"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: do not apply token if not exists ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/107","rel":["nofollow"]},"children":[{"type":"text","value":"#107"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs: add roadmap board from "},{"type":"element","tag":"a","props":{"href":"https://volta.net","rel":["nofollow"]},"children":[{"type":"text","value":"https://volta.net"}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/f8e73b535924f133e479dbc2863bb37856ff4555","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"f8e73b5"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/manniL","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@manniL"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/levibe","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@levibe"}]}]},{"type":"text","value":" 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"contributors","depth":2,"text":"Contributors"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.3","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/82825289/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.3.md"},{"name":"v0.2.0","tag_name":"v0.2.0","date":"2022-10-17T14:18:31Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ Breaking Changes"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Upgrade to supabase-js v2, check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes","rel":["nofollow"]},"children":[{"type":"text","value":"release notes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Module "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" has been updated in favor of supabase v2 syntax."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please feel free to make PR if I missed something 🙏"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"🚀 Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"options: redirect user after signout or when user is not authenticated (check "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/get-started#redirect","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"session: set refresh token "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/18","rel":["nofollow"]},"children":[{"type":"text","value":"#18"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.0.md"},{"name":"v0.1.28","tag_name":"v0.1.28","date":"2022-10-07T10:05:52Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: cloudflare workers deployment ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/46","rel":["nofollow"]},"children":[{"type":"text","value":"#46"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.27...v0.1.28","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.27...v0.1.28"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/kevinmarrec","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@kevinmarrec"}]}]},{"type":"text","value":" for the fix 🔥"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.28","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.28","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.28","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.28.md"},{"name":"v0.1.27","tag_name":"v0.1.27","date":"2022-09-23T10:19:42Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to Nuxt "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.11","rel":["nofollow"]},"children":[{"type":"text","value":"rc.11"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Stable is coming 🚀"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.26...v0.1.27","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.26...v0.1.27"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.27","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.27","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.27","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.27.md"},{"name":"v0.2.0","tag_name":"v0.2.0-16","date":"2022-08-16T14:56:45Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ Breaking Changes"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Upgrade to supabase-js v2, check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/next/release-notes","rel":["nofollow"]},"children":[{"type":"text","value":"release notes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0-16","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0-16","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0-16","prerelease":true,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.0.md"},{"name":"v0.1.26","tag_name":"v0.1.26","date":"2022-09-16T11:17:29Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to Nuxt "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.10","rel":["nofollow"]},"children":[{"type":"text","value":"rc.10"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Stable in coming 🚀"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.25...v0.1.26","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.25...v0.1.26"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.26","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.26","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.26","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/77384555/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.26.md"},{"name":"v0.1.25","tag_name":"v0.1.25","date":"2022-09-05T07:28:01Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs: new directory architecture + supabase module v2 coming soon in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/d48522a369bcced45dfb3d16793b33f0144ffa50","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"d48522a"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/e69712b4862a5baa464c01ae32755473358b82d2","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"e69712b"}]}]},{"type":"text","value":". Check out "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.nuxtjs.org/"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to rc9 in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/3c5220bf9569d2e939a466aa4a2814e0dc38622c","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"3c5220b"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/495e0b705622e9bda28072815c828beedea1082c","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"495e0b7"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: fix nuxt compatibility ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/70","rel":["nofollow"]},"children":[{"type":"text","value":"#70"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.25","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.25","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.25","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/76259131/reactions","total_count":5,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":5,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.25.md"},{"name":"v0.1.23","tag_name":"v0.1.23","date":"2022-08-16T10:12:13Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: transpile supabase packages in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/66020204e8aad98db94a83964f1bb988642c90f3","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"6602020"}]}]},{"type":"text","value":" "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/237ddf2cf83079e39748b6252182ca1d2f62cc54","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"237ddf2"}]}]},{"type":"text","value":" and ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/62","rel":["nofollow"]},"children":[{"type":"text","value":"#62"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.20...v0.1.23","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.20...v0.1.23"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.23","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.23","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.23","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.23.md"},{"name":"v0.1.20","tag_name":"v0.1.20","date":"2022-08-16T09:12:14Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.8","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt rc.8"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.19...v0.1.20","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.19...v0.1.20"}]}]},{"type":"element","tag":"h2","props":{"id":"new-contributors"},"children":[{"type":"text","value":"New Contributors"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/josuemartinezz","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@josuemartinezz"}]}]},{"type":"text","value":" made his first contribution in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/59","rel":["nofollow"]},"children":[{"type":"text","value":"#59"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"new-contributors","depth":2,"text":"New Contributors"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.20","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.20","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.20","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.20.md"},{"name":"v0.1.19","tag_name":"v0.1.19","date":"2022-07-18T08:18:42Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/pull/5825","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt rc.5"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: add supabase icon in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c0cce016eae809fd64acc9a503b4807750280b39","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"c0cce01"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.18...v0.1.19","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.18...v0.1.19"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.19","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.19","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.19","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/72200550/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":1,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.19.md"},{"name":"v0.1.18","tag_name":"v0.1.18","date":"2022-06-29T09:23:26Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: update logo & social preview in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/9b0b2fbee1f2fed50e903c2b368b817568d7ab1f","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"9b0b2fb"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/53","rel":["nofollow"]},"children":[{"type":"text","value":"#53"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: transpile supabase packages in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/309c137f7ae23985f0ed9947fb85cb75cbfbfca2","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"309c137"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/55","rel":["nofollow"]},"children":[{"type":"text","value":"#55"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.17...v0.1.18","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.17...v0.1.18"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.18","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.18","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.18","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.18.md"},{"name":"v0.1.17","tag_name":"v0.1.17","date":"2022-06-17T07:01:12Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/discussions/5445","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt rc.4"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: update "},{"type":"element","tag":"a","props":{"href":"https://docus.com/","rel":["nofollow"]},"children":[{"type":"text","value":"docus theme"}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/64a5add3db5e0416a8a3b7f9708d27148797e958","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"64a5add"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: add advanced usage with supabase realtime "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/8047e311e5526a4597b81a99dc8045114348172f","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8047e31"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/advanced#realtime","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for supabase realtime!"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.16...v0.1.17","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.16...v0.1.17"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.17","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.17","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.17","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/69689480/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.17.md"},{"name":"v0.1.16","tag_name":"v0.1.16","date":"2022-06-01T10:51:45Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: use docus theme (public release coming soon) powered by "},{"type":"element","tag":"a","props":{"href":"https://content.nuxtjs.org/","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt content v2"}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c24a16ff0bc94221adc021231a2206b6db8f293c","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"c24a16f"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/41","rel":["nofollow"]},"children":[{"type":"text","value":"#41"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: service role client to bypass RLS in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/ba70a976be97acb3c438d59e45b789ee917bee6b","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ba70a97"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/43","rel":["nofollow"]},"children":[{"type":"text","value":"#43"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the new "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" !"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.16","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.16","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.16","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.16.md"},{"name":"v0.1.14","tag_name":"v0.1.14","date":"2022-05-13T16:48:40Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: add playground folder in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/339cf31cf48d4059ba0e4470d6e5e2aa9ef184c7","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"339cf31"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: client options in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/4c5595c11caf7a55621d297f6a0183a756175473","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"4c5595c"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: add server routes services in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/696d3e8d19b8db79c85e86b79a3ba4dd31bb2343","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"696d3e8"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/36","rel":["nofollow"]},"children":[{"type":"text","value":"#36"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can check the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage#server-routes-services","rel":["nofollow"]},"children":[{"type":"text","value":"documentation updated"}]},{"type":"text","value":" for the use of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"services"}]},{"type":"text","value":" in server routes."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.14","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.14","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.14","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.14.md"},{"name":"v0.1.11","tag_name":"v0.1.11","date":"2022-05-06T08:51:02Z","body":{"type":"root","children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade deps"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.9...v0.1.11","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.9...v0.1.11"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.11","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.11","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.11","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.11.md"},{"name":"v0.1.9","tag_name":"v0.1.9","date":"2022-04-20T11:07:23Z","body":{"type":"root","children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: use "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#imports"}]},{"type":"text","value":" instead of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#nitro"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/42af598b7d9f3adf2c577c20e9cfb68bbb17d52b","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"42af598"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.8...v0.1.9","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.8...v0.1.9"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.9","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.9","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.9","prerelease":false,"author":{"name":"atinux","url":"https://github.com/atinux","avatar":"https://avatars.githubusercontent.com/u/904724?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.9.md"},{"name":"v0.1.8","tag_name":"v0.1.8","date":"2022-04-13T12:26:33Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: update runtime config fetch and override in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/260ebc7be39dfa65902ad4fe6a49639c99a69da8","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"260ebc7"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: handle session with defineEventHandler in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/e646b1ce03773bf44932824726f280ad15455ec2","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"e646b1c"}]}]},{"type":"text","value":" (Check "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/features/server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt doc"}]},{"type":"text","value":")"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.8","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.8","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.8","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.8.md"},{"name":"v0.1.7","tag_name":"v0.1.7","date":"2022-04-07T21:31:24Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: assert method and use correct key for server middleware in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/8a4d63101e6d2bc24563f7944988909ec7dcc6e5","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8a4d631"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: replace #config with #nitro by "},{"type":"element","tag":"a","props":{"href":"https://github.com/psto","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@psto"}]}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/pull/23","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module#23"}]}]}]},{"type":"element","tag":"h2","props":{"id":"new-contributors"},"children":[{"type":"text","value":"New Contributors"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/psto","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@psto"}]}]},{"type":"text","value":" made their first contribution in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/pull/23","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module#23"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"new-contributors","depth":2,"text":"New Contributors"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.7","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.7","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.7","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/63922233/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"atinux","url":"https://github.com/atinux","avatar":"https://avatars.githubusercontent.com/u/904724?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.7.md"},{"name":"v0.1.5","tag_name":"v0.1.5","date":"2022-04-04T10:15:21Z","body":{"type":"root","children":[{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"remove lodash.clonedeep ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/b5c5c60358ab192b98c8a63185f58a2eb0ab706a","rel":["nofollow"]},"children":[{"type":"text","value":"b5c5c60"}]},{"type":"text","value":"), resolved "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/21","rel":["nofollow"]},"children":[{"type":"text","value":"#21"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.4...v0.1.5","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.4...v0.1.5"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.5","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/63507078/reactions","total_count":6,"+1":0,"-1":0,"laugh":0,"hooray":4,"confused":0,"heart":2,"rocket":0,"eyes":0},"author":{"name":"atinux","url":"https://github.com/atinux","avatar":"https://avatars.githubusercontent.com/u/904724?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.5.md"}] \ No newline at end of file +[{"name":"v1.4.4","tag_name":"v1.4.4","date":"2024-12-10T14:54:47Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"feature"},"children":[{"type":"text","value":"Feature"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"deps:"}]},{"type":"text","value":" Update supabase-js to fix realtime issue ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/pull/436","rel":["nofollow"]},"children":[{"type":"text","value":"#436"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.3...v1.4.4","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-12-10)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"feature","depth":3,"text":"Feature"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.4","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/189979442/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.4.md"},{"name":"v1.4.3","tag_name":"v1.4.3","date":"2024-11-20T10:32:56Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"refactor"},"children":[{"type":"text","value":"Refactor"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" inject earlier ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/pull/433","rel":["nofollow"]},"children":[{"type":"text","value":"#433"}]},{"type":"text","value":") "},{"type":"element","tag":"span","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/6a5bb33cc36ee287d83b4f020bd2837496183128","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"6a5bb33"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.2...v1.4.3","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-11-20)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"refactor","depth":3,"text":"Refactor"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.3","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.3.md"},{"name":"v1.4.2","tag_name":"v1.4.2","date":"2024-11-07T09:13:16Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.1...v1.4.2","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-11-07)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/184098070/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.2.md"},{"name":"v1.4.1","tag_name":"v1.4.1","date":"2024-10-11T07:57:46Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"session:"}]},{"type":"text","value":" ssr getSession warning ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/418","rel":["nofollow"]},"children":[{"type":"text","value":"#418"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/95d905b9b1f54a3aa15b3e4e583151cfcf00878f","rel":["nofollow"]},"children":[{"type":"text","value":"95d905b"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" added explicit types annotations for "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/411","rel":["nofollow"]},"children":[{"type":"text","value":"#411"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/3f9864069b758bd945b30c1eebaba618b4bfd95e","rel":["nofollow"]},"children":[{"type":"text","value":"3f98640"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.4.0...v1.4.1","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-08-30)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/th1m0","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@th1m0"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.1","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.1.md"},{"name":"v1.4.0","tag_name":"v1.4.0","date":"2024-08-30T12:31:31Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" add explicit type annotations for plugins ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/408","rel":["nofollow"]},"children":[{"type":"text","value":"#408"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/09bff844d29cfb788cb334860202e2e14a5da2a9","rel":["nofollow"]},"children":[{"type":"text","value":"09bff84"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" add explicit types for composables & remove "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"baseUrl"}]},{"type":"text","value":" from tsconfig ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/404","rel":["nofollow"]},"children":[{"type":"text","value":"#404"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/596ece2460e7b4d08bcb2ac2322c10912e0a5977","rel":["nofollow"]},"children":[{"type":"text","value":"596ece2"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" nullable composable types ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/407","rel":["nofollow"]},"children":[{"type":"text","value":"#407"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/cbbfd86150bba779743dd7c02341b97484d4cc49","rel":["nofollow"]},"children":[{"type":"text","value":"cbbfd86"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" add retries to fetch ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/382","rel":["nofollow"]},"children":[{"type":"text","value":"#382"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/98ca959c8d3f502dab78439709422e83d539b70d","rel":["nofollow"]},"children":[{"type":"text","value":"98ca959"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.3.5...v1.4.0","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]},{"type":"text","value":" (2024-08-30)"}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/th1m0","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@th1m0"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"features","depth":3,"text":"Features"}]},{"id":"contributors","depth":2,"text":"Contributors 💚"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.0","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/172753836/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.4.0.md"},{"name":"v1.3.5","tag_name":"v1.3.5","date":"2024-07-15T12:59:37Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"types:"}]},{"type":"text","value":" generate ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/671295a3f8e1743384913f2940975c2e4217ff2e","rel":["nofollow"]},"children":[{"type":"text","value":"671295a"}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/383","rel":["nofollow"]},"children":[{"type":"text","value":"#383"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.3.4...v1.3.5","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.5","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.5.md"},{"name":"v1.3.4","tag_name":"v1.3.4","date":"2024-07-10T07:00:38Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"vite:"}]},{"type":"text","value":" optimize order ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/663bd73ebb146ecde1abe5f29b52326e6dc2b6cd","rel":["nofollow"]},"children":[{"type":"text","value":"663bd73"}]},{"type":"text","value":") fixes "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/385","rel":["nofollow"]},"children":[{"type":"text","value":"#385"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.4","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.4.md"},{"name":"v1.3.2","tag_name":"v1.3.2","date":"2024-07-05T16:26:23Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"vite:"}]},{"type":"text","value":" optimize postgrest ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/2a6d91a3ee83aa65cc5741afea907ca474e61d64","rel":["nofollow"]},"children":[{"type":"text","value":"2a6d91a"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ci:"}]},{"type":"text","value":" nightly version ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/298e608442ac5e8c15aa61c01411585e57732f4a","rel":["nofollow"]},"children":[{"type":"text","value":"298e608"}]},{"type":"text","value":")"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"features","depth":3,"text":"Features"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/164188781/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.2.md"},{"name":"v1.3.1","tag_name":"v1.3.1","date":"2024-07-05T12:25:51Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ You can switch directly to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"1.3.1"}]},{"type":"text","value":", since "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"1.3.0"}]},{"type":"text","value":" has been superseded."}]},{"type":"element","tag":"h3","props":{"id":"major-changes"},"children":[{"type":"text","value":"Major changes"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We're now using the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/server-side/creating-a-client","rel":["nofollow"]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":" library under the hood 🎉 ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/357","rel":["nofollow"]},"children":[{"type":"text","value":"#357"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"There are "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"no breaking changes"}]},{"type":"text","value":" related to this improvement. However, a non-disruptive warning appears in this release:\r\n"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This warning is related to "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/auth-js/issues/912","rel":["nofollow"]},"children":[{"type":"text","value":"an issue"}]},{"type":"text","value":" in the Supabase library itself. Initially, I intended to wait for this fix but since managing updates across two separate branches is challenging I chose to merge it anyway. I could no longer delay the release due to users raising concerns about outdated dependencies and other issues within the module."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can upvote "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/auth-js/issues/912","rel":["nofollow"]},"children":[{"type":"text","value":"the issue"}]},{"type":"text","value":" to encourage the Supabase maintainers to address it."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This improvement might fix:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/298","rel":["nofollow"]},"children":[{"type":"text","value":"#298"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/381","rel":["nofollow"]},"children":[{"type":"text","value":"#381"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/380","rel":["nofollow"]},"children":[{"type":"text","value":"#380"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/367","rel":["nofollow"]},"children":[{"type":"text","value":"#367"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/326","rel":["nofollow"]},"children":[{"type":"text","value":"#326"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A big thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/felixgabler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@felixgabler"}]}]},{"type":"text","value":" for initiating this change and helping refactor the module."}]},{"type":"element","tag":"h3","props":{"id":"other-update"},"children":[{"type":"text","value":"Other update"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Automatic database types by "},{"type":"element","tag":"a","props":{"href":"https://github.com/IsraelOrtuno","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@IsraelOrtuno"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/336","rel":["nofollow"]},"children":[{"type":"text","value":"#336"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.2.2...v1.3.1","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"major-changes","depth":3,"text":"Major changes"},{"id":"other-update","depth":3,"text":"Other update"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.1","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/164152561/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":2,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.3.1.md"},{"name":"v1.2.2","tag_name":"v1.2.2","date":"2024-05-02T15:33:41Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"serverSupabaseSession:"}]},{"type":"text","value":" export service ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/9cfeb8726d562c5aac6fe1efa7dd1664bc39ed66","rel":["nofollow"]},"children":[{"type":"text","value":"9cfeb87"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.2.1...v1.2.2","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/153851448/reactions","total_count":4,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":2,"rocket":0,"eyes":1},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.2.2.md"},{"name":"v1.2.1","tag_name":"v1.2.1","date":"2024-04-18T08:32:42Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"improvements"},"children":[{"type":"text","value":"Improvements"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Performance improvements by "},{"type":"element","tag":"a","props":{"href":"https://github.com/vinceglb","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@vinceglb"}]}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/352","rel":["nofollow"]},"children":[{"type":"text","value":"#352"}]}]},{"type":"element","tag":"h3","props":{"id":"chore"},"children":[{"type":"text","value":"Chore"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Move to eslint v9 using "},{"type":"element","tag":"a","props":{"href":"https://eslint.nuxt.com","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxt/eslint"}]},{"type":"text","value":" package"}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from:"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/vinceglb","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@vinceglb"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.2.0...v1.2.1","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"improvements","depth":3,"text":"Improvements"},{"id":"chore","depth":3,"text":"Chore"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from:"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.1","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/151694236/reactions","total_count":5,"+1":0,"-1":0,"laugh":0,"hooray":2,"confused":0,"heart":3,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.2.1.md"},{"name":"v1.2.0","tag_name":"v1.2.0","date":"2024-03-29T09:33:20Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"minor-version-since-we-have-a-new-composable"},"children":[{"type":"text","value":"Minor version since we have a new composable 🎉"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage/composables/usesupabasesession","rel":["nofollow"]},"children":[{"type":"text","value":"useSupabaseSession"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage/services/serversupabasesession","rel":["nofollow"]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" are now available to fetch your session client and server side ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/338","rel":["nofollow"]},"children":[{"type":"text","value":"#338"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/07eb081d532510da4152554c7010c79ed6008559","rel":["nofollow"]},"children":[{"type":"text","value":"07eb081"}]},{"type":"text","value":" & "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/9dee37ee030506fc7888dfbb6cc1f29b9126a728","rel":["nofollow"]},"children":[{"type":"text","value":"9dee37e"}]},{"type":"text","value":")"}]},{"type":"element","tag":"h4","props":{"id":"thanks-joeychilson-for-this-feature"},"children":[{"type":"text","value":"Thanks "},{"type":"element","tag":"a","props":{"href":"https://github.com/joeychilson","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@joeychilson"}]}]},{"type":"text","value":" for this feature 🙏"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.7...v1.2.0","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"minor-version-since-we-have-a-new-composable","depth":3,"text":"Minor version since we have a new composable 🎉"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.0","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.2.0.md"},{"name":"v1.1.7","tag_name":"v1.1.7","date":"2024-03-07T09:33:03Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"auth-middleware:"}]},{"type":"text","value":" add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"RedirectOptions"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/336","rel":["nofollow"]},"children":[{"type":"text","value":"#336"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/f9aad558da8171af1c442a60915c979eb10b8fab","rel":["nofollow"]},"children":[{"type":"text","value":"f9aad55"}]},{"type":"text","value":"), closes "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/268","rel":["nofollow"]},"children":[{"type":"text","value":"#268"}]}]}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/jojomatik","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@jojomatik"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.6...v1.1.7","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"features","depth":3,"text":"Features"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.7","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.7","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.7","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/145217172/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.7.md"},{"name":"v1.1.6","tag_name":"v1.1.6","date":"2024-01-26T15:22:23Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"deps:"}]},{"type":"text","value":" set resolution ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/db8c102fb9d69395528eece3e1e0552a16e673da","rel":["nofollow"]},"children":[{"type":"text","value":"db8c102"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"playground:"}]},{"type":"text","value":" watch on confirm page ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/0caf5c11d632df6b7e74e5e8973ee56a38b1c968","rel":["nofollow"]},"children":[{"type":"text","value":"0caf5c1"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"app:"}]},{"type":"text","value":" added redirect path cookie for use after signin ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/327","rel":["nofollow"]},"children":[{"type":"text","value":"#327"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/1b78a050fdc6da155434e261823b029f9dce2d40","rel":["nofollow"]},"children":[{"type":"text","value":"1b78a05"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/Matthewenderle","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Matthewenderle"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.5...v1.1.6","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"features","depth":3,"text":"Features"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.6","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.6","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.6","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/138681536/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":3,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.6.md"},{"name":"v1.1.5","tag_name":"v1.1.5","date":"2023-12-28T14:29:18Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"server:"}]},{"type":"text","value":" fetch user from session ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/7a3b73c36cc9aea10100a0ff37b0e0e7ecefe2a8","rel":["nofollow"]},"children":[{"type":"text","value":"7a3b73c"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"h3","props":{"id":"improvements"},"children":[{"type":"text","value":"Improvements"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"app:"}]},{"type":"text","value":" use module-builder stub mode for more accurate types "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/315","rel":["nofollow"]},"children":[{"type":"text","value":"#315"}]}]}]},{"type":"element","tag":"h3","props":{"id":"docs"},"children":[{"type":"text","value":"Docs"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"get-started:"}]},{"type":"text","value":" bun command "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/317","rel":["nofollow"]},"children":[{"type":"text","value":"#317"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"readme:"}]},{"type":"text","value":" typo in #dev section "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/316","rel":["nofollow"]},"children":[{"type":"text","value":"#316"}]}]}]},{"type":"element","tag":"h3","props":{"id":"thanks-for-the-help-from"},"children":[{"type":"text","value":"💚 Thanks for the help from"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/danielroe","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@danielroe"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/joshuabyler","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@joshuabyler"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/hafizjavaid","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@hafizjavaid"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/relisora","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@relisora"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.1.4...v1.1.5","rel":["nofollow"]},"children":[{"type":"text","value":"Full changelog"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"},{"id":"improvements","depth":3,"text":"Improvements"},{"id":"docs","depth":3,"text":"Docs"},{"id":"thanks-for-the-help-from","depth":3,"text":"💚 Thanks for the help from"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.5","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/135279818/reactions","total_count":4,"+1":3,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.5.md"},{"name":"v1.1.4","tag_name":"v1.1.4","date":"2023-11-17T14:42:47Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" prevent useCookie usage outside of effect scope ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/309","rel":["nofollow"]},"children":[{"type":"text","value":"#309"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/bb55bed870efb68c39f255ddbcbe0b5446965399","rel":["nofollow"]},"children":[{"type":"text","value":"bb55bed"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/AlbertBrand","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@AlbertBrand"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.4","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/129966845/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.4.md"},{"name":"v1.1.3","tag_name":"v1.1.3","date":"2023-10-06T07:51:37Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"client:"}]},{"type":"text","value":" clientOptions merge"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/275","rel":["nofollow"]},"children":[{"type":"text","value":"#275"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/277","rel":["nofollow"]},"children":[{"type":"text","value":"#277"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c0097a355b859cb6a2d97884a7648284128acca2","rel":["nofollow"]},"children":[{"type":"text","value":"c0097a3"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"module:"}]},{"type":"text","value":" do not warn when using runtimeConfig to set url and key ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/281","rel":["nofollow"]},"children":[{"type":"text","value":"#281"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/8c151737b55738c68fc24b5e4db2517c4e866693","rel":["nofollow"]},"children":[{"type":"text","value":"8c15173"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/stafyniaksacha","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@stafyniaksacha"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/jonesisg1","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@jonesisg1"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.3","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/123992311/reactions","total_count":4,"+1":2,"-1":0,"laugh":0,"hooray":2,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.3.md"},{"name":"v1.1.2","tag_name":"v1.1.2","date":"2023-09-06T17:44:35Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ BREAKING CHANGE ⚠️\r\nBreaking change is related to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/244","rel":["nofollow"]},"children":[{"type":"text","value":"#244"}]},{"type":"text","value":" and was first adressed in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"v1.1.0"}]},{"type":"text","value":" but patch has been necessary to fix the version."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"On the confirm page, configured in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect.callback"}]},{"type":"text","value":" option (default to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]},{"type":"text","value":"), ensure to set the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"immediate"}]},{"type":"text","value":" option in the watch.\r\nCheck out the doc: "},{"type":"element","tag":"a","props":{"href":"http://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"text","value":"http://supabase.nuxtjs.org/authentication#confirm-page-confirm"}]},{"type":"text","value":"\r\nCheck out the demo code: "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/blob/main/demo/pages/confirm.vue","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-modules/supabase/blob/main/demo/pages/confirm.vue"}]}]},{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"module:"}]},{"type":"text","value":" priority of redirect options made by defu ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/256","rel":["nofollow"]},"children":[{"type":"text","value":"#256"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c4e30bf50eb7816fee3a2e46b404df5ce9f7cf4d","rel":["nofollow"]},"children":[{"type":"text","value":"c4e30bf"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"plugin:"}]},{"type":"text","value":" retrieve user for client only page ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/244","rel":["nofollow"]},"children":[{"type":"text","value":"#244"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/4a35428e26542bf22b3288db6e9a9309f1310705","rel":["nofollow"]},"children":[{"type":"text","value":"4a35428"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"useSupabaseUser:"}]},{"type":"text","value":" add explicit user type ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/issues/254","rel":["nofollow"]},"children":[{"type":"text","value":"#254"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/60d8551ee83a9c64a962b9f76b881b17d7384736","rel":["nofollow"]},"children":[{"type":"text","value":"60d8551"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.0.2...v1.1.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v1.0.2...v1.1.0"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/52cs","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@52cs"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/Aietes","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Aietes"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/AlbertBrand","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@AlbertBrand"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/kiri10ten","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@kiri10ten"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/xMorthi","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@xMorthi"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed","children":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/120162649/reactions","total_count":4,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":0,"eyes":1},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.1.2.md"},{"name":"v1.0.2","tag_name":"v1.0.2","date":"2023-08-04T15:56:13Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(auth): update ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/df00ffe8ecc253fc23572b65465ad7928e185b13","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"df00ffe"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): correct provider_token assignment to cookie ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/a76df3f67d6b08daf359f38130ce08aeab57317b","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"a76df3f"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v1.0.1...v1.0.2","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v1.0.1...v1.0.2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/blqke","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@blqke"}]}]},{"type":"text","value":"\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/Aietes","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Aietes"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.2","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.2","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.2","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/115135546/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v1.0.2.md"},{"name":"v1.0.1","tag_name":"v1.0.1","date":"2023-08-02T15:46:15Z","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"I am happy to announce the release of version "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"1.0.0"}]},{"type":"text","value":" of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release."}]},{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Supabase introduced a new authentication flow (PKCE) a few months ago, which is now the default behavior of the module. However, you can still revert to the old (and less secure) authentication method through the module configuration. To help you seamlessly integrate this new flow, a "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication","rel":["nofollow"]},"children":[{"type":"text","value":"dedicated section"}]},{"type":"text","value":" has been added to the documentation. ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/219","rel":["nofollow"]},"children":[{"type":"text","value":"#219"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Building upon the previous point, we have implemented substantial changes to the session management, involving alterations to how Supabase clients are instantiated and how sessions are synchronized between the server and client-side. Consequently, these changes result in some breaking changes, which are listed below."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"A brand new documentation has been built entirely using "},{"type":"element","tag":"a","props":{"href":"https://nuxt.studio","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt Studio"}]},{"type":"text","value":". Feel free to create PRs to suggest fixes or add any necessary changes to further enhance the documentation. ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/210","rel":["nofollow"]},"children":[{"type":"text","value":"#210"}]},{"type":"text","value":" / "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/221","rel":["nofollow"]},"children":[{"type":"text","value":"#221"}]},{"type":"text","value":") => "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.nuxtjs.org"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here's documentation that can help you understand the PKCE authentication flow:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.com/blog/supabase-auth-sso-pkce#server-side-and-mobile-auth","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.com/blog/supabase-auth-sso-pkce#server-side-and-mobile-auth"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/resources/glossary#pkce","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.com/docs/guides/resources/glossary#pkce"}]}]}]},{"type":"element","tag":"br","props":{},"children":[]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ BREAKING CHANGES ⚠️"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseAuthClient"}]},{"type":"text","value":" has been removed in favor of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" in all cases"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" is now returning a promise (should be called with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"await"}]},{"type":"text","value":" in an "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"async"}]},{"type":"text","value":" method)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is enable by default, follow this "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication","rel":["nofollow"]},"children":[{"type":"text","value":"guide"}]},{"type":"text","value":" to update your app"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"client"}]},{"type":"text","value":" option becomes "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]},{"type":"text","value":" with new "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/get-started#clientoptions","rel":["nofollow"]},"children":[{"type":"text","value":"default value"}]},{"type":"text","value":" (including the PKCE flow)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookies"}]},{"type":"text","value":" options is split in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":", "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/get-started#cookieoptions","rel":["nofollow"]},"children":[{"type":"text","value":"default values"}]},{"type":"text","value":" have not changed"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here si the commit done for updating the demo with the last version: "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/10e05860862b68c49817f6420d50d082452f7a7f","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"10e0586"}]}]}]},{"type":"element","tag":"br","props":{},"children":[]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A huge thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/Aietes","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@Aietes"}]}]},{"type":"text","value":" for initialising all those changes and help me built it 💚"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's changed"}]}},"v":1,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.1","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/114843996/reactions","total_count":40,"+1":9,"-1":0,"laugh":0,"hooray":19,"confused":0,"heart":4,"rocket":8,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"I am happy to announce the release of version 1.0.0 of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release.","_type":"markdown","_id":"github:v1.0.1.md"},{"name":"v0.3.8","tag_name":"v0.3.8","date":"2023-07-03T08:29:53Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat(session): save provider access/refresh tokens in cookies ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ea8c21f3d625984832cb27a3ae7605b16caaf94b","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ea8c21f"}]}]},{"type":"text","value":") in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/197","rel":["nofollow"]},"children":[{"type":"text","value":"#197"}]},{"type":"text","value":" by "},{"type":"element","tag":"a","props":{"href":"https://github.com/mitjans","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@mitjans"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): upgrade to latest ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/a52abc871b6ab756c2b477f7c6b3c0f51279693c","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"a52abc8"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.7...v0.3.8","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.7...v0.3.8"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/mitjans","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@mitjans"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.8","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.8","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.8","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/110829614/reactions","total_count":5,"+1":0,"-1":0,"laugh":0,"hooray":5,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.8.md"},{"name":"v0.3.7","tag_name":"v0.3.7","date":"2023-06-12T07:51:13Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): fix persist session warning for "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/194","rel":["nofollow"]},"children":[{"type":"text","value":"#194"}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/193","rel":["nofollow"]},"children":[{"type":"text","value":"#193"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(get-started): remove defineNuxtConfig ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/0151901","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"0151901"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n"},{"type":"element","tag":"a","props":{"href":"https://github.com/jawngee","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@jawngee"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.7","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.7","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.7","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.7.md"},{"name":"v0.3.6","tag_name":"v0.3.6","date":"2023-06-02T14:33:38Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): upgrade to nuxt and supabase latest version"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): remove persist session warning on server side in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/227113f68fb8723f9687adfa12150f825940e0c9","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"227113f"}]}]},{"type":"text","value":" (Resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/188","rel":["nofollow"]},"children":[{"type":"text","value":"#188"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(chore): resolve imports (Resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/190","rel":["nofollow"]},"children":[{"type":"text","value":"#190"}]},{"type":"text","value":")"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.6","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.6","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.6","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/105847469/reactions","total_count":5,"+1":1,"-1":0,"laugh":0,"hooray":4,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.6.md"},{"name":"v0.3.5","tag_name":"v0.3.5","date":"2023-04-03T09:50:57Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): upgrade on last version ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/9bb9e2856823a0bb86c07ae7775462e02a1e430d","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"9bb9e28"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): generate database types from supabase cli ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bca199292dfeb23d5e0581ab40a6994fed3d1157","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bca1992"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(links): update nuxt & supabase links and fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/5699dc6c22f9182e9593936fc1260fc785eea450","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"5699dc6"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(app): move to pnpm ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/94f7e130747801584d2b0999bd2f5f904e575082","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"94f7e13"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(module): conditionally add redirect plugin ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/0cad0a557934f669f2ab424ef072f6b07c098646","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"0cad0a5"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(get-started): fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ba437a8534f3dcda53f805cc34b5d6a943297354","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ba437a8"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(composables): correct grammar errors ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/034d7dfaf9f52a08da0ade4bf6d5ed31ec740734","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"034d7df"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat(demo): add call from server route("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/989a91eacdc471de90a2307c39cd03f23cca57ee","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"989a91e"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"perf(useSupabaseAuthClient): avoid declaring unused variables ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/8c070b9e571b3fe7870c08033ea561624a6ae575","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8c070b9"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(dev): optimize supabase deps ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/d1da3f6b2f463e7196c69c3a580833438926a6e1","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"d1da3f6"}]}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/172","rel":["nofollow"]},"children":[{"type":"text","value":"#172"}]},{"type":"text","value":" & "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/151","rel":["nofollow"]},"children":[{"type":"text","value":"#151"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): transpile websocket lib prod only ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/a1ee40c848c9da81aa41acc53dc3555b32bafd86","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"a1ee40c"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(deps): transpile gotrue only on client ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/fcc6823e248395a513706cf67ab664f84daacb45","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"fcc6823"}]}]},{"type":"text","value":") resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/172","rel":["nofollow"]},"children":[{"type":"text","value":"#172"}]},{"type":"text","value":" on server side"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.5","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.5"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"💚 Thanks for the help from 💚\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=kuizuo","rel":["nofollow"]},"children":[{"type":"text","value":"kuizuo"}]},{"type":"text","value":"\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=tnntwister","rel":["nofollow"]},"children":[{"type":"text","value":"tnntwister"}]},{"type":"text","value":"\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=yannaufray","rel":["nofollow"]},"children":[{"type":"text","value":"yannaufray"}]},{"type":"text","value":"\r\n@"},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commits?author=DamianGlowala","rel":["nofollow"]},"children":[{"type":"text","value":"DamianGlowala"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.5","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/97822579/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":1,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.5.md"},{"name":"v0.3.3","tag_name":"v0.3.3","date":"2023-03-31T21:51:14Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"perf(useSupabaseAuthClient): avoid declaring unused variables ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/166","rel":["nofollow"]},"children":[{"type":"text","value":"#166"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/8c070b9","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8c070b9"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat(demo): add call from server route ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/989a91e","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"989a91e"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): upgrade deps ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/9ebbc77","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"9ebbc77"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(deps): upgrade ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/e274a5e","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"e274a5e"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(composables): correct grammar errors ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/162","rel":["nofollow"]},"children":[{"type":"text","value":"#162"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/034d7df","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"034d7df"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(readme): add nuxt badge ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/68271b8","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"68271b8"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(demo): fix typo ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/125","rel":["nofollow"]},"children":[{"type":"text","value":"#125"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bd33d12","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bd33d12"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(get-started): fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/154","rel":["nofollow"]},"children":[{"type":"text","value":"#154"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ba437a8","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ba437a8"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(module): conditionally add redirect plugin ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/157","rel":["nofollow"]},"children":[{"type":"text","value":"#157"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/0cad0a5","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"0cad0a5"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(app): move to pnpm ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/94f7e13","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"94f7e13"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs(links): update nuxt & supabase links and fix typos ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/126","rel":["nofollow"]},"children":[{"type":"text","value":"#126"}]},{"type":"text","value":") ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/5699dc6","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"5699dc6"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): generate database types from supabase cli ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bca1992","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bca1992"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.3","prerelease":true,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/97697076/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.3.md"},{"name":"v0.3.1","tag_name":"v0.3.1","date":"2023-02-07T20:18:04Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(app): upgrade deps and fix lint ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/68baf68","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"68baf68"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix(client): unset user before session on logout ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/ab574ef","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ab574ef"}]}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore(demo): update with latest and fix logout"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.1","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.1","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.1","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.3.1.md"},{"name":"v0.3.0","tag_name":"v0.3.0","date":"2022-11-22T15:26:02Z","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ BREAKING CHANGES ⚠️"}]},{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In order to resolve "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/114","rel":["nofollow"]},"children":[{"type":"text","value":"#114"}]},{"type":"text","value":", I have made the choice to separate the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" in two other composables:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseAuthClient"}]},{"type":"text","value":" is dedicated to authentification purpose only. It won't be recreate if your token expires, it is used in the client plugin to listen to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"onAuthStateChange"}]},{"type":"text","value":" events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" is now only useful for data request."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To avoid regression you just need to use "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseAuthClient"}]},{"type":"text","value":" instead of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" everywhere you use "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signup","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase auth methods"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage/composables/use-supabase-auth-client","rel":["nofollow"]},"children":[{"type":"text","value":"Documentation"}]},{"type":"text","value":" has been updated."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.0","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/83886320/reactions","total_count":8,"+1":2,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":3,"rocket":3,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"⚠️ BREAKING CHANGES ⚠️","_type":"markdown","_id":"github:v0.3.0.md"},{"name":"v0.2.6","tag_name":"v0.2.6","date":"2022-11-22T15:16:16Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: update to Nuxt 3 stable 🚀 "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/v3","rel":["nofollow"]},"children":[{"type":"text","value":"https://nuxt.com/v3"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.5...v0.2.6","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.5...v0.2.6"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.6","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.6","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.6","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.6.md"},{"name":"v0.2.5","tag_name":"v0.2.5","date":"2022-11-22T15:14:51Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: use Router instead of navigateTo for login redirect in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/79fc0e43655d4dee5858acf06cf1979e3ead542b","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"79fc0e4"}]}]},{"type":"text","value":" (resolves "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/89","rel":["nofollow"]},"children":[{"type":"text","value":"#89"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.5","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.5.md"},{"name":"v0.2.4","tag_name":"v0.2.4","date":"2022-11-13T19:36:18Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: handle TOKEN_REFRESHED session event in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/bf503029b48113b4b66545d0d2065c899209a06a","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bf50302"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.3...v0.2.4","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.3...v0.2.4"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.4","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.4","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.4","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/82920199/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":2,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.4.md"},{"name":"v0.2.3","tag_name":"v0.2.3","date":"2022-11-11T17:27:14Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: typed supabase client in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/b59ff1acfbbe2cd36aea1ade2d2b538404909260","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"b59ff1a"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/fd751d7e50c63c48df9e03763458cc826409ff35","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"fd751d7"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to nuxt "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.13","rel":["nofollow"]},"children":[{"type":"text","value":"rc13"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: do not apply token if not exists ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/107","rel":["nofollow"]},"children":[{"type":"text","value":"#107"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs: add roadmap board from "},{"type":"element","tag":"a","props":{"href":"https://volta.net","rel":["nofollow"]},"children":[{"type":"text","value":"https://volta.net"}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/f8e73b535924f133e479dbc2863bb37856ff4555","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"f8e73b5"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"contributors"},"children":[{"type":"text","value":"Contributors"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/manniL","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@manniL"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/levibe","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@levibe"}]}]},{"type":"text","value":" 💚"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"contributors","depth":2,"text":"Contributors"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.3","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.3","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.3","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/82825289/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.3.md"},{"name":"v0.2.0","tag_name":"v0.2.0","date":"2022-10-17T14:18:31Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ Breaking Changes"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Upgrade to supabase-js v2, check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes","rel":["nofollow"]},"children":[{"type":"text","value":"release notes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Module "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" has been updated in favor of supabase v2 syntax."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please feel free to make PR if I missed something 🙏"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"🚀 Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"options: redirect user after signout or when user is not authenticated (check "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/get-started#redirect","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"session: set refresh token "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/18","rel":["nofollow"]},"children":[{"type":"text","value":"#18"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.0.md"},{"name":"v0.1.28","tag_name":"v0.1.28","date":"2022-10-07T10:05:52Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: cloudflare workers deployment ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/46","rel":["nofollow"]},"children":[{"type":"text","value":"#46"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.27...v0.1.28","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.27...v0.1.28"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Thanks to "},{"type":"element","tag":"a","props":{"href":"https://github.com/kevinmarrec","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@kevinmarrec"}]}]},{"type":"text","value":" for the fix 🔥"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.28","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.28","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.28","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.28.md"},{"name":"v0.1.27","tag_name":"v0.1.27","date":"2022-09-23T10:19:42Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to Nuxt "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.11","rel":["nofollow"]},"children":[{"type":"text","value":"rc.11"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Stable is coming 🚀"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.26...v0.1.27","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.26...v0.1.27"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.27","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.27","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.27","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.27.md"},{"name":"v0.2.0","tag_name":"v0.2.0-16","date":"2022-08-16T14:56:45Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"⚠️ Breaking Changes"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Upgrade to supabase-js v2, check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/next/release-notes","rel":["nofollow"]},"children":[{"type":"text","value":"release notes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0-16","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0-16","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0-16","prerelease":true,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.2.0.md"},{"name":"v0.1.26","tag_name":"v0.1.26","date":"2022-09-16T11:17:29Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to Nuxt "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.10","rel":["nofollow"]},"children":[{"type":"text","value":"rc.10"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Stable in coming 🚀"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.25...v0.1.26","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.25...v0.1.26"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.26","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.26","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.26","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/77384555/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.26.md"},{"name":"v0.1.25","tag_name":"v0.1.25","date":"2022-09-05T07:28:01Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"docs: new directory architecture + supabase module v2 coming soon in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/d48522a369bcced45dfb3d16793b33f0144ffa50","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"d48522a"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/e69712b4862a5baa464c01ae32755473358b82d2","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"e69712b"}]}]},{"type":"text","value":". Check out "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/","rel":["nofollow"]},"children":[{"type":"text","value":"https://supabase.nuxtjs.org/"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to rc9 in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/3c5220bf9569d2e939a466aa4a2814e0dc38622c","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"3c5220b"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/commit/495e0b705622e9bda28072815c828beedea1082c","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"495e0b7"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: fix nuxt compatibility ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/70","rel":["nofollow"]},"children":[{"type":"text","value":"#70"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.25","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.25","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.25","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/76259131/reactions","total_count":5,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":5,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.25.md"},{"name":"v0.1.23","tag_name":"v0.1.23","date":"2022-08-16T10:12:13Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: transpile supabase packages in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/66020204e8aad98db94a83964f1bb988642c90f3","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"6602020"}]}]},{"type":"text","value":" "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/237ddf2cf83079e39748b6252182ca1d2f62cc54","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"237ddf2"}]}]},{"type":"text","value":" and ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/62","rel":["nofollow"]},"children":[{"type":"text","value":"#62"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.20...v0.1.23","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.20...v0.1.23"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.23","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.23","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.23","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.23.md"},{"name":"v0.1.20","tag_name":"v0.1.20","date":"2022-08-16T09:12:14Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.8","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt rc.8"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.19...v0.1.20","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.19...v0.1.20"}]}]},{"type":"element","tag":"h2","props":{"id":"new-contributors"},"children":[{"type":"text","value":"New Contributors"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/josuemartinezz","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@josuemartinezz"}]}]},{"type":"text","value":" made his first contribution in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/59","rel":["nofollow"]},"children":[{"type":"text","value":"#59"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"new-contributors","depth":2,"text":"New Contributors"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.20","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.20","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.20","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.20.md"},{"name":"v0.1.19","tag_name":"v0.1.19","date":"2022-07-18T08:18:42Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/pull/5825","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt rc.5"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: add supabase icon in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c0cce016eae809fd64acc9a503b4807750280b39","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"c0cce01"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.18...v0.1.19","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.18...v0.1.19"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.19","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.19","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.19","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/72200550/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":1,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.19.md"},{"name":"v0.1.18","tag_name":"v0.1.18","date":"2022-06-29T09:23:26Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: update logo & social preview in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/9b0b2fbee1f2fed50e903c2b368b817568d7ab1f","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"9b0b2fb"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/53","rel":["nofollow"]},"children":[{"type":"text","value":"#53"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: transpile supabase packages in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/309c137f7ae23985f0ed9947fb85cb75cbfbfca2","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"309c137"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/55","rel":["nofollow"]},"children":[{"type":"text","value":"#55"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.17...v0.1.18","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.17...v0.1.18"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.18","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.18","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.18","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.18.md"},{"name":"v0.1.17","tag_name":"v0.1.17","date":"2022-06-17T07:01:12Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade to "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/framework/discussions/5445","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt rc.4"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: update "},{"type":"element","tag":"a","props":{"href":"https://docus.com/","rel":["nofollow"]},"children":[{"type":"text","value":"docus theme"}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/64a5add3db5e0416a8a3b7f9708d27148797e958","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"64a5add"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: add advanced usage with supabase realtime "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/8047e311e5526a4597b81a99dc8045114348172f","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8047e31"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/advanced#realtime","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for supabase realtime!"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.16...v0.1.17","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.16...v0.1.17"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.17","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.17","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.17","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/69689480/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.17.md"},{"name":"v0.1.16","tag_name":"v0.1.16","date":"2022-06-01T10:51:45Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"doc: use docus theme (public release coming soon) powered by "},{"type":"element","tag":"a","props":{"href":"https://content.nuxtjs.org/","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt content v2"}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/c24a16ff0bc94221adc021231a2206b6db8f293c","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"c24a16f"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/41","rel":["nofollow"]},"children":[{"type":"text","value":"#41"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: service role client to bypass RLS in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/ba70a976be97acb3c438d59e45b789ee917bee6b","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ba70a97"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/43","rel":["nofollow"]},"children":[{"type":"text","value":"#43"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the new "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" !"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.16","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.16","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.16","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.16.md"},{"name":"v0.1.14","tag_name":"v0.1.14","date":"2022-05-13T16:48:40Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: add playground folder in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/339cf31cf48d4059ba0e4470d6e5e2aa9ef184c7","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"339cf31"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: client options in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/4c5595c11caf7a55621d297f6a0183a756175473","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"4c5595c"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: add server routes services in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/696d3e8d19b8db79c85e86b79a3ba4dd31bb2343","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"696d3e8"}]}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/36","rel":["nofollow"]},"children":[{"type":"text","value":"#36"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can check the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/usage#server-routes-services","rel":["nofollow"]},"children":[{"type":"text","value":"documentation updated"}]},{"type":"text","value":" for the use of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"services"}]},{"type":"text","value":" in server routes."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.14","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.14","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.14","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.14.md"},{"name":"v0.1.11","tag_name":"v0.1.11","date":"2022-05-06T08:51:02Z","body":{"type":"root","children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"chore: upgrade deps"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.9...v0.1.11","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.9...v0.1.11"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.11","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.11","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.11","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.11.md"},{"name":"v0.1.9","tag_name":"v0.1.9","date":"2022-04-20T11:07:23Z","body":{"type":"root","children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: use "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#imports"}]},{"type":"text","value":" instead of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#nitro"}]},{"type":"text","value":" ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/42af598b7d9f3adf2c577c20e9cfb68bbb17d52b","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"42af598"}]}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.8...v0.1.9","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.8...v0.1.9"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.9","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.9","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.9","prerelease":false,"author":{"name":"atinux","url":"https://github.com/atinux","avatar":"https://avatars.githubusercontent.com/u/904724?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.9.md"},{"name":"v0.1.8","tag_name":"v0.1.8","date":"2022-04-13T12:26:33Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: update runtime config fetch and override in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/260ebc7be39dfa65902ad4fe6a49639c99a69da8","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"260ebc7"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"feat: handle session with defineEventHandler in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/e646b1ce03773bf44932824726f280ad15455ec2","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"e646b1c"}]}]},{"type":"text","value":" (Check "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/features/server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt doc"}]},{"type":"text","value":")"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.8","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.8","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.8","prerelease":false,"author":{"name":"larbish","url":"https://github.com/larbish","avatar":"https://avatars.githubusercontent.com/u/7290030?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.8.md"},{"name":"v0.1.7","tag_name":"v0.1.7","date":"2022-04-07T21:31:24Z","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"whats-changed"},"children":[{"type":"text","value":"What's Changed"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: assert method and use correct key for server middleware in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/8a4d63101e6d2bc24563f7944988909ec7dcc6e5","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module@"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"8a4d631"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"fix: replace #config with #nitro by "},{"type":"element","tag":"a","props":{"href":"https://github.com/psto","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@psto"}]}]},{"type":"text","value":" in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/pull/23","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module#23"}]}]}]},{"type":"element","tag":"h2","props":{"id":"new-contributors"},"children":[{"type":"text","value":"New Contributors"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/psto","rel":["nofollow"]},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@psto"}]}]},{"type":"text","value":" made their first contribution in "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/pull/23","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-community/supabase-module#23"}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"whats-changed","depth":2,"text":"What's Changed"},{"id":"new-contributors","depth":2,"text":"New Contributors"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.7","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.7","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.7","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/63922233/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":0,"eyes":0},"author":{"name":"atinux","url":"https://github.com/atinux","avatar":"https://avatars.githubusercontent.com/u/904724?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.7.md"},{"name":"v0.1.5","tag_name":"v0.1.5","date":"2022-04-04T10:15:21Z","body":{"type":"root","children":[{"type":"element","tag":"h3","props":{"id":"bug-fixes"},"children":[{"type":"text","value":"Bug Fixes"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"remove lodash.clonedeep ("},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/commit/b5c5c60358ab192b98c8a63185f58a2eb0ab706a","rel":["nofollow"]},"children":[{"type":"text","value":"b5c5c60"}]},{"type":"text","value":"), resolved "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase/issues/21","rel":["nofollow"]},"children":[{"type":"text","value":"#21"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Full Changelog"}]},{"type":"text","value":": "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/compare/v0.1.4...v0.1.5","rel":["nofollow"]},"children":[{"type":"text","value":"https://github.com/nuxt-community/supabase-module/compare/v0.1.4...v0.1.5"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"bug-fixes","depth":3,"text":"Bug Fixes"}]}},"v":0,"url":"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.5","tarball":"https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.5","zipball":"https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.5","prerelease":false,"reactions":{"url":"https://api.github.com/repos/nuxt-modules/supabase/releases/63507078/reactions","total_count":6,"+1":0,"-1":0,"laugh":0,"hooray":4,"confused":0,"heart":2,"rocket":0,"eyes":0},"author":{"name":"atinux","url":"https://github.com/atinux","avatar":"https://avatars.githubusercontent.com/u/904724?v=4"},"title":"","description":"","_type":"markdown","_id":"github:v0.1.5.md"}] \ No newline at end of file diff --git a/api/search.json b/api/search.json index e3f059d68..1d46ad3f0 100644 --- a/api/search.json +++ b/api/search.json @@ -1 +1 @@ -[{"_path":"/get-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get Started","description":"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.","icon":"i-heroicons-rocket-launch","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" is a Nuxt module for first class integration with Supabase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt 3"}]},{"type":"text","value":" documentation and "},{"type":"element","tag":"a","props":{"href":"https://supabase.com","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" to learn more."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For integrating Supabase with Nuxt 2, checkout "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase-community/nuxt-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-community/nuxt-supabase"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" dev dependency to your project:"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"npx nuxi@latest module add supabase\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"npx"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxi@latest"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" module"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" add"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" supabase\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"modules"}]},{"type":"text","value":" section of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" modules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" ["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"]"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\"\n","filename":"env","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Alternatively, you can prefix the env variables with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NUXT_PUBLIC_"}]},{"type":"text","value":" in order to use runtimeConfig."}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can configure the supabase module by using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"supabase"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Options\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"url"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"url"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_URL"}]},{"type":"text","value":" (ex: "},{"type":"element","tag":"a","props":{"href":"https://example.supabase.co","rel":["nofollow"]},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The unique Supabase URL which is supplied when you create a new project in your project dashboard."}]},{"type":"element","tag":"h3","props":{"id":"key"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies."}]},{"type":"element","tag":"h3","props":{"id":"servicekey"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serviceKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_SERVICE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'service role key', has super admin rights and can bypass your Row Level Security."}]},{"type":"element","tag":"h3","props":{"id":"redirect"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false."}]},{"type":"element","tag":"h3","props":{"id":"redirectoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" redirectOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" callback"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" include"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" undefined,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" exclude"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" []"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieRedirect"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" false"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login"}]},{"type":"text","value":": User will be redirected to this path if not authenticated or after logout."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"callback"}]},{"type":"text","value":": This is the path the user will be redirect to after supabase login redirection. Should match configured "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectTo"}]},{"type":"text","value":" option of your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithoauth","rel":["nofollow"]},"children":[{"type":"text","value":"signIn method"}]},{"type":"text","value":". Should also be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":": Routes to include in the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/admin(/*)?']"}]},{"type":"text","value":" will enable the redirect only for the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"admin"}]},{"type":"text","value":" page and all sub-pages."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":": Routes to exclude from the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/foo', '/bar/*']"}]},{"type":"text","value":" will exclude the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"foo"}]},{"type":"text","value":" page and all pages in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bar"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"text","value":" page to redirect the user to the page they previously tried to visit."}]}]},{"type":"element","tag":"h3","props":{"id":"cookiename"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Cookie name used for storing the redirect path when using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option, added in front of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"text","value":" to form the full cookie name e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb-redirect-path"}]}]},{"type":"element","tag":"h3","props":{"id":"cookieoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" maxAge"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 8"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" sameSite"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"lax"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" secure"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Options for cookies used to share tokens between server and client, refer to "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/api/composables/use-cookie#options","rel":["nofollow"]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":" for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime."}]},{"type":"element","tag":"h3","props":{"id":"types"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"types"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Set to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" to disable."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"h3","props":{"id":"clientoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: { }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase client options "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing#parameters","rel":["nofollow"]},"children":[{"type":"text","value":"available here"}]},{"type":"text","value":" merged with default values from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" flowType"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pkce"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" autoRefreshToken"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" detectSessionInUrl"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" persistSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"demo"},"children":[{"type":"text","value":"Demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A live demo is made for see this module in action on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]},{"type":"text","value":", read more in the "},{"type":"element","tag":"a","props":{"href":"/demo"},"children":[{"type":"text","value":"demo section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Also checkout the "},{"type":"element","tag":"a","props":{"href":"https://www.youtube.com/watch?v=jIyiRT6zT8Q","rel":["nofollow"]},"children":[{"type":"text","value":"YouTube video"}]},{"type":"text","value":" about its usage in a live demo."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"options","depth":2,"text":"Options","children":[{"id":"url","depth":3,"text":"url"},{"id":"key","depth":3,"text":"key"},{"id":"servicekey","depth":3,"text":"serviceKey"},{"id":"redirect","depth":3,"text":"redirect"},{"id":"redirectoptions","depth":3,"text":"redirectOptions"},{"id":"cookiename","depth":3,"text":"cookieName"},{"id":"cookieoptions","depth":3,"text":"cookieOptions"},{"id":"types","depth":3,"text":"types"},{"id":"clientoptions","depth":3,"text":"clientOptions"}]},{"id":"demo","depth":2,"text":"Demo"}]}},"_type":"markdown","_id":"content:2.get-started.md","_source":"content","_file":"2.get-started.md","_stem":"2.get-started","_extension":"md"},{"_path":"/authentication","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Authentication","description":"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server","icon":"i-heroicons-lock-closed","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"With the default options, the module requires a log-in page and a confirm page to handle the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/resources/glossary#pkce","rel":["nofollow"]},"children":[{"type":"text","value":"PKCE authorization code flow"}]},{"type":"text","value":". If you want to understand how it works under the hood, you can read this "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/server-side-rendering#understanding-the-authentication-flow","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"All you need to do is to create a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login.vue"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"confirm.vue"}]},{"type":"text","value":" page in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"pages"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For advanced users who want to implement the auth behaviour themselves, you can disable or override the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect options"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"log-in-page-login"},"children":[{"type":"text","value":"Log-in page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/login"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Each time a user is trying to access a page that needs authentication, he will automatically be redirected to the configured log in page. If you want to allow access to \"public\" page, you just need to add them in the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Ensure to activate the authentication providers you want in the Supabase Dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> Providers"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The log-in page initiates the log-in method(s) you choose from the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithpassword","rel":["nofollow"]},"children":[{"type":"text","value":"available authorization methods"}]},{"type":"text","value":" provided by Supabase, it could looks like:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/login.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"''"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOtp "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" emailRedirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" @"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"click"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Sign In with E-Mail\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"input\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" />\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once the authorization flow is triggered using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"auth"}]},{"type":"text","value":" wrapper of the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable, the session management is handled automatically and the user will be redirected to the page you specify in the redirect option ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]},{"type":"text","value":" by default)."}]},{"type":"element","tag":"h2","props":{"id":"confirm-page-confirm"},"children":[{"type":"text","value":"Confirm page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The confirmation page receives the supabase callback. From there you can check the user value and redirect to the appropriate page."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The redirect URL must be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to protected page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"redirect-path"},"children":[{"type":"text","value":"Redirect path"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can easily handle redirection to the initial requested route after login."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You must enable the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":" option of the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"redirectOptions"}]},{"type":"text","value":" to allow cookie storage and take benefit of this feature."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Get redirect path from cookies\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" cookieName "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRuntimeConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" redirectPath "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Clear cookie\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" null\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to path\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"redirectPath"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ||"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"log-in-page-login","depth":2,"text":"Log-in page - /login"},{"id":"confirm-page-confirm","depth":2,"text":"Confirm page - /confirm","children":[{"id":"redirect-path","depth":3,"text":"Redirect path"}]}]}},"_type":"markdown","_id":"content:3.authentication.md","_source":"content","_file":"3.authentication.md","_stem":"3.authentication","_extension":"md"},{"_path":"/usage/composables/usesupabaseclient","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseClient","description":"Make requests to the Supabase API with the useSupabaseClient composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"Auto-import"}]},{"type":"text","value":" your client inside your vue files."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This composable is using "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/supabase-js/","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js"}]},{"type":"text","value":" under the hood, it gives access to the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase client"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. It establishes the connection with the database and make use of user JWT to apply "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"RLS Policies"}]},{"type":"text","value":" implemented in Supabase. If you want to bypass policies, you can use the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseservicerole"},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"authentication"},"children":[{"type":"text","value":"Authentication"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The useSupabaseClient composable is providing all methods to manage authorization under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient().auth"}]},{"type":"text","value":". For more details please see the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-api","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js auth documentation"}]},{"type":"text","value":". Here is an example for signing in and out:"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you want a full explanation on how to handle the authentication process, please read this "},{"type":"element","tag":"a","props":{"href":"/get-started#handle-authentication"},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"script setup lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOAuth "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOAuth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" provider"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"github"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" redirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signOut "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signOut"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please also take a look at "},{"type":"element","tag":"a","props":{"href":"/get-started"},"children":[{"type":"text","value":"Get Started"}]},{"type":"text","value":" for the authorization flow."}]},{"type":"element","tag":"h2","props":{"id":"database-request"},"children":[{"type":"text","value":"Database Request"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please check "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/select","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" documentation to fully use the power of Supabase client."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here is an example of a fetch using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"select"}]},{"type":"text","value":" method with Nuxt 3 "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#useasyncdata","rel":["nofollow"]},"children":[{"type":"text","value":"useAsyncData"}]},{"type":"text","value":" composable."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" restaurant "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurant"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurants"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name, location"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"eq"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"My Restaurant Name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"single"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"realtime"},"children":[{"type":"text","value":"Realtime"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Based on "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/realtime","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase Realtime"}]},{"type":"text","value":", listen to changes in your PostgreSQL Database and broadcasts them over WebSockets."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To enable it, make sure you have turned on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/api#realtime-api","rel":["nofollow"]},"children":[{"type":"text","value":"Realtime API"}]},{"type":"text","value":" for your table."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then, listen to changes directly in your vue page / component:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" RealtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@supabase/supabase-js"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"let"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" RealtimeChannel\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Fetch collaborators and get the refresh method provided by useAsyncData\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" refresh"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" refreshCollaborators "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onMounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Real time listener for new workouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"channel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public:collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"on"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"postgres_changes"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" schema"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" refreshCollaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" )\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"subscribe"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Don't forget to unsubscribe when user left the page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onUnmounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"removeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"typescript"},"children":[{"type":"text","value":"Typescript"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Database typings are passed to the client out of the box if the database generated types are found at "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]},{"type":"text","value":" or "},{"type":"element","tag":"a","props":{"href":"/get-started#types"},"children":[{"type":"text","value":"your configured types path"}]},{"type":"text","value":". Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types typescript --local > types/database.types.ts\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can also pass Database typings to the client manually:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"~/types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"authentication","depth":2,"text":"Authentication"},{"id":"database-request","depth":2,"text":"Database Request"},{"id":"realtime","depth":2,"text":"Realtime"},{"id":"typescript","depth":2,"text":"Typescript"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseClient.md","_source":"content","_file":"4.usage/composables/useSupabaseClient.md","_stem":"4.usage/composables/useSupabaseClient","_extension":"md"},{"_path":"/usage/composables/usesupabasesession","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseSession","description":"Auto import and use your Supabase user's session with the useSupabaseSession composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user's session everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you just need the User's information you can use "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" which returns just the User information of the session."}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const session = useSupabaseSession()\n\n if (!session.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseSession.md","_source":"content","_file":"4.usage/composables/useSupabaseSession.md","_stem":"4.usage/composables/useSupabaseSession","_extension":"md"},{"_path":"/usage/composables/usesupabaseuser","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseUser","description":"Auto import and use your Supabase user with the useSupabaseUser composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const user = useSupabaseUser()\n\n if (!user.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseUser.md","_source":"content","_file":"4.usage/composables/useSupabaseUser.md","_stem":"4.usage/composables/useSupabaseUser","_extension":"md"},{"_path":"/usage/services/serversupabaseclient","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseClient","description":"Make requests to the Supabase API on server side with the serverSupabaseClient service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is working similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable but is designed to be used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":". Be careful, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" is returning a promise."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseClient } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = await serverSupabaseClient(event)\n\n const { data } = await client.from('libraries').select('*')\n\n return { libraries: data }\n})\n","filename":"server/api/libraries.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchLibrary = async () => {\n const { libraries } = await $fetch('/api/libraries')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchLibrary "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const { data: { libraries }} = await useFetch('/api/libraries', {\n headers: useRequestHeaders(['cookie'])\n})\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:1.serverSupabaseClient.md","_source":"content","_file":"4.usage/services/1.serverSupabaseClient.md","_stem":"4.usage/services/1.serverSupabaseClient","_extension":"md"},{"_path":"/usage/services/serversupabaseservicerole","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseServiceRole","description":"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service","navigation":{"title":"serverSupabaseServiceRole"},"body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is designed to work only in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":", there is no vue composable equivalent."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"It works similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseclient"},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" but it provides a client with super admin rights that can bypass your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"Row Level Security"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_SERVICE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. Checkout the doc if you want to know more about "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-deep-dive-jwts#jwts-in-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase keys"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseServiceRole } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = serverSupabaseServiceRole(event)\n\n const { data } = await client.from('rls-protected-table').select()\n\n return { sensitiveData: data }\n})\n","filename":"server/api/bypass-rls.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"rls-protected-table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchSensitiveData = async () => {\n const { sensitiveData } = await useFetch('/api/bypass-rls')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSensitiveData "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/bypass-rls"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:2.serverSupabaseServiceRole.md","_source":"content","_file":"4.usage/services/2.serverSupabaseServiceRole.md","_stem":"4.usage/services/2.serverSupabaseServiceRole","_extension":"md"},{"_path":"/usage/services/serversupabasesession","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseSession","description":"Get your Supabase user's session from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabasesession"},"children":[{"type":"text","value":"useSupabaseSession"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be advised that "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" is considered unsafe, since the session comes from the client and users can tamper with it. For checking if the user is logged in, always use "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseuser"},"children":[{"type":"text","value":"serverSupabaseUser"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseSession } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseSession(event)\n})\n","filename":"server/api/session.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst fetchSession = async () => {\n session.value = await $fetch('/api/session')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSession "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst { data } = await useFetch('/api/session', {\n headers: useRequestHeaders(['cookie'])\n})\n\nsession.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:3.serverSupabaseSession.md","_source":"content","_file":"4.usage/services/3.serverSupabaseSession.md","_stem":"4.usage/services/3.serverSupabaseSession","_extension":"md"},{"_path":"/usage/services/serversupabaseuser","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseUser","description":"Get your Supabase user from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseUser"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseUser } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseUser(event)\n})\n","filename":"server/api/me.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst fetchMe = async () => {\n user.value = await $fetch('/api/me')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchMe "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst { data } = await useFetch('/api/me', {\n headers: useRequestHeaders(['cookie'])\n})\n\nuser.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:4.serverSupabaseUser.md","_source":"content","_file":"4.usage/services/4.serverSupabaseUser.md","_stem":"4.usage/services/4.serverSupabaseUser","_extension":"md"},{"_path":"/demo","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Demo","description":"Demonstration of using Supabase with Nuxt.","icon":"i-heroicons-computer-desktop-20-solid","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Demonstration of using Supabase with Nuxt."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"h2","props":{"id":"live-demo"},"children":[{"type":"text","value":"Live demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can play with the demo on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]}]},{"type":"element","tag":"h2","props":{"id":"running-locally"},"children":[{"type":"text","value":"Running locally"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Follow the instruction in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo Readme"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h2","props":{"id":"source-code"},"children":[{"type":"text","value":"Source code"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The source code is available on Github in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo/ directory"}]},{"type":"text","value":"."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"live-demo","depth":2,"text":"Live demo"},{"id":"running-locally","depth":2,"text":"Running locally"},{"id":"source-code","depth":2,"text":"Source code"}]}},"_type":"markdown","_id":"content:5.demo.md","_source":"content","_file":"5.demo.md","_stem":"5.demo","_extension":"md"},{"_path":"/changelog","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Changelog","description":"Discover the latest updates of the Supabase Module","icon":"i-heroicons-bookmark","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Discover the lastest updates."}]},{"type":"element","tag":"releases","props":{},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:6.changelog.md","_source":"content","_file":"6.changelog.md","_stem":"6.changelog","_extension":"md"},{"_path":"/roadmap","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Roadmap","description":"Discover our kaban board for the next release of the Supabase module.","icon":"i-heroicons-map","body":{"type":"root","children":[{"type":"element","tag":"volta-board","props":{"token":"eyJzdGF0dXNlcyI6WyJ0cmlhZ2UiLCJiYWNrbG9nIiwidG9kbyIsImluX3Byb2dyZXNzIiwiaW5fcmV2aWV3IiwiZG9uZSIsInJlbGVhc2VkIiwiY2FuY2VsbGVkIl0sImZpbHRlcnMiOnt9LCJvd25lciI6Im51eHQtbW9kdWxlcyIsIm5hbWUiOiJzdXBhYmFzZSJ9"},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:7.roadmap.md","_source":"content","_file":"7.roadmap.md","_stem":"7.roadmap","_extension":"md"}] \ No newline at end of file +[{"_path":"/get-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get Started","description":"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.","icon":"i-heroicons-rocket-launch","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-modules/supabase","rel":["nofollow"]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" is a Nuxt module for first class integration with Supabase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Checkout the "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt 3"}]},{"type":"text","value":" documentation and "},{"type":"element","tag":"a","props":{"href":"https://supabase.com","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" to learn more."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For integrating Supabase with Nuxt 2, checkout "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase-community/nuxt-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-community/nuxt-supabase"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" dev dependency to your project:"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"npx nuxi@latest module add supabase\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"npx"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxi@latest"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" module"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" add"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" supabase\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"modules"}]},{"type":"text","value":" section of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" modules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" ["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@nuxtjs/supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"]"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Add "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" to the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\"\n","filename":"env","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_URL"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Alternatively, you can prefix the env variables with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NUXT_PUBLIC_"}]},{"type":"text","value":" in order to use runtimeConfig."}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can configure the supabase module by using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"supabase"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Options\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"url"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"url"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_URL"}]},{"type":"text","value":" (ex: "},{"type":"element","tag":"a","props":{"href":"https://example.supabase.co","rel":["nofollow"]},"children":[{"type":"text","value":"https://example.supabase.co"}]},{"type":"text","value":")"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The unique Supabase URL which is supplied when you create a new project in your project dashboard."}]},{"type":"element","tag":"h3","props":{"id":"key"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies."}]},{"type":"element","tag":"h3","props":{"id":"servicekey"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serviceKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"process.env.SUPABASE_SERVICE_KEY"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase 'service role key', has super admin rights and can bypass your Row Level Security."}]},{"type":"element","tag":"h3","props":{"id":"redirect"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false."}]},{"type":"element","tag":"h3","props":{"id":"redirectoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n","filename":"nuxt.config.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" redirectOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" callback"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" include"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" undefined,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" exclude"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" []"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieRedirect"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" false"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login"}]},{"type":"text","value":": User will be redirected to this path if not authenticated or after logout."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"callback"}]},{"type":"text","value":": This is the path the user will be redirect to after supabase login redirection. Should match configured "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirectTo"}]},{"type":"text","value":" option of your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithoauth","rel":["nofollow"]},"children":[{"type":"text","value":"signIn method"}]},{"type":"text","value":". Should also be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"include"}]},{"type":"text","value":": Routes to include in the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/admin(/*)?']"}]},{"type":"text","value":" will enable the redirect only for the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"admin"}]},{"type":"text","value":" page and all sub-pages."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":": Routes to exclude from the redirect. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"['/foo', '/bar/**']"}]},{"type":"text","value":" will exclude the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"foo"}]},{"type":"text","value":" page and all pages in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"bar"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.nuxtjs.org/authentication#confirm-page-confirm","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"text","value":" page to redirect the user to the page they previously tried to visit."}]}]},{"type":"element","tag":"h3","props":{"id":"cookiename"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieName"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Cookie name used for storing the redirect path when using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option, added in front of "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"text","value":" to form the full cookie name e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"sb-redirect-path"}]}]},{"type":"element","tag":"h3","props":{"id":"cookieoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" cookieOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" maxAge"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 60"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C"},"children":[{"type":"text","value":" 8"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" sameSite"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"lax"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" secure"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Options for cookies used to share tokens between server and client, refer to "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/api/composables/use-cookie#options","rel":["nofollow"]},"children":[{"type":"text","value":"cookieOptions"}]},{"type":"text","value":" for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime."}]},{"type":"element","tag":"h3","props":{"id":"types"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"types"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n","language":"bash","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --lang=typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Set to "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" to disable."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"h3","props":{"id":"clientoptions"},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"clientOptions"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Default:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: { }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Supabase client options "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing#parameters","rel":["nofollow"]},"children":[{"type":"text","value":"available here"}]},{"type":"text","value":" merged with default values from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@supabase/ssr"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":" clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" clientOptions"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" flowType"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pkce"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" autoRefreshToken"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" detectSessionInUrl"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" isBrowser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" persistSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"demo"},"children":[{"type":"text","value":"Demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A live demo is made for see this module in action on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]},{"type":"text","value":", read more in the "},{"type":"element","tag":"a","props":{"href":"/demo"},"children":[{"type":"text","value":"demo section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Also checkout the "},{"type":"element","tag":"a","props":{"href":"https://www.youtube.com/watch?v=jIyiRT6zT8Q","rel":["nofollow"]},"children":[{"type":"text","value":"YouTube video"}]},{"type":"text","value":" about its usage in a live demo."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"options","depth":2,"text":"Options","children":[{"id":"url","depth":3,"text":"url"},{"id":"key","depth":3,"text":"key"},{"id":"servicekey","depth":3,"text":"serviceKey"},{"id":"redirect","depth":3,"text":"redirect"},{"id":"redirectoptions","depth":3,"text":"redirectOptions"},{"id":"cookiename","depth":3,"text":"cookieName"},{"id":"cookieoptions","depth":3,"text":"cookieOptions"},{"id":"types","depth":3,"text":"types"},{"id":"clientoptions","depth":3,"text":"clientOptions"}]},{"id":"demo","depth":2,"text":"Demo"}]}},"_type":"markdown","_id":"content:2.get-started.md","_source":"content","_file":"2.get-started.md","_stem":"2.get-started","_extension":"md"},{"_path":"/authentication","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Authentication","description":"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server","icon":"i-heroicons-lock-closed","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"With the default options, the module requires a log-in page and a confirm page to handle the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/resources/glossary#pkce","rel":["nofollow"]},"children":[{"type":"text","value":"PKCE authorization code flow"}]},{"type":"text","value":". If you want to understand how it works under the hood, you can read this "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/server-side-rendering#understanding-the-authentication-flow","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"All you need to do is to create a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"login.vue"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"confirm.vue"}]},{"type":"text","value":" page in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"pages"}]},{"type":"text","value":" folder."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For advanced users who want to implement the auth behaviour themselves, you can disable or override the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect options"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"log-in-page-login"},"children":[{"type":"text","value":"Log-in page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/login"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Each time a user is trying to access a page that needs authentication, he will automatically be redirected to the configured log in page. If you want to allow access to \"public\" page, you just need to add them in the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-exclamation-triangle-20-solid","color":"amber"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Ensure to activate the authentication providers you want in the Supabase Dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> Providers"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The log-in page initiates the log-in method(s) you choose from the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-signinwithpassword","rel":["nofollow"]},"children":[{"type":"text","value":"available authorization methods"}]},{"type":"text","value":" provided by Supabase, it could looks like:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/login.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"''"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOtp "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" emailRedirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" @"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"click"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"signInWithOtp"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Sign In with E-Mail\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"input\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"email"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" />\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once the authorization flow is triggered using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"auth"}]},{"type":"text","value":" wrapper of the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable, the session management is handled automatically and the user will be redirected to the page you specify in the redirect option ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]},{"type":"text","value":" by default)."}]},{"type":"element","tag":"h2","props":{"id":"confirm-page-confirm"},"children":[{"type":"text","value":"Confirm page - "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/confirm"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The confirmation page receives the supabase callback. From there you can check the user value and redirect to the appropriate page."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The redirect URL must be configured in your Supabase dashboard under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Authentication -> URL Configuration -> Redirect URLs"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to protected page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"redirect-path"},"children":[{"type":"text","value":"Redirect path"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can easily handle redirection to the initial requested route after login."}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You must enable the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"cookieRedirect"}]},{"type":"text","value":" option of the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"redirectOptions"}]},{"type":"text","value":" to allow cookie storage and take benefit of this feature."}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n\n","filename":"pages/confirm.vue","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Get redirect path from cookies\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" cookieName "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRuntimeConfig"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" redirectPath "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"watch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Clear cookie\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useCookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`${"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"cookieName"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"-redirect-path"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" null\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Redirect to path\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"redirectPath"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ||"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" immediate"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC"},"children":[{"type":"text","value":" true"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"Waiting for login..."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"log-in-page-login","depth":2,"text":"Log-in page - /login"},{"id":"confirm-page-confirm","depth":2,"text":"Confirm page - /confirm","children":[{"id":"redirect-path","depth":3,"text":"Redirect path"}]}]}},"_type":"markdown","_id":"content:3.authentication.md","_source":"content","_file":"3.authentication.md","_stem":"3.authentication","_extension":"md"},{"_path":"/usage/composables/usesupabaseclient","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseClient","description":"Make requests to the Supabase API with the useSupabaseClient composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"Auto-import"}]},{"type":"text","value":" your client inside your vue files."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This composable is using "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/supabase-js/","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js"}]},{"type":"text","value":" under the hood, it gives access to the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/initializing","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase client"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. It establishes the connection with the database and make use of user JWT to apply "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"RLS Policies"}]},{"type":"text","value":" implemented in Supabase. If you want to bypass policies, you can use the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseservicerole"},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h2","props":{"id":"authentication"},"children":[{"type":"text","value":"Authentication"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The useSupabaseClient composable is providing all methods to manage authorization under "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useSupabaseClient().auth"}]},{"type":"text","value":". For more details please see the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/auth-api","rel":["nofollow"]},"children":[{"type":"text","value":"supabase-js auth documentation"}]},{"type":"text","value":". Here is an example for signing in and out:"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you want a full explanation on how to handle the authentication process, please read this "},{"type":"element","tag":"a","props":{"href":"/get-started#handle-authentication"},"children":[{"type":"text","value":"section"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"script setup lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signInWithOAuth "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signInWithOAuth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" provider"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"github"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" redirectTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"http://localhost:3000/confirm"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" signOut "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"signOut"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"console"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"error"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please also take a look at "},{"type":"element","tag":"a","props":{"href":"/get-started"},"children":[{"type":"text","value":"Get Started"}]},{"type":"text","value":" for the authorization flow."}]},{"type":"element","tag":"h2","props":{"id":"database-request"},"children":[{"type":"text","value":"Database Request"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please check "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/select","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase"}]},{"type":"text","value":" documentation to fully use the power of Supabase client."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Here is an example of a fetch using the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"select"}]},{"type":"text","value":" method with Nuxt 3 "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#useasyncdata","rel":["nofollow"]},"children":[{"type":"text","value":"useAsyncData"}]},{"type":"text","value":" composable."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" restaurant "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurant"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"restaurants"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name, location"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"eq"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"My Restaurant Name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"single"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"realtime"},"children":[{"type":"text","value":"Realtime"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Based on "},{"type":"element","tag":"a","props":{"href":"https://github.com/supabase/realtime","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase Realtime"}]},{"type":"text","value":", listen to changes in your PostgreSQL Database and broadcasts them over WebSockets."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To enable it, make sure you have turned on the "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/api#realtime-api","rel":["nofollow"]},"children":[{"type":"text","value":"Realtime API"}]},{"type":"text","value":" for your table."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then, listen to changes directly in your vue page / component:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" RealtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"@supabase/supabase-js"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"let"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" RealtimeChannel\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Fetch collaborators and get the refresh method provided by useAsyncData\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" refresh"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" refreshCollaborators "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useAsyncData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"name"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onMounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Real time listener for new workouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"channel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public:collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"on"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"postgres_changes"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" schema"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"collaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" refreshCollaborators"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" )\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"subscribe"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" // Don't forget to unsubscribe when user left the page\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"onUnmounted"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"removeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"realtimeChannel"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"typescript"},"children":[{"type":"text","value":"Typescript"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Database typings are passed to the client out of the box if the database generated types are found at "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"./types/database.types.ts"}]},{"type":"text","value":" or "},{"type":"element","tag":"a","props":{"href":"/get-started#types"},"children":[{"type":"text","value":"your configured types path"}]},{"type":"text","value":". Check Supabase "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/reference/javascript/release-notes#typescript-support","rel":["nofollow"]},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":" for further information."}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"## Generate types from live database\nsupabase gen types typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types typescript --local > types/database.types.ts\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types from live database\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --project-id"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" YourProjectId"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"## Generate types when using local environment\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"supabase"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" gen"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" typescript"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" --local"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" >"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/database.types.ts\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can also pass Database typings to the client manually:"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"~/types"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"Database"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"authentication","depth":2,"text":"Authentication"},{"id":"database-request","depth":2,"text":"Database Request"},{"id":"realtime","depth":2,"text":"Realtime"},{"id":"typescript","depth":2,"text":"Typescript"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseClient.md","_source":"content","_file":"4.usage/composables/useSupabaseClient.md","_stem":"4.usage/composables/useSupabaseClient","_extension":"md"},{"_path":"/usage/composables/usesupabasesession","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseSession","description":"Auto import and use your Supabase user's session with the useSupabaseSession composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user's session everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you just need the User's information you can use "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" which returns just the User information of the session."}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const session = useSupabaseSession()\n\n if (!session.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseSession.md","_source":"content","_file":"4.usage/composables/useSupabaseSession.md","_stem":"4.usage/composables/useSupabaseSession","_extension":"md"},{"_path":"/usage/composables/usesupabaseuser","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useSupabaseUser","description":"Auto import and use your Supabase user with the useSupabaseUser composable","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Once logged in, you can "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/composables","rel":["nofollow"]},"children":[{"type":"text","value":"auto-import"}]},{"type":"text","value":" your user everywhere inside your vue files."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"auth-middleware"},"children":[{"type":"text","value":"Auth middleware"}]},{"type":"element","tag":"callout","props":{"icon":"i-heroicons-light-bulb"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"login"}]},{"type":"text","value":" page. However, you can allow redirection to \"public\" pages by setting the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"exclude"}]},{"type":"text","value":" redirect option. Alternatively, you can enable the redirect only for certain routes using the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirectoptions"},"children":[{"type":"text","value":"include"}]},{"type":"text","value":" redirect option."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If the "},{"type":"element","tag":"a","props":{"href":"/get-started#redirect"},"children":[{"type":"text","value":"redirect"}]},{"type":"text","value":" option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export default defineNuxtRouteMiddleware((to, _from) => {\n const user = useSupabaseUser()\n\n if (!user.value) {\n return navigateTo('/login')\n }\n})\n","filename":"middleware/auth.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineNuxtRouteMiddleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"to"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" _from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"!"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" navigateTo"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/login"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you can reference your middleware in your page with:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"definePageMeta({\n middleware: 'auth'\n})\n","filename":"pages/dashboard.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" middleware"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"auth"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Learn more about "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/middleware","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt middleware"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata","rel":["nofollow"]},"children":[{"type":"text","value":"definePageMeta"}]},{"type":"text","value":"."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"auth-middleware","depth":2,"text":"Auth middleware"}]}},"_type":"markdown","_id":"content:4.usage:composables:useSupabaseUser.md","_source":"content","_file":"4.usage/composables/useSupabaseUser.md","_stem":"4.usage/composables/useSupabaseUser","_extension":"md"},{"_path":"/usage/services/serversupabaseclient","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseClient","description":"Make requests to the Supabase API on server side with the serverSupabaseClient service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is working similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseclient"},"children":[{"type":"text","value":"useSupabaseClient"}]},{"type":"text","value":" composable but is designed to be used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":". Be careful, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" is returning a promise."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseClient } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = await serverSupabaseClient(event)\n\n const { data } = await client.from('libraries').select('*')\n\n return { libraries: data }\n})\n","filename":"server/api/libraries.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseClient"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"*"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchLibrary = async () => {\n const { libraries } = await $fetch('/api/libraries')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchLibrary "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const { data: { libraries }} = await useFetch('/api/libraries', {\n headers: useRequestHeaders(['cookie'])\n})\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" libraries "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/libraries"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:1.serverSupabaseClient.md","_source":"content","_file":"4.usage/services/1.serverSupabaseClient.md","_stem":"4.usage/services/1.serverSupabaseClient","_extension":"md"},{"_path":"/usage/services/serversupabaseservicerole","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseServiceRole","description":"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service","navigation":{"title":"serverSupabaseServiceRole"},"body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is designed to work only in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":", there is no vue composable equivalent."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"It works similary as the "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseclient"},"children":[{"type":"text","value":"serverSupabaseClient"}]},{"type":"text","value":" but it provides a client with super admin rights that can bypass your "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/guides/auth/row-level-security","rel":["nofollow"]},"children":[{"type":"text","value":"Row Level Security"}]},{"type":"text","value":"."}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The client is initialized with the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SUPABASE_SERVICE_KEY"}]},{"type":"text","value":" you must have in your "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".env"}]},{"type":"text","value":" file. Checkout the doc if you want to know more about "},{"type":"element","tag":"a","props":{"href":"https://supabase.com/docs/learn/auth-deep-dive/auth-deep-dive-jwts#jwts-in-supabase","rel":["nofollow"]},"children":[{"type":"text","value":"Supabase keys"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and just import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseServiceRole"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseServiceRole } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = serverSupabaseServiceRole(event)\n\n const { data } = await client.from('rls-protected-table').select()\n\n return { sensitiveData: data }\n})\n","filename":"server/api/bypass-rls.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" eventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseServiceRole"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" client"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"rls-protected-table"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"select"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"()\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your API route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const fetchSensitiveData = async () => {\n const { sensitiveData } = await useFetch('/api/bypass-rls')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSensitiveData "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" sensitiveData"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/bypass-rls"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:2.serverSupabaseServiceRole.md","_source":"content","_file":"4.usage/services/2.serverSupabaseServiceRole.md","_stem":"4.usage/services/2.serverSupabaseServiceRole","_extension":"md"},{"_path":"/usage/services/serversupabasesession","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseSession","description":"Get your Supabase user's session from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabasesession"},"children":[{"type":"text","value":"useSupabaseSession"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be advised that "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" is considered unsafe, since the session comes from the client and users can tamper with it. For checking if the user is logged in, always use "},{"type":"element","tag":"a","props":{"href":"/usage/services/serversupabaseuser"},"children":[{"type":"text","value":"serverSupabaseUser"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseSession"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseSession } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseSession(event)\n})\n","filename":"server/api/session.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseSession"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst fetchSession = async () => {\n session.value = await $fetch('/api/session')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchSession "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const session = ref(null)\n\nconst { data } = await useFetch('/api/session', {\n headers: useRequestHeaders(['cookie'])\n})\n\nsession.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" session "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"session"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:3.serverSupabaseSession.md","_source":"content","_file":"4.usage/services/3.serverSupabaseSession.md","_stem":"4.usage/services/3.serverSupabaseSession","_extension":"md"},{"_path":"/usage/services/serversupabaseuser","_dir":"services","_draft":false,"_partial":false,"_locale":"","title":"serverSupabaseUser","description":"Get your Supabase user from serverside with the serverSupabaseUser service","body":{"type":"root","children":[{"type":"element","tag":"callout","props":{"color":"amber","icon":"i-heroicons-exclamation-triangle-20-solid"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This section assumes you're familiar with "},{"type":"element","tag":"a","props":{"href":"https://v3.nuxtjs.org/guide/concepts/server-engine","rel":["nofollow"]},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":", the server engine powered by Nuxt."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This function is similar to the "},{"type":"element","tag":"a","props":{"href":"/usage/composables/usesupabaseuser"},"children":[{"type":"text","value":"useSupabaseUser"}]},{"type":"text","value":" composable but is used in "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/server#server-routes","rel":["nofollow"]},"children":[{"type":"text","value":"server routes"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Define your server route and import the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"serverSupabaseUser"}]},{"type":"text","value":" from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"import { serverSupabaseUser } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseUser(event)\n})\n","filename":"server/api/me.ts","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" from"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"#supabase/server"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" defineEventHandler"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" serverSupabaseUser"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"event"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then call your api route from any vue file:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst fetchMe = async () => {\n user.value = await $fetch('/api/me')\n}\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" fetchMe "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" async"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" =>"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" $fetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Be careful, if you want to call this route on SSR, please read this "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch","rel":["nofollow"]},"children":[{"type":"text","value":"section"}]},{"type":"text","value":", you must send your browser cookies including your supabase token."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"const user = ref(null)\n\nconst { data } = await useFetch('/api/me', {\n headers: useRequestHeaders(['cookie'])\n})\n\nuser.value = data\n","filename":"pages/index.vue","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" user "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"null"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useFetch"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/api/me"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" useRequestHeaders"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"(["}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"cookie"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"])\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"user"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"value "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" data\n"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:4.usage:services:4.serverSupabaseUser.md","_source":"content","_file":"4.usage/services/4.serverSupabaseUser.md","_stem":"4.usage/services/4.serverSupabaseUser","_extension":"md"},{"_path":"/demo","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Demo","description":"Demonstration of using Supabase with Nuxt.","icon":"i-heroicons-computer-desktop-20-solid","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Demonstration of using Supabase with Nuxt."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"element","tag":"img","props":{"alt":"Supabase demo with Nuxt 3","src":"https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png"},"children":[]}]}]},{"type":"element","tag":"h2","props":{"id":"live-demo"},"children":[{"type":"text","value":"Live demo"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can play with the demo on "},{"type":"element","tag":"a","props":{"href":"https://n3-supabase.netlify.app","rel":["nofollow"]},"children":[{"type":"text","value":"n3-supabase.netlify.app"}]}]},{"type":"element","tag":"h2","props":{"id":"running-locally"},"children":[{"type":"text","value":"Running locally"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Follow the instruction in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo Readme"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h2","props":{"id":"source-code"},"children":[{"type":"text","value":"Source code"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The source code is available on Github in the "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt-community/supabase-module/tree/main/demo","rel":["nofollow"]},"children":[{"type":"text","value":"demo/ directory"}]},{"type":"text","value":"."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"live-demo","depth":2,"text":"Live demo"},{"id":"running-locally","depth":2,"text":"Running locally"},{"id":"source-code","depth":2,"text":"Source code"}]}},"_type":"markdown","_id":"content:5.demo.md","_source":"content","_file":"5.demo.md","_stem":"5.demo","_extension":"md"},{"_path":"/changelog","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Changelog","description":"Discover the latest updates of the Supabase Module","icon":"i-heroicons-bookmark","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Discover the lastest updates."}]},{"type":"element","tag":"releases","props":{},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:6.changelog.md","_source":"content","_file":"6.changelog.md","_stem":"6.changelog","_extension":"md"},{"_path":"/roadmap","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Roadmap","description":"Discover our kaban board for the next release of the Supabase module.","icon":"i-heroicons-map","body":{"type":"root","children":[{"type":"element","tag":"volta-board","props":{"token":"eyJzdGF0dXNlcyI6WyJ0cmlhZ2UiLCJiYWNrbG9nIiwidG9kbyIsImluX3Byb2dyZXNzIiwiaW5fcmV2aWV3IiwiZG9uZSIsInJlbGVhc2VkIiwiY2FuY2VsbGVkIl0sImZpbHRlcnMiOnt9LCJvd25lciI6Im51eHQtbW9kdWxlcyIsIm5hbWUiOiJzdXBhYmFzZSJ9"},"children":[]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:7.roadmap.md","_source":"content","_file":"7.roadmap.md","_stem":"7.roadmap","_extension":"md"}] \ No newline at end of file diff --git a/authentication/_payload.json b/authentication/_payload.json index 850d78ba2..031ca4e52 100644 --- a/authentication/_payload.json +++ b/authentication/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":1771},["ShallowReactive",2],{"navigation":3,"/authentication":58,"/authentication-surround":1766},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":10,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":9,"description":61,"icon":11,"body":62,"_type":1760,"_id":1761,"_source":1762,"_file":1763,"_stem":1764,"_extension":1765},"",false,"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server",{"type":63,"children":64,"toc":1752},"root",[65,93,123,140,153,173,190,204,842,868,879,884,899,1211,1218,1223,1246,1746],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70,73,82,84,91],{"type":71,"value":72},"text","With the default options, the module requires a log-in page and a confirm page to handle the ",{"type":66,"tag":74,"props":75,"children":79},"a",{"href":76,"rel":77},"https://supabase.com/docs/guides/resources/glossary#pkce",[78],"nofollow",[80],{"type":71,"value":81},"PKCE authorization code flow",{"type":71,"value":83},". If you want to understand how it works under the hood, you can read this ",{"type":66,"tag":74,"props":85,"children":88},{"href":86,"rel":87},"https://supabase.com/docs/guides/auth/server-side-rendering#understanding-the-authentication-flow",[78],[89],{"type":71,"value":90},"section",{"type":71,"value":92},".",{"type":66,"tag":67,"props":94,"children":95},{},[96,98,105,107,113,115,121],{"type":71,"value":97},"All you need to do is to create a ",{"type":66,"tag":99,"props":100,"children":102},"code",{"className":101},[],[103],{"type":71,"value":104},"login.vue",{"type":71,"value":106}," and ",{"type":66,"tag":99,"props":108,"children":110},{"className":109},[],[111],{"type":71,"value":112},"confirm.vue",{"type":71,"value":114}," page in the ",{"type":66,"tag":99,"props":116,"children":118},{"className":117},[],[119],{"type":71,"value":120},"pages",{"type":71,"value":122}," folder.",{"type":66,"tag":124,"props":125,"children":127},"callout",{"icon":126},"i-heroicons-light-bulb",[128],{"type":66,"tag":67,"props":129,"children":130},{},[131,133,139],{"type":71,"value":132},"For advanced users who want to implement the auth behaviour themselves, you can disable or override the ",{"type":66,"tag":74,"props":134,"children":136},{"href":135},"/get-started#redirect",[137],{"type":71,"value":138},"redirect options",{"type":71,"value":92},{"type":66,"tag":141,"props":142,"children":144},"h2",{"id":143},"log-in-page-login",[145,147],{"type":71,"value":146},"Log-in page - ",{"type":66,"tag":99,"props":148,"children":150},{"className":149},[],[151],{"type":71,"value":152},"/login",{"type":66,"tag":67,"props":154,"children":155},{},[156,158,164,166,171],{"type":71,"value":157},"Each time a user is trying to access a page that needs authentication, he will automatically be redirected to the configured log in page. If you want to allow access to \"public\" page, you just need to add them in the ",{"type":66,"tag":74,"props":159,"children":161},{"href":160},"/get-started#redirectoptions",[162],{"type":71,"value":163},"exclude",{"type":71,"value":165}," redirect option. Alternatively, you can enable the redirect only for certain routes using the ",{"type":66,"tag":74,"props":167,"children":168},{"href":160},[169],{"type":71,"value":170},"include",{"type":71,"value":172}," redirect option.",{"type":66,"tag":124,"props":174,"children":177},{"icon":175,"color":176},"i-heroicons-exclamation-triangle-20-solid","amber",[178],{"type":66,"tag":67,"props":179,"children":180},{},[181,183,189],{"type":71,"value":182},"Ensure to activate the authentication providers you want in the Supabase Dashboard under ",{"type":66,"tag":99,"props":184,"children":186},{"className":185},[],[187],{"type":71,"value":188},"Authentication -> Providers",{"type":71,"value":92},{"type":66,"tag":67,"props":191,"children":192},{},[193,195,202],{"type":71,"value":194},"The log-in page initiates the log-in method(s) you choose from the ",{"type":66,"tag":74,"props":196,"children":199},{"href":197,"rel":198},"https://supabase.com/docs/reference/javascript/auth-signinwithpassword",[78],[200],{"type":71,"value":201},"available authorization methods",{"type":71,"value":203}," provided by Supabase, it could looks like:",{"type":66,"tag":205,"props":206,"children":211},"pre",{"className":207,"code":208,"filename":209,"language":210,"meta":59,"style":59},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst supabase = useSupabaseClient()\nconst email = ref('')\n\nconst signInWithOtp = async () => {\n const { error } = await supabase.auth.signInWithOtp({\n email: email.value,\n options: {\n emailRedirectTo: 'http://localhost:3000/confirm',\n }\n })\n if (error) console.log(error)\n}\n\u003C/script>\n\u003Ctemplate>\n \u003Cdiv>\n \u003Cbutton @click=\"signInWithOtp\">\n Sign In with E-Mail\n \u003C/button>\n \u003Cinput\n v-model=\"email\"\n type=\"email\"\n />\n \u003C/div>\n\u003C/template>\n","pages/login.vue","vue",[212],{"type":66,"tag":99,"props":213,"children":214},{"__ignoreMap":59},[215,269,299,336,346,383,450,483,500,532,541,554,604,613,630,647,665,709,718,735,748,775,800,809,826],{"type":66,"tag":216,"props":217,"children":220},"span",{"class":218,"line":219},"line",1,[221,227,233,239,244,249,254,260,264],{"type":66,"tag":216,"props":222,"children":224},{"style":223},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[225],{"type":71,"value":226},"\u003C",{"type":66,"tag":216,"props":228,"children":230},{"style":229},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[231],{"type":71,"value":232},"script",{"type":66,"tag":216,"props":234,"children":236},{"style":235},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[237],{"type":71,"value":238}," setup",{"type":66,"tag":216,"props":240,"children":241},{"style":235},[242],{"type":71,"value":243}," lang",{"type":66,"tag":216,"props":245,"children":246},{"style":223},[247],{"type":71,"value":248},"=",{"type":66,"tag":216,"props":250,"children":251},{"style":223},[252],{"type":71,"value":253},"\"",{"type":66,"tag":216,"props":255,"children":257},{"style":256},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[258],{"type":71,"value":259},"ts",{"type":66,"tag":216,"props":261,"children":262},{"style":223},[263],{"type":71,"value":253},{"type":66,"tag":216,"props":265,"children":266},{"style":223},[267],{"type":71,"value":268},">\n",{"type":66,"tag":216,"props":270,"children":272},{"class":218,"line":271},2,[273,278,284,288,294],{"type":66,"tag":216,"props":274,"children":275},{"style":235},[276],{"type":71,"value":277},"const",{"type":66,"tag":216,"props":279,"children":281},{"style":280},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[282],{"type":71,"value":283}," supabase ",{"type":66,"tag":216,"props":285,"children":286},{"style":223},[287],{"type":71,"value":248},{"type":66,"tag":216,"props":289,"children":291},{"style":290},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[292],{"type":71,"value":293}," useSupabaseClient",{"type":66,"tag":216,"props":295,"children":296},{"style":280},[297],{"type":71,"value":298},"()\n",{"type":66,"tag":216,"props":300,"children":302},{"class":218,"line":301},3,[303,307,312,316,321,326,331],{"type":66,"tag":216,"props":304,"children":305},{"style":235},[306],{"type":71,"value":277},{"type":66,"tag":216,"props":308,"children":309},{"style":280},[310],{"type":71,"value":311}," email ",{"type":66,"tag":216,"props":313,"children":314},{"style":223},[315],{"type":71,"value":248},{"type":66,"tag":216,"props":317,"children":318},{"style":290},[319],{"type":71,"value":320}," ref",{"type":66,"tag":216,"props":322,"children":323},{"style":280},[324],{"type":71,"value":325},"(",{"type":66,"tag":216,"props":327,"children":328},{"style":223},[329],{"type":71,"value":330},"''",{"type":66,"tag":216,"props":332,"children":333},{"style":280},[334],{"type":71,"value":335},")\n",{"type":66,"tag":216,"props":337,"children":339},{"class":218,"line":338},4,[340],{"type":66,"tag":216,"props":341,"children":343},{"emptyLinePlaceholder":342},true,[344],{"type":71,"value":345},"\n",{"type":66,"tag":216,"props":347,"children":349},{"class":218,"line":348},5,[350,354,359,363,368,373,378],{"type":66,"tag":216,"props":351,"children":352},{"style":235},[353],{"type":71,"value":277},{"type":66,"tag":216,"props":355,"children":356},{"style":280},[357],{"type":71,"value":358}," signInWithOtp ",{"type":66,"tag":216,"props":360,"children":361},{"style":223},[362],{"type":71,"value":248},{"type":66,"tag":216,"props":364,"children":365},{"style":235},[366],{"type":71,"value":367}," async",{"type":66,"tag":216,"props":369,"children":370},{"style":223},[371],{"type":71,"value":372}," ()",{"type":66,"tag":216,"props":374,"children":375},{"style":235},[376],{"type":71,"value":377}," =>",{"type":66,"tag":216,"props":379,"children":380},{"style":223},[381],{"type":71,"value":382}," {\n",{"type":66,"tag":216,"props":384,"children":386},{"class":218,"line":385},6,[387,392,397,402,407,412,418,423,427,432,436,441,445],{"type":66,"tag":216,"props":388,"children":389},{"style":235},[390],{"type":71,"value":391}," const",{"type":66,"tag":216,"props":393,"children":394},{"style":223},[395],{"type":71,"value":396}," {",{"type":66,"tag":216,"props":398,"children":399},{"style":280},[400],{"type":71,"value":401}," error",{"type":66,"tag":216,"props":403,"children":404},{"style":223},[405],{"type":71,"value":406}," }",{"type":66,"tag":216,"props":408,"children":409},{"style":223},[410],{"type":71,"value":411}," =",{"type":66,"tag":216,"props":413,"children":415},{"style":414},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[416],{"type":71,"value":417}," await",{"type":66,"tag":216,"props":419,"children":420},{"style":280},[421],{"type":71,"value":422}," supabase",{"type":66,"tag":216,"props":424,"children":425},{"style":223},[426],{"type":71,"value":92},{"type":66,"tag":216,"props":428,"children":429},{"style":280},[430],{"type":71,"value":431},"auth",{"type":66,"tag":216,"props":433,"children":434},{"style":223},[435],{"type":71,"value":92},{"type":66,"tag":216,"props":437,"children":438},{"style":290},[439],{"type":71,"value":440},"signInWithOtp",{"type":66,"tag":216,"props":442,"children":443},{"style":229},[444],{"type":71,"value":325},{"type":66,"tag":216,"props":446,"children":447},{"style":223},[448],{"type":71,"value":449},"{\n",{"type":66,"tag":216,"props":451,"children":453},{"class":218,"line":452},7,[454,459,464,469,473,478],{"type":66,"tag":216,"props":455,"children":456},{"style":229},[457],{"type":71,"value":458}," email",{"type":66,"tag":216,"props":460,"children":461},{"style":223},[462],{"type":71,"value":463},":",{"type":66,"tag":216,"props":465,"children":466},{"style":280},[467],{"type":71,"value":468}," email",{"type":66,"tag":216,"props":470,"children":471},{"style":223},[472],{"type":71,"value":92},{"type":66,"tag":216,"props":474,"children":475},{"style":280},[476],{"type":71,"value":477},"value",{"type":66,"tag":216,"props":479,"children":480},{"style":223},[481],{"type":71,"value":482},",\n",{"type":66,"tag":216,"props":484,"children":486},{"class":218,"line":485},8,[487,492,496],{"type":66,"tag":216,"props":488,"children":489},{"style":229},[490],{"type":71,"value":491}," options",{"type":66,"tag":216,"props":493,"children":494},{"style":223},[495],{"type":71,"value":463},{"type":66,"tag":216,"props":497,"children":498},{"style":223},[499],{"type":71,"value":382},{"type":66,"tag":216,"props":501,"children":503},{"class":218,"line":502},9,[504,509,513,518,523,528],{"type":66,"tag":216,"props":505,"children":506},{"style":229},[507],{"type":71,"value":508}," emailRedirectTo",{"type":66,"tag":216,"props":510,"children":511},{"style":223},[512],{"type":71,"value":463},{"type":66,"tag":216,"props":514,"children":515},{"style":223},[516],{"type":71,"value":517}," '",{"type":66,"tag":216,"props":519,"children":520},{"style":256},[521],{"type":71,"value":522},"http://localhost:3000/confirm",{"type":66,"tag":216,"props":524,"children":525},{"style":223},[526],{"type":71,"value":527},"'",{"type":66,"tag":216,"props":529,"children":530},{"style":223},[531],{"type":71,"value":482},{"type":66,"tag":216,"props":533,"children":535},{"class":218,"line":534},10,[536],{"type":66,"tag":216,"props":537,"children":538},{"style":223},[539],{"type":71,"value":540}," }\n",{"type":66,"tag":216,"props":542,"children":544},{"class":218,"line":543},11,[545,550],{"type":66,"tag":216,"props":546,"children":547},{"style":223},[548],{"type":71,"value":549}," }",{"type":66,"tag":216,"props":551,"children":552},{"style":229},[553],{"type":71,"value":335},{"type":66,"tag":216,"props":555,"children":557},{"class":218,"line":556},12,[558,563,568,573,578,583,587,592,596,600],{"type":66,"tag":216,"props":559,"children":560},{"style":414},[561],{"type":71,"value":562}," if",{"type":66,"tag":216,"props":564,"children":565},{"style":229},[566],{"type":71,"value":567}," (",{"type":66,"tag":216,"props":569,"children":570},{"style":280},[571],{"type":71,"value":572},"error",{"type":66,"tag":216,"props":574,"children":575},{"style":229},[576],{"type":71,"value":577},") ",{"type":66,"tag":216,"props":579,"children":580},{"style":280},[581],{"type":71,"value":582},"console",{"type":66,"tag":216,"props":584,"children":585},{"style":223},[586],{"type":71,"value":92},{"type":66,"tag":216,"props":588,"children":589},{"style":290},[590],{"type":71,"value":591},"log",{"type":66,"tag":216,"props":593,"children":594},{"style":229},[595],{"type":71,"value":325},{"type":66,"tag":216,"props":597,"children":598},{"style":280},[599],{"type":71,"value":572},{"type":66,"tag":216,"props":601,"children":602},{"style":229},[603],{"type":71,"value":335},{"type":66,"tag":216,"props":605,"children":607},{"class":218,"line":606},13,[608],{"type":66,"tag":216,"props":609,"children":610},{"style":223},[611],{"type":71,"value":612},"}\n",{"type":66,"tag":216,"props":614,"children":616},{"class":218,"line":615},14,[617,622,626],{"type":66,"tag":216,"props":618,"children":619},{"style":223},[620],{"type":71,"value":621},"\u003C/",{"type":66,"tag":216,"props":623,"children":624},{"style":229},[625],{"type":71,"value":232},{"type":66,"tag":216,"props":627,"children":628},{"style":223},[629],{"type":71,"value":268},{"type":66,"tag":216,"props":631,"children":633},{"class":218,"line":632},15,[634,638,643],{"type":66,"tag":216,"props":635,"children":636},{"style":223},[637],{"type":71,"value":226},{"type":66,"tag":216,"props":639,"children":640},{"style":229},[641],{"type":71,"value":642},"template",{"type":66,"tag":216,"props":644,"children":645},{"style":223},[646],{"type":71,"value":268},{"type":66,"tag":216,"props":648,"children":650},{"class":218,"line":649},16,[651,656,661],{"type":66,"tag":216,"props":652,"children":653},{"style":223},[654],{"type":71,"value":655}," \u003C",{"type":66,"tag":216,"props":657,"children":658},{"style":229},[659],{"type":71,"value":660},"div",{"type":66,"tag":216,"props":662,"children":663},{"style":223},[664],{"type":71,"value":268},{"type":66,"tag":216,"props":666,"children":668},{"class":218,"line":667},17,[669,674,679,684,689,693,697,701,705],{"type":66,"tag":216,"props":670,"children":671},{"style":223},[672],{"type":71,"value":673}," \u003C",{"type":66,"tag":216,"props":675,"children":676},{"style":229},[677],{"type":71,"value":678},"button",{"type":66,"tag":216,"props":680,"children":681},{"style":223},[682],{"type":71,"value":683}," @",{"type":66,"tag":216,"props":685,"children":686},{"style":235},[687],{"type":71,"value":688},"click",{"type":66,"tag":216,"props":690,"children":691},{"style":223},[692],{"type":71,"value":248},{"type":66,"tag":216,"props":694,"children":695},{"style":223},[696],{"type":71,"value":253},{"type":66,"tag":216,"props":698,"children":699},{"style":280},[700],{"type":71,"value":440},{"type":66,"tag":216,"props":702,"children":703},{"style":223},[704],{"type":71,"value":253},{"type":66,"tag":216,"props":706,"children":707},{"style":223},[708],{"type":71,"value":268},{"type":66,"tag":216,"props":710,"children":712},{"class":218,"line":711},18,[713],{"type":66,"tag":216,"props":714,"children":715},{"style":280},[716],{"type":71,"value":717}," Sign In with E-Mail\n",{"type":66,"tag":216,"props":719,"children":721},{"class":218,"line":720},19,[722,727,731],{"type":66,"tag":216,"props":723,"children":724},{"style":223},[725],{"type":71,"value":726}," \u003C/",{"type":66,"tag":216,"props":728,"children":729},{"style":229},[730],{"type":71,"value":678},{"type":66,"tag":216,"props":732,"children":733},{"style":223},[734],{"type":71,"value":268},{"type":66,"tag":216,"props":736,"children":738},{"class":218,"line":737},20,[739,743],{"type":66,"tag":216,"props":740,"children":741},{"style":223},[742],{"type":71,"value":673},{"type":66,"tag":216,"props":744,"children":745},{"style":229},[746],{"type":71,"value":747},"input\n",{"type":66,"tag":216,"props":749,"children":751},{"class":218,"line":750},21,[752,757,761,765,770],{"type":66,"tag":216,"props":753,"children":754},{"style":235},[755],{"type":71,"value":756}," v-model",{"type":66,"tag":216,"props":758,"children":759},{"style":223},[760],{"type":71,"value":248},{"type":66,"tag":216,"props":762,"children":763},{"style":223},[764],{"type":71,"value":253},{"type":66,"tag":216,"props":766,"children":767},{"style":280},[768],{"type":71,"value":769},"email",{"type":66,"tag":216,"props":771,"children":772},{"style":223},[773],{"type":71,"value":774},"\"\n",{"type":66,"tag":216,"props":776,"children":778},{"class":218,"line":777},22,[779,784,788,792,796],{"type":66,"tag":216,"props":780,"children":781},{"style":235},[782],{"type":71,"value":783}," type",{"type":66,"tag":216,"props":785,"children":786},{"style":223},[787],{"type":71,"value":248},{"type":66,"tag":216,"props":789,"children":790},{"style":223},[791],{"type":71,"value":253},{"type":66,"tag":216,"props":793,"children":794},{"style":256},[795],{"type":71,"value":769},{"type":66,"tag":216,"props":797,"children":798},{"style":223},[799],{"type":71,"value":774},{"type":66,"tag":216,"props":801,"children":803},{"class":218,"line":802},23,[804],{"type":66,"tag":216,"props":805,"children":806},{"style":223},[807],{"type":71,"value":808}," />\n",{"type":66,"tag":216,"props":810,"children":812},{"class":218,"line":811},24,[813,818,822],{"type":66,"tag":216,"props":814,"children":815},{"style":223},[816],{"type":71,"value":817}," \u003C/",{"type":66,"tag":216,"props":819,"children":820},{"style":229},[821],{"type":71,"value":660},{"type":66,"tag":216,"props":823,"children":824},{"style":223},[825],{"type":71,"value":268},{"type":66,"tag":216,"props":827,"children":829},{"class":218,"line":828},25,[830,834,838],{"type":66,"tag":216,"props":831,"children":832},{"style":223},[833],{"type":71,"value":621},{"type":66,"tag":216,"props":835,"children":836},{"style":229},[837],{"type":71,"value":642},{"type":66,"tag":216,"props":839,"children":840},{"style":223},[841],{"type":71,"value":268},{"type":66,"tag":67,"props":843,"children":844},{},[845,847,852,854,858,860,866],{"type":71,"value":846},"Once the authorization flow is triggered using the ",{"type":66,"tag":99,"props":848,"children":850},{"className":849},[],[851],{"type":71,"value":431},{"type":71,"value":853}," wrapper of the ",{"type":66,"tag":74,"props":855,"children":856},{"href":22},[857],{"type":71,"value":21},{"type":71,"value":859}," composable, the session management is handled automatically and the user will be redirected to the page you specify in the redirect option (",{"type":66,"tag":99,"props":861,"children":863},{"className":862},[],[864],{"type":71,"value":865},"/confirm",{"type":71,"value":867}," by default).",{"type":66,"tag":141,"props":869,"children":871},{"id":870},"confirm-page-confirm",[872,874],{"type":71,"value":873},"Confirm page - ",{"type":66,"tag":99,"props":875,"children":877},{"className":876},[],[878],{"type":71,"value":865},{"type":66,"tag":67,"props":880,"children":881},{},[882],{"type":71,"value":883},"The confirmation page receives the supabase callback. From there you can check the user value and redirect to the appropriate page.",{"type":66,"tag":124,"props":885,"children":886},{"icon":126},[887],{"type":66,"tag":67,"props":888,"children":889},{},[890,892,898],{"type":71,"value":891},"The redirect URL must be configured in your Supabase dashboard under ",{"type":66,"tag":99,"props":893,"children":895},{"className":894},[],[896],{"type":71,"value":897},"Authentication -> URL Configuration -> Redirect URLs",{"type":71,"value":92},{"type":66,"tag":205,"props":900,"children":903},{"className":207,"code":901,"filename":902,"language":210,"meta":59,"style":59},"\u003Cscript setup lang=\"ts\">\nconst user = useSupabaseUser()\n\nwatch(user, () => {\n if (user.value) {\n // Redirect to protected page\n return navigateTo('/')\n }\n}, { immediate: true })\n\u003C/script>\n\n\u003Ctemplate>\n \u003Cdiv>Waiting for login...\u003C/div>\n\u003C/template>\n","pages/confirm.vue",[904],{"type":66,"tag":99,"props":905,"children":906},{"__ignoreMap":59},[907,946,971,978,1008,1040,1049,1083,1091,1126,1141,1148,1163,1196],{"type":66,"tag":216,"props":908,"children":909},{"class":218,"line":219},[910,914,918,922,926,930,934,938,942],{"type":66,"tag":216,"props":911,"children":912},{"style":223},[913],{"type":71,"value":226},{"type":66,"tag":216,"props":915,"children":916},{"style":229},[917],{"type":71,"value":232},{"type":66,"tag":216,"props":919,"children":920},{"style":235},[921],{"type":71,"value":238},{"type":66,"tag":216,"props":923,"children":924},{"style":235},[925],{"type":71,"value":243},{"type":66,"tag":216,"props":927,"children":928},{"style":223},[929],{"type":71,"value":248},{"type":66,"tag":216,"props":931,"children":932},{"style":223},[933],{"type":71,"value":253},{"type":66,"tag":216,"props":935,"children":936},{"style":256},[937],{"type":71,"value":259},{"type":66,"tag":216,"props":939,"children":940},{"style":223},[941],{"type":71,"value":253},{"type":66,"tag":216,"props":943,"children":944},{"style":223},[945],{"type":71,"value":268},{"type":66,"tag":216,"props":947,"children":948},{"class":218,"line":271},[949,953,958,962,967],{"type":66,"tag":216,"props":950,"children":951},{"style":235},[952],{"type":71,"value":277},{"type":66,"tag":216,"props":954,"children":955},{"style":280},[956],{"type":71,"value":957}," user ",{"type":66,"tag":216,"props":959,"children":960},{"style":223},[961],{"type":71,"value":248},{"type":66,"tag":216,"props":963,"children":964},{"style":290},[965],{"type":71,"value":966}," useSupabaseUser",{"type":66,"tag":216,"props":968,"children":969},{"style":280},[970],{"type":71,"value":298},{"type":66,"tag":216,"props":972,"children":973},{"class":218,"line":301},[974],{"type":66,"tag":216,"props":975,"children":976},{"emptyLinePlaceholder":342},[977],{"type":71,"value":345},{"type":66,"tag":216,"props":979,"children":980},{"class":218,"line":338},[981,986,991,996,1000,1004],{"type":66,"tag":216,"props":982,"children":983},{"style":290},[984],{"type":71,"value":985},"watch",{"type":66,"tag":216,"props":987,"children":988},{"style":280},[989],{"type":71,"value":990},"(user",{"type":66,"tag":216,"props":992,"children":993},{"style":223},[994],{"type":71,"value":995},",",{"type":66,"tag":216,"props":997,"children":998},{"style":223},[999],{"type":71,"value":372},{"type":66,"tag":216,"props":1001,"children":1002},{"style":235},[1003],{"type":71,"value":377},{"type":66,"tag":216,"props":1005,"children":1006},{"style":223},[1007],{"type":71,"value":382},{"type":66,"tag":216,"props":1009,"children":1010},{"class":218,"line":348},[1011,1015,1019,1024,1028,1032,1036],{"type":66,"tag":216,"props":1012,"children":1013},{"style":414},[1014],{"type":71,"value":562},{"type":66,"tag":216,"props":1016,"children":1017},{"style":229},[1018],{"type":71,"value":567},{"type":66,"tag":216,"props":1020,"children":1021},{"style":280},[1022],{"type":71,"value":1023},"user",{"type":66,"tag":216,"props":1025,"children":1026},{"style":223},[1027],{"type":71,"value":92},{"type":66,"tag":216,"props":1029,"children":1030},{"style":280},[1031],{"type":71,"value":477},{"type":66,"tag":216,"props":1033,"children":1034},{"style":229},[1035],{"type":71,"value":577},{"type":66,"tag":216,"props":1037,"children":1038},{"style":223},[1039],{"type":71,"value":449},{"type":66,"tag":216,"props":1041,"children":1042},{"class":218,"line":385},[1043],{"type":66,"tag":216,"props":1044,"children":1046},{"style":1045},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[1047],{"type":71,"value":1048}," // Redirect to protected page\n",{"type":66,"tag":216,"props":1050,"children":1051},{"class":218,"line":452},[1052,1057,1062,1066,1070,1075,1079],{"type":66,"tag":216,"props":1053,"children":1054},{"style":414},[1055],{"type":71,"value":1056}," return",{"type":66,"tag":216,"props":1058,"children":1059},{"style":290},[1060],{"type":71,"value":1061}," navigateTo",{"type":66,"tag":216,"props":1063,"children":1064},{"style":229},[1065],{"type":71,"value":325},{"type":66,"tag":216,"props":1067,"children":1068},{"style":223},[1069],{"type":71,"value":527},{"type":66,"tag":216,"props":1071,"children":1072},{"style":256},[1073],{"type":71,"value":1074},"/",{"type":66,"tag":216,"props":1076,"children":1077},{"style":223},[1078],{"type":71,"value":527},{"type":66,"tag":216,"props":1080,"children":1081},{"style":229},[1082],{"type":71,"value":335},{"type":66,"tag":216,"props":1084,"children":1085},{"class":218,"line":485},[1086],{"type":66,"tag":216,"props":1087,"children":1088},{"style":223},[1089],{"type":71,"value":1090}," }\n",{"type":66,"tag":216,"props":1092,"children":1093},{"class":218,"line":502},[1094,1099,1103,1108,1112,1118,1122],{"type":66,"tag":216,"props":1095,"children":1096},{"style":223},[1097],{"type":71,"value":1098},"},",{"type":66,"tag":216,"props":1100,"children":1101},{"style":223},[1102],{"type":71,"value":396},{"type":66,"tag":216,"props":1104,"children":1105},{"style":229},[1106],{"type":71,"value":1107}," immediate",{"type":66,"tag":216,"props":1109,"children":1110},{"style":223},[1111],{"type":71,"value":463},{"type":66,"tag":216,"props":1113,"children":1115},{"style":1114},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[1116],{"type":71,"value":1117}," true",{"type":66,"tag":216,"props":1119,"children":1120},{"style":223},[1121],{"type":71,"value":406},{"type":66,"tag":216,"props":1123,"children":1124},{"style":280},[1125],{"type":71,"value":335},{"type":66,"tag":216,"props":1127,"children":1128},{"class":218,"line":534},[1129,1133,1137],{"type":66,"tag":216,"props":1130,"children":1131},{"style":223},[1132],{"type":71,"value":621},{"type":66,"tag":216,"props":1134,"children":1135},{"style":229},[1136],{"type":71,"value":232},{"type":66,"tag":216,"props":1138,"children":1139},{"style":223},[1140],{"type":71,"value":268},{"type":66,"tag":216,"props":1142,"children":1143},{"class":218,"line":543},[1144],{"type":66,"tag":216,"props":1145,"children":1146},{"emptyLinePlaceholder":342},[1147],{"type":71,"value":345},{"type":66,"tag":216,"props":1149,"children":1150},{"class":218,"line":556},[1151,1155,1159],{"type":66,"tag":216,"props":1152,"children":1153},{"style":223},[1154],{"type":71,"value":226},{"type":66,"tag":216,"props":1156,"children":1157},{"style":229},[1158],{"type":71,"value":642},{"type":66,"tag":216,"props":1160,"children":1161},{"style":223},[1162],{"type":71,"value":268},{"type":66,"tag":216,"props":1164,"children":1165},{"class":218,"line":606},[1166,1170,1174,1179,1184,1188,1192],{"type":66,"tag":216,"props":1167,"children":1168},{"style":223},[1169],{"type":71,"value":655},{"type":66,"tag":216,"props":1171,"children":1172},{"style":229},[1173],{"type":71,"value":660},{"type":66,"tag":216,"props":1175,"children":1176},{"style":223},[1177],{"type":71,"value":1178},">",{"type":66,"tag":216,"props":1180,"children":1181},{"style":280},[1182],{"type":71,"value":1183},"Waiting for login...",{"type":66,"tag":216,"props":1185,"children":1186},{"style":223},[1187],{"type":71,"value":621},{"type":66,"tag":216,"props":1189,"children":1190},{"style":229},[1191],{"type":71,"value":660},{"type":66,"tag":216,"props":1193,"children":1194},{"style":223},[1195],{"type":71,"value":268},{"type":66,"tag":216,"props":1197,"children":1198},{"class":218,"line":615},[1199,1203,1207],{"type":66,"tag":216,"props":1200,"children":1201},{"style":223},[1202],{"type":71,"value":621},{"type":66,"tag":216,"props":1204,"children":1205},{"style":229},[1206],{"type":71,"value":642},{"type":66,"tag":216,"props":1208,"children":1209},{"style":223},[1210],{"type":71,"value":268},{"type":66,"tag":1212,"props":1213,"children":1215},"h3",{"id":1214},"redirect-path",[1216],{"type":71,"value":1217},"Redirect path",{"type":66,"tag":67,"props":1219,"children":1220},{},[1221],{"type":71,"value":1222},"You can easily handle redirection to the initial requested route after login.",{"type":66,"tag":124,"props":1224,"children":1225},{"icon":126},[1226],{"type":66,"tag":67,"props":1227,"children":1228},{},[1229,1231,1237,1239,1244],{"type":71,"value":1230},"You must enable the ",{"type":66,"tag":99,"props":1232,"children":1234},{"className":1233},[],[1235],{"type":71,"value":1236},"cookieRedirect",{"type":71,"value":1238}," option of the ",{"type":66,"tag":74,"props":1240,"children":1241},{"href":160},[1242],{"type":71,"value":1243},"redirectOptions",{"type":71,"value":1245}," to allow cookie storage and take benefit of this feature.",{"type":66,"tag":205,"props":1247,"children":1249},{"className":207,"code":1248,"filename":902,"language":210,"meta":59,"style":59},"\u003Cscript setup lang=\"ts\">\nconst user = useSupabaseUser()\n\n// Get redirect path from cookies\nconst cookieName = useRuntimeConfig().public.supabase.cookieName\nconst redirectPath = useCookie(`${cookieName}-redirect-path`).value\n\nwatch(user, () => {\n if (user.value) {\n // Clear cookie\n useCookie(`${cookieName}-redirect-path`).value = null\n // Redirect to path\n return navigateTo(redirectPath || '/'); \n }\n}, { immediate: true })\n\u003C/script>\n\u003Ctemplate>\n \u003Cdiv>Waiting for login...\u003C/div>\n\u003C/template>\n",[1250],{"type":66,"tag":99,"props":1251,"children":1252},{"__ignoreMap":59},[1253,1292,1315,1322,1330,1383,1447,1454,1481,1512,1520,1573,1581,1632,1639,1670,1685,1700,1731],{"type":66,"tag":216,"props":1254,"children":1255},{"class":218,"line":219},[1256,1260,1264,1268,1272,1276,1280,1284,1288],{"type":66,"tag":216,"props":1257,"children":1258},{"style":223},[1259],{"type":71,"value":226},{"type":66,"tag":216,"props":1261,"children":1262},{"style":229},[1263],{"type":71,"value":232},{"type":66,"tag":216,"props":1265,"children":1266},{"style":235},[1267],{"type":71,"value":238},{"type":66,"tag":216,"props":1269,"children":1270},{"style":235},[1271],{"type":71,"value":243},{"type":66,"tag":216,"props":1273,"children":1274},{"style":223},[1275],{"type":71,"value":248},{"type":66,"tag":216,"props":1277,"children":1278},{"style":223},[1279],{"type":71,"value":253},{"type":66,"tag":216,"props":1281,"children":1282},{"style":256},[1283],{"type":71,"value":259},{"type":66,"tag":216,"props":1285,"children":1286},{"style":223},[1287],{"type":71,"value":253},{"type":66,"tag":216,"props":1289,"children":1290},{"style":223},[1291],{"type":71,"value":268},{"type":66,"tag":216,"props":1293,"children":1294},{"class":218,"line":271},[1295,1299,1303,1307,1311],{"type":66,"tag":216,"props":1296,"children":1297},{"style":235},[1298],{"type":71,"value":277},{"type":66,"tag":216,"props":1300,"children":1301},{"style":280},[1302],{"type":71,"value":957},{"type":66,"tag":216,"props":1304,"children":1305},{"style":223},[1306],{"type":71,"value":248},{"type":66,"tag":216,"props":1308,"children":1309},{"style":290},[1310],{"type":71,"value":966},{"type":66,"tag":216,"props":1312,"children":1313},{"style":280},[1314],{"type":71,"value":298},{"type":66,"tag":216,"props":1316,"children":1317},{"class":218,"line":301},[1318],{"type":66,"tag":216,"props":1319,"children":1320},{"emptyLinePlaceholder":342},[1321],{"type":71,"value":345},{"type":66,"tag":216,"props":1323,"children":1324},{"class":218,"line":338},[1325],{"type":66,"tag":216,"props":1326,"children":1327},{"style":1045},[1328],{"type":71,"value":1329},"// Get redirect path from cookies\n",{"type":66,"tag":216,"props":1331,"children":1332},{"class":218,"line":348},[1333,1337,1342,1346,1351,1356,1360,1365,1369,1374,1378],{"type":66,"tag":216,"props":1334,"children":1335},{"style":235},[1336],{"type":71,"value":277},{"type":66,"tag":216,"props":1338,"children":1339},{"style":280},[1340],{"type":71,"value":1341}," cookieName ",{"type":66,"tag":216,"props":1343,"children":1344},{"style":223},[1345],{"type":71,"value":248},{"type":66,"tag":216,"props":1347,"children":1348},{"style":290},[1349],{"type":71,"value":1350}," useRuntimeConfig",{"type":66,"tag":216,"props":1352,"children":1353},{"style":280},[1354],{"type":71,"value":1355},"()",{"type":66,"tag":216,"props":1357,"children":1358},{"style":223},[1359],{"type":71,"value":92},{"type":66,"tag":216,"props":1361,"children":1362},{"style":280},[1363],{"type":71,"value":1364},"public",{"type":66,"tag":216,"props":1366,"children":1367},{"style":223},[1368],{"type":71,"value":92},{"type":66,"tag":216,"props":1370,"children":1371},{"style":280},[1372],{"type":71,"value":1373},"supabase",{"type":66,"tag":216,"props":1375,"children":1376},{"style":223},[1377],{"type":71,"value":92},{"type":66,"tag":216,"props":1379,"children":1380},{"style":280},[1381],{"type":71,"value":1382},"cookieName\n",{"type":66,"tag":216,"props":1384,"children":1385},{"class":218,"line":385},[1386,1390,1395,1399,1404,1408,1413,1418,1423,1428,1433,1438,1442],{"type":66,"tag":216,"props":1387,"children":1388},{"style":235},[1389],{"type":71,"value":277},{"type":66,"tag":216,"props":1391,"children":1392},{"style":280},[1393],{"type":71,"value":1394}," redirectPath ",{"type":66,"tag":216,"props":1396,"children":1397},{"style":223},[1398],{"type":71,"value":248},{"type":66,"tag":216,"props":1400,"children":1401},{"style":290},[1402],{"type":71,"value":1403}," useCookie",{"type":66,"tag":216,"props":1405,"children":1406},{"style":280},[1407],{"type":71,"value":325},{"type":66,"tag":216,"props":1409,"children":1410},{"style":223},[1411],{"type":71,"value":1412},"`${",{"type":66,"tag":216,"props":1414,"children":1415},{"style":280},[1416],{"type":71,"value":1417},"cookieName",{"type":66,"tag":216,"props":1419,"children":1420},{"style":223},[1421],{"type":71,"value":1422},"}",{"type":66,"tag":216,"props":1424,"children":1425},{"style":256},[1426],{"type":71,"value":1427},"-redirect-path",{"type":66,"tag":216,"props":1429,"children":1430},{"style":223},[1431],{"type":71,"value":1432},"`",{"type":66,"tag":216,"props":1434,"children":1435},{"style":280},[1436],{"type":71,"value":1437},")",{"type":66,"tag":216,"props":1439,"children":1440},{"style":223},[1441],{"type":71,"value":92},{"type":66,"tag":216,"props":1443,"children":1444},{"style":280},[1445],{"type":71,"value":1446},"value\n",{"type":66,"tag":216,"props":1448,"children":1449},{"class":218,"line":452},[1450],{"type":66,"tag":216,"props":1451,"children":1452},{"emptyLinePlaceholder":342},[1453],{"type":71,"value":345},{"type":66,"tag":216,"props":1455,"children":1456},{"class":218,"line":485},[1457,1461,1465,1469,1473,1477],{"type":66,"tag":216,"props":1458,"children":1459},{"style":290},[1460],{"type":71,"value":985},{"type":66,"tag":216,"props":1462,"children":1463},{"style":280},[1464],{"type":71,"value":990},{"type":66,"tag":216,"props":1466,"children":1467},{"style":223},[1468],{"type":71,"value":995},{"type":66,"tag":216,"props":1470,"children":1471},{"style":223},[1472],{"type":71,"value":372},{"type":66,"tag":216,"props":1474,"children":1475},{"style":235},[1476],{"type":71,"value":377},{"type":66,"tag":216,"props":1478,"children":1479},{"style":223},[1480],{"type":71,"value":382},{"type":66,"tag":216,"props":1482,"children":1483},{"class":218,"line":502},[1484,1488,1492,1496,1500,1504,1508],{"type":66,"tag":216,"props":1485,"children":1486},{"style":414},[1487],{"type":71,"value":562},{"type":66,"tag":216,"props":1489,"children":1490},{"style":229},[1491],{"type":71,"value":567},{"type":66,"tag":216,"props":1493,"children":1494},{"style":280},[1495],{"type":71,"value":1023},{"type":66,"tag":216,"props":1497,"children":1498},{"style":223},[1499],{"type":71,"value":92},{"type":66,"tag":216,"props":1501,"children":1502},{"style":280},[1503],{"type":71,"value":477},{"type":66,"tag":216,"props":1505,"children":1506},{"style":229},[1507],{"type":71,"value":577},{"type":66,"tag":216,"props":1509,"children":1510},{"style":223},[1511],{"type":71,"value":449},{"type":66,"tag":216,"props":1513,"children":1514},{"class":218,"line":534},[1515],{"type":66,"tag":216,"props":1516,"children":1517},{"style":1045},[1518],{"type":71,"value":1519}," // Clear cookie\n",{"type":66,"tag":216,"props":1521,"children":1522},{"class":218,"line":543},[1523,1528,1532,1536,1540,1544,1548,1552,1556,1560,1564,1568],{"type":66,"tag":216,"props":1524,"children":1525},{"style":290},[1526],{"type":71,"value":1527}," useCookie",{"type":66,"tag":216,"props":1529,"children":1530},{"style":229},[1531],{"type":71,"value":325},{"type":66,"tag":216,"props":1533,"children":1534},{"style":223},[1535],{"type":71,"value":1412},{"type":66,"tag":216,"props":1537,"children":1538},{"style":280},[1539],{"type":71,"value":1417},{"type":66,"tag":216,"props":1541,"children":1542},{"style":223},[1543],{"type":71,"value":1422},{"type":66,"tag":216,"props":1545,"children":1546},{"style":256},[1547],{"type":71,"value":1427},{"type":66,"tag":216,"props":1549,"children":1550},{"style":223},[1551],{"type":71,"value":1432},{"type":66,"tag":216,"props":1553,"children":1554},{"style":229},[1555],{"type":71,"value":1437},{"type":66,"tag":216,"props":1557,"children":1558},{"style":223},[1559],{"type":71,"value":92},{"type":66,"tag":216,"props":1561,"children":1562},{"style":280},[1563],{"type":71,"value":477},{"type":66,"tag":216,"props":1565,"children":1566},{"style":223},[1567],{"type":71,"value":411},{"type":66,"tag":216,"props":1569,"children":1570},{"style":223},[1571],{"type":71,"value":1572}," null\n",{"type":66,"tag":216,"props":1574,"children":1575},{"class":218,"line":556},[1576],{"type":66,"tag":216,"props":1577,"children":1578},{"style":1045},[1579],{"type":71,"value":1580}," // Redirect to path\n",{"type":66,"tag":216,"props":1582,"children":1583},{"class":218,"line":606},[1584,1588,1592,1596,1601,1606,1610,1614,1618,1622,1627],{"type":66,"tag":216,"props":1585,"children":1586},{"style":414},[1587],{"type":71,"value":1056},{"type":66,"tag":216,"props":1589,"children":1590},{"style":290},[1591],{"type":71,"value":1061},{"type":66,"tag":216,"props":1593,"children":1594},{"style":229},[1595],{"type":71,"value":325},{"type":66,"tag":216,"props":1597,"children":1598},{"style":280},[1599],{"type":71,"value":1600},"redirectPath",{"type":66,"tag":216,"props":1602,"children":1603},{"style":223},[1604],{"type":71,"value":1605}," ||",{"type":66,"tag":216,"props":1607,"children":1608},{"style":223},[1609],{"type":71,"value":517},{"type":66,"tag":216,"props":1611,"children":1612},{"style":256},[1613],{"type":71,"value":1074},{"type":66,"tag":216,"props":1615,"children":1616},{"style":223},[1617],{"type":71,"value":527},{"type":66,"tag":216,"props":1619,"children":1620},{"style":229},[1621],{"type":71,"value":1437},{"type":66,"tag":216,"props":1623,"children":1624},{"style":223},[1625],{"type":71,"value":1626},";",{"type":66,"tag":216,"props":1628,"children":1629},{"style":229},[1630],{"type":71,"value":1631}," \n",{"type":66,"tag":216,"props":1633,"children":1634},{"class":218,"line":615},[1635],{"type":66,"tag":216,"props":1636,"children":1637},{"style":223},[1638],{"type":71,"value":1090},{"type":66,"tag":216,"props":1640,"children":1641},{"class":218,"line":632},[1642,1646,1650,1654,1658,1662,1666],{"type":66,"tag":216,"props":1643,"children":1644},{"style":223},[1645],{"type":71,"value":1098},{"type":66,"tag":216,"props":1647,"children":1648},{"style":223},[1649],{"type":71,"value":396},{"type":66,"tag":216,"props":1651,"children":1652},{"style":229},[1653],{"type":71,"value":1107},{"type":66,"tag":216,"props":1655,"children":1656},{"style":223},[1657],{"type":71,"value":463},{"type":66,"tag":216,"props":1659,"children":1660},{"style":1114},[1661],{"type":71,"value":1117},{"type":66,"tag":216,"props":1663,"children":1664},{"style":223},[1665],{"type":71,"value":406},{"type":66,"tag":216,"props":1667,"children":1668},{"style":280},[1669],{"type":71,"value":335},{"type":66,"tag":216,"props":1671,"children":1672},{"class":218,"line":649},[1673,1677,1681],{"type":66,"tag":216,"props":1674,"children":1675},{"style":223},[1676],{"type":71,"value":621},{"type":66,"tag":216,"props":1678,"children":1679},{"style":229},[1680],{"type":71,"value":232},{"type":66,"tag":216,"props":1682,"children":1683},{"style":223},[1684],{"type":71,"value":268},{"type":66,"tag":216,"props":1686,"children":1687},{"class":218,"line":667},[1688,1692,1696],{"type":66,"tag":216,"props":1689,"children":1690},{"style":223},[1691],{"type":71,"value":226},{"type":66,"tag":216,"props":1693,"children":1694},{"style":229},[1695],{"type":71,"value":642},{"type":66,"tag":216,"props":1697,"children":1698},{"style":223},[1699],{"type":71,"value":268},{"type":66,"tag":216,"props":1701,"children":1702},{"class":218,"line":711},[1703,1707,1711,1715,1719,1723,1727],{"type":66,"tag":216,"props":1704,"children":1705},{"style":223},[1706],{"type":71,"value":655},{"type":66,"tag":216,"props":1708,"children":1709},{"style":229},[1710],{"type":71,"value":660},{"type":66,"tag":216,"props":1712,"children":1713},{"style":223},[1714],{"type":71,"value":1178},{"type":66,"tag":216,"props":1716,"children":1717},{"style":280},[1718],{"type":71,"value":1183},{"type":66,"tag":216,"props":1720,"children":1721},{"style":223},[1722],{"type":71,"value":621},{"type":66,"tag":216,"props":1724,"children":1725},{"style":229},[1726],{"type":71,"value":660},{"type":66,"tag":216,"props":1728,"children":1729},{"style":223},[1730],{"type":71,"value":268},{"type":66,"tag":216,"props":1732,"children":1733},{"class":218,"line":720},[1734,1738,1742],{"type":66,"tag":216,"props":1735,"children":1736},{"style":223},[1737],{"type":71,"value":621},{"type":66,"tag":216,"props":1739,"children":1740},{"style":229},[1741],{"type":71,"value":642},{"type":66,"tag":216,"props":1743,"children":1744},{"style":223},[1745],{"type":71,"value":268},{"type":66,"tag":1747,"props":1748,"children":1749},"style",{},[1750],{"type":71,"value":1751},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":59,"searchDepth":271,"depth":271,"links":1753},[1754,1756],{"id":143,"depth":271,"text":1755},"Log-in page - /login",{"id":870,"depth":271,"text":1757,"children":1758},"Confirm page - /confirm",[1759],{"id":1214,"depth":301,"text":1217},"markdown","content:3.authentication.md","content","3.authentication.md","3.authentication","md",[1767,1769],{"_path":6,"title":5,"description":1768},"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.",{"_path":22,"title":21,"description":1770},"Make requests to the Supabase API with the useSupabaseClient composable",1733842351869] \ No newline at end of file +[{"data":1,"prerenderedAt":1771},["ShallowReactive",2],{"navigation":3,"/authentication":58,"/authentication-surround":1766},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":10,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":9,"description":61,"icon":11,"body":62,"_type":1760,"_id":1761,"_source":1762,"_file":1763,"_stem":1764,"_extension":1765},"",false,"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server",{"type":63,"children":64,"toc":1752},"root",[65,93,123,140,153,173,190,204,842,868,879,884,899,1211,1218,1223,1246,1746],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70,73,82,84,91],{"type":71,"value":72},"text","With the default options, the module requires a log-in page and a confirm page to handle the ",{"type":66,"tag":74,"props":75,"children":79},"a",{"href":76,"rel":77},"https://supabase.com/docs/guides/resources/glossary#pkce",[78],"nofollow",[80],{"type":71,"value":81},"PKCE authorization code flow",{"type":71,"value":83},". If you want to understand how it works under the hood, you can read this ",{"type":66,"tag":74,"props":85,"children":88},{"href":86,"rel":87},"https://supabase.com/docs/guides/auth/server-side-rendering#understanding-the-authentication-flow",[78],[89],{"type":71,"value":90},"section",{"type":71,"value":92},".",{"type":66,"tag":67,"props":94,"children":95},{},[96,98,105,107,113,115,121],{"type":71,"value":97},"All you need to do is to create a ",{"type":66,"tag":99,"props":100,"children":102},"code",{"className":101},[],[103],{"type":71,"value":104},"login.vue",{"type":71,"value":106}," and ",{"type":66,"tag":99,"props":108,"children":110},{"className":109},[],[111],{"type":71,"value":112},"confirm.vue",{"type":71,"value":114}," page in the ",{"type":66,"tag":99,"props":116,"children":118},{"className":117},[],[119],{"type":71,"value":120},"pages",{"type":71,"value":122}," folder.",{"type":66,"tag":124,"props":125,"children":127},"callout",{"icon":126},"i-heroicons-light-bulb",[128],{"type":66,"tag":67,"props":129,"children":130},{},[131,133,139],{"type":71,"value":132},"For advanced users who want to implement the auth behaviour themselves, you can disable or override the ",{"type":66,"tag":74,"props":134,"children":136},{"href":135},"/get-started#redirect",[137],{"type":71,"value":138},"redirect options",{"type":71,"value":92},{"type":66,"tag":141,"props":142,"children":144},"h2",{"id":143},"log-in-page-login",[145,147],{"type":71,"value":146},"Log-in page - ",{"type":66,"tag":99,"props":148,"children":150},{"className":149},[],[151],{"type":71,"value":152},"/login",{"type":66,"tag":67,"props":154,"children":155},{},[156,158,164,166,171],{"type":71,"value":157},"Each time a user is trying to access a page that needs authentication, he will automatically be redirected to the configured log in page. If you want to allow access to \"public\" page, you just need to add them in the ",{"type":66,"tag":74,"props":159,"children":161},{"href":160},"/get-started#redirectoptions",[162],{"type":71,"value":163},"exclude",{"type":71,"value":165}," redirect option. Alternatively, you can enable the redirect only for certain routes using the ",{"type":66,"tag":74,"props":167,"children":168},{"href":160},[169],{"type":71,"value":170},"include",{"type":71,"value":172}," redirect option.",{"type":66,"tag":124,"props":174,"children":177},{"icon":175,"color":176},"i-heroicons-exclamation-triangle-20-solid","amber",[178],{"type":66,"tag":67,"props":179,"children":180},{},[181,183,189],{"type":71,"value":182},"Ensure to activate the authentication providers you want in the Supabase Dashboard under ",{"type":66,"tag":99,"props":184,"children":186},{"className":185},[],[187],{"type":71,"value":188},"Authentication -> Providers",{"type":71,"value":92},{"type":66,"tag":67,"props":191,"children":192},{},[193,195,202],{"type":71,"value":194},"The log-in page initiates the log-in method(s) you choose from the ",{"type":66,"tag":74,"props":196,"children":199},{"href":197,"rel":198},"https://supabase.com/docs/reference/javascript/auth-signinwithpassword",[78],[200],{"type":71,"value":201},"available authorization methods",{"type":71,"value":203}," provided by Supabase, it could looks like:",{"type":66,"tag":205,"props":206,"children":211},"pre",{"className":207,"code":208,"filename":209,"language":210,"meta":59,"style":59},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst supabase = useSupabaseClient()\nconst email = ref('')\n\nconst signInWithOtp = async () => {\n const { error } = await supabase.auth.signInWithOtp({\n email: email.value,\n options: {\n emailRedirectTo: 'http://localhost:3000/confirm',\n }\n })\n if (error) console.log(error)\n}\n\u003C/script>\n\u003Ctemplate>\n \u003Cdiv>\n \u003Cbutton @click=\"signInWithOtp\">\n Sign In with E-Mail\n \u003C/button>\n \u003Cinput\n v-model=\"email\"\n type=\"email\"\n />\n \u003C/div>\n\u003C/template>\n","pages/login.vue","vue",[212],{"type":66,"tag":99,"props":213,"children":214},{"__ignoreMap":59},[215,269,299,336,346,383,450,483,500,532,541,554,604,613,630,647,665,709,718,735,748,775,800,809,826],{"type":66,"tag":216,"props":217,"children":220},"span",{"class":218,"line":219},"line",1,[221,227,233,239,244,249,254,260,264],{"type":66,"tag":216,"props":222,"children":224},{"style":223},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[225],{"type":71,"value":226},"\u003C",{"type":66,"tag":216,"props":228,"children":230},{"style":229},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[231],{"type":71,"value":232},"script",{"type":66,"tag":216,"props":234,"children":236},{"style":235},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[237],{"type":71,"value":238}," setup",{"type":66,"tag":216,"props":240,"children":241},{"style":235},[242],{"type":71,"value":243}," lang",{"type":66,"tag":216,"props":245,"children":246},{"style":223},[247],{"type":71,"value":248},"=",{"type":66,"tag":216,"props":250,"children":251},{"style":223},[252],{"type":71,"value":253},"\"",{"type":66,"tag":216,"props":255,"children":257},{"style":256},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[258],{"type":71,"value":259},"ts",{"type":66,"tag":216,"props":261,"children":262},{"style":223},[263],{"type":71,"value":253},{"type":66,"tag":216,"props":265,"children":266},{"style":223},[267],{"type":71,"value":268},">\n",{"type":66,"tag":216,"props":270,"children":272},{"class":218,"line":271},2,[273,278,284,288,294],{"type":66,"tag":216,"props":274,"children":275},{"style":235},[276],{"type":71,"value":277},"const",{"type":66,"tag":216,"props":279,"children":281},{"style":280},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[282],{"type":71,"value":283}," supabase ",{"type":66,"tag":216,"props":285,"children":286},{"style":223},[287],{"type":71,"value":248},{"type":66,"tag":216,"props":289,"children":291},{"style":290},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[292],{"type":71,"value":293}," useSupabaseClient",{"type":66,"tag":216,"props":295,"children":296},{"style":280},[297],{"type":71,"value":298},"()\n",{"type":66,"tag":216,"props":300,"children":302},{"class":218,"line":301},3,[303,307,312,316,321,326,331],{"type":66,"tag":216,"props":304,"children":305},{"style":235},[306],{"type":71,"value":277},{"type":66,"tag":216,"props":308,"children":309},{"style":280},[310],{"type":71,"value":311}," email ",{"type":66,"tag":216,"props":313,"children":314},{"style":223},[315],{"type":71,"value":248},{"type":66,"tag":216,"props":317,"children":318},{"style":290},[319],{"type":71,"value":320}," ref",{"type":66,"tag":216,"props":322,"children":323},{"style":280},[324],{"type":71,"value":325},"(",{"type":66,"tag":216,"props":327,"children":328},{"style":223},[329],{"type":71,"value":330},"''",{"type":66,"tag":216,"props":332,"children":333},{"style":280},[334],{"type":71,"value":335},")\n",{"type":66,"tag":216,"props":337,"children":339},{"class":218,"line":338},4,[340],{"type":66,"tag":216,"props":341,"children":343},{"emptyLinePlaceholder":342},true,[344],{"type":71,"value":345},"\n",{"type":66,"tag":216,"props":347,"children":349},{"class":218,"line":348},5,[350,354,359,363,368,373,378],{"type":66,"tag":216,"props":351,"children":352},{"style":235},[353],{"type":71,"value":277},{"type":66,"tag":216,"props":355,"children":356},{"style":280},[357],{"type":71,"value":358}," signInWithOtp ",{"type":66,"tag":216,"props":360,"children":361},{"style":223},[362],{"type":71,"value":248},{"type":66,"tag":216,"props":364,"children":365},{"style":235},[366],{"type":71,"value":367}," async",{"type":66,"tag":216,"props":369,"children":370},{"style":223},[371],{"type":71,"value":372}," ()",{"type":66,"tag":216,"props":374,"children":375},{"style":235},[376],{"type":71,"value":377}," =>",{"type":66,"tag":216,"props":379,"children":380},{"style":223},[381],{"type":71,"value":382}," {\n",{"type":66,"tag":216,"props":384,"children":386},{"class":218,"line":385},6,[387,392,397,402,407,412,418,423,427,432,436,441,445],{"type":66,"tag":216,"props":388,"children":389},{"style":235},[390],{"type":71,"value":391}," const",{"type":66,"tag":216,"props":393,"children":394},{"style":223},[395],{"type":71,"value":396}," {",{"type":66,"tag":216,"props":398,"children":399},{"style":280},[400],{"type":71,"value":401}," error",{"type":66,"tag":216,"props":403,"children":404},{"style":223},[405],{"type":71,"value":406}," }",{"type":66,"tag":216,"props":408,"children":409},{"style":223},[410],{"type":71,"value":411}," =",{"type":66,"tag":216,"props":413,"children":415},{"style":414},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[416],{"type":71,"value":417}," await",{"type":66,"tag":216,"props":419,"children":420},{"style":280},[421],{"type":71,"value":422}," supabase",{"type":66,"tag":216,"props":424,"children":425},{"style":223},[426],{"type":71,"value":92},{"type":66,"tag":216,"props":428,"children":429},{"style":280},[430],{"type":71,"value":431},"auth",{"type":66,"tag":216,"props":433,"children":434},{"style":223},[435],{"type":71,"value":92},{"type":66,"tag":216,"props":437,"children":438},{"style":290},[439],{"type":71,"value":440},"signInWithOtp",{"type":66,"tag":216,"props":442,"children":443},{"style":229},[444],{"type":71,"value":325},{"type":66,"tag":216,"props":446,"children":447},{"style":223},[448],{"type":71,"value":449},"{\n",{"type":66,"tag":216,"props":451,"children":453},{"class":218,"line":452},7,[454,459,464,469,473,478],{"type":66,"tag":216,"props":455,"children":456},{"style":229},[457],{"type":71,"value":458}," email",{"type":66,"tag":216,"props":460,"children":461},{"style":223},[462],{"type":71,"value":463},":",{"type":66,"tag":216,"props":465,"children":466},{"style":280},[467],{"type":71,"value":468}," email",{"type":66,"tag":216,"props":470,"children":471},{"style":223},[472],{"type":71,"value":92},{"type":66,"tag":216,"props":474,"children":475},{"style":280},[476],{"type":71,"value":477},"value",{"type":66,"tag":216,"props":479,"children":480},{"style":223},[481],{"type":71,"value":482},",\n",{"type":66,"tag":216,"props":484,"children":486},{"class":218,"line":485},8,[487,492,496],{"type":66,"tag":216,"props":488,"children":489},{"style":229},[490],{"type":71,"value":491}," options",{"type":66,"tag":216,"props":493,"children":494},{"style":223},[495],{"type":71,"value":463},{"type":66,"tag":216,"props":497,"children":498},{"style":223},[499],{"type":71,"value":382},{"type":66,"tag":216,"props":501,"children":503},{"class":218,"line":502},9,[504,509,513,518,523,528],{"type":66,"tag":216,"props":505,"children":506},{"style":229},[507],{"type":71,"value":508}," emailRedirectTo",{"type":66,"tag":216,"props":510,"children":511},{"style":223},[512],{"type":71,"value":463},{"type":66,"tag":216,"props":514,"children":515},{"style":223},[516],{"type":71,"value":517}," '",{"type":66,"tag":216,"props":519,"children":520},{"style":256},[521],{"type":71,"value":522},"http://localhost:3000/confirm",{"type":66,"tag":216,"props":524,"children":525},{"style":223},[526],{"type":71,"value":527},"'",{"type":66,"tag":216,"props":529,"children":530},{"style":223},[531],{"type":71,"value":482},{"type":66,"tag":216,"props":533,"children":535},{"class":218,"line":534},10,[536],{"type":66,"tag":216,"props":537,"children":538},{"style":223},[539],{"type":71,"value":540}," }\n",{"type":66,"tag":216,"props":542,"children":544},{"class":218,"line":543},11,[545,550],{"type":66,"tag":216,"props":546,"children":547},{"style":223},[548],{"type":71,"value":549}," }",{"type":66,"tag":216,"props":551,"children":552},{"style":229},[553],{"type":71,"value":335},{"type":66,"tag":216,"props":555,"children":557},{"class":218,"line":556},12,[558,563,568,573,578,583,587,592,596,600],{"type":66,"tag":216,"props":559,"children":560},{"style":414},[561],{"type":71,"value":562}," if",{"type":66,"tag":216,"props":564,"children":565},{"style":229},[566],{"type":71,"value":567}," (",{"type":66,"tag":216,"props":569,"children":570},{"style":280},[571],{"type":71,"value":572},"error",{"type":66,"tag":216,"props":574,"children":575},{"style":229},[576],{"type":71,"value":577},") ",{"type":66,"tag":216,"props":579,"children":580},{"style":280},[581],{"type":71,"value":582},"console",{"type":66,"tag":216,"props":584,"children":585},{"style":223},[586],{"type":71,"value":92},{"type":66,"tag":216,"props":588,"children":589},{"style":290},[590],{"type":71,"value":591},"log",{"type":66,"tag":216,"props":593,"children":594},{"style":229},[595],{"type":71,"value":325},{"type":66,"tag":216,"props":597,"children":598},{"style":280},[599],{"type":71,"value":572},{"type":66,"tag":216,"props":601,"children":602},{"style":229},[603],{"type":71,"value":335},{"type":66,"tag":216,"props":605,"children":607},{"class":218,"line":606},13,[608],{"type":66,"tag":216,"props":609,"children":610},{"style":223},[611],{"type":71,"value":612},"}\n",{"type":66,"tag":216,"props":614,"children":616},{"class":218,"line":615},14,[617,622,626],{"type":66,"tag":216,"props":618,"children":619},{"style":223},[620],{"type":71,"value":621},"\u003C/",{"type":66,"tag":216,"props":623,"children":624},{"style":229},[625],{"type":71,"value":232},{"type":66,"tag":216,"props":627,"children":628},{"style":223},[629],{"type":71,"value":268},{"type":66,"tag":216,"props":631,"children":633},{"class":218,"line":632},15,[634,638,643],{"type":66,"tag":216,"props":635,"children":636},{"style":223},[637],{"type":71,"value":226},{"type":66,"tag":216,"props":639,"children":640},{"style":229},[641],{"type":71,"value":642},"template",{"type":66,"tag":216,"props":644,"children":645},{"style":223},[646],{"type":71,"value":268},{"type":66,"tag":216,"props":648,"children":650},{"class":218,"line":649},16,[651,656,661],{"type":66,"tag":216,"props":652,"children":653},{"style":223},[654],{"type":71,"value":655}," \u003C",{"type":66,"tag":216,"props":657,"children":658},{"style":229},[659],{"type":71,"value":660},"div",{"type":66,"tag":216,"props":662,"children":663},{"style":223},[664],{"type":71,"value":268},{"type":66,"tag":216,"props":666,"children":668},{"class":218,"line":667},17,[669,674,679,684,689,693,697,701,705],{"type":66,"tag":216,"props":670,"children":671},{"style":223},[672],{"type":71,"value":673}," \u003C",{"type":66,"tag":216,"props":675,"children":676},{"style":229},[677],{"type":71,"value":678},"button",{"type":66,"tag":216,"props":680,"children":681},{"style":223},[682],{"type":71,"value":683}," @",{"type":66,"tag":216,"props":685,"children":686},{"style":235},[687],{"type":71,"value":688},"click",{"type":66,"tag":216,"props":690,"children":691},{"style":223},[692],{"type":71,"value":248},{"type":66,"tag":216,"props":694,"children":695},{"style":223},[696],{"type":71,"value":253},{"type":66,"tag":216,"props":698,"children":699},{"style":280},[700],{"type":71,"value":440},{"type":66,"tag":216,"props":702,"children":703},{"style":223},[704],{"type":71,"value":253},{"type":66,"tag":216,"props":706,"children":707},{"style":223},[708],{"type":71,"value":268},{"type":66,"tag":216,"props":710,"children":712},{"class":218,"line":711},18,[713],{"type":66,"tag":216,"props":714,"children":715},{"style":280},[716],{"type":71,"value":717}," Sign In with E-Mail\n",{"type":66,"tag":216,"props":719,"children":721},{"class":218,"line":720},19,[722,727,731],{"type":66,"tag":216,"props":723,"children":724},{"style":223},[725],{"type":71,"value":726}," \u003C/",{"type":66,"tag":216,"props":728,"children":729},{"style":229},[730],{"type":71,"value":678},{"type":66,"tag":216,"props":732,"children":733},{"style":223},[734],{"type":71,"value":268},{"type":66,"tag":216,"props":736,"children":738},{"class":218,"line":737},20,[739,743],{"type":66,"tag":216,"props":740,"children":741},{"style":223},[742],{"type":71,"value":673},{"type":66,"tag":216,"props":744,"children":745},{"style":229},[746],{"type":71,"value":747},"input\n",{"type":66,"tag":216,"props":749,"children":751},{"class":218,"line":750},21,[752,757,761,765,770],{"type":66,"tag":216,"props":753,"children":754},{"style":235},[755],{"type":71,"value":756}," v-model",{"type":66,"tag":216,"props":758,"children":759},{"style":223},[760],{"type":71,"value":248},{"type":66,"tag":216,"props":762,"children":763},{"style":223},[764],{"type":71,"value":253},{"type":66,"tag":216,"props":766,"children":767},{"style":280},[768],{"type":71,"value":769},"email",{"type":66,"tag":216,"props":771,"children":772},{"style":223},[773],{"type":71,"value":774},"\"\n",{"type":66,"tag":216,"props":776,"children":778},{"class":218,"line":777},22,[779,784,788,792,796],{"type":66,"tag":216,"props":780,"children":781},{"style":235},[782],{"type":71,"value":783}," type",{"type":66,"tag":216,"props":785,"children":786},{"style":223},[787],{"type":71,"value":248},{"type":66,"tag":216,"props":789,"children":790},{"style":223},[791],{"type":71,"value":253},{"type":66,"tag":216,"props":793,"children":794},{"style":256},[795],{"type":71,"value":769},{"type":66,"tag":216,"props":797,"children":798},{"style":223},[799],{"type":71,"value":774},{"type":66,"tag":216,"props":801,"children":803},{"class":218,"line":802},23,[804],{"type":66,"tag":216,"props":805,"children":806},{"style":223},[807],{"type":71,"value":808}," />\n",{"type":66,"tag":216,"props":810,"children":812},{"class":218,"line":811},24,[813,818,822],{"type":66,"tag":216,"props":814,"children":815},{"style":223},[816],{"type":71,"value":817}," \u003C/",{"type":66,"tag":216,"props":819,"children":820},{"style":229},[821],{"type":71,"value":660},{"type":66,"tag":216,"props":823,"children":824},{"style":223},[825],{"type":71,"value":268},{"type":66,"tag":216,"props":827,"children":829},{"class":218,"line":828},25,[830,834,838],{"type":66,"tag":216,"props":831,"children":832},{"style":223},[833],{"type":71,"value":621},{"type":66,"tag":216,"props":835,"children":836},{"style":229},[837],{"type":71,"value":642},{"type":66,"tag":216,"props":839,"children":840},{"style":223},[841],{"type":71,"value":268},{"type":66,"tag":67,"props":843,"children":844},{},[845,847,852,854,858,860,866],{"type":71,"value":846},"Once the authorization flow is triggered using the ",{"type":66,"tag":99,"props":848,"children":850},{"className":849},[],[851],{"type":71,"value":431},{"type":71,"value":853}," wrapper of the ",{"type":66,"tag":74,"props":855,"children":856},{"href":22},[857],{"type":71,"value":21},{"type":71,"value":859}," composable, the session management is handled automatically and the user will be redirected to the page you specify in the redirect option (",{"type":66,"tag":99,"props":861,"children":863},{"className":862},[],[864],{"type":71,"value":865},"/confirm",{"type":71,"value":867}," by default).",{"type":66,"tag":141,"props":869,"children":871},{"id":870},"confirm-page-confirm",[872,874],{"type":71,"value":873},"Confirm page - ",{"type":66,"tag":99,"props":875,"children":877},{"className":876},[],[878],{"type":71,"value":865},{"type":66,"tag":67,"props":880,"children":881},{},[882],{"type":71,"value":883},"The confirmation page receives the supabase callback. From there you can check the user value and redirect to the appropriate page.",{"type":66,"tag":124,"props":885,"children":886},{"icon":126},[887],{"type":66,"tag":67,"props":888,"children":889},{},[890,892,898],{"type":71,"value":891},"The redirect URL must be configured in your Supabase dashboard under ",{"type":66,"tag":99,"props":893,"children":895},{"className":894},[],[896],{"type":71,"value":897},"Authentication -> URL Configuration -> Redirect URLs",{"type":71,"value":92},{"type":66,"tag":205,"props":900,"children":903},{"className":207,"code":901,"filename":902,"language":210,"meta":59,"style":59},"\u003Cscript setup lang=\"ts\">\nconst user = useSupabaseUser()\n\nwatch(user, () => {\n if (user.value) {\n // Redirect to protected page\n return navigateTo('/')\n }\n}, { immediate: true })\n\u003C/script>\n\n\u003Ctemplate>\n \u003Cdiv>Waiting for login...\u003C/div>\n\u003C/template>\n","pages/confirm.vue",[904],{"type":66,"tag":99,"props":905,"children":906},{"__ignoreMap":59},[907,946,971,978,1008,1040,1049,1083,1091,1126,1141,1148,1163,1196],{"type":66,"tag":216,"props":908,"children":909},{"class":218,"line":219},[910,914,918,922,926,930,934,938,942],{"type":66,"tag":216,"props":911,"children":912},{"style":223},[913],{"type":71,"value":226},{"type":66,"tag":216,"props":915,"children":916},{"style":229},[917],{"type":71,"value":232},{"type":66,"tag":216,"props":919,"children":920},{"style":235},[921],{"type":71,"value":238},{"type":66,"tag":216,"props":923,"children":924},{"style":235},[925],{"type":71,"value":243},{"type":66,"tag":216,"props":927,"children":928},{"style":223},[929],{"type":71,"value":248},{"type":66,"tag":216,"props":931,"children":932},{"style":223},[933],{"type":71,"value":253},{"type":66,"tag":216,"props":935,"children":936},{"style":256},[937],{"type":71,"value":259},{"type":66,"tag":216,"props":939,"children":940},{"style":223},[941],{"type":71,"value":253},{"type":66,"tag":216,"props":943,"children":944},{"style":223},[945],{"type":71,"value":268},{"type":66,"tag":216,"props":947,"children":948},{"class":218,"line":271},[949,953,958,962,967],{"type":66,"tag":216,"props":950,"children":951},{"style":235},[952],{"type":71,"value":277},{"type":66,"tag":216,"props":954,"children":955},{"style":280},[956],{"type":71,"value":957}," user ",{"type":66,"tag":216,"props":959,"children":960},{"style":223},[961],{"type":71,"value":248},{"type":66,"tag":216,"props":963,"children":964},{"style":290},[965],{"type":71,"value":966}," useSupabaseUser",{"type":66,"tag":216,"props":968,"children":969},{"style":280},[970],{"type":71,"value":298},{"type":66,"tag":216,"props":972,"children":973},{"class":218,"line":301},[974],{"type":66,"tag":216,"props":975,"children":976},{"emptyLinePlaceholder":342},[977],{"type":71,"value":345},{"type":66,"tag":216,"props":979,"children":980},{"class":218,"line":338},[981,986,991,996,1000,1004],{"type":66,"tag":216,"props":982,"children":983},{"style":290},[984],{"type":71,"value":985},"watch",{"type":66,"tag":216,"props":987,"children":988},{"style":280},[989],{"type":71,"value":990},"(user",{"type":66,"tag":216,"props":992,"children":993},{"style":223},[994],{"type":71,"value":995},",",{"type":66,"tag":216,"props":997,"children":998},{"style":223},[999],{"type":71,"value":372},{"type":66,"tag":216,"props":1001,"children":1002},{"style":235},[1003],{"type":71,"value":377},{"type":66,"tag":216,"props":1005,"children":1006},{"style":223},[1007],{"type":71,"value":382},{"type":66,"tag":216,"props":1009,"children":1010},{"class":218,"line":348},[1011,1015,1019,1024,1028,1032,1036],{"type":66,"tag":216,"props":1012,"children":1013},{"style":414},[1014],{"type":71,"value":562},{"type":66,"tag":216,"props":1016,"children":1017},{"style":229},[1018],{"type":71,"value":567},{"type":66,"tag":216,"props":1020,"children":1021},{"style":280},[1022],{"type":71,"value":1023},"user",{"type":66,"tag":216,"props":1025,"children":1026},{"style":223},[1027],{"type":71,"value":92},{"type":66,"tag":216,"props":1029,"children":1030},{"style":280},[1031],{"type":71,"value":477},{"type":66,"tag":216,"props":1033,"children":1034},{"style":229},[1035],{"type":71,"value":577},{"type":66,"tag":216,"props":1037,"children":1038},{"style":223},[1039],{"type":71,"value":449},{"type":66,"tag":216,"props":1041,"children":1042},{"class":218,"line":385},[1043],{"type":66,"tag":216,"props":1044,"children":1046},{"style":1045},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[1047],{"type":71,"value":1048}," // Redirect to protected page\n",{"type":66,"tag":216,"props":1050,"children":1051},{"class":218,"line":452},[1052,1057,1062,1066,1070,1075,1079],{"type":66,"tag":216,"props":1053,"children":1054},{"style":414},[1055],{"type":71,"value":1056}," return",{"type":66,"tag":216,"props":1058,"children":1059},{"style":290},[1060],{"type":71,"value":1061}," navigateTo",{"type":66,"tag":216,"props":1063,"children":1064},{"style":229},[1065],{"type":71,"value":325},{"type":66,"tag":216,"props":1067,"children":1068},{"style":223},[1069],{"type":71,"value":527},{"type":66,"tag":216,"props":1071,"children":1072},{"style":256},[1073],{"type":71,"value":1074},"/",{"type":66,"tag":216,"props":1076,"children":1077},{"style":223},[1078],{"type":71,"value":527},{"type":66,"tag":216,"props":1080,"children":1081},{"style":229},[1082],{"type":71,"value":335},{"type":66,"tag":216,"props":1084,"children":1085},{"class":218,"line":485},[1086],{"type":66,"tag":216,"props":1087,"children":1088},{"style":223},[1089],{"type":71,"value":1090}," }\n",{"type":66,"tag":216,"props":1092,"children":1093},{"class":218,"line":502},[1094,1099,1103,1108,1112,1118,1122],{"type":66,"tag":216,"props":1095,"children":1096},{"style":223},[1097],{"type":71,"value":1098},"},",{"type":66,"tag":216,"props":1100,"children":1101},{"style":223},[1102],{"type":71,"value":396},{"type":66,"tag":216,"props":1104,"children":1105},{"style":229},[1106],{"type":71,"value":1107}," immediate",{"type":66,"tag":216,"props":1109,"children":1110},{"style":223},[1111],{"type":71,"value":463},{"type":66,"tag":216,"props":1113,"children":1115},{"style":1114},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[1116],{"type":71,"value":1117}," true",{"type":66,"tag":216,"props":1119,"children":1120},{"style":223},[1121],{"type":71,"value":406},{"type":66,"tag":216,"props":1123,"children":1124},{"style":280},[1125],{"type":71,"value":335},{"type":66,"tag":216,"props":1127,"children":1128},{"class":218,"line":534},[1129,1133,1137],{"type":66,"tag":216,"props":1130,"children":1131},{"style":223},[1132],{"type":71,"value":621},{"type":66,"tag":216,"props":1134,"children":1135},{"style":229},[1136],{"type":71,"value":232},{"type":66,"tag":216,"props":1138,"children":1139},{"style":223},[1140],{"type":71,"value":268},{"type":66,"tag":216,"props":1142,"children":1143},{"class":218,"line":543},[1144],{"type":66,"tag":216,"props":1145,"children":1146},{"emptyLinePlaceholder":342},[1147],{"type":71,"value":345},{"type":66,"tag":216,"props":1149,"children":1150},{"class":218,"line":556},[1151,1155,1159],{"type":66,"tag":216,"props":1152,"children":1153},{"style":223},[1154],{"type":71,"value":226},{"type":66,"tag":216,"props":1156,"children":1157},{"style":229},[1158],{"type":71,"value":642},{"type":66,"tag":216,"props":1160,"children":1161},{"style":223},[1162],{"type":71,"value":268},{"type":66,"tag":216,"props":1164,"children":1165},{"class":218,"line":606},[1166,1170,1174,1179,1184,1188,1192],{"type":66,"tag":216,"props":1167,"children":1168},{"style":223},[1169],{"type":71,"value":655},{"type":66,"tag":216,"props":1171,"children":1172},{"style":229},[1173],{"type":71,"value":660},{"type":66,"tag":216,"props":1175,"children":1176},{"style":223},[1177],{"type":71,"value":1178},">",{"type":66,"tag":216,"props":1180,"children":1181},{"style":280},[1182],{"type":71,"value":1183},"Waiting for login...",{"type":66,"tag":216,"props":1185,"children":1186},{"style":223},[1187],{"type":71,"value":621},{"type":66,"tag":216,"props":1189,"children":1190},{"style":229},[1191],{"type":71,"value":660},{"type":66,"tag":216,"props":1193,"children":1194},{"style":223},[1195],{"type":71,"value":268},{"type":66,"tag":216,"props":1197,"children":1198},{"class":218,"line":615},[1199,1203,1207],{"type":66,"tag":216,"props":1200,"children":1201},{"style":223},[1202],{"type":71,"value":621},{"type":66,"tag":216,"props":1204,"children":1205},{"style":229},[1206],{"type":71,"value":642},{"type":66,"tag":216,"props":1208,"children":1209},{"style":223},[1210],{"type":71,"value":268},{"type":66,"tag":1212,"props":1213,"children":1215},"h3",{"id":1214},"redirect-path",[1216],{"type":71,"value":1217},"Redirect path",{"type":66,"tag":67,"props":1219,"children":1220},{},[1221],{"type":71,"value":1222},"You can easily handle redirection to the initial requested route after login.",{"type":66,"tag":124,"props":1224,"children":1225},{"icon":126},[1226],{"type":66,"tag":67,"props":1227,"children":1228},{},[1229,1231,1237,1239,1244],{"type":71,"value":1230},"You must enable the ",{"type":66,"tag":99,"props":1232,"children":1234},{"className":1233},[],[1235],{"type":71,"value":1236},"cookieRedirect",{"type":71,"value":1238}," option of the ",{"type":66,"tag":74,"props":1240,"children":1241},{"href":160},[1242],{"type":71,"value":1243},"redirectOptions",{"type":71,"value":1245}," to allow cookie storage and take benefit of this feature.",{"type":66,"tag":205,"props":1247,"children":1249},{"className":207,"code":1248,"filename":902,"language":210,"meta":59,"style":59},"\u003Cscript setup lang=\"ts\">\nconst user = useSupabaseUser()\n\n// Get redirect path from cookies\nconst cookieName = useRuntimeConfig().public.supabase.cookieName\nconst redirectPath = useCookie(`${cookieName}-redirect-path`).value\n\nwatch(user, () => {\n if (user.value) {\n // Clear cookie\n useCookie(`${cookieName}-redirect-path`).value = null\n // Redirect to path\n return navigateTo(redirectPath || '/'); \n }\n}, { immediate: true })\n\u003C/script>\n\u003Ctemplate>\n \u003Cdiv>Waiting for login...\u003C/div>\n\u003C/template>\n",[1250],{"type":66,"tag":99,"props":1251,"children":1252},{"__ignoreMap":59},[1253,1292,1315,1322,1330,1383,1447,1454,1481,1512,1520,1573,1581,1632,1639,1670,1685,1700,1731],{"type":66,"tag":216,"props":1254,"children":1255},{"class":218,"line":219},[1256,1260,1264,1268,1272,1276,1280,1284,1288],{"type":66,"tag":216,"props":1257,"children":1258},{"style":223},[1259],{"type":71,"value":226},{"type":66,"tag":216,"props":1261,"children":1262},{"style":229},[1263],{"type":71,"value":232},{"type":66,"tag":216,"props":1265,"children":1266},{"style":235},[1267],{"type":71,"value":238},{"type":66,"tag":216,"props":1269,"children":1270},{"style":235},[1271],{"type":71,"value":243},{"type":66,"tag":216,"props":1273,"children":1274},{"style":223},[1275],{"type":71,"value":248},{"type":66,"tag":216,"props":1277,"children":1278},{"style":223},[1279],{"type":71,"value":253},{"type":66,"tag":216,"props":1281,"children":1282},{"style":256},[1283],{"type":71,"value":259},{"type":66,"tag":216,"props":1285,"children":1286},{"style":223},[1287],{"type":71,"value":253},{"type":66,"tag":216,"props":1289,"children":1290},{"style":223},[1291],{"type":71,"value":268},{"type":66,"tag":216,"props":1293,"children":1294},{"class":218,"line":271},[1295,1299,1303,1307,1311],{"type":66,"tag":216,"props":1296,"children":1297},{"style":235},[1298],{"type":71,"value":277},{"type":66,"tag":216,"props":1300,"children":1301},{"style":280},[1302],{"type":71,"value":957},{"type":66,"tag":216,"props":1304,"children":1305},{"style":223},[1306],{"type":71,"value":248},{"type":66,"tag":216,"props":1308,"children":1309},{"style":290},[1310],{"type":71,"value":966},{"type":66,"tag":216,"props":1312,"children":1313},{"style":280},[1314],{"type":71,"value":298},{"type":66,"tag":216,"props":1316,"children":1317},{"class":218,"line":301},[1318],{"type":66,"tag":216,"props":1319,"children":1320},{"emptyLinePlaceholder":342},[1321],{"type":71,"value":345},{"type":66,"tag":216,"props":1323,"children":1324},{"class":218,"line":338},[1325],{"type":66,"tag":216,"props":1326,"children":1327},{"style":1045},[1328],{"type":71,"value":1329},"// Get redirect path from cookies\n",{"type":66,"tag":216,"props":1331,"children":1332},{"class":218,"line":348},[1333,1337,1342,1346,1351,1356,1360,1365,1369,1374,1378],{"type":66,"tag":216,"props":1334,"children":1335},{"style":235},[1336],{"type":71,"value":277},{"type":66,"tag":216,"props":1338,"children":1339},{"style":280},[1340],{"type":71,"value":1341}," cookieName ",{"type":66,"tag":216,"props":1343,"children":1344},{"style":223},[1345],{"type":71,"value":248},{"type":66,"tag":216,"props":1347,"children":1348},{"style":290},[1349],{"type":71,"value":1350}," useRuntimeConfig",{"type":66,"tag":216,"props":1352,"children":1353},{"style":280},[1354],{"type":71,"value":1355},"()",{"type":66,"tag":216,"props":1357,"children":1358},{"style":223},[1359],{"type":71,"value":92},{"type":66,"tag":216,"props":1361,"children":1362},{"style":280},[1363],{"type":71,"value":1364},"public",{"type":66,"tag":216,"props":1366,"children":1367},{"style":223},[1368],{"type":71,"value":92},{"type":66,"tag":216,"props":1370,"children":1371},{"style":280},[1372],{"type":71,"value":1373},"supabase",{"type":66,"tag":216,"props":1375,"children":1376},{"style":223},[1377],{"type":71,"value":92},{"type":66,"tag":216,"props":1379,"children":1380},{"style":280},[1381],{"type":71,"value":1382},"cookieName\n",{"type":66,"tag":216,"props":1384,"children":1385},{"class":218,"line":385},[1386,1390,1395,1399,1404,1408,1413,1418,1423,1428,1433,1438,1442],{"type":66,"tag":216,"props":1387,"children":1388},{"style":235},[1389],{"type":71,"value":277},{"type":66,"tag":216,"props":1391,"children":1392},{"style":280},[1393],{"type":71,"value":1394}," redirectPath ",{"type":66,"tag":216,"props":1396,"children":1397},{"style":223},[1398],{"type":71,"value":248},{"type":66,"tag":216,"props":1400,"children":1401},{"style":290},[1402],{"type":71,"value":1403}," useCookie",{"type":66,"tag":216,"props":1405,"children":1406},{"style":280},[1407],{"type":71,"value":325},{"type":66,"tag":216,"props":1409,"children":1410},{"style":223},[1411],{"type":71,"value":1412},"`${",{"type":66,"tag":216,"props":1414,"children":1415},{"style":280},[1416],{"type":71,"value":1417},"cookieName",{"type":66,"tag":216,"props":1419,"children":1420},{"style":223},[1421],{"type":71,"value":1422},"}",{"type":66,"tag":216,"props":1424,"children":1425},{"style":256},[1426],{"type":71,"value":1427},"-redirect-path",{"type":66,"tag":216,"props":1429,"children":1430},{"style":223},[1431],{"type":71,"value":1432},"`",{"type":66,"tag":216,"props":1434,"children":1435},{"style":280},[1436],{"type":71,"value":1437},")",{"type":66,"tag":216,"props":1439,"children":1440},{"style":223},[1441],{"type":71,"value":92},{"type":66,"tag":216,"props":1443,"children":1444},{"style":280},[1445],{"type":71,"value":1446},"value\n",{"type":66,"tag":216,"props":1448,"children":1449},{"class":218,"line":452},[1450],{"type":66,"tag":216,"props":1451,"children":1452},{"emptyLinePlaceholder":342},[1453],{"type":71,"value":345},{"type":66,"tag":216,"props":1455,"children":1456},{"class":218,"line":485},[1457,1461,1465,1469,1473,1477],{"type":66,"tag":216,"props":1458,"children":1459},{"style":290},[1460],{"type":71,"value":985},{"type":66,"tag":216,"props":1462,"children":1463},{"style":280},[1464],{"type":71,"value":990},{"type":66,"tag":216,"props":1466,"children":1467},{"style":223},[1468],{"type":71,"value":995},{"type":66,"tag":216,"props":1470,"children":1471},{"style":223},[1472],{"type":71,"value":372},{"type":66,"tag":216,"props":1474,"children":1475},{"style":235},[1476],{"type":71,"value":377},{"type":66,"tag":216,"props":1478,"children":1479},{"style":223},[1480],{"type":71,"value":382},{"type":66,"tag":216,"props":1482,"children":1483},{"class":218,"line":502},[1484,1488,1492,1496,1500,1504,1508],{"type":66,"tag":216,"props":1485,"children":1486},{"style":414},[1487],{"type":71,"value":562},{"type":66,"tag":216,"props":1489,"children":1490},{"style":229},[1491],{"type":71,"value":567},{"type":66,"tag":216,"props":1493,"children":1494},{"style":280},[1495],{"type":71,"value":1023},{"type":66,"tag":216,"props":1497,"children":1498},{"style":223},[1499],{"type":71,"value":92},{"type":66,"tag":216,"props":1501,"children":1502},{"style":280},[1503],{"type":71,"value":477},{"type":66,"tag":216,"props":1505,"children":1506},{"style":229},[1507],{"type":71,"value":577},{"type":66,"tag":216,"props":1509,"children":1510},{"style":223},[1511],{"type":71,"value":449},{"type":66,"tag":216,"props":1513,"children":1514},{"class":218,"line":534},[1515],{"type":66,"tag":216,"props":1516,"children":1517},{"style":1045},[1518],{"type":71,"value":1519}," // Clear cookie\n",{"type":66,"tag":216,"props":1521,"children":1522},{"class":218,"line":543},[1523,1528,1532,1536,1540,1544,1548,1552,1556,1560,1564,1568],{"type":66,"tag":216,"props":1524,"children":1525},{"style":290},[1526],{"type":71,"value":1527}," useCookie",{"type":66,"tag":216,"props":1529,"children":1530},{"style":229},[1531],{"type":71,"value":325},{"type":66,"tag":216,"props":1533,"children":1534},{"style":223},[1535],{"type":71,"value":1412},{"type":66,"tag":216,"props":1537,"children":1538},{"style":280},[1539],{"type":71,"value":1417},{"type":66,"tag":216,"props":1541,"children":1542},{"style":223},[1543],{"type":71,"value":1422},{"type":66,"tag":216,"props":1545,"children":1546},{"style":256},[1547],{"type":71,"value":1427},{"type":66,"tag":216,"props":1549,"children":1550},{"style":223},[1551],{"type":71,"value":1432},{"type":66,"tag":216,"props":1553,"children":1554},{"style":229},[1555],{"type":71,"value":1437},{"type":66,"tag":216,"props":1557,"children":1558},{"style":223},[1559],{"type":71,"value":92},{"type":66,"tag":216,"props":1561,"children":1562},{"style":280},[1563],{"type":71,"value":477},{"type":66,"tag":216,"props":1565,"children":1566},{"style":223},[1567],{"type":71,"value":411},{"type":66,"tag":216,"props":1569,"children":1570},{"style":223},[1571],{"type":71,"value":1572}," null\n",{"type":66,"tag":216,"props":1574,"children":1575},{"class":218,"line":556},[1576],{"type":66,"tag":216,"props":1577,"children":1578},{"style":1045},[1579],{"type":71,"value":1580}," // Redirect to path\n",{"type":66,"tag":216,"props":1582,"children":1583},{"class":218,"line":606},[1584,1588,1592,1596,1601,1606,1610,1614,1618,1622,1627],{"type":66,"tag":216,"props":1585,"children":1586},{"style":414},[1587],{"type":71,"value":1056},{"type":66,"tag":216,"props":1589,"children":1590},{"style":290},[1591],{"type":71,"value":1061},{"type":66,"tag":216,"props":1593,"children":1594},{"style":229},[1595],{"type":71,"value":325},{"type":66,"tag":216,"props":1597,"children":1598},{"style":280},[1599],{"type":71,"value":1600},"redirectPath",{"type":66,"tag":216,"props":1602,"children":1603},{"style":223},[1604],{"type":71,"value":1605}," ||",{"type":66,"tag":216,"props":1607,"children":1608},{"style":223},[1609],{"type":71,"value":517},{"type":66,"tag":216,"props":1611,"children":1612},{"style":256},[1613],{"type":71,"value":1074},{"type":66,"tag":216,"props":1615,"children":1616},{"style":223},[1617],{"type":71,"value":527},{"type":66,"tag":216,"props":1619,"children":1620},{"style":229},[1621],{"type":71,"value":1437},{"type":66,"tag":216,"props":1623,"children":1624},{"style":223},[1625],{"type":71,"value":1626},";",{"type":66,"tag":216,"props":1628,"children":1629},{"style":229},[1630],{"type":71,"value":1631}," \n",{"type":66,"tag":216,"props":1633,"children":1634},{"class":218,"line":615},[1635],{"type":66,"tag":216,"props":1636,"children":1637},{"style":223},[1638],{"type":71,"value":1090},{"type":66,"tag":216,"props":1640,"children":1641},{"class":218,"line":632},[1642,1646,1650,1654,1658,1662,1666],{"type":66,"tag":216,"props":1643,"children":1644},{"style":223},[1645],{"type":71,"value":1098},{"type":66,"tag":216,"props":1647,"children":1648},{"style":223},[1649],{"type":71,"value":396},{"type":66,"tag":216,"props":1651,"children":1652},{"style":229},[1653],{"type":71,"value":1107},{"type":66,"tag":216,"props":1655,"children":1656},{"style":223},[1657],{"type":71,"value":463},{"type":66,"tag":216,"props":1659,"children":1660},{"style":1114},[1661],{"type":71,"value":1117},{"type":66,"tag":216,"props":1663,"children":1664},{"style":223},[1665],{"type":71,"value":406},{"type":66,"tag":216,"props":1667,"children":1668},{"style":280},[1669],{"type":71,"value":335},{"type":66,"tag":216,"props":1671,"children":1672},{"class":218,"line":649},[1673,1677,1681],{"type":66,"tag":216,"props":1674,"children":1675},{"style":223},[1676],{"type":71,"value":621},{"type":66,"tag":216,"props":1678,"children":1679},{"style":229},[1680],{"type":71,"value":232},{"type":66,"tag":216,"props":1682,"children":1683},{"style":223},[1684],{"type":71,"value":268},{"type":66,"tag":216,"props":1686,"children":1687},{"class":218,"line":667},[1688,1692,1696],{"type":66,"tag":216,"props":1689,"children":1690},{"style":223},[1691],{"type":71,"value":226},{"type":66,"tag":216,"props":1693,"children":1694},{"style":229},[1695],{"type":71,"value":642},{"type":66,"tag":216,"props":1697,"children":1698},{"style":223},[1699],{"type":71,"value":268},{"type":66,"tag":216,"props":1701,"children":1702},{"class":218,"line":711},[1703,1707,1711,1715,1719,1723,1727],{"type":66,"tag":216,"props":1704,"children":1705},{"style":223},[1706],{"type":71,"value":655},{"type":66,"tag":216,"props":1708,"children":1709},{"style":229},[1710],{"type":71,"value":660},{"type":66,"tag":216,"props":1712,"children":1713},{"style":223},[1714],{"type":71,"value":1178},{"type":66,"tag":216,"props":1716,"children":1717},{"style":280},[1718],{"type":71,"value":1183},{"type":66,"tag":216,"props":1720,"children":1721},{"style":223},[1722],{"type":71,"value":621},{"type":66,"tag":216,"props":1724,"children":1725},{"style":229},[1726],{"type":71,"value":660},{"type":66,"tag":216,"props":1728,"children":1729},{"style":223},[1730],{"type":71,"value":268},{"type":66,"tag":216,"props":1732,"children":1733},{"class":218,"line":720},[1734,1738,1742],{"type":66,"tag":216,"props":1735,"children":1736},{"style":223},[1737],{"type":71,"value":621},{"type":66,"tag":216,"props":1739,"children":1740},{"style":229},[1741],{"type":71,"value":642},{"type":66,"tag":216,"props":1743,"children":1744},{"style":223},[1745],{"type":71,"value":268},{"type":66,"tag":1747,"props":1748,"children":1749},"style",{},[1750],{"type":71,"value":1751},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":59,"searchDepth":271,"depth":271,"links":1753},[1754,1756],{"id":143,"depth":271,"text":1755},"Log-in page - /login",{"id":870,"depth":271,"text":1757,"children":1758},"Confirm page - /confirm",[1759],{"id":1214,"depth":301,"text":1217},"markdown","content:3.authentication.md","content","3.authentication.md","3.authentication","md",[1767,1769],{"_path":6,"title":5,"description":1768},"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.",{"_path":22,"title":21,"description":1770},"Make requests to the Supabase API with the useSupabaseClient composable",1734518135818] \ No newline at end of file diff --git a/authentication/index.html b/authentication/index.html index 625d33463..f58611f0d 100644 --- a/authentication/index.html +++ b/authentication/index.html @@ -61,7 +61,7 @@ - + @@ -165,5 +165,5 @@ <div>Waiting for login...</div> </template>
Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/changelog/_payload.json b/changelog/_payload.json index 5f589c9f0..0f2b8ef8c 100644 --- a/changelog/_payload.json +++ b/changelog/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":5119},["ShallowReactive",2],{"navigation":3,"/changelog":58,"/changelog-surround":86,"releases":91},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":52,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":51,"description":61,"icon":53,"body":62,"_type":80,"_id":81,"_source":82,"_file":83,"_stem":84,"_extension":85},"",false,"Discover the latest updates of the Supabase Module",{"type":63,"children":64,"toc":77},"root",[65,73],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70],{"type":71,"value":72},"text","Discover the lastest updates.",{"type":66,"tag":74,"props":75,"children":76},"releases",{},[],{"title":59,"searchDepth":78,"depth":78,"links":79},2,[],"markdown","content:6.changelog.md","content","6.changelog.md","6.changelog","md",[87,89],{"_path":48,"title":47,"description":88},"Demonstration of using Supabase with Nuxt.",{"_path":56,"title":55,"description":90},"Discover our kaban board for the next release of the Supabase module.",[92,201,248,373,555,615,667,738,969,1025,1125,1221,1325,1450,1624,1692,1798,2038,2131,2435,2537,2614,2680,2979,3253,3326,3458,3503,3563,3615,3761,3860,3923,3974,4019,4071,4184,4260,4338,4402,4487,4589,4695,4811,4845,4909,4973,5061],{"name":93,"tag_name":93,"date":94,"body":95,"v":192,"url":193,"tarball":194,"zipball":195,"prerelease":60,"author":196,"title":59,"description":59,"_type":80,"_id":200},"v1.4.3","2024-11-20T10:32:56Z",{"type":63,"children":96,"toc":185},[97,104,111,154,166,172],{"type":66,"tag":98,"props":99,"children":101},"h2",{"id":100},"whats-changed",[102],{"type":71,"value":103},"What's Changed",{"type":66,"tag":105,"props":106,"children":108},"h3",{"id":107},"refactor",[109],{"type":71,"value":110},"Refactor",{"type":66,"tag":112,"props":113,"children":114},"ul",{},[115],{"type":66,"tag":116,"props":117,"children":118},"li",{},[119,125,127,136,138],{"type":66,"tag":120,"props":121,"children":122},"strong",{},[123],{"type":71,"value":124},"client:",{"type":71,"value":126}," inject earlier (",{"type":66,"tag":128,"props":129,"children":133},"a",{"href":130,"rel":131},"https://github.com/nuxt-modules/supabase/pull/433",[132],"nofollow",[134],{"type":71,"value":135},"#433",{"type":71,"value":137},") ",{"type":66,"tag":139,"props":140,"children":141},"span",{},[142],{"type":66,"tag":128,"props":143,"children":146},{"href":144,"rel":145},"https://github.com/nuxt-modules/supabase/commit/6a5bb33cc36ee287d83b4f020bd2837496183128",[132],[147],{"type":66,"tag":148,"props":149,"children":151},"code",{"className":150},[],[152],{"type":71,"value":153},"6a5bb33",{"type":66,"tag":67,"props":155,"children":156},{},[157,164],{"type":66,"tag":128,"props":158,"children":161},{"href":159,"rel":160},"https://github.com/nuxt-community/supabase-module/compare/v1.4.2...v1.4.3",[132],[162],{"type":71,"value":163},"Full changelog",{"type":71,"value":165}," (2024-11-20)",{"type":66,"tag":98,"props":167,"children":169},{"id":168},"contributors",[170],{"type":71,"value":171},"Contributors 💚",{"type":66,"tag":67,"props":173,"children":174},{},[175],{"type":66,"tag":128,"props":176,"children":179},{"href":177,"rel":178},"https://github.com/felixgabler",[132],[180],{"type":66,"tag":120,"props":181,"children":182},{},[183],{"type":71,"value":184},"@felixgabler",{"title":59,"searchDepth":78,"depth":78,"links":186},[187,191],{"id":100,"depth":78,"text":103,"children":188},[189],{"id":107,"depth":190,"text":110},3,{"id":168,"depth":78,"text":171},1,"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.3",{"name":197,"url":198,"avatar":199},"larbish","https://github.com/larbish","https://avatars.githubusercontent.com/u/7290030?v=4","github:v1.4.3.md",{"name":202,"tag_name":202,"date":203,"body":204,"v":192,"url":240,"tarball":241,"zipball":242,"prerelease":60,"reactions":243,"author":246,"title":59,"description":59,"_type":80,"_id":247},"v1.4.2","2024-11-07T09:13:16Z",{"type":63,"children":205,"toc":236},[206,210,221,225],{"type":66,"tag":98,"props":207,"children":208},{"id":100},[209],{"type":71,"value":103},{"type":66,"tag":67,"props":211,"children":212},{},[213,219],{"type":66,"tag":128,"props":214,"children":217},{"href":215,"rel":216},"https://github.com/nuxt-community/supabase-module/compare/v1.4.1...v1.4.2",[132],[218],{"type":71,"value":163},{"type":71,"value":220}," (2024-11-07)",{"type":66,"tag":98,"props":222,"children":223},{"id":168},[224],{"type":71,"value":171},{"type":66,"tag":67,"props":226,"children":227},{},[228],{"type":66,"tag":128,"props":229,"children":231},{"href":177,"rel":230},[132],[232],{"type":66,"tag":120,"props":233,"children":234},{},[235],{"type":71,"value":184},{"title":59,"searchDepth":78,"depth":78,"links":237},[238,239],{"id":100,"depth":78,"text":103},{"id":168,"depth":78,"text":171},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.2",{"url":244,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":192,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/184098070/reactions",0,{"name":197,"url":198,"avatar":199},"github:v1.4.2.md",{"name":249,"tag_name":249,"date":250,"body":251,"v":192,"url":368,"tarball":369,"zipball":370,"prerelease":60,"author":371,"title":59,"description":59,"_type":80,"_id":372},"v1.4.1","2024-10-11T07:57:46Z",{"type":63,"children":252,"toc":362},[253,257,263,334,345,349],{"type":66,"tag":98,"props":254,"children":255},{"id":100},[256],{"type":71,"value":103},{"type":66,"tag":105,"props":258,"children":260},{"id":259},"bug-fixes",[261],{"type":71,"value":262},"Bug Fixes",{"type":66,"tag":112,"props":264,"children":265},{},[266,294],{"type":66,"tag":116,"props":267,"children":268},{},[269,274,276,283,285,292],{"type":66,"tag":120,"props":270,"children":271},{},[272],{"type":71,"value":273},"session:",{"type":71,"value":275}," ssr getSession warning (",{"type":66,"tag":128,"props":277,"children":280},{"href":278,"rel":279},"https://github.com/nuxt-community/supabase-module/issues/418",[132],[281],{"type":71,"value":282},"#418",{"type":71,"value":284},") (",{"type":66,"tag":128,"props":286,"children":289},{"href":287,"rel":288},"https://github.com/nuxt-community/supabase-module/commit/95d905b9b1f54a3aa15b3e4e583151cfcf00878f",[132],[290],{"type":71,"value":291},"95d905b",{"type":71,"value":293},")",{"type":66,"tag":116,"props":295,"children":296},{},[297,302,304,309,311,316,318,325,326,333],{"type":66,"tag":120,"props":298,"children":299},{},[300],{"type":71,"value":301},"types:",{"type":71,"value":303}," added explicit types annotations for ",{"type":66,"tag":148,"props":305,"children":307},{"className":306},[],[308],{"type":71,"value":34},{"type":71,"value":310}," and ",{"type":66,"tag":148,"props":312,"children":314},{"className":313},[],[315],{"type":71,"value":37},{"type":71,"value":317}," (",{"type":66,"tag":128,"props":319,"children":322},{"href":320,"rel":321},"https://github.com/nuxt-community/supabase-module/issues/411",[132],[323],{"type":71,"value":324},"#411",{"type":71,"value":284},{"type":66,"tag":128,"props":327,"children":330},{"href":328,"rel":329},"https://github.com/nuxt-community/supabase-module/commit/3f9864069b758bd945b30c1eebaba618b4bfd95e",[132],[331],{"type":71,"value":332},"3f98640",{"type":71,"value":293},{"type":66,"tag":67,"props":335,"children":336},{},[337,343],{"type":66,"tag":128,"props":338,"children":341},{"href":339,"rel":340},"https://github.com/nuxt-community/supabase-module/compare/v1.4.0...v1.4.1",[132],[342],{"type":71,"value":163},{"type":71,"value":344}," (2024-08-30)",{"type":66,"tag":98,"props":346,"children":347},{"id":168},[348],{"type":71,"value":171},{"type":66,"tag":67,"props":350,"children":351},{},[352],{"type":66,"tag":128,"props":353,"children":356},{"href":354,"rel":355},"https://github.com/th1m0",[132],[357],{"type":66,"tag":120,"props":358,"children":359},{},[360],{"type":71,"value":361},"@th1m0",{"title":59,"searchDepth":78,"depth":78,"links":363},[364,367],{"id":100,"depth":78,"text":103,"children":365},[366],{"id":259,"depth":190,"text":262},{"id":168,"depth":78,"text":171},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.1",{"name":197,"url":198,"avatar":199},"github:v1.4.1.md",{"name":374,"tag_name":374,"date":375,"body":376,"v":192,"url":548,"tarball":549,"zipball":550,"prerelease":60,"reactions":551,"author":553,"title":59,"description":59,"_type":80,"_id":554},"v1.4.0","2024-08-30T12:31:31Z",{"type":63,"children":377,"toc":541},[378,382,386,472,478,506,516,520],{"type":66,"tag":98,"props":379,"children":380},{"id":100},[381],{"type":71,"value":103},{"type":66,"tag":105,"props":383,"children":384},{"id":259},[385],{"type":71,"value":262},{"type":66,"tag":112,"props":387,"children":388},{},[389,414,447],{"type":66,"tag":116,"props":390,"children":391},{},[392,396,398,405,406,413],{"type":66,"tag":120,"props":393,"children":394},{},[395],{"type":71,"value":301},{"type":71,"value":397}," add explicit type annotations for plugins (",{"type":66,"tag":128,"props":399,"children":402},{"href":400,"rel":401},"https://github.com/nuxt-community/supabase-module/issues/408",[132],[403],{"type":71,"value":404},"#408",{"type":71,"value":284},{"type":66,"tag":128,"props":407,"children":410},{"href":408,"rel":409},"https://github.com/nuxt-community/supabase-module/commit/09bff844d29cfb788cb334860202e2e14a5da2a9",[132],[411],{"type":71,"value":412},"09bff84",{"type":71,"value":293},{"type":66,"tag":116,"props":415,"children":416},{},[417,421,423,429,431,438,439,446],{"type":66,"tag":120,"props":418,"children":419},{},[420],{"type":71,"value":301},{"type":71,"value":422}," add explicit types for composables & remove ",{"type":66,"tag":148,"props":424,"children":426},{"className":425},[],[427],{"type":71,"value":428},"baseUrl",{"type":71,"value":430}," from tsconfig (",{"type":66,"tag":128,"props":432,"children":435},{"href":433,"rel":434},"https://github.com/nuxt-community/supabase-module/issues/404",[132],[436],{"type":71,"value":437},"#404",{"type":71,"value":284},{"type":66,"tag":128,"props":440,"children":443},{"href":441,"rel":442},"https://github.com/nuxt-community/supabase-module/commit/596ece2460e7b4d08bcb2ac2322c10912e0a5977",[132],[444],{"type":71,"value":445},"596ece2",{"type":71,"value":293},{"type":66,"tag":116,"props":448,"children":449},{},[450,454,456,463,464,471],{"type":66,"tag":120,"props":451,"children":452},{},[453],{"type":71,"value":301},{"type":71,"value":455}," nullable composable types (",{"type":66,"tag":128,"props":457,"children":460},{"href":458,"rel":459},"https://github.com/nuxt-community/supabase-module/issues/407",[132],[461],{"type":71,"value":462},"#407",{"type":71,"value":284},{"type":66,"tag":128,"props":465,"children":468},{"href":466,"rel":467},"https://github.com/nuxt-community/supabase-module/commit/cbbfd86150bba779743dd7c02341b97484d4cc49",[132],[469],{"type":71,"value":470},"cbbfd86",{"type":71,"value":293},{"type":66,"tag":105,"props":473,"children":475},{"id":474},"features",[476],{"type":71,"value":477},"Features",{"type":66,"tag":112,"props":479,"children":480},{},[481],{"type":66,"tag":116,"props":482,"children":483},{},[484,488,490,497,498,505],{"type":66,"tag":120,"props":485,"children":486},{},[487],{"type":71,"value":124},{"type":71,"value":489}," add retries to fetch (",{"type":66,"tag":128,"props":491,"children":494},{"href":492,"rel":493},"https://github.com/nuxt-community/supabase-module/issues/382",[132],[495],{"type":71,"value":496},"#382",{"type":71,"value":284},{"type":66,"tag":128,"props":499,"children":502},{"href":500,"rel":501},"https://github.com/nuxt-community/supabase-module/commit/98ca959c8d3f502dab78439709422e83d539b70d",[132],[503],{"type":71,"value":504},"98ca959",{"type":71,"value":293},{"type":66,"tag":67,"props":507,"children":508},{},[509,515],{"type":66,"tag":128,"props":510,"children":513},{"href":511,"rel":512},"https://github.com/nuxt-community/supabase-module/compare/v1.3.5...v1.4.0",[132],[514],{"type":71,"value":163},{"type":71,"value":344},{"type":66,"tag":98,"props":517,"children":518},{"id":168},[519],{"type":71,"value":171},{"type":66,"tag":67,"props":521,"children":522},{},[523,531,533],{"type":66,"tag":128,"props":524,"children":526},{"href":177,"rel":525},[132],[527],{"type":66,"tag":120,"props":528,"children":529},{},[530],{"type":71,"value":184},{"type":71,"value":532},"\r\n",{"type":66,"tag":128,"props":534,"children":536},{"href":354,"rel":535},[132],[537],{"type":66,"tag":120,"props":538,"children":539},{},[540],{"type":71,"value":361},{"title":59,"searchDepth":78,"depth":78,"links":542},[543,547],{"id":100,"depth":78,"text":103,"children":544},[545,546],{"id":259,"depth":190,"text":262},{"id":474,"depth":190,"text":477},{"id":168,"depth":78,"text":171},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.0",{"url":552,"total_count":192,"+1":192,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/172753836/reactions",{"name":197,"url":198,"avatar":199},"github:v1.4.0.md",{"name":556,"tag_name":556,"date":557,"body":558,"v":192,"url":610,"tarball":611,"zipball":612,"prerelease":60,"author":613,"title":59,"description":59,"_type":80,"_id":614},"v1.3.5","2024-07-15T12:59:37Z",{"type":63,"children":559,"toc":605},[560,564,568,596],{"type":66,"tag":98,"props":561,"children":562},{"id":100},[563],{"type":71,"value":103},{"type":66,"tag":105,"props":565,"children":566},{"id":259},[567],{"type":71,"value":262},{"type":66,"tag":112,"props":569,"children":570},{},[571],{"type":66,"tag":116,"props":572,"children":573},{},[574,578,580,587,589],{"type":66,"tag":120,"props":575,"children":576},{},[577],{"type":71,"value":301},{"type":71,"value":579}," generate (",{"type":66,"tag":128,"props":581,"children":584},{"href":582,"rel":583},"https://github.com/nuxt-community/supabase-module/commit/671295a3f8e1743384913f2940975c2e4217ff2e",[132],[585],{"type":71,"value":586},"671295a",{"type":71,"value":588},") resolves ",{"type":66,"tag":128,"props":590,"children":593},{"href":591,"rel":592},"https://github.com/nuxt-modules/supabase/issues/383",[132],[594],{"type":71,"value":595},"#383",{"type":66,"tag":67,"props":597,"children":598},{},[599],{"type":66,"tag":128,"props":600,"children":603},{"href":601,"rel":602},"https://github.com/nuxt-community/supabase-module/compare/v1.3.4...v1.3.5",[132],[604],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":606},[607],{"id":100,"depth":78,"text":103,"children":608},[609],{"id":259,"depth":190,"text":262},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.5",{"name":197,"url":198,"avatar":199},"github:v1.3.5.md",{"name":616,"tag_name":616,"date":617,"body":618,"v":192,"url":662,"tarball":663,"zipball":664,"prerelease":60,"author":665,"title":59,"description":59,"_type":80,"_id":666},"v1.3.4","2024-07-10T07:00:38Z",{"type":63,"children":619,"toc":657},[620,624,628],{"type":66,"tag":98,"props":621,"children":622},{"id":100},[623],{"type":71,"value":103},{"type":66,"tag":105,"props":625,"children":626},{"id":259},[627],{"type":71,"value":262},{"type":66,"tag":112,"props":629,"children":630},{},[631],{"type":66,"tag":116,"props":632,"children":633},{},[634,639,641,648,650],{"type":66,"tag":120,"props":635,"children":636},{},[637],{"type":71,"value":638},"vite:",{"type":71,"value":640}," optimize order (",{"type":66,"tag":128,"props":642,"children":645},{"href":643,"rel":644},"https://github.com/nuxt-community/supabase-module/commit/663bd73ebb146ecde1abe5f29b52326e6dc2b6cd",[132],[646],{"type":71,"value":647},"663bd73",{"type":71,"value":649},") fixes ",{"type":66,"tag":128,"props":651,"children":654},{"href":652,"rel":653},"https://github.com/nuxt-modules/supabase/issues/385",[132],[655],{"type":71,"value":656},"#385",{"title":59,"searchDepth":78,"depth":78,"links":658},[659],{"id":100,"depth":78,"text":103,"children":660},[661],{"id":259,"depth":190,"text":262},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.4",{"name":197,"url":198,"avatar":199},"github:v1.3.4.md",{"name":668,"tag_name":668,"date":669,"body":670,"v":192,"url":731,"tarball":732,"zipball":733,"prerelease":60,"reactions":734,"author":736,"title":59,"description":59,"_type":80,"_id":737},"v1.3.2","2024-07-05T16:26:23Z",{"type":63,"children":671,"toc":725},[672,676,680,700,704],{"type":66,"tag":98,"props":673,"children":674},{"id":100},[675],{"type":71,"value":103},{"type":66,"tag":105,"props":677,"children":678},{"id":259},[679],{"type":71,"value":262},{"type":66,"tag":112,"props":681,"children":682},{},[683],{"type":66,"tag":116,"props":684,"children":685},{},[686,690,692,699],{"type":66,"tag":120,"props":687,"children":688},{},[689],{"type":71,"value":638},{"type":71,"value":691}," optimize postgrest (",{"type":66,"tag":128,"props":693,"children":696},{"href":694,"rel":695},"https://github.com/nuxt-community/supabase-module/commit/2a6d91a3ee83aa65cc5741afea907ca474e61d64",[132],[697],{"type":71,"value":698},"2a6d91a",{"type":71,"value":293},{"type":66,"tag":105,"props":701,"children":702},{"id":474},[703],{"type":71,"value":477},{"type":66,"tag":112,"props":705,"children":706},{},[707],{"type":66,"tag":116,"props":708,"children":709},{},[710,715,717,724],{"type":66,"tag":120,"props":711,"children":712},{},[713],{"type":71,"value":714},"ci:",{"type":71,"value":716}," nightly version (",{"type":66,"tag":128,"props":718,"children":721},{"href":719,"rel":720},"https://github.com/nuxt-community/supabase-module/commit/298e608442ac5e8c15aa61c01411585e57732f4a",[132],[722],{"type":71,"value":723},"298e608",{"type":71,"value":293},{"title":59,"searchDepth":78,"depth":78,"links":726},[727],{"id":100,"depth":78,"text":103,"children":728},[729,730],{"id":259,"depth":190,"text":262},{"id":474,"depth":190,"text":477},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.2",{"url":735,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":192,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/164188781/reactions",{"name":197,"url":198,"avatar":199},"github:v1.3.2.md",{"name":739,"tag_name":739,"date":740,"body":741,"v":192,"url":962,"tarball":963,"zipball":964,"prerelease":60,"reactions":965,"author":967,"title":59,"description":59,"_type":80,"_id":968},"v1.3.1","2024-07-05T12:25:51Z",{"type":63,"children":742,"toc":956},[743,747,768,774,796,814,828,841,846,899,914,920,947],{"type":66,"tag":98,"props":744,"children":745},{"id":100},[746],{"type":71,"value":103},{"type":66,"tag":67,"props":748,"children":749},{},[750,752,758,760,766],{"type":71,"value":751},"⚠️ You can switch directly to ",{"type":66,"tag":148,"props":753,"children":755},{"className":754},[],[756],{"type":71,"value":757},"1.3.1",{"type":71,"value":759},", since ",{"type":66,"tag":148,"props":761,"children":763},{"className":762},[],[764],{"type":71,"value":765},"1.3.0",{"type":71,"value":767}," has been superseded.",{"type":66,"tag":105,"props":769,"children":771},{"id":770},"major-changes",[772],{"type":71,"value":773},"Major changes",{"type":66,"tag":67,"props":775,"children":776},{},[777,779,786,788,795],{"type":71,"value":778},"We're now using the ",{"type":66,"tag":128,"props":780,"children":783},{"href":781,"rel":782},"https://supabase.com/docs/guides/auth/server-side/creating-a-client",[132],[784],{"type":71,"value":785},"@supabase/ssr",{"type":71,"value":787}," library under the hood 🎉 (",{"type":66,"tag":128,"props":789,"children":792},{"href":790,"rel":791},"https://github.com/nuxt-modules/supabase/issues/357",[132],[793],{"type":71,"value":794},"#357",{"type":71,"value":293},{"type":66,"tag":67,"props":797,"children":798},{},[799,801,806,808],{"type":71,"value":800},"There are ",{"type":66,"tag":120,"props":802,"children":803},{},[804],{"type":71,"value":805},"no breaking changes",{"type":71,"value":807}," related to this improvement. However, a non-disruptive warning appears in this release:\r\n",{"type":66,"tag":148,"props":809,"children":811},{"className":810},[],[812],{"type":71,"value":813},"Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure.",{"type":66,"tag":67,"props":815,"children":816},{},[817,819,826],{"type":71,"value":818},"This warning is related to ",{"type":66,"tag":128,"props":820,"children":823},{"href":821,"rel":822},"https://github.com/supabase/auth-js/issues/912",[132],[824],{"type":71,"value":825},"an issue",{"type":71,"value":827}," in the Supabase library itself. Initially, I intended to wait for this fix but since managing updates across two separate branches is challenging I chose to merge it anyway. I could no longer delay the release due to users raising concerns about outdated dependencies and other issues within the module.",{"type":66,"tag":67,"props":829,"children":830},{},[831,833,839],{"type":71,"value":832},"You can upvote ",{"type":66,"tag":128,"props":834,"children":836},{"href":821,"rel":835},[132],[837],{"type":71,"value":838},"the issue",{"type":71,"value":840}," to encourage the Supabase maintainers to address it.",{"type":66,"tag":67,"props":842,"children":843},{},[844],{"type":71,"value":845},"This improvement might fix:",{"type":66,"tag":112,"props":847,"children":848},{},[849,859,869,879,889],{"type":66,"tag":116,"props":850,"children":851},{},[852],{"type":66,"tag":128,"props":853,"children":856},{"href":854,"rel":855},"https://github.com/nuxt-modules/supabase/issues/298",[132],[857],{"type":71,"value":858},"#298",{"type":66,"tag":116,"props":860,"children":861},{},[862],{"type":66,"tag":128,"props":863,"children":866},{"href":864,"rel":865},"https://github.com/nuxt-modules/supabase/issues/381",[132],[867],{"type":71,"value":868},"#381",{"type":66,"tag":116,"props":870,"children":871},{},[872],{"type":66,"tag":128,"props":873,"children":876},{"href":874,"rel":875},"https://github.com/nuxt-modules/supabase/issues/380",[132],[877],{"type":71,"value":878},"#380",{"type":66,"tag":116,"props":880,"children":881},{},[882],{"type":66,"tag":128,"props":883,"children":886},{"href":884,"rel":885},"https://github.com/nuxt-modules/supabase/issues/367",[132],[887],{"type":71,"value":888},"#367",{"type":66,"tag":116,"props":890,"children":891},{},[892],{"type":66,"tag":128,"props":893,"children":896},{"href":894,"rel":895},"https://github.com/nuxt-modules/supabase/issues/326",[132],[897],{"type":71,"value":898},"#326",{"type":66,"tag":67,"props":900,"children":901},{},[902,904,912],{"type":71,"value":903},"A big thanks to ",{"type":66,"tag":128,"props":905,"children":907},{"href":177,"rel":906},[132],[908],{"type":66,"tag":120,"props":909,"children":910},{},[911],{"type":71,"value":184},{"type":71,"value":913}," for initiating this change and helping refactor the module.",{"type":66,"tag":105,"props":915,"children":917},{"id":916},"other-update",[918],{"type":71,"value":919},"Other update",{"type":66,"tag":112,"props":921,"children":922},{},[923],{"type":66,"tag":116,"props":924,"children":925},{},[926,928,938,939,946],{"type":71,"value":927},"Automatic database types by ",{"type":66,"tag":128,"props":929,"children":932},{"href":930,"rel":931},"https://github.com/IsraelOrtuno",[132],[933],{"type":66,"tag":120,"props":934,"children":935},{},[936],{"type":71,"value":937},"@IsraelOrtuno",{"type":71,"value":317},{"type":66,"tag":128,"props":940,"children":943},{"href":941,"rel":942},"https://github.com/nuxt-modules/supabase/issues/336",[132],[944],{"type":71,"value":945},"#336",{"type":71,"value":293},{"type":66,"tag":67,"props":948,"children":949},{},[950],{"type":66,"tag":128,"props":951,"children":954},{"href":952,"rel":953},"https://github.com/nuxt-community/supabase-module/compare/v1.2.2...v1.3.1",[132],[955],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":957},[958],{"id":100,"depth":78,"text":103,"children":959},[960,961],{"id":770,"depth":190,"text":773},{"id":916,"depth":190,"text":919},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.1",{"url":966,"total_count":78,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":78,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/164152561/reactions",{"name":197,"url":198,"avatar":199},"github:v1.3.1.md",{"name":970,"tag_name":970,"date":971,"body":972,"v":192,"url":1017,"tarball":1018,"zipball":1019,"prerelease":60,"reactions":1020,"author":1023,"title":59,"description":59,"_type":80,"_id":1024},"v1.2.2","2024-05-02T15:33:41Z",{"type":63,"children":973,"toc":1012},[974,978,982,1003],{"type":66,"tag":98,"props":975,"children":976},{"id":100},[977],{"type":71,"value":103},{"type":66,"tag":105,"props":979,"children":980},{"id":259},[981],{"type":71,"value":262},{"type":66,"tag":112,"props":983,"children":984},{},[985],{"type":66,"tag":116,"props":986,"children":987},{},[988,993,995,1002],{"type":66,"tag":120,"props":989,"children":990},{},[991],{"type":71,"value":992},"serverSupabaseSession:",{"type":71,"value":994}," export service (",{"type":66,"tag":128,"props":996,"children":999},{"href":997,"rel":998},"https://github.com/nuxt-community/supabase-module/commit/9cfeb8726d562c5aac6fe1efa7dd1664bc39ed66",[132],[1000],{"type":71,"value":1001},"9cfeb87",{"type":71,"value":293},{"type":66,"tag":67,"props":1004,"children":1005},{},[1006],{"type":66,"tag":128,"props":1007,"children":1010},{"href":1008,"rel":1009},"https://github.com/nuxt-community/supabase-module/compare/v1.2.1...v1.2.2",[132],[1011],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":1013},[1014],{"id":100,"depth":78,"text":103,"children":1015},[1016],{"id":259,"depth":190,"text":262},"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.2",{"url":1021,"total_count":1022,"+1":245,"-1":245,"laugh":245,"hooray":192,"confused":245,"heart":78,"rocket":245,"eyes":192},"https://api.github.com/repos/nuxt-modules/supabase/releases/153851448/reactions",4,{"name":197,"url":198,"avatar":199},"github:v1.2.2.md",{"name":1026,"tag_name":1026,"date":1027,"body":1028,"v":192,"url":1117,"tarball":1118,"zipball":1119,"prerelease":60,"reactions":1120,"author":1123,"title":59,"description":59,"_type":80,"_id":1124},"v1.2.1","2024-04-18T08:32:42Z",{"type":63,"children":1029,"toc":1110},[1030,1034,1040,1064,1070,1084,1090,1101],{"type":66,"tag":98,"props":1031,"children":1032},{"id":100},[1033],{"type":71,"value":103},{"type":66,"tag":105,"props":1035,"children":1037},{"id":1036},"improvements",[1038],{"type":71,"value":1039},"Improvements",{"type":66,"tag":67,"props":1041,"children":1042},{},[1043,1045,1055,1057],{"type":71,"value":1044},"Performance improvements by ",{"type":66,"tag":128,"props":1046,"children":1049},{"href":1047,"rel":1048},"https://github.com/vinceglb",[132],[1050],{"type":66,"tag":120,"props":1051,"children":1052},{},[1053],{"type":71,"value":1054},"@vinceglb",{"type":71,"value":1056}," in ",{"type":66,"tag":128,"props":1058,"children":1061},{"href":1059,"rel":1060},"https://github.com/nuxt-modules/supabase/issues/352",[132],[1062],{"type":71,"value":1063},"#352",{"type":66,"tag":105,"props":1065,"children":1067},{"id":1066},"chore",[1068],{"type":71,"value":1069},"Chore",{"type":66,"tag":67,"props":1071,"children":1072},{},[1073,1075,1082],{"type":71,"value":1074},"Move to eslint v9 using ",{"type":66,"tag":128,"props":1076,"children":1079},{"href":1077,"rel":1078},"https://eslint.nuxt.com",[132],[1080],{"type":71,"value":1081},"@nuxt/eslint",{"type":71,"value":1083}," package",{"type":66,"tag":105,"props":1085,"children":1087},{"id":1086},"thanks-for-the-help-from",[1088],{"type":71,"value":1089},"💚 Thanks for the help from:",{"type":66,"tag":67,"props":1091,"children":1092},{},[1093],{"type":66,"tag":128,"props":1094,"children":1096},{"href":1047,"rel":1095},[132],[1097],{"type":66,"tag":120,"props":1098,"children":1099},{},[1100],{"type":71,"value":1054},{"type":66,"tag":67,"props":1102,"children":1103},{},[1104],{"type":66,"tag":128,"props":1105,"children":1108},{"href":1106,"rel":1107},"https://github.com/nuxt-community/supabase-module/compare/v1.2.0...v1.2.1",[132],[1109],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":1111},[1112],{"id":100,"depth":78,"text":103,"children":1113},[1114,1115,1116],{"id":1036,"depth":190,"text":1039},{"id":1066,"depth":190,"text":1069},{"id":1086,"depth":190,"text":1089},"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.1",{"url":1121,"total_count":1122,"+1":245,"-1":245,"laugh":245,"hooray":78,"confused":245,"heart":190,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/151694236/reactions",5,{"name":197,"url":198,"avatar":199},"github:v1.2.1.md",{"name":1126,"tag_name":1126,"date":1127,"body":1128,"v":192,"url":1216,"tarball":1217,"zipball":1218,"prerelease":60,"author":1219,"title":59,"description":59,"_type":80,"_id":1220},"v1.2.0","2024-03-29T09:33:20Z",{"type":63,"children":1129,"toc":1211},[1130,1134,1140,1183,1202],{"type":66,"tag":98,"props":1131,"children":1132},{"id":100},[1133],{"type":71,"value":103},{"type":66,"tag":105,"props":1135,"children":1137},{"id":1136},"minor-version-since-we-have-a-new-composable",[1138],{"type":71,"value":1139},"Minor version since we have a new composable 🎉",{"type":66,"tag":67,"props":1141,"children":1142},{},[1143,1149,1150,1156,1158,1165,1166,1173,1175,1182],{"type":66,"tag":128,"props":1144,"children":1147},{"href":1145,"rel":1146},"https://supabase.nuxtjs.org/usage/composables/usesupabasesession",[132],[1148],{"type":71,"value":24},{"type":71,"value":310},{"type":66,"tag":128,"props":1151,"children":1154},{"href":1152,"rel":1153},"https://supabase.nuxtjs.org/usage/services/serversupabasesession",[132],[1155],{"type":71,"value":40},{"type":71,"value":1157}," are now available to fetch your session client and server side (",{"type":66,"tag":128,"props":1159,"children":1162},{"href":1160,"rel":1161},"https://github.com/nuxt-community/supabase-module/issues/338",[132],[1163],{"type":71,"value":1164},"#338",{"type":71,"value":284},{"type":66,"tag":128,"props":1167,"children":1170},{"href":1168,"rel":1169},"https://github.com/nuxt-community/supabase-module/commit/07eb081d532510da4152554c7010c79ed6008559",[132],[1171],{"type":71,"value":1172},"07eb081",{"type":71,"value":1174}," & ",{"type":66,"tag":128,"props":1176,"children":1179},{"href":1177,"rel":1178},"https://github.com/nuxt-community/supabase-module/commit/9dee37ee030506fc7888dfbb6cc1f29b9126a728",[132],[1180],{"type":71,"value":1181},"9dee37e",{"type":71,"value":293},{"type":66,"tag":1184,"props":1185,"children":1187},"h4",{"id":1186},"thanks-joeychilson-for-this-feature",[1188,1190,1200],{"type":71,"value":1189},"Thanks ",{"type":66,"tag":128,"props":1191,"children":1194},{"href":1192,"rel":1193},"https://github.com/joeychilson",[132],[1195],{"type":66,"tag":120,"props":1196,"children":1197},{},[1198],{"type":71,"value":1199},"@joeychilson",{"type":71,"value":1201}," for this feature 🙏",{"type":66,"tag":67,"props":1203,"children":1204},{},[1205],{"type":66,"tag":128,"props":1206,"children":1209},{"href":1207,"rel":1208},"https://github.com/nuxt-community/supabase-module/compare/v1.1.7...v1.2.0",[132],[1210],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":1212},[1213],{"id":100,"depth":78,"text":103,"children":1214},[1215],{"id":1136,"depth":190,"text":1139},"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.0",{"name":197,"url":198,"avatar":199},"github:v1.2.0.md",{"name":1222,"tag_name":1222,"date":1223,"body":1224,"v":192,"url":1318,"tarball":1319,"zipball":1320,"prerelease":60,"reactions":1321,"author":1323,"title":59,"description":59,"_type":80,"_id":1324},"v1.1.7","2024-03-07T09:33:03Z",{"type":63,"children":1225,"toc":1312},[1226,1230,1234,1285,1290,1303],{"type":66,"tag":98,"props":1227,"children":1228},{"id":100},[1229],{"type":71,"value":103},{"type":66,"tag":105,"props":1231,"children":1232},{"id":474},[1233],{"type":71,"value":477},{"type":66,"tag":112,"props":1235,"children":1236},{},[1237],{"type":66,"tag":116,"props":1238,"children":1239},{},[1240,1245,1247,1253,1255,1261,1262,1268,1269,1276,1278],{"type":66,"tag":120,"props":1241,"children":1242},{},[1243],{"type":71,"value":1244},"auth-middleware:",{"type":71,"value":1246}," add ",{"type":66,"tag":148,"props":1248,"children":1250},{"className":1249},[],[1251],{"type":71,"value":1252},"include",{"type":71,"value":1254}," to ",{"type":66,"tag":148,"props":1256,"children":1258},{"className":1257},[],[1259],{"type":71,"value":1260},"RedirectOptions",{"type":71,"value":317},{"type":66,"tag":128,"props":1263,"children":1266},{"href":1264,"rel":1265},"https://github.com/nuxt-community/supabase-module/issues/336",[132],[1267],{"type":71,"value":945},{"type":71,"value":284},{"type":66,"tag":128,"props":1270,"children":1273},{"href":1271,"rel":1272},"https://github.com/nuxt-community/supabase-module/commit/f9aad558da8171af1c442a60915c979eb10b8fab",[132],[1274],{"type":71,"value":1275},"f9aad55",{"type":71,"value":1277},"), closes ",{"type":66,"tag":128,"props":1279,"children":1282},{"href":1280,"rel":1281},"https://github.com/nuxt-community/supabase-module/issues/268",[132],[1283],{"type":71,"value":1284},"#268",{"type":66,"tag":105,"props":1286,"children":1287},{"id":1086},[1288],{"type":71,"value":1289},"💚 Thanks for the help from",{"type":66,"tag":67,"props":1291,"children":1292},{},[1293],{"type":66,"tag":128,"props":1294,"children":1297},{"href":1295,"rel":1296},"https://github.com/jojomatik",[132],[1298],{"type":66,"tag":120,"props":1299,"children":1300},{},[1301],{"type":71,"value":1302},"@jojomatik",{"type":66,"tag":67,"props":1304,"children":1305},{},[1306],{"type":66,"tag":128,"props":1307,"children":1310},{"href":1308,"rel":1309},"https://github.com/nuxt-community/supabase-module/compare/v1.1.6...v1.1.7",[132],[1311],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":1313},[1314],{"id":100,"depth":78,"text":103,"children":1315},[1316,1317],{"id":474,"depth":190,"text":477},{"id":1086,"depth":190,"text":1289},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.7","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.7","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.7",{"url":1322,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":192,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/145217172/reactions",{"name":197,"url":198,"avatar":199},"github:v1.1.7.md",{"name":1326,"tag_name":1326,"date":1327,"body":1328,"v":192,"url":1443,"tarball":1444,"zipball":1445,"prerelease":60,"reactions":1446,"author":1448,"title":59,"description":59,"_type":80,"_id":1449},"v1.1.6","2024-01-26T15:22:23Z",{"type":63,"children":1329,"toc":1436},[1330,1334,1338,1377,1381,1410,1414,1427],{"type":66,"tag":98,"props":1331,"children":1332},{"id":100},[1333],{"type":71,"value":103},{"type":66,"tag":105,"props":1335,"children":1336},{"id":259},[1337],{"type":71,"value":262},{"type":66,"tag":112,"props":1339,"children":1340},{},[1341,1359],{"type":66,"tag":116,"props":1342,"children":1343},{},[1344,1349,1351,1358],{"type":66,"tag":120,"props":1345,"children":1346},{},[1347],{"type":71,"value":1348},"deps:",{"type":71,"value":1350}," set resolution (",{"type":66,"tag":128,"props":1352,"children":1355},{"href":1353,"rel":1354},"https://github.com/nuxt-community/supabase-module/commit/db8c102fb9d69395528eece3e1e0552a16e673da",[132],[1356],{"type":71,"value":1357},"db8c102",{"type":71,"value":293},{"type":66,"tag":116,"props":1360,"children":1361},{},[1362,1367,1369,1376],{"type":66,"tag":120,"props":1363,"children":1364},{},[1365],{"type":71,"value":1366},"playground:",{"type":71,"value":1368}," watch on confirm page (",{"type":66,"tag":128,"props":1370,"children":1373},{"href":1371,"rel":1372},"https://github.com/nuxt-community/supabase-module/commit/0caf5c11d632df6b7e74e5e8973ee56a38b1c968",[132],[1374],{"type":71,"value":1375},"0caf5c1",{"type":71,"value":293},{"type":66,"tag":105,"props":1378,"children":1379},{"id":474},[1380],{"type":71,"value":477},{"type":66,"tag":112,"props":1382,"children":1383},{},[1384],{"type":66,"tag":116,"props":1385,"children":1386},{},[1387,1392,1394,1401,1402,1409],{"type":66,"tag":120,"props":1388,"children":1389},{},[1390],{"type":71,"value":1391},"app:",{"type":71,"value":1393}," added redirect path cookie for use after signin (",{"type":66,"tag":128,"props":1395,"children":1398},{"href":1396,"rel":1397},"https://github.com/nuxt-community/supabase-module/issues/327",[132],[1399],{"type":71,"value":1400},"#327",{"type":71,"value":284},{"type":66,"tag":128,"props":1403,"children":1406},{"href":1404,"rel":1405},"https://github.com/nuxt-community/supabase-module/commit/1b78a050fdc6da155434e261823b029f9dce2d40",[132],[1407],{"type":71,"value":1408},"1b78a05",{"type":71,"value":293},{"type":66,"tag":105,"props":1411,"children":1412},{"id":1086},[1413],{"type":71,"value":1289},{"type":66,"tag":67,"props":1415,"children":1416},{},[1417],{"type":66,"tag":128,"props":1418,"children":1421},{"href":1419,"rel":1420},"https://github.com/Matthewenderle",[132],[1422],{"type":66,"tag":120,"props":1423,"children":1424},{},[1425],{"type":71,"value":1426},"@Matthewenderle",{"type":66,"tag":67,"props":1428,"children":1429},{},[1430],{"type":66,"tag":128,"props":1431,"children":1434},{"href":1432,"rel":1433},"https://github.com/nuxt-community/supabase-module/compare/v1.1.5...v1.1.6",[132],[1435],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":1437},[1438],{"id":100,"depth":78,"text":103,"children":1439},[1440,1441,1442],{"id":259,"depth":190,"text":262},{"id":474,"depth":190,"text":477},{"id":1086,"depth":190,"text":1289},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.6","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.6","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.6",{"url":1447,"total_count":190,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":190,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/138681536/reactions",{"name":197,"url":198,"avatar":199},"github:v1.1.6.md",{"name":1451,"tag_name":1451,"date":1452,"body":1453,"v":192,"url":1617,"tarball":1618,"zipball":1619,"prerelease":60,"reactions":1620,"author":1622,"title":59,"description":59,"_type":80,"_id":1623},"v1.1.5","2023-12-28T14:29:18Z",{"type":63,"children":1454,"toc":1609},[1455,1459,1463,1484,1488,1507,1513,1550,1554,1600],{"type":66,"tag":98,"props":1456,"children":1457},{"id":100},[1458],{"type":71,"value":103},{"type":66,"tag":105,"props":1460,"children":1461},{"id":259},[1462],{"type":71,"value":262},{"type":66,"tag":112,"props":1464,"children":1465},{},[1466],{"type":66,"tag":116,"props":1467,"children":1468},{},[1469,1474,1476,1483],{"type":66,"tag":120,"props":1470,"children":1471},{},[1472],{"type":71,"value":1473},"server:",{"type":71,"value":1475}," fetch user from session (",{"type":66,"tag":128,"props":1477,"children":1480},{"href":1478,"rel":1479},"https://github.com/nuxt-community/supabase-module/commit/7a3b73c36cc9aea10100a0ff37b0e0e7ecefe2a8",[132],[1481],{"type":71,"value":1482},"7a3b73c",{"type":71,"value":293},{"type":66,"tag":105,"props":1485,"children":1486},{"id":1036},[1487],{"type":71,"value":1039},{"type":66,"tag":112,"props":1489,"children":1490},{},[1491],{"type":66,"tag":116,"props":1492,"children":1493},{},[1494,1498,1500],{"type":66,"tag":120,"props":1495,"children":1496},{},[1497],{"type":71,"value":1391},{"type":71,"value":1499}," use module-builder stub mode for more accurate types ",{"type":66,"tag":128,"props":1501,"children":1504},{"href":1502,"rel":1503},"https://github.com/nuxt-modules/supabase/issues/315",[132],[1505],{"type":71,"value":1506},"#315",{"type":66,"tag":105,"props":1508,"children":1510},{"id":1509},"docs",[1511],{"type":71,"value":1512},"Docs",{"type":66,"tag":112,"props":1514,"children":1515},{},[1516,1533],{"type":66,"tag":116,"props":1517,"children":1518},{},[1519,1524,1526],{"type":66,"tag":120,"props":1520,"children":1521},{},[1522],{"type":71,"value":1523},"get-started:",{"type":71,"value":1525}," bun command ",{"type":66,"tag":128,"props":1527,"children":1530},{"href":1528,"rel":1529},"https://github.com/nuxt-modules/supabase/issues/317",[132],[1531],{"type":71,"value":1532},"#317",{"type":66,"tag":116,"props":1534,"children":1535},{},[1536,1541,1543],{"type":66,"tag":120,"props":1537,"children":1538},{},[1539],{"type":71,"value":1540},"readme:",{"type":71,"value":1542}," typo in #dev section ",{"type":66,"tag":128,"props":1544,"children":1547},{"href":1545,"rel":1546},"https://github.com/nuxt-modules/supabase/issues/316",[132],[1548],{"type":71,"value":1549},"#316",{"type":66,"tag":105,"props":1551,"children":1552},{"id":1086},[1553],{"type":71,"value":1289},{"type":66,"tag":67,"props":1555,"children":1556},{},[1557,1567,1568,1578,1579,1589,1590],{"type":66,"tag":128,"props":1558,"children":1561},{"href":1559,"rel":1560},"https://github.com/danielroe",[132],[1562],{"type":66,"tag":120,"props":1563,"children":1564},{},[1565],{"type":71,"value":1566},"@danielroe",{"type":71,"value":532},{"type":66,"tag":128,"props":1569,"children":1572},{"href":1570,"rel":1571},"https://github.com/joshuabyler",[132],[1573],{"type":66,"tag":120,"props":1574,"children":1575},{},[1576],{"type":71,"value":1577},"@joshuabyler",{"type":71,"value":532},{"type":66,"tag":128,"props":1580,"children":1583},{"href":1581,"rel":1582},"https://github.com/hafizjavaid",[132],[1584],{"type":66,"tag":120,"props":1585,"children":1586},{},[1587],{"type":71,"value":1588},"@hafizjavaid",{"type":71,"value":532},{"type":66,"tag":128,"props":1591,"children":1594},{"href":1592,"rel":1593},"https://github.com/relisora",[132],[1595],{"type":66,"tag":120,"props":1596,"children":1597},{},[1598],{"type":71,"value":1599},"@relisora",{"type":66,"tag":67,"props":1601,"children":1602},{},[1603],{"type":66,"tag":128,"props":1604,"children":1607},{"href":1605,"rel":1606},"https://github.com/nuxt-community/supabase-module/compare/v1.1.4...v1.1.5",[132],[1608],{"type":71,"value":163},{"title":59,"searchDepth":78,"depth":78,"links":1610},[1611],{"id":100,"depth":78,"text":103,"children":1612},[1613,1614,1615,1616],{"id":259,"depth":190,"text":262},{"id":1036,"depth":190,"text":1039},{"id":1509,"depth":190,"text":1512},{"id":1086,"depth":190,"text":1289},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.5",{"url":1621,"total_count":1022,"+1":190,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":192,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/135279818/reactions",{"name":197,"url":198,"avatar":199},"github:v1.1.5.md",{"name":1625,"tag_name":1625,"date":1626,"body":1627,"v":192,"url":1685,"tarball":1686,"zipball":1687,"prerelease":60,"reactions":1688,"author":1690,"title":59,"description":59,"_type":80,"_id":1691},"v1.1.4","2023-11-17T14:42:47Z",{"type":63,"children":1628,"toc":1680},[1629,1633,1637,1665],{"type":66,"tag":98,"props":1630,"children":1631},{"id":100},[1632],{"type":71,"value":103},{"type":66,"tag":105,"props":1634,"children":1635},{"id":259},[1636],{"type":71,"value":262},{"type":66,"tag":112,"props":1638,"children":1639},{},[1640],{"type":66,"tag":116,"props":1641,"children":1642},{},[1643,1647,1649,1656,1657,1664],{"type":66,"tag":120,"props":1644,"children":1645},{},[1646],{"type":71,"value":124},{"type":71,"value":1648}," prevent useCookie usage outside of effect scope (",{"type":66,"tag":128,"props":1650,"children":1653},{"href":1651,"rel":1652},"https://github.com/nuxt-community/supabase-module/issues/309",[132],[1654],{"type":71,"value":1655},"#309",{"type":71,"value":284},{"type":66,"tag":128,"props":1658,"children":1661},{"href":1659,"rel":1660},"https://github.com/nuxt-community/supabase-module/commit/bb55bed870efb68c39f255ddbcbe0b5446965399",[132],[1662],{"type":71,"value":1663},"bb55bed",{"type":71,"value":293},{"type":66,"tag":67,"props":1666,"children":1667},{},[1668,1670],{"type":71,"value":1669},"💚 Thanks for the help from 💚\r\n",{"type":66,"tag":128,"props":1671,"children":1674},{"href":1672,"rel":1673},"https://github.com/AlbertBrand",[132],[1675],{"type":66,"tag":120,"props":1676,"children":1677},{},[1678],{"type":71,"value":1679},"@AlbertBrand",{"title":59,"searchDepth":78,"depth":78,"links":1681},[1682],{"id":100,"depth":78,"text":103,"children":1683},[1684],{"id":259,"depth":190,"text":262},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.4",{"url":1689,"total_count":192,"+1":192,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/129966845/reactions",{"name":197,"url":198,"avatar":199},"github:v1.1.4.md",{"name":1693,"tag_name":1693,"date":1694,"body":1695,"v":192,"url":1791,"tarball":1792,"zipball":1793,"prerelease":60,"reactions":1794,"author":1796,"title":59,"description":59,"_type":80,"_id":1797},"v1.1.3","2023-10-06T07:51:37Z",{"type":63,"children":1696,"toc":1788},[1697,1701,1763],{"type":66,"tag":98,"props":1698,"children":1699},{"id":100},[1700],{"type":71,"value":103},{"type":66,"tag":112,"props":1702,"children":1703},{},[1704,1737],{"type":66,"tag":116,"props":1705,"children":1706},{},[1707,1711,1713,1720,1721,1728,1729,1736],{"type":66,"tag":120,"props":1708,"children":1709},{},[1710],{"type":71,"value":124},{"type":71,"value":1712}," clientOptions merge",{"type":66,"tag":128,"props":1714,"children":1717},{"href":1715,"rel":1716},"https://github.com/nuxt-community/supabase-module/issues/275",[132],[1718],{"type":71,"value":1719},"#275",{"type":71,"value":317},{"type":66,"tag":128,"props":1722,"children":1725},{"href":1723,"rel":1724},"https://github.com/nuxt-community/supabase-module/issues/277",[132],[1726],{"type":71,"value":1727},"#277",{"type":71,"value":284},{"type":66,"tag":128,"props":1730,"children":1733},{"href":1731,"rel":1732},"https://github.com/nuxt-community/supabase-module/commit/c0097a355b859cb6a2d97884a7648284128acca2",[132],[1734],{"type":71,"value":1735},"c0097a3",{"type":71,"value":293},{"type":66,"tag":116,"props":1738,"children":1739},{},[1740,1745,1747,1754,1755,1762],{"type":66,"tag":120,"props":1741,"children":1742},{},[1743],{"type":71,"value":1744},"module:",{"type":71,"value":1746}," do not warn when using runtimeConfig to set url and key (",{"type":66,"tag":128,"props":1748,"children":1751},{"href":1749,"rel":1750},"https://github.com/nuxt-community/supabase-module/issues/281",[132],[1752],{"type":71,"value":1753},"#281",{"type":71,"value":284},{"type":66,"tag":128,"props":1756,"children":1759},{"href":1757,"rel":1758},"https://github.com/nuxt-community/supabase-module/commit/8c151737b55738c68fc24b5e4db2517c4e866693",[132],[1760],{"type":71,"value":1761},"8c15173",{"type":71,"value":293},{"type":66,"tag":67,"props":1764,"children":1765},{},[1766,1767,1777,1778],{"type":71,"value":1669},{"type":66,"tag":128,"props":1768,"children":1771},{"href":1769,"rel":1770},"https://github.com/stafyniaksacha",[132],[1772],{"type":66,"tag":120,"props":1773,"children":1774},{},[1775],{"type":71,"value":1776},"@stafyniaksacha",{"type":71,"value":532},{"type":66,"tag":128,"props":1779,"children":1782},{"href":1780,"rel":1781},"https://github.com/jonesisg1",[132],[1783],{"type":66,"tag":120,"props":1784,"children":1785},{},[1786],{"type":71,"value":1787},"@jonesisg1",{"title":59,"searchDepth":78,"depth":78,"links":1789},[1790],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.3",{"url":1795,"total_count":1022,"+1":78,"-1":245,"laugh":245,"hooray":78,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/123992311/reactions",{"name":197,"url":198,"avatar":199},"github:v1.1.3.md",{"name":1799,"tag_name":1799,"date":1800,"body":1801,"v":192,"url":2031,"tarball":2032,"zipball":2033,"prerelease":60,"reactions":2034,"author":2036,"title":59,"description":59,"_type":80,"_id":2037},"v1.1.2","2023-09-06T17:44:35Z",{"type":63,"children":1802,"toc":2026},[1803,1807,1829,1872,1876,1954,1970],{"type":66,"tag":98,"props":1804,"children":1805},{"id":100},[1806],{"type":71,"value":103},{"type":66,"tag":67,"props":1808,"children":1809},{},[1810,1812,1819,1821,1827],{"type":71,"value":1811},"⚠️ BREAKING CHANGE ⚠️\r\nBreaking change is related to ",{"type":66,"tag":128,"props":1813,"children":1816},{"href":1814,"rel":1815},"https://github.com/nuxt-modules/supabase/issues/244",[132],[1817],{"type":71,"value":1818},"#244",{"type":71,"value":1820}," and was first adressed in the ",{"type":66,"tag":148,"props":1822,"children":1824},{"className":1823},[],[1825],{"type":71,"value":1826},"v1.1.0",{"type":71,"value":1828}," but patch has been necessary to fix the version.",{"type":66,"tag":67,"props":1830,"children":1831},{},[1832,1834,1840,1842,1848,1850,1856,1858,1864,1866],{"type":71,"value":1833},"On the confirm page, configured in ",{"type":66,"tag":148,"props":1835,"children":1837},{"className":1836},[],[1838],{"type":71,"value":1839},"redirect.callback",{"type":71,"value":1841}," option (default to ",{"type":66,"tag":148,"props":1843,"children":1845},{"className":1844},[],[1846],{"type":71,"value":1847},"/confirm",{"type":71,"value":1849},"), ensure to set the ",{"type":66,"tag":148,"props":1851,"children":1853},{"className":1852},[],[1854],{"type":71,"value":1855},"immediate",{"type":71,"value":1857}," option in the watch.\r\nCheck out the doc: ",{"type":66,"tag":128,"props":1859,"children":1862},{"href":1860,"rel":1861},"http://supabase.nuxtjs.org/authentication#confirm-page-confirm",[132],[1863],{"type":71,"value":1860},{"type":71,"value":1865},"\r\nCheck out the demo code: ",{"type":66,"tag":128,"props":1867,"children":1870},{"href":1868,"rel":1869},"https://github.com/nuxt-modules/supabase/blob/main/demo/pages/confirm.vue",[132],[1871],{"type":71,"value":1868},{"type":66,"tag":105,"props":1873,"children":1874},{"id":259},[1875],{"type":71,"value":262},{"type":66,"tag":112,"props":1877,"children":1878},{},[1879,1904,1928],{"type":66,"tag":116,"props":1880,"children":1881},{},[1882,1886,1888,1895,1896,1903],{"type":66,"tag":120,"props":1883,"children":1884},{},[1885],{"type":71,"value":1744},{"type":71,"value":1887}," priority of redirect options made by defu (",{"type":66,"tag":128,"props":1889,"children":1892},{"href":1890,"rel":1891},"https://github.com/nuxt-community/supabase-module/issues/256",[132],[1893],{"type":71,"value":1894},"#256",{"type":71,"value":284},{"type":66,"tag":128,"props":1897,"children":1900},{"href":1898,"rel":1899},"https://github.com/nuxt-community/supabase-module/commit/c4e30bf50eb7816fee3a2e46b404df5ce9f7cf4d",[132],[1901],{"type":71,"value":1902},"c4e30bf",{"type":71,"value":293},{"type":66,"tag":116,"props":1905,"children":1906},{},[1907,1912,1914,1919,1920,1927],{"type":66,"tag":120,"props":1908,"children":1909},{},[1910],{"type":71,"value":1911},"plugin:",{"type":71,"value":1913}," retrieve user for client only page (",{"type":66,"tag":128,"props":1915,"children":1917},{"href":1814,"rel":1916},[132],[1918],{"type":71,"value":1818},{"type":71,"value":284},{"type":66,"tag":128,"props":1921,"children":1924},{"href":1922,"rel":1923},"https://github.com/nuxt-community/supabase-module/commit/4a35428e26542bf22b3288db6e9a9309f1310705",[132],[1925],{"type":71,"value":1926},"4a35428",{"type":71,"value":293},{"type":66,"tag":116,"props":1929,"children":1930},{},[1931,1936,1938,1945,1946,1953],{"type":66,"tag":120,"props":1932,"children":1933},{},[1934],{"type":71,"value":1935},"useSupabaseUser:",{"type":71,"value":1937}," add explicit user type (",{"type":66,"tag":128,"props":1939,"children":1942},{"href":1940,"rel":1941},"https://github.com/nuxt-community/supabase-module/issues/254",[132],[1943],{"type":71,"value":1944},"#254",{"type":71,"value":284},{"type":66,"tag":128,"props":1947,"children":1950},{"href":1948,"rel":1949},"https://github.com/nuxt-community/supabase-module/commit/60d8551ee83a9c64a962b9f76b881b17d7384736",[132],[1951],{"type":71,"value":1952},"60d8551",{"type":71,"value":293},{"type":66,"tag":67,"props":1955,"children":1956},{},[1957,1962,1964],{"type":66,"tag":120,"props":1958,"children":1959},{},[1960],{"type":71,"value":1961},"Full Changelog",{"type":71,"value":1963},": ",{"type":66,"tag":128,"props":1965,"children":1968},{"href":1966,"rel":1967},"https://github.com/nuxt-community/supabase-module/compare/v1.0.2...v1.1.0",[132],[1969],{"type":71,"value":1966},{"type":66,"tag":67,"props":1971,"children":1972},{},[1973,1974,1984,1985,1995,1996,2004,2005,2015,2016],{"type":71,"value":1669},{"type":66,"tag":128,"props":1975,"children":1978},{"href":1976,"rel":1977},"https://github.com/52cs",[132],[1979],{"type":66,"tag":120,"props":1980,"children":1981},{},[1982],{"type":71,"value":1983},"@52cs",{"type":71,"value":532},{"type":66,"tag":128,"props":1986,"children":1989},{"href":1987,"rel":1988},"https://github.com/Aietes",[132],[1990],{"type":66,"tag":120,"props":1991,"children":1992},{},[1993],{"type":71,"value":1994},"@Aietes",{"type":71,"value":532},{"type":66,"tag":128,"props":1997,"children":1999},{"href":1672,"rel":1998},[132],[2000],{"type":66,"tag":120,"props":2001,"children":2002},{},[2003],{"type":71,"value":1679},{"type":71,"value":532},{"type":66,"tag":128,"props":2006,"children":2009},{"href":2007,"rel":2008},"https://github.com/kiri10ten",[132],[2010],{"type":66,"tag":120,"props":2011,"children":2012},{},[2013],{"type":71,"value":2014},"@kiri10ten",{"type":71,"value":532},{"type":66,"tag":128,"props":2017,"children":2020},{"href":2018,"rel":2019},"https://github.com/xMorthi",[132],[2021],{"type":66,"tag":120,"props":2022,"children":2023},{},[2024],{"type":71,"value":2025},"@xMorthi",{"title":59,"searchDepth":78,"depth":78,"links":2027},[2028],{"id":100,"depth":78,"text":103,"children":2029},[2030],{"id":259,"depth":190,"text":262},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.2",{"url":2035,"total_count":1022,"+1":245,"-1":245,"laugh":245,"hooray":190,"confused":245,"heart":245,"rocket":245,"eyes":192},"https://api.github.com/repos/nuxt-modules/supabase/releases/120162649/reactions",{"name":197,"url":198,"avatar":199},"github:v1.1.2.md",{"name":2039,"tag_name":2039,"date":2040,"body":2041,"v":192,"url":2124,"tarball":2125,"zipball":2126,"prerelease":60,"reactions":2127,"author":2129,"title":59,"description":59,"_type":80,"_id":2130},"v1.0.2","2023-08-04T15:56:13Z",{"type":63,"children":2042,"toc":2121},[2043,2047,2084,2098],{"type":66,"tag":98,"props":2044,"children":2045},{"id":100},[2046],{"type":71,"value":103},{"type":66,"tag":112,"props":2048,"children":2049},{},[2050,2067],{"type":66,"tag":116,"props":2051,"children":2052},{},[2053,2055,2066],{"type":71,"value":2054},"docs(auth): update (",{"type":66,"tag":128,"props":2056,"children":2059},{"href":2057,"rel":2058},"https://github.com/nuxt-modules/supabase/commit/df00ffe8ecc253fc23572b65465ad7928e185b13",[132],[2060],{"type":66,"tag":148,"props":2061,"children":2063},{"className":2062},[],[2064],{"type":71,"value":2065},"df00ffe",{"type":71,"value":293},{"type":66,"tag":116,"props":2068,"children":2069},{},[2070,2072,2083],{"type":71,"value":2071},"fix(client): correct provider_token assignment to cookie (",{"type":66,"tag":128,"props":2073,"children":2076},{"href":2074,"rel":2075},"https://github.com/nuxt-modules/supabase/commit/a76df3f67d6b08daf359f38130ce08aeab57317b",[132],[2077],{"type":66,"tag":148,"props":2078,"children":2080},{"className":2079},[],[2081],{"type":71,"value":2082},"a76df3f",{"type":71,"value":293},{"type":66,"tag":67,"props":2085,"children":2086},{},[2087,2091,2092],{"type":66,"tag":120,"props":2088,"children":2089},{},[2090],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":2093,"children":2096},{"href":2094,"rel":2095},"https://github.com/nuxt-community/supabase-module/compare/v1.0.1...v1.0.2",[132],[2097],{"type":71,"value":2094},{"type":66,"tag":67,"props":2099,"children":2100},{},[2101,2102,2112,2113],{"type":71,"value":1669},{"type":66,"tag":128,"props":2103,"children":2106},{"href":2104,"rel":2105},"https://github.com/blqke",[132],[2107],{"type":66,"tag":120,"props":2108,"children":2109},{},[2110],{"type":71,"value":2111},"@blqke",{"type":71,"value":532},{"type":66,"tag":128,"props":2114,"children":2116},{"href":1987,"rel":2115},[132],[2117],{"type":66,"tag":120,"props":2118,"children":2119},{},[2120],{"type":71,"value":1994},{"title":59,"searchDepth":78,"depth":78,"links":2122},[2123],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.2",{"url":2128,"total_count":190,"+1":245,"-1":245,"laugh":245,"hooray":190,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/115135546/reactions",{"name":197,"url":198,"avatar":199},"github:v1.0.2.md",{"name":2132,"tag_name":2132,"date":2133,"body":2134,"v":192,"url":2423,"tarball":2424,"zipball":2425,"prerelease":60,"reactions":2426,"author":2432,"title":59,"description":2433,"_type":80,"_id":2434},"v1.0.1","2023-08-02T15:46:15Z",{"type":63,"children":2135,"toc":2420},[2136,2149,2154,2222,2227,2248,2252,2257,2386,2402,2405],{"type":66,"tag":67,"props":2137,"children":2138},{},[2139,2141,2147],{"type":71,"value":2140},"I am happy to announce the release of version ",{"type":66,"tag":148,"props":2142,"children":2144},{"className":2143},[],[2145],{"type":71,"value":2146},"1.0.0",{"type":71,"value":2148}," of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release.",{"type":66,"tag":98,"props":2150,"children":2151},{"id":100},[2152],{"type":71,"value":2153},"What's changed",{"type":66,"tag":112,"props":2155,"children":2156},{},[2157,2179,2184],{"type":66,"tag":116,"props":2158,"children":2159},{},[2160,2162,2169,2171,2178],{"type":71,"value":2161},"Supabase introduced a new authentication flow (PKCE) a few months ago, which is now the default behavior of the module. However, you can still revert to the old (and less secure) authentication method through the module configuration. To help you seamlessly integrate this new flow, a ",{"type":66,"tag":128,"props":2163,"children":2166},{"href":2164,"rel":2165},"https://supabase.nuxtjs.org/authentication",[132],[2167],{"type":71,"value":2168},"dedicated section",{"type":71,"value":2170}," has been added to the documentation. (",{"type":66,"tag":128,"props":2172,"children":2175},{"href":2173,"rel":2174},"https://github.com/nuxt-modules/supabase/issues/219",[132],[2176],{"type":71,"value":2177},"#219",{"type":71,"value":293},{"type":66,"tag":116,"props":2180,"children":2181},{},[2182],{"type":71,"value":2183},"Building upon the previous point, we have implemented substantial changes to the session management, involving alterations to how Supabase clients are instantiated and how sessions are synchronized between the server and client-side. Consequently, these changes result in some breaking changes, which are listed below.",{"type":66,"tag":116,"props":2185,"children":2186},{},[2187,2189,2196,2198,2205,2207,2214,2216],{"type":71,"value":2188},"A brand new documentation has been built entirely using ",{"type":66,"tag":128,"props":2190,"children":2193},{"href":2191,"rel":2192},"https://nuxt.studio",[132],[2194],{"type":71,"value":2195},"Nuxt Studio",{"type":71,"value":2197},". Feel free to create PRs to suggest fixes or add any necessary changes to further enhance the documentation. (",{"type":66,"tag":128,"props":2199,"children":2202},{"href":2200,"rel":2201},"https://github.com/nuxt-modules/supabase/issues/210",[132],[2203],{"type":71,"value":2204},"#210",{"type":71,"value":2206}," / ",{"type":66,"tag":128,"props":2208,"children":2211},{"href":2209,"rel":2210},"https://github.com/nuxt-modules/supabase/issues/221",[132],[2212],{"type":71,"value":2213},"#221",{"type":71,"value":2215},") => ",{"type":66,"tag":128,"props":2217,"children":2220},{"href":2218,"rel":2219},"https://supabase.nuxtjs.org",[132],[2221],{"type":71,"value":2218},{"type":66,"tag":67,"props":2223,"children":2224},{},[2225],{"type":71,"value":2226},"Here's documentation that can help you understand the PKCE authentication flow:",{"type":66,"tag":112,"props":2228,"children":2229},{},[2230,2239],{"type":66,"tag":116,"props":2231,"children":2232},{},[2233],{"type":66,"tag":128,"props":2234,"children":2237},{"href":2235,"rel":2236},"https://supabase.com/blog/supabase-auth-sso-pkce#server-side-and-mobile-auth",[132],[2238],{"type":71,"value":2235},{"type":66,"tag":116,"props":2240,"children":2241},{},[2242],{"type":66,"tag":128,"props":2243,"children":2246},{"href":2244,"rel":2245},"https://supabase.com/docs/guides/resources/glossary#pkce",[132],[2247],{"type":71,"value":2244},{"type":66,"tag":2249,"props":2250,"children":2251},"br",{},[],{"type":66,"tag":67,"props":2253,"children":2254},{},[2255],{"type":71,"value":2256},"⚠️ BREAKING CHANGES ⚠️",{"type":66,"tag":112,"props":2258,"children":2259},{},[2260,2278,2304,2323,2351],{"type":66,"tag":116,"props":2261,"children":2262},{},[2263,2269,2271,2276],{"type":66,"tag":148,"props":2264,"children":2266},{"className":2265},[],[2267],{"type":71,"value":2268},"useSupabaseAuthClient",{"type":71,"value":2270}," has been removed in favor of ",{"type":66,"tag":148,"props":2272,"children":2274},{"className":2273},[],[2275],{"type":71,"value":21},{"type":71,"value":2277}," in all cases",{"type":66,"tag":116,"props":2279,"children":2280},{},[2281,2286,2288,2294,2296,2302],{"type":66,"tag":148,"props":2282,"children":2284},{"className":2283},[],[2285],{"type":71,"value":34},{"type":71,"value":2287}," is now returning a promise (should be called with ",{"type":66,"tag":148,"props":2289,"children":2291},{"className":2290},[],[2292],{"type":71,"value":2293},"await",{"type":71,"value":2295}," in an ",{"type":66,"tag":148,"props":2297,"children":2299},{"className":2298},[],[2300],{"type":71,"value":2301},"async",{"type":71,"value":2303}," method)",{"type":66,"tag":116,"props":2305,"children":2306},{},[2307,2313,2315,2321],{"type":66,"tag":148,"props":2308,"children":2310},{"className":2309},[],[2311],{"type":71,"value":2312},"redirect",{"type":71,"value":2314}," option is enable by default, follow this ",{"type":66,"tag":128,"props":2316,"children":2318},{"href":2164,"rel":2317},[132],[2319],{"type":71,"value":2320},"guide",{"type":71,"value":2322}," to update your app",{"type":66,"tag":116,"props":2324,"children":2325},{},[2326,2332,2334,2340,2342,2349],{"type":66,"tag":148,"props":2327,"children":2329},{"className":2328},[],[2330],{"type":71,"value":2331},"client",{"type":71,"value":2333}," option becomes ",{"type":66,"tag":148,"props":2335,"children":2337},{"className":2336},[],[2338],{"type":71,"value":2339},"clientOptions",{"type":71,"value":2341}," with new ",{"type":66,"tag":128,"props":2343,"children":2346},{"href":2344,"rel":2345},"https://supabase.nuxtjs.org/get-started#clientoptions",[132],[2347],{"type":71,"value":2348},"default value",{"type":71,"value":2350}," (including the PKCE flow)",{"type":66,"tag":116,"props":2352,"children":2353},{},[2354,2360,2362,2368,2369,2375,2377,2384],{"type":66,"tag":148,"props":2355,"children":2357},{"className":2356},[],[2358],{"type":71,"value":2359},"cookies",{"type":71,"value":2361}," options is split in ",{"type":66,"tag":148,"props":2363,"children":2365},{"className":2364},[],[2366],{"type":71,"value":2367},"cookieName",{"type":71,"value":310},{"type":66,"tag":148,"props":2370,"children":2372},{"className":2371},[],[2373],{"type":71,"value":2374},"cookieOptions",{"type":71,"value":2376},", ",{"type":66,"tag":128,"props":2378,"children":2381},{"href":2379,"rel":2380},"https://supabase.nuxtjs.org/get-started#cookieoptions",[132],[2382],{"type":71,"value":2383},"default values",{"type":71,"value":2385}," have not changed",{"type":66,"tag":67,"props":2387,"children":2388},{},[2389,2391],{"type":71,"value":2390},"Here si the commit done for updating the demo with the last version: ",{"type":66,"tag":128,"props":2392,"children":2395},{"href":2393,"rel":2394},"https://github.com/nuxt-modules/supabase/commit/10e05860862b68c49817f6420d50d082452f7a7f",[132],[2396],{"type":66,"tag":148,"props":2397,"children":2399},{"className":2398},[],[2400],{"type":71,"value":2401},"10e0586",{"type":66,"tag":2249,"props":2403,"children":2404},{},[],{"type":66,"tag":67,"props":2406,"children":2407},{},[2408,2410,2418],{"type":71,"value":2409},"A huge thanks to ",{"type":66,"tag":128,"props":2411,"children":2413},{"href":1987,"rel":2412},[132],[2414],{"type":66,"tag":120,"props":2415,"children":2416},{},[2417],{"type":71,"value":1994},{"type":71,"value":2419}," for initialising all those changes and help me built it 💚",{"title":59,"searchDepth":78,"depth":78,"links":2421},[2422],{"id":100,"depth":78,"text":2153},"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.1",{"url":2427,"total_count":2428,"+1":2429,"-1":245,"laugh":245,"hooray":2430,"confused":245,"heart":1022,"rocket":2431,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/114843996/reactions",40,9,19,8,{"name":197,"url":198,"avatar":199},"I am happy to announce the release of version 1.0.0 of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release.","github:v1.0.1.md",{"name":2436,"tag_name":2436,"date":2437,"body":2438,"v":245,"url":2530,"tarball":2531,"zipball":2532,"prerelease":60,"reactions":2533,"author":2535,"title":59,"description":59,"_type":80,"_id":2536},"v0.3.8","2023-07-03T08:29:53Z",{"type":63,"children":2439,"toc":2527},[2440,2444,2501,2515],{"type":66,"tag":98,"props":2441,"children":2442},{"id":100},[2443],{"type":71,"value":103},{"type":66,"tag":112,"props":2445,"children":2446},{},[2447,2484],{"type":66,"tag":116,"props":2448,"children":2449},{},[2450,2452,2463,2465,2472,2474],{"type":71,"value":2451},"feat(session): save provider access/refresh tokens in cookies (",{"type":66,"tag":128,"props":2453,"children":2456},{"href":2454,"rel":2455},"https://github.com/nuxt-modules/supabase/commit/ea8c21f3d625984832cb27a3ae7605b16caaf94b",[132],[2457],{"type":66,"tag":148,"props":2458,"children":2460},{"className":2459},[],[2461],{"type":71,"value":2462},"ea8c21f",{"type":71,"value":2464},") in ",{"type":66,"tag":128,"props":2466,"children":2469},{"href":2467,"rel":2468},"https://github.com/nuxt-modules/supabase/issues/197",[132],[2470],{"type":71,"value":2471},"#197",{"type":71,"value":2473}," by ",{"type":66,"tag":128,"props":2475,"children":2478},{"href":2476,"rel":2477},"https://github.com/mitjans",[132],[2479],{"type":66,"tag":120,"props":2480,"children":2481},{},[2482],{"type":71,"value":2483},"@mitjans",{"type":66,"tag":116,"props":2485,"children":2486},{},[2487,2489,2500],{"type":71,"value":2488},"chore(deps): upgrade to latest (",{"type":66,"tag":128,"props":2490,"children":2493},{"href":2491,"rel":2492},"https://github.com/nuxt-modules/supabase/commit/a52abc871b6ab756c2b477f7c6b3c0f51279693c",[132],[2494],{"type":66,"tag":148,"props":2495,"children":2497},{"className":2496},[],[2498],{"type":71,"value":2499},"a52abc8",{"type":71,"value":293},{"type":66,"tag":67,"props":2502,"children":2503},{},[2504,2508,2509],{"type":66,"tag":120,"props":2505,"children":2506},{},[2507],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":2510,"children":2513},{"href":2511,"rel":2512},"https://github.com/nuxt-community/supabase-module/compare/v0.3.7...v0.3.8",[132],[2514],{"type":71,"value":2511},{"type":66,"tag":67,"props":2516,"children":2517},{},[2518,2519],{"type":71,"value":1669},{"type":66,"tag":128,"props":2520,"children":2522},{"href":2476,"rel":2521},[132],[2523],{"type":66,"tag":120,"props":2524,"children":2525},{},[2526],{"type":71,"value":2483},{"title":59,"searchDepth":78,"depth":78,"links":2528},[2529],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.8","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.8","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.8",{"url":2534,"total_count":1122,"+1":245,"-1":245,"laugh":245,"hooray":1122,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/110829614/reactions",{"name":197,"url":198,"avatar":199},"github:v0.3.8.md",{"name":2538,"tag_name":2538,"date":2539,"body":2540,"v":245,"url":2609,"tarball":2610,"zipball":2611,"prerelease":60,"author":2612,"title":59,"description":59,"_type":80,"_id":2613},"v0.3.7","2023-06-12T07:51:13Z",{"type":63,"children":2541,"toc":2606},[2542,2546,2592],{"type":66,"tag":98,"props":2543,"children":2544},{"id":100},[2545],{"type":71,"value":103},{"type":66,"tag":112,"props":2547,"children":2548},{},[2549,2575],{"type":66,"tag":116,"props":2550,"children":2551},{},[2552,2554,2559,2560,2567,2568],{"type":71,"value":2553},"fix(client): fix persist session warning for ",{"type":66,"tag":148,"props":2555,"children":2557},{"className":2556},[],[2558],{"type":71,"value":37},{"type":71,"value":317},{"type":66,"tag":128,"props":2561,"children":2564},{"href":2562,"rel":2563},"https://github.com/nuxt-modules/supabase/issues/194",[132],[2565],{"type":71,"value":2566},"#194",{"type":71,"value":588},{"type":66,"tag":128,"props":2569,"children":2572},{"href":2570,"rel":2571},"https://github.com/nuxt-modules/supabase/issues/193",[132],[2573],{"type":71,"value":2574},"#193",{"type":66,"tag":116,"props":2576,"children":2577},{},[2578,2580,2591],{"type":71,"value":2579},"docs(get-started): remove defineNuxtConfig (",{"type":66,"tag":128,"props":2581,"children":2584},{"href":2582,"rel":2583},"https://github.com/nuxt-modules/supabase/commit/0151901",[132],[2585],{"type":66,"tag":148,"props":2586,"children":2588},{"className":2587},[],[2589],{"type":71,"value":2590},"0151901",{"type":71,"value":293},{"type":66,"tag":67,"props":2593,"children":2594},{},[2595,2596],{"type":71,"value":1669},{"type":66,"tag":128,"props":2597,"children":2600},{"href":2598,"rel":2599},"https://github.com/jawngee",[132],[2601],{"type":66,"tag":120,"props":2602,"children":2603},{},[2604],{"type":71,"value":2605},"@jawngee",{"title":59,"searchDepth":78,"depth":78,"links":2607},[2608],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.7","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.7","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.7",{"name":197,"url":198,"avatar":199},"github:v0.3.7.md",{"name":2615,"tag_name":2615,"date":2616,"body":2617,"v":245,"url":2673,"tarball":2674,"zipball":2675,"prerelease":60,"reactions":2676,"author":2678,"title":59,"description":59,"_type":80,"_id":2679},"v0.3.6","2023-06-02T14:33:38Z",{"type":63,"children":2618,"toc":2670},[2619,2623],{"type":66,"tag":98,"props":2620,"children":2621},{"id":100},[2622],{"type":71,"value":103},{"type":66,"tag":112,"props":2624,"children":2625},{},[2626,2631,2657],{"type":66,"tag":116,"props":2627,"children":2628},{},[2629],{"type":71,"value":2630},"chore(deps): upgrade to nuxt and supabase latest version",{"type":66,"tag":116,"props":2632,"children":2633},{},[2634,2636,2647,2649,2656],{"type":71,"value":2635},"fix(client): remove persist session warning on server side in ",{"type":66,"tag":128,"props":2637,"children":2640},{"href":2638,"rel":2639},"https://github.com/nuxt-modules/supabase/commit/227113f68fb8723f9687adfa12150f825940e0c9",[132],[2641],{"type":66,"tag":148,"props":2642,"children":2644},{"className":2643},[],[2645],{"type":71,"value":2646},"227113f",{"type":71,"value":2648}," (Resolves ",{"type":66,"tag":128,"props":2650,"children":2653},{"href":2651,"rel":2652},"https://github.com/nuxt-modules/supabase/issues/188",[132],[2654],{"type":71,"value":2655},"#188",{"type":71,"value":293},{"type":66,"tag":116,"props":2658,"children":2659},{},[2660,2662,2669],{"type":71,"value":2661},"fix(chore): resolve imports (Resolves ",{"type":66,"tag":128,"props":2663,"children":2666},{"href":2664,"rel":2665},"https://github.com/nuxt-modules/supabase/issues/190",[132],[2667],{"type":71,"value":2668},"#190",{"type":71,"value":293},{"title":59,"searchDepth":78,"depth":78,"links":2671},[2672],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.6","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.6","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.6",{"url":2677,"total_count":1122,"+1":192,"-1":245,"laugh":245,"hooray":1022,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/105847469/reactions",{"name":197,"url":198,"avatar":199},"github:v0.3.6.md",{"name":2681,"tag_name":2681,"date":2682,"body":2683,"v":245,"url":2972,"tarball":2973,"zipball":2974,"prerelease":60,"reactions":2975,"author":2977,"title":59,"description":59,"_type":80,"_id":2978},"v0.3.5","2023-04-03T09:50:57Z",{"type":63,"children":2684,"toc":2969},[2685,2689,2918,2932],{"type":66,"tag":98,"props":2686,"children":2687},{"id":100},[2688],{"type":71,"value":103},{"type":66,"tag":112,"props":2690,"children":2691},{},[2692,2709,2726,2743,2760,2777,2794,2811,2828,2845,2877,2894],{"type":66,"tag":116,"props":2693,"children":2694},{},[2695,2697,2708],{"type":71,"value":2696},"chore(demo): upgrade on last version (",{"type":66,"tag":128,"props":2698,"children":2701},{"href":2699,"rel":2700},"https://github.com/nuxt-modules/supabase/commit/9bb9e2856823a0bb86c07ae7775462e02a1e430d",[132],[2702],{"type":66,"tag":148,"props":2703,"children":2705},{"className":2704},[],[2706],{"type":71,"value":2707},"9bb9e28",{"type":71,"value":293},{"type":66,"tag":116,"props":2710,"children":2711},{},[2712,2714,2725],{"type":71,"value":2713},"chore(demo): generate database types from supabase cli (",{"type":66,"tag":128,"props":2715,"children":2718},{"href":2716,"rel":2717},"https://github.com/nuxt-modules/supabase/commit/bca199292dfeb23d5e0581ab40a6994fed3d1157",[132],[2719],{"type":66,"tag":148,"props":2720,"children":2722},{"className":2721},[],[2723],{"type":71,"value":2724},"bca1992",{"type":71,"value":293},{"type":66,"tag":116,"props":2727,"children":2728},{},[2729,2731,2742],{"type":71,"value":2730},"docs(links): update nuxt & supabase links and fix typos (",{"type":66,"tag":128,"props":2732,"children":2735},{"href":2733,"rel":2734},"https://github.com/nuxt-modules/supabase/commit/5699dc6c22f9182e9593936fc1260fc785eea450",[132],[2736],{"type":66,"tag":148,"props":2737,"children":2739},{"className":2738},[],[2740],{"type":71,"value":2741},"5699dc6",{"type":71,"value":293},{"type":66,"tag":116,"props":2744,"children":2745},{},[2746,2748,2759],{"type":71,"value":2747},"chore(app): move to pnpm (",{"type":66,"tag":128,"props":2749,"children":2752},{"href":2750,"rel":2751},"https://github.com/nuxt-modules/supabase/commit/94f7e130747801584d2b0999bd2f5f904e575082",[132],[2753],{"type":66,"tag":148,"props":2754,"children":2756},{"className":2755},[],[2757],{"type":71,"value":2758},"94f7e13",{"type":71,"value":293},{"type":66,"tag":116,"props":2761,"children":2762},{},[2763,2765,2776],{"type":71,"value":2764},"chore(module): conditionally add redirect plugin (",{"type":66,"tag":128,"props":2766,"children":2769},{"href":2767,"rel":2768},"https://github.com/nuxt-modules/supabase/commit/0cad0a557934f669f2ab424ef072f6b07c098646",[132],[2770],{"type":66,"tag":148,"props":2771,"children":2773},{"className":2772},[],[2774],{"type":71,"value":2775},"0cad0a5",{"type":71,"value":293},{"type":66,"tag":116,"props":2778,"children":2779},{},[2780,2782,2793],{"type":71,"value":2781},"docs(get-started): fix typos (",{"type":66,"tag":128,"props":2783,"children":2786},{"href":2784,"rel":2785},"https://github.com/nuxt-modules/supabase/commit/ba437a8534f3dcda53f805cc34b5d6a943297354",[132],[2787],{"type":66,"tag":148,"props":2788,"children":2790},{"className":2789},[],[2791],{"type":71,"value":2792},"ba437a8",{"type":71,"value":293},{"type":66,"tag":116,"props":2795,"children":2796},{},[2797,2799,2810],{"type":71,"value":2798},"docs(composables): correct grammar errors (",{"type":66,"tag":128,"props":2800,"children":2803},{"href":2801,"rel":2802},"https://github.com/nuxt-modules/supabase/commit/034d7dfaf9f52a08da0ade4bf6d5ed31ec740734",[132],[2804],{"type":66,"tag":148,"props":2805,"children":2807},{"className":2806},[],[2808],{"type":71,"value":2809},"034d7df",{"type":71,"value":293},{"type":66,"tag":116,"props":2812,"children":2813},{},[2814,2816,2827],{"type":71,"value":2815},"feat(demo): add call from server route(",{"type":66,"tag":128,"props":2817,"children":2820},{"href":2818,"rel":2819},"https://github.com/nuxt-modules/supabase/commit/989a91eacdc471de90a2307c39cd03f23cca57ee",[132],[2821],{"type":66,"tag":148,"props":2822,"children":2824},{"className":2823},[],[2825],{"type":71,"value":2826},"989a91e",{"type":71,"value":293},{"type":66,"tag":116,"props":2829,"children":2830},{},[2831,2833,2844],{"type":71,"value":2832},"perf(useSupabaseAuthClient): avoid declaring unused variables (",{"type":66,"tag":128,"props":2834,"children":2837},{"href":2835,"rel":2836},"https://github.com/nuxt-modules/supabase/commit/8c070b9e571b3fe7870c08033ea561624a6ae575",[132],[2838],{"type":66,"tag":148,"props":2839,"children":2841},{"className":2840},[],[2842],{"type":71,"value":2843},"8c070b9",{"type":71,"value":293},{"type":66,"tag":116,"props":2846,"children":2847},{},[2848,2850,2861,2862,2869,2870],{"type":71,"value":2849},"fix(dev): optimize supabase deps (",{"type":66,"tag":128,"props":2851,"children":2854},{"href":2852,"rel":2853},"https://github.com/nuxt-modules/supabase/commit/d1da3f6b2f463e7196c69c3a580833438926a6e1",[132],[2855],{"type":66,"tag":148,"props":2856,"children":2858},{"className":2857},[],[2859],{"type":71,"value":2860},"d1da3f6",{"type":71,"value":588},{"type":66,"tag":128,"props":2863,"children":2866},{"href":2864,"rel":2865},"https://github.com/nuxt-modules/supabase/issues/172",[132],[2867],{"type":71,"value":2868},"#172",{"type":71,"value":1174},{"type":66,"tag":128,"props":2871,"children":2874},{"href":2872,"rel":2873},"https://github.com/nuxt-modules/supabase/issues/151",[132],[2875],{"type":71,"value":2876},"#151",{"type":66,"tag":116,"props":2878,"children":2879},{},[2880,2882,2893],{"type":71,"value":2881},"chore(deps): transpile websocket lib prod only (",{"type":66,"tag":128,"props":2883,"children":2886},{"href":2884,"rel":2885},"https://github.com/nuxt-modules/supabase/commit/a1ee40c848c9da81aa41acc53dc3555b32bafd86",[132],[2887],{"type":66,"tag":148,"props":2888,"children":2890},{"className":2889},[],[2891],{"type":71,"value":2892},"a1ee40c",{"type":71,"value":293},{"type":66,"tag":116,"props":2895,"children":2896},{},[2897,2899,2910,2911,2916],{"type":71,"value":2898},"fix(deps): transpile gotrue only on client (",{"type":66,"tag":128,"props":2900,"children":2903},{"href":2901,"rel":2902},"https://github.com/nuxt-modules/supabase/commit/fcc6823e248395a513706cf67ab664f84daacb45",[132],[2904],{"type":66,"tag":148,"props":2905,"children":2907},{"className":2906},[],[2908],{"type":71,"value":2909},"fcc6823",{"type":71,"value":588},{"type":66,"tag":128,"props":2912,"children":2914},{"href":2864,"rel":2913},[132],[2915],{"type":71,"value":2868},{"type":71,"value":2917}," on server side",{"type":66,"tag":67,"props":2919,"children":2920},{},[2921,2925,2926],{"type":66,"tag":120,"props":2922,"children":2923},{},[2924],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":2927,"children":2930},{"href":2928,"rel":2929},"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.5",[132],[2931],{"type":71,"value":2928},{"type":66,"tag":67,"props":2933,"children":2934},{},[2935,2937,2944,2946,2953,2954,2961,2962],{"type":71,"value":2936},"💚 Thanks for the help from 💚\r\n@",{"type":66,"tag":128,"props":2938,"children":2941},{"href":2939,"rel":2940},"https://github.com/nuxt-modules/supabase/commits?author=kuizuo",[132],[2942],{"type":71,"value":2943},"kuizuo",{"type":71,"value":2945},"\r\n@",{"type":66,"tag":128,"props":2947,"children":2950},{"href":2948,"rel":2949},"https://github.com/nuxt-modules/supabase/commits?author=tnntwister",[132],[2951],{"type":71,"value":2952},"tnntwister",{"type":71,"value":2945},{"type":66,"tag":128,"props":2955,"children":2958},{"href":2956,"rel":2957},"https://github.com/nuxt-modules/supabase/commits?author=yannaufray",[132],[2959],{"type":71,"value":2960},"yannaufray",{"type":71,"value":2945},{"type":66,"tag":128,"props":2963,"children":2966},{"href":2964,"rel":2965},"https://github.com/nuxt-modules/supabase/commits?author=DamianGlowala",[132],[2967],{"type":71,"value":2968},"DamianGlowala",{"title":59,"searchDepth":78,"depth":78,"links":2970},[2971],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.5",{"url":2976,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":245,"rocket":192,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/97822579/reactions",{"name":197,"url":198,"avatar":199},"github:v0.3.5.md",{"name":2980,"tag_name":2980,"date":2981,"body":2982,"v":245,"url":3245,"tarball":3246,"zipball":3247,"prerelease":3248,"reactions":3249,"author":3251,"title":59,"description":59,"_type":80,"_id":3252},"v0.3.3","2023-03-31T21:51:14Z",{"type":63,"children":2983,"toc":3242},[2984,2988,3228],{"type":66,"tag":98,"props":2985,"children":2986},{"id":100},[2987],{"type":71,"value":103},{"type":66,"tag":112,"props":2989,"children":2990},{},[2991,3014,3030,3047,3064,3087,3104,3129,3152,3175,3190,3213],{"type":66,"tag":116,"props":2992,"children":2993},{},[2994,2995,3002,3003,3013],{"type":71,"value":2832},{"type":66,"tag":128,"props":2996,"children":2999},{"href":2997,"rel":2998},"https://github.com/nuxt-modules/supabase/issues/166",[132],[3000],{"type":71,"value":3001},"#166",{"type":71,"value":284},{"type":66,"tag":128,"props":3004,"children":3007},{"href":3005,"rel":3006},"https://github.com/nuxt-modules/supabase/commit/8c070b9",[132],[3008],{"type":66,"tag":148,"props":3009,"children":3011},{"className":3010},[],[3012],{"type":71,"value":2843},{"type":71,"value":293},{"type":66,"tag":116,"props":3015,"children":3016},{},[3017,3019,3029],{"type":71,"value":3018},"feat(demo): add call from server route (",{"type":66,"tag":128,"props":3020,"children":3023},{"href":3021,"rel":3022},"https://github.com/nuxt-modules/supabase/commit/989a91e",[132],[3024],{"type":66,"tag":148,"props":3025,"children":3027},{"className":3026},[],[3028],{"type":71,"value":2826},{"type":71,"value":293},{"type":66,"tag":116,"props":3031,"children":3032},{},[3033,3035,3046],{"type":71,"value":3034},"chore(demo): upgrade deps (",{"type":66,"tag":128,"props":3036,"children":3039},{"href":3037,"rel":3038},"https://github.com/nuxt-modules/supabase/commit/9ebbc77",[132],[3040],{"type":66,"tag":148,"props":3041,"children":3043},{"className":3042},[],[3044],{"type":71,"value":3045},"9ebbc77",{"type":71,"value":293},{"type":66,"tag":116,"props":3048,"children":3049},{},[3050,3052,3063],{"type":71,"value":3051},"chore(deps): upgrade (",{"type":66,"tag":128,"props":3053,"children":3056},{"href":3054,"rel":3055},"https://github.com/nuxt-modules/supabase/commit/e274a5e",[132],[3057],{"type":66,"tag":148,"props":3058,"children":3060},{"className":3059},[],[3061],{"type":71,"value":3062},"e274a5e",{"type":71,"value":293},{"type":66,"tag":116,"props":3065,"children":3066},{},[3067,3068,3075,3076,3086],{"type":71,"value":2798},{"type":66,"tag":128,"props":3069,"children":3072},{"href":3070,"rel":3071},"https://github.com/nuxt-modules/supabase/issues/162",[132],[3073],{"type":71,"value":3074},"#162",{"type":71,"value":284},{"type":66,"tag":128,"props":3077,"children":3080},{"href":3078,"rel":3079},"https://github.com/nuxt-modules/supabase/commit/034d7df",[132],[3081],{"type":66,"tag":148,"props":3082,"children":3084},{"className":3083},[],[3085],{"type":71,"value":2809},{"type":71,"value":293},{"type":66,"tag":116,"props":3088,"children":3089},{},[3090,3092,3103],{"type":71,"value":3091},"docs(readme): add nuxt badge (",{"type":66,"tag":128,"props":3093,"children":3096},{"href":3094,"rel":3095},"https://github.com/nuxt-modules/supabase/commit/68271b8",[132],[3097],{"type":66,"tag":148,"props":3098,"children":3100},{"className":3099},[],[3101],{"type":71,"value":3102},"68271b8",{"type":71,"value":293},{"type":66,"tag":116,"props":3105,"children":3106},{},[3107,3109,3116,3117,3128],{"type":71,"value":3108},"docs(demo): fix typo (",{"type":66,"tag":128,"props":3110,"children":3113},{"href":3111,"rel":3112},"https://github.com/nuxt-modules/supabase/issues/125",[132],[3114],{"type":71,"value":3115},"#125",{"type":71,"value":284},{"type":66,"tag":128,"props":3118,"children":3121},{"href":3119,"rel":3120},"https://github.com/nuxt-modules/supabase/commit/bd33d12",[132],[3122],{"type":66,"tag":148,"props":3123,"children":3125},{"className":3124},[],[3126],{"type":71,"value":3127},"bd33d12",{"type":71,"value":293},{"type":66,"tag":116,"props":3130,"children":3131},{},[3132,3133,3140,3141,3151],{"type":71,"value":2781},{"type":66,"tag":128,"props":3134,"children":3137},{"href":3135,"rel":3136},"https://github.com/nuxt-modules/supabase/issues/154",[132],[3138],{"type":71,"value":3139},"#154",{"type":71,"value":284},{"type":66,"tag":128,"props":3142,"children":3145},{"href":3143,"rel":3144},"https://github.com/nuxt-modules/supabase/commit/ba437a8",[132],[3146],{"type":66,"tag":148,"props":3147,"children":3149},{"className":3148},[],[3150],{"type":71,"value":2792},{"type":71,"value":293},{"type":66,"tag":116,"props":3153,"children":3154},{},[3155,3156,3163,3164,3174],{"type":71,"value":2764},{"type":66,"tag":128,"props":3157,"children":3160},{"href":3158,"rel":3159},"https://github.com/nuxt-modules/supabase/issues/157",[132],[3161],{"type":71,"value":3162},"#157",{"type":71,"value":284},{"type":66,"tag":128,"props":3165,"children":3168},{"href":3166,"rel":3167},"https://github.com/nuxt-modules/supabase/commit/0cad0a5",[132],[3169],{"type":66,"tag":148,"props":3170,"children":3172},{"className":3171},[],[3173],{"type":71,"value":2775},{"type":71,"value":293},{"type":66,"tag":116,"props":3176,"children":3177},{},[3178,3179,3189],{"type":71,"value":2747},{"type":66,"tag":128,"props":3180,"children":3183},{"href":3181,"rel":3182},"https://github.com/nuxt-modules/supabase/commit/94f7e13",[132],[3184],{"type":66,"tag":148,"props":3185,"children":3187},{"className":3186},[],[3188],{"type":71,"value":2758},{"type":71,"value":293},{"type":66,"tag":116,"props":3191,"children":3192},{},[3193,3194,3201,3202,3212],{"type":71,"value":2730},{"type":66,"tag":128,"props":3195,"children":3198},{"href":3196,"rel":3197},"https://github.com/nuxt-modules/supabase/issues/126",[132],[3199],{"type":71,"value":3200},"#126",{"type":71,"value":284},{"type":66,"tag":128,"props":3203,"children":3206},{"href":3204,"rel":3205},"https://github.com/nuxt-modules/supabase/commit/5699dc6",[132],[3207],{"type":66,"tag":148,"props":3208,"children":3210},{"className":3209},[],[3211],{"type":71,"value":2741},{"type":71,"value":293},{"type":66,"tag":116,"props":3214,"children":3215},{},[3216,3217,3227],{"type":71,"value":2713},{"type":66,"tag":128,"props":3218,"children":3221},{"href":3219,"rel":3220},"https://github.com/nuxt-modules/supabase/commit/bca1992",[132],[3222],{"type":66,"tag":148,"props":3223,"children":3225},{"className":3224},[],[3226],{"type":71,"value":2724},{"type":71,"value":293},{"type":66,"tag":67,"props":3229,"children":3230},{},[3231,3235,3236],{"type":66,"tag":120,"props":3232,"children":3233},{},[3234],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3237,"children":3240},{"href":3238,"rel":3239},"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3",[132],[3241],{"type":71,"value":3238},{"title":59,"searchDepth":78,"depth":78,"links":3243},[3244],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.3",true,{"url":3250,"total_count":192,"+1":192,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/97697076/reactions",{"name":197,"url":198,"avatar":199},"github:v0.3.3.md",{"name":3254,"tag_name":3254,"date":3255,"body":3256,"v":245,"url":3321,"tarball":3322,"zipball":3323,"prerelease":60,"author":3324,"title":59,"description":59,"_type":80,"_id":3325},"v0.3.1","2023-02-07T20:18:04Z",{"type":63,"children":3257,"toc":3318},[3258,3262,3304],{"type":66,"tag":98,"props":3259,"children":3260},{"id":100},[3261],{"type":71,"value":103},{"type":66,"tag":112,"props":3263,"children":3264},{},[3265,3282,3299],{"type":66,"tag":116,"props":3266,"children":3267},{},[3268,3270,3281],{"type":71,"value":3269},"chore(app): upgrade deps and fix lint (",{"type":66,"tag":128,"props":3271,"children":3274},{"href":3272,"rel":3273},"https://github.com/nuxt-modules/supabase/commit/68baf68",[132],[3275],{"type":66,"tag":148,"props":3276,"children":3278},{"className":3277},[],[3279],{"type":71,"value":3280},"68baf68",{"type":71,"value":293},{"type":66,"tag":116,"props":3283,"children":3284},{},[3285,3287,3298],{"type":71,"value":3286},"fix(client): unset user before session on logout (",{"type":66,"tag":128,"props":3288,"children":3291},{"href":3289,"rel":3290},"https://github.com/nuxt-modules/supabase/commit/ab574ef",[132],[3292],{"type":66,"tag":148,"props":3293,"children":3295},{"className":3294},[],[3296],{"type":71,"value":3297},"ab574ef",{"type":71,"value":293},{"type":66,"tag":116,"props":3300,"children":3301},{},[3302],{"type":71,"value":3303},"chore(demo): update with latest and fix logout",{"type":66,"tag":67,"props":3305,"children":3306},{},[3307,3311,3312],{"type":66,"tag":120,"props":3308,"children":3309},{},[3310],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3313,"children":3316},{"href":3314,"rel":3315},"https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1",[132],[3317],{"type":71,"value":3314},{"title":59,"searchDepth":78,"depth":78,"links":3319},[3320],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.1",{"name":197,"url":198,"avatar":199},"github:v0.3.1.md",{"name":3327,"tag_name":3327,"date":3328,"body":3329,"v":245,"url":3451,"tarball":3452,"zipball":3453,"prerelease":60,"reactions":3454,"author":3456,"title":59,"description":2256,"_type":80,"_id":3457},"v0.3.0","2022-11-22T15:26:02Z",{"type":63,"children":3330,"toc":3448},[3331,3335,3339,3360,3394,3422,3434],{"type":66,"tag":67,"props":3332,"children":3333},{},[3334],{"type":71,"value":2256},{"type":66,"tag":98,"props":3336,"children":3337},{"id":100},[3338],{"type":71,"value":103},{"type":66,"tag":67,"props":3340,"children":3341},{},[3342,3344,3351,3353,3358],{"type":71,"value":3343},"In order to resolve ",{"type":66,"tag":128,"props":3345,"children":3348},{"href":3346,"rel":3347},"https://github.com/nuxt-modules/supabase/issues/114",[132],[3349],{"type":71,"value":3350},"#114",{"type":71,"value":3352},", I have made the choice to separate the ",{"type":66,"tag":148,"props":3354,"children":3356},{"className":3355},[],[3357],{"type":71,"value":21},{"type":71,"value":3359}," in two other composables:",{"type":66,"tag":112,"props":3361,"children":3362},{},[3363,3383],{"type":66,"tag":116,"props":3364,"children":3365},{},[3366,3368,3373,3375,3381],{"type":71,"value":3367},"The ",{"type":66,"tag":148,"props":3369,"children":3371},{"className":3370},[],[3372],{"type":71,"value":2268},{"type":71,"value":3374}," is dedicated to authentification purpose only. It won't be recreate if your token expires, it is used in the client plugin to listen to ",{"type":66,"tag":148,"props":3376,"children":3378},{"className":3377},[],[3379],{"type":71,"value":3380},"onAuthStateChange",{"type":71,"value":3382}," events.",{"type":66,"tag":116,"props":3384,"children":3385},{},[3386,3387,3392],{"type":71,"value":3367},{"type":66,"tag":148,"props":3388,"children":3390},{"className":3389},[],[3391],{"type":71,"value":21},{"type":71,"value":3393}," is now only useful for data request.",{"type":66,"tag":67,"props":3395,"children":3396},{},[3397,3399,3404,3406,3411,3413,3420],{"type":71,"value":3398},"To avoid regression you just need to use ",{"type":66,"tag":148,"props":3400,"children":3402},{"className":3401},[],[3403],{"type":71,"value":2268},{"type":71,"value":3405}," instead of ",{"type":66,"tag":148,"props":3407,"children":3409},{"className":3408},[],[3410],{"type":71,"value":21},{"type":71,"value":3412}," everywhere you use ",{"type":66,"tag":128,"props":3414,"children":3417},{"href":3415,"rel":3416},"https://supabase.com/docs/reference/javascript/auth-signup",[132],[3418],{"type":71,"value":3419},"Supabase auth methods",{"type":71,"value":3421},".",{"type":66,"tag":67,"props":3423,"children":3424},{},[3425,3432],{"type":66,"tag":128,"props":3426,"children":3429},{"href":3427,"rel":3428},"https://supabase.nuxtjs.org/usage/composables/use-supabase-auth-client",[132],[3430],{"type":71,"value":3431},"Documentation",{"type":71,"value":3433}," has been updated.",{"type":66,"tag":67,"props":3435,"children":3436},{},[3437,3441,3442],{"type":66,"tag":120,"props":3438,"children":3439},{},[3440],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3443,"children":3446},{"href":3444,"rel":3445},"https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0",[132],[3447],{"type":71,"value":3444},{"title":59,"searchDepth":78,"depth":78,"links":3449},[3450],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.0",{"url":3455,"total_count":2431,"+1":78,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":190,"rocket":190,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/83886320/reactions",{"name":197,"url":198,"avatar":199},"github:v0.3.0.md",{"name":3459,"tag_name":3459,"date":3460,"body":3461,"v":245,"url":3498,"tarball":3499,"zipball":3500,"prerelease":60,"author":3501,"title":59,"description":59,"_type":80,"_id":3502},"v0.2.6","2022-11-22T15:16:16Z",{"type":63,"children":3462,"toc":3495},[3463,3467,3481],{"type":66,"tag":98,"props":3464,"children":3465},{"id":100},[3466],{"type":71,"value":103},{"type":66,"tag":112,"props":3468,"children":3469},{},[3470],{"type":66,"tag":116,"props":3471,"children":3472},{},[3473,3475],{"type":71,"value":3474},"chore: update to Nuxt 3 stable 🚀 ",{"type":66,"tag":128,"props":3476,"children":3479},{"href":3477,"rel":3478},"https://nuxt.com/v3",[132],[3480],{"type":71,"value":3477},{"type":66,"tag":67,"props":3482,"children":3483},{},[3484,3488,3489],{"type":66,"tag":120,"props":3485,"children":3486},{},[3487],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3490,"children":3493},{"href":3491,"rel":3492},"https://github.com/nuxt-community/supabase-module/compare/v0.2.5...v0.2.6",[132],[3494],{"type":71,"value":3491},{"title":59,"searchDepth":78,"depth":78,"links":3496},[3497],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.6","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.6","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.6",{"name":197,"url":198,"avatar":199},"github:v0.2.6.md",{"name":3504,"tag_name":3504,"date":3505,"body":3506,"v":245,"url":3558,"tarball":3559,"zipball":3560,"prerelease":60,"author":3561,"title":59,"description":59,"_type":80,"_id":3562},"v0.2.5","2022-11-22T15:14:51Z",{"type":63,"children":3507,"toc":3555},[3508,3512,3541],{"type":66,"tag":98,"props":3509,"children":3510},{"id":100},[3511],{"type":71,"value":103},{"type":66,"tag":112,"props":3513,"children":3514},{},[3515],{"type":66,"tag":116,"props":3516,"children":3517},{},[3518,3520,3531,3533,3540],{"type":71,"value":3519},"fix: use Router instead of navigateTo for login redirect in ",{"type":66,"tag":128,"props":3521,"children":3524},{"href":3522,"rel":3523},"https://github.com/nuxt-modules/supabase/commit/79fc0e43655d4dee5858acf06cf1979e3ead542b",[132],[3525],{"type":66,"tag":148,"props":3526,"children":3528},{"className":3527},[],[3529],{"type":71,"value":3530},"79fc0e4",{"type":71,"value":3532}," (resolves ",{"type":66,"tag":128,"props":3534,"children":3537},{"href":3535,"rel":3536},"https://github.com/nuxt-modules/supabase/issues/89",[132],[3538],{"type":71,"value":3539},"#89",{"type":71,"value":293},{"type":66,"tag":67,"props":3542,"children":3543},{},[3544,3548,3549],{"type":66,"tag":120,"props":3545,"children":3546},{},[3547],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3550,"children":3553},{"href":3551,"rel":3552},"https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5",[132],[3554],{"type":71,"value":3551},{"title":59,"searchDepth":78,"depth":78,"links":3556},[3557],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.5",{"name":197,"url":198,"avatar":199},"github:v0.2.5.md",{"name":3564,"tag_name":3564,"date":3565,"body":3566,"v":245,"url":3608,"tarball":3609,"zipball":3610,"prerelease":60,"reactions":3611,"author":3613,"title":59,"description":59,"_type":80,"_id":3614},"v0.2.4","2022-11-13T19:36:18Z",{"type":63,"children":3567,"toc":3605},[3568,3572,3591],{"type":66,"tag":98,"props":3569,"children":3570},{"id":100},[3571],{"type":71,"value":103},{"type":66,"tag":112,"props":3573,"children":3574},{},[3575],{"type":66,"tag":116,"props":3576,"children":3577},{},[3578,3580],{"type":71,"value":3579},"fix: handle TOKEN_REFRESHED session event in ",{"type":66,"tag":128,"props":3581,"children":3584},{"href":3582,"rel":3583},"https://github.com/nuxt-modules/supabase/commit/bf503029b48113b4b66545d0d2065c899209a06a",[132],[3585],{"type":66,"tag":148,"props":3586,"children":3588},{"className":3587},[],[3589],{"type":71,"value":3590},"bf50302",{"type":66,"tag":67,"props":3592,"children":3593},{},[3594,3598,3599],{"type":66,"tag":120,"props":3595,"children":3596},{},[3597],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3600,"children":3603},{"href":3601,"rel":3602},"https://github.com/nuxt-community/supabase-module/compare/v0.2.3...v0.2.4",[132],[3604],{"type":71,"value":3601},{"title":59,"searchDepth":78,"depth":78,"links":3606},[3607],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.4",{"url":3612,"total_count":78,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":78,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/82920199/reactions",{"name":197,"url":198,"avatar":199},"github:v0.2.4.md",{"name":3616,"tag_name":3616,"date":3617,"body":3618,"v":245,"url":3754,"tarball":3755,"zipball":3756,"prerelease":60,"reactions":3757,"author":3759,"title":59,"description":59,"_type":80,"_id":3760},"v0.2.3","2022-11-11T17:27:14Z",{"type":63,"children":3619,"toc":3750},[3620,3624,3703,3708,3736],{"type":66,"tag":98,"props":3621,"children":3622},{"id":100},[3623],{"type":71,"value":103},{"type":66,"tag":112,"props":3625,"children":3626},{},[3627,3655,3667,3680],{"type":66,"tag":116,"props":3628,"children":3629},{},[3630,3632,3643,3644],{"type":71,"value":3631},"feat: typed supabase client in ",{"type":66,"tag":128,"props":3633,"children":3636},{"href":3634,"rel":3635},"https://github.com/nuxt-modules/supabase/commit/b59ff1acfbbe2cd36aea1ade2d2b538404909260",[132],[3637],{"type":66,"tag":148,"props":3638,"children":3640},{"className":3639},[],[3641],{"type":71,"value":3642},"b59ff1a",{"type":71,"value":310},{"type":66,"tag":128,"props":3645,"children":3648},{"href":3646,"rel":3647},"https://github.com/nuxt-modules/supabase/commit/fd751d7e50c63c48df9e03763458cc826409ff35",[132],[3649],{"type":66,"tag":148,"props":3650,"children":3652},{"className":3651},[],[3653],{"type":71,"value":3654},"fd751d7",{"type":66,"tag":116,"props":3656,"children":3657},{},[3658,3660],{"type":71,"value":3659},"chore: upgrade to nuxt ",{"type":66,"tag":128,"props":3661,"children":3664},{"href":3662,"rel":3663},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.13",[132],[3665],{"type":71,"value":3666},"rc13",{"type":66,"tag":116,"props":3668,"children":3669},{},[3670,3672,3679],{"type":71,"value":3671},"fix: do not apply token if not exists (",{"type":66,"tag":128,"props":3673,"children":3676},{"href":3674,"rel":3675},"https://github.com/nuxt-modules/supabase/issues/107",[132],[3677],{"type":71,"value":3678},"#107",{"type":71,"value":293},{"type":66,"tag":116,"props":3681,"children":3682},{},[3683,3685,3691,3692],{"type":71,"value":3684},"docs: add roadmap board from ",{"type":66,"tag":128,"props":3686,"children":3689},{"href":3687,"rel":3688},"https://volta.net",[132],[3690],{"type":71,"value":3687},{"type":71,"value":1056},{"type":66,"tag":128,"props":3693,"children":3696},{"href":3694,"rel":3695},"https://github.com/nuxt-modules/supabase/commit/f8e73b535924f133e479dbc2863bb37856ff4555",[132],[3697],{"type":66,"tag":148,"props":3698,"children":3700},{"className":3699},[],[3701],{"type":71,"value":3702},"f8e73b5",{"type":66,"tag":98,"props":3704,"children":3705},{"id":168},[3706],{"type":71,"value":3707},"Contributors",{"type":66,"tag":67,"props":3709,"children":3710},{},[3711,3713,3723,3724,3734],{"type":71,"value":3712},"Thanks to ",{"type":66,"tag":128,"props":3714,"children":3717},{"href":3715,"rel":3716},"https://github.com/manniL",[132],[3718],{"type":66,"tag":120,"props":3719,"children":3720},{},[3721],{"type":71,"value":3722},"@manniL",{"type":71,"value":310},{"type":66,"tag":128,"props":3725,"children":3728},{"href":3726,"rel":3727},"https://github.com/levibe",[132],[3729],{"type":66,"tag":120,"props":3730,"children":3731},{},[3732],{"type":71,"value":3733},"@levibe",{"type":71,"value":3735}," 💚",{"type":66,"tag":67,"props":3737,"children":3738},{},[3739,3743,3744],{"type":66,"tag":120,"props":3740,"children":3741},{},[3742],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3745,"children":3748},{"href":3746,"rel":3747},"https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3",[132],[3749],{"type":71,"value":3746},{"title":59,"searchDepth":78,"depth":78,"links":3751},[3752,3753],{"id":100,"depth":78,"text":103},{"id":168,"depth":78,"text":3707},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.3",{"url":3758,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":192,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/82825289/reactions",{"name":197,"url":198,"avatar":199},"github:v0.2.3.md",{"name":3762,"tag_name":3762,"date":3763,"body":3764,"v":245,"url":3855,"tarball":3856,"zipball":3857,"prerelease":60,"author":3858,"title":59,"description":59,"_type":80,"_id":3859},"v0.2.0","2022-10-17T14:18:31Z",{"type":63,"children":3765,"toc":3852},[3766,3770,3775,3788,3801,3806,3811,3838],{"type":66,"tag":98,"props":3767,"children":3768},{"id":100},[3769],{"type":71,"value":103},{"type":66,"tag":67,"props":3771,"children":3772},{},[3773],{"type":71,"value":3774},"⚠️ Breaking Changes",{"type":66,"tag":67,"props":3776,"children":3777},{},[3778,3780,3787],{"type":71,"value":3779},"Upgrade to supabase-js v2, check Supabase ",{"type":66,"tag":128,"props":3781,"children":3784},{"href":3782,"rel":3783},"https://supabase.com/docs/reference/javascript/release-notes",[132],[3785],{"type":71,"value":3786},"release notes",{"type":71,"value":3421},{"type":66,"tag":67,"props":3789,"children":3790},{},[3791,3793,3799],{"type":71,"value":3792},"Module ",{"type":66,"tag":128,"props":3794,"children":3796},{"href":2218,"rel":3795},[132],[3797],{"type":71,"value":3798},"documentation",{"type":71,"value":3800}," has been updated in favor of supabase v2 syntax.",{"type":66,"tag":67,"props":3802,"children":3803},{},[3804],{"type":71,"value":3805},"Please feel free to make PR if I missed something 🙏",{"type":66,"tag":67,"props":3807,"children":3808},{},[3809],{"type":71,"value":3810},"🚀 Features",{"type":66,"tag":112,"props":3812,"children":3813},{},[3814,3826],{"type":66,"tag":116,"props":3815,"children":3816},{},[3817,3819,3825],{"type":71,"value":3818},"options: redirect user after signout or when user is not authenticated (check ",{"type":66,"tag":128,"props":3820,"children":3823},{"href":3821,"rel":3822},"https://supabase.nuxtjs.org/get-started#redirect",[132],[3824],{"type":71,"value":3798},{"type":71,"value":293},{"type":66,"tag":116,"props":3827,"children":3828},{},[3829,3831],{"type":71,"value":3830},"session: set refresh token ",{"type":66,"tag":128,"props":3832,"children":3835},{"href":3833,"rel":3834},"https://github.com/nuxt-modules/supabase/issues/18",[132],[3836],{"type":71,"value":3837},"#18",{"type":66,"tag":67,"props":3839,"children":3840},{},[3841,3845,3846],{"type":66,"tag":120,"props":3842,"children":3843},{},[3844],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3847,"children":3850},{"href":3848,"rel":3849},"https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0",[132],[3851],{"type":71,"value":3848},{"title":59,"searchDepth":78,"depth":78,"links":3853},[3854],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0",{"name":197,"url":198,"avatar":199},"github:v0.2.0.md",{"name":3861,"tag_name":3861,"date":3862,"body":3863,"v":245,"url":3918,"tarball":3919,"zipball":3920,"prerelease":60,"author":3921,"title":59,"description":59,"_type":80,"_id":3922},"v0.1.28","2022-10-07T10:05:52Z",{"type":63,"children":3864,"toc":3915},[3865,3869,3885,3899],{"type":66,"tag":98,"props":3866,"children":3867},{"id":100},[3868],{"type":71,"value":103},{"type":66,"tag":112,"props":3870,"children":3871},{},[3872],{"type":66,"tag":116,"props":3873,"children":3874},{},[3875,3877,3884],{"type":71,"value":3876},"fix: cloudflare workers deployment (",{"type":66,"tag":128,"props":3878,"children":3881},{"href":3879,"rel":3880},"https://github.com/nuxt-modules/supabase/issues/46",[132],[3882],{"type":71,"value":3883},"#46",{"type":71,"value":293},{"type":66,"tag":67,"props":3886,"children":3887},{},[3888,3892,3893],{"type":66,"tag":120,"props":3889,"children":3890},{},[3891],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3894,"children":3897},{"href":3895,"rel":3896},"https://github.com/nuxt-community/supabase-module/compare/v0.1.27...v0.1.28",[132],[3898],{"type":71,"value":3895},{"type":66,"tag":67,"props":3900,"children":3901},{},[3902,3903,3913],{"type":71,"value":3712},{"type":66,"tag":128,"props":3904,"children":3907},{"href":3905,"rel":3906},"https://github.com/kevinmarrec",[132],[3908],{"type":66,"tag":120,"props":3909,"children":3910},{},[3911],{"type":71,"value":3912},"@kevinmarrec",{"type":71,"value":3914}," for the fix 🔥",{"title":59,"searchDepth":78,"depth":78,"links":3916},[3917],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.28","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.28","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.28",{"name":197,"url":198,"avatar":199},"github:v0.1.28.md",{"name":3924,"tag_name":3924,"date":3925,"body":3926,"v":245,"url":3969,"tarball":3970,"zipball":3971,"prerelease":60,"author":3972,"title":59,"description":59,"_type":80,"_id":3973},"v0.1.27","2022-09-23T10:19:42Z",{"type":63,"children":3927,"toc":3966},[3928,3932,3947,3952],{"type":66,"tag":98,"props":3929,"children":3930},{"id":100},[3931],{"type":71,"value":103},{"type":66,"tag":112,"props":3933,"children":3934},{},[3935],{"type":66,"tag":116,"props":3936,"children":3937},{},[3938,3940],{"type":71,"value":3939},"chore: upgrade to Nuxt ",{"type":66,"tag":128,"props":3941,"children":3944},{"href":3942,"rel":3943},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.11",[132],[3945],{"type":71,"value":3946},"rc.11",{"type":66,"tag":67,"props":3948,"children":3949},{},[3950],{"type":71,"value":3951},"Stable is coming 🚀",{"type":66,"tag":67,"props":3953,"children":3954},{},[3955,3959,3960],{"type":66,"tag":120,"props":3956,"children":3957},{},[3958],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":3961,"children":3964},{"href":3962,"rel":3963},"https://github.com/nuxt-community/supabase-module/compare/v0.1.26...v0.1.27",[132],[3965],{"type":71,"value":3962},{"title":59,"searchDepth":78,"depth":78,"links":3967},[3968],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.27","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.27","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.27",{"name":197,"url":198,"avatar":199},"github:v0.1.27.md",{"name":3762,"tag_name":3975,"date":3976,"body":3977,"v":245,"url":4015,"tarball":4016,"zipball":4017,"prerelease":3248,"author":4018,"title":59,"description":59,"_type":80,"_id":3859},"v0.2.0-16","2022-08-16T14:56:45Z",{"type":63,"children":3978,"toc":4012},[3979,3983,3987,3998],{"type":66,"tag":98,"props":3980,"children":3981},{"id":100},[3982],{"type":71,"value":103},{"type":66,"tag":67,"props":3984,"children":3985},{},[3986],{"type":71,"value":3774},{"type":66,"tag":67,"props":3988,"children":3989},{},[3990,3991,3997],{"type":71,"value":3779},{"type":66,"tag":128,"props":3992,"children":3995},{"href":3993,"rel":3994},"https://supabase.com/docs/reference/javascript/next/release-notes",[132],[3996],{"type":71,"value":3786},{"type":71,"value":3421},{"type":66,"tag":67,"props":3999,"children":4000},{},[4001,4005,4006],{"type":66,"tag":120,"props":4002,"children":4003},{},[4004],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4007,"children":4010},{"href":4008,"rel":4009},"https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0",[132],[4011],{"type":71,"value":4008},{"title":59,"searchDepth":78,"depth":78,"links":4013},[4014],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0-16","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0-16","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0-16",{"name":197,"url":198,"avatar":199},{"name":4020,"tag_name":4020,"date":4021,"body":4022,"v":245,"url":4064,"tarball":4065,"zipball":4066,"prerelease":60,"reactions":4067,"author":4069,"title":59,"description":59,"_type":80,"_id":4070},"v0.1.26","2022-09-16T11:17:29Z",{"type":63,"children":4023,"toc":4061},[4024,4028,4042,4047],{"type":66,"tag":98,"props":4025,"children":4026},{"id":100},[4027],{"type":71,"value":103},{"type":66,"tag":112,"props":4029,"children":4030},{},[4031],{"type":66,"tag":116,"props":4032,"children":4033},{},[4034,4035],{"type":71,"value":3939},{"type":66,"tag":128,"props":4036,"children":4039},{"href":4037,"rel":4038},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.10",[132],[4040],{"type":71,"value":4041},"rc.10",{"type":66,"tag":67,"props":4043,"children":4044},{},[4045],{"type":71,"value":4046},"Stable in coming 🚀",{"type":66,"tag":67,"props":4048,"children":4049},{},[4050,4054,4055],{"type":66,"tag":120,"props":4051,"children":4052},{},[4053],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4056,"children":4059},{"href":4057,"rel":4058},"https://github.com/nuxt-community/supabase-module/compare/v0.1.25...v0.1.26",[132],[4060],{"type":71,"value":4057},{"title":59,"searchDepth":78,"depth":78,"links":4062},[4063],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.26","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.26","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.26",{"url":4068,"total_count":192,"+1":192,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/77384555/reactions",{"name":197,"url":198,"avatar":199},"github:v0.1.26.md",{"name":4072,"tag_name":4072,"date":4073,"body":4074,"v":245,"url":4177,"tarball":4178,"zipball":4179,"prerelease":60,"reactions":4180,"author":4182,"title":59,"description":59,"_type":80,"_id":4183},"v0.1.25","2022-09-05T07:28:01Z",{"type":63,"children":4075,"toc":4174},[4076,4080,4160],{"type":66,"tag":98,"props":4077,"children":4078},{"id":100},[4079],{"type":71,"value":103},{"type":66,"tag":112,"props":4081,"children":4082},{},[4083,4119,4147],{"type":66,"tag":116,"props":4084,"children":4085},{},[4086,4088,4099,4100,4111,4113],{"type":71,"value":4087},"docs: new directory architecture + supabase module v2 coming soon in ",{"type":66,"tag":128,"props":4089,"children":4092},{"href":4090,"rel":4091},"https://github.com/nuxt-modules/supabase/commit/d48522a369bcced45dfb3d16793b33f0144ffa50",[132],[4093],{"type":66,"tag":148,"props":4094,"children":4096},{"className":4095},[],[4097],{"type":71,"value":4098},"d48522a",{"type":71,"value":310},{"type":66,"tag":128,"props":4101,"children":4104},{"href":4102,"rel":4103},"https://github.com/nuxt-modules/supabase/commit/e69712b4862a5baa464c01ae32755473358b82d2",[132],[4105],{"type":66,"tag":148,"props":4106,"children":4108},{"className":4107},[],[4109],{"type":71,"value":4110},"e69712b",{"type":71,"value":4112},". Check out ",{"type":66,"tag":128,"props":4114,"children":4117},{"href":4115,"rel":4116},"https://supabase.nuxtjs.org/",[132],[4118],{"type":71,"value":4115},{"type":66,"tag":116,"props":4120,"children":4121},{},[4122,4124,4135,4136],{"type":71,"value":4123},"chore: upgrade to rc9 in ",{"type":66,"tag":128,"props":4125,"children":4128},{"href":4126,"rel":4127},"https://github.com/nuxt-modules/supabase/commit/3c5220bf9569d2e939a466aa4a2814e0dc38622c",[132],[4129],{"type":66,"tag":148,"props":4130,"children":4132},{"className":4131},[],[4133],{"type":71,"value":4134},"3c5220b",{"type":71,"value":310},{"type":66,"tag":128,"props":4137,"children":4140},{"href":4138,"rel":4139},"https://github.com/nuxt-modules/supabase/commit/495e0b705622e9bda28072815c828beedea1082c",[132],[4141],{"type":66,"tag":148,"props":4142,"children":4144},{"className":4143},[],[4145],{"type":71,"value":4146},"495e0b7",{"type":66,"tag":116,"props":4148,"children":4149},{},[4150,4152,4159],{"type":71,"value":4151},"chore: fix nuxt compatibility (",{"type":66,"tag":128,"props":4153,"children":4156},{"href":4154,"rel":4155},"https://github.com/nuxt-modules/supabase/issues/70",[132],[4157],{"type":71,"value":4158},"#70",{"type":71,"value":293},{"type":66,"tag":67,"props":4161,"children":4162},{},[4163,4167,4168],{"type":66,"tag":120,"props":4164,"children":4165},{},[4166],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4169,"children":4172},{"href":4170,"rel":4171},"https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25",[132],[4173],{"type":71,"value":4170},{"title":59,"searchDepth":78,"depth":78,"links":4175},[4176],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.25","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.25","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.25",{"url":4181,"total_count":1122,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":1122,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/76259131/reactions",{"name":197,"url":198,"avatar":199},"github:v0.1.25.md",{"name":4185,"tag_name":4185,"date":4186,"body":4187,"v":245,"url":4255,"tarball":4256,"zipball":4257,"prerelease":60,"author":4258,"title":59,"description":59,"_type":80,"_id":4259},"v0.1.23","2022-08-16T10:12:13Z",{"type":63,"children":4188,"toc":4252},[4189,4193,4238],{"type":66,"tag":98,"props":4190,"children":4191},{"id":100},[4192],{"type":71,"value":103},{"type":66,"tag":112,"props":4194,"children":4195},{},[4196],{"type":66,"tag":116,"props":4197,"children":4198},{},[4199,4201,4214,4216,4228,4230,4237],{"type":71,"value":4200},"fix: transpile supabase packages in ",{"type":66,"tag":128,"props":4202,"children":4205},{"href":4203,"rel":4204},"https://github.com/nuxt-community/supabase-module/commit/66020204e8aad98db94a83964f1bb988642c90f3",[132],[4206,4208],{"type":71,"value":4207},"nuxt-community/supabase-module@",{"type":66,"tag":148,"props":4209,"children":4211},{"className":4210},[],[4212],{"type":71,"value":4213},"6602020",{"type":71,"value":4215}," ",{"type":66,"tag":128,"props":4217,"children":4220},{"href":4218,"rel":4219},"https://github.com/nuxt-community/supabase-module/commit/237ddf2cf83079e39748b6252182ca1d2f62cc54",[132],[4221,4222],{"type":71,"value":4207},{"type":66,"tag":148,"props":4223,"children":4225},{"className":4224},[],[4226],{"type":71,"value":4227},"237ddf2",{"type":71,"value":4229}," and (",{"type":66,"tag":128,"props":4231,"children":4234},{"href":4232,"rel":4233},"https://github.com/nuxt-modules/supabase/issues/62",[132],[4235],{"type":71,"value":4236},"#62",{"type":71,"value":293},{"type":66,"tag":67,"props":4239,"children":4240},{},[4241,4245,4246],{"type":66,"tag":120,"props":4242,"children":4243},{},[4244],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4247,"children":4250},{"href":4248,"rel":4249},"https://github.com/nuxt-community/supabase-module/compare/v0.1.20...v0.1.23",[132],[4251],{"type":71,"value":4248},{"title":59,"searchDepth":78,"depth":78,"links":4253},[4254],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.23","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.23","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.23",{"name":197,"url":198,"avatar":199},"github:v0.1.23.md",{"name":4261,"tag_name":4261,"date":4262,"body":4263,"v":245,"url":4333,"tarball":4334,"zipball":4335,"prerelease":60,"author":4336,"title":59,"description":59,"_type":80,"_id":4337},"v0.1.20","2022-08-16T09:12:14Z",{"type":63,"children":4264,"toc":4329},[4265,4269,4284,4298,4304],{"type":66,"tag":98,"props":4266,"children":4267},{"id":100},[4268],{"type":71,"value":103},{"type":66,"tag":112,"props":4270,"children":4271},{},[4272],{"type":66,"tag":116,"props":4273,"children":4274},{},[4275,4277],{"type":71,"value":4276},"chore: upgrade to ",{"type":66,"tag":128,"props":4278,"children":4281},{"href":4279,"rel":4280},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.8",[132],[4282],{"type":71,"value":4283},"nuxt rc.8",{"type":66,"tag":67,"props":4285,"children":4286},{},[4287,4291,4292],{"type":66,"tag":120,"props":4288,"children":4289},{},[4290],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4293,"children":4296},{"href":4294,"rel":4295},"https://github.com/nuxt-community/supabase-module/compare/v0.1.19...v0.1.20",[132],[4297],{"type":71,"value":4294},{"type":66,"tag":98,"props":4299,"children":4301},{"id":4300},"new-contributors",[4302],{"type":71,"value":4303},"New Contributors",{"type":66,"tag":112,"props":4305,"children":4306},{},[4307],{"type":66,"tag":116,"props":4308,"children":4309},{},[4310,4320,4322],{"type":66,"tag":128,"props":4311,"children":4314},{"href":4312,"rel":4313},"https://github.com/josuemartinezz",[132],[4315],{"type":66,"tag":120,"props":4316,"children":4317},{},[4318],{"type":71,"value":4319},"@josuemartinezz",{"type":71,"value":4321}," made his first contribution in ",{"type":66,"tag":128,"props":4323,"children":4326},{"href":4324,"rel":4325},"https://github.com/nuxt-modules/supabase/issues/59",[132],[4327],{"type":71,"value":4328},"#59",{"title":59,"searchDepth":78,"depth":78,"links":4330},[4331,4332],{"id":100,"depth":78,"text":103},{"id":4300,"depth":78,"text":4303},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.20","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.20","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.20",{"name":197,"url":198,"avatar":199},"github:v0.1.20.md",{"name":4339,"tag_name":4339,"date":4340,"body":4341,"v":245,"url":4395,"tarball":4396,"zipball":4397,"prerelease":60,"reactions":4398,"author":4400,"title":59,"description":59,"_type":80,"_id":4401},"v0.1.19","2022-07-18T08:18:42Z",{"type":63,"children":4342,"toc":4392},[4343,4347,4378],{"type":66,"tag":98,"props":4344,"children":4345},{"id":100},[4346],{"type":71,"value":103},{"type":66,"tag":112,"props":4348,"children":4349},{},[4350,4361],{"type":66,"tag":116,"props":4351,"children":4352},{},[4353,4354],{"type":71,"value":4276},{"type":66,"tag":128,"props":4355,"children":4358},{"href":4356,"rel":4357},"https://github.com/nuxt/framework/pull/5825",[132],[4359],{"type":71,"value":4360},"nuxt rc.5",{"type":66,"tag":116,"props":4362,"children":4363},{},[4364,4366],{"type":71,"value":4365},"doc: add supabase icon in ",{"type":66,"tag":128,"props":4367,"children":4370},{"href":4368,"rel":4369},"https://github.com/nuxt-community/supabase-module/commit/c0cce016eae809fd64acc9a503b4807750280b39",[132],[4371,4372],{"type":71,"value":4207},{"type":66,"tag":148,"props":4373,"children":4375},{"className":4374},[],[4376],{"type":71,"value":4377},"c0cce01",{"type":66,"tag":67,"props":4379,"children":4380},{},[4381,4385,4386],{"type":66,"tag":120,"props":4382,"children":4383},{},[4384],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4387,"children":4390},{"href":4388,"rel":4389},"https://github.com/nuxt-community/supabase-module/compare/v0.1.18...v0.1.19",[132],[4391],{"type":71,"value":4388},{"title":59,"searchDepth":78,"depth":78,"links":4393},[4394],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.19","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.19","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.19",{"url":4399,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":245,"rocket":192,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/72200550/reactions",{"name":197,"url":198,"avatar":199},"github:v0.1.19.md",{"name":4403,"tag_name":4403,"date":4404,"body":4405,"v":245,"url":4482,"tarball":4483,"zipball":4484,"prerelease":60,"author":4485,"title":59,"description":59,"_type":80,"_id":4486},"v0.1.18","2022-06-29T09:23:26Z",{"type":63,"children":4406,"toc":4479},[4407,4411,4465],{"type":66,"tag":98,"props":4408,"children":4409},{"id":100},[4410],{"type":71,"value":103},{"type":66,"tag":112,"props":4412,"children":4413},{},[4414,4440],{"type":66,"tag":116,"props":4415,"children":4416},{},[4417,4419,4431,4432,4439],{"type":71,"value":4418},"doc: update logo & social preview in ",{"type":66,"tag":128,"props":4420,"children":4423},{"href":4421,"rel":4422},"https://github.com/nuxt-community/supabase-module/commit/9b0b2fbee1f2fed50e903c2b368b817568d7ab1f",[132],[4424,4425],{"type":71,"value":4207},{"type":66,"tag":148,"props":4426,"children":4428},{"className":4427},[],[4429],{"type":71,"value":4430},"9b0b2fb",{"type":71,"value":317},{"type":66,"tag":128,"props":4433,"children":4436},{"href":4434,"rel":4435},"https://github.com/nuxt-modules/supabase/issues/53",[132],[4437],{"type":71,"value":4438},"#53",{"type":71,"value":293},{"type":66,"tag":116,"props":4441,"children":4442},{},[4443,4444,4456,4457,4464],{"type":71,"value":4200},{"type":66,"tag":128,"props":4445,"children":4448},{"href":4446,"rel":4447},"https://github.com/nuxt-community/supabase-module/commit/309c137f7ae23985f0ed9947fb85cb75cbfbfca2",[132],[4449,4450],{"type":71,"value":4207},{"type":66,"tag":148,"props":4451,"children":4453},{"className":4452},[],[4454],{"type":71,"value":4455},"309c137",{"type":71,"value":317},{"type":66,"tag":128,"props":4458,"children":4461},{"href":4459,"rel":4460},"https://github.com/nuxt-modules/supabase/issues/55",[132],[4462],{"type":71,"value":4463},"#55",{"type":71,"value":293},{"type":66,"tag":67,"props":4466,"children":4467},{},[4468,4472,4473],{"type":66,"tag":120,"props":4469,"children":4470},{},[4471],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4474,"children":4477},{"href":4475,"rel":4476},"https://github.com/nuxt-community/supabase-module/compare/v0.1.17...v0.1.18",[132],[4478],{"type":71,"value":4475},{"title":59,"searchDepth":78,"depth":78,"links":4480},[4481],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.18","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.18","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.18",{"name":197,"url":198,"avatar":199},"github:v0.1.18.md",{"name":4488,"tag_name":4488,"date":4489,"body":4490,"v":245,"url":4582,"tarball":4583,"zipball":4584,"prerelease":60,"reactions":4585,"author":4587,"title":59,"description":59,"_type":80,"_id":4588},"v0.1.17","2022-06-17T07:01:12Z",{"type":63,"children":4491,"toc":4579},[4492,4496,4552,4565],{"type":66,"tag":98,"props":4493,"children":4494},{"id":100},[4495],{"type":71,"value":103},{"type":66,"tag":112,"props":4497,"children":4498},{},[4499,4510,4535],{"type":66,"tag":116,"props":4500,"children":4501},{},[4502,4503],{"type":71,"value":4276},{"type":66,"tag":128,"props":4504,"children":4507},{"href":4505,"rel":4506},"https://github.com/nuxt/framework/discussions/5445",[132],[4508],{"type":71,"value":4509},"nuxt rc.4",{"type":66,"tag":116,"props":4511,"children":4512},{},[4513,4515,4522,4523],{"type":71,"value":4514},"doc: update ",{"type":66,"tag":128,"props":4516,"children":4519},{"href":4517,"rel":4518},"https://docus.com/",[132],[4520],{"type":71,"value":4521},"docus theme",{"type":71,"value":1056},{"type":66,"tag":128,"props":4524,"children":4527},{"href":4525,"rel":4526},"https://github.com/nuxt-community/supabase-module/commit/64a5add3db5e0416a8a3b7f9708d27148797e958",[132],[4528,4529],{"type":71,"value":4207},{"type":66,"tag":148,"props":4530,"children":4532},{"className":4531},[],[4533],{"type":71,"value":4534},"64a5add",{"type":66,"tag":116,"props":4536,"children":4537},{},[4538,4540],{"type":71,"value":4539},"doc: add advanced usage with supabase realtime ",{"type":66,"tag":128,"props":4541,"children":4544},{"href":4542,"rel":4543},"https://github.com/nuxt-community/supabase-module/commit/8047e311e5526a4597b81a99dc8045114348172f",[132],[4545,4546],{"type":71,"value":4207},{"type":66,"tag":148,"props":4547,"children":4549},{"className":4548},[],[4550],{"type":71,"value":4551},"8047e31",{"type":66,"tag":67,"props":4553,"children":4554},{},[4555,4557,4563],{"type":71,"value":4556},"Checkout the ",{"type":66,"tag":128,"props":4558,"children":4561},{"href":4559,"rel":4560},"https://supabase.nuxtjs.org/advanced#realtime",[132],[4562],{"type":71,"value":3798},{"type":71,"value":4564}," for supabase realtime!",{"type":66,"tag":67,"props":4566,"children":4567},{},[4568,4572,4573],{"type":66,"tag":120,"props":4569,"children":4570},{},[4571],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4574,"children":4577},{"href":4575,"rel":4576},"https://github.com/nuxt-community/supabase-module/compare/v0.1.16...v0.1.17",[132],[4578],{"type":71,"value":4575},{"title":59,"searchDepth":78,"depth":78,"links":4580},[4581],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.17","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.17","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.17",{"url":4586,"total_count":192,"+1":245,"-1":245,"laugh":245,"hooray":245,"confused":245,"heart":192,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/69689480/reactions",{"name":197,"url":198,"avatar":199},"github:v0.1.17.md",{"name":4590,"tag_name":4590,"date":4591,"body":4592,"v":245,"url":4690,"tarball":4691,"zipball":4692,"prerelease":60,"author":4693,"title":59,"description":59,"_type":80,"_id":4694},"v0.1.16","2022-06-01T10:51:45Z",{"type":63,"children":4593,"toc":4687},[4594,4598,4661,4673],{"type":66,"tag":98,"props":4595,"children":4596},{"id":100},[4597],{"type":71,"value":103},{"type":66,"tag":112,"props":4599,"children":4600},{},[4601,4635],{"type":66,"tag":116,"props":4602,"children":4603},{},[4604,4606,4613,4614,4626,4627,4634],{"type":71,"value":4605},"doc: use docus theme (public release coming soon) powered by ",{"type":66,"tag":128,"props":4607,"children":4610},{"href":4608,"rel":4609},"https://content.nuxtjs.org/",[132],[4611],{"type":71,"value":4612},"nuxt content v2",{"type":71,"value":1056},{"type":66,"tag":128,"props":4615,"children":4618},{"href":4616,"rel":4617},"https://github.com/nuxt-community/supabase-module/commit/c24a16ff0bc94221adc021231a2206b6db8f293c",[132],[4619,4620],{"type":71,"value":4207},{"type":66,"tag":148,"props":4621,"children":4623},{"className":4622},[],[4624],{"type":71,"value":4625},"c24a16f",{"type":71,"value":317},{"type":66,"tag":128,"props":4628,"children":4631},{"href":4629,"rel":4630},"https://github.com/nuxt-modules/supabase/issues/41",[132],[4632],{"type":71,"value":4633},"#41",{"type":71,"value":293},{"type":66,"tag":116,"props":4636,"children":4637},{},[4638,4640,4652,4653,4660],{"type":71,"value":4639},"feat: service role client to bypass RLS in ",{"type":66,"tag":128,"props":4641,"children":4644},{"href":4642,"rel":4643},"https://github.com/nuxt-community/supabase-module/commit/ba70a976be97acb3c438d59e45b789ee917bee6b",[132],[4645,4646],{"type":71,"value":4207},{"type":66,"tag":148,"props":4647,"children":4649},{"className":4648},[],[4650],{"type":71,"value":4651},"ba70a97",{"type":71,"value":317},{"type":66,"tag":128,"props":4654,"children":4657},{"href":4655,"rel":4656},"https://github.com/nuxt-modules/supabase/issues/43",[132],[4658],{"type":71,"value":4659},"#43",{"type":71,"value":293},{"type":66,"tag":67,"props":4662,"children":4663},{},[4664,4666,4671],{"type":71,"value":4665},"Checkout the new ",{"type":66,"tag":128,"props":4667,"children":4669},{"href":2218,"rel":4668},[132],[4670],{"type":71,"value":3798},{"type":71,"value":4672}," !",{"type":66,"tag":67,"props":4674,"children":4675},{},[4676,4680,4681],{"type":66,"tag":120,"props":4677,"children":4678},{},[4679],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4682,"children":4685},{"href":4683,"rel":4684},"https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16",[132],[4686],{"type":71,"value":4683},{"title":59,"searchDepth":78,"depth":78,"links":4688},[4689],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.16","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.16","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.16",{"name":197,"url":198,"avatar":199},"github:v0.1.16.md",{"name":4696,"tag_name":4696,"date":4697,"body":4698,"v":245,"url":4806,"tarball":4807,"zipball":4808,"prerelease":60,"author":4809,"title":59,"description":59,"_type":80,"_id":4810},"v0.1.14","2022-05-13T16:48:40Z",{"type":63,"children":4699,"toc":4803},[4700,4704,4767,4789],{"type":66,"tag":98,"props":4701,"children":4702},{"id":100},[4703],{"type":71,"value":103},{"type":66,"tag":112,"props":4705,"children":4706},{},[4707,4724,4741],{"type":66,"tag":116,"props":4708,"children":4709},{},[4710,4712],{"type":71,"value":4711},"feat: add playground folder in ",{"type":66,"tag":128,"props":4713,"children":4716},{"href":4714,"rel":4715},"https://github.com/nuxt-community/supabase-module/commit/339cf31cf48d4059ba0e4470d6e5e2aa9ef184c7",[132],[4717,4718],{"type":71,"value":4207},{"type":66,"tag":148,"props":4719,"children":4721},{"className":4720},[],[4722],{"type":71,"value":4723},"339cf31",{"type":66,"tag":116,"props":4725,"children":4726},{},[4727,4729],{"type":71,"value":4728},"fix: client options in ",{"type":66,"tag":128,"props":4730,"children":4733},{"href":4731,"rel":4732},"https://github.com/nuxt-community/supabase-module/commit/4c5595c11caf7a55621d297f6a0183a756175473",[132],[4734,4735],{"type":71,"value":4207},{"type":66,"tag":148,"props":4736,"children":4738},{"className":4737},[],[4739],{"type":71,"value":4740},"4c5595c",{"type":66,"tag":116,"props":4742,"children":4743},{},[4744,4746,4758,4759,4766],{"type":71,"value":4745},"feat: add server routes services in ",{"type":66,"tag":128,"props":4747,"children":4750},{"href":4748,"rel":4749},"https://github.com/nuxt-community/supabase-module/commit/696d3e8d19b8db79c85e86b79a3ba4dd31bb2343",[132],[4751,4752],{"type":71,"value":4207},{"type":66,"tag":148,"props":4753,"children":4755},{"className":4754},[],[4756],{"type":71,"value":4757},"696d3e8",{"type":71,"value":317},{"type":66,"tag":128,"props":4760,"children":4763},{"href":4761,"rel":4762},"https://github.com/nuxt-modules/supabase/issues/36",[132],[4764],{"type":71,"value":4765},"#36",{"type":71,"value":293},{"type":66,"tag":67,"props":4768,"children":4769},{},[4770,4772,4779,4781,4787],{"type":71,"value":4771},"You can check the ",{"type":66,"tag":128,"props":4773,"children":4776},{"href":4774,"rel":4775},"https://supabase.nuxtjs.org/usage#server-routes-services",[132],[4777],{"type":71,"value":4778},"documentation updated",{"type":71,"value":4780}," for the use of ",{"type":66,"tag":148,"props":4782,"children":4784},{"className":4783},[],[4785],{"type":71,"value":4786},"services",{"type":71,"value":4788}," in server routes.",{"type":66,"tag":67,"props":4790,"children":4791},{},[4792,4796,4797],{"type":66,"tag":120,"props":4793,"children":4794},{},[4795],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4798,"children":4801},{"href":4799,"rel":4800},"https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14",[132],[4802],{"type":71,"value":4799},{"title":59,"searchDepth":78,"depth":78,"links":4804},[4805],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.14","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.14","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.14",{"name":197,"url":198,"avatar":199},"github:v0.1.14.md",{"name":4812,"tag_name":4812,"date":4813,"body":4814,"v":245,"url":4840,"tarball":4841,"zipball":4842,"prerelease":60,"author":4843,"title":59,"description":59,"_type":80,"_id":4844},"v0.1.11","2022-05-06T08:51:02Z",{"type":63,"children":4815,"toc":4838},[4816,4824],{"type":66,"tag":112,"props":4817,"children":4818},{},[4819],{"type":66,"tag":116,"props":4820,"children":4821},{},[4822],{"type":71,"value":4823},"chore: upgrade deps",{"type":66,"tag":67,"props":4825,"children":4826},{},[4827,4831,4832],{"type":66,"tag":120,"props":4828,"children":4829},{},[4830],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4833,"children":4836},{"href":4834,"rel":4835},"https://github.com/nuxt-community/supabase-module/compare/v0.1.9...v0.1.11",[132],[4837],{"type":71,"value":4834},{"title":59,"searchDepth":78,"depth":78,"links":4839},[],"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.11","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.11","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.11",{"name":197,"url":198,"avatar":199},"github:v0.1.11.md",{"name":4846,"tag_name":4846,"date":4847,"body":4848,"v":245,"url":4901,"tarball":4902,"zipball":4903,"prerelease":60,"author":4904,"title":59,"description":59,"_type":80,"_id":4908},"v0.1.9","2022-04-20T11:07:23Z",{"type":63,"children":4849,"toc":4899},[4850,4885],{"type":66,"tag":112,"props":4851,"children":4852},{},[4853],{"type":66,"tag":116,"props":4854,"children":4855},{},[4856,4858,4864,4865,4871,4872,4884],{"type":71,"value":4857},"fix: use ",{"type":66,"tag":148,"props":4859,"children":4861},{"className":4860},[],[4862],{"type":71,"value":4863},"#imports",{"type":71,"value":3405},{"type":66,"tag":148,"props":4866,"children":4868},{"className":4867},[],[4869],{"type":71,"value":4870},"#nitro",{"type":71,"value":317},{"type":66,"tag":128,"props":4873,"children":4876},{"href":4874,"rel":4875},"https://github.com/nuxt-community/supabase-module/commit/42af598b7d9f3adf2c577c20e9cfb68bbb17d52b",[132],[4877,4878],{"type":71,"value":4207},{"type":66,"tag":148,"props":4879,"children":4881},{"className":4880},[],[4882],{"type":71,"value":4883},"42af598",{"type":71,"value":293},{"type":66,"tag":67,"props":4886,"children":4887},{},[4888,4892,4893],{"type":66,"tag":120,"props":4889,"children":4890},{},[4891],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":4894,"children":4897},{"href":4895,"rel":4896},"https://github.com/nuxt-community/supabase-module/compare/v0.1.8...v0.1.9",[132],[4898],{"type":71,"value":4895},{"title":59,"searchDepth":78,"depth":78,"links":4900},[],"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.9","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.9","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.9",{"name":4905,"url":4906,"avatar":4907},"atinux","https://github.com/atinux","https://avatars.githubusercontent.com/u/904724?v=4","github:v0.1.9.md",{"name":4910,"tag_name":4910,"date":4911,"body":4912,"v":245,"url":4968,"tarball":4969,"zipball":4970,"prerelease":60,"author":4971,"title":59,"description":59,"_type":80,"_id":4972},"v0.1.8","2022-04-13T12:26:33Z",{"type":63,"children":4913,"toc":4965},[4914,4918],{"type":66,"tag":98,"props":4915,"children":4916},{"id":100},[4917],{"type":71,"value":103},{"type":66,"tag":112,"props":4919,"children":4920},{},[4921,4938],{"type":66,"tag":116,"props":4922,"children":4923},{},[4924,4926],{"type":71,"value":4925},"fix: update runtime config fetch and override in ",{"type":66,"tag":128,"props":4927,"children":4930},{"href":4928,"rel":4929},"https://github.com/nuxt-community/supabase-module/commit/260ebc7be39dfa65902ad4fe6a49639c99a69da8",[132],[4931,4932],{"type":71,"value":4207},{"type":66,"tag":148,"props":4933,"children":4935},{"className":4934},[],[4936],{"type":71,"value":4937},"260ebc7",{"type":66,"tag":116,"props":4939,"children":4940},{},[4941,4943,4955,4957,4964],{"type":71,"value":4942},"feat: handle session with defineEventHandler in ",{"type":66,"tag":128,"props":4944,"children":4947},{"href":4945,"rel":4946},"https://github.com/nuxt-community/supabase-module/commit/e646b1ce03773bf44932824726f280ad15455ec2",[132],[4948,4949],{"type":71,"value":4207},{"type":66,"tag":148,"props":4950,"children":4952},{"className":4951},[],[4953],{"type":71,"value":4954},"e646b1c",{"type":71,"value":4956}," (Check ",{"type":66,"tag":128,"props":4958,"children":4961},{"href":4959,"rel":4960},"https://v3.nuxtjs.org/guide/features/server-routes",[132],[4962],{"type":71,"value":4963},"Nuxt doc",{"type":71,"value":293},{"title":59,"searchDepth":78,"depth":78,"links":4966},[4967],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.8","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.8","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.8",{"name":197,"url":198,"avatar":199},"github:v0.1.8.md",{"name":4974,"tag_name":4974,"date":4975,"body":4976,"v":245,"url":5054,"tarball":5055,"zipball":5056,"prerelease":60,"reactions":5057,"author":5059,"title":59,"description":59,"_type":80,"_id":5060},"v0.1.7","2022-04-07T21:31:24Z",{"type":63,"children":4977,"toc":5050},[4978,4982,5025,5029],{"type":66,"tag":98,"props":4979,"children":4980},{"id":100},[4981],{"type":71,"value":103},{"type":66,"tag":112,"props":4983,"children":4984},{},[4985,5002],{"type":66,"tag":116,"props":4986,"children":4987},{},[4988,4990],{"type":71,"value":4989},"fix: assert method and use correct key for server middleware in ",{"type":66,"tag":128,"props":4991,"children":4994},{"href":4992,"rel":4993},"https://github.com/nuxt-community/supabase-module/commit/8a4d63101e6d2bc24563f7944988909ec7dcc6e5",[132],[4995,4996],{"type":71,"value":4207},{"type":66,"tag":148,"props":4997,"children":4999},{"className":4998},[],[5000],{"type":71,"value":5001},"8a4d631",{"type":66,"tag":116,"props":5003,"children":5004},{},[5005,5007,5017,5018],{"type":71,"value":5006},"fix: replace #config with #nitro by ",{"type":66,"tag":128,"props":5008,"children":5011},{"href":5009,"rel":5010},"https://github.com/psto",[132],[5012],{"type":66,"tag":120,"props":5013,"children":5014},{},[5015],{"type":71,"value":5016},"@psto",{"type":71,"value":1056},{"type":66,"tag":128,"props":5019,"children":5022},{"href":5020,"rel":5021},"https://github.com/nuxt-community/supabase-module/pull/23",[132],[5023],{"type":71,"value":5024},"nuxt-community/supabase-module#23",{"type":66,"tag":98,"props":5026,"children":5027},{"id":4300},[5028],{"type":71,"value":4303},{"type":66,"tag":112,"props":5030,"children":5031},{},[5032],{"type":66,"tag":116,"props":5033,"children":5034},{},[5035,5043,5045],{"type":66,"tag":128,"props":5036,"children":5038},{"href":5009,"rel":5037},[132],[5039],{"type":66,"tag":120,"props":5040,"children":5041},{},[5042],{"type":71,"value":5016},{"type":71,"value":5044}," made their first contribution in ",{"type":66,"tag":128,"props":5046,"children":5048},{"href":5020,"rel":5047},[132],[5049],{"type":71,"value":5024},{"title":59,"searchDepth":78,"depth":78,"links":5051},[5052,5053],{"id":100,"depth":78,"text":103},{"id":4300,"depth":78,"text":4303},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.7","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.7","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.7",{"url":5058,"total_count":190,"+1":245,"-1":245,"laugh":245,"hooray":190,"confused":245,"heart":245,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/63922233/reactions",{"name":4905,"url":4906,"avatar":4907},"github:v0.1.7.md",{"name":5062,"tag_name":5062,"date":5063,"body":5064,"v":245,"url":5111,"tarball":5112,"zipball":5113,"prerelease":60,"reactions":5114,"author":5117,"title":59,"description":59,"_type":80,"_id":5118},"v0.1.5","2022-04-04T10:15:21Z",{"type":63,"children":5065,"toc":5108},[5066,5070,5094],{"type":66,"tag":105,"props":5067,"children":5068},{"id":259},[5069],{"type":71,"value":262},{"type":66,"tag":112,"props":5071,"children":5072},{},[5073],{"type":66,"tag":116,"props":5074,"children":5075},{},[5076,5078,5085,5087],{"type":71,"value":5077},"remove lodash.clonedeep (",{"type":66,"tag":128,"props":5079,"children":5082},{"href":5080,"rel":5081},"https://github.com/nuxt-community/supabase-module/commit/b5c5c60358ab192b98c8a63185f58a2eb0ab706a",[132],[5083],{"type":71,"value":5084},"b5c5c60",{"type":71,"value":5086},"), resolved ",{"type":66,"tag":128,"props":5088,"children":5091},{"href":5089,"rel":5090},"https://github.com/nuxt-modules/supabase/issues/21",[132],[5092],{"type":71,"value":5093},"#21",{"type":66,"tag":67,"props":5095,"children":5096},{},[5097,5101,5102],{"type":66,"tag":120,"props":5098,"children":5099},{},[5100],{"type":71,"value":1961},{"type":71,"value":1963},{"type":66,"tag":128,"props":5103,"children":5106},{"href":5104,"rel":5105},"https://github.com/nuxt-community/supabase-module/compare/v0.1.4...v0.1.5",[132],[5107],{"type":71,"value":5104},{"title":59,"searchDepth":78,"depth":78,"links":5109},[5110],{"id":259,"depth":190,"text":262},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.5",{"url":5115,"total_count":5116,"+1":245,"-1":245,"laugh":245,"hooray":1022,"confused":245,"heart":78,"rocket":245,"eyes":245},"https://api.github.com/repos/nuxt-modules/supabase/releases/63507078/reactions",6,{"name":4905,"url":4906,"avatar":4907},"github:v0.1.5.md",1733842352343] \ No newline at end of file +[{"data":1,"prerenderedAt":5193},["ShallowReactive",2],{"navigation":3,"/changelog":58,"/changelog-surround":86,"releases":91},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":52,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":51,"description":61,"icon":53,"body":62,"_type":80,"_id":81,"_source":82,"_file":83,"_stem":84,"_extension":85},"",false,"Discover the latest updates of the Supabase Module",{"type":63,"children":64,"toc":77},"root",[65,73],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70],{"type":71,"value":72},"text","Discover the lastest updates.",{"type":66,"tag":74,"props":75,"children":76},"releases",{},[],{"title":59,"searchDepth":78,"depth":78,"links":79},2,[],"markdown","content:6.changelog.md","content","6.changelog.md","6.changelog","md",[87,89],{"_path":48,"title":47,"description":88},"Demonstration of using Supabase with Nuxt.",{"_path":56,"title":55,"description":90},"Discover our kaban board for the next release of the Supabase module.",[92,188,278,324,448,630,690,742,813,1044,1100,1200,1296,1400,1524,1698,1766,1872,2112,2205,2509,2611,2688,2754,3053,3327,3400,3532,3577,3637,3689,3835,3934,3997,4048,4093,4145,4258,4334,4412,4476,4561,4663,4769,4885,4919,4983,5047,5135],{"name":93,"tag_name":93,"date":94,"body":95,"v":176,"url":177,"tarball":178,"zipball":179,"prerelease":60,"reactions":180,"author":183,"title":59,"description":59,"_type":80,"_id":187},"v1.4.4","2024-12-10T14:54:47Z",{"type":63,"children":96,"toc":169},[97,104,111,138,150,156],{"type":66,"tag":98,"props":99,"children":101},"h2",{"id":100},"whats-changed",[102],{"type":71,"value":103},"What's Changed",{"type":66,"tag":105,"props":106,"children":108},"h3",{"id":107},"feature",[109],{"type":71,"value":110},"Feature",{"type":66,"tag":112,"props":113,"children":114},"ul",{},[115],{"type":66,"tag":116,"props":117,"children":118},"li",{},[119,125,127,136],{"type":66,"tag":120,"props":121,"children":122},"strong",{},[123],{"type":71,"value":124},"deps:",{"type":71,"value":126}," Update supabase-js to fix realtime issue (",{"type":66,"tag":128,"props":129,"children":133},"a",{"href":130,"rel":131},"https://github.com/nuxt-modules/supabase/pull/436",[132],"nofollow",[134],{"type":71,"value":135},"#436",{"type":71,"value":137},")",{"type":66,"tag":67,"props":139,"children":140},{},[141,148],{"type":66,"tag":128,"props":142,"children":145},{"href":143,"rel":144},"https://github.com/nuxt-community/supabase-module/compare/v1.4.3...v1.4.4",[132],[146],{"type":71,"value":147},"Full changelog",{"type":71,"value":149}," (2024-12-10)",{"type":66,"tag":98,"props":151,"children":153},{"id":152},"contributors",[154],{"type":71,"value":155},"Contributors 💚",{"type":66,"tag":67,"props":157,"children":158},{},[159],{"type":66,"tag":128,"props":160,"children":163},{"href":161,"rel":162},"https://github.com/felixgabler",[132],[164],{"type":66,"tag":120,"props":165,"children":166},{},[167],{"type":71,"value":168},"@felixgabler",{"title":59,"searchDepth":78,"depth":78,"links":170},[171,175],{"id":100,"depth":78,"text":103,"children":172},[173],{"id":107,"depth":174,"text":110},3,{"id":152,"depth":78,"text":155},1,"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.4",{"url":181,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":176,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/189979442/reactions",0,{"name":184,"url":185,"avatar":186},"larbish","https://github.com/larbish","https://avatars.githubusercontent.com/u/7290030?v=4","github:v1.4.4.md",{"name":189,"tag_name":189,"date":190,"body":191,"v":176,"url":273,"tarball":274,"zipball":275,"prerelease":60,"author":276,"title":59,"description":59,"_type":80,"_id":277},"v1.4.3","2024-11-20T10:32:56Z",{"type":63,"children":192,"toc":267},[193,197,203,241,252,256],{"type":66,"tag":98,"props":194,"children":195},{"id":100},[196],{"type":71,"value":103},{"type":66,"tag":105,"props":198,"children":200},{"id":199},"refactor",[201],{"type":71,"value":202},"Refactor",{"type":66,"tag":112,"props":204,"children":205},{},[206],{"type":66,"tag":116,"props":207,"children":208},{},[209,214,216,223,225],{"type":66,"tag":120,"props":210,"children":211},{},[212],{"type":71,"value":213},"client:",{"type":71,"value":215}," inject earlier (",{"type":66,"tag":128,"props":217,"children":220},{"href":218,"rel":219},"https://github.com/nuxt-modules/supabase/pull/433",[132],[221],{"type":71,"value":222},"#433",{"type":71,"value":224},") ",{"type":66,"tag":226,"props":227,"children":228},"span",{},[229],{"type":66,"tag":128,"props":230,"children":233},{"href":231,"rel":232},"https://github.com/nuxt-modules/supabase/commit/6a5bb33cc36ee287d83b4f020bd2837496183128",[132],[234],{"type":66,"tag":235,"props":236,"children":238},"code",{"className":237},[],[239],{"type":71,"value":240},"6a5bb33",{"type":66,"tag":67,"props":242,"children":243},{},[244,250],{"type":66,"tag":128,"props":245,"children":248},{"href":246,"rel":247},"https://github.com/nuxt-community/supabase-module/compare/v1.4.2...v1.4.3",[132],[249],{"type":71,"value":147},{"type":71,"value":251}," (2024-11-20)",{"type":66,"tag":98,"props":253,"children":254},{"id":152},[255],{"type":71,"value":155},{"type":66,"tag":67,"props":257,"children":258},{},[259],{"type":66,"tag":128,"props":260,"children":262},{"href":161,"rel":261},[132],[263],{"type":66,"tag":120,"props":264,"children":265},{},[266],{"type":71,"value":168},{"title":59,"searchDepth":78,"depth":78,"links":268},[269,272],{"id":100,"depth":78,"text":103,"children":270},[271],{"id":199,"depth":174,"text":202},{"id":152,"depth":78,"text":155},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.3",{"name":184,"url":185,"avatar":186},"github:v1.4.3.md",{"name":279,"tag_name":279,"date":280,"body":281,"v":176,"url":317,"tarball":318,"zipball":319,"prerelease":60,"reactions":320,"author":322,"title":59,"description":59,"_type":80,"_id":323},"v1.4.2","2024-11-07T09:13:16Z",{"type":63,"children":282,"toc":313},[283,287,298,302],{"type":66,"tag":98,"props":284,"children":285},{"id":100},[286],{"type":71,"value":103},{"type":66,"tag":67,"props":288,"children":289},{},[290,296],{"type":66,"tag":128,"props":291,"children":294},{"href":292,"rel":293},"https://github.com/nuxt-community/supabase-module/compare/v1.4.1...v1.4.2",[132],[295],{"type":71,"value":147},{"type":71,"value":297}," (2024-11-07)",{"type":66,"tag":98,"props":299,"children":300},{"id":152},[301],{"type":71,"value":155},{"type":66,"tag":67,"props":303,"children":304},{},[305],{"type":66,"tag":128,"props":306,"children":308},{"href":161,"rel":307},[132],[309],{"type":66,"tag":120,"props":310,"children":311},{},[312],{"type":71,"value":168},{"title":59,"searchDepth":78,"depth":78,"links":314},[315,316],{"id":100,"depth":78,"text":103},{"id":152,"depth":78,"text":155},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.2",{"url":321,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":176,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/184098070/reactions",{"name":184,"url":185,"avatar":186},"github:v1.4.2.md",{"name":325,"tag_name":325,"date":326,"body":327,"v":176,"url":443,"tarball":444,"zipball":445,"prerelease":60,"author":446,"title":59,"description":59,"_type":80,"_id":447},"v1.4.1","2024-10-11T07:57:46Z",{"type":63,"children":328,"toc":437},[329,333,339,409,420,424],{"type":66,"tag":98,"props":330,"children":331},{"id":100},[332],{"type":71,"value":103},{"type":66,"tag":105,"props":334,"children":336},{"id":335},"bug-fixes",[337],{"type":71,"value":338},"Bug Fixes",{"type":66,"tag":112,"props":340,"children":341},{},[342,369],{"type":66,"tag":116,"props":343,"children":344},{},[345,350,352,359,361,368],{"type":66,"tag":120,"props":346,"children":347},{},[348],{"type":71,"value":349},"session:",{"type":71,"value":351}," ssr getSession warning (",{"type":66,"tag":128,"props":353,"children":356},{"href":354,"rel":355},"https://github.com/nuxt-community/supabase-module/issues/418",[132],[357],{"type":71,"value":358},"#418",{"type":71,"value":360},") (",{"type":66,"tag":128,"props":362,"children":365},{"href":363,"rel":364},"https://github.com/nuxt-community/supabase-module/commit/95d905b9b1f54a3aa15b3e4e583151cfcf00878f",[132],[366],{"type":71,"value":367},"95d905b",{"type":71,"value":137},{"type":66,"tag":116,"props":370,"children":371},{},[372,377,379,384,386,391,393,400,401,408],{"type":66,"tag":120,"props":373,"children":374},{},[375],{"type":71,"value":376},"types:",{"type":71,"value":378}," added explicit types annotations for ",{"type":66,"tag":235,"props":380,"children":382},{"className":381},[],[383],{"type":71,"value":34},{"type":71,"value":385}," and ",{"type":66,"tag":235,"props":387,"children":389},{"className":388},[],[390],{"type":71,"value":37},{"type":71,"value":392}," (",{"type":66,"tag":128,"props":394,"children":397},{"href":395,"rel":396},"https://github.com/nuxt-community/supabase-module/issues/411",[132],[398],{"type":71,"value":399},"#411",{"type":71,"value":360},{"type":66,"tag":128,"props":402,"children":405},{"href":403,"rel":404},"https://github.com/nuxt-community/supabase-module/commit/3f9864069b758bd945b30c1eebaba618b4bfd95e",[132],[406],{"type":71,"value":407},"3f98640",{"type":71,"value":137},{"type":66,"tag":67,"props":410,"children":411},{},[412,418],{"type":66,"tag":128,"props":413,"children":416},{"href":414,"rel":415},"https://github.com/nuxt-community/supabase-module/compare/v1.4.0...v1.4.1",[132],[417],{"type":71,"value":147},{"type":71,"value":419}," (2024-08-30)",{"type":66,"tag":98,"props":421,"children":422},{"id":152},[423],{"type":71,"value":155},{"type":66,"tag":67,"props":425,"children":426},{},[427],{"type":66,"tag":128,"props":428,"children":431},{"href":429,"rel":430},"https://github.com/th1m0",[132],[432],{"type":66,"tag":120,"props":433,"children":434},{},[435],{"type":71,"value":436},"@th1m0",{"title":59,"searchDepth":78,"depth":78,"links":438},[439,442],{"id":100,"depth":78,"text":103,"children":440},[441],{"id":335,"depth":174,"text":338},{"id":152,"depth":78,"text":155},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.1",{"name":184,"url":185,"avatar":186},"github:v1.4.1.md",{"name":449,"tag_name":449,"date":450,"body":451,"v":176,"url":623,"tarball":624,"zipball":625,"prerelease":60,"reactions":626,"author":628,"title":59,"description":59,"_type":80,"_id":629},"v1.4.0","2024-08-30T12:31:31Z",{"type":63,"children":452,"toc":616},[453,457,461,547,553,581,591,595],{"type":66,"tag":98,"props":454,"children":455},{"id":100},[456],{"type":71,"value":103},{"type":66,"tag":105,"props":458,"children":459},{"id":335},[460],{"type":71,"value":338},{"type":66,"tag":112,"props":462,"children":463},{},[464,489,522],{"type":66,"tag":116,"props":465,"children":466},{},[467,471,473,480,481,488],{"type":66,"tag":120,"props":468,"children":469},{},[470],{"type":71,"value":376},{"type":71,"value":472}," add explicit type annotations for plugins (",{"type":66,"tag":128,"props":474,"children":477},{"href":475,"rel":476},"https://github.com/nuxt-community/supabase-module/issues/408",[132],[478],{"type":71,"value":479},"#408",{"type":71,"value":360},{"type":66,"tag":128,"props":482,"children":485},{"href":483,"rel":484},"https://github.com/nuxt-community/supabase-module/commit/09bff844d29cfb788cb334860202e2e14a5da2a9",[132],[486],{"type":71,"value":487},"09bff84",{"type":71,"value":137},{"type":66,"tag":116,"props":490,"children":491},{},[492,496,498,504,506,513,514,521],{"type":66,"tag":120,"props":493,"children":494},{},[495],{"type":71,"value":376},{"type":71,"value":497}," add explicit types for composables & remove ",{"type":66,"tag":235,"props":499,"children":501},{"className":500},[],[502],{"type":71,"value":503},"baseUrl",{"type":71,"value":505}," from tsconfig (",{"type":66,"tag":128,"props":507,"children":510},{"href":508,"rel":509},"https://github.com/nuxt-community/supabase-module/issues/404",[132],[511],{"type":71,"value":512},"#404",{"type":71,"value":360},{"type":66,"tag":128,"props":515,"children":518},{"href":516,"rel":517},"https://github.com/nuxt-community/supabase-module/commit/596ece2460e7b4d08bcb2ac2322c10912e0a5977",[132],[519],{"type":71,"value":520},"596ece2",{"type":71,"value":137},{"type":66,"tag":116,"props":523,"children":524},{},[525,529,531,538,539,546],{"type":66,"tag":120,"props":526,"children":527},{},[528],{"type":71,"value":376},{"type":71,"value":530}," nullable composable types (",{"type":66,"tag":128,"props":532,"children":535},{"href":533,"rel":534},"https://github.com/nuxt-community/supabase-module/issues/407",[132],[536],{"type":71,"value":537},"#407",{"type":71,"value":360},{"type":66,"tag":128,"props":540,"children":543},{"href":541,"rel":542},"https://github.com/nuxt-community/supabase-module/commit/cbbfd86150bba779743dd7c02341b97484d4cc49",[132],[544],{"type":71,"value":545},"cbbfd86",{"type":71,"value":137},{"type":66,"tag":105,"props":548,"children":550},{"id":549},"features",[551],{"type":71,"value":552},"Features",{"type":66,"tag":112,"props":554,"children":555},{},[556],{"type":66,"tag":116,"props":557,"children":558},{},[559,563,565,572,573,580],{"type":66,"tag":120,"props":560,"children":561},{},[562],{"type":71,"value":213},{"type":71,"value":564}," add retries to fetch (",{"type":66,"tag":128,"props":566,"children":569},{"href":567,"rel":568},"https://github.com/nuxt-community/supabase-module/issues/382",[132],[570],{"type":71,"value":571},"#382",{"type":71,"value":360},{"type":66,"tag":128,"props":574,"children":577},{"href":575,"rel":576},"https://github.com/nuxt-community/supabase-module/commit/98ca959c8d3f502dab78439709422e83d539b70d",[132],[578],{"type":71,"value":579},"98ca959",{"type":71,"value":137},{"type":66,"tag":67,"props":582,"children":583},{},[584,590],{"type":66,"tag":128,"props":585,"children":588},{"href":586,"rel":587},"https://github.com/nuxt-community/supabase-module/compare/v1.3.5...v1.4.0",[132],[589],{"type":71,"value":147},{"type":71,"value":419},{"type":66,"tag":98,"props":592,"children":593},{"id":152},[594],{"type":71,"value":155},{"type":66,"tag":67,"props":596,"children":597},{},[598,606,608],{"type":66,"tag":128,"props":599,"children":601},{"href":161,"rel":600},[132],[602],{"type":66,"tag":120,"props":603,"children":604},{},[605],{"type":71,"value":168},{"type":71,"value":607},"\r\n",{"type":66,"tag":128,"props":609,"children":611},{"href":429,"rel":610},[132],[612],{"type":66,"tag":120,"props":613,"children":614},{},[615],{"type":71,"value":436},{"title":59,"searchDepth":78,"depth":78,"links":617},[618,622],{"id":100,"depth":78,"text":103,"children":619},[620,621],{"id":335,"depth":174,"text":338},{"id":549,"depth":174,"text":552},{"id":152,"depth":78,"text":155},"https://github.com/nuxt-modules/supabase/releases/tag/v1.4.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.4.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.4.0",{"url":627,"total_count":176,"+1":176,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/172753836/reactions",{"name":184,"url":185,"avatar":186},"github:v1.4.0.md",{"name":631,"tag_name":631,"date":632,"body":633,"v":176,"url":685,"tarball":686,"zipball":687,"prerelease":60,"author":688,"title":59,"description":59,"_type":80,"_id":689},"v1.3.5","2024-07-15T12:59:37Z",{"type":63,"children":634,"toc":680},[635,639,643,671],{"type":66,"tag":98,"props":636,"children":637},{"id":100},[638],{"type":71,"value":103},{"type":66,"tag":105,"props":640,"children":641},{"id":335},[642],{"type":71,"value":338},{"type":66,"tag":112,"props":644,"children":645},{},[646],{"type":66,"tag":116,"props":647,"children":648},{},[649,653,655,662,664],{"type":66,"tag":120,"props":650,"children":651},{},[652],{"type":71,"value":376},{"type":71,"value":654}," generate (",{"type":66,"tag":128,"props":656,"children":659},{"href":657,"rel":658},"https://github.com/nuxt-community/supabase-module/commit/671295a3f8e1743384913f2940975c2e4217ff2e",[132],[660],{"type":71,"value":661},"671295a",{"type":71,"value":663},") resolves ",{"type":66,"tag":128,"props":665,"children":668},{"href":666,"rel":667},"https://github.com/nuxt-modules/supabase/issues/383",[132],[669],{"type":71,"value":670},"#383",{"type":66,"tag":67,"props":672,"children":673},{},[674],{"type":66,"tag":128,"props":675,"children":678},{"href":676,"rel":677},"https://github.com/nuxt-community/supabase-module/compare/v1.3.4...v1.3.5",[132],[679],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":681},[682],{"id":100,"depth":78,"text":103,"children":683},[684],{"id":335,"depth":174,"text":338},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.5",{"name":184,"url":185,"avatar":186},"github:v1.3.5.md",{"name":691,"tag_name":691,"date":692,"body":693,"v":176,"url":737,"tarball":738,"zipball":739,"prerelease":60,"author":740,"title":59,"description":59,"_type":80,"_id":741},"v1.3.4","2024-07-10T07:00:38Z",{"type":63,"children":694,"toc":732},[695,699,703],{"type":66,"tag":98,"props":696,"children":697},{"id":100},[698],{"type":71,"value":103},{"type":66,"tag":105,"props":700,"children":701},{"id":335},[702],{"type":71,"value":338},{"type":66,"tag":112,"props":704,"children":705},{},[706],{"type":66,"tag":116,"props":707,"children":708},{},[709,714,716,723,725],{"type":66,"tag":120,"props":710,"children":711},{},[712],{"type":71,"value":713},"vite:",{"type":71,"value":715}," optimize order (",{"type":66,"tag":128,"props":717,"children":720},{"href":718,"rel":719},"https://github.com/nuxt-community/supabase-module/commit/663bd73ebb146ecde1abe5f29b52326e6dc2b6cd",[132],[721],{"type":71,"value":722},"663bd73",{"type":71,"value":724},") fixes ",{"type":66,"tag":128,"props":726,"children":729},{"href":727,"rel":728},"https://github.com/nuxt-modules/supabase/issues/385",[132],[730],{"type":71,"value":731},"#385",{"title":59,"searchDepth":78,"depth":78,"links":733},[734],{"id":100,"depth":78,"text":103,"children":735},[736],{"id":335,"depth":174,"text":338},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.4",{"name":184,"url":185,"avatar":186},"github:v1.3.4.md",{"name":743,"tag_name":743,"date":744,"body":745,"v":176,"url":806,"tarball":807,"zipball":808,"prerelease":60,"reactions":809,"author":811,"title":59,"description":59,"_type":80,"_id":812},"v1.3.2","2024-07-05T16:26:23Z",{"type":63,"children":746,"toc":800},[747,751,755,775,779],{"type":66,"tag":98,"props":748,"children":749},{"id":100},[750],{"type":71,"value":103},{"type":66,"tag":105,"props":752,"children":753},{"id":335},[754],{"type":71,"value":338},{"type":66,"tag":112,"props":756,"children":757},{},[758],{"type":66,"tag":116,"props":759,"children":760},{},[761,765,767,774],{"type":66,"tag":120,"props":762,"children":763},{},[764],{"type":71,"value":713},{"type":71,"value":766}," optimize postgrest (",{"type":66,"tag":128,"props":768,"children":771},{"href":769,"rel":770},"https://github.com/nuxt-community/supabase-module/commit/2a6d91a3ee83aa65cc5741afea907ca474e61d64",[132],[772],{"type":71,"value":773},"2a6d91a",{"type":71,"value":137},{"type":66,"tag":105,"props":776,"children":777},{"id":549},[778],{"type":71,"value":552},{"type":66,"tag":112,"props":780,"children":781},{},[782],{"type":66,"tag":116,"props":783,"children":784},{},[785,790,792,799],{"type":66,"tag":120,"props":786,"children":787},{},[788],{"type":71,"value":789},"ci:",{"type":71,"value":791}," nightly version (",{"type":66,"tag":128,"props":793,"children":796},{"href":794,"rel":795},"https://github.com/nuxt-community/supabase-module/commit/298e608442ac5e8c15aa61c01411585e57732f4a",[132],[797],{"type":71,"value":798},"298e608",{"type":71,"value":137},{"title":59,"searchDepth":78,"depth":78,"links":801},[802],{"id":100,"depth":78,"text":103,"children":803},[804,805],{"id":335,"depth":174,"text":338},{"id":549,"depth":174,"text":552},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.2",{"url":810,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":176,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/164188781/reactions",{"name":184,"url":185,"avatar":186},"github:v1.3.2.md",{"name":814,"tag_name":814,"date":815,"body":816,"v":176,"url":1037,"tarball":1038,"zipball":1039,"prerelease":60,"reactions":1040,"author":1042,"title":59,"description":59,"_type":80,"_id":1043},"v1.3.1","2024-07-05T12:25:51Z",{"type":63,"children":817,"toc":1031},[818,822,843,849,871,889,903,916,921,974,989,995,1022],{"type":66,"tag":98,"props":819,"children":820},{"id":100},[821],{"type":71,"value":103},{"type":66,"tag":67,"props":823,"children":824},{},[825,827,833,835,841],{"type":71,"value":826},"⚠️ You can switch directly to ",{"type":66,"tag":235,"props":828,"children":830},{"className":829},[],[831],{"type":71,"value":832},"1.3.1",{"type":71,"value":834},", since ",{"type":66,"tag":235,"props":836,"children":838},{"className":837},[],[839],{"type":71,"value":840},"1.3.0",{"type":71,"value":842}," has been superseded.",{"type":66,"tag":105,"props":844,"children":846},{"id":845},"major-changes",[847],{"type":71,"value":848},"Major changes",{"type":66,"tag":67,"props":850,"children":851},{},[852,854,861,863,870],{"type":71,"value":853},"We're now using the ",{"type":66,"tag":128,"props":855,"children":858},{"href":856,"rel":857},"https://supabase.com/docs/guides/auth/server-side/creating-a-client",[132],[859],{"type":71,"value":860},"@supabase/ssr",{"type":71,"value":862}," library under the hood 🎉 (",{"type":66,"tag":128,"props":864,"children":867},{"href":865,"rel":866},"https://github.com/nuxt-modules/supabase/issues/357",[132],[868],{"type":71,"value":869},"#357",{"type":71,"value":137},{"type":66,"tag":67,"props":872,"children":873},{},[874,876,881,883],{"type":71,"value":875},"There are ",{"type":66,"tag":120,"props":877,"children":878},{},[879],{"type":71,"value":880},"no breaking changes",{"type":71,"value":882}," related to this improvement. However, a non-disruptive warning appears in this release:\r\n",{"type":66,"tag":235,"props":884,"children":886},{"className":885},[],[887],{"type":71,"value":888},"Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure.",{"type":66,"tag":67,"props":890,"children":891},{},[892,894,901],{"type":71,"value":893},"This warning is related to ",{"type":66,"tag":128,"props":895,"children":898},{"href":896,"rel":897},"https://github.com/supabase/auth-js/issues/912",[132],[899],{"type":71,"value":900},"an issue",{"type":71,"value":902}," in the Supabase library itself. Initially, I intended to wait for this fix but since managing updates across two separate branches is challenging I chose to merge it anyway. I could no longer delay the release due to users raising concerns about outdated dependencies and other issues within the module.",{"type":66,"tag":67,"props":904,"children":905},{},[906,908,914],{"type":71,"value":907},"You can upvote ",{"type":66,"tag":128,"props":909,"children":911},{"href":896,"rel":910},[132],[912],{"type":71,"value":913},"the issue",{"type":71,"value":915}," to encourage the Supabase maintainers to address it.",{"type":66,"tag":67,"props":917,"children":918},{},[919],{"type":71,"value":920},"This improvement might fix:",{"type":66,"tag":112,"props":922,"children":923},{},[924,934,944,954,964],{"type":66,"tag":116,"props":925,"children":926},{},[927],{"type":66,"tag":128,"props":928,"children":931},{"href":929,"rel":930},"https://github.com/nuxt-modules/supabase/issues/298",[132],[932],{"type":71,"value":933},"#298",{"type":66,"tag":116,"props":935,"children":936},{},[937],{"type":66,"tag":128,"props":938,"children":941},{"href":939,"rel":940},"https://github.com/nuxt-modules/supabase/issues/381",[132],[942],{"type":71,"value":943},"#381",{"type":66,"tag":116,"props":945,"children":946},{},[947],{"type":66,"tag":128,"props":948,"children":951},{"href":949,"rel":950},"https://github.com/nuxt-modules/supabase/issues/380",[132],[952],{"type":71,"value":953},"#380",{"type":66,"tag":116,"props":955,"children":956},{},[957],{"type":66,"tag":128,"props":958,"children":961},{"href":959,"rel":960},"https://github.com/nuxt-modules/supabase/issues/367",[132],[962],{"type":71,"value":963},"#367",{"type":66,"tag":116,"props":965,"children":966},{},[967],{"type":66,"tag":128,"props":968,"children":971},{"href":969,"rel":970},"https://github.com/nuxt-modules/supabase/issues/326",[132],[972],{"type":71,"value":973},"#326",{"type":66,"tag":67,"props":975,"children":976},{},[977,979,987],{"type":71,"value":978},"A big thanks to ",{"type":66,"tag":128,"props":980,"children":982},{"href":161,"rel":981},[132],[983],{"type":66,"tag":120,"props":984,"children":985},{},[986],{"type":71,"value":168},{"type":71,"value":988}," for initiating this change and helping refactor the module.",{"type":66,"tag":105,"props":990,"children":992},{"id":991},"other-update",[993],{"type":71,"value":994},"Other update",{"type":66,"tag":112,"props":996,"children":997},{},[998],{"type":66,"tag":116,"props":999,"children":1000},{},[1001,1003,1013,1014,1021],{"type":71,"value":1002},"Automatic database types by ",{"type":66,"tag":128,"props":1004,"children":1007},{"href":1005,"rel":1006},"https://github.com/IsraelOrtuno",[132],[1008],{"type":66,"tag":120,"props":1009,"children":1010},{},[1011],{"type":71,"value":1012},"@IsraelOrtuno",{"type":71,"value":392},{"type":66,"tag":128,"props":1015,"children":1018},{"href":1016,"rel":1017},"https://github.com/nuxt-modules/supabase/issues/336",[132],[1019],{"type":71,"value":1020},"#336",{"type":71,"value":137},{"type":66,"tag":67,"props":1023,"children":1024},{},[1025],{"type":66,"tag":128,"props":1026,"children":1029},{"href":1027,"rel":1028},"https://github.com/nuxt-community/supabase-module/compare/v1.2.2...v1.3.1",[132],[1030],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1032},[1033],{"id":100,"depth":78,"text":103,"children":1034},[1035,1036],{"id":845,"depth":174,"text":848},{"id":991,"depth":174,"text":994},"https://github.com/nuxt-modules/supabase/releases/tag/v1.3.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.3.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.3.1",{"url":1041,"total_count":78,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":78,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/164152561/reactions",{"name":184,"url":185,"avatar":186},"github:v1.3.1.md",{"name":1045,"tag_name":1045,"date":1046,"body":1047,"v":176,"url":1092,"tarball":1093,"zipball":1094,"prerelease":60,"reactions":1095,"author":1098,"title":59,"description":59,"_type":80,"_id":1099},"v1.2.2","2024-05-02T15:33:41Z",{"type":63,"children":1048,"toc":1087},[1049,1053,1057,1078],{"type":66,"tag":98,"props":1050,"children":1051},{"id":100},[1052],{"type":71,"value":103},{"type":66,"tag":105,"props":1054,"children":1055},{"id":335},[1056],{"type":71,"value":338},{"type":66,"tag":112,"props":1058,"children":1059},{},[1060],{"type":66,"tag":116,"props":1061,"children":1062},{},[1063,1068,1070,1077],{"type":66,"tag":120,"props":1064,"children":1065},{},[1066],{"type":71,"value":1067},"serverSupabaseSession:",{"type":71,"value":1069}," export service (",{"type":66,"tag":128,"props":1071,"children":1074},{"href":1072,"rel":1073},"https://github.com/nuxt-community/supabase-module/commit/9cfeb8726d562c5aac6fe1efa7dd1664bc39ed66",[132],[1075],{"type":71,"value":1076},"9cfeb87",{"type":71,"value":137},{"type":66,"tag":67,"props":1079,"children":1080},{},[1081],{"type":66,"tag":128,"props":1082,"children":1085},{"href":1083,"rel":1084},"https://github.com/nuxt-community/supabase-module/compare/v1.2.1...v1.2.2",[132],[1086],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1088},[1089],{"id":100,"depth":78,"text":103,"children":1090},[1091],{"id":335,"depth":174,"text":338},"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.2",{"url":1096,"total_count":1097,"+1":182,"-1":182,"laugh":182,"hooray":176,"confused":182,"heart":78,"rocket":182,"eyes":176},"https://api.github.com/repos/nuxt-modules/supabase/releases/153851448/reactions",4,{"name":184,"url":185,"avatar":186},"github:v1.2.2.md",{"name":1101,"tag_name":1101,"date":1102,"body":1103,"v":176,"url":1192,"tarball":1193,"zipball":1194,"prerelease":60,"reactions":1195,"author":1198,"title":59,"description":59,"_type":80,"_id":1199},"v1.2.1","2024-04-18T08:32:42Z",{"type":63,"children":1104,"toc":1185},[1105,1109,1115,1139,1145,1159,1165,1176],{"type":66,"tag":98,"props":1106,"children":1107},{"id":100},[1108],{"type":71,"value":103},{"type":66,"tag":105,"props":1110,"children":1112},{"id":1111},"improvements",[1113],{"type":71,"value":1114},"Improvements",{"type":66,"tag":67,"props":1116,"children":1117},{},[1118,1120,1130,1132],{"type":71,"value":1119},"Performance improvements by ",{"type":66,"tag":128,"props":1121,"children":1124},{"href":1122,"rel":1123},"https://github.com/vinceglb",[132],[1125],{"type":66,"tag":120,"props":1126,"children":1127},{},[1128],{"type":71,"value":1129},"@vinceglb",{"type":71,"value":1131}," in ",{"type":66,"tag":128,"props":1133,"children":1136},{"href":1134,"rel":1135},"https://github.com/nuxt-modules/supabase/issues/352",[132],[1137],{"type":71,"value":1138},"#352",{"type":66,"tag":105,"props":1140,"children":1142},{"id":1141},"chore",[1143],{"type":71,"value":1144},"Chore",{"type":66,"tag":67,"props":1146,"children":1147},{},[1148,1150,1157],{"type":71,"value":1149},"Move to eslint v9 using ",{"type":66,"tag":128,"props":1151,"children":1154},{"href":1152,"rel":1153},"https://eslint.nuxt.com",[132],[1155],{"type":71,"value":1156},"@nuxt/eslint",{"type":71,"value":1158}," package",{"type":66,"tag":105,"props":1160,"children":1162},{"id":1161},"thanks-for-the-help-from",[1163],{"type":71,"value":1164},"💚 Thanks for the help from:",{"type":66,"tag":67,"props":1166,"children":1167},{},[1168],{"type":66,"tag":128,"props":1169,"children":1171},{"href":1122,"rel":1170},[132],[1172],{"type":66,"tag":120,"props":1173,"children":1174},{},[1175],{"type":71,"value":1129},{"type":66,"tag":67,"props":1177,"children":1178},{},[1179],{"type":66,"tag":128,"props":1180,"children":1183},{"href":1181,"rel":1182},"https://github.com/nuxt-community/supabase-module/compare/v1.2.0...v1.2.1",[132],[1184],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1186},[1187],{"id":100,"depth":78,"text":103,"children":1188},[1189,1190,1191],{"id":1111,"depth":174,"text":1114},{"id":1141,"depth":174,"text":1144},{"id":1161,"depth":174,"text":1164},"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.1",{"url":1196,"total_count":1197,"+1":182,"-1":182,"laugh":182,"hooray":78,"confused":182,"heart":174,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/151694236/reactions",5,{"name":184,"url":185,"avatar":186},"github:v1.2.1.md",{"name":1201,"tag_name":1201,"date":1202,"body":1203,"v":176,"url":1291,"tarball":1292,"zipball":1293,"prerelease":60,"author":1294,"title":59,"description":59,"_type":80,"_id":1295},"v1.2.0","2024-03-29T09:33:20Z",{"type":63,"children":1204,"toc":1286},[1205,1209,1215,1258,1277],{"type":66,"tag":98,"props":1206,"children":1207},{"id":100},[1208],{"type":71,"value":103},{"type":66,"tag":105,"props":1210,"children":1212},{"id":1211},"minor-version-since-we-have-a-new-composable",[1213],{"type":71,"value":1214},"Minor version since we have a new composable 🎉",{"type":66,"tag":67,"props":1216,"children":1217},{},[1218,1224,1225,1231,1233,1240,1241,1248,1250,1257],{"type":66,"tag":128,"props":1219,"children":1222},{"href":1220,"rel":1221},"https://supabase.nuxtjs.org/usage/composables/usesupabasesession",[132],[1223],{"type":71,"value":24},{"type":71,"value":385},{"type":66,"tag":128,"props":1226,"children":1229},{"href":1227,"rel":1228},"https://supabase.nuxtjs.org/usage/services/serversupabasesession",[132],[1230],{"type":71,"value":40},{"type":71,"value":1232}," are now available to fetch your session client and server side (",{"type":66,"tag":128,"props":1234,"children":1237},{"href":1235,"rel":1236},"https://github.com/nuxt-community/supabase-module/issues/338",[132],[1238],{"type":71,"value":1239},"#338",{"type":71,"value":360},{"type":66,"tag":128,"props":1242,"children":1245},{"href":1243,"rel":1244},"https://github.com/nuxt-community/supabase-module/commit/07eb081d532510da4152554c7010c79ed6008559",[132],[1246],{"type":71,"value":1247},"07eb081",{"type":71,"value":1249}," & ",{"type":66,"tag":128,"props":1251,"children":1254},{"href":1252,"rel":1253},"https://github.com/nuxt-community/supabase-module/commit/9dee37ee030506fc7888dfbb6cc1f29b9126a728",[132],[1255],{"type":71,"value":1256},"9dee37e",{"type":71,"value":137},{"type":66,"tag":1259,"props":1260,"children":1262},"h4",{"id":1261},"thanks-joeychilson-for-this-feature",[1263,1265,1275],{"type":71,"value":1264},"Thanks ",{"type":66,"tag":128,"props":1266,"children":1269},{"href":1267,"rel":1268},"https://github.com/joeychilson",[132],[1270],{"type":66,"tag":120,"props":1271,"children":1272},{},[1273],{"type":71,"value":1274},"@joeychilson",{"type":71,"value":1276}," for this feature 🙏",{"type":66,"tag":67,"props":1278,"children":1279},{},[1280],{"type":66,"tag":128,"props":1281,"children":1284},{"href":1282,"rel":1283},"https://github.com/nuxt-community/supabase-module/compare/v1.1.7...v1.2.0",[132],[1285],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1287},[1288],{"id":100,"depth":78,"text":103,"children":1289},[1290],{"id":1211,"depth":174,"text":1214},"https://github.com/nuxt-modules/supabase/releases/tag/v1.2.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.2.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.2.0",{"name":184,"url":185,"avatar":186},"github:v1.2.0.md",{"name":1297,"tag_name":1297,"date":1298,"body":1299,"v":176,"url":1393,"tarball":1394,"zipball":1395,"prerelease":60,"reactions":1396,"author":1398,"title":59,"description":59,"_type":80,"_id":1399},"v1.1.7","2024-03-07T09:33:03Z",{"type":63,"children":1300,"toc":1387},[1301,1305,1309,1360,1365,1378],{"type":66,"tag":98,"props":1302,"children":1303},{"id":100},[1304],{"type":71,"value":103},{"type":66,"tag":105,"props":1306,"children":1307},{"id":549},[1308],{"type":71,"value":552},{"type":66,"tag":112,"props":1310,"children":1311},{},[1312],{"type":66,"tag":116,"props":1313,"children":1314},{},[1315,1320,1322,1328,1330,1336,1337,1343,1344,1351,1353],{"type":66,"tag":120,"props":1316,"children":1317},{},[1318],{"type":71,"value":1319},"auth-middleware:",{"type":71,"value":1321}," add ",{"type":66,"tag":235,"props":1323,"children":1325},{"className":1324},[],[1326],{"type":71,"value":1327},"include",{"type":71,"value":1329}," to ",{"type":66,"tag":235,"props":1331,"children":1333},{"className":1332},[],[1334],{"type":71,"value":1335},"RedirectOptions",{"type":71,"value":392},{"type":66,"tag":128,"props":1338,"children":1341},{"href":1339,"rel":1340},"https://github.com/nuxt-community/supabase-module/issues/336",[132],[1342],{"type":71,"value":1020},{"type":71,"value":360},{"type":66,"tag":128,"props":1345,"children":1348},{"href":1346,"rel":1347},"https://github.com/nuxt-community/supabase-module/commit/f9aad558da8171af1c442a60915c979eb10b8fab",[132],[1349],{"type":71,"value":1350},"f9aad55",{"type":71,"value":1352},"), closes ",{"type":66,"tag":128,"props":1354,"children":1357},{"href":1355,"rel":1356},"https://github.com/nuxt-community/supabase-module/issues/268",[132],[1358],{"type":71,"value":1359},"#268",{"type":66,"tag":105,"props":1361,"children":1362},{"id":1161},[1363],{"type":71,"value":1364},"💚 Thanks for the help from",{"type":66,"tag":67,"props":1366,"children":1367},{},[1368],{"type":66,"tag":128,"props":1369,"children":1372},{"href":1370,"rel":1371},"https://github.com/jojomatik",[132],[1373],{"type":66,"tag":120,"props":1374,"children":1375},{},[1376],{"type":71,"value":1377},"@jojomatik",{"type":66,"tag":67,"props":1379,"children":1380},{},[1381],{"type":66,"tag":128,"props":1382,"children":1385},{"href":1383,"rel":1384},"https://github.com/nuxt-community/supabase-module/compare/v1.1.6...v1.1.7",[132],[1386],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1388},[1389],{"id":100,"depth":78,"text":103,"children":1390},[1391,1392],{"id":549,"depth":174,"text":552},{"id":1161,"depth":174,"text":1364},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.7","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.7","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.7",{"url":1397,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":176,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/145217172/reactions",{"name":184,"url":185,"avatar":186},"github:v1.1.7.md",{"name":1401,"tag_name":1401,"date":1402,"body":1403,"v":176,"url":1517,"tarball":1518,"zipball":1519,"prerelease":60,"reactions":1520,"author":1522,"title":59,"description":59,"_type":80,"_id":1523},"v1.1.6","2024-01-26T15:22:23Z",{"type":63,"children":1404,"toc":1510},[1405,1409,1413,1451,1455,1484,1488,1501],{"type":66,"tag":98,"props":1406,"children":1407},{"id":100},[1408],{"type":71,"value":103},{"type":66,"tag":105,"props":1410,"children":1411},{"id":335},[1412],{"type":71,"value":338},{"type":66,"tag":112,"props":1414,"children":1415},{},[1416,1433],{"type":66,"tag":116,"props":1417,"children":1418},{},[1419,1423,1425,1432],{"type":66,"tag":120,"props":1420,"children":1421},{},[1422],{"type":71,"value":124},{"type":71,"value":1424}," set resolution (",{"type":66,"tag":128,"props":1426,"children":1429},{"href":1427,"rel":1428},"https://github.com/nuxt-community/supabase-module/commit/db8c102fb9d69395528eece3e1e0552a16e673da",[132],[1430],{"type":71,"value":1431},"db8c102",{"type":71,"value":137},{"type":66,"tag":116,"props":1434,"children":1435},{},[1436,1441,1443,1450],{"type":66,"tag":120,"props":1437,"children":1438},{},[1439],{"type":71,"value":1440},"playground:",{"type":71,"value":1442}," watch on confirm page (",{"type":66,"tag":128,"props":1444,"children":1447},{"href":1445,"rel":1446},"https://github.com/nuxt-community/supabase-module/commit/0caf5c11d632df6b7e74e5e8973ee56a38b1c968",[132],[1448],{"type":71,"value":1449},"0caf5c1",{"type":71,"value":137},{"type":66,"tag":105,"props":1452,"children":1453},{"id":549},[1454],{"type":71,"value":552},{"type":66,"tag":112,"props":1456,"children":1457},{},[1458],{"type":66,"tag":116,"props":1459,"children":1460},{},[1461,1466,1468,1475,1476,1483],{"type":66,"tag":120,"props":1462,"children":1463},{},[1464],{"type":71,"value":1465},"app:",{"type":71,"value":1467}," added redirect path cookie for use after signin (",{"type":66,"tag":128,"props":1469,"children":1472},{"href":1470,"rel":1471},"https://github.com/nuxt-community/supabase-module/issues/327",[132],[1473],{"type":71,"value":1474},"#327",{"type":71,"value":360},{"type":66,"tag":128,"props":1477,"children":1480},{"href":1478,"rel":1479},"https://github.com/nuxt-community/supabase-module/commit/1b78a050fdc6da155434e261823b029f9dce2d40",[132],[1481],{"type":71,"value":1482},"1b78a05",{"type":71,"value":137},{"type":66,"tag":105,"props":1485,"children":1486},{"id":1161},[1487],{"type":71,"value":1364},{"type":66,"tag":67,"props":1489,"children":1490},{},[1491],{"type":66,"tag":128,"props":1492,"children":1495},{"href":1493,"rel":1494},"https://github.com/Matthewenderle",[132],[1496],{"type":66,"tag":120,"props":1497,"children":1498},{},[1499],{"type":71,"value":1500},"@Matthewenderle",{"type":66,"tag":67,"props":1502,"children":1503},{},[1504],{"type":66,"tag":128,"props":1505,"children":1508},{"href":1506,"rel":1507},"https://github.com/nuxt-community/supabase-module/compare/v1.1.5...v1.1.6",[132],[1509],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1511},[1512],{"id":100,"depth":78,"text":103,"children":1513},[1514,1515,1516],{"id":335,"depth":174,"text":338},{"id":549,"depth":174,"text":552},{"id":1161,"depth":174,"text":1364},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.6","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.6","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.6",{"url":1521,"total_count":174,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":174,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/138681536/reactions",{"name":184,"url":185,"avatar":186},"github:v1.1.6.md",{"name":1525,"tag_name":1525,"date":1526,"body":1527,"v":176,"url":1691,"tarball":1692,"zipball":1693,"prerelease":60,"reactions":1694,"author":1696,"title":59,"description":59,"_type":80,"_id":1697},"v1.1.5","2023-12-28T14:29:18Z",{"type":63,"children":1528,"toc":1683},[1529,1533,1537,1558,1562,1581,1587,1624,1628,1674],{"type":66,"tag":98,"props":1530,"children":1531},{"id":100},[1532],{"type":71,"value":103},{"type":66,"tag":105,"props":1534,"children":1535},{"id":335},[1536],{"type":71,"value":338},{"type":66,"tag":112,"props":1538,"children":1539},{},[1540],{"type":66,"tag":116,"props":1541,"children":1542},{},[1543,1548,1550,1557],{"type":66,"tag":120,"props":1544,"children":1545},{},[1546],{"type":71,"value":1547},"server:",{"type":71,"value":1549}," fetch user from session (",{"type":66,"tag":128,"props":1551,"children":1554},{"href":1552,"rel":1553},"https://github.com/nuxt-community/supabase-module/commit/7a3b73c36cc9aea10100a0ff37b0e0e7ecefe2a8",[132],[1555],{"type":71,"value":1556},"7a3b73c",{"type":71,"value":137},{"type":66,"tag":105,"props":1559,"children":1560},{"id":1111},[1561],{"type":71,"value":1114},{"type":66,"tag":112,"props":1563,"children":1564},{},[1565],{"type":66,"tag":116,"props":1566,"children":1567},{},[1568,1572,1574],{"type":66,"tag":120,"props":1569,"children":1570},{},[1571],{"type":71,"value":1465},{"type":71,"value":1573}," use module-builder stub mode for more accurate types ",{"type":66,"tag":128,"props":1575,"children":1578},{"href":1576,"rel":1577},"https://github.com/nuxt-modules/supabase/issues/315",[132],[1579],{"type":71,"value":1580},"#315",{"type":66,"tag":105,"props":1582,"children":1584},{"id":1583},"docs",[1585],{"type":71,"value":1586},"Docs",{"type":66,"tag":112,"props":1588,"children":1589},{},[1590,1607],{"type":66,"tag":116,"props":1591,"children":1592},{},[1593,1598,1600],{"type":66,"tag":120,"props":1594,"children":1595},{},[1596],{"type":71,"value":1597},"get-started:",{"type":71,"value":1599}," bun command ",{"type":66,"tag":128,"props":1601,"children":1604},{"href":1602,"rel":1603},"https://github.com/nuxt-modules/supabase/issues/317",[132],[1605],{"type":71,"value":1606},"#317",{"type":66,"tag":116,"props":1608,"children":1609},{},[1610,1615,1617],{"type":66,"tag":120,"props":1611,"children":1612},{},[1613],{"type":71,"value":1614},"readme:",{"type":71,"value":1616}," typo in #dev section ",{"type":66,"tag":128,"props":1618,"children":1621},{"href":1619,"rel":1620},"https://github.com/nuxt-modules/supabase/issues/316",[132],[1622],{"type":71,"value":1623},"#316",{"type":66,"tag":105,"props":1625,"children":1626},{"id":1161},[1627],{"type":71,"value":1364},{"type":66,"tag":67,"props":1629,"children":1630},{},[1631,1641,1642,1652,1653,1663,1664],{"type":66,"tag":128,"props":1632,"children":1635},{"href":1633,"rel":1634},"https://github.com/danielroe",[132],[1636],{"type":66,"tag":120,"props":1637,"children":1638},{},[1639],{"type":71,"value":1640},"@danielroe",{"type":71,"value":607},{"type":66,"tag":128,"props":1643,"children":1646},{"href":1644,"rel":1645},"https://github.com/joshuabyler",[132],[1647],{"type":66,"tag":120,"props":1648,"children":1649},{},[1650],{"type":71,"value":1651},"@joshuabyler",{"type":71,"value":607},{"type":66,"tag":128,"props":1654,"children":1657},{"href":1655,"rel":1656},"https://github.com/hafizjavaid",[132],[1658],{"type":66,"tag":120,"props":1659,"children":1660},{},[1661],{"type":71,"value":1662},"@hafizjavaid",{"type":71,"value":607},{"type":66,"tag":128,"props":1665,"children":1668},{"href":1666,"rel":1667},"https://github.com/relisora",[132],[1669],{"type":66,"tag":120,"props":1670,"children":1671},{},[1672],{"type":71,"value":1673},"@relisora",{"type":66,"tag":67,"props":1675,"children":1676},{},[1677],{"type":66,"tag":128,"props":1678,"children":1681},{"href":1679,"rel":1680},"https://github.com/nuxt-community/supabase-module/compare/v1.1.4...v1.1.5",[132],[1682],{"type":71,"value":147},{"title":59,"searchDepth":78,"depth":78,"links":1684},[1685],{"id":100,"depth":78,"text":103,"children":1686},[1687,1688,1689,1690],{"id":335,"depth":174,"text":338},{"id":1111,"depth":174,"text":1114},{"id":1583,"depth":174,"text":1586},{"id":1161,"depth":174,"text":1364},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.5",{"url":1695,"total_count":1097,"+1":174,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":176,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/135279818/reactions",{"name":184,"url":185,"avatar":186},"github:v1.1.5.md",{"name":1699,"tag_name":1699,"date":1700,"body":1701,"v":176,"url":1759,"tarball":1760,"zipball":1761,"prerelease":60,"reactions":1762,"author":1764,"title":59,"description":59,"_type":80,"_id":1765},"v1.1.4","2023-11-17T14:42:47Z",{"type":63,"children":1702,"toc":1754},[1703,1707,1711,1739],{"type":66,"tag":98,"props":1704,"children":1705},{"id":100},[1706],{"type":71,"value":103},{"type":66,"tag":105,"props":1708,"children":1709},{"id":335},[1710],{"type":71,"value":338},{"type":66,"tag":112,"props":1712,"children":1713},{},[1714],{"type":66,"tag":116,"props":1715,"children":1716},{},[1717,1721,1723,1730,1731,1738],{"type":66,"tag":120,"props":1718,"children":1719},{},[1720],{"type":71,"value":213},{"type":71,"value":1722}," prevent useCookie usage outside of effect scope (",{"type":66,"tag":128,"props":1724,"children":1727},{"href":1725,"rel":1726},"https://github.com/nuxt-community/supabase-module/issues/309",[132],[1728],{"type":71,"value":1729},"#309",{"type":71,"value":360},{"type":66,"tag":128,"props":1732,"children":1735},{"href":1733,"rel":1734},"https://github.com/nuxt-community/supabase-module/commit/bb55bed870efb68c39f255ddbcbe0b5446965399",[132],[1736],{"type":71,"value":1737},"bb55bed",{"type":71,"value":137},{"type":66,"tag":67,"props":1740,"children":1741},{},[1742,1744],{"type":71,"value":1743},"💚 Thanks for the help from 💚\r\n",{"type":66,"tag":128,"props":1745,"children":1748},{"href":1746,"rel":1747},"https://github.com/AlbertBrand",[132],[1749],{"type":66,"tag":120,"props":1750,"children":1751},{},[1752],{"type":71,"value":1753},"@AlbertBrand",{"title":59,"searchDepth":78,"depth":78,"links":1755},[1756],{"id":100,"depth":78,"text":103,"children":1757},[1758],{"id":335,"depth":174,"text":338},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.4",{"url":1763,"total_count":176,"+1":176,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/129966845/reactions",{"name":184,"url":185,"avatar":186},"github:v1.1.4.md",{"name":1767,"tag_name":1767,"date":1768,"body":1769,"v":176,"url":1865,"tarball":1866,"zipball":1867,"prerelease":60,"reactions":1868,"author":1870,"title":59,"description":59,"_type":80,"_id":1871},"v1.1.3","2023-10-06T07:51:37Z",{"type":63,"children":1770,"toc":1862},[1771,1775,1837],{"type":66,"tag":98,"props":1772,"children":1773},{"id":100},[1774],{"type":71,"value":103},{"type":66,"tag":112,"props":1776,"children":1777},{},[1778,1811],{"type":66,"tag":116,"props":1779,"children":1780},{},[1781,1785,1787,1794,1795,1802,1803,1810],{"type":66,"tag":120,"props":1782,"children":1783},{},[1784],{"type":71,"value":213},{"type":71,"value":1786}," clientOptions merge",{"type":66,"tag":128,"props":1788,"children":1791},{"href":1789,"rel":1790},"https://github.com/nuxt-community/supabase-module/issues/275",[132],[1792],{"type":71,"value":1793},"#275",{"type":71,"value":392},{"type":66,"tag":128,"props":1796,"children":1799},{"href":1797,"rel":1798},"https://github.com/nuxt-community/supabase-module/issues/277",[132],[1800],{"type":71,"value":1801},"#277",{"type":71,"value":360},{"type":66,"tag":128,"props":1804,"children":1807},{"href":1805,"rel":1806},"https://github.com/nuxt-community/supabase-module/commit/c0097a355b859cb6a2d97884a7648284128acca2",[132],[1808],{"type":71,"value":1809},"c0097a3",{"type":71,"value":137},{"type":66,"tag":116,"props":1812,"children":1813},{},[1814,1819,1821,1828,1829,1836],{"type":66,"tag":120,"props":1815,"children":1816},{},[1817],{"type":71,"value":1818},"module:",{"type":71,"value":1820}," do not warn when using runtimeConfig to set url and key (",{"type":66,"tag":128,"props":1822,"children":1825},{"href":1823,"rel":1824},"https://github.com/nuxt-community/supabase-module/issues/281",[132],[1826],{"type":71,"value":1827},"#281",{"type":71,"value":360},{"type":66,"tag":128,"props":1830,"children":1833},{"href":1831,"rel":1832},"https://github.com/nuxt-community/supabase-module/commit/8c151737b55738c68fc24b5e4db2517c4e866693",[132],[1834],{"type":71,"value":1835},"8c15173",{"type":71,"value":137},{"type":66,"tag":67,"props":1838,"children":1839},{},[1840,1841,1851,1852],{"type":71,"value":1743},{"type":66,"tag":128,"props":1842,"children":1845},{"href":1843,"rel":1844},"https://github.com/stafyniaksacha",[132],[1846],{"type":66,"tag":120,"props":1847,"children":1848},{},[1849],{"type":71,"value":1850},"@stafyniaksacha",{"type":71,"value":607},{"type":66,"tag":128,"props":1853,"children":1856},{"href":1854,"rel":1855},"https://github.com/jonesisg1",[132],[1857],{"type":66,"tag":120,"props":1858,"children":1859},{},[1860],{"type":71,"value":1861},"@jonesisg1",{"title":59,"searchDepth":78,"depth":78,"links":1863},[1864],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.3",{"url":1869,"total_count":1097,"+1":78,"-1":182,"laugh":182,"hooray":78,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/123992311/reactions",{"name":184,"url":185,"avatar":186},"github:v1.1.3.md",{"name":1873,"tag_name":1873,"date":1874,"body":1875,"v":176,"url":2105,"tarball":2106,"zipball":2107,"prerelease":60,"reactions":2108,"author":2110,"title":59,"description":59,"_type":80,"_id":2111},"v1.1.2","2023-09-06T17:44:35Z",{"type":63,"children":1876,"toc":2100},[1877,1881,1903,1946,1950,2028,2044],{"type":66,"tag":98,"props":1878,"children":1879},{"id":100},[1880],{"type":71,"value":103},{"type":66,"tag":67,"props":1882,"children":1883},{},[1884,1886,1893,1895,1901],{"type":71,"value":1885},"⚠️ BREAKING CHANGE ⚠️\r\nBreaking change is related to ",{"type":66,"tag":128,"props":1887,"children":1890},{"href":1888,"rel":1889},"https://github.com/nuxt-modules/supabase/issues/244",[132],[1891],{"type":71,"value":1892},"#244",{"type":71,"value":1894}," and was first adressed in the ",{"type":66,"tag":235,"props":1896,"children":1898},{"className":1897},[],[1899],{"type":71,"value":1900},"v1.1.0",{"type":71,"value":1902}," but patch has been necessary to fix the version.",{"type":66,"tag":67,"props":1904,"children":1905},{},[1906,1908,1914,1916,1922,1924,1930,1932,1938,1940],{"type":71,"value":1907},"On the confirm page, configured in ",{"type":66,"tag":235,"props":1909,"children":1911},{"className":1910},[],[1912],{"type":71,"value":1913},"redirect.callback",{"type":71,"value":1915}," option (default to ",{"type":66,"tag":235,"props":1917,"children":1919},{"className":1918},[],[1920],{"type":71,"value":1921},"/confirm",{"type":71,"value":1923},"), ensure to set the ",{"type":66,"tag":235,"props":1925,"children":1927},{"className":1926},[],[1928],{"type":71,"value":1929},"immediate",{"type":71,"value":1931}," option in the watch.\r\nCheck out the doc: ",{"type":66,"tag":128,"props":1933,"children":1936},{"href":1934,"rel":1935},"http://supabase.nuxtjs.org/authentication#confirm-page-confirm",[132],[1937],{"type":71,"value":1934},{"type":71,"value":1939},"\r\nCheck out the demo code: ",{"type":66,"tag":128,"props":1941,"children":1944},{"href":1942,"rel":1943},"https://github.com/nuxt-modules/supabase/blob/main/demo/pages/confirm.vue",[132],[1945],{"type":71,"value":1942},{"type":66,"tag":105,"props":1947,"children":1948},{"id":335},[1949],{"type":71,"value":338},{"type":66,"tag":112,"props":1951,"children":1952},{},[1953,1978,2002],{"type":66,"tag":116,"props":1954,"children":1955},{},[1956,1960,1962,1969,1970,1977],{"type":66,"tag":120,"props":1957,"children":1958},{},[1959],{"type":71,"value":1818},{"type":71,"value":1961}," priority of redirect options made by defu (",{"type":66,"tag":128,"props":1963,"children":1966},{"href":1964,"rel":1965},"https://github.com/nuxt-community/supabase-module/issues/256",[132],[1967],{"type":71,"value":1968},"#256",{"type":71,"value":360},{"type":66,"tag":128,"props":1971,"children":1974},{"href":1972,"rel":1973},"https://github.com/nuxt-community/supabase-module/commit/c4e30bf50eb7816fee3a2e46b404df5ce9f7cf4d",[132],[1975],{"type":71,"value":1976},"c4e30bf",{"type":71,"value":137},{"type":66,"tag":116,"props":1979,"children":1980},{},[1981,1986,1988,1993,1994,2001],{"type":66,"tag":120,"props":1982,"children":1983},{},[1984],{"type":71,"value":1985},"plugin:",{"type":71,"value":1987}," retrieve user for client only page (",{"type":66,"tag":128,"props":1989,"children":1991},{"href":1888,"rel":1990},[132],[1992],{"type":71,"value":1892},{"type":71,"value":360},{"type":66,"tag":128,"props":1995,"children":1998},{"href":1996,"rel":1997},"https://github.com/nuxt-community/supabase-module/commit/4a35428e26542bf22b3288db6e9a9309f1310705",[132],[1999],{"type":71,"value":2000},"4a35428",{"type":71,"value":137},{"type":66,"tag":116,"props":2003,"children":2004},{},[2005,2010,2012,2019,2020,2027],{"type":66,"tag":120,"props":2006,"children":2007},{},[2008],{"type":71,"value":2009},"useSupabaseUser:",{"type":71,"value":2011}," add explicit user type (",{"type":66,"tag":128,"props":2013,"children":2016},{"href":2014,"rel":2015},"https://github.com/nuxt-community/supabase-module/issues/254",[132],[2017],{"type":71,"value":2018},"#254",{"type":71,"value":360},{"type":66,"tag":128,"props":2021,"children":2024},{"href":2022,"rel":2023},"https://github.com/nuxt-community/supabase-module/commit/60d8551ee83a9c64a962b9f76b881b17d7384736",[132],[2025],{"type":71,"value":2026},"60d8551",{"type":71,"value":137},{"type":66,"tag":67,"props":2029,"children":2030},{},[2031,2036,2038],{"type":66,"tag":120,"props":2032,"children":2033},{},[2034],{"type":71,"value":2035},"Full Changelog",{"type":71,"value":2037},": ",{"type":66,"tag":128,"props":2039,"children":2042},{"href":2040,"rel":2041},"https://github.com/nuxt-community/supabase-module/compare/v1.0.2...v1.1.0",[132],[2043],{"type":71,"value":2040},{"type":66,"tag":67,"props":2045,"children":2046},{},[2047,2048,2058,2059,2069,2070,2078,2079,2089,2090],{"type":71,"value":1743},{"type":66,"tag":128,"props":2049,"children":2052},{"href":2050,"rel":2051},"https://github.com/52cs",[132],[2053],{"type":66,"tag":120,"props":2054,"children":2055},{},[2056],{"type":71,"value":2057},"@52cs",{"type":71,"value":607},{"type":66,"tag":128,"props":2060,"children":2063},{"href":2061,"rel":2062},"https://github.com/Aietes",[132],[2064],{"type":66,"tag":120,"props":2065,"children":2066},{},[2067],{"type":71,"value":2068},"@Aietes",{"type":71,"value":607},{"type":66,"tag":128,"props":2071,"children":2073},{"href":1746,"rel":2072},[132],[2074],{"type":66,"tag":120,"props":2075,"children":2076},{},[2077],{"type":71,"value":1753},{"type":71,"value":607},{"type":66,"tag":128,"props":2080,"children":2083},{"href":2081,"rel":2082},"https://github.com/kiri10ten",[132],[2084],{"type":66,"tag":120,"props":2085,"children":2086},{},[2087],{"type":71,"value":2088},"@kiri10ten",{"type":71,"value":607},{"type":66,"tag":128,"props":2091,"children":2094},{"href":2092,"rel":2093},"https://github.com/xMorthi",[132],[2095],{"type":66,"tag":120,"props":2096,"children":2097},{},[2098],{"type":71,"value":2099},"@xMorthi",{"title":59,"searchDepth":78,"depth":78,"links":2101},[2102],{"id":100,"depth":78,"text":103,"children":2103},[2104],{"id":335,"depth":174,"text":338},"https://github.com/nuxt-modules/supabase/releases/tag/v1.1.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.1.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.1.2",{"url":2109,"total_count":1097,"+1":182,"-1":182,"laugh":182,"hooray":174,"confused":182,"heart":182,"rocket":182,"eyes":176},"https://api.github.com/repos/nuxt-modules/supabase/releases/120162649/reactions",{"name":184,"url":185,"avatar":186},"github:v1.1.2.md",{"name":2113,"tag_name":2113,"date":2114,"body":2115,"v":176,"url":2198,"tarball":2199,"zipball":2200,"prerelease":60,"reactions":2201,"author":2203,"title":59,"description":59,"_type":80,"_id":2204},"v1.0.2","2023-08-04T15:56:13Z",{"type":63,"children":2116,"toc":2195},[2117,2121,2158,2172],{"type":66,"tag":98,"props":2118,"children":2119},{"id":100},[2120],{"type":71,"value":103},{"type":66,"tag":112,"props":2122,"children":2123},{},[2124,2141],{"type":66,"tag":116,"props":2125,"children":2126},{},[2127,2129,2140],{"type":71,"value":2128},"docs(auth): update (",{"type":66,"tag":128,"props":2130,"children":2133},{"href":2131,"rel":2132},"https://github.com/nuxt-modules/supabase/commit/df00ffe8ecc253fc23572b65465ad7928e185b13",[132],[2134],{"type":66,"tag":235,"props":2135,"children":2137},{"className":2136},[],[2138],{"type":71,"value":2139},"df00ffe",{"type":71,"value":137},{"type":66,"tag":116,"props":2142,"children":2143},{},[2144,2146,2157],{"type":71,"value":2145},"fix(client): correct provider_token assignment to cookie (",{"type":66,"tag":128,"props":2147,"children":2150},{"href":2148,"rel":2149},"https://github.com/nuxt-modules/supabase/commit/a76df3f67d6b08daf359f38130ce08aeab57317b",[132],[2151],{"type":66,"tag":235,"props":2152,"children":2154},{"className":2153},[],[2155],{"type":71,"value":2156},"a76df3f",{"type":71,"value":137},{"type":66,"tag":67,"props":2159,"children":2160},{},[2161,2165,2166],{"type":66,"tag":120,"props":2162,"children":2163},{},[2164],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":2167,"children":2170},{"href":2168,"rel":2169},"https://github.com/nuxt-community/supabase-module/compare/v1.0.1...v1.0.2",[132],[2171],{"type":71,"value":2168},{"type":66,"tag":67,"props":2173,"children":2174},{},[2175,2176,2186,2187],{"type":71,"value":1743},{"type":66,"tag":128,"props":2177,"children":2180},{"href":2178,"rel":2179},"https://github.com/blqke",[132],[2181],{"type":66,"tag":120,"props":2182,"children":2183},{},[2184],{"type":71,"value":2185},"@blqke",{"type":71,"value":607},{"type":66,"tag":128,"props":2188,"children":2190},{"href":2061,"rel":2189},[132],[2191],{"type":66,"tag":120,"props":2192,"children":2193},{},[2194],{"type":71,"value":2068},{"title":59,"searchDepth":78,"depth":78,"links":2196},[2197],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.2","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.2","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.2",{"url":2202,"total_count":174,"+1":182,"-1":182,"laugh":182,"hooray":174,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/115135546/reactions",{"name":184,"url":185,"avatar":186},"github:v1.0.2.md",{"name":2206,"tag_name":2206,"date":2207,"body":2208,"v":176,"url":2497,"tarball":2498,"zipball":2499,"prerelease":60,"reactions":2500,"author":2506,"title":59,"description":2507,"_type":80,"_id":2508},"v1.0.1","2023-08-02T15:46:15Z",{"type":63,"children":2209,"toc":2494},[2210,2223,2228,2296,2301,2322,2326,2331,2460,2476,2479],{"type":66,"tag":67,"props":2211,"children":2212},{},[2213,2215,2221],{"type":71,"value":2214},"I am happy to announce the release of version ",{"type":66,"tag":235,"props":2216,"children":2218},{"className":2217},[],[2219],{"type":71,"value":2220},"1.0.0",{"type":71,"value":2222}," of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release.",{"type":66,"tag":98,"props":2224,"children":2225},{"id":100},[2226],{"type":71,"value":2227},"What's changed",{"type":66,"tag":112,"props":2229,"children":2230},{},[2231,2253,2258],{"type":66,"tag":116,"props":2232,"children":2233},{},[2234,2236,2243,2245,2252],{"type":71,"value":2235},"Supabase introduced a new authentication flow (PKCE) a few months ago, which is now the default behavior of the module. However, you can still revert to the old (and less secure) authentication method through the module configuration. To help you seamlessly integrate this new flow, a ",{"type":66,"tag":128,"props":2237,"children":2240},{"href":2238,"rel":2239},"https://supabase.nuxtjs.org/authentication",[132],[2241],{"type":71,"value":2242},"dedicated section",{"type":71,"value":2244}," has been added to the documentation. (",{"type":66,"tag":128,"props":2246,"children":2249},{"href":2247,"rel":2248},"https://github.com/nuxt-modules/supabase/issues/219",[132],[2250],{"type":71,"value":2251},"#219",{"type":71,"value":137},{"type":66,"tag":116,"props":2254,"children":2255},{},[2256],{"type":71,"value":2257},"Building upon the previous point, we have implemented substantial changes to the session management, involving alterations to how Supabase clients are instantiated and how sessions are synchronized between the server and client-side. Consequently, these changes result in some breaking changes, which are listed below.",{"type":66,"tag":116,"props":2259,"children":2260},{},[2261,2263,2270,2272,2279,2281,2288,2290],{"type":71,"value":2262},"A brand new documentation has been built entirely using ",{"type":66,"tag":128,"props":2264,"children":2267},{"href":2265,"rel":2266},"https://nuxt.studio",[132],[2268],{"type":71,"value":2269},"Nuxt Studio",{"type":71,"value":2271},". Feel free to create PRs to suggest fixes or add any necessary changes to further enhance the documentation. (",{"type":66,"tag":128,"props":2273,"children":2276},{"href":2274,"rel":2275},"https://github.com/nuxt-modules/supabase/issues/210",[132],[2277],{"type":71,"value":2278},"#210",{"type":71,"value":2280}," / ",{"type":66,"tag":128,"props":2282,"children":2285},{"href":2283,"rel":2284},"https://github.com/nuxt-modules/supabase/issues/221",[132],[2286],{"type":71,"value":2287},"#221",{"type":71,"value":2289},") => ",{"type":66,"tag":128,"props":2291,"children":2294},{"href":2292,"rel":2293},"https://supabase.nuxtjs.org",[132],[2295],{"type":71,"value":2292},{"type":66,"tag":67,"props":2297,"children":2298},{},[2299],{"type":71,"value":2300},"Here's documentation that can help you understand the PKCE authentication flow:",{"type":66,"tag":112,"props":2302,"children":2303},{},[2304,2313],{"type":66,"tag":116,"props":2305,"children":2306},{},[2307],{"type":66,"tag":128,"props":2308,"children":2311},{"href":2309,"rel":2310},"https://supabase.com/blog/supabase-auth-sso-pkce#server-side-and-mobile-auth",[132],[2312],{"type":71,"value":2309},{"type":66,"tag":116,"props":2314,"children":2315},{},[2316],{"type":66,"tag":128,"props":2317,"children":2320},{"href":2318,"rel":2319},"https://supabase.com/docs/guides/resources/glossary#pkce",[132],[2321],{"type":71,"value":2318},{"type":66,"tag":2323,"props":2324,"children":2325},"br",{},[],{"type":66,"tag":67,"props":2327,"children":2328},{},[2329],{"type":71,"value":2330},"⚠️ BREAKING CHANGES ⚠️",{"type":66,"tag":112,"props":2332,"children":2333},{},[2334,2352,2378,2397,2425],{"type":66,"tag":116,"props":2335,"children":2336},{},[2337,2343,2345,2350],{"type":66,"tag":235,"props":2338,"children":2340},{"className":2339},[],[2341],{"type":71,"value":2342},"useSupabaseAuthClient",{"type":71,"value":2344}," has been removed in favor of ",{"type":66,"tag":235,"props":2346,"children":2348},{"className":2347},[],[2349],{"type":71,"value":21},{"type":71,"value":2351}," in all cases",{"type":66,"tag":116,"props":2353,"children":2354},{},[2355,2360,2362,2368,2370,2376],{"type":66,"tag":235,"props":2356,"children":2358},{"className":2357},[],[2359],{"type":71,"value":34},{"type":71,"value":2361}," is now returning a promise (should be called with ",{"type":66,"tag":235,"props":2363,"children":2365},{"className":2364},[],[2366],{"type":71,"value":2367},"await",{"type":71,"value":2369}," in an ",{"type":66,"tag":235,"props":2371,"children":2373},{"className":2372},[],[2374],{"type":71,"value":2375},"async",{"type":71,"value":2377}," method)",{"type":66,"tag":116,"props":2379,"children":2380},{},[2381,2387,2389,2395],{"type":66,"tag":235,"props":2382,"children":2384},{"className":2383},[],[2385],{"type":71,"value":2386},"redirect",{"type":71,"value":2388}," option is enable by default, follow this ",{"type":66,"tag":128,"props":2390,"children":2392},{"href":2238,"rel":2391},[132],[2393],{"type":71,"value":2394},"guide",{"type":71,"value":2396}," to update your app",{"type":66,"tag":116,"props":2398,"children":2399},{},[2400,2406,2408,2414,2416,2423],{"type":66,"tag":235,"props":2401,"children":2403},{"className":2402},[],[2404],{"type":71,"value":2405},"client",{"type":71,"value":2407}," option becomes ",{"type":66,"tag":235,"props":2409,"children":2411},{"className":2410},[],[2412],{"type":71,"value":2413},"clientOptions",{"type":71,"value":2415}," with new ",{"type":66,"tag":128,"props":2417,"children":2420},{"href":2418,"rel":2419},"https://supabase.nuxtjs.org/get-started#clientoptions",[132],[2421],{"type":71,"value":2422},"default value",{"type":71,"value":2424}," (including the PKCE flow)",{"type":66,"tag":116,"props":2426,"children":2427},{},[2428,2434,2436,2442,2443,2449,2451,2458],{"type":66,"tag":235,"props":2429,"children":2431},{"className":2430},[],[2432],{"type":71,"value":2433},"cookies",{"type":71,"value":2435}," options is split in ",{"type":66,"tag":235,"props":2437,"children":2439},{"className":2438},[],[2440],{"type":71,"value":2441},"cookieName",{"type":71,"value":385},{"type":66,"tag":235,"props":2444,"children":2446},{"className":2445},[],[2447],{"type":71,"value":2448},"cookieOptions",{"type":71,"value":2450},", ",{"type":66,"tag":128,"props":2452,"children":2455},{"href":2453,"rel":2454},"https://supabase.nuxtjs.org/get-started#cookieoptions",[132],[2456],{"type":71,"value":2457},"default values",{"type":71,"value":2459}," have not changed",{"type":66,"tag":67,"props":2461,"children":2462},{},[2463,2465],{"type":71,"value":2464},"Here si the commit done for updating the demo with the last version: ",{"type":66,"tag":128,"props":2466,"children":2469},{"href":2467,"rel":2468},"https://github.com/nuxt-modules/supabase/commit/10e05860862b68c49817f6420d50d082452f7a7f",[132],[2470],{"type":66,"tag":235,"props":2471,"children":2473},{"className":2472},[],[2474],{"type":71,"value":2475},"10e0586",{"type":66,"tag":2323,"props":2477,"children":2478},{},[],{"type":66,"tag":67,"props":2480,"children":2481},{},[2482,2484,2492],{"type":71,"value":2483},"A huge thanks to ",{"type":66,"tag":128,"props":2485,"children":2487},{"href":2061,"rel":2486},[132],[2488],{"type":66,"tag":120,"props":2489,"children":2490},{},[2491],{"type":71,"value":2068},{"type":71,"value":2493}," for initialising all those changes and help me built it 💚",{"title":59,"searchDepth":78,"depth":78,"links":2495},[2496],{"id":100,"depth":78,"text":2227},"https://github.com/nuxt-modules/supabase/releases/tag/v1.0.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v1.0.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v1.0.1",{"url":2501,"total_count":2502,"+1":2503,"-1":182,"laugh":182,"hooray":2504,"confused":182,"heart":1097,"rocket":2505,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/114843996/reactions",40,9,19,8,{"name":184,"url":185,"avatar":186},"I am happy to announce the release of version 1.0.0 of this module. While the module has been production-ready for quite some time, I never had the opportunity to create the first major version until now. Given that this version incorporates significant changes, I believe it is the perfect moment to establish this initial major release.","github:v1.0.1.md",{"name":2510,"tag_name":2510,"date":2511,"body":2512,"v":182,"url":2604,"tarball":2605,"zipball":2606,"prerelease":60,"reactions":2607,"author":2609,"title":59,"description":59,"_type":80,"_id":2610},"v0.3.8","2023-07-03T08:29:53Z",{"type":63,"children":2513,"toc":2601},[2514,2518,2575,2589],{"type":66,"tag":98,"props":2515,"children":2516},{"id":100},[2517],{"type":71,"value":103},{"type":66,"tag":112,"props":2519,"children":2520},{},[2521,2558],{"type":66,"tag":116,"props":2522,"children":2523},{},[2524,2526,2537,2539,2546,2548],{"type":71,"value":2525},"feat(session): save provider access/refresh tokens in cookies (",{"type":66,"tag":128,"props":2527,"children":2530},{"href":2528,"rel":2529},"https://github.com/nuxt-modules/supabase/commit/ea8c21f3d625984832cb27a3ae7605b16caaf94b",[132],[2531],{"type":66,"tag":235,"props":2532,"children":2534},{"className":2533},[],[2535],{"type":71,"value":2536},"ea8c21f",{"type":71,"value":2538},") in ",{"type":66,"tag":128,"props":2540,"children":2543},{"href":2541,"rel":2542},"https://github.com/nuxt-modules/supabase/issues/197",[132],[2544],{"type":71,"value":2545},"#197",{"type":71,"value":2547}," by ",{"type":66,"tag":128,"props":2549,"children":2552},{"href":2550,"rel":2551},"https://github.com/mitjans",[132],[2553],{"type":66,"tag":120,"props":2554,"children":2555},{},[2556],{"type":71,"value":2557},"@mitjans",{"type":66,"tag":116,"props":2559,"children":2560},{},[2561,2563,2574],{"type":71,"value":2562},"chore(deps): upgrade to latest (",{"type":66,"tag":128,"props":2564,"children":2567},{"href":2565,"rel":2566},"https://github.com/nuxt-modules/supabase/commit/a52abc871b6ab756c2b477f7c6b3c0f51279693c",[132],[2568],{"type":66,"tag":235,"props":2569,"children":2571},{"className":2570},[],[2572],{"type":71,"value":2573},"a52abc8",{"type":71,"value":137},{"type":66,"tag":67,"props":2576,"children":2577},{},[2578,2582,2583],{"type":66,"tag":120,"props":2579,"children":2580},{},[2581],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":2584,"children":2587},{"href":2585,"rel":2586},"https://github.com/nuxt-community/supabase-module/compare/v0.3.7...v0.3.8",[132],[2588],{"type":71,"value":2585},{"type":66,"tag":67,"props":2590,"children":2591},{},[2592,2593],{"type":71,"value":1743},{"type":66,"tag":128,"props":2594,"children":2596},{"href":2550,"rel":2595},[132],[2597],{"type":66,"tag":120,"props":2598,"children":2599},{},[2600],{"type":71,"value":2557},{"title":59,"searchDepth":78,"depth":78,"links":2602},[2603],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.8","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.8","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.8",{"url":2608,"total_count":1197,"+1":182,"-1":182,"laugh":182,"hooray":1197,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/110829614/reactions",{"name":184,"url":185,"avatar":186},"github:v0.3.8.md",{"name":2612,"tag_name":2612,"date":2613,"body":2614,"v":182,"url":2683,"tarball":2684,"zipball":2685,"prerelease":60,"author":2686,"title":59,"description":59,"_type":80,"_id":2687},"v0.3.7","2023-06-12T07:51:13Z",{"type":63,"children":2615,"toc":2680},[2616,2620,2666],{"type":66,"tag":98,"props":2617,"children":2618},{"id":100},[2619],{"type":71,"value":103},{"type":66,"tag":112,"props":2621,"children":2622},{},[2623,2649],{"type":66,"tag":116,"props":2624,"children":2625},{},[2626,2628,2633,2634,2641,2642],{"type":71,"value":2627},"fix(client): fix persist session warning for ",{"type":66,"tag":235,"props":2629,"children":2631},{"className":2630},[],[2632],{"type":71,"value":37},{"type":71,"value":392},{"type":66,"tag":128,"props":2635,"children":2638},{"href":2636,"rel":2637},"https://github.com/nuxt-modules/supabase/issues/194",[132],[2639],{"type":71,"value":2640},"#194",{"type":71,"value":663},{"type":66,"tag":128,"props":2643,"children":2646},{"href":2644,"rel":2645},"https://github.com/nuxt-modules/supabase/issues/193",[132],[2647],{"type":71,"value":2648},"#193",{"type":66,"tag":116,"props":2650,"children":2651},{},[2652,2654,2665],{"type":71,"value":2653},"docs(get-started): remove defineNuxtConfig (",{"type":66,"tag":128,"props":2655,"children":2658},{"href":2656,"rel":2657},"https://github.com/nuxt-modules/supabase/commit/0151901",[132],[2659],{"type":66,"tag":235,"props":2660,"children":2662},{"className":2661},[],[2663],{"type":71,"value":2664},"0151901",{"type":71,"value":137},{"type":66,"tag":67,"props":2667,"children":2668},{},[2669,2670],{"type":71,"value":1743},{"type":66,"tag":128,"props":2671,"children":2674},{"href":2672,"rel":2673},"https://github.com/jawngee",[132],[2675],{"type":66,"tag":120,"props":2676,"children":2677},{},[2678],{"type":71,"value":2679},"@jawngee",{"title":59,"searchDepth":78,"depth":78,"links":2681},[2682],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.7","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.7","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.7",{"name":184,"url":185,"avatar":186},"github:v0.3.7.md",{"name":2689,"tag_name":2689,"date":2690,"body":2691,"v":182,"url":2747,"tarball":2748,"zipball":2749,"prerelease":60,"reactions":2750,"author":2752,"title":59,"description":59,"_type":80,"_id":2753},"v0.3.6","2023-06-02T14:33:38Z",{"type":63,"children":2692,"toc":2744},[2693,2697],{"type":66,"tag":98,"props":2694,"children":2695},{"id":100},[2696],{"type":71,"value":103},{"type":66,"tag":112,"props":2698,"children":2699},{},[2700,2705,2731],{"type":66,"tag":116,"props":2701,"children":2702},{},[2703],{"type":71,"value":2704},"chore(deps): upgrade to nuxt and supabase latest version",{"type":66,"tag":116,"props":2706,"children":2707},{},[2708,2710,2721,2723,2730],{"type":71,"value":2709},"fix(client): remove persist session warning on server side in ",{"type":66,"tag":128,"props":2711,"children":2714},{"href":2712,"rel":2713},"https://github.com/nuxt-modules/supabase/commit/227113f68fb8723f9687adfa12150f825940e0c9",[132],[2715],{"type":66,"tag":235,"props":2716,"children":2718},{"className":2717},[],[2719],{"type":71,"value":2720},"227113f",{"type":71,"value":2722}," (Resolves ",{"type":66,"tag":128,"props":2724,"children":2727},{"href":2725,"rel":2726},"https://github.com/nuxt-modules/supabase/issues/188",[132],[2728],{"type":71,"value":2729},"#188",{"type":71,"value":137},{"type":66,"tag":116,"props":2732,"children":2733},{},[2734,2736,2743],{"type":71,"value":2735},"fix(chore): resolve imports (Resolves ",{"type":66,"tag":128,"props":2737,"children":2740},{"href":2738,"rel":2739},"https://github.com/nuxt-modules/supabase/issues/190",[132],[2741],{"type":71,"value":2742},"#190",{"type":71,"value":137},{"title":59,"searchDepth":78,"depth":78,"links":2745},[2746],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.6","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.6","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.6",{"url":2751,"total_count":1197,"+1":176,"-1":182,"laugh":182,"hooray":1097,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/105847469/reactions",{"name":184,"url":185,"avatar":186},"github:v0.3.6.md",{"name":2755,"tag_name":2755,"date":2756,"body":2757,"v":182,"url":3046,"tarball":3047,"zipball":3048,"prerelease":60,"reactions":3049,"author":3051,"title":59,"description":59,"_type":80,"_id":3052},"v0.3.5","2023-04-03T09:50:57Z",{"type":63,"children":2758,"toc":3043},[2759,2763,2992,3006],{"type":66,"tag":98,"props":2760,"children":2761},{"id":100},[2762],{"type":71,"value":103},{"type":66,"tag":112,"props":2764,"children":2765},{},[2766,2783,2800,2817,2834,2851,2868,2885,2902,2919,2951,2968],{"type":66,"tag":116,"props":2767,"children":2768},{},[2769,2771,2782],{"type":71,"value":2770},"chore(demo): upgrade on last version (",{"type":66,"tag":128,"props":2772,"children":2775},{"href":2773,"rel":2774},"https://github.com/nuxt-modules/supabase/commit/9bb9e2856823a0bb86c07ae7775462e02a1e430d",[132],[2776],{"type":66,"tag":235,"props":2777,"children":2779},{"className":2778},[],[2780],{"type":71,"value":2781},"9bb9e28",{"type":71,"value":137},{"type":66,"tag":116,"props":2784,"children":2785},{},[2786,2788,2799],{"type":71,"value":2787},"chore(demo): generate database types from supabase cli (",{"type":66,"tag":128,"props":2789,"children":2792},{"href":2790,"rel":2791},"https://github.com/nuxt-modules/supabase/commit/bca199292dfeb23d5e0581ab40a6994fed3d1157",[132],[2793],{"type":66,"tag":235,"props":2794,"children":2796},{"className":2795},[],[2797],{"type":71,"value":2798},"bca1992",{"type":71,"value":137},{"type":66,"tag":116,"props":2801,"children":2802},{},[2803,2805,2816],{"type":71,"value":2804},"docs(links): update nuxt & supabase links and fix typos (",{"type":66,"tag":128,"props":2806,"children":2809},{"href":2807,"rel":2808},"https://github.com/nuxt-modules/supabase/commit/5699dc6c22f9182e9593936fc1260fc785eea450",[132],[2810],{"type":66,"tag":235,"props":2811,"children":2813},{"className":2812},[],[2814],{"type":71,"value":2815},"5699dc6",{"type":71,"value":137},{"type":66,"tag":116,"props":2818,"children":2819},{},[2820,2822,2833],{"type":71,"value":2821},"chore(app): move to pnpm (",{"type":66,"tag":128,"props":2823,"children":2826},{"href":2824,"rel":2825},"https://github.com/nuxt-modules/supabase/commit/94f7e130747801584d2b0999bd2f5f904e575082",[132],[2827],{"type":66,"tag":235,"props":2828,"children":2830},{"className":2829},[],[2831],{"type":71,"value":2832},"94f7e13",{"type":71,"value":137},{"type":66,"tag":116,"props":2835,"children":2836},{},[2837,2839,2850],{"type":71,"value":2838},"chore(module): conditionally add redirect plugin (",{"type":66,"tag":128,"props":2840,"children":2843},{"href":2841,"rel":2842},"https://github.com/nuxt-modules/supabase/commit/0cad0a557934f669f2ab424ef072f6b07c098646",[132],[2844],{"type":66,"tag":235,"props":2845,"children":2847},{"className":2846},[],[2848],{"type":71,"value":2849},"0cad0a5",{"type":71,"value":137},{"type":66,"tag":116,"props":2852,"children":2853},{},[2854,2856,2867],{"type":71,"value":2855},"docs(get-started): fix typos (",{"type":66,"tag":128,"props":2857,"children":2860},{"href":2858,"rel":2859},"https://github.com/nuxt-modules/supabase/commit/ba437a8534f3dcda53f805cc34b5d6a943297354",[132],[2861],{"type":66,"tag":235,"props":2862,"children":2864},{"className":2863},[],[2865],{"type":71,"value":2866},"ba437a8",{"type":71,"value":137},{"type":66,"tag":116,"props":2869,"children":2870},{},[2871,2873,2884],{"type":71,"value":2872},"docs(composables): correct grammar errors (",{"type":66,"tag":128,"props":2874,"children":2877},{"href":2875,"rel":2876},"https://github.com/nuxt-modules/supabase/commit/034d7dfaf9f52a08da0ade4bf6d5ed31ec740734",[132],[2878],{"type":66,"tag":235,"props":2879,"children":2881},{"className":2880},[],[2882],{"type":71,"value":2883},"034d7df",{"type":71,"value":137},{"type":66,"tag":116,"props":2886,"children":2887},{},[2888,2890,2901],{"type":71,"value":2889},"feat(demo): add call from server route(",{"type":66,"tag":128,"props":2891,"children":2894},{"href":2892,"rel":2893},"https://github.com/nuxt-modules/supabase/commit/989a91eacdc471de90a2307c39cd03f23cca57ee",[132],[2895],{"type":66,"tag":235,"props":2896,"children":2898},{"className":2897},[],[2899],{"type":71,"value":2900},"989a91e",{"type":71,"value":137},{"type":66,"tag":116,"props":2903,"children":2904},{},[2905,2907,2918],{"type":71,"value":2906},"perf(useSupabaseAuthClient): avoid declaring unused variables (",{"type":66,"tag":128,"props":2908,"children":2911},{"href":2909,"rel":2910},"https://github.com/nuxt-modules/supabase/commit/8c070b9e571b3fe7870c08033ea561624a6ae575",[132],[2912],{"type":66,"tag":235,"props":2913,"children":2915},{"className":2914},[],[2916],{"type":71,"value":2917},"8c070b9",{"type":71,"value":137},{"type":66,"tag":116,"props":2920,"children":2921},{},[2922,2924,2935,2936,2943,2944],{"type":71,"value":2923},"fix(dev): optimize supabase deps (",{"type":66,"tag":128,"props":2925,"children":2928},{"href":2926,"rel":2927},"https://github.com/nuxt-modules/supabase/commit/d1da3f6b2f463e7196c69c3a580833438926a6e1",[132],[2929],{"type":66,"tag":235,"props":2930,"children":2932},{"className":2931},[],[2933],{"type":71,"value":2934},"d1da3f6",{"type":71,"value":663},{"type":66,"tag":128,"props":2937,"children":2940},{"href":2938,"rel":2939},"https://github.com/nuxt-modules/supabase/issues/172",[132],[2941],{"type":71,"value":2942},"#172",{"type":71,"value":1249},{"type":66,"tag":128,"props":2945,"children":2948},{"href":2946,"rel":2947},"https://github.com/nuxt-modules/supabase/issues/151",[132],[2949],{"type":71,"value":2950},"#151",{"type":66,"tag":116,"props":2952,"children":2953},{},[2954,2956,2967],{"type":71,"value":2955},"chore(deps): transpile websocket lib prod only (",{"type":66,"tag":128,"props":2957,"children":2960},{"href":2958,"rel":2959},"https://github.com/nuxt-modules/supabase/commit/a1ee40c848c9da81aa41acc53dc3555b32bafd86",[132],[2961],{"type":66,"tag":235,"props":2962,"children":2964},{"className":2963},[],[2965],{"type":71,"value":2966},"a1ee40c",{"type":71,"value":137},{"type":66,"tag":116,"props":2969,"children":2970},{},[2971,2973,2984,2985,2990],{"type":71,"value":2972},"fix(deps): transpile gotrue only on client (",{"type":66,"tag":128,"props":2974,"children":2977},{"href":2975,"rel":2976},"https://github.com/nuxt-modules/supabase/commit/fcc6823e248395a513706cf67ab664f84daacb45",[132],[2978],{"type":66,"tag":235,"props":2979,"children":2981},{"className":2980},[],[2982],{"type":71,"value":2983},"fcc6823",{"type":71,"value":663},{"type":66,"tag":128,"props":2986,"children":2988},{"href":2938,"rel":2987},[132],[2989],{"type":71,"value":2942},{"type":71,"value":2991}," on server side",{"type":66,"tag":67,"props":2993,"children":2994},{},[2995,2999,3000],{"type":66,"tag":120,"props":2996,"children":2997},{},[2998],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3001,"children":3004},{"href":3002,"rel":3003},"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.5",[132],[3005],{"type":71,"value":3002},{"type":66,"tag":67,"props":3007,"children":3008},{},[3009,3011,3018,3020,3027,3028,3035,3036],{"type":71,"value":3010},"💚 Thanks for the help from 💚\r\n@",{"type":66,"tag":128,"props":3012,"children":3015},{"href":3013,"rel":3014},"https://github.com/nuxt-modules/supabase/commits?author=kuizuo",[132],[3016],{"type":71,"value":3017},"kuizuo",{"type":71,"value":3019},"\r\n@",{"type":66,"tag":128,"props":3021,"children":3024},{"href":3022,"rel":3023},"https://github.com/nuxt-modules/supabase/commits?author=tnntwister",[132],[3025],{"type":71,"value":3026},"tnntwister",{"type":71,"value":3019},{"type":66,"tag":128,"props":3029,"children":3032},{"href":3030,"rel":3031},"https://github.com/nuxt-modules/supabase/commits?author=yannaufray",[132],[3033],{"type":71,"value":3034},"yannaufray",{"type":71,"value":3019},{"type":66,"tag":128,"props":3037,"children":3040},{"href":3038,"rel":3039},"https://github.com/nuxt-modules/supabase/commits?author=DamianGlowala",[132],[3041],{"type":71,"value":3042},"DamianGlowala",{"title":59,"searchDepth":78,"depth":78,"links":3044},[3045],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.5",{"url":3050,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":182,"rocket":176,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/97822579/reactions",{"name":184,"url":185,"avatar":186},"github:v0.3.5.md",{"name":3054,"tag_name":3054,"date":3055,"body":3056,"v":182,"url":3319,"tarball":3320,"zipball":3321,"prerelease":3322,"reactions":3323,"author":3325,"title":59,"description":59,"_type":80,"_id":3326},"v0.3.3","2023-03-31T21:51:14Z",{"type":63,"children":3057,"toc":3316},[3058,3062,3302],{"type":66,"tag":98,"props":3059,"children":3060},{"id":100},[3061],{"type":71,"value":103},{"type":66,"tag":112,"props":3063,"children":3064},{},[3065,3088,3104,3121,3138,3161,3178,3203,3226,3249,3264,3287],{"type":66,"tag":116,"props":3066,"children":3067},{},[3068,3069,3076,3077,3087],{"type":71,"value":2906},{"type":66,"tag":128,"props":3070,"children":3073},{"href":3071,"rel":3072},"https://github.com/nuxt-modules/supabase/issues/166",[132],[3074],{"type":71,"value":3075},"#166",{"type":71,"value":360},{"type":66,"tag":128,"props":3078,"children":3081},{"href":3079,"rel":3080},"https://github.com/nuxt-modules/supabase/commit/8c070b9",[132],[3082],{"type":66,"tag":235,"props":3083,"children":3085},{"className":3084},[],[3086],{"type":71,"value":2917},{"type":71,"value":137},{"type":66,"tag":116,"props":3089,"children":3090},{},[3091,3093,3103],{"type":71,"value":3092},"feat(demo): add call from server route (",{"type":66,"tag":128,"props":3094,"children":3097},{"href":3095,"rel":3096},"https://github.com/nuxt-modules/supabase/commit/989a91e",[132],[3098],{"type":66,"tag":235,"props":3099,"children":3101},{"className":3100},[],[3102],{"type":71,"value":2900},{"type":71,"value":137},{"type":66,"tag":116,"props":3105,"children":3106},{},[3107,3109,3120],{"type":71,"value":3108},"chore(demo): upgrade deps (",{"type":66,"tag":128,"props":3110,"children":3113},{"href":3111,"rel":3112},"https://github.com/nuxt-modules/supabase/commit/9ebbc77",[132],[3114],{"type":66,"tag":235,"props":3115,"children":3117},{"className":3116},[],[3118],{"type":71,"value":3119},"9ebbc77",{"type":71,"value":137},{"type":66,"tag":116,"props":3122,"children":3123},{},[3124,3126,3137],{"type":71,"value":3125},"chore(deps): upgrade (",{"type":66,"tag":128,"props":3127,"children":3130},{"href":3128,"rel":3129},"https://github.com/nuxt-modules/supabase/commit/e274a5e",[132],[3131],{"type":66,"tag":235,"props":3132,"children":3134},{"className":3133},[],[3135],{"type":71,"value":3136},"e274a5e",{"type":71,"value":137},{"type":66,"tag":116,"props":3139,"children":3140},{},[3141,3142,3149,3150,3160],{"type":71,"value":2872},{"type":66,"tag":128,"props":3143,"children":3146},{"href":3144,"rel":3145},"https://github.com/nuxt-modules/supabase/issues/162",[132],[3147],{"type":71,"value":3148},"#162",{"type":71,"value":360},{"type":66,"tag":128,"props":3151,"children":3154},{"href":3152,"rel":3153},"https://github.com/nuxt-modules/supabase/commit/034d7df",[132],[3155],{"type":66,"tag":235,"props":3156,"children":3158},{"className":3157},[],[3159],{"type":71,"value":2883},{"type":71,"value":137},{"type":66,"tag":116,"props":3162,"children":3163},{},[3164,3166,3177],{"type":71,"value":3165},"docs(readme): add nuxt badge (",{"type":66,"tag":128,"props":3167,"children":3170},{"href":3168,"rel":3169},"https://github.com/nuxt-modules/supabase/commit/68271b8",[132],[3171],{"type":66,"tag":235,"props":3172,"children":3174},{"className":3173},[],[3175],{"type":71,"value":3176},"68271b8",{"type":71,"value":137},{"type":66,"tag":116,"props":3179,"children":3180},{},[3181,3183,3190,3191,3202],{"type":71,"value":3182},"docs(demo): fix typo (",{"type":66,"tag":128,"props":3184,"children":3187},{"href":3185,"rel":3186},"https://github.com/nuxt-modules/supabase/issues/125",[132],[3188],{"type":71,"value":3189},"#125",{"type":71,"value":360},{"type":66,"tag":128,"props":3192,"children":3195},{"href":3193,"rel":3194},"https://github.com/nuxt-modules/supabase/commit/bd33d12",[132],[3196],{"type":66,"tag":235,"props":3197,"children":3199},{"className":3198},[],[3200],{"type":71,"value":3201},"bd33d12",{"type":71,"value":137},{"type":66,"tag":116,"props":3204,"children":3205},{},[3206,3207,3214,3215,3225],{"type":71,"value":2855},{"type":66,"tag":128,"props":3208,"children":3211},{"href":3209,"rel":3210},"https://github.com/nuxt-modules/supabase/issues/154",[132],[3212],{"type":71,"value":3213},"#154",{"type":71,"value":360},{"type":66,"tag":128,"props":3216,"children":3219},{"href":3217,"rel":3218},"https://github.com/nuxt-modules/supabase/commit/ba437a8",[132],[3220],{"type":66,"tag":235,"props":3221,"children":3223},{"className":3222},[],[3224],{"type":71,"value":2866},{"type":71,"value":137},{"type":66,"tag":116,"props":3227,"children":3228},{},[3229,3230,3237,3238,3248],{"type":71,"value":2838},{"type":66,"tag":128,"props":3231,"children":3234},{"href":3232,"rel":3233},"https://github.com/nuxt-modules/supabase/issues/157",[132],[3235],{"type":71,"value":3236},"#157",{"type":71,"value":360},{"type":66,"tag":128,"props":3239,"children":3242},{"href":3240,"rel":3241},"https://github.com/nuxt-modules/supabase/commit/0cad0a5",[132],[3243],{"type":66,"tag":235,"props":3244,"children":3246},{"className":3245},[],[3247],{"type":71,"value":2849},{"type":71,"value":137},{"type":66,"tag":116,"props":3250,"children":3251},{},[3252,3253,3263],{"type":71,"value":2821},{"type":66,"tag":128,"props":3254,"children":3257},{"href":3255,"rel":3256},"https://github.com/nuxt-modules/supabase/commit/94f7e13",[132],[3258],{"type":66,"tag":235,"props":3259,"children":3261},{"className":3260},[],[3262],{"type":71,"value":2832},{"type":71,"value":137},{"type":66,"tag":116,"props":3265,"children":3266},{},[3267,3268,3275,3276,3286],{"type":71,"value":2804},{"type":66,"tag":128,"props":3269,"children":3272},{"href":3270,"rel":3271},"https://github.com/nuxt-modules/supabase/issues/126",[132],[3273],{"type":71,"value":3274},"#126",{"type":71,"value":360},{"type":66,"tag":128,"props":3277,"children":3280},{"href":3278,"rel":3279},"https://github.com/nuxt-modules/supabase/commit/5699dc6",[132],[3281],{"type":66,"tag":235,"props":3282,"children":3284},{"className":3283},[],[3285],{"type":71,"value":2815},{"type":71,"value":137},{"type":66,"tag":116,"props":3288,"children":3289},{},[3290,3291,3301],{"type":71,"value":2787},{"type":66,"tag":128,"props":3292,"children":3295},{"href":3293,"rel":3294},"https://github.com/nuxt-modules/supabase/commit/bca1992",[132],[3296],{"type":66,"tag":235,"props":3297,"children":3299},{"className":3298},[],[3300],{"type":71,"value":2798},{"type":71,"value":137},{"type":66,"tag":67,"props":3303,"children":3304},{},[3305,3309,3310],{"type":66,"tag":120,"props":3306,"children":3307},{},[3308],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3311,"children":3314},{"href":3312,"rel":3313},"https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3",[132],[3315],{"type":71,"value":3312},{"title":59,"searchDepth":78,"depth":78,"links":3317},[3318],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.3",true,{"url":3324,"total_count":176,"+1":176,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/97697076/reactions",{"name":184,"url":185,"avatar":186},"github:v0.3.3.md",{"name":3328,"tag_name":3328,"date":3329,"body":3330,"v":182,"url":3395,"tarball":3396,"zipball":3397,"prerelease":60,"author":3398,"title":59,"description":59,"_type":80,"_id":3399},"v0.3.1","2023-02-07T20:18:04Z",{"type":63,"children":3331,"toc":3392},[3332,3336,3378],{"type":66,"tag":98,"props":3333,"children":3334},{"id":100},[3335],{"type":71,"value":103},{"type":66,"tag":112,"props":3337,"children":3338},{},[3339,3356,3373],{"type":66,"tag":116,"props":3340,"children":3341},{},[3342,3344,3355],{"type":71,"value":3343},"chore(app): upgrade deps and fix lint (",{"type":66,"tag":128,"props":3345,"children":3348},{"href":3346,"rel":3347},"https://github.com/nuxt-modules/supabase/commit/68baf68",[132],[3349],{"type":66,"tag":235,"props":3350,"children":3352},{"className":3351},[],[3353],{"type":71,"value":3354},"68baf68",{"type":71,"value":137},{"type":66,"tag":116,"props":3357,"children":3358},{},[3359,3361,3372],{"type":71,"value":3360},"fix(client): unset user before session on logout (",{"type":66,"tag":128,"props":3362,"children":3365},{"href":3363,"rel":3364},"https://github.com/nuxt-modules/supabase/commit/ab574ef",[132],[3366],{"type":66,"tag":235,"props":3367,"children":3369},{"className":3368},[],[3370],{"type":71,"value":3371},"ab574ef",{"type":71,"value":137},{"type":66,"tag":116,"props":3374,"children":3375},{},[3376],{"type":71,"value":3377},"chore(demo): update with latest and fix logout",{"type":66,"tag":67,"props":3379,"children":3380},{},[3381,3385,3386],{"type":66,"tag":120,"props":3382,"children":3383},{},[3384],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3387,"children":3390},{"href":3388,"rel":3389},"https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1",[132],[3391],{"type":71,"value":3388},{"title":59,"searchDepth":78,"depth":78,"links":3393},[3394],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.1","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.1","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.1",{"name":184,"url":185,"avatar":186},"github:v0.3.1.md",{"name":3401,"tag_name":3401,"date":3402,"body":3403,"v":182,"url":3525,"tarball":3526,"zipball":3527,"prerelease":60,"reactions":3528,"author":3530,"title":59,"description":2330,"_type":80,"_id":3531},"v0.3.0","2022-11-22T15:26:02Z",{"type":63,"children":3404,"toc":3522},[3405,3409,3413,3434,3468,3496,3508],{"type":66,"tag":67,"props":3406,"children":3407},{},[3408],{"type":71,"value":2330},{"type":66,"tag":98,"props":3410,"children":3411},{"id":100},[3412],{"type":71,"value":103},{"type":66,"tag":67,"props":3414,"children":3415},{},[3416,3418,3425,3427,3432],{"type":71,"value":3417},"In order to resolve ",{"type":66,"tag":128,"props":3419,"children":3422},{"href":3420,"rel":3421},"https://github.com/nuxt-modules/supabase/issues/114",[132],[3423],{"type":71,"value":3424},"#114",{"type":71,"value":3426},", I have made the choice to separate the ",{"type":66,"tag":235,"props":3428,"children":3430},{"className":3429},[],[3431],{"type":71,"value":21},{"type":71,"value":3433}," in two other composables:",{"type":66,"tag":112,"props":3435,"children":3436},{},[3437,3457],{"type":66,"tag":116,"props":3438,"children":3439},{},[3440,3442,3447,3449,3455],{"type":71,"value":3441},"The ",{"type":66,"tag":235,"props":3443,"children":3445},{"className":3444},[],[3446],{"type":71,"value":2342},{"type":71,"value":3448}," is dedicated to authentification purpose only. It won't be recreate if your token expires, it is used in the client plugin to listen to ",{"type":66,"tag":235,"props":3450,"children":3452},{"className":3451},[],[3453],{"type":71,"value":3454},"onAuthStateChange",{"type":71,"value":3456}," events.",{"type":66,"tag":116,"props":3458,"children":3459},{},[3460,3461,3466],{"type":71,"value":3441},{"type":66,"tag":235,"props":3462,"children":3464},{"className":3463},[],[3465],{"type":71,"value":21},{"type":71,"value":3467}," is now only useful for data request.",{"type":66,"tag":67,"props":3469,"children":3470},{},[3471,3473,3478,3480,3485,3487,3494],{"type":71,"value":3472},"To avoid regression you just need to use ",{"type":66,"tag":235,"props":3474,"children":3476},{"className":3475},[],[3477],{"type":71,"value":2342},{"type":71,"value":3479}," instead of ",{"type":66,"tag":235,"props":3481,"children":3483},{"className":3482},[],[3484],{"type":71,"value":21},{"type":71,"value":3486}," everywhere you use ",{"type":66,"tag":128,"props":3488,"children":3491},{"href":3489,"rel":3490},"https://supabase.com/docs/reference/javascript/auth-signup",[132],[3492],{"type":71,"value":3493},"Supabase auth methods",{"type":71,"value":3495},".",{"type":66,"tag":67,"props":3497,"children":3498},{},[3499,3506],{"type":66,"tag":128,"props":3500,"children":3503},{"href":3501,"rel":3502},"https://supabase.nuxtjs.org/usage/composables/use-supabase-auth-client",[132],[3504],{"type":71,"value":3505},"Documentation",{"type":71,"value":3507}," has been updated.",{"type":66,"tag":67,"props":3509,"children":3510},{},[3511,3515,3516],{"type":66,"tag":120,"props":3512,"children":3513},{},[3514],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3517,"children":3520},{"href":3518,"rel":3519},"https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0",[132],[3521],{"type":71,"value":3518},{"title":59,"searchDepth":78,"depth":78,"links":3523},[3524],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.3.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.3.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.3.0",{"url":3529,"total_count":2505,"+1":78,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":174,"rocket":174,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/83886320/reactions",{"name":184,"url":185,"avatar":186},"github:v0.3.0.md",{"name":3533,"tag_name":3533,"date":3534,"body":3535,"v":182,"url":3572,"tarball":3573,"zipball":3574,"prerelease":60,"author":3575,"title":59,"description":59,"_type":80,"_id":3576},"v0.2.6","2022-11-22T15:16:16Z",{"type":63,"children":3536,"toc":3569},[3537,3541,3555],{"type":66,"tag":98,"props":3538,"children":3539},{"id":100},[3540],{"type":71,"value":103},{"type":66,"tag":112,"props":3542,"children":3543},{},[3544],{"type":66,"tag":116,"props":3545,"children":3546},{},[3547,3549],{"type":71,"value":3548},"chore: update to Nuxt 3 stable 🚀 ",{"type":66,"tag":128,"props":3550,"children":3553},{"href":3551,"rel":3552},"https://nuxt.com/v3",[132],[3554],{"type":71,"value":3551},{"type":66,"tag":67,"props":3556,"children":3557},{},[3558,3562,3563],{"type":66,"tag":120,"props":3559,"children":3560},{},[3561],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3564,"children":3567},{"href":3565,"rel":3566},"https://github.com/nuxt-community/supabase-module/compare/v0.2.5...v0.2.6",[132],[3568],{"type":71,"value":3565},{"title":59,"searchDepth":78,"depth":78,"links":3570},[3571],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.6","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.6","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.6",{"name":184,"url":185,"avatar":186},"github:v0.2.6.md",{"name":3578,"tag_name":3578,"date":3579,"body":3580,"v":182,"url":3632,"tarball":3633,"zipball":3634,"prerelease":60,"author":3635,"title":59,"description":59,"_type":80,"_id":3636},"v0.2.5","2022-11-22T15:14:51Z",{"type":63,"children":3581,"toc":3629},[3582,3586,3615],{"type":66,"tag":98,"props":3583,"children":3584},{"id":100},[3585],{"type":71,"value":103},{"type":66,"tag":112,"props":3587,"children":3588},{},[3589],{"type":66,"tag":116,"props":3590,"children":3591},{},[3592,3594,3605,3607,3614],{"type":71,"value":3593},"fix: use Router instead of navigateTo for login redirect in ",{"type":66,"tag":128,"props":3595,"children":3598},{"href":3596,"rel":3597},"https://github.com/nuxt-modules/supabase/commit/79fc0e43655d4dee5858acf06cf1979e3ead542b",[132],[3599],{"type":66,"tag":235,"props":3600,"children":3602},{"className":3601},[],[3603],{"type":71,"value":3604},"79fc0e4",{"type":71,"value":3606}," (resolves ",{"type":66,"tag":128,"props":3608,"children":3611},{"href":3609,"rel":3610},"https://github.com/nuxt-modules/supabase/issues/89",[132],[3612],{"type":71,"value":3613},"#89",{"type":71,"value":137},{"type":66,"tag":67,"props":3616,"children":3617},{},[3618,3622,3623],{"type":66,"tag":120,"props":3619,"children":3620},{},[3621],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3624,"children":3627},{"href":3625,"rel":3626},"https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5",[132],[3628],{"type":71,"value":3625},{"title":59,"searchDepth":78,"depth":78,"links":3630},[3631],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.5",{"name":184,"url":185,"avatar":186},"github:v0.2.5.md",{"name":3638,"tag_name":3638,"date":3639,"body":3640,"v":182,"url":3682,"tarball":3683,"zipball":3684,"prerelease":60,"reactions":3685,"author":3687,"title":59,"description":59,"_type":80,"_id":3688},"v0.2.4","2022-11-13T19:36:18Z",{"type":63,"children":3641,"toc":3679},[3642,3646,3665],{"type":66,"tag":98,"props":3643,"children":3644},{"id":100},[3645],{"type":71,"value":103},{"type":66,"tag":112,"props":3647,"children":3648},{},[3649],{"type":66,"tag":116,"props":3650,"children":3651},{},[3652,3654],{"type":71,"value":3653},"fix: handle TOKEN_REFRESHED session event in ",{"type":66,"tag":128,"props":3655,"children":3658},{"href":3656,"rel":3657},"https://github.com/nuxt-modules/supabase/commit/bf503029b48113b4b66545d0d2065c899209a06a",[132],[3659],{"type":66,"tag":235,"props":3660,"children":3662},{"className":3661},[],[3663],{"type":71,"value":3664},"bf50302",{"type":66,"tag":67,"props":3666,"children":3667},{},[3668,3672,3673],{"type":66,"tag":120,"props":3669,"children":3670},{},[3671],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3674,"children":3677},{"href":3675,"rel":3676},"https://github.com/nuxt-community/supabase-module/compare/v0.2.3...v0.2.4",[132],[3678],{"type":71,"value":3675},{"title":59,"searchDepth":78,"depth":78,"links":3680},[3681],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.4","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.4","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.4",{"url":3686,"total_count":78,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":78,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/82920199/reactions",{"name":184,"url":185,"avatar":186},"github:v0.2.4.md",{"name":3690,"tag_name":3690,"date":3691,"body":3692,"v":182,"url":3828,"tarball":3829,"zipball":3830,"prerelease":60,"reactions":3831,"author":3833,"title":59,"description":59,"_type":80,"_id":3834},"v0.2.3","2022-11-11T17:27:14Z",{"type":63,"children":3693,"toc":3824},[3694,3698,3777,3782,3810],{"type":66,"tag":98,"props":3695,"children":3696},{"id":100},[3697],{"type":71,"value":103},{"type":66,"tag":112,"props":3699,"children":3700},{},[3701,3729,3741,3754],{"type":66,"tag":116,"props":3702,"children":3703},{},[3704,3706,3717,3718],{"type":71,"value":3705},"feat: typed supabase client in ",{"type":66,"tag":128,"props":3707,"children":3710},{"href":3708,"rel":3709},"https://github.com/nuxt-modules/supabase/commit/b59ff1acfbbe2cd36aea1ade2d2b538404909260",[132],[3711],{"type":66,"tag":235,"props":3712,"children":3714},{"className":3713},[],[3715],{"type":71,"value":3716},"b59ff1a",{"type":71,"value":385},{"type":66,"tag":128,"props":3719,"children":3722},{"href":3720,"rel":3721},"https://github.com/nuxt-modules/supabase/commit/fd751d7e50c63c48df9e03763458cc826409ff35",[132],[3723],{"type":66,"tag":235,"props":3724,"children":3726},{"className":3725},[],[3727],{"type":71,"value":3728},"fd751d7",{"type":66,"tag":116,"props":3730,"children":3731},{},[3732,3734],{"type":71,"value":3733},"chore: upgrade to nuxt ",{"type":66,"tag":128,"props":3735,"children":3738},{"href":3736,"rel":3737},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.13",[132],[3739],{"type":71,"value":3740},"rc13",{"type":66,"tag":116,"props":3742,"children":3743},{},[3744,3746,3753],{"type":71,"value":3745},"fix: do not apply token if not exists (",{"type":66,"tag":128,"props":3747,"children":3750},{"href":3748,"rel":3749},"https://github.com/nuxt-modules/supabase/issues/107",[132],[3751],{"type":71,"value":3752},"#107",{"type":71,"value":137},{"type":66,"tag":116,"props":3755,"children":3756},{},[3757,3759,3765,3766],{"type":71,"value":3758},"docs: add roadmap board from ",{"type":66,"tag":128,"props":3760,"children":3763},{"href":3761,"rel":3762},"https://volta.net",[132],[3764],{"type":71,"value":3761},{"type":71,"value":1131},{"type":66,"tag":128,"props":3767,"children":3770},{"href":3768,"rel":3769},"https://github.com/nuxt-modules/supabase/commit/f8e73b535924f133e479dbc2863bb37856ff4555",[132],[3771],{"type":66,"tag":235,"props":3772,"children":3774},{"className":3773},[],[3775],{"type":71,"value":3776},"f8e73b5",{"type":66,"tag":98,"props":3778,"children":3779},{"id":152},[3780],{"type":71,"value":3781},"Contributors",{"type":66,"tag":67,"props":3783,"children":3784},{},[3785,3787,3797,3798,3808],{"type":71,"value":3786},"Thanks to ",{"type":66,"tag":128,"props":3788,"children":3791},{"href":3789,"rel":3790},"https://github.com/manniL",[132],[3792],{"type":66,"tag":120,"props":3793,"children":3794},{},[3795],{"type":71,"value":3796},"@manniL",{"type":71,"value":385},{"type":66,"tag":128,"props":3799,"children":3802},{"href":3800,"rel":3801},"https://github.com/levibe",[132],[3803],{"type":66,"tag":120,"props":3804,"children":3805},{},[3806],{"type":71,"value":3807},"@levibe",{"type":71,"value":3809}," 💚",{"type":66,"tag":67,"props":3811,"children":3812},{},[3813,3817,3818],{"type":66,"tag":120,"props":3814,"children":3815},{},[3816],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3819,"children":3822},{"href":3820,"rel":3821},"https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3",[132],[3823],{"type":71,"value":3820},{"title":59,"searchDepth":78,"depth":78,"links":3825},[3826,3827],{"id":100,"depth":78,"text":103},{"id":152,"depth":78,"text":3781},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.3","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.3","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.3",{"url":3832,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":176,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/82825289/reactions",{"name":184,"url":185,"avatar":186},"github:v0.2.3.md",{"name":3836,"tag_name":3836,"date":3837,"body":3838,"v":182,"url":3929,"tarball":3930,"zipball":3931,"prerelease":60,"author":3932,"title":59,"description":59,"_type":80,"_id":3933},"v0.2.0","2022-10-17T14:18:31Z",{"type":63,"children":3839,"toc":3926},[3840,3844,3849,3862,3875,3880,3885,3912],{"type":66,"tag":98,"props":3841,"children":3842},{"id":100},[3843],{"type":71,"value":103},{"type":66,"tag":67,"props":3845,"children":3846},{},[3847],{"type":71,"value":3848},"⚠️ Breaking Changes",{"type":66,"tag":67,"props":3850,"children":3851},{},[3852,3854,3861],{"type":71,"value":3853},"Upgrade to supabase-js v2, check Supabase ",{"type":66,"tag":128,"props":3855,"children":3858},{"href":3856,"rel":3857},"https://supabase.com/docs/reference/javascript/release-notes",[132],[3859],{"type":71,"value":3860},"release notes",{"type":71,"value":3495},{"type":66,"tag":67,"props":3863,"children":3864},{},[3865,3867,3873],{"type":71,"value":3866},"Module ",{"type":66,"tag":128,"props":3868,"children":3870},{"href":2292,"rel":3869},[132],[3871],{"type":71,"value":3872},"documentation",{"type":71,"value":3874}," has been updated in favor of supabase v2 syntax.",{"type":66,"tag":67,"props":3876,"children":3877},{},[3878],{"type":71,"value":3879},"Please feel free to make PR if I missed something 🙏",{"type":66,"tag":67,"props":3881,"children":3882},{},[3883],{"type":71,"value":3884},"🚀 Features",{"type":66,"tag":112,"props":3886,"children":3887},{},[3888,3900],{"type":66,"tag":116,"props":3889,"children":3890},{},[3891,3893,3899],{"type":71,"value":3892},"options: redirect user after signout or when user is not authenticated (check ",{"type":66,"tag":128,"props":3894,"children":3897},{"href":3895,"rel":3896},"https://supabase.nuxtjs.org/get-started#redirect",[132],[3898],{"type":71,"value":3872},{"type":71,"value":137},{"type":66,"tag":116,"props":3901,"children":3902},{},[3903,3905],{"type":71,"value":3904},"session: set refresh token ",{"type":66,"tag":128,"props":3906,"children":3909},{"href":3907,"rel":3908},"https://github.com/nuxt-modules/supabase/issues/18",[132],[3910],{"type":71,"value":3911},"#18",{"type":66,"tag":67,"props":3913,"children":3914},{},[3915,3919,3920],{"type":66,"tag":120,"props":3916,"children":3917},{},[3918],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3921,"children":3924},{"href":3922,"rel":3923},"https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0",[132],[3925],{"type":71,"value":3922},{"title":59,"searchDepth":78,"depth":78,"links":3927},[3928],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0",{"name":184,"url":185,"avatar":186},"github:v0.2.0.md",{"name":3935,"tag_name":3935,"date":3936,"body":3937,"v":182,"url":3992,"tarball":3993,"zipball":3994,"prerelease":60,"author":3995,"title":59,"description":59,"_type":80,"_id":3996},"v0.1.28","2022-10-07T10:05:52Z",{"type":63,"children":3938,"toc":3989},[3939,3943,3959,3973],{"type":66,"tag":98,"props":3940,"children":3941},{"id":100},[3942],{"type":71,"value":103},{"type":66,"tag":112,"props":3944,"children":3945},{},[3946],{"type":66,"tag":116,"props":3947,"children":3948},{},[3949,3951,3958],{"type":71,"value":3950},"fix: cloudflare workers deployment (",{"type":66,"tag":128,"props":3952,"children":3955},{"href":3953,"rel":3954},"https://github.com/nuxt-modules/supabase/issues/46",[132],[3956],{"type":71,"value":3957},"#46",{"type":71,"value":137},{"type":66,"tag":67,"props":3960,"children":3961},{},[3962,3966,3967],{"type":66,"tag":120,"props":3963,"children":3964},{},[3965],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":3968,"children":3971},{"href":3969,"rel":3970},"https://github.com/nuxt-community/supabase-module/compare/v0.1.27...v0.1.28",[132],[3972],{"type":71,"value":3969},{"type":66,"tag":67,"props":3974,"children":3975},{},[3976,3977,3987],{"type":71,"value":3786},{"type":66,"tag":128,"props":3978,"children":3981},{"href":3979,"rel":3980},"https://github.com/kevinmarrec",[132],[3982],{"type":66,"tag":120,"props":3983,"children":3984},{},[3985],{"type":71,"value":3986},"@kevinmarrec",{"type":71,"value":3988}," for the fix 🔥",{"title":59,"searchDepth":78,"depth":78,"links":3990},[3991],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.28","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.28","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.28",{"name":184,"url":185,"avatar":186},"github:v0.1.28.md",{"name":3998,"tag_name":3998,"date":3999,"body":4000,"v":182,"url":4043,"tarball":4044,"zipball":4045,"prerelease":60,"author":4046,"title":59,"description":59,"_type":80,"_id":4047},"v0.1.27","2022-09-23T10:19:42Z",{"type":63,"children":4001,"toc":4040},[4002,4006,4021,4026],{"type":66,"tag":98,"props":4003,"children":4004},{"id":100},[4005],{"type":71,"value":103},{"type":66,"tag":112,"props":4007,"children":4008},{},[4009],{"type":66,"tag":116,"props":4010,"children":4011},{},[4012,4014],{"type":71,"value":4013},"chore: upgrade to Nuxt ",{"type":66,"tag":128,"props":4015,"children":4018},{"href":4016,"rel":4017},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.11",[132],[4019],{"type":71,"value":4020},"rc.11",{"type":66,"tag":67,"props":4022,"children":4023},{},[4024],{"type":71,"value":4025},"Stable is coming 🚀",{"type":66,"tag":67,"props":4027,"children":4028},{},[4029,4033,4034],{"type":66,"tag":120,"props":4030,"children":4031},{},[4032],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4035,"children":4038},{"href":4036,"rel":4037},"https://github.com/nuxt-community/supabase-module/compare/v0.1.26...v0.1.27",[132],[4039],{"type":71,"value":4036},{"title":59,"searchDepth":78,"depth":78,"links":4041},[4042],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.27","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.27","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.27",{"name":184,"url":185,"avatar":186},"github:v0.1.27.md",{"name":3836,"tag_name":4049,"date":4050,"body":4051,"v":182,"url":4089,"tarball":4090,"zipball":4091,"prerelease":3322,"author":4092,"title":59,"description":59,"_type":80,"_id":3933},"v0.2.0-16","2022-08-16T14:56:45Z",{"type":63,"children":4052,"toc":4086},[4053,4057,4061,4072],{"type":66,"tag":98,"props":4054,"children":4055},{"id":100},[4056],{"type":71,"value":103},{"type":66,"tag":67,"props":4058,"children":4059},{},[4060],{"type":71,"value":3848},{"type":66,"tag":67,"props":4062,"children":4063},{},[4064,4065,4071],{"type":71,"value":3853},{"type":66,"tag":128,"props":4066,"children":4069},{"href":4067,"rel":4068},"https://supabase.com/docs/reference/javascript/next/release-notes",[132],[4070],{"type":71,"value":3860},{"type":71,"value":3495},{"type":66,"tag":67,"props":4073,"children":4074},{},[4075,4079,4080],{"type":66,"tag":120,"props":4076,"children":4077},{},[4078],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4081,"children":4084},{"href":4082,"rel":4083},"https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0",[132],[4085],{"type":71,"value":4082},{"title":59,"searchDepth":78,"depth":78,"links":4087},[4088],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.2.0-16","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.2.0-16","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.2.0-16",{"name":184,"url":185,"avatar":186},{"name":4094,"tag_name":4094,"date":4095,"body":4096,"v":182,"url":4138,"tarball":4139,"zipball":4140,"prerelease":60,"reactions":4141,"author":4143,"title":59,"description":59,"_type":80,"_id":4144},"v0.1.26","2022-09-16T11:17:29Z",{"type":63,"children":4097,"toc":4135},[4098,4102,4116,4121],{"type":66,"tag":98,"props":4099,"children":4100},{"id":100},[4101],{"type":71,"value":103},{"type":66,"tag":112,"props":4103,"children":4104},{},[4105],{"type":66,"tag":116,"props":4106,"children":4107},{},[4108,4109],{"type":71,"value":4013},{"type":66,"tag":128,"props":4110,"children":4113},{"href":4111,"rel":4112},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.10",[132],[4114],{"type":71,"value":4115},"rc.10",{"type":66,"tag":67,"props":4117,"children":4118},{},[4119],{"type":71,"value":4120},"Stable in coming 🚀",{"type":66,"tag":67,"props":4122,"children":4123},{},[4124,4128,4129],{"type":66,"tag":120,"props":4125,"children":4126},{},[4127],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4130,"children":4133},{"href":4131,"rel":4132},"https://github.com/nuxt-community/supabase-module/compare/v0.1.25...v0.1.26",[132],[4134],{"type":71,"value":4131},{"title":59,"searchDepth":78,"depth":78,"links":4136},[4137],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.26","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.26","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.26",{"url":4142,"total_count":176,"+1":176,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/77384555/reactions",{"name":184,"url":185,"avatar":186},"github:v0.1.26.md",{"name":4146,"tag_name":4146,"date":4147,"body":4148,"v":182,"url":4251,"tarball":4252,"zipball":4253,"prerelease":60,"reactions":4254,"author":4256,"title":59,"description":59,"_type":80,"_id":4257},"v0.1.25","2022-09-05T07:28:01Z",{"type":63,"children":4149,"toc":4248},[4150,4154,4234],{"type":66,"tag":98,"props":4151,"children":4152},{"id":100},[4153],{"type":71,"value":103},{"type":66,"tag":112,"props":4155,"children":4156},{},[4157,4193,4221],{"type":66,"tag":116,"props":4158,"children":4159},{},[4160,4162,4173,4174,4185,4187],{"type":71,"value":4161},"docs: new directory architecture + supabase module v2 coming soon in ",{"type":66,"tag":128,"props":4163,"children":4166},{"href":4164,"rel":4165},"https://github.com/nuxt-modules/supabase/commit/d48522a369bcced45dfb3d16793b33f0144ffa50",[132],[4167],{"type":66,"tag":235,"props":4168,"children":4170},{"className":4169},[],[4171],{"type":71,"value":4172},"d48522a",{"type":71,"value":385},{"type":66,"tag":128,"props":4175,"children":4178},{"href":4176,"rel":4177},"https://github.com/nuxt-modules/supabase/commit/e69712b4862a5baa464c01ae32755473358b82d2",[132],[4179],{"type":66,"tag":235,"props":4180,"children":4182},{"className":4181},[],[4183],{"type":71,"value":4184},"e69712b",{"type":71,"value":4186},". Check out ",{"type":66,"tag":128,"props":4188,"children":4191},{"href":4189,"rel":4190},"https://supabase.nuxtjs.org/",[132],[4192],{"type":71,"value":4189},{"type":66,"tag":116,"props":4194,"children":4195},{},[4196,4198,4209,4210],{"type":71,"value":4197},"chore: upgrade to rc9 in ",{"type":66,"tag":128,"props":4199,"children":4202},{"href":4200,"rel":4201},"https://github.com/nuxt-modules/supabase/commit/3c5220bf9569d2e939a466aa4a2814e0dc38622c",[132],[4203],{"type":66,"tag":235,"props":4204,"children":4206},{"className":4205},[],[4207],{"type":71,"value":4208},"3c5220b",{"type":71,"value":385},{"type":66,"tag":128,"props":4211,"children":4214},{"href":4212,"rel":4213},"https://github.com/nuxt-modules/supabase/commit/495e0b705622e9bda28072815c828beedea1082c",[132],[4215],{"type":66,"tag":235,"props":4216,"children":4218},{"className":4217},[],[4219],{"type":71,"value":4220},"495e0b7",{"type":66,"tag":116,"props":4222,"children":4223},{},[4224,4226,4233],{"type":71,"value":4225},"chore: fix nuxt compatibility (",{"type":66,"tag":128,"props":4227,"children":4230},{"href":4228,"rel":4229},"https://github.com/nuxt-modules/supabase/issues/70",[132],[4231],{"type":71,"value":4232},"#70",{"type":71,"value":137},{"type":66,"tag":67,"props":4235,"children":4236},{},[4237,4241,4242],{"type":66,"tag":120,"props":4238,"children":4239},{},[4240],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4243,"children":4246},{"href":4244,"rel":4245},"https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25",[132],[4247],{"type":71,"value":4244},{"title":59,"searchDepth":78,"depth":78,"links":4249},[4250],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.25","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.25","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.25",{"url":4255,"total_count":1197,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":1197,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/76259131/reactions",{"name":184,"url":185,"avatar":186},"github:v0.1.25.md",{"name":4259,"tag_name":4259,"date":4260,"body":4261,"v":182,"url":4329,"tarball":4330,"zipball":4331,"prerelease":60,"author":4332,"title":59,"description":59,"_type":80,"_id":4333},"v0.1.23","2022-08-16T10:12:13Z",{"type":63,"children":4262,"toc":4326},[4263,4267,4312],{"type":66,"tag":98,"props":4264,"children":4265},{"id":100},[4266],{"type":71,"value":103},{"type":66,"tag":112,"props":4268,"children":4269},{},[4270],{"type":66,"tag":116,"props":4271,"children":4272},{},[4273,4275,4288,4290,4302,4304,4311],{"type":71,"value":4274},"fix: transpile supabase packages in ",{"type":66,"tag":128,"props":4276,"children":4279},{"href":4277,"rel":4278},"https://github.com/nuxt-community/supabase-module/commit/66020204e8aad98db94a83964f1bb988642c90f3",[132],[4280,4282],{"type":71,"value":4281},"nuxt-community/supabase-module@",{"type":66,"tag":235,"props":4283,"children":4285},{"className":4284},[],[4286],{"type":71,"value":4287},"6602020",{"type":71,"value":4289}," ",{"type":66,"tag":128,"props":4291,"children":4294},{"href":4292,"rel":4293},"https://github.com/nuxt-community/supabase-module/commit/237ddf2cf83079e39748b6252182ca1d2f62cc54",[132],[4295,4296],{"type":71,"value":4281},{"type":66,"tag":235,"props":4297,"children":4299},{"className":4298},[],[4300],{"type":71,"value":4301},"237ddf2",{"type":71,"value":4303}," and (",{"type":66,"tag":128,"props":4305,"children":4308},{"href":4306,"rel":4307},"https://github.com/nuxt-modules/supabase/issues/62",[132],[4309],{"type":71,"value":4310},"#62",{"type":71,"value":137},{"type":66,"tag":67,"props":4313,"children":4314},{},[4315,4319,4320],{"type":66,"tag":120,"props":4316,"children":4317},{},[4318],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4321,"children":4324},{"href":4322,"rel":4323},"https://github.com/nuxt-community/supabase-module/compare/v0.1.20...v0.1.23",[132],[4325],{"type":71,"value":4322},{"title":59,"searchDepth":78,"depth":78,"links":4327},[4328],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.23","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.23","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.23",{"name":184,"url":185,"avatar":186},"github:v0.1.23.md",{"name":4335,"tag_name":4335,"date":4336,"body":4337,"v":182,"url":4407,"tarball":4408,"zipball":4409,"prerelease":60,"author":4410,"title":59,"description":59,"_type":80,"_id":4411},"v0.1.20","2022-08-16T09:12:14Z",{"type":63,"children":4338,"toc":4403},[4339,4343,4358,4372,4378],{"type":66,"tag":98,"props":4340,"children":4341},{"id":100},[4342],{"type":71,"value":103},{"type":66,"tag":112,"props":4344,"children":4345},{},[4346],{"type":66,"tag":116,"props":4347,"children":4348},{},[4349,4351],{"type":71,"value":4350},"chore: upgrade to ",{"type":66,"tag":128,"props":4352,"children":4355},{"href":4353,"rel":4354},"https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.8",[132],[4356],{"type":71,"value":4357},"nuxt rc.8",{"type":66,"tag":67,"props":4359,"children":4360},{},[4361,4365,4366],{"type":66,"tag":120,"props":4362,"children":4363},{},[4364],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4367,"children":4370},{"href":4368,"rel":4369},"https://github.com/nuxt-community/supabase-module/compare/v0.1.19...v0.1.20",[132],[4371],{"type":71,"value":4368},{"type":66,"tag":98,"props":4373,"children":4375},{"id":4374},"new-contributors",[4376],{"type":71,"value":4377},"New Contributors",{"type":66,"tag":112,"props":4379,"children":4380},{},[4381],{"type":66,"tag":116,"props":4382,"children":4383},{},[4384,4394,4396],{"type":66,"tag":128,"props":4385,"children":4388},{"href":4386,"rel":4387},"https://github.com/josuemartinezz",[132],[4389],{"type":66,"tag":120,"props":4390,"children":4391},{},[4392],{"type":71,"value":4393},"@josuemartinezz",{"type":71,"value":4395}," made his first contribution in ",{"type":66,"tag":128,"props":4397,"children":4400},{"href":4398,"rel":4399},"https://github.com/nuxt-modules/supabase/issues/59",[132],[4401],{"type":71,"value":4402},"#59",{"title":59,"searchDepth":78,"depth":78,"links":4404},[4405,4406],{"id":100,"depth":78,"text":103},{"id":4374,"depth":78,"text":4377},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.20","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.20","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.20",{"name":184,"url":185,"avatar":186},"github:v0.1.20.md",{"name":4413,"tag_name":4413,"date":4414,"body":4415,"v":182,"url":4469,"tarball":4470,"zipball":4471,"prerelease":60,"reactions":4472,"author":4474,"title":59,"description":59,"_type":80,"_id":4475},"v0.1.19","2022-07-18T08:18:42Z",{"type":63,"children":4416,"toc":4466},[4417,4421,4452],{"type":66,"tag":98,"props":4418,"children":4419},{"id":100},[4420],{"type":71,"value":103},{"type":66,"tag":112,"props":4422,"children":4423},{},[4424,4435],{"type":66,"tag":116,"props":4425,"children":4426},{},[4427,4428],{"type":71,"value":4350},{"type":66,"tag":128,"props":4429,"children":4432},{"href":4430,"rel":4431},"https://github.com/nuxt/framework/pull/5825",[132],[4433],{"type":71,"value":4434},"nuxt rc.5",{"type":66,"tag":116,"props":4436,"children":4437},{},[4438,4440],{"type":71,"value":4439},"doc: add supabase icon in ",{"type":66,"tag":128,"props":4441,"children":4444},{"href":4442,"rel":4443},"https://github.com/nuxt-community/supabase-module/commit/c0cce016eae809fd64acc9a503b4807750280b39",[132],[4445,4446],{"type":71,"value":4281},{"type":66,"tag":235,"props":4447,"children":4449},{"className":4448},[],[4450],{"type":71,"value":4451},"c0cce01",{"type":66,"tag":67,"props":4453,"children":4454},{},[4455,4459,4460],{"type":66,"tag":120,"props":4456,"children":4457},{},[4458],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4461,"children":4464},{"href":4462,"rel":4463},"https://github.com/nuxt-community/supabase-module/compare/v0.1.18...v0.1.19",[132],[4465],{"type":71,"value":4462},{"title":59,"searchDepth":78,"depth":78,"links":4467},[4468],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.19","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.19","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.19",{"url":4473,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":182,"rocket":176,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/72200550/reactions",{"name":184,"url":185,"avatar":186},"github:v0.1.19.md",{"name":4477,"tag_name":4477,"date":4478,"body":4479,"v":182,"url":4556,"tarball":4557,"zipball":4558,"prerelease":60,"author":4559,"title":59,"description":59,"_type":80,"_id":4560},"v0.1.18","2022-06-29T09:23:26Z",{"type":63,"children":4480,"toc":4553},[4481,4485,4539],{"type":66,"tag":98,"props":4482,"children":4483},{"id":100},[4484],{"type":71,"value":103},{"type":66,"tag":112,"props":4486,"children":4487},{},[4488,4514],{"type":66,"tag":116,"props":4489,"children":4490},{},[4491,4493,4505,4506,4513],{"type":71,"value":4492},"doc: update logo & social preview in ",{"type":66,"tag":128,"props":4494,"children":4497},{"href":4495,"rel":4496},"https://github.com/nuxt-community/supabase-module/commit/9b0b2fbee1f2fed50e903c2b368b817568d7ab1f",[132],[4498,4499],{"type":71,"value":4281},{"type":66,"tag":235,"props":4500,"children":4502},{"className":4501},[],[4503],{"type":71,"value":4504},"9b0b2fb",{"type":71,"value":392},{"type":66,"tag":128,"props":4507,"children":4510},{"href":4508,"rel":4509},"https://github.com/nuxt-modules/supabase/issues/53",[132],[4511],{"type":71,"value":4512},"#53",{"type":71,"value":137},{"type":66,"tag":116,"props":4515,"children":4516},{},[4517,4518,4530,4531,4538],{"type":71,"value":4274},{"type":66,"tag":128,"props":4519,"children":4522},{"href":4520,"rel":4521},"https://github.com/nuxt-community/supabase-module/commit/309c137f7ae23985f0ed9947fb85cb75cbfbfca2",[132],[4523,4524],{"type":71,"value":4281},{"type":66,"tag":235,"props":4525,"children":4527},{"className":4526},[],[4528],{"type":71,"value":4529},"309c137",{"type":71,"value":392},{"type":66,"tag":128,"props":4532,"children":4535},{"href":4533,"rel":4534},"https://github.com/nuxt-modules/supabase/issues/55",[132],[4536],{"type":71,"value":4537},"#55",{"type":71,"value":137},{"type":66,"tag":67,"props":4540,"children":4541},{},[4542,4546,4547],{"type":66,"tag":120,"props":4543,"children":4544},{},[4545],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4548,"children":4551},{"href":4549,"rel":4550},"https://github.com/nuxt-community/supabase-module/compare/v0.1.17...v0.1.18",[132],[4552],{"type":71,"value":4549},{"title":59,"searchDepth":78,"depth":78,"links":4554},[4555],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.18","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.18","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.18",{"name":184,"url":185,"avatar":186},"github:v0.1.18.md",{"name":4562,"tag_name":4562,"date":4563,"body":4564,"v":182,"url":4656,"tarball":4657,"zipball":4658,"prerelease":60,"reactions":4659,"author":4661,"title":59,"description":59,"_type":80,"_id":4662},"v0.1.17","2022-06-17T07:01:12Z",{"type":63,"children":4565,"toc":4653},[4566,4570,4626,4639],{"type":66,"tag":98,"props":4567,"children":4568},{"id":100},[4569],{"type":71,"value":103},{"type":66,"tag":112,"props":4571,"children":4572},{},[4573,4584,4609],{"type":66,"tag":116,"props":4574,"children":4575},{},[4576,4577],{"type":71,"value":4350},{"type":66,"tag":128,"props":4578,"children":4581},{"href":4579,"rel":4580},"https://github.com/nuxt/framework/discussions/5445",[132],[4582],{"type":71,"value":4583},"nuxt rc.4",{"type":66,"tag":116,"props":4585,"children":4586},{},[4587,4589,4596,4597],{"type":71,"value":4588},"doc: update ",{"type":66,"tag":128,"props":4590,"children":4593},{"href":4591,"rel":4592},"https://docus.com/",[132],[4594],{"type":71,"value":4595},"docus theme",{"type":71,"value":1131},{"type":66,"tag":128,"props":4598,"children":4601},{"href":4599,"rel":4600},"https://github.com/nuxt-community/supabase-module/commit/64a5add3db5e0416a8a3b7f9708d27148797e958",[132],[4602,4603],{"type":71,"value":4281},{"type":66,"tag":235,"props":4604,"children":4606},{"className":4605},[],[4607],{"type":71,"value":4608},"64a5add",{"type":66,"tag":116,"props":4610,"children":4611},{},[4612,4614],{"type":71,"value":4613},"doc: add advanced usage with supabase realtime ",{"type":66,"tag":128,"props":4615,"children":4618},{"href":4616,"rel":4617},"https://github.com/nuxt-community/supabase-module/commit/8047e311e5526a4597b81a99dc8045114348172f",[132],[4619,4620],{"type":71,"value":4281},{"type":66,"tag":235,"props":4621,"children":4623},{"className":4622},[],[4624],{"type":71,"value":4625},"8047e31",{"type":66,"tag":67,"props":4627,"children":4628},{},[4629,4631,4637],{"type":71,"value":4630},"Checkout the ",{"type":66,"tag":128,"props":4632,"children":4635},{"href":4633,"rel":4634},"https://supabase.nuxtjs.org/advanced#realtime",[132],[4636],{"type":71,"value":3872},{"type":71,"value":4638}," for supabase realtime!",{"type":66,"tag":67,"props":4640,"children":4641},{},[4642,4646,4647],{"type":66,"tag":120,"props":4643,"children":4644},{},[4645],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4648,"children":4651},{"href":4649,"rel":4650},"https://github.com/nuxt-community/supabase-module/compare/v0.1.16...v0.1.17",[132],[4652],{"type":71,"value":4649},{"title":59,"searchDepth":78,"depth":78,"links":4654},[4655],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.17","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.17","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.17",{"url":4660,"total_count":176,"+1":182,"-1":182,"laugh":182,"hooray":182,"confused":182,"heart":176,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/69689480/reactions",{"name":184,"url":185,"avatar":186},"github:v0.1.17.md",{"name":4664,"tag_name":4664,"date":4665,"body":4666,"v":182,"url":4764,"tarball":4765,"zipball":4766,"prerelease":60,"author":4767,"title":59,"description":59,"_type":80,"_id":4768},"v0.1.16","2022-06-01T10:51:45Z",{"type":63,"children":4667,"toc":4761},[4668,4672,4735,4747],{"type":66,"tag":98,"props":4669,"children":4670},{"id":100},[4671],{"type":71,"value":103},{"type":66,"tag":112,"props":4673,"children":4674},{},[4675,4709],{"type":66,"tag":116,"props":4676,"children":4677},{},[4678,4680,4687,4688,4700,4701,4708],{"type":71,"value":4679},"doc: use docus theme (public release coming soon) powered by ",{"type":66,"tag":128,"props":4681,"children":4684},{"href":4682,"rel":4683},"https://content.nuxtjs.org/",[132],[4685],{"type":71,"value":4686},"nuxt content v2",{"type":71,"value":1131},{"type":66,"tag":128,"props":4689,"children":4692},{"href":4690,"rel":4691},"https://github.com/nuxt-community/supabase-module/commit/c24a16ff0bc94221adc021231a2206b6db8f293c",[132],[4693,4694],{"type":71,"value":4281},{"type":66,"tag":235,"props":4695,"children":4697},{"className":4696},[],[4698],{"type":71,"value":4699},"c24a16f",{"type":71,"value":392},{"type":66,"tag":128,"props":4702,"children":4705},{"href":4703,"rel":4704},"https://github.com/nuxt-modules/supabase/issues/41",[132],[4706],{"type":71,"value":4707},"#41",{"type":71,"value":137},{"type":66,"tag":116,"props":4710,"children":4711},{},[4712,4714,4726,4727,4734],{"type":71,"value":4713},"feat: service role client to bypass RLS in ",{"type":66,"tag":128,"props":4715,"children":4718},{"href":4716,"rel":4717},"https://github.com/nuxt-community/supabase-module/commit/ba70a976be97acb3c438d59e45b789ee917bee6b",[132],[4719,4720],{"type":71,"value":4281},{"type":66,"tag":235,"props":4721,"children":4723},{"className":4722},[],[4724],{"type":71,"value":4725},"ba70a97",{"type":71,"value":392},{"type":66,"tag":128,"props":4728,"children":4731},{"href":4729,"rel":4730},"https://github.com/nuxt-modules/supabase/issues/43",[132],[4732],{"type":71,"value":4733},"#43",{"type":71,"value":137},{"type":66,"tag":67,"props":4736,"children":4737},{},[4738,4740,4745],{"type":71,"value":4739},"Checkout the new ",{"type":66,"tag":128,"props":4741,"children":4743},{"href":2292,"rel":4742},[132],[4744],{"type":71,"value":3872},{"type":71,"value":4746}," !",{"type":66,"tag":67,"props":4748,"children":4749},{},[4750,4754,4755],{"type":66,"tag":120,"props":4751,"children":4752},{},[4753],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4756,"children":4759},{"href":4757,"rel":4758},"https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16",[132],[4760],{"type":71,"value":4757},{"title":59,"searchDepth":78,"depth":78,"links":4762},[4763],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.16","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.16","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.16",{"name":184,"url":185,"avatar":186},"github:v0.1.16.md",{"name":4770,"tag_name":4770,"date":4771,"body":4772,"v":182,"url":4880,"tarball":4881,"zipball":4882,"prerelease":60,"author":4883,"title":59,"description":59,"_type":80,"_id":4884},"v0.1.14","2022-05-13T16:48:40Z",{"type":63,"children":4773,"toc":4877},[4774,4778,4841,4863],{"type":66,"tag":98,"props":4775,"children":4776},{"id":100},[4777],{"type":71,"value":103},{"type":66,"tag":112,"props":4779,"children":4780},{},[4781,4798,4815],{"type":66,"tag":116,"props":4782,"children":4783},{},[4784,4786],{"type":71,"value":4785},"feat: add playground folder in ",{"type":66,"tag":128,"props":4787,"children":4790},{"href":4788,"rel":4789},"https://github.com/nuxt-community/supabase-module/commit/339cf31cf48d4059ba0e4470d6e5e2aa9ef184c7",[132],[4791,4792],{"type":71,"value":4281},{"type":66,"tag":235,"props":4793,"children":4795},{"className":4794},[],[4796],{"type":71,"value":4797},"339cf31",{"type":66,"tag":116,"props":4799,"children":4800},{},[4801,4803],{"type":71,"value":4802},"fix: client options in ",{"type":66,"tag":128,"props":4804,"children":4807},{"href":4805,"rel":4806},"https://github.com/nuxt-community/supabase-module/commit/4c5595c11caf7a55621d297f6a0183a756175473",[132],[4808,4809],{"type":71,"value":4281},{"type":66,"tag":235,"props":4810,"children":4812},{"className":4811},[],[4813],{"type":71,"value":4814},"4c5595c",{"type":66,"tag":116,"props":4816,"children":4817},{},[4818,4820,4832,4833,4840],{"type":71,"value":4819},"feat: add server routes services in ",{"type":66,"tag":128,"props":4821,"children":4824},{"href":4822,"rel":4823},"https://github.com/nuxt-community/supabase-module/commit/696d3e8d19b8db79c85e86b79a3ba4dd31bb2343",[132],[4825,4826],{"type":71,"value":4281},{"type":66,"tag":235,"props":4827,"children":4829},{"className":4828},[],[4830],{"type":71,"value":4831},"696d3e8",{"type":71,"value":392},{"type":66,"tag":128,"props":4834,"children":4837},{"href":4835,"rel":4836},"https://github.com/nuxt-modules/supabase/issues/36",[132],[4838],{"type":71,"value":4839},"#36",{"type":71,"value":137},{"type":66,"tag":67,"props":4842,"children":4843},{},[4844,4846,4853,4855,4861],{"type":71,"value":4845},"You can check the ",{"type":66,"tag":128,"props":4847,"children":4850},{"href":4848,"rel":4849},"https://supabase.nuxtjs.org/usage#server-routes-services",[132],[4851],{"type":71,"value":4852},"documentation updated",{"type":71,"value":4854}," for the use of ",{"type":66,"tag":235,"props":4856,"children":4858},{"className":4857},[],[4859],{"type":71,"value":4860},"services",{"type":71,"value":4862}," in server routes.",{"type":66,"tag":67,"props":4864,"children":4865},{},[4866,4870,4871],{"type":66,"tag":120,"props":4867,"children":4868},{},[4869],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4872,"children":4875},{"href":4873,"rel":4874},"https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14",[132],[4876],{"type":71,"value":4873},{"title":59,"searchDepth":78,"depth":78,"links":4878},[4879],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.14","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.14","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.14",{"name":184,"url":185,"avatar":186},"github:v0.1.14.md",{"name":4886,"tag_name":4886,"date":4887,"body":4888,"v":182,"url":4914,"tarball":4915,"zipball":4916,"prerelease":60,"author":4917,"title":59,"description":59,"_type":80,"_id":4918},"v0.1.11","2022-05-06T08:51:02Z",{"type":63,"children":4889,"toc":4912},[4890,4898],{"type":66,"tag":112,"props":4891,"children":4892},{},[4893],{"type":66,"tag":116,"props":4894,"children":4895},{},[4896],{"type":71,"value":4897},"chore: upgrade deps",{"type":66,"tag":67,"props":4899,"children":4900},{},[4901,4905,4906],{"type":66,"tag":120,"props":4902,"children":4903},{},[4904],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4907,"children":4910},{"href":4908,"rel":4909},"https://github.com/nuxt-community/supabase-module/compare/v0.1.9...v0.1.11",[132],[4911],{"type":71,"value":4908},{"title":59,"searchDepth":78,"depth":78,"links":4913},[],"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.11","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.11","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.11",{"name":184,"url":185,"avatar":186},"github:v0.1.11.md",{"name":4920,"tag_name":4920,"date":4921,"body":4922,"v":182,"url":4975,"tarball":4976,"zipball":4977,"prerelease":60,"author":4978,"title":59,"description":59,"_type":80,"_id":4982},"v0.1.9","2022-04-20T11:07:23Z",{"type":63,"children":4923,"toc":4973},[4924,4959],{"type":66,"tag":112,"props":4925,"children":4926},{},[4927],{"type":66,"tag":116,"props":4928,"children":4929},{},[4930,4932,4938,4939,4945,4946,4958],{"type":71,"value":4931},"fix: use ",{"type":66,"tag":235,"props":4933,"children":4935},{"className":4934},[],[4936],{"type":71,"value":4937},"#imports",{"type":71,"value":3479},{"type":66,"tag":235,"props":4940,"children":4942},{"className":4941},[],[4943],{"type":71,"value":4944},"#nitro",{"type":71,"value":392},{"type":66,"tag":128,"props":4947,"children":4950},{"href":4948,"rel":4949},"https://github.com/nuxt-community/supabase-module/commit/42af598b7d9f3adf2c577c20e9cfb68bbb17d52b",[132],[4951,4952],{"type":71,"value":4281},{"type":66,"tag":235,"props":4953,"children":4955},{"className":4954},[],[4956],{"type":71,"value":4957},"42af598",{"type":71,"value":137},{"type":66,"tag":67,"props":4960,"children":4961},{},[4962,4966,4967],{"type":66,"tag":120,"props":4963,"children":4964},{},[4965],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":4968,"children":4971},{"href":4969,"rel":4970},"https://github.com/nuxt-community/supabase-module/compare/v0.1.8...v0.1.9",[132],[4972],{"type":71,"value":4969},{"title":59,"searchDepth":78,"depth":78,"links":4974},[],"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.9","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.9","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.9",{"name":4979,"url":4980,"avatar":4981},"atinux","https://github.com/atinux","https://avatars.githubusercontent.com/u/904724?v=4","github:v0.1.9.md",{"name":4984,"tag_name":4984,"date":4985,"body":4986,"v":182,"url":5042,"tarball":5043,"zipball":5044,"prerelease":60,"author":5045,"title":59,"description":59,"_type":80,"_id":5046},"v0.1.8","2022-04-13T12:26:33Z",{"type":63,"children":4987,"toc":5039},[4988,4992],{"type":66,"tag":98,"props":4989,"children":4990},{"id":100},[4991],{"type":71,"value":103},{"type":66,"tag":112,"props":4993,"children":4994},{},[4995,5012],{"type":66,"tag":116,"props":4996,"children":4997},{},[4998,5000],{"type":71,"value":4999},"fix: update runtime config fetch and override in ",{"type":66,"tag":128,"props":5001,"children":5004},{"href":5002,"rel":5003},"https://github.com/nuxt-community/supabase-module/commit/260ebc7be39dfa65902ad4fe6a49639c99a69da8",[132],[5005,5006],{"type":71,"value":4281},{"type":66,"tag":235,"props":5007,"children":5009},{"className":5008},[],[5010],{"type":71,"value":5011},"260ebc7",{"type":66,"tag":116,"props":5013,"children":5014},{},[5015,5017,5029,5031,5038],{"type":71,"value":5016},"feat: handle session with defineEventHandler in ",{"type":66,"tag":128,"props":5018,"children":5021},{"href":5019,"rel":5020},"https://github.com/nuxt-community/supabase-module/commit/e646b1ce03773bf44932824726f280ad15455ec2",[132],[5022,5023],{"type":71,"value":4281},{"type":66,"tag":235,"props":5024,"children":5026},{"className":5025},[],[5027],{"type":71,"value":5028},"e646b1c",{"type":71,"value":5030}," (Check ",{"type":66,"tag":128,"props":5032,"children":5035},{"href":5033,"rel":5034},"https://v3.nuxtjs.org/guide/features/server-routes",[132],[5036],{"type":71,"value":5037},"Nuxt doc",{"type":71,"value":137},{"title":59,"searchDepth":78,"depth":78,"links":5040},[5041],{"id":100,"depth":78,"text":103},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.8","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.8","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.8",{"name":184,"url":185,"avatar":186},"github:v0.1.8.md",{"name":5048,"tag_name":5048,"date":5049,"body":5050,"v":182,"url":5128,"tarball":5129,"zipball":5130,"prerelease":60,"reactions":5131,"author":5133,"title":59,"description":59,"_type":80,"_id":5134},"v0.1.7","2022-04-07T21:31:24Z",{"type":63,"children":5051,"toc":5124},[5052,5056,5099,5103],{"type":66,"tag":98,"props":5053,"children":5054},{"id":100},[5055],{"type":71,"value":103},{"type":66,"tag":112,"props":5057,"children":5058},{},[5059,5076],{"type":66,"tag":116,"props":5060,"children":5061},{},[5062,5064],{"type":71,"value":5063},"fix: assert method and use correct key for server middleware in ",{"type":66,"tag":128,"props":5065,"children":5068},{"href":5066,"rel":5067},"https://github.com/nuxt-community/supabase-module/commit/8a4d63101e6d2bc24563f7944988909ec7dcc6e5",[132],[5069,5070],{"type":71,"value":4281},{"type":66,"tag":235,"props":5071,"children":5073},{"className":5072},[],[5074],{"type":71,"value":5075},"8a4d631",{"type":66,"tag":116,"props":5077,"children":5078},{},[5079,5081,5091,5092],{"type":71,"value":5080},"fix: replace #config with #nitro by ",{"type":66,"tag":128,"props":5082,"children":5085},{"href":5083,"rel":5084},"https://github.com/psto",[132],[5086],{"type":66,"tag":120,"props":5087,"children":5088},{},[5089],{"type":71,"value":5090},"@psto",{"type":71,"value":1131},{"type":66,"tag":128,"props":5093,"children":5096},{"href":5094,"rel":5095},"https://github.com/nuxt-community/supabase-module/pull/23",[132],[5097],{"type":71,"value":5098},"nuxt-community/supabase-module#23",{"type":66,"tag":98,"props":5100,"children":5101},{"id":4374},[5102],{"type":71,"value":4377},{"type":66,"tag":112,"props":5104,"children":5105},{},[5106],{"type":66,"tag":116,"props":5107,"children":5108},{},[5109,5117,5119],{"type":66,"tag":128,"props":5110,"children":5112},{"href":5083,"rel":5111},[132],[5113],{"type":66,"tag":120,"props":5114,"children":5115},{},[5116],{"type":71,"value":5090},{"type":71,"value":5118}," made their first contribution in ",{"type":66,"tag":128,"props":5120,"children":5122},{"href":5094,"rel":5121},[132],[5123],{"type":71,"value":5098},{"title":59,"searchDepth":78,"depth":78,"links":5125},[5126,5127],{"id":100,"depth":78,"text":103},{"id":4374,"depth":78,"text":4377},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.7","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.7","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.7",{"url":5132,"total_count":174,"+1":182,"-1":182,"laugh":182,"hooray":174,"confused":182,"heart":182,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/63922233/reactions",{"name":4979,"url":4980,"avatar":4981},"github:v0.1.7.md",{"name":5136,"tag_name":5136,"date":5137,"body":5138,"v":182,"url":5185,"tarball":5186,"zipball":5187,"prerelease":60,"reactions":5188,"author":5191,"title":59,"description":59,"_type":80,"_id":5192},"v0.1.5","2022-04-04T10:15:21Z",{"type":63,"children":5139,"toc":5182},[5140,5144,5168],{"type":66,"tag":105,"props":5141,"children":5142},{"id":335},[5143],{"type":71,"value":338},{"type":66,"tag":112,"props":5145,"children":5146},{},[5147],{"type":66,"tag":116,"props":5148,"children":5149},{},[5150,5152,5159,5161],{"type":71,"value":5151},"remove lodash.clonedeep (",{"type":66,"tag":128,"props":5153,"children":5156},{"href":5154,"rel":5155},"https://github.com/nuxt-community/supabase-module/commit/b5c5c60358ab192b98c8a63185f58a2eb0ab706a",[132],[5157],{"type":71,"value":5158},"b5c5c60",{"type":71,"value":5160},"), resolved ",{"type":66,"tag":128,"props":5162,"children":5165},{"href":5163,"rel":5164},"https://github.com/nuxt-modules/supabase/issues/21",[132],[5166],{"type":71,"value":5167},"#21",{"type":66,"tag":67,"props":5169,"children":5170},{},[5171,5175,5176],{"type":66,"tag":120,"props":5172,"children":5173},{},[5174],{"type":71,"value":2035},{"type":71,"value":2037},{"type":66,"tag":128,"props":5177,"children":5180},{"href":5178,"rel":5179},"https://github.com/nuxt-community/supabase-module/compare/v0.1.4...v0.1.5",[132],[5181],{"type":71,"value":5178},{"title":59,"searchDepth":78,"depth":78,"links":5183},[5184],{"id":335,"depth":174,"text":338},"https://github.com/nuxt-modules/supabase/releases/tag/v0.1.5","https://api.github.com/repos/nuxt-modules/supabase/tarball/v0.1.5","https://api.github.com/repos/nuxt-modules/supabase/zipball/v0.1.5",{"url":5189,"total_count":5190,"+1":182,"-1":182,"laugh":182,"hooray":1097,"confused":182,"heart":78,"rocket":182,"eyes":182},"https://api.github.com/repos/nuxt-modules/supabase/releases/63507078/reactions",6,{"name":4979,"url":4980,"avatar":4981},"github:v0.1.5.md",1734518136504] \ No newline at end of file diff --git a/changelog/index.html b/changelog/index.html index 362f96fa5..f1899a5c3 100644 --- a/changelog/index.html +++ b/changelog/index.html @@ -59,7 +59,7 @@ - + @@ -101,7 +101,7 @@ -
mobile favicon

Changelog

Discover the latest updates of the Supabase Module

Discover the lastest updates.

v1.4.1 October 11, 2024

What's Changed

Bug Fixes

  • session: ssr getSession warning (#418) (95d905b)
  • types: added explicit types annotations for serverSupabaseClient and serverSupabaseServiceRole (#411) (3f98640)

Full changelog (2024-08-30)

Contributors 💚

@th1m0

v1.4.0 August 30, 2024

What's Changed

Bug Fixes

  • types: add explicit type annotations for plugins (#408) (09bff84)
  • types: add explicit types for composables & remove baseUrl from tsconfig (#404) (596ece2)
  • types: nullable composable types (#407) (cbbfd86)

Features

Full changelog (2024-08-30)

Contributors 💚

@felixgabler +

mobile favicon

Changelog

Discover the latest updates of the Supabase Module

Discover the lastest updates.

v1.4.4 December 10, 2024

What's Changed

Feature

  • deps: Update supabase-js to fix realtime issue (#436)

Full changelog (2024-12-10)

Contributors 💚

@felixgabler

v1.4.1 October 11, 2024

What's Changed

Bug Fixes

  • session: ssr getSession warning (#418) (95d905b)
  • types: added explicit types annotations for serverSupabaseClient and serverSupabaseServiceRole (#411) (3f98640)

Full changelog (2024-08-30)

Contributors 💚

@th1m0

v1.4.0 August 30, 2024

What's Changed

Bug Fixes

  • types: add explicit type annotations for plugins (#408) (09bff84)
  • types: add explicit types for composables & remove baseUrl from tsconfig (#404) (596ece2)
  • types: nullable composable types (#407) (cbbfd86)

Features

Full changelog (2024-08-30)

Contributors 💚

@felixgabler @th1m0

v1.3.2 July 5, 2024

What's Changed

Bug Fixes

Features

v1.3.1 July 5, 2024

What's Changed

⚠️ You can switch directly to 1.3.1, since 1.3.0 has been superseded.

Major changes

We're now using the @supabase/ssr library under the hood 🎉 (#357)

There are no breaking changes related to this improvement. However, a non-disruptive warning appears in this release: Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure.

This warning is related to an issue in the Supabase library itself. Initially, I intended to wait for this fix but since managing updates across two separate branches is challenging I chose to merge it anyway. I could no longer delay the release due to users raising concerns about outdated dependencies and other issues within the module.

You can upvote the issue to encourage the Supabase maintainers to address it.

This improvement might fix:

A big thanks to @felixgabler for initiating this change and helping refactor the module.

Other update

Full changelog

v1.1.6 January 26, 2024

What's Changed

Bug Fixes

  • deps: set resolution (db8c102)
  • playground: watch on confirm page (0caf5c1)

Features

  • app: added redirect path cookie for use after signin (#327) (1b78a05)

💚 Thanks for the help from

@Matthewenderle

Full changelog

v1.1.5 December 28, 2023

What's Changed

Bug Fixes

  • server: fetch user from session (7a3b73c)

Improvements

  • app: use module-builder stub mode for more accurate types #315

Docs

  • get-started: bun command #317
  • readme: typo in #dev section #316

💚 Thanks for the help from

@danielroe @joshuabyler @@ -126,5 +126,5 @@ @tnntwister @yannaufray @DamianGlowala

v0.3.3 March 31, 2023

What's Changed

  • perf(useSupabaseAuthClient): avoid declaring unused variables (#166) (8c070b9)
  • feat(demo): add call from server route (989a91e)
  • chore(demo): upgrade deps (9ebbc77)
  • chore(deps): upgrade (e274a5e)
  • docs(composables): correct grammar errors (#162) (034d7df)
  • docs(readme): add nuxt badge (68271b8)
  • docs(demo): fix typo (#125) (bd33d12)
  • docs(get-started): fix typos (#154) (ba437a8)
  • chore(module): conditionally add redirect plugin (#157) (0cad0a5)
  • chore(app): move to pnpm (94f7e13)
  • docs(links): update nuxt & supabase links and fix typos (#126) (5699dc6)
  • chore(demo): generate database types from supabase cli (bca1992)

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.3.1...v0.3.3

v0.3.1 February 7, 2023

What's Changed

  • chore(app): upgrade deps and fix lint (68baf68)
  • fix(client): unset user before session on logout (ab574ef)
  • chore(demo): update with latest and fix logout

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.3.0...v0.3.1

v0.3.0 November 22, 2022

⚠️ BREAKING CHANGES ⚠️

What's Changed

In order to resolve #114, I have made the choice to separate the useSupabaseClient in two other composables:

  • The useSupabaseAuthClient is dedicated to authentification purpose only. It won't be recreate if your token expires, it is used in the client plugin to listen to onAuthStateChange events.
  • The useSupabaseClient is now only useful for data request.

To avoid regression you just need to use useSupabaseAuthClient instead of useSupabaseClient everywhere you use Supabase auth methods.

Documentation has been updated.

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.2.6...v0.3.0

v0.2.5 November 22, 2022

What's Changed

  • fix: use Router instead of navigateTo for login redirect in 79fc0e4 (resolves #89)

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.2.4...v0.2.5

v0.2.3 November 11, 2022

What's Changed

Contributors

Thanks to @manniL and @levibe 💚

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.2.0...v0.2.3

v0.2.0 October 17, 2022

What's Changed

⚠️ Breaking Changes

Upgrade to supabase-js v2, check Supabase release notes.

Module documentation has been updated in favor of supabase v2 syntax.

Please feel free to make PR if I missed something 🙏

🚀 Features

  • options: redirect user after signout or when user is not authenticated (check documentation)
  • session: set refresh token #18

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.1.28...v0.2.0

v0.2.0 August 16, 2022

What's Changed

⚠️ Breaking Changes

Upgrade to supabase-js v2, check Supabase release notes.

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.1.22...v0.2.0

v0.1.25 September 5, 2022

What's Changed

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.1.23...v0.1.25

v0.1.16 June 1, 2022

What's Changed

Checkout the new documentation !

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.1.14...v0.1.16

v0.1.14 May 13, 2022

What's Changed

You can check the documentation updated for the use of services in server routes.

Full Changelog: https://github.com/nuxt-community/supabase-module/compare/v0.1.11...v0.1.14

v0.1.8 April 13, 2022

What's Changed

v0.1.7 April 7, 2022

What's Changed

New Contributors


Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/demo/_payload.json b/demo/_payload.json index 12f498bb7..ff7953e9f 100644 --- a/demo/_payload.json +++ b/demo/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":161},["ShallowReactive",2],{"navigation":3,"/demo":58,"/demo-surround":156},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":48,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":47,"description":61,"icon":49,"body":62,"_type":150,"_id":151,"_source":152,"_file":153,"_stem":154,"_extension":155},"",false,"Demonstration of using Supabase with Nuxt.",{"type":63,"children":64,"toc":144},"root",[65,72,88,95,106,112,126,132],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70],{"type":71,"value":61},"text",{"type":66,"tag":67,"props":73,"children":74},{},[75],{"type":66,"tag":76,"props":77,"children":81},"a",{"href":78,"rel":79},"https://n3-supabase.netlify.app",[80],"nofollow",[82],{"type":66,"tag":83,"props":84,"children":87},"img",{"alt":85,"src":86},"Supabase demo with Nuxt 3","https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png",[],{"type":66,"tag":89,"props":90,"children":92},"h2",{"id":91},"live-demo",[93],{"type":71,"value":94},"Live demo",{"type":66,"tag":67,"props":96,"children":97},{},[98,100],{"type":71,"value":99},"You can play with the demo on ",{"type":66,"tag":76,"props":101,"children":103},{"href":78,"rel":102},[80],[104],{"type":71,"value":105},"n3-supabase.netlify.app",{"type":66,"tag":89,"props":107,"children":109},{"id":108},"running-locally",[110],{"type":71,"value":111},"Running locally",{"type":66,"tag":67,"props":113,"children":114},{},[115,117,124],{"type":71,"value":116},"Follow the instruction in the ",{"type":66,"tag":76,"props":118,"children":121},{"href":119,"rel":120},"https://github.com/nuxt-community/supabase-module/tree/main/demo",[80],[122],{"type":71,"value":123},"demo Readme",{"type":71,"value":125},".",{"type":66,"tag":89,"props":127,"children":129},{"id":128},"source-code",[130],{"type":71,"value":131},"Source code",{"type":66,"tag":67,"props":133,"children":134},{},[135,137,143],{"type":71,"value":136},"The source code is available on Github in the ",{"type":66,"tag":76,"props":138,"children":140},{"href":119,"rel":139},[80],[141],{"type":71,"value":142},"demo/ directory",{"type":71,"value":125},{"title":59,"searchDepth":145,"depth":145,"links":146},2,[147,148,149],{"id":91,"depth":145,"text":94},{"id":108,"depth":145,"text":111},{"id":128,"depth":145,"text":131},"markdown","content:5.demo.md","content","5.demo.md","5.demo","md",[157,159],{"_path":44,"title":43,"description":158},"Get your Supabase user from serverside with the serverSupabaseUser service",{"_path":52,"title":51,"description":160},"Discover the latest updates of the Supabase Module",1733842352335] \ No newline at end of file +[{"data":1,"prerenderedAt":161},["ShallowReactive",2],{"navigation":3,"/demo":58,"/demo-surround":156},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":48,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":47,"description":61,"icon":49,"body":62,"_type":150,"_id":151,"_source":152,"_file":153,"_stem":154,"_extension":155},"",false,"Demonstration of using Supabase with Nuxt.",{"type":63,"children":64,"toc":144},"root",[65,72,88,95,106,112,126,132],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70],{"type":71,"value":61},"text",{"type":66,"tag":67,"props":73,"children":74},{},[75],{"type":66,"tag":76,"props":77,"children":81},"a",{"href":78,"rel":79},"https://n3-supabase.netlify.app",[80],"nofollow",[82],{"type":66,"tag":83,"props":84,"children":87},"img",{"alt":85,"src":86},"Supabase demo with Nuxt 3","https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png",[],{"type":66,"tag":89,"props":90,"children":92},"h2",{"id":91},"live-demo",[93],{"type":71,"value":94},"Live demo",{"type":66,"tag":67,"props":96,"children":97},{},[98,100],{"type":71,"value":99},"You can play with the demo on ",{"type":66,"tag":76,"props":101,"children":103},{"href":78,"rel":102},[80],[104],{"type":71,"value":105},"n3-supabase.netlify.app",{"type":66,"tag":89,"props":107,"children":109},{"id":108},"running-locally",[110],{"type":71,"value":111},"Running locally",{"type":66,"tag":67,"props":113,"children":114},{},[115,117,124],{"type":71,"value":116},"Follow the instruction in the ",{"type":66,"tag":76,"props":118,"children":121},{"href":119,"rel":120},"https://github.com/nuxt-community/supabase-module/tree/main/demo",[80],[122],{"type":71,"value":123},"demo Readme",{"type":71,"value":125},".",{"type":66,"tag":89,"props":127,"children":129},{"id":128},"source-code",[130],{"type":71,"value":131},"Source code",{"type":66,"tag":67,"props":133,"children":134},{},[135,137,143],{"type":71,"value":136},"The source code is available on Github in the ",{"type":66,"tag":76,"props":138,"children":140},{"href":119,"rel":139},[80],[141],{"type":71,"value":142},"demo/ directory",{"type":71,"value":125},{"title":59,"searchDepth":145,"depth":145,"links":146},2,[147,148,149],{"id":91,"depth":145,"text":94},{"id":108,"depth":145,"text":111},{"id":128,"depth":145,"text":131},"markdown","content:5.demo.md","content","5.demo.md","5.demo","md",[157,159],{"_path":44,"title":43,"description":158},"Get your Supabase user from serverside with the serverSupabaseUser service",{"_path":52,"title":51,"description":160},"Discover the latest updates of the Supabase Module",1734518136499] \ No newline at end of file diff --git a/demo/index.html b/demo/index.html index 2a9b49342..e39b5bcdd 100644 --- a/demo/index.html +++ b/demo/index.html @@ -59,7 +59,7 @@ - + @@ -94,5 +94,5 @@
- - \ No newline at end of file + + \ No newline at end of file diff --git a/get-started/_payload.json b/get-started/_payload.json index 90aabbb5d..451285173 100644 --- a/get-started/_payload.json +++ b/get-started/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":1594},["ShallowReactive",2],{"navigation":3,"/get-started":58,"/get-started-surround":1590},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":6,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":5,"description":61,"icon":7,"body":62,"_type":1584,"_id":1585,"_source":1586,"_file":1587,"_stem":1588,"_extension":1589},"",false,"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.",{"type":63,"children":64,"toc":1569},"root",[65,82,105,125,132,145,188,215,312,338,397,414,420,440,523,533,553,558,567,577,582,592,602,607,616,626,631,641,646,796,932,942,952,978,988,1104,1117,1126,1136,1160,1266,1279,1293,1303,1307,1336,1357,1511,1516,1536,1549,1563],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70,80],{"type":66,"tag":71,"props":72,"children":76},"a",{"href":73,"rel":74},"https://github.com/nuxt-modules/supabase",[75],"nofollow",[77],{"type":78,"value":79},"text","@nuxtjs/supabase",{"type":78,"value":81}," is a Nuxt module for first class integration with Supabase.",{"type":66,"tag":67,"props":83,"children":84},{},[85,87,94,96,103],{"type":78,"value":86},"Checkout the ",{"type":66,"tag":71,"props":88,"children":91},{"href":89,"rel":90},"https://v3.nuxtjs.org",[75],[92],{"type":78,"value":93},"Nuxt 3",{"type":78,"value":95}," documentation and ",{"type":66,"tag":71,"props":97,"children":100},{"href":98,"rel":99},"https://supabase.com",[75],[101],{"type":78,"value":102},"Supabase",{"type":78,"value":104}," to learn more.",{"type":66,"tag":106,"props":107,"children":110},"callout",{"icon":108,"color":109},"i-heroicons-exclamation-triangle-20-solid","amber",[111],{"type":66,"tag":67,"props":112,"children":113},{},[114,116,123],{"type":78,"value":115},"For integrating Supabase with Nuxt 2, checkout ",{"type":66,"tag":71,"props":117,"children":120},{"href":118,"rel":119},"https://github.com/supabase-community/nuxt-supabase",[75],[121],{"type":78,"value":122},"supabase-community/nuxt-supabase",{"type":78,"value":124},".",{"type":66,"tag":126,"props":127,"children":129},"h2",{"id":128},"installation",[130],{"type":78,"value":131},"Installation",{"type":66,"tag":67,"props":133,"children":134},{},[135,137,143],{"type":78,"value":136},"Add ",{"type":66,"tag":138,"props":139,"children":141},"code",{"className":140},[],[142],{"type":78,"value":79},{"type":78,"value":144}," dev dependency to your project:",{"type":66,"tag":146,"props":147,"children":151},"pre",{"className":148,"code":149,"language":150,"meta":59,"style":59},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx nuxi@latest module add supabase\n","bash",[152],{"type":66,"tag":138,"props":153,"children":154},{"__ignoreMap":59},[155],{"type":66,"tag":156,"props":157,"children":160},"span",{"class":158,"line":159},"line",1,[161,167,173,178,183],{"type":66,"tag":156,"props":162,"children":164},{"style":163},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[165],{"type":78,"value":166},"npx",{"type":66,"tag":156,"props":168,"children":170},{"style":169},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[171],{"type":78,"value":172}," nuxi@latest",{"type":66,"tag":156,"props":174,"children":175},{"style":169},[176],{"type":78,"value":177}," module",{"type":66,"tag":156,"props":179,"children":180},{"style":169},[181],{"type":78,"value":182}," add",{"type":66,"tag":156,"props":184,"children":185},{"style":169},[186],{"type":78,"value":187}," supabase\n",{"type":66,"tag":67,"props":189,"children":190},{},[191,192,197,199,205,207,213],{"type":78,"value":136},{"type":66,"tag":138,"props":193,"children":195},{"className":194},[],[196],{"type":78,"value":79},{"type":78,"value":198}," to the ",{"type":66,"tag":138,"props":200,"children":202},{"className":201},[],[203],{"type":78,"value":204},"modules",{"type":78,"value":206}," section of ",{"type":66,"tag":138,"props":208,"children":210},{"className":209},[],[211],{"type":78,"value":212},"nuxt.config.ts",{"type":78,"value":214},":",{"type":66,"tag":146,"props":216,"children":220},{"className":217,"code":218,"filename":212,"language":219,"meta":59,"style":59},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","ts",[221],{"type":66,"tag":138,"props":222,"children":223},{"__ignoreMap":59},[224,256,298],{"type":66,"tag":156,"props":225,"children":226},{"class":158,"line":159},[227,233,238,244,250],{"type":66,"tag":156,"props":228,"children":230},{"style":229},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[231],{"type":78,"value":232},"export",{"type":66,"tag":156,"props":234,"children":235},{"style":229},[236],{"type":78,"value":237}," default",{"type":66,"tag":156,"props":239,"children":241},{"style":240},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[242],{"type":78,"value":243}," defineNuxtConfig",{"type":66,"tag":156,"props":245,"children":247},{"style":246},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[248],{"type":78,"value":249},"(",{"type":66,"tag":156,"props":251,"children":253},{"style":252},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[254],{"type":78,"value":255},"{\n",{"type":66,"tag":156,"props":257,"children":259},{"class":158,"line":258},2,[260,266,270,275,280,284,288,293],{"type":66,"tag":156,"props":261,"children":263},{"style":262},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[264],{"type":78,"value":265}," modules",{"type":66,"tag":156,"props":267,"children":268},{"style":252},[269],{"type":78,"value":214},{"type":66,"tag":156,"props":271,"children":272},{"style":246},[273],{"type":78,"value":274}," [",{"type":66,"tag":156,"props":276,"children":277},{"style":252},[278],{"type":78,"value":279},"'",{"type":66,"tag":156,"props":281,"children":282},{"style":169},[283],{"type":78,"value":79},{"type":66,"tag":156,"props":285,"children":286},{"style":252},[287],{"type":78,"value":279},{"type":66,"tag":156,"props":289,"children":290},{"style":246},[291],{"type":78,"value":292},"]",{"type":66,"tag":156,"props":294,"children":295},{"style":252},[296],{"type":78,"value":297},",\n",{"type":66,"tag":156,"props":299,"children":301},{"class":158,"line":300},3,[302,307],{"type":66,"tag":156,"props":303,"children":304},{"style":252},[305],{"type":78,"value":306},"}",{"type":66,"tag":156,"props":308,"children":309},{"style":246},[310],{"type":78,"value":311},")\n",{"type":66,"tag":67,"props":313,"children":314},{},[315,316,322,324,330,331,337],{"type":78,"value":136},{"type":66,"tag":138,"props":317,"children":319},{"className":318},[],[320],{"type":78,"value":321},"SUPABASE_URL",{"type":78,"value":323}," and ",{"type":66,"tag":138,"props":325,"children":327},{"className":326},[],[328],{"type":78,"value":329},"SUPABASE_KEY",{"type":78,"value":198},{"type":66,"tag":138,"props":332,"children":334},{"className":333},[],[335],{"type":78,"value":336},".env",{"type":78,"value":214},{"type":66,"tag":146,"props":339,"children":342},{"className":148,"code":340,"filename":341,"language":150,"meta":59,"style":59},"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\u003Cyour_key>\"\n","env",[343],{"type":66,"tag":138,"props":344,"children":345},{"__ignoreMap":59},[346,373],{"type":66,"tag":156,"props":347,"children":348},{"class":158,"line":159},[349,353,358,363,368],{"type":66,"tag":156,"props":350,"children":351},{"style":246},[352],{"type":78,"value":321},{"type":66,"tag":156,"props":354,"children":355},{"style":252},[356],{"type":78,"value":357},"=",{"type":66,"tag":156,"props":359,"children":360},{"style":252},[361],{"type":78,"value":362},"\"",{"type":66,"tag":156,"props":364,"children":365},{"style":169},[366],{"type":78,"value":367},"https://example.supabase.co",{"type":66,"tag":156,"props":369,"children":370},{"style":252},[371],{"type":78,"value":372},"\"\n",{"type":66,"tag":156,"props":374,"children":375},{"class":158,"line":258},[376,380,384,388,393],{"type":66,"tag":156,"props":377,"children":378},{"style":246},[379],{"type":78,"value":329},{"type":66,"tag":156,"props":381,"children":382},{"style":252},[383],{"type":78,"value":357},{"type":66,"tag":156,"props":385,"children":386},{"style":252},[387],{"type":78,"value":362},{"type":66,"tag":156,"props":389,"children":390},{"style":169},[391],{"type":78,"value":392},"\u003Cyour_key>",{"type":66,"tag":156,"props":394,"children":395},{"style":252},[396],{"type":78,"value":372},{"type":66,"tag":106,"props":398,"children":400},{"icon":399},"i-heroicons-light-bulb",[401],{"type":66,"tag":67,"props":402,"children":403},{},[404,406,412],{"type":78,"value":405},"Alternatively, you can prefix the env variables with ",{"type":66,"tag":138,"props":407,"children":409},{"className":408},[],[410],{"type":78,"value":411},"NUXT_PUBLIC_",{"type":78,"value":413}," in order to use runtimeConfig.",{"type":66,"tag":126,"props":415,"children":417},{"id":416},"options",[418],{"type":78,"value":419},"Options",{"type":66,"tag":67,"props":421,"children":422},{},[423,425,431,433,439],{"type":78,"value":424},"You can configure the supabase module by using the ",{"type":66,"tag":138,"props":426,"children":428},{"className":427},[],[429],{"type":78,"value":430},"supabase",{"type":78,"value":432}," key in ",{"type":66,"tag":138,"props":434,"children":436},{"className":435},[],[437],{"type":78,"value":438},"nuxt.config",{"type":78,"value":214},{"type":66,"tag":146,"props":441,"children":443},{"className":217,"code":442,"filename":212,"language":219,"meta":59,"style":59},"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n",[444],{"type":66,"tag":138,"props":445,"children":446},{"__ignoreMap":59},[447,470,479,496,505,514],{"type":66,"tag":156,"props":448,"children":449},{"class":158,"line":159},[450,454,458,462,466],{"type":66,"tag":156,"props":451,"children":452},{"style":229},[453],{"type":78,"value":232},{"type":66,"tag":156,"props":455,"children":456},{"style":229},[457],{"type":78,"value":237},{"type":66,"tag":156,"props":459,"children":460},{"style":240},[461],{"type":78,"value":243},{"type":66,"tag":156,"props":463,"children":464},{"style":246},[465],{"type":78,"value":249},{"type":66,"tag":156,"props":467,"children":468},{"style":252},[469],{"type":78,"value":255},{"type":66,"tag":156,"props":471,"children":472},{"class":158,"line":258},[473],{"type":66,"tag":156,"props":474,"children":476},{"style":475},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[477],{"type":78,"value":478}," // ...\n",{"type":66,"tag":156,"props":480,"children":481},{"class":158,"line":300},[482,487,491],{"type":66,"tag":156,"props":483,"children":484},{"style":262},[485],{"type":78,"value":486}," supabase",{"type":66,"tag":156,"props":488,"children":489},{"style":252},[490],{"type":78,"value":214},{"type":66,"tag":156,"props":492,"children":493},{"style":252},[494],{"type":78,"value":495}," {\n",{"type":66,"tag":156,"props":497,"children":499},{"class":158,"line":498},4,[500],{"type":66,"tag":156,"props":501,"children":502},{"style":475},[503],{"type":78,"value":504}," // Options\n",{"type":66,"tag":156,"props":506,"children":508},{"class":158,"line":507},5,[509],{"type":66,"tag":156,"props":510,"children":511},{"style":252},[512],{"type":78,"value":513}," }\n",{"type":66,"tag":156,"props":515,"children":517},{"class":158,"line":516},6,[518],{"type":66,"tag":156,"props":519,"children":520},{"style":252},[521],{"type":78,"value":522},"}\n",{"type":66,"tag":524,"props":525,"children":527},"h3",{"id":526},"url",[528],{"type":66,"tag":138,"props":529,"children":531},{"className":530},[],[532],{"type":78,"value":526},{"type":66,"tag":67,"props":534,"children":535},{},[536,538,544,546,551],{"type":78,"value":537},"Default: ",{"type":66,"tag":138,"props":539,"children":541},{"className":540},[],[542],{"type":78,"value":543},"process.env.SUPABASE_URL",{"type":78,"value":545}," (ex: ",{"type":66,"tag":71,"props":547,"children":549},{"href":367,"rel":548},[75],[550],{"type":78,"value":367},{"type":78,"value":552},")",{"type":66,"tag":67,"props":554,"children":555},{},[556],{"type":78,"value":557},"The unique Supabase URL which is supplied when you create a new project in your project dashboard.",{"type":66,"tag":524,"props":559,"children":561},{"id":560},"key",[562],{"type":66,"tag":138,"props":563,"children":565},{"className":564},[],[566],{"type":78,"value":560},{"type":66,"tag":67,"props":568,"children":569},{},[570,571],{"type":78,"value":537},{"type":66,"tag":138,"props":572,"children":574},{"className":573},[],[575],{"type":78,"value":576},"process.env.SUPABASE_KEY",{"type":66,"tag":67,"props":578,"children":579},{},[580],{"type":78,"value":581},"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies.",{"type":66,"tag":524,"props":583,"children":585},{"id":584},"servicekey",[586],{"type":66,"tag":138,"props":587,"children":589},{"className":588},[],[590],{"type":78,"value":591},"serviceKey",{"type":66,"tag":67,"props":593,"children":594},{},[595,596],{"type":78,"value":537},{"type":66,"tag":138,"props":597,"children":599},{"className":598},[],[600],{"type":78,"value":601},"process.env.SUPABASE_SERVICE_KEY",{"type":66,"tag":67,"props":603,"children":604},{},[605],{"type":78,"value":606},"Supabase 'service role key', has super admin rights and can bypass your Row Level Security.",{"type":66,"tag":524,"props":608,"children":610},{"id":609},"redirect",[611],{"type":66,"tag":138,"props":612,"children":614},{"className":613},[],[615],{"type":78,"value":609},{"type":66,"tag":67,"props":617,"children":618},{},[619,620],{"type":78,"value":537},{"type":66,"tag":138,"props":621,"children":623},{"className":622},[],[624],{"type":78,"value":625},"true",{"type":66,"tag":67,"props":627,"children":628},{},[629],{"type":78,"value":630},"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false.",{"type":66,"tag":524,"props":632,"children":634},{"id":633},"redirectoptions",[635],{"type":66,"tag":138,"props":636,"children":638},{"className":637},[],[639],{"type":78,"value":640},"redirectOptions",{"type":66,"tag":67,"props":642,"children":643},{},[644],{"type":78,"value":645},"Default:",{"type":66,"tag":146,"props":647,"children":649},{"className":217,"code":648,"filename":212,"language":219,"meta":59,"style":59}," redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n",[650],{"type":66,"tag":138,"props":651,"children":652},{"__ignoreMap":59},[653,669,699,728,745,766,788],{"type":66,"tag":156,"props":654,"children":655},{"class":158,"line":159},[656,661,665],{"type":66,"tag":156,"props":657,"children":658},{"style":163},[659],{"type":78,"value":660}," redirectOptions",{"type":66,"tag":156,"props":662,"children":663},{"style":252},[664],{"type":78,"value":214},{"type":66,"tag":156,"props":666,"children":667},{"style":252},[668],{"type":78,"value":495},{"type":66,"tag":156,"props":670,"children":671},{"class":158,"line":258},[672,677,681,686,691,695],{"type":66,"tag":156,"props":673,"children":674},{"style":163},[675],{"type":78,"value":676}," login",{"type":66,"tag":156,"props":678,"children":679},{"style":252},[680],{"type":78,"value":214},{"type":66,"tag":156,"props":682,"children":683},{"style":252},[684],{"type":78,"value":685}," '",{"type":66,"tag":156,"props":687,"children":688},{"style":169},[689],{"type":78,"value":690},"/login",{"type":66,"tag":156,"props":692,"children":693},{"style":252},[694],{"type":78,"value":279},{"type":66,"tag":156,"props":696,"children":697},{"style":252},[698],{"type":78,"value":297},{"type":66,"tag":156,"props":700,"children":701},{"class":158,"line":300},[702,707,711,715,720,724],{"type":66,"tag":156,"props":703,"children":704},{"style":163},[705],{"type":78,"value":706}," callback",{"type":66,"tag":156,"props":708,"children":709},{"style":252},[710],{"type":78,"value":214},{"type":66,"tag":156,"props":712,"children":713},{"style":252},[714],{"type":78,"value":685},{"type":66,"tag":156,"props":716,"children":717},{"style":169},[718],{"type":78,"value":719},"/confirm",{"type":66,"tag":156,"props":721,"children":722},{"style":252},[723],{"type":78,"value":279},{"type":66,"tag":156,"props":725,"children":726},{"style":252},[727],{"type":78,"value":297},{"type":66,"tag":156,"props":729,"children":730},{"class":158,"line":498},[731,736,740],{"type":66,"tag":156,"props":732,"children":733},{"style":163},[734],{"type":78,"value":735}," include",{"type":66,"tag":156,"props":737,"children":738},{"style":252},[739],{"type":78,"value":214},{"type":66,"tag":156,"props":741,"children":742},{"style":252},[743],{"type":78,"value":744}," undefined,\n",{"type":66,"tag":156,"props":746,"children":747},{"class":158,"line":507},[748,753,757,762],{"type":66,"tag":156,"props":749,"children":750},{"style":163},[751],{"type":78,"value":752}," exclude",{"type":66,"tag":156,"props":754,"children":755},{"style":252},[756],{"type":78,"value":214},{"type":66,"tag":156,"props":758,"children":759},{"style":262},[760],{"type":78,"value":761}," []",{"type":66,"tag":156,"props":763,"children":764},{"style":252},[765],{"type":78,"value":297},{"type":66,"tag":156,"props":767,"children":768},{"class":158,"line":516},[769,774,778,784],{"type":66,"tag":156,"props":770,"children":771},{"style":163},[772],{"type":78,"value":773}," cookieRedirect",{"type":66,"tag":156,"props":775,"children":776},{"style":252},[777],{"type":78,"value":214},{"type":66,"tag":156,"props":779,"children":781},{"style":780},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[782],{"type":78,"value":783}," false",{"type":66,"tag":156,"props":785,"children":786},{"style":252},[787],{"type":78,"value":297},{"type":66,"tag":156,"props":789,"children":791},{"class":158,"line":790},7,[792],{"type":66,"tag":156,"props":793,"children":794},{"style":252},[795],{"type":78,"value":513},{"type":66,"tag":797,"props":798,"children":799},"ul",{},[800,812,847,874,909],{"type":66,"tag":801,"props":802,"children":803},"li",{},[804,810],{"type":66,"tag":138,"props":805,"children":807},{"className":806},[],[808],{"type":78,"value":809},"login",{"type":78,"value":811},": User will be redirected to this path if not authenticated or after logout.",{"type":66,"tag":801,"props":813,"children":814},{},[815,821,823,829,831,838,840,846],{"type":66,"tag":138,"props":816,"children":818},{"className":817},[],[819],{"type":78,"value":820},"callback",{"type":78,"value":822},": This is the path the user will be redirect to after supabase login redirection. Should match configured ",{"type":66,"tag":138,"props":824,"children":826},{"className":825},[],[827],{"type":78,"value":828},"redirectTo",{"type":78,"value":830}," option of your ",{"type":66,"tag":71,"props":832,"children":835},{"href":833,"rel":834},"https://supabase.com/docs/reference/javascript/auth-signinwithoauth",[75],[836],{"type":78,"value":837},"signIn method",{"type":78,"value":839},". Should also be configured in your Supabase dashboard under ",{"type":66,"tag":138,"props":841,"children":843},{"className":842},[],[844],{"type":78,"value":845},"Authentication -> URL Configuration -> Redirect URLs",{"type":78,"value":124},{"type":66,"tag":801,"props":848,"children":849},{},[850,856,858,864,866,872],{"type":66,"tag":138,"props":851,"children":853},{"className":852},[],[854],{"type":78,"value":855},"include",{"type":78,"value":857},": Routes to include in the redirect. ",{"type":66,"tag":138,"props":859,"children":861},{"className":860},[],[862],{"type":78,"value":863},"['/admin(/*)?']",{"type":78,"value":865}," will enable the redirect only for the ",{"type":66,"tag":138,"props":867,"children":869},{"className":868},[],[870],{"type":78,"value":871},"admin",{"type":78,"value":873}," page and all sub-pages.",{"type":66,"tag":801,"props":875,"children":876},{},[877,883,885,891,893,899,901,907],{"type":66,"tag":138,"props":878,"children":880},{"className":879},[],[881],{"type":78,"value":882},"exclude",{"type":78,"value":884},": Routes to exclude from the redirect. ",{"type":66,"tag":138,"props":886,"children":888},{"className":887},[],[889],{"type":78,"value":890},"['/foo', '/bar/*']",{"type":78,"value":892}," will exclude the ",{"type":66,"tag":138,"props":894,"children":896},{"className":895},[],[897],{"type":78,"value":898},"foo",{"type":78,"value":900}," page and all pages in your ",{"type":66,"tag":138,"props":902,"children":904},{"className":903},[],[905],{"type":78,"value":906},"bar",{"type":78,"value":908}," folder.",{"type":66,"tag":801,"props":910,"children":911},{},[912,918,920,930],{"type":66,"tag":138,"props":913,"children":915},{"className":914},[],[916],{"type":78,"value":917},"cookieRedirect",{"type":78,"value":919},": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the ",{"type":66,"tag":71,"props":921,"children":924},{"href":922,"rel":923},"https://supabase.nuxtjs.org/authentication#confirm-page-confirm",[75],[925],{"type":66,"tag":138,"props":926,"children":928},{"className":927},[],[929],{"type":78,"value":719},{"type":78,"value":931}," page to redirect the user to the page they previously tried to visit.",{"type":66,"tag":524,"props":933,"children":935},{"id":934},"cookiename",[936],{"type":66,"tag":138,"props":937,"children":939},{"className":938},[],[940],{"type":78,"value":941},"cookieName",{"type":66,"tag":67,"props":943,"children":944},{},[945,946],{"type":78,"value":537},{"type":66,"tag":138,"props":947,"children":949},{"className":948},[],[950],{"type":78,"value":951},"sb",{"type":66,"tag":67,"props":953,"children":954},{},[955,957,962,964,970,972],{"type":78,"value":956},"Cookie name used for storing the redirect path when using the ",{"type":66,"tag":138,"props":958,"children":960},{"className":959},[],[961],{"type":78,"value":609},{"type":78,"value":963}," option, added in front of ",{"type":66,"tag":138,"props":965,"children":967},{"className":966},[],[968],{"type":78,"value":969},"-redirect-path",{"type":78,"value":971}," to form the full cookie name e.g. ",{"type":66,"tag":138,"props":973,"children":975},{"className":974},[],[976],{"type":78,"value":977},"sb-redirect-path",{"type":66,"tag":524,"props":979,"children":981},{"id":980},"cookieoptions",[982],{"type":66,"tag":138,"props":983,"children":985},{"className":984},[],[986],{"type":78,"value":987},"cookieOptions",{"type":66,"tag":146,"props":989,"children":991},{"className":217,"code":990,"language":219,"meta":59,"style":59}," cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n",[992],{"type":66,"tag":138,"props":993,"children":994},{"__ignoreMap":59},[995,1011,1051,1080,1097],{"type":66,"tag":156,"props":996,"children":997},{"class":158,"line":159},[998,1003,1007],{"type":66,"tag":156,"props":999,"children":1000},{"style":163},[1001],{"type":78,"value":1002}," cookieOptions",{"type":66,"tag":156,"props":1004,"children":1005},{"style":252},[1006],{"type":78,"value":214},{"type":66,"tag":156,"props":1008,"children":1009},{"style":252},[1010],{"type":78,"value":495},{"type":66,"tag":156,"props":1012,"children":1013},{"class":158,"line":258},[1014,1019,1023,1029,1034,1038,1042,1047],{"type":66,"tag":156,"props":1015,"children":1016},{"style":163},[1017],{"type":78,"value":1018}," maxAge",{"type":66,"tag":156,"props":1020,"children":1021},{"style":252},[1022],{"type":78,"value":214},{"type":66,"tag":156,"props":1024,"children":1026},{"style":1025},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[1027],{"type":78,"value":1028}," 60",{"type":66,"tag":156,"props":1030,"children":1031},{"style":252},[1032],{"type":78,"value":1033}," *",{"type":66,"tag":156,"props":1035,"children":1036},{"style":1025},[1037],{"type":78,"value":1028},{"type":66,"tag":156,"props":1039,"children":1040},{"style":252},[1041],{"type":78,"value":1033},{"type":66,"tag":156,"props":1043,"children":1044},{"style":1025},[1045],{"type":78,"value":1046}," 8",{"type":66,"tag":156,"props":1048,"children":1049},{"style":252},[1050],{"type":78,"value":297},{"type":66,"tag":156,"props":1052,"children":1053},{"class":158,"line":300},[1054,1059,1063,1067,1072,1076],{"type":66,"tag":156,"props":1055,"children":1056},{"style":163},[1057],{"type":78,"value":1058}," sameSite",{"type":66,"tag":156,"props":1060,"children":1061},{"style":252},[1062],{"type":78,"value":214},{"type":66,"tag":156,"props":1064,"children":1065},{"style":252},[1066],{"type":78,"value":685},{"type":66,"tag":156,"props":1068,"children":1069},{"style":169},[1070],{"type":78,"value":1071},"lax",{"type":66,"tag":156,"props":1073,"children":1074},{"style":252},[1075],{"type":78,"value":279},{"type":66,"tag":156,"props":1077,"children":1078},{"style":252},[1079],{"type":78,"value":297},{"type":66,"tag":156,"props":1081,"children":1082},{"class":158,"line":498},[1083,1088,1092],{"type":66,"tag":156,"props":1084,"children":1085},{"style":163},[1086],{"type":78,"value":1087}," secure",{"type":66,"tag":156,"props":1089,"children":1090},{"style":252},[1091],{"type":78,"value":214},{"type":66,"tag":156,"props":1093,"children":1094},{"style":780},[1095],{"type":78,"value":1096}," true\n",{"type":66,"tag":156,"props":1098,"children":1099},{"class":158,"line":507},[1100],{"type":66,"tag":156,"props":1101,"children":1102},{"style":252},[1103],{"type":78,"value":513},{"type":66,"tag":67,"props":1105,"children":1106},{},[1107,1109,1115],{"type":78,"value":1108},"Options for cookies used to share tokens between server and client, refer to ",{"type":66,"tag":71,"props":1110,"children":1113},{"href":1111,"rel":1112},"https://nuxt.com/docs/api/composables/use-cookie#options",[75],[1114],{"type":78,"value":987},{"type":78,"value":1116}," for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime.",{"type":66,"tag":524,"props":1118,"children":1120},{"id":1119},"types",[1121],{"type":66,"tag":138,"props":1122,"children":1124},{"className":1123},[],[1125],{"type":78,"value":1119},{"type":66,"tag":67,"props":1127,"children":1128},{},[1129,1130],{"type":78,"value":537},{"type":66,"tag":138,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":78,"value":1135},"./types/database.types.ts",{"type":66,"tag":67,"props":1137,"children":1138},{},[1139,1141,1146,1148,1153,1154,1159],{"type":78,"value":1140},"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: ",{"type":66,"tag":138,"props":1142,"children":1144},{"className":1143},[],[1145],{"type":78,"value":21},{"type":78,"value":1147},", ",{"type":66,"tag":138,"props":1149,"children":1151},{"className":1150},[],[1152],{"type":78,"value":34},{"type":78,"value":323},{"type":66,"tag":138,"props":1155,"children":1157},{"className":1156},[],[1158],{"type":78,"value":37},{"type":78,"value":124},{"type":66,"tag":146,"props":1161,"children":1163},{"className":148,"code":1162,"language":150,"meta":59,"style":59},"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n",[1164],{"type":66,"tag":138,"props":1165,"children":1166},{"__ignoreMap":59},[1167,1175,1217,1226,1234],{"type":66,"tag":156,"props":1168,"children":1169},{"class":158,"line":159},[1170],{"type":66,"tag":156,"props":1171,"children":1172},{"style":475},[1173],{"type":78,"value":1174},"## Generate types from live database\n",{"type":66,"tag":156,"props":1176,"children":1177},{"class":158,"line":258},[1178,1182,1187,1192,1197,1202,1207,1212],{"type":66,"tag":156,"props":1179,"children":1180},{"style":163},[1181],{"type":78,"value":430},{"type":66,"tag":156,"props":1183,"children":1184},{"style":169},[1185],{"type":78,"value":1186}," gen",{"type":66,"tag":156,"props":1188,"children":1189},{"style":169},[1190],{"type":78,"value":1191}," types",{"type":66,"tag":156,"props":1193,"children":1194},{"style":169},[1195],{"type":78,"value":1196}," --lang=typescript",{"type":66,"tag":156,"props":1198,"children":1199},{"style":169},[1200],{"type":78,"value":1201}," --project-id",{"type":66,"tag":156,"props":1203,"children":1204},{"style":169},[1205],{"type":78,"value":1206}," YourProjectId",{"type":66,"tag":156,"props":1208,"children":1209},{"style":252},[1210],{"type":78,"value":1211}," >",{"type":66,"tag":156,"props":1213,"children":1214},{"style":169},[1215],{"type":78,"value":1216}," types/database.types.ts\n",{"type":66,"tag":156,"props":1218,"children":1219},{"class":158,"line":300},[1220],{"type":66,"tag":156,"props":1221,"children":1223},{"emptyLinePlaceholder":1222},true,[1224],{"type":78,"value":1225},"\n",{"type":66,"tag":156,"props":1227,"children":1228},{"class":158,"line":498},[1229],{"type":66,"tag":156,"props":1230,"children":1231},{"style":475},[1232],{"type":78,"value":1233},"## Generate types when using local environment\n",{"type":66,"tag":156,"props":1235,"children":1236},{"class":158,"line":507},[1237,1241,1245,1249,1253,1258,1262],{"type":66,"tag":156,"props":1238,"children":1239},{"style":163},[1240],{"type":78,"value":430},{"type":66,"tag":156,"props":1242,"children":1243},{"style":169},[1244],{"type":78,"value":1186},{"type":66,"tag":156,"props":1246,"children":1247},{"style":169},[1248],{"type":78,"value":1191},{"type":66,"tag":156,"props":1250,"children":1251},{"style":169},[1252],{"type":78,"value":1196},{"type":66,"tag":156,"props":1254,"children":1255},{"style":169},[1256],{"type":78,"value":1257}," --local",{"type":66,"tag":156,"props":1259,"children":1260},{"style":252},[1261],{"type":78,"value":1211},{"type":66,"tag":156,"props":1263,"children":1264},{"style":169},[1265],{"type":78,"value":1216},{"type":66,"tag":67,"props":1267,"children":1268},{},[1269,1271,1277],{"type":78,"value":1270},"Set to ",{"type":66,"tag":138,"props":1272,"children":1274},{"className":1273},[],[1275],{"type":78,"value":1276},"false",{"type":78,"value":1278}," to disable.",{"type":66,"tag":67,"props":1280,"children":1281},{},[1282,1284,1291],{"type":78,"value":1283},"Check Supabase ",{"type":66,"tag":71,"props":1285,"children":1288},{"href":1286,"rel":1287},"https://supabase.com/docs/reference/javascript/release-notes#typescript-support",[75],[1289],{"type":78,"value":1290},"documentation",{"type":78,"value":1292}," for further information.",{"type":66,"tag":524,"props":1294,"children":1296},{"id":1295},"clientoptions",[1297],{"type":66,"tag":138,"props":1298,"children":1300},{"className":1299},[],[1301],{"type":78,"value":1302},"clientOptions",{"type":66,"tag":67,"props":1304,"children":1305},{},[1306],{"type":78,"value":645},{"type":66,"tag":146,"props":1308,"children":1310},{"className":217,"code":1309,"language":219,"meta":59,"style":59}," clientOptions: { }\n",[1311],{"type":66,"tag":138,"props":1312,"children":1313},{"__ignoreMap":59},[1314],{"type":66,"tag":156,"props":1315,"children":1316},{"class":158,"line":159},[1317,1322,1326,1331],{"type":66,"tag":156,"props":1318,"children":1319},{"style":163},[1320],{"type":78,"value":1321}," clientOptions",{"type":66,"tag":156,"props":1323,"children":1324},{"style":252},[1325],{"type":78,"value":214},{"type":66,"tag":156,"props":1327,"children":1328},{"style":252},[1329],{"type":78,"value":1330}," {",{"type":66,"tag":156,"props":1332,"children":1333},{"style":252},[1334],{"type":78,"value":1335}," }\n",{"type":66,"tag":67,"props":1337,"children":1338},{},[1339,1341,1348,1350,1356],{"type":78,"value":1340},"Supabase client options ",{"type":66,"tag":71,"props":1342,"children":1345},{"href":1343,"rel":1344},"https://supabase.com/docs/reference/javascript/initializing#parameters",[75],[1346],{"type":78,"value":1347},"available here",{"type":78,"value":1349}," merged with default values from ",{"type":66,"tag":138,"props":1351,"children":1353},{"className":1352},[],[1354],{"type":78,"value":1355},"@supabase/ssr",{"type":78,"value":214},{"type":66,"tag":146,"props":1358,"children":1360},{"className":217,"code":1359,"language":219,"meta":59,"style":59}," clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n",[1361],{"type":66,"tag":138,"props":1362,"children":1363},{"__ignoreMap":59},[1364,1379,1395,1424,1450,1474,1495,1503],{"type":66,"tag":156,"props":1365,"children":1366},{"class":158,"line":159},[1367,1371,1375],{"type":66,"tag":156,"props":1368,"children":1369},{"style":163},[1370],{"type":78,"value":1321},{"type":66,"tag":156,"props":1372,"children":1373},{"style":252},[1374],{"type":78,"value":214},{"type":66,"tag":156,"props":1376,"children":1377},{"style":252},[1378],{"type":78,"value":495},{"type":66,"tag":156,"props":1380,"children":1381},{"class":158,"line":258},[1382,1387,1391],{"type":66,"tag":156,"props":1383,"children":1384},{"style":163},[1385],{"type":78,"value":1386}," auth",{"type":66,"tag":156,"props":1388,"children":1389},{"style":252},[1390],{"type":78,"value":214},{"type":66,"tag":156,"props":1392,"children":1393},{"style":252},[1394],{"type":78,"value":495},{"type":66,"tag":156,"props":1396,"children":1397},{"class":158,"line":300},[1398,1403,1407,1411,1416,1420],{"type":66,"tag":156,"props":1399,"children":1400},{"style":163},[1401],{"type":78,"value":1402}," flowType",{"type":66,"tag":156,"props":1404,"children":1405},{"style":252},[1406],{"type":78,"value":214},{"type":66,"tag":156,"props":1408,"children":1409},{"style":252},[1410],{"type":78,"value":685},{"type":66,"tag":156,"props":1412,"children":1413},{"style":169},[1414],{"type":78,"value":1415},"pkce",{"type":66,"tag":156,"props":1417,"children":1418},{"style":252},[1419],{"type":78,"value":279},{"type":66,"tag":156,"props":1421,"children":1422},{"style":252},[1423],{"type":78,"value":297},{"type":66,"tag":156,"props":1425,"children":1426},{"class":158,"line":498},[1427,1432,1436,1441,1446],{"type":66,"tag":156,"props":1428,"children":1429},{"style":163},[1430],{"type":78,"value":1431}," autoRefreshToken",{"type":66,"tag":156,"props":1433,"children":1434},{"style":252},[1435],{"type":78,"value":214},{"type":66,"tag":156,"props":1437,"children":1438},{"style":240},[1439],{"type":78,"value":1440}," isBrowser",{"type":66,"tag":156,"props":1442,"children":1443},{"style":262},[1444],{"type":78,"value":1445},"()",{"type":66,"tag":156,"props":1447,"children":1448},{"style":252},[1449],{"type":78,"value":297},{"type":66,"tag":156,"props":1451,"children":1452},{"class":158,"line":507},[1453,1458,1462,1466,1470],{"type":66,"tag":156,"props":1454,"children":1455},{"style":163},[1456],{"type":78,"value":1457}," detectSessionInUrl",{"type":66,"tag":156,"props":1459,"children":1460},{"style":252},[1461],{"type":78,"value":214},{"type":66,"tag":156,"props":1463,"children":1464},{"style":240},[1465],{"type":78,"value":1440},{"type":66,"tag":156,"props":1467,"children":1468},{"style":262},[1469],{"type":78,"value":1445},{"type":66,"tag":156,"props":1471,"children":1472},{"style":252},[1473],{"type":78,"value":297},{"type":66,"tag":156,"props":1475,"children":1476},{"class":158,"line":516},[1477,1482,1486,1491],{"type":66,"tag":156,"props":1478,"children":1479},{"style":163},[1480],{"type":78,"value":1481}," persistSession",{"type":66,"tag":156,"props":1483,"children":1484},{"style":252},[1485],{"type":78,"value":214},{"type":66,"tag":156,"props":1487,"children":1488},{"style":780},[1489],{"type":78,"value":1490}," true",{"type":66,"tag":156,"props":1492,"children":1493},{"style":252},[1494],{"type":78,"value":297},{"type":66,"tag":156,"props":1496,"children":1497},{"class":158,"line":790},[1498],{"type":66,"tag":156,"props":1499,"children":1500},{"style":252},[1501],{"type":78,"value":1502}," },\n",{"type":66,"tag":156,"props":1504,"children":1506},{"class":158,"line":1505},8,[1507],{"type":66,"tag":156,"props":1508,"children":1509},{"style":252},[1510],{"type":78,"value":513},{"type":66,"tag":126,"props":1512,"children":1514},{"id":1513},"demo",[1515],{"type":78,"value":47},{"type":66,"tag":67,"props":1517,"children":1518},{},[1519,1521,1528,1530,1535],{"type":78,"value":1520},"A live demo is made for see this module in action on ",{"type":66,"tag":71,"props":1522,"children":1525},{"href":1523,"rel":1524},"https://n3-supabase.netlify.app",[75],[1526],{"type":78,"value":1527},"n3-supabase.netlify.app",{"type":78,"value":1529},", read more in the ",{"type":66,"tag":71,"props":1531,"children":1532},{"href":48},[1533],{"type":78,"value":1534},"demo section",{"type":78,"value":124},{"type":66,"tag":67,"props":1537,"children":1538},{},[1539],{"type":66,"tag":71,"props":1540,"children":1542},{"href":1523,"rel":1541},[75],[1543],{"type":66,"tag":1544,"props":1545,"children":1548},"img",{"alt":1546,"src":1547},"Supabase demo with Nuxt 3","https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png",[],{"type":66,"tag":67,"props":1550,"children":1551},{},[1552,1554,1561],{"type":78,"value":1553},"Also checkout the ",{"type":66,"tag":71,"props":1555,"children":1558},{"href":1556,"rel":1557},"https://www.youtube.com/watch?v=jIyiRT6zT8Q",[75],[1559],{"type":78,"value":1560},"YouTube video",{"type":78,"value":1562}," about its usage in a live demo.",{"type":66,"tag":1564,"props":1565,"children":1566},"style",{},[1567],{"type":78,"value":1568},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":59,"searchDepth":258,"depth":258,"links":1570},[1571,1572,1583],{"id":128,"depth":258,"text":131},{"id":416,"depth":258,"text":419,"children":1573},[1574,1575,1576,1577,1578,1579,1580,1581,1582],{"id":526,"depth":300,"text":526},{"id":560,"depth":300,"text":560},{"id":584,"depth":300,"text":591},{"id":609,"depth":300,"text":609},{"id":633,"depth":300,"text":640},{"id":934,"depth":300,"text":941},{"id":980,"depth":300,"text":987},{"id":1119,"depth":300,"text":1119},{"id":1295,"depth":300,"text":1302},{"id":1513,"depth":258,"text":47},"markdown","content:2.get-started.md","content","2.get-started.md","2.get-started","md",[1591,1592],null,{"_path":10,"title":9,"description":1593},"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server",1733842351854] \ No newline at end of file +[{"data":1,"prerenderedAt":1594},["ShallowReactive",2],{"navigation":3,"/get-started":58,"/get-started-surround":1590},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":6,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":5,"description":61,"icon":7,"body":62,"_type":1584,"_id":1585,"_source":1586,"_file":1587,"_stem":1588,"_extension":1589},"",false,"@nuxtjs/supabase is a Nuxt module for first class integration with Supabase.",{"type":63,"children":64,"toc":1569},"root",[65,82,105,125,132,145,188,215,312,338,397,414,420,440,523,533,553,558,567,577,582,592,602,607,616,626,631,641,646,796,932,942,952,978,988,1104,1117,1126,1136,1160,1266,1279,1293,1303,1307,1336,1357,1511,1516,1536,1549,1563],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70,80],{"type":66,"tag":71,"props":72,"children":76},"a",{"href":73,"rel":74},"https://github.com/nuxt-modules/supabase",[75],"nofollow",[77],{"type":78,"value":79},"text","@nuxtjs/supabase",{"type":78,"value":81}," is a Nuxt module for first class integration with Supabase.",{"type":66,"tag":67,"props":83,"children":84},{},[85,87,94,96,103],{"type":78,"value":86},"Checkout the ",{"type":66,"tag":71,"props":88,"children":91},{"href":89,"rel":90},"https://v3.nuxtjs.org",[75],[92],{"type":78,"value":93},"Nuxt 3",{"type":78,"value":95}," documentation and ",{"type":66,"tag":71,"props":97,"children":100},{"href":98,"rel":99},"https://supabase.com",[75],[101],{"type":78,"value":102},"Supabase",{"type":78,"value":104}," to learn more.",{"type":66,"tag":106,"props":107,"children":110},"callout",{"icon":108,"color":109},"i-heroicons-exclamation-triangle-20-solid","amber",[111],{"type":66,"tag":67,"props":112,"children":113},{},[114,116,123],{"type":78,"value":115},"For integrating Supabase with Nuxt 2, checkout ",{"type":66,"tag":71,"props":117,"children":120},{"href":118,"rel":119},"https://github.com/supabase-community/nuxt-supabase",[75],[121],{"type":78,"value":122},"supabase-community/nuxt-supabase",{"type":78,"value":124},".",{"type":66,"tag":126,"props":127,"children":129},"h2",{"id":128},"installation",[130],{"type":78,"value":131},"Installation",{"type":66,"tag":67,"props":133,"children":134},{},[135,137,143],{"type":78,"value":136},"Add ",{"type":66,"tag":138,"props":139,"children":141},"code",{"className":140},[],[142],{"type":78,"value":79},{"type":78,"value":144}," dev dependency to your project:",{"type":66,"tag":146,"props":147,"children":151},"pre",{"className":148,"code":149,"language":150,"meta":59,"style":59},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx nuxi@latest module add supabase\n","bash",[152],{"type":66,"tag":138,"props":153,"children":154},{"__ignoreMap":59},[155],{"type":66,"tag":156,"props":157,"children":160},"span",{"class":158,"line":159},"line",1,[161,167,173,178,183],{"type":66,"tag":156,"props":162,"children":164},{"style":163},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[165],{"type":78,"value":166},"npx",{"type":66,"tag":156,"props":168,"children":170},{"style":169},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[171],{"type":78,"value":172}," nuxi@latest",{"type":66,"tag":156,"props":174,"children":175},{"style":169},[176],{"type":78,"value":177}," module",{"type":66,"tag":156,"props":179,"children":180},{"style":169},[181],{"type":78,"value":182}," add",{"type":66,"tag":156,"props":184,"children":185},{"style":169},[186],{"type":78,"value":187}," supabase\n",{"type":66,"tag":67,"props":189,"children":190},{},[191,192,197,199,205,207,213],{"type":78,"value":136},{"type":66,"tag":138,"props":193,"children":195},{"className":194},[],[196],{"type":78,"value":79},{"type":78,"value":198}," to the ",{"type":66,"tag":138,"props":200,"children":202},{"className":201},[],[203],{"type":78,"value":204},"modules",{"type":78,"value":206}," section of ",{"type":66,"tag":138,"props":208,"children":210},{"className":209},[],[211],{"type":78,"value":212},"nuxt.config.ts",{"type":78,"value":214},":",{"type":66,"tag":146,"props":216,"children":220},{"className":217,"code":218,"filename":212,"language":219,"meta":59,"style":59},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n modules: ['@nuxtjs/supabase'],\n})\n","ts",[221],{"type":66,"tag":138,"props":222,"children":223},{"__ignoreMap":59},[224,256,298],{"type":66,"tag":156,"props":225,"children":226},{"class":158,"line":159},[227,233,238,244,250],{"type":66,"tag":156,"props":228,"children":230},{"style":229},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[231],{"type":78,"value":232},"export",{"type":66,"tag":156,"props":234,"children":235},{"style":229},[236],{"type":78,"value":237}," default",{"type":66,"tag":156,"props":239,"children":241},{"style":240},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[242],{"type":78,"value":243}," defineNuxtConfig",{"type":66,"tag":156,"props":245,"children":247},{"style":246},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[248],{"type":78,"value":249},"(",{"type":66,"tag":156,"props":251,"children":253},{"style":252},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[254],{"type":78,"value":255},"{\n",{"type":66,"tag":156,"props":257,"children":259},{"class":158,"line":258},2,[260,266,270,275,280,284,288,293],{"type":66,"tag":156,"props":261,"children":263},{"style":262},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[264],{"type":78,"value":265}," modules",{"type":66,"tag":156,"props":267,"children":268},{"style":252},[269],{"type":78,"value":214},{"type":66,"tag":156,"props":271,"children":272},{"style":246},[273],{"type":78,"value":274}," [",{"type":66,"tag":156,"props":276,"children":277},{"style":252},[278],{"type":78,"value":279},"'",{"type":66,"tag":156,"props":281,"children":282},{"style":169},[283],{"type":78,"value":79},{"type":66,"tag":156,"props":285,"children":286},{"style":252},[287],{"type":78,"value":279},{"type":66,"tag":156,"props":289,"children":290},{"style":246},[291],{"type":78,"value":292},"]",{"type":66,"tag":156,"props":294,"children":295},{"style":252},[296],{"type":78,"value":297},",\n",{"type":66,"tag":156,"props":299,"children":301},{"class":158,"line":300},3,[302,307],{"type":66,"tag":156,"props":303,"children":304},{"style":252},[305],{"type":78,"value":306},"}",{"type":66,"tag":156,"props":308,"children":309},{"style":246},[310],{"type":78,"value":311},")\n",{"type":66,"tag":67,"props":313,"children":314},{},[315,316,322,324,330,331,337],{"type":78,"value":136},{"type":66,"tag":138,"props":317,"children":319},{"className":318},[],[320],{"type":78,"value":321},"SUPABASE_URL",{"type":78,"value":323}," and ",{"type":66,"tag":138,"props":325,"children":327},{"className":326},[],[328],{"type":78,"value":329},"SUPABASE_KEY",{"type":78,"value":198},{"type":66,"tag":138,"props":332,"children":334},{"className":333},[],[335],{"type":78,"value":336},".env",{"type":78,"value":214},{"type":66,"tag":146,"props":339,"children":342},{"className":148,"code":340,"filename":341,"language":150,"meta":59,"style":59},"SUPABASE_URL=\"https://example.supabase.co\"\nSUPABASE_KEY=\"\u003Cyour_key>\"\n","env",[343],{"type":66,"tag":138,"props":344,"children":345},{"__ignoreMap":59},[346,373],{"type":66,"tag":156,"props":347,"children":348},{"class":158,"line":159},[349,353,358,363,368],{"type":66,"tag":156,"props":350,"children":351},{"style":246},[352],{"type":78,"value":321},{"type":66,"tag":156,"props":354,"children":355},{"style":252},[356],{"type":78,"value":357},"=",{"type":66,"tag":156,"props":359,"children":360},{"style":252},[361],{"type":78,"value":362},"\"",{"type":66,"tag":156,"props":364,"children":365},{"style":169},[366],{"type":78,"value":367},"https://example.supabase.co",{"type":66,"tag":156,"props":369,"children":370},{"style":252},[371],{"type":78,"value":372},"\"\n",{"type":66,"tag":156,"props":374,"children":375},{"class":158,"line":258},[376,380,384,388,393],{"type":66,"tag":156,"props":377,"children":378},{"style":246},[379],{"type":78,"value":329},{"type":66,"tag":156,"props":381,"children":382},{"style":252},[383],{"type":78,"value":357},{"type":66,"tag":156,"props":385,"children":386},{"style":252},[387],{"type":78,"value":362},{"type":66,"tag":156,"props":389,"children":390},{"style":169},[391],{"type":78,"value":392},"\u003Cyour_key>",{"type":66,"tag":156,"props":394,"children":395},{"style":252},[396],{"type":78,"value":372},{"type":66,"tag":106,"props":398,"children":400},{"icon":399},"i-heroicons-light-bulb",[401],{"type":66,"tag":67,"props":402,"children":403},{},[404,406,412],{"type":78,"value":405},"Alternatively, you can prefix the env variables with ",{"type":66,"tag":138,"props":407,"children":409},{"className":408},[],[410],{"type":78,"value":411},"NUXT_PUBLIC_",{"type":78,"value":413}," in order to use runtimeConfig.",{"type":66,"tag":126,"props":415,"children":417},{"id":416},"options",[418],{"type":78,"value":419},"Options",{"type":66,"tag":67,"props":421,"children":422},{},[423,425,431,433,439],{"type":78,"value":424},"You can configure the supabase module by using the ",{"type":66,"tag":138,"props":426,"children":428},{"className":427},[],[429],{"type":78,"value":430},"supabase",{"type":78,"value":432}," key in ",{"type":66,"tag":138,"props":434,"children":436},{"className":435},[],[437],{"type":78,"value":438},"nuxt.config",{"type":78,"value":214},{"type":66,"tag":146,"props":441,"children":443},{"className":217,"code":442,"filename":212,"language":219,"meta":59,"style":59},"export default defineNuxtConfig({\n // ...\n supabase: {\n // Options\n }\n}\n",[444],{"type":66,"tag":138,"props":445,"children":446},{"__ignoreMap":59},[447,470,479,496,505,514],{"type":66,"tag":156,"props":448,"children":449},{"class":158,"line":159},[450,454,458,462,466],{"type":66,"tag":156,"props":451,"children":452},{"style":229},[453],{"type":78,"value":232},{"type":66,"tag":156,"props":455,"children":456},{"style":229},[457],{"type":78,"value":237},{"type":66,"tag":156,"props":459,"children":460},{"style":240},[461],{"type":78,"value":243},{"type":66,"tag":156,"props":463,"children":464},{"style":246},[465],{"type":78,"value":249},{"type":66,"tag":156,"props":467,"children":468},{"style":252},[469],{"type":78,"value":255},{"type":66,"tag":156,"props":471,"children":472},{"class":158,"line":258},[473],{"type":66,"tag":156,"props":474,"children":476},{"style":475},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[477],{"type":78,"value":478}," // ...\n",{"type":66,"tag":156,"props":480,"children":481},{"class":158,"line":300},[482,487,491],{"type":66,"tag":156,"props":483,"children":484},{"style":262},[485],{"type":78,"value":486}," supabase",{"type":66,"tag":156,"props":488,"children":489},{"style":252},[490],{"type":78,"value":214},{"type":66,"tag":156,"props":492,"children":493},{"style":252},[494],{"type":78,"value":495}," {\n",{"type":66,"tag":156,"props":497,"children":499},{"class":158,"line":498},4,[500],{"type":66,"tag":156,"props":501,"children":502},{"style":475},[503],{"type":78,"value":504}," // Options\n",{"type":66,"tag":156,"props":506,"children":508},{"class":158,"line":507},5,[509],{"type":66,"tag":156,"props":510,"children":511},{"style":252},[512],{"type":78,"value":513}," }\n",{"type":66,"tag":156,"props":515,"children":517},{"class":158,"line":516},6,[518],{"type":66,"tag":156,"props":519,"children":520},{"style":252},[521],{"type":78,"value":522},"}\n",{"type":66,"tag":524,"props":525,"children":527},"h3",{"id":526},"url",[528],{"type":66,"tag":138,"props":529,"children":531},{"className":530},[],[532],{"type":78,"value":526},{"type":66,"tag":67,"props":534,"children":535},{},[536,538,544,546,551],{"type":78,"value":537},"Default: ",{"type":66,"tag":138,"props":539,"children":541},{"className":540},[],[542],{"type":78,"value":543},"process.env.SUPABASE_URL",{"type":78,"value":545}," (ex: ",{"type":66,"tag":71,"props":547,"children":549},{"href":367,"rel":548},[75],[550],{"type":78,"value":367},{"type":78,"value":552},")",{"type":66,"tag":67,"props":554,"children":555},{},[556],{"type":78,"value":557},"The unique Supabase URL which is supplied when you create a new project in your project dashboard.",{"type":66,"tag":524,"props":559,"children":561},{"id":560},"key",[562],{"type":66,"tag":138,"props":563,"children":565},{"className":564},[],[566],{"type":78,"value":560},{"type":66,"tag":67,"props":568,"children":569},{},[570,571],{"type":78,"value":537},{"type":66,"tag":138,"props":572,"children":574},{"className":573},[],[575],{"type":78,"value":576},"process.env.SUPABASE_KEY",{"type":66,"tag":67,"props":578,"children":579},{},[580],{"type":78,"value":581},"Supabase 'anon key', used to bypass the Supabase API gateway and interact with your Supabase database making use of user JWT to apply RLS Policies.",{"type":66,"tag":524,"props":583,"children":585},{"id":584},"servicekey",[586],{"type":66,"tag":138,"props":587,"children":589},{"className":588},[],[590],{"type":78,"value":591},"serviceKey",{"type":66,"tag":67,"props":593,"children":594},{},[595,596],{"type":78,"value":537},{"type":66,"tag":138,"props":597,"children":599},{"className":598},[],[600],{"type":78,"value":601},"process.env.SUPABASE_SERVICE_KEY",{"type":66,"tag":67,"props":603,"children":604},{},[605],{"type":78,"value":606},"Supabase 'service role key', has super admin rights and can bypass your Row Level Security.",{"type":66,"tag":524,"props":608,"children":610},{"id":609},"redirect",[611],{"type":66,"tag":138,"props":612,"children":614},{"className":613},[],[615],{"type":78,"value":609},{"type":66,"tag":67,"props":617,"children":618},{},[619,620],{"type":78,"value":537},{"type":66,"tag":138,"props":621,"children":623},{"className":622},[],[624],{"type":78,"value":625},"true",{"type":66,"tag":67,"props":627,"children":628},{},[629],{"type":78,"value":630},"Redirect automatically to the configured login page if a non authenticated user is trying to access a guarded. You can disable all redirects by setting this option to false.",{"type":66,"tag":524,"props":632,"children":634},{"id":633},"redirectoptions",[635],{"type":66,"tag":138,"props":636,"children":638},{"className":637},[],[639],{"type":78,"value":640},"redirectOptions",{"type":66,"tag":67,"props":642,"children":643},{},[644],{"type":78,"value":645},"Default:",{"type":66,"tag":146,"props":647,"children":649},{"className":217,"code":648,"filename":212,"language":219,"meta":59,"style":59}," redirectOptions: {\n login: '/login',\n callback: '/confirm',\n include: undefined,\n exclude: [],\n cookieRedirect: false,\n }\n",[650],{"type":66,"tag":138,"props":651,"children":652},{"__ignoreMap":59},[653,669,699,728,745,766,788],{"type":66,"tag":156,"props":654,"children":655},{"class":158,"line":159},[656,661,665],{"type":66,"tag":156,"props":657,"children":658},{"style":163},[659],{"type":78,"value":660}," redirectOptions",{"type":66,"tag":156,"props":662,"children":663},{"style":252},[664],{"type":78,"value":214},{"type":66,"tag":156,"props":666,"children":667},{"style":252},[668],{"type":78,"value":495},{"type":66,"tag":156,"props":670,"children":671},{"class":158,"line":258},[672,677,681,686,691,695],{"type":66,"tag":156,"props":673,"children":674},{"style":163},[675],{"type":78,"value":676}," login",{"type":66,"tag":156,"props":678,"children":679},{"style":252},[680],{"type":78,"value":214},{"type":66,"tag":156,"props":682,"children":683},{"style":252},[684],{"type":78,"value":685}," '",{"type":66,"tag":156,"props":687,"children":688},{"style":169},[689],{"type":78,"value":690},"/login",{"type":66,"tag":156,"props":692,"children":693},{"style":252},[694],{"type":78,"value":279},{"type":66,"tag":156,"props":696,"children":697},{"style":252},[698],{"type":78,"value":297},{"type":66,"tag":156,"props":700,"children":701},{"class":158,"line":300},[702,707,711,715,720,724],{"type":66,"tag":156,"props":703,"children":704},{"style":163},[705],{"type":78,"value":706}," callback",{"type":66,"tag":156,"props":708,"children":709},{"style":252},[710],{"type":78,"value":214},{"type":66,"tag":156,"props":712,"children":713},{"style":252},[714],{"type":78,"value":685},{"type":66,"tag":156,"props":716,"children":717},{"style":169},[718],{"type":78,"value":719},"/confirm",{"type":66,"tag":156,"props":721,"children":722},{"style":252},[723],{"type":78,"value":279},{"type":66,"tag":156,"props":725,"children":726},{"style":252},[727],{"type":78,"value":297},{"type":66,"tag":156,"props":729,"children":730},{"class":158,"line":498},[731,736,740],{"type":66,"tag":156,"props":732,"children":733},{"style":163},[734],{"type":78,"value":735}," include",{"type":66,"tag":156,"props":737,"children":738},{"style":252},[739],{"type":78,"value":214},{"type":66,"tag":156,"props":741,"children":742},{"style":252},[743],{"type":78,"value":744}," undefined,\n",{"type":66,"tag":156,"props":746,"children":747},{"class":158,"line":507},[748,753,757,762],{"type":66,"tag":156,"props":749,"children":750},{"style":163},[751],{"type":78,"value":752}," exclude",{"type":66,"tag":156,"props":754,"children":755},{"style":252},[756],{"type":78,"value":214},{"type":66,"tag":156,"props":758,"children":759},{"style":262},[760],{"type":78,"value":761}," []",{"type":66,"tag":156,"props":763,"children":764},{"style":252},[765],{"type":78,"value":297},{"type":66,"tag":156,"props":767,"children":768},{"class":158,"line":516},[769,774,778,784],{"type":66,"tag":156,"props":770,"children":771},{"style":163},[772],{"type":78,"value":773}," cookieRedirect",{"type":66,"tag":156,"props":775,"children":776},{"style":252},[777],{"type":78,"value":214},{"type":66,"tag":156,"props":779,"children":781},{"style":780},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[782],{"type":78,"value":783}," false",{"type":66,"tag":156,"props":785,"children":786},{"style":252},[787],{"type":78,"value":297},{"type":66,"tag":156,"props":789,"children":791},{"class":158,"line":790},7,[792],{"type":66,"tag":156,"props":793,"children":794},{"style":252},[795],{"type":78,"value":513},{"type":66,"tag":797,"props":798,"children":799},"ul",{},[800,812,847,874,909],{"type":66,"tag":801,"props":802,"children":803},"li",{},[804,810],{"type":66,"tag":138,"props":805,"children":807},{"className":806},[],[808],{"type":78,"value":809},"login",{"type":78,"value":811},": User will be redirected to this path if not authenticated or after logout.",{"type":66,"tag":801,"props":813,"children":814},{},[815,821,823,829,831,838,840,846],{"type":66,"tag":138,"props":816,"children":818},{"className":817},[],[819],{"type":78,"value":820},"callback",{"type":78,"value":822},": This is the path the user will be redirect to after supabase login redirection. Should match configured ",{"type":66,"tag":138,"props":824,"children":826},{"className":825},[],[827],{"type":78,"value":828},"redirectTo",{"type":78,"value":830}," option of your ",{"type":66,"tag":71,"props":832,"children":835},{"href":833,"rel":834},"https://supabase.com/docs/reference/javascript/auth-signinwithoauth",[75],[836],{"type":78,"value":837},"signIn method",{"type":78,"value":839},". Should also be configured in your Supabase dashboard under ",{"type":66,"tag":138,"props":841,"children":843},{"className":842},[],[844],{"type":78,"value":845},"Authentication -> URL Configuration -> Redirect URLs",{"type":78,"value":124},{"type":66,"tag":801,"props":848,"children":849},{},[850,856,858,864,866,872],{"type":66,"tag":138,"props":851,"children":853},{"className":852},[],[854],{"type":78,"value":855},"include",{"type":78,"value":857},": Routes to include in the redirect. ",{"type":66,"tag":138,"props":859,"children":861},{"className":860},[],[862],{"type":78,"value":863},"['/admin(/*)?']",{"type":78,"value":865}," will enable the redirect only for the ",{"type":66,"tag":138,"props":867,"children":869},{"className":868},[],[870],{"type":78,"value":871},"admin",{"type":78,"value":873}," page and all sub-pages.",{"type":66,"tag":801,"props":875,"children":876},{},[877,883,885,891,893,899,901,907],{"type":66,"tag":138,"props":878,"children":880},{"className":879},[],[881],{"type":78,"value":882},"exclude",{"type":78,"value":884},": Routes to exclude from the redirect. ",{"type":66,"tag":138,"props":886,"children":888},{"className":887},[],[889],{"type":78,"value":890},"['/foo', '/bar/**']",{"type":78,"value":892}," will exclude the ",{"type":66,"tag":138,"props":894,"children":896},{"className":895},[],[897],{"type":78,"value":898},"foo",{"type":78,"value":900}," page and all pages in your ",{"type":66,"tag":138,"props":902,"children":904},{"className":903},[],[905],{"type":78,"value":906},"bar",{"type":78,"value":908}," folder.",{"type":66,"tag":801,"props":910,"children":911},{},[912,918,920,930],{"type":66,"tag":138,"props":913,"children":915},{"className":914},[],[916],{"type":78,"value":917},"cookieRedirect",{"type":78,"value":919},": Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the ",{"type":66,"tag":71,"props":921,"children":924},{"href":922,"rel":923},"https://supabase.nuxtjs.org/authentication#confirm-page-confirm",[75],[925],{"type":66,"tag":138,"props":926,"children":928},{"className":927},[],[929],{"type":78,"value":719},{"type":78,"value":931}," page to redirect the user to the page they previously tried to visit.",{"type":66,"tag":524,"props":933,"children":935},{"id":934},"cookiename",[936],{"type":66,"tag":138,"props":937,"children":939},{"className":938},[],[940],{"type":78,"value":941},"cookieName",{"type":66,"tag":67,"props":943,"children":944},{},[945,946],{"type":78,"value":537},{"type":66,"tag":138,"props":947,"children":949},{"className":948},[],[950],{"type":78,"value":951},"sb",{"type":66,"tag":67,"props":953,"children":954},{},[955,957,962,964,970,972],{"type":78,"value":956},"Cookie name used for storing the redirect path when using the ",{"type":66,"tag":138,"props":958,"children":960},{"className":959},[],[961],{"type":78,"value":609},{"type":78,"value":963}," option, added in front of ",{"type":66,"tag":138,"props":965,"children":967},{"className":966},[],[968],{"type":78,"value":969},"-redirect-path",{"type":78,"value":971}," to form the full cookie name e.g. ",{"type":66,"tag":138,"props":973,"children":975},{"className":974},[],[976],{"type":78,"value":977},"sb-redirect-path",{"type":66,"tag":524,"props":979,"children":981},{"id":980},"cookieoptions",[982],{"type":66,"tag":138,"props":983,"children":985},{"className":984},[],[986],{"type":78,"value":987},"cookieOptions",{"type":66,"tag":146,"props":989,"children":991},{"className":217,"code":990,"language":219,"meta":59,"style":59}," cookieOptions: {\n maxAge: 60 * 60 * 8,\n sameSite: 'lax',\n secure: true\n }\n",[992],{"type":66,"tag":138,"props":993,"children":994},{"__ignoreMap":59},[995,1011,1051,1080,1097],{"type":66,"tag":156,"props":996,"children":997},{"class":158,"line":159},[998,1003,1007],{"type":66,"tag":156,"props":999,"children":1000},{"style":163},[1001],{"type":78,"value":1002}," cookieOptions",{"type":66,"tag":156,"props":1004,"children":1005},{"style":252},[1006],{"type":78,"value":214},{"type":66,"tag":156,"props":1008,"children":1009},{"style":252},[1010],{"type":78,"value":495},{"type":66,"tag":156,"props":1012,"children":1013},{"class":158,"line":258},[1014,1019,1023,1029,1034,1038,1042,1047],{"type":66,"tag":156,"props":1015,"children":1016},{"style":163},[1017],{"type":78,"value":1018}," maxAge",{"type":66,"tag":156,"props":1020,"children":1021},{"style":252},[1022],{"type":78,"value":214},{"type":66,"tag":156,"props":1024,"children":1026},{"style":1025},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[1027],{"type":78,"value":1028}," 60",{"type":66,"tag":156,"props":1030,"children":1031},{"style":252},[1032],{"type":78,"value":1033}," *",{"type":66,"tag":156,"props":1035,"children":1036},{"style":1025},[1037],{"type":78,"value":1028},{"type":66,"tag":156,"props":1039,"children":1040},{"style":252},[1041],{"type":78,"value":1033},{"type":66,"tag":156,"props":1043,"children":1044},{"style":1025},[1045],{"type":78,"value":1046}," 8",{"type":66,"tag":156,"props":1048,"children":1049},{"style":252},[1050],{"type":78,"value":297},{"type":66,"tag":156,"props":1052,"children":1053},{"class":158,"line":300},[1054,1059,1063,1067,1072,1076],{"type":66,"tag":156,"props":1055,"children":1056},{"style":163},[1057],{"type":78,"value":1058}," sameSite",{"type":66,"tag":156,"props":1060,"children":1061},{"style":252},[1062],{"type":78,"value":214},{"type":66,"tag":156,"props":1064,"children":1065},{"style":252},[1066],{"type":78,"value":685},{"type":66,"tag":156,"props":1068,"children":1069},{"style":169},[1070],{"type":78,"value":1071},"lax",{"type":66,"tag":156,"props":1073,"children":1074},{"style":252},[1075],{"type":78,"value":279},{"type":66,"tag":156,"props":1077,"children":1078},{"style":252},[1079],{"type":78,"value":297},{"type":66,"tag":156,"props":1081,"children":1082},{"class":158,"line":498},[1083,1088,1092],{"type":66,"tag":156,"props":1084,"children":1085},{"style":163},[1086],{"type":78,"value":1087}," secure",{"type":66,"tag":156,"props":1089,"children":1090},{"style":252},[1091],{"type":78,"value":214},{"type":66,"tag":156,"props":1093,"children":1094},{"style":780},[1095],{"type":78,"value":1096}," true\n",{"type":66,"tag":156,"props":1098,"children":1099},{"class":158,"line":507},[1100],{"type":66,"tag":156,"props":1101,"children":1102},{"style":252},[1103],{"type":78,"value":513},{"type":66,"tag":67,"props":1105,"children":1106},{},[1107,1109,1115],{"type":78,"value":1108},"Options for cookies used to share tokens between server and client, refer to ",{"type":66,"tag":71,"props":1110,"children":1113},{"href":1111,"rel":1112},"https://nuxt.com/docs/api/composables/use-cookie#options",[75],[1114],{"type":78,"value":987},{"type":78,"value":1116}," for available settings. Please note that the lifetime set here does not determine the Supabase session lifetime.",{"type":66,"tag":524,"props":1118,"children":1120},{"id":1119},"types",[1121],{"type":66,"tag":138,"props":1122,"children":1124},{"className":1123},[],[1125],{"type":78,"value":1119},{"type":66,"tag":67,"props":1127,"children":1128},{},[1129,1130],{"type":78,"value":537},{"type":66,"tag":138,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":78,"value":1135},"./types/database.types.ts",{"type":66,"tag":67,"props":1137,"children":1138},{},[1139,1141,1146,1148,1153,1154,1159],{"type":78,"value":1140},"The path for the generated Supabase TypeScript definitions. The database definitions will be automatically passed to all clients: ",{"type":66,"tag":138,"props":1142,"children":1144},{"className":1143},[],[1145],{"type":78,"value":21},{"type":78,"value":1147},", ",{"type":66,"tag":138,"props":1149,"children":1151},{"className":1150},[],[1152],{"type":78,"value":34},{"type":78,"value":323},{"type":66,"tag":138,"props":1155,"children":1157},{"className":1156},[],[1158],{"type":78,"value":37},{"type":78,"value":124},{"type":66,"tag":146,"props":1161,"children":1163},{"className":148,"code":1162,"language":150,"meta":59,"style":59},"## Generate types from live database\nsupabase gen types --lang=typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types --lang=typescript --local > types/database.types.ts\n",[1164],{"type":66,"tag":138,"props":1165,"children":1166},{"__ignoreMap":59},[1167,1175,1217,1226,1234],{"type":66,"tag":156,"props":1168,"children":1169},{"class":158,"line":159},[1170],{"type":66,"tag":156,"props":1171,"children":1172},{"style":475},[1173],{"type":78,"value":1174},"## Generate types from live database\n",{"type":66,"tag":156,"props":1176,"children":1177},{"class":158,"line":258},[1178,1182,1187,1192,1197,1202,1207,1212],{"type":66,"tag":156,"props":1179,"children":1180},{"style":163},[1181],{"type":78,"value":430},{"type":66,"tag":156,"props":1183,"children":1184},{"style":169},[1185],{"type":78,"value":1186}," gen",{"type":66,"tag":156,"props":1188,"children":1189},{"style":169},[1190],{"type":78,"value":1191}," types",{"type":66,"tag":156,"props":1193,"children":1194},{"style":169},[1195],{"type":78,"value":1196}," --lang=typescript",{"type":66,"tag":156,"props":1198,"children":1199},{"style":169},[1200],{"type":78,"value":1201}," --project-id",{"type":66,"tag":156,"props":1203,"children":1204},{"style":169},[1205],{"type":78,"value":1206}," YourProjectId",{"type":66,"tag":156,"props":1208,"children":1209},{"style":252},[1210],{"type":78,"value":1211}," >",{"type":66,"tag":156,"props":1213,"children":1214},{"style":169},[1215],{"type":78,"value":1216}," types/database.types.ts\n",{"type":66,"tag":156,"props":1218,"children":1219},{"class":158,"line":300},[1220],{"type":66,"tag":156,"props":1221,"children":1223},{"emptyLinePlaceholder":1222},true,[1224],{"type":78,"value":1225},"\n",{"type":66,"tag":156,"props":1227,"children":1228},{"class":158,"line":498},[1229],{"type":66,"tag":156,"props":1230,"children":1231},{"style":475},[1232],{"type":78,"value":1233},"## Generate types when using local environment\n",{"type":66,"tag":156,"props":1235,"children":1236},{"class":158,"line":507},[1237,1241,1245,1249,1253,1258,1262],{"type":66,"tag":156,"props":1238,"children":1239},{"style":163},[1240],{"type":78,"value":430},{"type":66,"tag":156,"props":1242,"children":1243},{"style":169},[1244],{"type":78,"value":1186},{"type":66,"tag":156,"props":1246,"children":1247},{"style":169},[1248],{"type":78,"value":1191},{"type":66,"tag":156,"props":1250,"children":1251},{"style":169},[1252],{"type":78,"value":1196},{"type":66,"tag":156,"props":1254,"children":1255},{"style":169},[1256],{"type":78,"value":1257}," --local",{"type":66,"tag":156,"props":1259,"children":1260},{"style":252},[1261],{"type":78,"value":1211},{"type":66,"tag":156,"props":1263,"children":1264},{"style":169},[1265],{"type":78,"value":1216},{"type":66,"tag":67,"props":1267,"children":1268},{},[1269,1271,1277],{"type":78,"value":1270},"Set to ",{"type":66,"tag":138,"props":1272,"children":1274},{"className":1273},[],[1275],{"type":78,"value":1276},"false",{"type":78,"value":1278}," to disable.",{"type":66,"tag":67,"props":1280,"children":1281},{},[1282,1284,1291],{"type":78,"value":1283},"Check Supabase ",{"type":66,"tag":71,"props":1285,"children":1288},{"href":1286,"rel":1287},"https://supabase.com/docs/reference/javascript/release-notes#typescript-support",[75],[1289],{"type":78,"value":1290},"documentation",{"type":78,"value":1292}," for further information.",{"type":66,"tag":524,"props":1294,"children":1296},{"id":1295},"clientoptions",[1297],{"type":66,"tag":138,"props":1298,"children":1300},{"className":1299},[],[1301],{"type":78,"value":1302},"clientOptions",{"type":66,"tag":67,"props":1304,"children":1305},{},[1306],{"type":78,"value":645},{"type":66,"tag":146,"props":1308,"children":1310},{"className":217,"code":1309,"language":219,"meta":59,"style":59}," clientOptions: { }\n",[1311],{"type":66,"tag":138,"props":1312,"children":1313},{"__ignoreMap":59},[1314],{"type":66,"tag":156,"props":1315,"children":1316},{"class":158,"line":159},[1317,1322,1326,1331],{"type":66,"tag":156,"props":1318,"children":1319},{"style":163},[1320],{"type":78,"value":1321}," clientOptions",{"type":66,"tag":156,"props":1323,"children":1324},{"style":252},[1325],{"type":78,"value":214},{"type":66,"tag":156,"props":1327,"children":1328},{"style":252},[1329],{"type":78,"value":1330}," {",{"type":66,"tag":156,"props":1332,"children":1333},{"style":252},[1334],{"type":78,"value":1335}," }\n",{"type":66,"tag":67,"props":1337,"children":1338},{},[1339,1341,1348,1350,1356],{"type":78,"value":1340},"Supabase client options ",{"type":66,"tag":71,"props":1342,"children":1345},{"href":1343,"rel":1344},"https://supabase.com/docs/reference/javascript/initializing#parameters",[75],[1346],{"type":78,"value":1347},"available here",{"type":78,"value":1349}," merged with default values from ",{"type":66,"tag":138,"props":1351,"children":1353},{"className":1352},[],[1354],{"type":78,"value":1355},"@supabase/ssr",{"type":78,"value":214},{"type":66,"tag":146,"props":1358,"children":1360},{"className":217,"code":1359,"language":219,"meta":59,"style":59}," clientOptions: {\n auth: {\n flowType: 'pkce',\n autoRefreshToken: isBrowser(),\n detectSessionInUrl: isBrowser(),\n persistSession: true,\n },\n }\n",[1361],{"type":66,"tag":138,"props":1362,"children":1363},{"__ignoreMap":59},[1364,1379,1395,1424,1450,1474,1495,1503],{"type":66,"tag":156,"props":1365,"children":1366},{"class":158,"line":159},[1367,1371,1375],{"type":66,"tag":156,"props":1368,"children":1369},{"style":163},[1370],{"type":78,"value":1321},{"type":66,"tag":156,"props":1372,"children":1373},{"style":252},[1374],{"type":78,"value":214},{"type":66,"tag":156,"props":1376,"children":1377},{"style":252},[1378],{"type":78,"value":495},{"type":66,"tag":156,"props":1380,"children":1381},{"class":158,"line":258},[1382,1387,1391],{"type":66,"tag":156,"props":1383,"children":1384},{"style":163},[1385],{"type":78,"value":1386}," auth",{"type":66,"tag":156,"props":1388,"children":1389},{"style":252},[1390],{"type":78,"value":214},{"type":66,"tag":156,"props":1392,"children":1393},{"style":252},[1394],{"type":78,"value":495},{"type":66,"tag":156,"props":1396,"children":1397},{"class":158,"line":300},[1398,1403,1407,1411,1416,1420],{"type":66,"tag":156,"props":1399,"children":1400},{"style":163},[1401],{"type":78,"value":1402}," flowType",{"type":66,"tag":156,"props":1404,"children":1405},{"style":252},[1406],{"type":78,"value":214},{"type":66,"tag":156,"props":1408,"children":1409},{"style":252},[1410],{"type":78,"value":685},{"type":66,"tag":156,"props":1412,"children":1413},{"style":169},[1414],{"type":78,"value":1415},"pkce",{"type":66,"tag":156,"props":1417,"children":1418},{"style":252},[1419],{"type":78,"value":279},{"type":66,"tag":156,"props":1421,"children":1422},{"style":252},[1423],{"type":78,"value":297},{"type":66,"tag":156,"props":1425,"children":1426},{"class":158,"line":498},[1427,1432,1436,1441,1446],{"type":66,"tag":156,"props":1428,"children":1429},{"style":163},[1430],{"type":78,"value":1431}," autoRefreshToken",{"type":66,"tag":156,"props":1433,"children":1434},{"style":252},[1435],{"type":78,"value":214},{"type":66,"tag":156,"props":1437,"children":1438},{"style":240},[1439],{"type":78,"value":1440}," isBrowser",{"type":66,"tag":156,"props":1442,"children":1443},{"style":262},[1444],{"type":78,"value":1445},"()",{"type":66,"tag":156,"props":1447,"children":1448},{"style":252},[1449],{"type":78,"value":297},{"type":66,"tag":156,"props":1451,"children":1452},{"class":158,"line":507},[1453,1458,1462,1466,1470],{"type":66,"tag":156,"props":1454,"children":1455},{"style":163},[1456],{"type":78,"value":1457}," detectSessionInUrl",{"type":66,"tag":156,"props":1459,"children":1460},{"style":252},[1461],{"type":78,"value":214},{"type":66,"tag":156,"props":1463,"children":1464},{"style":240},[1465],{"type":78,"value":1440},{"type":66,"tag":156,"props":1467,"children":1468},{"style":262},[1469],{"type":78,"value":1445},{"type":66,"tag":156,"props":1471,"children":1472},{"style":252},[1473],{"type":78,"value":297},{"type":66,"tag":156,"props":1475,"children":1476},{"class":158,"line":516},[1477,1482,1486,1491],{"type":66,"tag":156,"props":1478,"children":1479},{"style":163},[1480],{"type":78,"value":1481}," persistSession",{"type":66,"tag":156,"props":1483,"children":1484},{"style":252},[1485],{"type":78,"value":214},{"type":66,"tag":156,"props":1487,"children":1488},{"style":780},[1489],{"type":78,"value":1490}," true",{"type":66,"tag":156,"props":1492,"children":1493},{"style":252},[1494],{"type":78,"value":297},{"type":66,"tag":156,"props":1496,"children":1497},{"class":158,"line":790},[1498],{"type":66,"tag":156,"props":1499,"children":1500},{"style":252},[1501],{"type":78,"value":1502}," },\n",{"type":66,"tag":156,"props":1504,"children":1506},{"class":158,"line":1505},8,[1507],{"type":66,"tag":156,"props":1508,"children":1509},{"style":252},[1510],{"type":78,"value":513},{"type":66,"tag":126,"props":1512,"children":1514},{"id":1513},"demo",[1515],{"type":78,"value":47},{"type":66,"tag":67,"props":1517,"children":1518},{},[1519,1521,1528,1530,1535],{"type":78,"value":1520},"A live demo is made for see this module in action on ",{"type":66,"tag":71,"props":1522,"children":1525},{"href":1523,"rel":1524},"https://n3-supabase.netlify.app",[75],[1526],{"type":78,"value":1527},"n3-supabase.netlify.app",{"type":78,"value":1529},", read more in the ",{"type":66,"tag":71,"props":1531,"children":1532},{"href":48},[1533],{"type":78,"value":1534},"demo section",{"type":78,"value":124},{"type":66,"tag":67,"props":1537,"children":1538},{},[1539],{"type":66,"tag":71,"props":1540,"children":1542},{"href":1523,"rel":1541},[75],[1543],{"type":66,"tag":1544,"props":1545,"children":1548},"img",{"alt":1546,"src":1547},"Supabase demo with Nuxt 3","https://user-images.githubusercontent.com/904724/160422461-8f87500a-8dec-4413-86b2-ba04e1b2d17b.png",[],{"type":66,"tag":67,"props":1550,"children":1551},{},[1552,1554,1561],{"type":78,"value":1553},"Also checkout the ",{"type":66,"tag":71,"props":1555,"children":1558},{"href":1556,"rel":1557},"https://www.youtube.com/watch?v=jIyiRT6zT8Q",[75],[1559],{"type":78,"value":1560},"YouTube video",{"type":78,"value":1562}," about its usage in a live demo.",{"type":66,"tag":1564,"props":1565,"children":1566},"style",{},[1567],{"type":78,"value":1568},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":59,"searchDepth":258,"depth":258,"links":1570},[1571,1572,1583],{"id":128,"depth":258,"text":131},{"id":416,"depth":258,"text":419,"children":1573},[1574,1575,1576,1577,1578,1579,1580,1581,1582],{"id":526,"depth":300,"text":526},{"id":560,"depth":300,"text":560},{"id":584,"depth":300,"text":591},{"id":609,"depth":300,"text":609},{"id":633,"depth":300,"text":640},{"id":934,"depth":300,"text":941},{"id":980,"depth":300,"text":987},{"id":1119,"depth":300,"text":1119},{"id":1295,"depth":300,"text":1302},{"id":1513,"depth":258,"text":47},"markdown","content:2.get-started.md","content","2.get-started.md","2.get-started","md",[1591,1592],null,{"_path":10,"title":9,"description":1593},"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server",1734518135805] \ No newline at end of file diff --git a/get-started/index.html b/get-started/index.html index 2c2ba1fd1..ccb684c38 100644 --- a/get-started/index.html +++ b/get-started/index.html @@ -61,7 +61,7 @@ - + @@ -128,7 +128,7 @@ exclude: [], cookieRedirect: false, } -
  • login: User will be redirected to this path if not authenticated or after logout.
  • callback: This is the path the user will be redirect to after supabase login redirection. Should match configured redirectTo option of your signIn method. Should also be configured in your Supabase dashboard under Authentication -> URL Configuration -> Redirect URLs.
  • include: Routes to include in the redirect. ['/admin(/*)?'] will enable the redirect only for the admin page and all sub-pages.
  • exclude: Routes to exclude from the redirect. ['/foo', '/bar/*'] will exclude the foo page and all pages in your bar folder.
  • cookieRedirect: Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the /confirm page to redirect the user to the page they previously tried to visit.

cookieName

Default: sb

Cookie name used for storing the redirect path when using the redirect option, added in front of -redirect-path to form the full cookie name e.g. sb-redirect-path

cookieOptions

  cookieOptions: {
+
  • login: User will be redirected to this path if not authenticated or after logout.
  • callback: This is the path the user will be redirect to after supabase login redirection. Should match configured redirectTo option of your signIn method. Should also be configured in your Supabase dashboard under Authentication -> URL Configuration -> Redirect URLs.
  • include: Routes to include in the redirect. ['/admin(/*)?'] will enable the redirect only for the admin page and all sub-pages.
  • exclude: Routes to exclude from the redirect. ['/foo', '/bar/**'] will exclude the foo page and all pages in your bar folder.
  • cookieRedirect: Sets a cookie containing the path an unauthenticated user tried to access. The cookie can then be used on the /confirm page to redirect the user to the page they previously tried to visit.

cookieName

Default: sb

Cookie name used for storing the redirect path when using the redirect option, added in front of -redirect-path to form the full cookie name e.g. sb-redirect-path

cookieOptions

  cookieOptions: {
     maxAge: 60 * 60 * 8,
     sameSite: 'lax',
     secure: true
@@ -148,5 +148,5 @@
     },
   }
 

Demo

A live demo is made for see this module in action on n3-supabase.netlify.app, read more in the demo section.

Supabase demo with Nuxt 3

Also checkout the YouTube video about its usage in a live demo.


Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/index.html b/index.html index 4553ae560..542c00885 100644 --- a/index.html +++ b/index.html @@ -54,7 +54,7 @@ - + @@ -107,5 +107,5 @@ email: email.value, }) } -

Shipped with many features

Nuxt 3 ready

Vue 3 composables

Supabase-js V2

Usage in API server routes

Authentication support

TypeScript support

Made with Nuxt Studio
- \ No newline at end of file +

Shipped with many features

Nuxt 3 ready

Vue 3 composables

Supabase-js V2

Usage in API server routes

Authentication support

TypeScript support

Made with Nuxt Studio
+ \ No newline at end of file diff --git a/roadmap/_payload.json b/roadmap/_payload.json index 1c46e3579..ddd3de3bd 100644 --- a/roadmap/_payload.json +++ b/roadmap/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":84},["ShallowReactive",2],{"navigation":3,"/roadmap":58,"/roadmap-surround":80},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":56,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":55,"description":61,"icon":57,"body":62,"_type":74,"_id":75,"_source":76,"_file":77,"_stem":78,"_extension":79},"",false,"Discover our kaban board for the next release of the Supabase module.",{"type":63,"children":64,"toc":71},"root",[65],{"type":66,"tag":67,"props":68,"children":70},"element","volta-board",{"token":69},"eyJzdGF0dXNlcyI6WyJ0cmlhZ2UiLCJiYWNrbG9nIiwidG9kbyIsImluX3Byb2dyZXNzIiwiaW5fcmV2aWV3IiwiZG9uZSIsInJlbGVhc2VkIiwiY2FuY2VsbGVkIl0sImZpbHRlcnMiOnt9LCJvd25lciI6Im51eHQtbW9kdWxlcyIsIm5hbWUiOiJzdXBhYmFzZSJ9",[],{"title":59,"searchDepth":72,"depth":72,"links":73},2,[],"markdown","content:7.roadmap.md","content","7.roadmap.md","7.roadmap","md",[81,83],{"_path":52,"title":51,"description":82},"Discover the latest updates of the Supabase Module",null,1733842352349] \ No newline at end of file +[{"data":1,"prerenderedAt":84},["ShallowReactive",2],{"navigation":3,"/roadmap":58,"/roadmap-surround":80},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":56,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":55,"description":61,"icon":57,"body":62,"_type":74,"_id":75,"_source":76,"_file":77,"_stem":78,"_extension":79},"",false,"Discover our kaban board for the next release of the Supabase module.",{"type":63,"children":64,"toc":71},"root",[65],{"type":66,"tag":67,"props":68,"children":70},"element","volta-board",{"token":69},"eyJzdGF0dXNlcyI6WyJ0cmlhZ2UiLCJiYWNrbG9nIiwidG9kbyIsImluX3Byb2dyZXNzIiwiaW5fcmV2aWV3IiwiZG9uZSIsInJlbGVhc2VkIiwiY2FuY2VsbGVkIl0sImZpbHRlcnMiOnt9LCJvd25lciI6Im51eHQtbW9kdWxlcyIsIm5hbWUiOiJzdXBhYmFzZSJ9",[],{"title":59,"searchDepth":72,"depth":72,"links":73},2,[],"markdown","content:7.roadmap.md","content","7.roadmap.md","7.roadmap","md",[81,83],{"_path":52,"title":51,"description":82},"Discover the latest updates of the Supabase Module",null,1734518136508] \ No newline at end of file diff --git a/roadmap/index.html b/roadmap/index.html index 4945bfa88..74ee9a69c 100644 --- a/roadmap/index.html +++ b/roadmap/index.html @@ -59,7 +59,7 @@ - + @@ -90,5 +90,5 @@
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/composables/usesupabaseclient/_payload.json b/usage/composables/usesupabaseclient/_payload.json index 13e0170fa..690663897 100644 --- a/usage/composables/usesupabaseclient/_payload.json +++ b/usage/composables/usesupabaseclient/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":2238},["ShallowReactive",2],{"navigation":3,"/usage/composables/usesupabaseclient":58,"/usage/composables/usesupabaseclient-surround":2233},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":22,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":21,"description":62,"body":63,"_type":2227,"_id":2228,"_source":2229,"_file":2230,"_stem":2231,"_extension":2232},"composables",false,"","Make requests to the Supabase API with the useSupabaseClient composable",{"type":64,"children":65,"toc":2221},"root",[66,83,106,146,152,174,191,716,727,733,747,769,1129,1135,1149,1163,1168,1928,1934,1964,2071,2076,2215],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71,81],{"type":67,"tag":72,"props":73,"children":77},"a",{"href":74,"rel":75},"https://nuxt.com/docs/guide/directory-structure/composables",[76],"nofollow",[78],{"type":79,"value":80},"text","Auto-import",{"type":79,"value":82}," your client inside your vue files.",{"type":67,"tag":68,"props":84,"children":85},{},[86,88,95,97,104],{"type":79,"value":87},"This composable is using ",{"type":67,"tag":72,"props":89,"children":92},{"href":90,"rel":91},"https://github.com/supabase/supabase-js/",[76],[93],{"type":79,"value":94},"supabase-js",{"type":79,"value":96}," under the hood, it gives access to the ",{"type":67,"tag":72,"props":98,"children":101},{"href":99,"rel":100},"https://supabase.com/docs/reference/javascript/initializing",[76],[102],{"type":79,"value":103},"Supabase client",{"type":79,"value":105},".",{"type":67,"tag":107,"props":108,"children":109},"blockquote",{},[110],{"type":67,"tag":68,"props":111,"children":112},{},[113,115,122,124,130,132,139,141,145],{"type":79,"value":114},"The client is initialized with the ",{"type":67,"tag":116,"props":117,"children":119},"code",{"className":118},[],[120],{"type":79,"value":121},"SUPABASE_KEY",{"type":79,"value":123}," you must have in your ",{"type":67,"tag":116,"props":125,"children":127},{"className":126},[],[128],{"type":79,"value":129},".env",{"type":79,"value":131}," file. It establishes the connection with the database and make use of user JWT to apply ",{"type":67,"tag":72,"props":133,"children":136},{"href":134,"rel":135},"https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security",[76],[137],{"type":79,"value":138},"RLS Policies",{"type":79,"value":140}," implemented in Supabase. If you want to bypass policies, you can use the ",{"type":67,"tag":72,"props":142,"children":143},{"href":38},[144],{"type":79,"value":37},{"type":79,"value":105},{"type":67,"tag":147,"props":148,"children":150},"h2",{"id":149},"authentication",[151],{"type":79,"value":9},{"type":67,"tag":68,"props":153,"children":154},{},[155,157,163,165,172],{"type":79,"value":156},"The useSupabaseClient composable is providing all methods to manage authorization under ",{"type":67,"tag":116,"props":158,"children":160},{"className":159},[],[161],{"type":79,"value":162},"useSupabaseClient().auth",{"type":79,"value":164},". For more details please see the ",{"type":67,"tag":72,"props":166,"children":169},{"href":167,"rel":168},"https://supabase.com/docs/reference/javascript/auth-api",[76],[170],{"type":79,"value":171},"supabase-js auth documentation",{"type":79,"value":173},". Here is an example for signing in and out:",{"type":67,"tag":175,"props":176,"children":178},"callout",{"icon":177},"i-heroicons-light-bulb",[179],{"type":67,"tag":68,"props":180,"children":181},{},[182,184,190],{"type":79,"value":183},"If you want a full explanation on how to handle the authentication process, please read this ",{"type":67,"tag":72,"props":185,"children":187},{"href":186},"/get-started#handle-authentication",[188],{"type":79,"value":189},"section",{"type":79,"value":105},{"type":67,"tag":192,"props":193,"children":197},"pre",{"className":194,"code":195,"language":196,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst supabase = useSupabaseClient()\n\nconst signInWithOAuth = async () => {\n const { error } = await supabase.auth.signInWithOAuth({\n provider: 'github',\n options: {\n redirectTo: 'http://localhost:3000/confirm',\n },\n })\n if (error) console.log(error)\n}\n\nconst signOut = async () => {\n const { error } = await supabase.auth.signOut()\n if (error) console.log(error)\n}\n\u003C/script>\n","ts",[198],{"type":67,"tag":116,"props":199,"children":200},{"__ignoreMap":61},[201,243,273,283,320,389,423,440,470,479,493,543,552,560,593,646,690,698],{"type":67,"tag":202,"props":203,"children":206},"span",{"class":204,"line":205},"line",1,[207,213,219,224,229,234,238],{"type":67,"tag":202,"props":208,"children":210},{"style":209},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[211],{"type":79,"value":212},"\u003C",{"type":67,"tag":202,"props":214,"children":216},{"style":215},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[217],{"type":79,"value":218},"script setup lang",{"type":67,"tag":202,"props":220,"children":221},{"style":209},[222],{"type":79,"value":223},"=",{"type":67,"tag":202,"props":225,"children":226},{"style":209},[227],{"type":79,"value":228},"\"",{"type":67,"tag":202,"props":230,"children":232},{"style":231},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[233],{"type":79,"value":196},{"type":67,"tag":202,"props":235,"children":236},{"style":209},[237],{"type":79,"value":228},{"type":67,"tag":202,"props":239,"children":240},{"style":209},[241],{"type":79,"value":242},">\n",{"type":67,"tag":202,"props":244,"children":246},{"class":204,"line":245},2,[247,253,258,262,268],{"type":67,"tag":202,"props":248,"children":250},{"style":249},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[251],{"type":79,"value":252},"const",{"type":67,"tag":202,"props":254,"children":255},{"style":215},[256],{"type":79,"value":257}," supabase ",{"type":67,"tag":202,"props":259,"children":260},{"style":209},[261],{"type":79,"value":223},{"type":67,"tag":202,"props":263,"children":265},{"style":264},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[266],{"type":79,"value":267}," useSupabaseClient",{"type":67,"tag":202,"props":269,"children":270},{"style":215},[271],{"type":79,"value":272},"()\n",{"type":67,"tag":202,"props":274,"children":276},{"class":204,"line":275},3,[277],{"type":67,"tag":202,"props":278,"children":280},{"emptyLinePlaceholder":279},true,[281],{"type":79,"value":282},"\n",{"type":67,"tag":202,"props":284,"children":286},{"class":204,"line":285},4,[287,291,296,300,305,310,315],{"type":67,"tag":202,"props":288,"children":289},{"style":249},[290],{"type":79,"value":252},{"type":67,"tag":202,"props":292,"children":293},{"style":215},[294],{"type":79,"value":295}," signInWithOAuth ",{"type":67,"tag":202,"props":297,"children":298},{"style":209},[299],{"type":79,"value":223},{"type":67,"tag":202,"props":301,"children":302},{"style":249},[303],{"type":79,"value":304}," async",{"type":67,"tag":202,"props":306,"children":307},{"style":209},[308],{"type":79,"value":309}," ()",{"type":67,"tag":202,"props":311,"children":312},{"style":249},[313],{"type":79,"value":314}," =>",{"type":67,"tag":202,"props":316,"children":317},{"style":209},[318],{"type":79,"value":319}," {\n",{"type":67,"tag":202,"props":321,"children":323},{"class":204,"line":322},5,[324,329,334,339,344,349,355,360,364,369,373,378,384],{"type":67,"tag":202,"props":325,"children":326},{"style":249},[327],{"type":79,"value":328}," const",{"type":67,"tag":202,"props":330,"children":331},{"style":209},[332],{"type":79,"value":333}," {",{"type":67,"tag":202,"props":335,"children":336},{"style":215},[337],{"type":79,"value":338}," error",{"type":67,"tag":202,"props":340,"children":341},{"style":209},[342],{"type":79,"value":343}," }",{"type":67,"tag":202,"props":345,"children":346},{"style":209},[347],{"type":79,"value":348}," =",{"type":67,"tag":202,"props":350,"children":352},{"style":351},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[353],{"type":79,"value":354}," await",{"type":67,"tag":202,"props":356,"children":357},{"style":215},[358],{"type":79,"value":359}," supabase",{"type":67,"tag":202,"props":361,"children":362},{"style":209},[363],{"type":79,"value":105},{"type":67,"tag":202,"props":365,"children":366},{"style":215},[367],{"type":79,"value":368},"auth",{"type":67,"tag":202,"props":370,"children":371},{"style":209},[372],{"type":79,"value":105},{"type":67,"tag":202,"props":374,"children":375},{"style":264},[376],{"type":79,"value":377},"signInWithOAuth",{"type":67,"tag":202,"props":379,"children":381},{"style":380},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[382],{"type":79,"value":383},"(",{"type":67,"tag":202,"props":385,"children":386},{"style":209},[387],{"type":79,"value":388},"{\n",{"type":67,"tag":202,"props":390,"children":392},{"class":204,"line":391},6,[393,398,403,408,413,418],{"type":67,"tag":202,"props":394,"children":395},{"style":380},[396],{"type":79,"value":397}," provider",{"type":67,"tag":202,"props":399,"children":400},{"style":209},[401],{"type":79,"value":402},":",{"type":67,"tag":202,"props":404,"children":405},{"style":209},[406],{"type":79,"value":407}," '",{"type":67,"tag":202,"props":409,"children":410},{"style":231},[411],{"type":79,"value":412},"github",{"type":67,"tag":202,"props":414,"children":415},{"style":209},[416],{"type":79,"value":417},"'",{"type":67,"tag":202,"props":419,"children":420},{"style":209},[421],{"type":79,"value":422},",\n",{"type":67,"tag":202,"props":424,"children":426},{"class":204,"line":425},7,[427,432,436],{"type":67,"tag":202,"props":428,"children":429},{"style":380},[430],{"type":79,"value":431}," options",{"type":67,"tag":202,"props":433,"children":434},{"style":209},[435],{"type":79,"value":402},{"type":67,"tag":202,"props":437,"children":438},{"style":209},[439],{"type":79,"value":319},{"type":67,"tag":202,"props":441,"children":443},{"class":204,"line":442},8,[444,449,453,457,462,466],{"type":67,"tag":202,"props":445,"children":446},{"style":380},[447],{"type":79,"value":448}," redirectTo",{"type":67,"tag":202,"props":450,"children":451},{"style":209},[452],{"type":79,"value":402},{"type":67,"tag":202,"props":454,"children":455},{"style":209},[456],{"type":79,"value":407},{"type":67,"tag":202,"props":458,"children":459},{"style":231},[460],{"type":79,"value":461},"http://localhost:3000/confirm",{"type":67,"tag":202,"props":463,"children":464},{"style":209},[465],{"type":79,"value":417},{"type":67,"tag":202,"props":467,"children":468},{"style":209},[469],{"type":79,"value":422},{"type":67,"tag":202,"props":471,"children":473},{"class":204,"line":472},9,[474],{"type":67,"tag":202,"props":475,"children":476},{"style":209},[477],{"type":79,"value":478}," },\n",{"type":67,"tag":202,"props":480,"children":482},{"class":204,"line":481},10,[483,488],{"type":67,"tag":202,"props":484,"children":485},{"style":209},[486],{"type":79,"value":487}," }",{"type":67,"tag":202,"props":489,"children":490},{"style":380},[491],{"type":79,"value":492},")\n",{"type":67,"tag":202,"props":494,"children":496},{"class":204,"line":495},11,[497,502,507,512,517,522,526,531,535,539],{"type":67,"tag":202,"props":498,"children":499},{"style":351},[500],{"type":79,"value":501}," if",{"type":67,"tag":202,"props":503,"children":504},{"style":380},[505],{"type":79,"value":506}," (",{"type":67,"tag":202,"props":508,"children":509},{"style":215},[510],{"type":79,"value":511},"error",{"type":67,"tag":202,"props":513,"children":514},{"style":380},[515],{"type":79,"value":516},") ",{"type":67,"tag":202,"props":518,"children":519},{"style":215},[520],{"type":79,"value":521},"console",{"type":67,"tag":202,"props":523,"children":524},{"style":209},[525],{"type":79,"value":105},{"type":67,"tag":202,"props":527,"children":528},{"style":264},[529],{"type":79,"value":530},"log",{"type":67,"tag":202,"props":532,"children":533},{"style":380},[534],{"type":79,"value":383},{"type":67,"tag":202,"props":536,"children":537},{"style":215},[538],{"type":79,"value":511},{"type":67,"tag":202,"props":540,"children":541},{"style":380},[542],{"type":79,"value":492},{"type":67,"tag":202,"props":544,"children":546},{"class":204,"line":545},12,[547],{"type":67,"tag":202,"props":548,"children":549},{"style":209},[550],{"type":79,"value":551},"}\n",{"type":67,"tag":202,"props":553,"children":555},{"class":204,"line":554},13,[556],{"type":67,"tag":202,"props":557,"children":558},{"emptyLinePlaceholder":279},[559],{"type":79,"value":282},{"type":67,"tag":202,"props":561,"children":563},{"class":204,"line":562},14,[564,568,573,577,581,585,589],{"type":67,"tag":202,"props":565,"children":566},{"style":249},[567],{"type":79,"value":252},{"type":67,"tag":202,"props":569,"children":570},{"style":215},[571],{"type":79,"value":572}," signOut ",{"type":67,"tag":202,"props":574,"children":575},{"style":209},[576],{"type":79,"value":223},{"type":67,"tag":202,"props":578,"children":579},{"style":249},[580],{"type":79,"value":304},{"type":67,"tag":202,"props":582,"children":583},{"style":209},[584],{"type":79,"value":309},{"type":67,"tag":202,"props":586,"children":587},{"style":249},[588],{"type":79,"value":314},{"type":67,"tag":202,"props":590,"children":591},{"style":209},[592],{"type":79,"value":319},{"type":67,"tag":202,"props":594,"children":596},{"class":204,"line":595},15,[597,601,605,609,613,617,621,625,629,633,637,642],{"type":67,"tag":202,"props":598,"children":599},{"style":249},[600],{"type":79,"value":328},{"type":67,"tag":202,"props":602,"children":603},{"style":209},[604],{"type":79,"value":333},{"type":67,"tag":202,"props":606,"children":607},{"style":215},[608],{"type":79,"value":338},{"type":67,"tag":202,"props":610,"children":611},{"style":209},[612],{"type":79,"value":343},{"type":67,"tag":202,"props":614,"children":615},{"style":209},[616],{"type":79,"value":348},{"type":67,"tag":202,"props":618,"children":619},{"style":351},[620],{"type":79,"value":354},{"type":67,"tag":202,"props":622,"children":623},{"style":215},[624],{"type":79,"value":359},{"type":67,"tag":202,"props":626,"children":627},{"style":209},[628],{"type":79,"value":105},{"type":67,"tag":202,"props":630,"children":631},{"style":215},[632],{"type":79,"value":368},{"type":67,"tag":202,"props":634,"children":635},{"style":209},[636],{"type":79,"value":105},{"type":67,"tag":202,"props":638,"children":639},{"style":264},[640],{"type":79,"value":641},"signOut",{"type":67,"tag":202,"props":643,"children":644},{"style":380},[645],{"type":79,"value":272},{"type":67,"tag":202,"props":647,"children":649},{"class":204,"line":648},16,[650,654,658,662,666,670,674,678,682,686],{"type":67,"tag":202,"props":651,"children":652},{"style":351},[653],{"type":79,"value":501},{"type":67,"tag":202,"props":655,"children":656},{"style":380},[657],{"type":79,"value":506},{"type":67,"tag":202,"props":659,"children":660},{"style":215},[661],{"type":79,"value":511},{"type":67,"tag":202,"props":663,"children":664},{"style":380},[665],{"type":79,"value":516},{"type":67,"tag":202,"props":667,"children":668},{"style":215},[669],{"type":79,"value":521},{"type":67,"tag":202,"props":671,"children":672},{"style":209},[673],{"type":79,"value":105},{"type":67,"tag":202,"props":675,"children":676},{"style":264},[677],{"type":79,"value":530},{"type":67,"tag":202,"props":679,"children":680},{"style":380},[681],{"type":79,"value":383},{"type":67,"tag":202,"props":683,"children":684},{"style":215},[685],{"type":79,"value":511},{"type":67,"tag":202,"props":687,"children":688},{"style":380},[689],{"type":79,"value":492},{"type":67,"tag":202,"props":691,"children":693},{"class":204,"line":692},17,[694],{"type":67,"tag":202,"props":695,"children":696},{"style":209},[697],{"type":79,"value":551},{"type":67,"tag":202,"props":699,"children":701},{"class":204,"line":700},18,[702,707,712],{"type":67,"tag":202,"props":703,"children":704},{"style":209},[705],{"type":79,"value":706},"\u003C/",{"type":67,"tag":202,"props":708,"children":709},{"style":215},[710],{"type":79,"value":711},"script",{"type":67,"tag":202,"props":713,"children":714},{"style":209},[715],{"type":79,"value":242},{"type":67,"tag":68,"props":717,"children":718},{},[719,721,725],{"type":79,"value":720},"Please also take a look at ",{"type":67,"tag":72,"props":722,"children":723},{"href":6},[724],{"type":79,"value":5},{"type":79,"value":726}," for the authorization flow.",{"type":67,"tag":147,"props":728,"children":730},{"id":729},"database-request",[731],{"type":79,"value":732},"Database Request",{"type":67,"tag":68,"props":734,"children":735},{},[736,738,745],{"type":79,"value":737},"Please check ",{"type":67,"tag":72,"props":739,"children":742},{"href":740,"rel":741},"https://supabase.com/docs/reference/javascript/select",[76],[743],{"type":79,"value":744},"Supabase",{"type":79,"value":746}," documentation to fully use the power of Supabase client.",{"type":67,"tag":68,"props":748,"children":749},{},[750,752,758,760,767],{"type":79,"value":751},"Here is an example of a fetch using the ",{"type":67,"tag":116,"props":753,"children":755},{"className":754},[],[756],{"type":79,"value":757},"select",{"type":79,"value":759}," method with Nuxt 3 ",{"type":67,"tag":72,"props":761,"children":764},{"href":762,"rel":763},"https://nuxt.com/docs/getting-started/data-fetching#useasyncdata",[76],[765],{"type":79,"value":766},"useAsyncData",{"type":79,"value":768}," composable.",{"type":67,"tag":192,"props":770,"children":774},{"className":771,"code":772,"language":773,"meta":61,"style":61},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst client = useSupabaseClient()\n\nconst { data: restaurant } = await useAsyncData('restaurant', async () => {\n const { data } = await client.from('restaurants').select('name, location').eq('name', 'My Restaurant Name').single()\n\n return data\n})\n\u003C/script>\n","vue",[775],{"type":67,"tag":116,"props":776,"children":777},{"__ignoreMap":61},[778,819,843,850,931,1083,1090,1103,1114],{"type":67,"tag":202,"props":779,"children":780},{"class":204,"line":205},[781,785,789,794,799,803,807,811,815],{"type":67,"tag":202,"props":782,"children":783},{"style":209},[784],{"type":79,"value":212},{"type":67,"tag":202,"props":786,"children":787},{"style":380},[788],{"type":79,"value":711},{"type":67,"tag":202,"props":790,"children":791},{"style":249},[792],{"type":79,"value":793}," setup",{"type":67,"tag":202,"props":795,"children":796},{"style":249},[797],{"type":79,"value":798}," lang",{"type":67,"tag":202,"props":800,"children":801},{"style":209},[802],{"type":79,"value":223},{"type":67,"tag":202,"props":804,"children":805},{"style":209},[806],{"type":79,"value":228},{"type":67,"tag":202,"props":808,"children":809},{"style":231},[810],{"type":79,"value":196},{"type":67,"tag":202,"props":812,"children":813},{"style":209},[814],{"type":79,"value":228},{"type":67,"tag":202,"props":816,"children":817},{"style":209},[818],{"type":79,"value":242},{"type":67,"tag":202,"props":820,"children":821},{"class":204,"line":245},[822,826,831,835,839],{"type":67,"tag":202,"props":823,"children":824},{"style":249},[825],{"type":79,"value":252},{"type":67,"tag":202,"props":827,"children":828},{"style":215},[829],{"type":79,"value":830}," client ",{"type":67,"tag":202,"props":832,"children":833},{"style":209},[834],{"type":79,"value":223},{"type":67,"tag":202,"props":836,"children":837},{"style":264},[838],{"type":79,"value":267},{"type":67,"tag":202,"props":840,"children":841},{"style":215},[842],{"type":79,"value":272},{"type":67,"tag":202,"props":844,"children":845},{"class":204,"line":275},[846],{"type":67,"tag":202,"props":847,"children":848},{"emptyLinePlaceholder":279},[849],{"type":79,"value":282},{"type":67,"tag":202,"props":851,"children":852},{"class":204,"line":285},[853,857,861,866,870,875,880,884,888,893,897,901,906,910,915,919,923,927],{"type":67,"tag":202,"props":854,"children":855},{"style":249},[856],{"type":79,"value":252},{"type":67,"tag":202,"props":858,"children":859},{"style":209},[860],{"type":79,"value":333},{"type":67,"tag":202,"props":862,"children":863},{"style":380},[864],{"type":79,"value":865}," data",{"type":67,"tag":202,"props":867,"children":868},{"style":209},[869],{"type":79,"value":402},{"type":67,"tag":202,"props":871,"children":872},{"style":215},[873],{"type":79,"value":874}," restaurant ",{"type":67,"tag":202,"props":876,"children":877},{"style":209},[878],{"type":79,"value":879},"}",{"type":67,"tag":202,"props":881,"children":882},{"style":209},[883],{"type":79,"value":348},{"type":67,"tag":202,"props":885,"children":886},{"style":351},[887],{"type":79,"value":354},{"type":67,"tag":202,"props":889,"children":890},{"style":264},[891],{"type":79,"value":892}," useAsyncData",{"type":67,"tag":202,"props":894,"children":895},{"style":215},[896],{"type":79,"value":383},{"type":67,"tag":202,"props":898,"children":899},{"style":209},[900],{"type":79,"value":417},{"type":67,"tag":202,"props":902,"children":903},{"style":231},[904],{"type":79,"value":905},"restaurant",{"type":67,"tag":202,"props":907,"children":908},{"style":209},[909],{"type":79,"value":417},{"type":67,"tag":202,"props":911,"children":912},{"style":209},[913],{"type":79,"value":914},",",{"type":67,"tag":202,"props":916,"children":917},{"style":249},[918],{"type":79,"value":304},{"type":67,"tag":202,"props":920,"children":921},{"style":209},[922],{"type":79,"value":309},{"type":67,"tag":202,"props":924,"children":925},{"style":249},[926],{"type":79,"value":314},{"type":67,"tag":202,"props":928,"children":929},{"style":209},[930],{"type":79,"value":319},{"type":67,"tag":202,"props":932,"children":933},{"class":204,"line":322},[934,938,942,946,950,954,958,963,967,972,976,980,985,989,994,998,1002,1006,1010,1015,1019,1023,1027,1032,1036,1040,1045,1049,1053,1057,1062,1066,1070,1074,1079],{"type":67,"tag":202,"props":935,"children":936},{"style":249},[937],{"type":79,"value":328},{"type":67,"tag":202,"props":939,"children":940},{"style":209},[941],{"type":79,"value":333},{"type":67,"tag":202,"props":943,"children":944},{"style":215},[945],{"type":79,"value":865},{"type":67,"tag":202,"props":947,"children":948},{"style":209},[949],{"type":79,"value":343},{"type":67,"tag":202,"props":951,"children":952},{"style":209},[953],{"type":79,"value":348},{"type":67,"tag":202,"props":955,"children":956},{"style":351},[957],{"type":79,"value":354},{"type":67,"tag":202,"props":959,"children":960},{"style":215},[961],{"type":79,"value":962}," client",{"type":67,"tag":202,"props":964,"children":965},{"style":209},[966],{"type":79,"value":105},{"type":67,"tag":202,"props":968,"children":969},{"style":264},[970],{"type":79,"value":971},"from",{"type":67,"tag":202,"props":973,"children":974},{"style":380},[975],{"type":79,"value":383},{"type":67,"tag":202,"props":977,"children":978},{"style":209},[979],{"type":79,"value":417},{"type":67,"tag":202,"props":981,"children":982},{"style":231},[983],{"type":79,"value":984},"restaurants",{"type":67,"tag":202,"props":986,"children":987},{"style":209},[988],{"type":79,"value":417},{"type":67,"tag":202,"props":990,"children":991},{"style":380},[992],{"type":79,"value":993},")",{"type":67,"tag":202,"props":995,"children":996},{"style":209},[997],{"type":79,"value":105},{"type":67,"tag":202,"props":999,"children":1000},{"style":264},[1001],{"type":79,"value":757},{"type":67,"tag":202,"props":1003,"children":1004},{"style":380},[1005],{"type":79,"value":383},{"type":67,"tag":202,"props":1007,"children":1008},{"style":209},[1009],{"type":79,"value":417},{"type":67,"tag":202,"props":1011,"children":1012},{"style":231},[1013],{"type":79,"value":1014},"name, location",{"type":67,"tag":202,"props":1016,"children":1017},{"style":209},[1018],{"type":79,"value":417},{"type":67,"tag":202,"props":1020,"children":1021},{"style":380},[1022],{"type":79,"value":993},{"type":67,"tag":202,"props":1024,"children":1025},{"style":209},[1026],{"type":79,"value":105},{"type":67,"tag":202,"props":1028,"children":1029},{"style":264},[1030],{"type":79,"value":1031},"eq",{"type":67,"tag":202,"props":1033,"children":1034},{"style":380},[1035],{"type":79,"value":383},{"type":67,"tag":202,"props":1037,"children":1038},{"style":209},[1039],{"type":79,"value":417},{"type":67,"tag":202,"props":1041,"children":1042},{"style":231},[1043],{"type":79,"value":1044},"name",{"type":67,"tag":202,"props":1046,"children":1047},{"style":209},[1048],{"type":79,"value":417},{"type":67,"tag":202,"props":1050,"children":1051},{"style":209},[1052],{"type":79,"value":914},{"type":67,"tag":202,"props":1054,"children":1055},{"style":209},[1056],{"type":79,"value":407},{"type":67,"tag":202,"props":1058,"children":1059},{"style":231},[1060],{"type":79,"value":1061},"My Restaurant Name",{"type":67,"tag":202,"props":1063,"children":1064},{"style":209},[1065],{"type":79,"value":417},{"type":67,"tag":202,"props":1067,"children":1068},{"style":380},[1069],{"type":79,"value":993},{"type":67,"tag":202,"props":1071,"children":1072},{"style":209},[1073],{"type":79,"value":105},{"type":67,"tag":202,"props":1075,"children":1076},{"style":264},[1077],{"type":79,"value":1078},"single",{"type":67,"tag":202,"props":1080,"children":1081},{"style":380},[1082],{"type":79,"value":272},{"type":67,"tag":202,"props":1084,"children":1085},{"class":204,"line":391},[1086],{"type":67,"tag":202,"props":1087,"children":1088},{"emptyLinePlaceholder":279},[1089],{"type":79,"value":282},{"type":67,"tag":202,"props":1091,"children":1092},{"class":204,"line":425},[1093,1098],{"type":67,"tag":202,"props":1094,"children":1095},{"style":351},[1096],{"type":79,"value":1097}," return",{"type":67,"tag":202,"props":1099,"children":1100},{"style":215},[1101],{"type":79,"value":1102}," data\n",{"type":67,"tag":202,"props":1104,"children":1105},{"class":204,"line":442},[1106,1110],{"type":67,"tag":202,"props":1107,"children":1108},{"style":209},[1109],{"type":79,"value":879},{"type":67,"tag":202,"props":1111,"children":1112},{"style":215},[1113],{"type":79,"value":492},{"type":67,"tag":202,"props":1115,"children":1116},{"class":204,"line":472},[1117,1121,1125],{"type":67,"tag":202,"props":1118,"children":1119},{"style":209},[1120],{"type":79,"value":706},{"type":67,"tag":202,"props":1122,"children":1123},{"style":380},[1124],{"type":79,"value":711},{"type":67,"tag":202,"props":1126,"children":1127},{"style":209},[1128],{"type":79,"value":242},{"type":67,"tag":147,"props":1130,"children":1132},{"id":1131},"realtime",[1133],{"type":79,"value":1134},"Realtime",{"type":67,"tag":68,"props":1136,"children":1137},{},[1138,1140,1147],{"type":79,"value":1139},"Based on ",{"type":67,"tag":72,"props":1141,"children":1144},{"href":1142,"rel":1143},"https://github.com/supabase/realtime",[76],[1145],{"type":79,"value":1146},"Supabase Realtime",{"type":79,"value":1148},", listen to changes in your PostgreSQL Database and broadcasts them over WebSockets.",{"type":67,"tag":68,"props":1150,"children":1151},{},[1152,1154,1161],{"type":79,"value":1153},"To enable it, make sure you have turned on the ",{"type":67,"tag":72,"props":1155,"children":1158},{"href":1156,"rel":1157},"https://supabase.com/docs/guides/api#realtime-api",[76],[1159],{"type":79,"value":1160},"Realtime API",{"type":79,"value":1162}," for your table.",{"type":67,"tag":68,"props":1164,"children":1165},{},[1166],{"type":79,"value":1167},"Then, listen to changes directly in your vue page / component:",{"type":67,"tag":192,"props":1169,"children":1171},{"className":771,"code":1170,"language":773,"meta":61,"style":61},"\u003Cscript setup lang=\"ts\">\nimport type { RealtimeChannel } from '@supabase/supabase-js'\n\nconst client = useSupabaseClient()\n\nlet realtimeChannel: RealtimeChannel\n\n// Fetch collaborators and get the refresh method provided by useAsyncData\nconst { data: collaborators, refresh: refreshCollaborators } = await useAsyncData('collaborators', async () => {\n const { data } = await client.from('collaborators').select('name')\n return data\n})\n\n// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\nonMounted(() => {\n // Real time listener for new workouts\n realtimeChannel = client.channel('public:collaborators').on(\n 'postgres_changes',\n { event: '*', schema: 'public', table: 'collaborators' },\n () => refreshCollaborators()\n )\n\n realtimeChannel.subscribe()\n})\n\n // Don't forget to unsubscribe when user left the page\nonUnmounted(() => {\n client.removeChannel(realtimeChannel)\n})\n\u003C/script>\n",[1172],{"type":67,"tag":116,"props":1173,"children":1174},{"__ignoreMap":61},[1175,1214,1259,1266,1289,1296,1319,1326,1335,1430,1517,1528,1539,1546,1554,1579,1587,1647,1668,1755,1777,1786,1794,1815,1827,1835,1844,1869,1900,1912],{"type":67,"tag":202,"props":1176,"children":1177},{"class":204,"line":205},[1178,1182,1186,1190,1194,1198,1202,1206,1210],{"type":67,"tag":202,"props":1179,"children":1180},{"style":209},[1181],{"type":79,"value":212},{"type":67,"tag":202,"props":1183,"children":1184},{"style":380},[1185],{"type":79,"value":711},{"type":67,"tag":202,"props":1187,"children":1188},{"style":249},[1189],{"type":79,"value":793},{"type":67,"tag":202,"props":1191,"children":1192},{"style":249},[1193],{"type":79,"value":798},{"type":67,"tag":202,"props":1195,"children":1196},{"style":209},[1197],{"type":79,"value":223},{"type":67,"tag":202,"props":1199,"children":1200},{"style":209},[1201],{"type":79,"value":228},{"type":67,"tag":202,"props":1203,"children":1204},{"style":231},[1205],{"type":79,"value":196},{"type":67,"tag":202,"props":1207,"children":1208},{"style":209},[1209],{"type":79,"value":228},{"type":67,"tag":202,"props":1211,"children":1212},{"style":209},[1213],{"type":79,"value":242},{"type":67,"tag":202,"props":1215,"children":1216},{"class":204,"line":245},[1217,1222,1227,1231,1236,1240,1245,1249,1254],{"type":67,"tag":202,"props":1218,"children":1219},{"style":351},[1220],{"type":79,"value":1221},"import",{"type":67,"tag":202,"props":1223,"children":1224},{"style":351},[1225],{"type":79,"value":1226}," type",{"type":67,"tag":202,"props":1228,"children":1229},{"style":209},[1230],{"type":79,"value":333},{"type":67,"tag":202,"props":1232,"children":1233},{"style":215},[1234],{"type":79,"value":1235}," RealtimeChannel",{"type":67,"tag":202,"props":1237,"children":1238},{"style":209},[1239],{"type":79,"value":343},{"type":67,"tag":202,"props":1241,"children":1242},{"style":351},[1243],{"type":79,"value":1244}," from",{"type":67,"tag":202,"props":1246,"children":1247},{"style":209},[1248],{"type":79,"value":407},{"type":67,"tag":202,"props":1250,"children":1251},{"style":231},[1252],{"type":79,"value":1253},"@supabase/supabase-js",{"type":67,"tag":202,"props":1255,"children":1256},{"style":209},[1257],{"type":79,"value":1258},"'\n",{"type":67,"tag":202,"props":1260,"children":1261},{"class":204,"line":275},[1262],{"type":67,"tag":202,"props":1263,"children":1264},{"emptyLinePlaceholder":279},[1265],{"type":79,"value":282},{"type":67,"tag":202,"props":1267,"children":1268},{"class":204,"line":285},[1269,1273,1277,1281,1285],{"type":67,"tag":202,"props":1270,"children":1271},{"style":249},[1272],{"type":79,"value":252},{"type":67,"tag":202,"props":1274,"children":1275},{"style":215},[1276],{"type":79,"value":830},{"type":67,"tag":202,"props":1278,"children":1279},{"style":209},[1280],{"type":79,"value":223},{"type":67,"tag":202,"props":1282,"children":1283},{"style":264},[1284],{"type":79,"value":267},{"type":67,"tag":202,"props":1286,"children":1287},{"style":215},[1288],{"type":79,"value":272},{"type":67,"tag":202,"props":1290,"children":1291},{"class":204,"line":322},[1292],{"type":67,"tag":202,"props":1293,"children":1294},{"emptyLinePlaceholder":279},[1295],{"type":79,"value":282},{"type":67,"tag":202,"props":1297,"children":1298},{"class":204,"line":391},[1299,1304,1309,1313],{"type":67,"tag":202,"props":1300,"children":1301},{"style":249},[1302],{"type":79,"value":1303},"let",{"type":67,"tag":202,"props":1305,"children":1306},{"style":215},[1307],{"type":79,"value":1308}," realtimeChannel",{"type":67,"tag":202,"props":1310,"children":1311},{"style":209},[1312],{"type":79,"value":402},{"type":67,"tag":202,"props":1314,"children":1316},{"style":1315},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[1317],{"type":79,"value":1318}," RealtimeChannel\n",{"type":67,"tag":202,"props":1320,"children":1321},{"class":204,"line":425},[1322],{"type":67,"tag":202,"props":1323,"children":1324},{"emptyLinePlaceholder":279},[1325],{"type":79,"value":282},{"type":67,"tag":202,"props":1327,"children":1328},{"class":204,"line":442},[1329],{"type":67,"tag":202,"props":1330,"children":1332},{"style":1331},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[1333],{"type":79,"value":1334},"// Fetch collaborators and get the refresh method provided by useAsyncData\n",{"type":67,"tag":202,"props":1336,"children":1337},{"class":204,"line":472},[1338,1342,1346,1350,1354,1359,1363,1368,1372,1377,1381,1385,1389,1393,1397,1401,1406,1410,1414,1418,1422,1426],{"type":67,"tag":202,"props":1339,"children":1340},{"style":249},[1341],{"type":79,"value":252},{"type":67,"tag":202,"props":1343,"children":1344},{"style":209},[1345],{"type":79,"value":333},{"type":67,"tag":202,"props":1347,"children":1348},{"style":380},[1349],{"type":79,"value":865},{"type":67,"tag":202,"props":1351,"children":1352},{"style":209},[1353],{"type":79,"value":402},{"type":67,"tag":202,"props":1355,"children":1356},{"style":215},[1357],{"type":79,"value":1358}," collaborators",{"type":67,"tag":202,"props":1360,"children":1361},{"style":209},[1362],{"type":79,"value":914},{"type":67,"tag":202,"props":1364,"children":1365},{"style":380},[1366],{"type":79,"value":1367}," refresh",{"type":67,"tag":202,"props":1369,"children":1370},{"style":209},[1371],{"type":79,"value":402},{"type":67,"tag":202,"props":1373,"children":1374},{"style":215},[1375],{"type":79,"value":1376}," refreshCollaborators ",{"type":67,"tag":202,"props":1378,"children":1379},{"style":209},[1380],{"type":79,"value":879},{"type":67,"tag":202,"props":1382,"children":1383},{"style":209},[1384],{"type":79,"value":348},{"type":67,"tag":202,"props":1386,"children":1387},{"style":351},[1388],{"type":79,"value":354},{"type":67,"tag":202,"props":1390,"children":1391},{"style":264},[1392],{"type":79,"value":892},{"type":67,"tag":202,"props":1394,"children":1395},{"style":215},[1396],{"type":79,"value":383},{"type":67,"tag":202,"props":1398,"children":1399},{"style":209},[1400],{"type":79,"value":417},{"type":67,"tag":202,"props":1402,"children":1403},{"style":231},[1404],{"type":79,"value":1405},"collaborators",{"type":67,"tag":202,"props":1407,"children":1408},{"style":209},[1409],{"type":79,"value":417},{"type":67,"tag":202,"props":1411,"children":1412},{"style":209},[1413],{"type":79,"value":914},{"type":67,"tag":202,"props":1415,"children":1416},{"style":249},[1417],{"type":79,"value":304},{"type":67,"tag":202,"props":1419,"children":1420},{"style":209},[1421],{"type":79,"value":309},{"type":67,"tag":202,"props":1423,"children":1424},{"style":249},[1425],{"type":79,"value":314},{"type":67,"tag":202,"props":1427,"children":1428},{"style":209},[1429],{"type":79,"value":319},{"type":67,"tag":202,"props":1431,"children":1432},{"class":204,"line":481},[1433,1437,1441,1445,1449,1453,1457,1461,1465,1469,1473,1477,1481,1485,1489,1493,1497,1501,1505,1509,1513],{"type":67,"tag":202,"props":1434,"children":1435},{"style":249},[1436],{"type":79,"value":328},{"type":67,"tag":202,"props":1438,"children":1439},{"style":209},[1440],{"type":79,"value":333},{"type":67,"tag":202,"props":1442,"children":1443},{"style":215},[1444],{"type":79,"value":865},{"type":67,"tag":202,"props":1446,"children":1447},{"style":209},[1448],{"type":79,"value":343},{"type":67,"tag":202,"props":1450,"children":1451},{"style":209},[1452],{"type":79,"value":348},{"type":67,"tag":202,"props":1454,"children":1455},{"style":351},[1456],{"type":79,"value":354},{"type":67,"tag":202,"props":1458,"children":1459},{"style":215},[1460],{"type":79,"value":962},{"type":67,"tag":202,"props":1462,"children":1463},{"style":209},[1464],{"type":79,"value":105},{"type":67,"tag":202,"props":1466,"children":1467},{"style":264},[1468],{"type":79,"value":971},{"type":67,"tag":202,"props":1470,"children":1471},{"style":380},[1472],{"type":79,"value":383},{"type":67,"tag":202,"props":1474,"children":1475},{"style":209},[1476],{"type":79,"value":417},{"type":67,"tag":202,"props":1478,"children":1479},{"style":231},[1480],{"type":79,"value":1405},{"type":67,"tag":202,"props":1482,"children":1483},{"style":209},[1484],{"type":79,"value":417},{"type":67,"tag":202,"props":1486,"children":1487},{"style":380},[1488],{"type":79,"value":993},{"type":67,"tag":202,"props":1490,"children":1491},{"style":209},[1492],{"type":79,"value":105},{"type":67,"tag":202,"props":1494,"children":1495},{"style":264},[1496],{"type":79,"value":757},{"type":67,"tag":202,"props":1498,"children":1499},{"style":380},[1500],{"type":79,"value":383},{"type":67,"tag":202,"props":1502,"children":1503},{"style":209},[1504],{"type":79,"value":417},{"type":67,"tag":202,"props":1506,"children":1507},{"style":231},[1508],{"type":79,"value":1044},{"type":67,"tag":202,"props":1510,"children":1511},{"style":209},[1512],{"type":79,"value":417},{"type":67,"tag":202,"props":1514,"children":1515},{"style":380},[1516],{"type":79,"value":492},{"type":67,"tag":202,"props":1518,"children":1519},{"class":204,"line":495},[1520,1524],{"type":67,"tag":202,"props":1521,"children":1522},{"style":351},[1523],{"type":79,"value":1097},{"type":67,"tag":202,"props":1525,"children":1526},{"style":215},[1527],{"type":79,"value":1102},{"type":67,"tag":202,"props":1529,"children":1530},{"class":204,"line":545},[1531,1535],{"type":67,"tag":202,"props":1532,"children":1533},{"style":209},[1534],{"type":79,"value":879},{"type":67,"tag":202,"props":1536,"children":1537},{"style":215},[1538],{"type":79,"value":492},{"type":67,"tag":202,"props":1540,"children":1541},{"class":204,"line":554},[1542],{"type":67,"tag":202,"props":1543,"children":1544},{"emptyLinePlaceholder":279},[1545],{"type":79,"value":282},{"type":67,"tag":202,"props":1547,"children":1548},{"class":204,"line":562},[1549],{"type":67,"tag":202,"props":1550,"children":1551},{"style":1331},[1552],{"type":79,"value":1553},"// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\n",{"type":67,"tag":202,"props":1555,"children":1556},{"class":204,"line":595},[1557,1562,1566,1571,1575],{"type":67,"tag":202,"props":1558,"children":1559},{"style":264},[1560],{"type":79,"value":1561},"onMounted",{"type":67,"tag":202,"props":1563,"children":1564},{"style":215},[1565],{"type":79,"value":383},{"type":67,"tag":202,"props":1567,"children":1568},{"style":209},[1569],{"type":79,"value":1570},"()",{"type":67,"tag":202,"props":1572,"children":1573},{"style":249},[1574],{"type":79,"value":314},{"type":67,"tag":202,"props":1576,"children":1577},{"style":209},[1578],{"type":79,"value":319},{"type":67,"tag":202,"props":1580,"children":1581},{"class":204,"line":648},[1582],{"type":67,"tag":202,"props":1583,"children":1584},{"style":1331},[1585],{"type":79,"value":1586}," // Real time listener for new workouts\n",{"type":67,"tag":202,"props":1588,"children":1589},{"class":204,"line":692},[1590,1595,1599,1603,1607,1612,1616,1620,1625,1629,1633,1637,1642],{"type":67,"tag":202,"props":1591,"children":1592},{"style":215},[1593],{"type":79,"value":1594}," realtimeChannel",{"type":67,"tag":202,"props":1596,"children":1597},{"style":209},[1598],{"type":79,"value":348},{"type":67,"tag":202,"props":1600,"children":1601},{"style":215},[1602],{"type":79,"value":962},{"type":67,"tag":202,"props":1604,"children":1605},{"style":209},[1606],{"type":79,"value":105},{"type":67,"tag":202,"props":1608,"children":1609},{"style":264},[1610],{"type":79,"value":1611},"channel",{"type":67,"tag":202,"props":1613,"children":1614},{"style":380},[1615],{"type":79,"value":383},{"type":67,"tag":202,"props":1617,"children":1618},{"style":209},[1619],{"type":79,"value":417},{"type":67,"tag":202,"props":1621,"children":1622},{"style":231},[1623],{"type":79,"value":1624},"public:collaborators",{"type":67,"tag":202,"props":1626,"children":1627},{"style":209},[1628],{"type":79,"value":417},{"type":67,"tag":202,"props":1630,"children":1631},{"style":380},[1632],{"type":79,"value":993},{"type":67,"tag":202,"props":1634,"children":1635},{"style":209},[1636],{"type":79,"value":105},{"type":67,"tag":202,"props":1638,"children":1639},{"style":264},[1640],{"type":79,"value":1641},"on",{"type":67,"tag":202,"props":1643,"children":1644},{"style":380},[1645],{"type":79,"value":1646},"(\n",{"type":67,"tag":202,"props":1648,"children":1649},{"class":204,"line":700},[1650,1655,1660,1664],{"type":67,"tag":202,"props":1651,"children":1652},{"style":209},[1653],{"type":79,"value":1654}," '",{"type":67,"tag":202,"props":1656,"children":1657},{"style":231},[1658],{"type":79,"value":1659},"postgres_changes",{"type":67,"tag":202,"props":1661,"children":1662},{"style":209},[1663],{"type":79,"value":417},{"type":67,"tag":202,"props":1665,"children":1666},{"style":209},[1667],{"type":79,"value":422},{"type":67,"tag":202,"props":1669,"children":1671},{"class":204,"line":1670},19,[1672,1677,1682,1686,1690,1695,1699,1703,1708,1712,1716,1721,1725,1729,1734,1738,1742,1746,1750],{"type":67,"tag":202,"props":1673,"children":1674},{"style":209},[1675],{"type":79,"value":1676}," {",{"type":67,"tag":202,"props":1678,"children":1679},{"style":380},[1680],{"type":79,"value":1681}," event",{"type":67,"tag":202,"props":1683,"children":1684},{"style":209},[1685],{"type":79,"value":402},{"type":67,"tag":202,"props":1687,"children":1688},{"style":209},[1689],{"type":79,"value":407},{"type":67,"tag":202,"props":1691,"children":1692},{"style":231},[1693],{"type":79,"value":1694},"*",{"type":67,"tag":202,"props":1696,"children":1697},{"style":209},[1698],{"type":79,"value":417},{"type":67,"tag":202,"props":1700,"children":1701},{"style":209},[1702],{"type":79,"value":914},{"type":67,"tag":202,"props":1704,"children":1705},{"style":380},[1706],{"type":79,"value":1707}," schema",{"type":67,"tag":202,"props":1709,"children":1710},{"style":209},[1711],{"type":79,"value":402},{"type":67,"tag":202,"props":1713,"children":1714},{"style":209},[1715],{"type":79,"value":407},{"type":67,"tag":202,"props":1717,"children":1718},{"style":231},[1719],{"type":79,"value":1720},"public",{"type":67,"tag":202,"props":1722,"children":1723},{"style":209},[1724],{"type":79,"value":417},{"type":67,"tag":202,"props":1726,"children":1727},{"style":209},[1728],{"type":79,"value":914},{"type":67,"tag":202,"props":1730,"children":1731},{"style":380},[1732],{"type":79,"value":1733}," table",{"type":67,"tag":202,"props":1735,"children":1736},{"style":209},[1737],{"type":79,"value":402},{"type":67,"tag":202,"props":1739,"children":1740},{"style":209},[1741],{"type":79,"value":407},{"type":67,"tag":202,"props":1743,"children":1744},{"style":231},[1745],{"type":79,"value":1405},{"type":67,"tag":202,"props":1747,"children":1748},{"style":209},[1749],{"type":79,"value":417},{"type":67,"tag":202,"props":1751,"children":1752},{"style":209},[1753],{"type":79,"value":1754}," },\n",{"type":67,"tag":202,"props":1756,"children":1758},{"class":204,"line":1757},20,[1759,1764,1768,1773],{"type":67,"tag":202,"props":1760,"children":1761},{"style":209},[1762],{"type":79,"value":1763}," ()",{"type":67,"tag":202,"props":1765,"children":1766},{"style":249},[1767],{"type":79,"value":314},{"type":67,"tag":202,"props":1769,"children":1770},{"style":264},[1771],{"type":79,"value":1772}," refreshCollaborators",{"type":67,"tag":202,"props":1774,"children":1775},{"style":380},[1776],{"type":79,"value":272},{"type":67,"tag":202,"props":1778,"children":1780},{"class":204,"line":1779},21,[1781],{"type":67,"tag":202,"props":1782,"children":1783},{"style":380},[1784],{"type":79,"value":1785}," )\n",{"type":67,"tag":202,"props":1787,"children":1789},{"class":204,"line":1788},22,[1790],{"type":67,"tag":202,"props":1791,"children":1792},{"emptyLinePlaceholder":279},[1793],{"type":79,"value":282},{"type":67,"tag":202,"props":1795,"children":1797},{"class":204,"line":1796},23,[1798,1802,1806,1811],{"type":67,"tag":202,"props":1799,"children":1800},{"style":215},[1801],{"type":79,"value":1594},{"type":67,"tag":202,"props":1803,"children":1804},{"style":209},[1805],{"type":79,"value":105},{"type":67,"tag":202,"props":1807,"children":1808},{"style":264},[1809],{"type":79,"value":1810},"subscribe",{"type":67,"tag":202,"props":1812,"children":1813},{"style":380},[1814],{"type":79,"value":272},{"type":67,"tag":202,"props":1816,"children":1818},{"class":204,"line":1817},24,[1819,1823],{"type":67,"tag":202,"props":1820,"children":1821},{"style":209},[1822],{"type":79,"value":879},{"type":67,"tag":202,"props":1824,"children":1825},{"style":215},[1826],{"type":79,"value":492},{"type":67,"tag":202,"props":1828,"children":1830},{"class":204,"line":1829},25,[1831],{"type":67,"tag":202,"props":1832,"children":1833},{"emptyLinePlaceholder":279},[1834],{"type":79,"value":282},{"type":67,"tag":202,"props":1836,"children":1838},{"class":204,"line":1837},26,[1839],{"type":67,"tag":202,"props":1840,"children":1841},{"style":1331},[1842],{"type":79,"value":1843}," // Don't forget to unsubscribe when user left the page\n",{"type":67,"tag":202,"props":1845,"children":1847},{"class":204,"line":1846},27,[1848,1853,1857,1861,1865],{"type":67,"tag":202,"props":1849,"children":1850},{"style":264},[1851],{"type":79,"value":1852},"onUnmounted",{"type":67,"tag":202,"props":1854,"children":1855},{"style":215},[1856],{"type":79,"value":383},{"type":67,"tag":202,"props":1858,"children":1859},{"style":209},[1860],{"type":79,"value":1570},{"type":67,"tag":202,"props":1862,"children":1863},{"style":249},[1864],{"type":79,"value":314},{"type":67,"tag":202,"props":1866,"children":1867},{"style":209},[1868],{"type":79,"value":319},{"type":67,"tag":202,"props":1870,"children":1872},{"class":204,"line":1871},28,[1873,1878,1882,1887,1891,1896],{"type":67,"tag":202,"props":1874,"children":1875},{"style":215},[1876],{"type":79,"value":1877}," client",{"type":67,"tag":202,"props":1879,"children":1880},{"style":209},[1881],{"type":79,"value":105},{"type":67,"tag":202,"props":1883,"children":1884},{"style":264},[1885],{"type":79,"value":1886},"removeChannel",{"type":67,"tag":202,"props":1888,"children":1889},{"style":380},[1890],{"type":79,"value":383},{"type":67,"tag":202,"props":1892,"children":1893},{"style":215},[1894],{"type":79,"value":1895},"realtimeChannel",{"type":67,"tag":202,"props":1897,"children":1898},{"style":380},[1899],{"type":79,"value":492},{"type":67,"tag":202,"props":1901,"children":1903},{"class":204,"line":1902},29,[1904,1908],{"type":67,"tag":202,"props":1905,"children":1906},{"style":209},[1907],{"type":79,"value":879},{"type":67,"tag":202,"props":1909,"children":1910},{"style":215},[1911],{"type":79,"value":492},{"type":67,"tag":202,"props":1913,"children":1915},{"class":204,"line":1914},30,[1916,1920,1924],{"type":67,"tag":202,"props":1917,"children":1918},{"style":209},[1919],{"type":79,"value":706},{"type":67,"tag":202,"props":1921,"children":1922},{"style":380},[1923],{"type":79,"value":711},{"type":67,"tag":202,"props":1925,"children":1926},{"style":209},[1927],{"type":79,"value":242},{"type":67,"tag":147,"props":1929,"children":1931},{"id":1930},"typescript",[1932],{"type":79,"value":1933},"Typescript",{"type":67,"tag":68,"props":1935,"children":1936},{},[1937,1939,1945,1947,1953,1955,1962],{"type":79,"value":1938},"Database typings are passed to the client out of the box if the database generated types are found at ",{"type":67,"tag":116,"props":1940,"children":1942},{"className":1941},[],[1943],{"type":79,"value":1944},"./types/database.types.ts",{"type":79,"value":1946}," or ",{"type":67,"tag":72,"props":1948,"children":1950},{"href":1949},"/get-started#types",[1951],{"type":79,"value":1952},"your configured types path",{"type":79,"value":1954},". Check Supabase ",{"type":67,"tag":72,"props":1956,"children":1959},{"href":1957,"rel":1958},"https://supabase.com/docs/reference/javascript/release-notes#typescript-support",[76],[1960],{"type":79,"value":1961},"documentation",{"type":79,"value":1963}," for further information.",{"type":67,"tag":192,"props":1965,"children":1969},{"className":1966,"code":1967,"language":1968,"meta":61,"style":61},"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","## Generate types from live database\nsupabase gen types typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types typescript --local > types/database.types.ts\n","shell",[1970],{"type":67,"tag":116,"props":1971,"children":1972},{"__ignoreMap":61},[1973,1981,2024,2031,2039],{"type":67,"tag":202,"props":1974,"children":1975},{"class":204,"line":205},[1976],{"type":67,"tag":202,"props":1977,"children":1978},{"style":1331},[1979],{"type":79,"value":1980},"## Generate types from live database\n",{"type":67,"tag":202,"props":1982,"children":1983},{"class":204,"line":245},[1984,1989,1994,1999,2004,2009,2014,2019],{"type":67,"tag":202,"props":1985,"children":1986},{"style":1315},[1987],{"type":79,"value":1988},"supabase",{"type":67,"tag":202,"props":1990,"children":1991},{"style":231},[1992],{"type":79,"value":1993}," gen",{"type":67,"tag":202,"props":1995,"children":1996},{"style":231},[1997],{"type":79,"value":1998}," types",{"type":67,"tag":202,"props":2000,"children":2001},{"style":231},[2002],{"type":79,"value":2003}," typescript",{"type":67,"tag":202,"props":2005,"children":2006},{"style":231},[2007],{"type":79,"value":2008}," --project-id",{"type":67,"tag":202,"props":2010,"children":2011},{"style":231},[2012],{"type":79,"value":2013}," YourProjectId",{"type":67,"tag":202,"props":2015,"children":2016},{"style":209},[2017],{"type":79,"value":2018}," >",{"type":67,"tag":202,"props":2020,"children":2021},{"style":231},[2022],{"type":79,"value":2023}," types/database.types.ts\n",{"type":67,"tag":202,"props":2025,"children":2026},{"class":204,"line":275},[2027],{"type":67,"tag":202,"props":2028,"children":2029},{"emptyLinePlaceholder":279},[2030],{"type":79,"value":282},{"type":67,"tag":202,"props":2032,"children":2033},{"class":204,"line":285},[2034],{"type":67,"tag":202,"props":2035,"children":2036},{"style":1331},[2037],{"type":79,"value":2038},"## Generate types when using local environment\n",{"type":67,"tag":202,"props":2040,"children":2041},{"class":204,"line":322},[2042,2046,2050,2054,2058,2063,2067],{"type":67,"tag":202,"props":2043,"children":2044},{"style":1315},[2045],{"type":79,"value":1988},{"type":67,"tag":202,"props":2047,"children":2048},{"style":231},[2049],{"type":79,"value":1993},{"type":67,"tag":202,"props":2051,"children":2052},{"style":231},[2053],{"type":79,"value":1998},{"type":67,"tag":202,"props":2055,"children":2056},{"style":231},[2057],{"type":79,"value":2003},{"type":67,"tag":202,"props":2059,"children":2060},{"style":231},[2061],{"type":79,"value":2062}," --local",{"type":67,"tag":202,"props":2064,"children":2065},{"style":209},[2066],{"type":79,"value":2018},{"type":67,"tag":202,"props":2068,"children":2069},{"style":231},[2070],{"type":79,"value":2023},{"type":67,"tag":68,"props":2072,"children":2073},{},[2074],{"type":79,"value":2075},"You can also pass Database typings to the client manually:",{"type":67,"tag":192,"props":2077,"children":2079},{"className":771,"code":2078,"language":773,"meta":61,"style":61},"\u003Cscript setup lang=\"ts\">\nimport type { Database } from '~/types'\nconst client = useSupabaseClient\u003CDatabase>()\n\u003C/script>\n",[2080],{"type":67,"tag":116,"props":2081,"children":2082},{"__ignoreMap":61},[2083,2122,2163,2200],{"type":67,"tag":202,"props":2084,"children":2085},{"class":204,"line":205},[2086,2090,2094,2098,2102,2106,2110,2114,2118],{"type":67,"tag":202,"props":2087,"children":2088},{"style":209},[2089],{"type":79,"value":212},{"type":67,"tag":202,"props":2091,"children":2092},{"style":380},[2093],{"type":79,"value":711},{"type":67,"tag":202,"props":2095,"children":2096},{"style":249},[2097],{"type":79,"value":793},{"type":67,"tag":202,"props":2099,"children":2100},{"style":249},[2101],{"type":79,"value":798},{"type":67,"tag":202,"props":2103,"children":2104},{"style":209},[2105],{"type":79,"value":223},{"type":67,"tag":202,"props":2107,"children":2108},{"style":209},[2109],{"type":79,"value":228},{"type":67,"tag":202,"props":2111,"children":2112},{"style":231},[2113],{"type":79,"value":196},{"type":67,"tag":202,"props":2115,"children":2116},{"style":209},[2117],{"type":79,"value":228},{"type":67,"tag":202,"props":2119,"children":2120},{"style":209},[2121],{"type":79,"value":242},{"type":67,"tag":202,"props":2123,"children":2124},{"class":204,"line":245},[2125,2129,2133,2137,2142,2146,2150,2154,2159],{"type":67,"tag":202,"props":2126,"children":2127},{"style":351},[2128],{"type":79,"value":1221},{"type":67,"tag":202,"props":2130,"children":2131},{"style":351},[2132],{"type":79,"value":1226},{"type":67,"tag":202,"props":2134,"children":2135},{"style":209},[2136],{"type":79,"value":333},{"type":67,"tag":202,"props":2138,"children":2139},{"style":215},[2140],{"type":79,"value":2141}," Database",{"type":67,"tag":202,"props":2143,"children":2144},{"style":209},[2145],{"type":79,"value":343},{"type":67,"tag":202,"props":2147,"children":2148},{"style":351},[2149],{"type":79,"value":1244},{"type":67,"tag":202,"props":2151,"children":2152},{"style":209},[2153],{"type":79,"value":407},{"type":67,"tag":202,"props":2155,"children":2156},{"style":231},[2157],{"type":79,"value":2158},"~/types",{"type":67,"tag":202,"props":2160,"children":2161},{"style":209},[2162],{"type":79,"value":1258},{"type":67,"tag":202,"props":2164,"children":2165},{"class":204,"line":275},[2166,2170,2174,2178,2182,2186,2191,2196],{"type":67,"tag":202,"props":2167,"children":2168},{"style":249},[2169],{"type":79,"value":252},{"type":67,"tag":202,"props":2171,"children":2172},{"style":215},[2173],{"type":79,"value":830},{"type":67,"tag":202,"props":2175,"children":2176},{"style":209},[2177],{"type":79,"value":223},{"type":67,"tag":202,"props":2179,"children":2180},{"style":264},[2181],{"type":79,"value":267},{"type":67,"tag":202,"props":2183,"children":2184},{"style":209},[2185],{"type":79,"value":212},{"type":67,"tag":202,"props":2187,"children":2188},{"style":1315},[2189],{"type":79,"value":2190},"Database",{"type":67,"tag":202,"props":2192,"children":2193},{"style":209},[2194],{"type":79,"value":2195},">",{"type":67,"tag":202,"props":2197,"children":2198},{"style":215},[2199],{"type":79,"value":272},{"type":67,"tag":202,"props":2201,"children":2202},{"class":204,"line":285},[2203,2207,2211],{"type":67,"tag":202,"props":2204,"children":2205},{"style":209},[2206],{"type":79,"value":706},{"type":67,"tag":202,"props":2208,"children":2209},{"style":380},[2210],{"type":79,"value":711},{"type":67,"tag":202,"props":2212,"children":2213},{"style":209},[2214],{"type":79,"value":242},{"type":67,"tag":2216,"props":2217,"children":2218},"style",{},[2219],{"type":79,"value":2220},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":245,"depth":245,"links":2222},[2223,2224,2225,2226],{"id":149,"depth":245,"text":9},{"id":729,"depth":245,"text":732},{"id":1131,"depth":245,"text":1134},{"id":1930,"depth":245,"text":1933},"markdown","content:4.usage:composables:useSupabaseClient.md","content","4.usage/composables/useSupabaseClient.md","4.usage/composables/useSupabaseClient","md",[2234,2236],{"_path":10,"title":9,"description":2235},"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server",{"_path":25,"title":24,"description":2237},"Auto import and use your Supabase user's session with the useSupabaseSession composable",1733842352283] \ No newline at end of file +[{"data":1,"prerenderedAt":2238},["ShallowReactive",2],{"navigation":3,"/usage/composables/usesupabaseclient":58,"/usage/composables/usesupabaseclient-surround":2233},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":22,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":21,"description":62,"body":63,"_type":2227,"_id":2228,"_source":2229,"_file":2230,"_stem":2231,"_extension":2232},"composables",false,"","Make requests to the Supabase API with the useSupabaseClient composable",{"type":64,"children":65,"toc":2221},"root",[66,83,106,146,152,174,191,716,727,733,747,769,1129,1135,1149,1163,1168,1928,1934,1964,2071,2076,2215],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71,81],{"type":67,"tag":72,"props":73,"children":77},"a",{"href":74,"rel":75},"https://nuxt.com/docs/guide/directory-structure/composables",[76],"nofollow",[78],{"type":79,"value":80},"text","Auto-import",{"type":79,"value":82}," your client inside your vue files.",{"type":67,"tag":68,"props":84,"children":85},{},[86,88,95,97,104],{"type":79,"value":87},"This composable is using ",{"type":67,"tag":72,"props":89,"children":92},{"href":90,"rel":91},"https://github.com/supabase/supabase-js/",[76],[93],{"type":79,"value":94},"supabase-js",{"type":79,"value":96}," under the hood, it gives access to the ",{"type":67,"tag":72,"props":98,"children":101},{"href":99,"rel":100},"https://supabase.com/docs/reference/javascript/initializing",[76],[102],{"type":79,"value":103},"Supabase client",{"type":79,"value":105},".",{"type":67,"tag":107,"props":108,"children":109},"blockquote",{},[110],{"type":67,"tag":68,"props":111,"children":112},{},[113,115,122,124,130,132,139,141,145],{"type":79,"value":114},"The client is initialized with the ",{"type":67,"tag":116,"props":117,"children":119},"code",{"className":118},[],[120],{"type":79,"value":121},"SUPABASE_KEY",{"type":79,"value":123}," you must have in your ",{"type":67,"tag":116,"props":125,"children":127},{"className":126},[],[128],{"type":79,"value":129},".env",{"type":79,"value":131}," file. It establishes the connection with the database and make use of user JWT to apply ",{"type":67,"tag":72,"props":133,"children":136},{"href":134,"rel":135},"https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security",[76],[137],{"type":79,"value":138},"RLS Policies",{"type":79,"value":140}," implemented in Supabase. If you want to bypass policies, you can use the ",{"type":67,"tag":72,"props":142,"children":143},{"href":38},[144],{"type":79,"value":37},{"type":79,"value":105},{"type":67,"tag":147,"props":148,"children":150},"h2",{"id":149},"authentication",[151],{"type":79,"value":9},{"type":67,"tag":68,"props":153,"children":154},{},[155,157,163,165,172],{"type":79,"value":156},"The useSupabaseClient composable is providing all methods to manage authorization under ",{"type":67,"tag":116,"props":158,"children":160},{"className":159},[],[161],{"type":79,"value":162},"useSupabaseClient().auth",{"type":79,"value":164},". For more details please see the ",{"type":67,"tag":72,"props":166,"children":169},{"href":167,"rel":168},"https://supabase.com/docs/reference/javascript/auth-api",[76],[170],{"type":79,"value":171},"supabase-js auth documentation",{"type":79,"value":173},". Here is an example for signing in and out:",{"type":67,"tag":175,"props":176,"children":178},"callout",{"icon":177},"i-heroicons-light-bulb",[179],{"type":67,"tag":68,"props":180,"children":181},{},[182,184,190],{"type":79,"value":183},"If you want a full explanation on how to handle the authentication process, please read this ",{"type":67,"tag":72,"props":185,"children":187},{"href":186},"/get-started#handle-authentication",[188],{"type":79,"value":189},"section",{"type":79,"value":105},{"type":67,"tag":192,"props":193,"children":197},"pre",{"className":194,"code":195,"language":196,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst supabase = useSupabaseClient()\n\nconst signInWithOAuth = async () => {\n const { error } = await supabase.auth.signInWithOAuth({\n provider: 'github',\n options: {\n redirectTo: 'http://localhost:3000/confirm',\n },\n })\n if (error) console.log(error)\n}\n\nconst signOut = async () => {\n const { error } = await supabase.auth.signOut()\n if (error) console.log(error)\n}\n\u003C/script>\n","ts",[198],{"type":67,"tag":116,"props":199,"children":200},{"__ignoreMap":61},[201,243,273,283,320,389,423,440,470,479,493,543,552,560,593,646,690,698],{"type":67,"tag":202,"props":203,"children":206},"span",{"class":204,"line":205},"line",1,[207,213,219,224,229,234,238],{"type":67,"tag":202,"props":208,"children":210},{"style":209},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[211],{"type":79,"value":212},"\u003C",{"type":67,"tag":202,"props":214,"children":216},{"style":215},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[217],{"type":79,"value":218},"script setup lang",{"type":67,"tag":202,"props":220,"children":221},{"style":209},[222],{"type":79,"value":223},"=",{"type":67,"tag":202,"props":225,"children":226},{"style":209},[227],{"type":79,"value":228},"\"",{"type":67,"tag":202,"props":230,"children":232},{"style":231},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[233],{"type":79,"value":196},{"type":67,"tag":202,"props":235,"children":236},{"style":209},[237],{"type":79,"value":228},{"type":67,"tag":202,"props":239,"children":240},{"style":209},[241],{"type":79,"value":242},">\n",{"type":67,"tag":202,"props":244,"children":246},{"class":204,"line":245},2,[247,253,258,262,268],{"type":67,"tag":202,"props":248,"children":250},{"style":249},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[251],{"type":79,"value":252},"const",{"type":67,"tag":202,"props":254,"children":255},{"style":215},[256],{"type":79,"value":257}," supabase ",{"type":67,"tag":202,"props":259,"children":260},{"style":209},[261],{"type":79,"value":223},{"type":67,"tag":202,"props":263,"children":265},{"style":264},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[266],{"type":79,"value":267}," useSupabaseClient",{"type":67,"tag":202,"props":269,"children":270},{"style":215},[271],{"type":79,"value":272},"()\n",{"type":67,"tag":202,"props":274,"children":276},{"class":204,"line":275},3,[277],{"type":67,"tag":202,"props":278,"children":280},{"emptyLinePlaceholder":279},true,[281],{"type":79,"value":282},"\n",{"type":67,"tag":202,"props":284,"children":286},{"class":204,"line":285},4,[287,291,296,300,305,310,315],{"type":67,"tag":202,"props":288,"children":289},{"style":249},[290],{"type":79,"value":252},{"type":67,"tag":202,"props":292,"children":293},{"style":215},[294],{"type":79,"value":295}," signInWithOAuth ",{"type":67,"tag":202,"props":297,"children":298},{"style":209},[299],{"type":79,"value":223},{"type":67,"tag":202,"props":301,"children":302},{"style":249},[303],{"type":79,"value":304}," async",{"type":67,"tag":202,"props":306,"children":307},{"style":209},[308],{"type":79,"value":309}," ()",{"type":67,"tag":202,"props":311,"children":312},{"style":249},[313],{"type":79,"value":314}," =>",{"type":67,"tag":202,"props":316,"children":317},{"style":209},[318],{"type":79,"value":319}," {\n",{"type":67,"tag":202,"props":321,"children":323},{"class":204,"line":322},5,[324,329,334,339,344,349,355,360,364,369,373,378,384],{"type":67,"tag":202,"props":325,"children":326},{"style":249},[327],{"type":79,"value":328}," const",{"type":67,"tag":202,"props":330,"children":331},{"style":209},[332],{"type":79,"value":333}," {",{"type":67,"tag":202,"props":335,"children":336},{"style":215},[337],{"type":79,"value":338}," error",{"type":67,"tag":202,"props":340,"children":341},{"style":209},[342],{"type":79,"value":343}," }",{"type":67,"tag":202,"props":345,"children":346},{"style":209},[347],{"type":79,"value":348}," =",{"type":67,"tag":202,"props":350,"children":352},{"style":351},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[353],{"type":79,"value":354}," await",{"type":67,"tag":202,"props":356,"children":357},{"style":215},[358],{"type":79,"value":359}," supabase",{"type":67,"tag":202,"props":361,"children":362},{"style":209},[363],{"type":79,"value":105},{"type":67,"tag":202,"props":365,"children":366},{"style":215},[367],{"type":79,"value":368},"auth",{"type":67,"tag":202,"props":370,"children":371},{"style":209},[372],{"type":79,"value":105},{"type":67,"tag":202,"props":374,"children":375},{"style":264},[376],{"type":79,"value":377},"signInWithOAuth",{"type":67,"tag":202,"props":379,"children":381},{"style":380},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[382],{"type":79,"value":383},"(",{"type":67,"tag":202,"props":385,"children":386},{"style":209},[387],{"type":79,"value":388},"{\n",{"type":67,"tag":202,"props":390,"children":392},{"class":204,"line":391},6,[393,398,403,408,413,418],{"type":67,"tag":202,"props":394,"children":395},{"style":380},[396],{"type":79,"value":397}," provider",{"type":67,"tag":202,"props":399,"children":400},{"style":209},[401],{"type":79,"value":402},":",{"type":67,"tag":202,"props":404,"children":405},{"style":209},[406],{"type":79,"value":407}," '",{"type":67,"tag":202,"props":409,"children":410},{"style":231},[411],{"type":79,"value":412},"github",{"type":67,"tag":202,"props":414,"children":415},{"style":209},[416],{"type":79,"value":417},"'",{"type":67,"tag":202,"props":419,"children":420},{"style":209},[421],{"type":79,"value":422},",\n",{"type":67,"tag":202,"props":424,"children":426},{"class":204,"line":425},7,[427,432,436],{"type":67,"tag":202,"props":428,"children":429},{"style":380},[430],{"type":79,"value":431}," options",{"type":67,"tag":202,"props":433,"children":434},{"style":209},[435],{"type":79,"value":402},{"type":67,"tag":202,"props":437,"children":438},{"style":209},[439],{"type":79,"value":319},{"type":67,"tag":202,"props":441,"children":443},{"class":204,"line":442},8,[444,449,453,457,462,466],{"type":67,"tag":202,"props":445,"children":446},{"style":380},[447],{"type":79,"value":448}," redirectTo",{"type":67,"tag":202,"props":450,"children":451},{"style":209},[452],{"type":79,"value":402},{"type":67,"tag":202,"props":454,"children":455},{"style":209},[456],{"type":79,"value":407},{"type":67,"tag":202,"props":458,"children":459},{"style":231},[460],{"type":79,"value":461},"http://localhost:3000/confirm",{"type":67,"tag":202,"props":463,"children":464},{"style":209},[465],{"type":79,"value":417},{"type":67,"tag":202,"props":467,"children":468},{"style":209},[469],{"type":79,"value":422},{"type":67,"tag":202,"props":471,"children":473},{"class":204,"line":472},9,[474],{"type":67,"tag":202,"props":475,"children":476},{"style":209},[477],{"type":79,"value":478}," },\n",{"type":67,"tag":202,"props":480,"children":482},{"class":204,"line":481},10,[483,488],{"type":67,"tag":202,"props":484,"children":485},{"style":209},[486],{"type":79,"value":487}," }",{"type":67,"tag":202,"props":489,"children":490},{"style":380},[491],{"type":79,"value":492},")\n",{"type":67,"tag":202,"props":494,"children":496},{"class":204,"line":495},11,[497,502,507,512,517,522,526,531,535,539],{"type":67,"tag":202,"props":498,"children":499},{"style":351},[500],{"type":79,"value":501}," if",{"type":67,"tag":202,"props":503,"children":504},{"style":380},[505],{"type":79,"value":506}," (",{"type":67,"tag":202,"props":508,"children":509},{"style":215},[510],{"type":79,"value":511},"error",{"type":67,"tag":202,"props":513,"children":514},{"style":380},[515],{"type":79,"value":516},") ",{"type":67,"tag":202,"props":518,"children":519},{"style":215},[520],{"type":79,"value":521},"console",{"type":67,"tag":202,"props":523,"children":524},{"style":209},[525],{"type":79,"value":105},{"type":67,"tag":202,"props":527,"children":528},{"style":264},[529],{"type":79,"value":530},"log",{"type":67,"tag":202,"props":532,"children":533},{"style":380},[534],{"type":79,"value":383},{"type":67,"tag":202,"props":536,"children":537},{"style":215},[538],{"type":79,"value":511},{"type":67,"tag":202,"props":540,"children":541},{"style":380},[542],{"type":79,"value":492},{"type":67,"tag":202,"props":544,"children":546},{"class":204,"line":545},12,[547],{"type":67,"tag":202,"props":548,"children":549},{"style":209},[550],{"type":79,"value":551},"}\n",{"type":67,"tag":202,"props":553,"children":555},{"class":204,"line":554},13,[556],{"type":67,"tag":202,"props":557,"children":558},{"emptyLinePlaceholder":279},[559],{"type":79,"value":282},{"type":67,"tag":202,"props":561,"children":563},{"class":204,"line":562},14,[564,568,573,577,581,585,589],{"type":67,"tag":202,"props":565,"children":566},{"style":249},[567],{"type":79,"value":252},{"type":67,"tag":202,"props":569,"children":570},{"style":215},[571],{"type":79,"value":572}," signOut ",{"type":67,"tag":202,"props":574,"children":575},{"style":209},[576],{"type":79,"value":223},{"type":67,"tag":202,"props":578,"children":579},{"style":249},[580],{"type":79,"value":304},{"type":67,"tag":202,"props":582,"children":583},{"style":209},[584],{"type":79,"value":309},{"type":67,"tag":202,"props":586,"children":587},{"style":249},[588],{"type":79,"value":314},{"type":67,"tag":202,"props":590,"children":591},{"style":209},[592],{"type":79,"value":319},{"type":67,"tag":202,"props":594,"children":596},{"class":204,"line":595},15,[597,601,605,609,613,617,621,625,629,633,637,642],{"type":67,"tag":202,"props":598,"children":599},{"style":249},[600],{"type":79,"value":328},{"type":67,"tag":202,"props":602,"children":603},{"style":209},[604],{"type":79,"value":333},{"type":67,"tag":202,"props":606,"children":607},{"style":215},[608],{"type":79,"value":338},{"type":67,"tag":202,"props":610,"children":611},{"style":209},[612],{"type":79,"value":343},{"type":67,"tag":202,"props":614,"children":615},{"style":209},[616],{"type":79,"value":348},{"type":67,"tag":202,"props":618,"children":619},{"style":351},[620],{"type":79,"value":354},{"type":67,"tag":202,"props":622,"children":623},{"style":215},[624],{"type":79,"value":359},{"type":67,"tag":202,"props":626,"children":627},{"style":209},[628],{"type":79,"value":105},{"type":67,"tag":202,"props":630,"children":631},{"style":215},[632],{"type":79,"value":368},{"type":67,"tag":202,"props":634,"children":635},{"style":209},[636],{"type":79,"value":105},{"type":67,"tag":202,"props":638,"children":639},{"style":264},[640],{"type":79,"value":641},"signOut",{"type":67,"tag":202,"props":643,"children":644},{"style":380},[645],{"type":79,"value":272},{"type":67,"tag":202,"props":647,"children":649},{"class":204,"line":648},16,[650,654,658,662,666,670,674,678,682,686],{"type":67,"tag":202,"props":651,"children":652},{"style":351},[653],{"type":79,"value":501},{"type":67,"tag":202,"props":655,"children":656},{"style":380},[657],{"type":79,"value":506},{"type":67,"tag":202,"props":659,"children":660},{"style":215},[661],{"type":79,"value":511},{"type":67,"tag":202,"props":663,"children":664},{"style":380},[665],{"type":79,"value":516},{"type":67,"tag":202,"props":667,"children":668},{"style":215},[669],{"type":79,"value":521},{"type":67,"tag":202,"props":671,"children":672},{"style":209},[673],{"type":79,"value":105},{"type":67,"tag":202,"props":675,"children":676},{"style":264},[677],{"type":79,"value":530},{"type":67,"tag":202,"props":679,"children":680},{"style":380},[681],{"type":79,"value":383},{"type":67,"tag":202,"props":683,"children":684},{"style":215},[685],{"type":79,"value":511},{"type":67,"tag":202,"props":687,"children":688},{"style":380},[689],{"type":79,"value":492},{"type":67,"tag":202,"props":691,"children":693},{"class":204,"line":692},17,[694],{"type":67,"tag":202,"props":695,"children":696},{"style":209},[697],{"type":79,"value":551},{"type":67,"tag":202,"props":699,"children":701},{"class":204,"line":700},18,[702,707,712],{"type":67,"tag":202,"props":703,"children":704},{"style":209},[705],{"type":79,"value":706},"\u003C/",{"type":67,"tag":202,"props":708,"children":709},{"style":215},[710],{"type":79,"value":711},"script",{"type":67,"tag":202,"props":713,"children":714},{"style":209},[715],{"type":79,"value":242},{"type":67,"tag":68,"props":717,"children":718},{},[719,721,725],{"type":79,"value":720},"Please also take a look at ",{"type":67,"tag":72,"props":722,"children":723},{"href":6},[724],{"type":79,"value":5},{"type":79,"value":726}," for the authorization flow.",{"type":67,"tag":147,"props":728,"children":730},{"id":729},"database-request",[731],{"type":79,"value":732},"Database Request",{"type":67,"tag":68,"props":734,"children":735},{},[736,738,745],{"type":79,"value":737},"Please check ",{"type":67,"tag":72,"props":739,"children":742},{"href":740,"rel":741},"https://supabase.com/docs/reference/javascript/select",[76],[743],{"type":79,"value":744},"Supabase",{"type":79,"value":746}," documentation to fully use the power of Supabase client.",{"type":67,"tag":68,"props":748,"children":749},{},[750,752,758,760,767],{"type":79,"value":751},"Here is an example of a fetch using the ",{"type":67,"tag":116,"props":753,"children":755},{"className":754},[],[756],{"type":79,"value":757},"select",{"type":79,"value":759}," method with Nuxt 3 ",{"type":67,"tag":72,"props":761,"children":764},{"href":762,"rel":763},"https://nuxt.com/docs/getting-started/data-fetching#useasyncdata",[76],[765],{"type":79,"value":766},"useAsyncData",{"type":79,"value":768}," composable.",{"type":67,"tag":192,"props":770,"children":774},{"className":771,"code":772,"language":773,"meta":61,"style":61},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst client = useSupabaseClient()\n\nconst { data: restaurant } = await useAsyncData('restaurant', async () => {\n const { data } = await client.from('restaurants').select('name, location').eq('name', 'My Restaurant Name').single()\n\n return data\n})\n\u003C/script>\n","vue",[775],{"type":67,"tag":116,"props":776,"children":777},{"__ignoreMap":61},[778,819,843,850,931,1083,1090,1103,1114],{"type":67,"tag":202,"props":779,"children":780},{"class":204,"line":205},[781,785,789,794,799,803,807,811,815],{"type":67,"tag":202,"props":782,"children":783},{"style":209},[784],{"type":79,"value":212},{"type":67,"tag":202,"props":786,"children":787},{"style":380},[788],{"type":79,"value":711},{"type":67,"tag":202,"props":790,"children":791},{"style":249},[792],{"type":79,"value":793}," setup",{"type":67,"tag":202,"props":795,"children":796},{"style":249},[797],{"type":79,"value":798}," lang",{"type":67,"tag":202,"props":800,"children":801},{"style":209},[802],{"type":79,"value":223},{"type":67,"tag":202,"props":804,"children":805},{"style":209},[806],{"type":79,"value":228},{"type":67,"tag":202,"props":808,"children":809},{"style":231},[810],{"type":79,"value":196},{"type":67,"tag":202,"props":812,"children":813},{"style":209},[814],{"type":79,"value":228},{"type":67,"tag":202,"props":816,"children":817},{"style":209},[818],{"type":79,"value":242},{"type":67,"tag":202,"props":820,"children":821},{"class":204,"line":245},[822,826,831,835,839],{"type":67,"tag":202,"props":823,"children":824},{"style":249},[825],{"type":79,"value":252},{"type":67,"tag":202,"props":827,"children":828},{"style":215},[829],{"type":79,"value":830}," client ",{"type":67,"tag":202,"props":832,"children":833},{"style":209},[834],{"type":79,"value":223},{"type":67,"tag":202,"props":836,"children":837},{"style":264},[838],{"type":79,"value":267},{"type":67,"tag":202,"props":840,"children":841},{"style":215},[842],{"type":79,"value":272},{"type":67,"tag":202,"props":844,"children":845},{"class":204,"line":275},[846],{"type":67,"tag":202,"props":847,"children":848},{"emptyLinePlaceholder":279},[849],{"type":79,"value":282},{"type":67,"tag":202,"props":851,"children":852},{"class":204,"line":285},[853,857,861,866,870,875,880,884,888,893,897,901,906,910,915,919,923,927],{"type":67,"tag":202,"props":854,"children":855},{"style":249},[856],{"type":79,"value":252},{"type":67,"tag":202,"props":858,"children":859},{"style":209},[860],{"type":79,"value":333},{"type":67,"tag":202,"props":862,"children":863},{"style":380},[864],{"type":79,"value":865}," data",{"type":67,"tag":202,"props":867,"children":868},{"style":209},[869],{"type":79,"value":402},{"type":67,"tag":202,"props":871,"children":872},{"style":215},[873],{"type":79,"value":874}," restaurant ",{"type":67,"tag":202,"props":876,"children":877},{"style":209},[878],{"type":79,"value":879},"}",{"type":67,"tag":202,"props":881,"children":882},{"style":209},[883],{"type":79,"value":348},{"type":67,"tag":202,"props":885,"children":886},{"style":351},[887],{"type":79,"value":354},{"type":67,"tag":202,"props":889,"children":890},{"style":264},[891],{"type":79,"value":892}," useAsyncData",{"type":67,"tag":202,"props":894,"children":895},{"style":215},[896],{"type":79,"value":383},{"type":67,"tag":202,"props":898,"children":899},{"style":209},[900],{"type":79,"value":417},{"type":67,"tag":202,"props":902,"children":903},{"style":231},[904],{"type":79,"value":905},"restaurant",{"type":67,"tag":202,"props":907,"children":908},{"style":209},[909],{"type":79,"value":417},{"type":67,"tag":202,"props":911,"children":912},{"style":209},[913],{"type":79,"value":914},",",{"type":67,"tag":202,"props":916,"children":917},{"style":249},[918],{"type":79,"value":304},{"type":67,"tag":202,"props":920,"children":921},{"style":209},[922],{"type":79,"value":309},{"type":67,"tag":202,"props":924,"children":925},{"style":249},[926],{"type":79,"value":314},{"type":67,"tag":202,"props":928,"children":929},{"style":209},[930],{"type":79,"value":319},{"type":67,"tag":202,"props":932,"children":933},{"class":204,"line":322},[934,938,942,946,950,954,958,963,967,972,976,980,985,989,994,998,1002,1006,1010,1015,1019,1023,1027,1032,1036,1040,1045,1049,1053,1057,1062,1066,1070,1074,1079],{"type":67,"tag":202,"props":935,"children":936},{"style":249},[937],{"type":79,"value":328},{"type":67,"tag":202,"props":939,"children":940},{"style":209},[941],{"type":79,"value":333},{"type":67,"tag":202,"props":943,"children":944},{"style":215},[945],{"type":79,"value":865},{"type":67,"tag":202,"props":947,"children":948},{"style":209},[949],{"type":79,"value":343},{"type":67,"tag":202,"props":951,"children":952},{"style":209},[953],{"type":79,"value":348},{"type":67,"tag":202,"props":955,"children":956},{"style":351},[957],{"type":79,"value":354},{"type":67,"tag":202,"props":959,"children":960},{"style":215},[961],{"type":79,"value":962}," client",{"type":67,"tag":202,"props":964,"children":965},{"style":209},[966],{"type":79,"value":105},{"type":67,"tag":202,"props":968,"children":969},{"style":264},[970],{"type":79,"value":971},"from",{"type":67,"tag":202,"props":973,"children":974},{"style":380},[975],{"type":79,"value":383},{"type":67,"tag":202,"props":977,"children":978},{"style":209},[979],{"type":79,"value":417},{"type":67,"tag":202,"props":981,"children":982},{"style":231},[983],{"type":79,"value":984},"restaurants",{"type":67,"tag":202,"props":986,"children":987},{"style":209},[988],{"type":79,"value":417},{"type":67,"tag":202,"props":990,"children":991},{"style":380},[992],{"type":79,"value":993},")",{"type":67,"tag":202,"props":995,"children":996},{"style":209},[997],{"type":79,"value":105},{"type":67,"tag":202,"props":999,"children":1000},{"style":264},[1001],{"type":79,"value":757},{"type":67,"tag":202,"props":1003,"children":1004},{"style":380},[1005],{"type":79,"value":383},{"type":67,"tag":202,"props":1007,"children":1008},{"style":209},[1009],{"type":79,"value":417},{"type":67,"tag":202,"props":1011,"children":1012},{"style":231},[1013],{"type":79,"value":1014},"name, location",{"type":67,"tag":202,"props":1016,"children":1017},{"style":209},[1018],{"type":79,"value":417},{"type":67,"tag":202,"props":1020,"children":1021},{"style":380},[1022],{"type":79,"value":993},{"type":67,"tag":202,"props":1024,"children":1025},{"style":209},[1026],{"type":79,"value":105},{"type":67,"tag":202,"props":1028,"children":1029},{"style":264},[1030],{"type":79,"value":1031},"eq",{"type":67,"tag":202,"props":1033,"children":1034},{"style":380},[1035],{"type":79,"value":383},{"type":67,"tag":202,"props":1037,"children":1038},{"style":209},[1039],{"type":79,"value":417},{"type":67,"tag":202,"props":1041,"children":1042},{"style":231},[1043],{"type":79,"value":1044},"name",{"type":67,"tag":202,"props":1046,"children":1047},{"style":209},[1048],{"type":79,"value":417},{"type":67,"tag":202,"props":1050,"children":1051},{"style":209},[1052],{"type":79,"value":914},{"type":67,"tag":202,"props":1054,"children":1055},{"style":209},[1056],{"type":79,"value":407},{"type":67,"tag":202,"props":1058,"children":1059},{"style":231},[1060],{"type":79,"value":1061},"My Restaurant Name",{"type":67,"tag":202,"props":1063,"children":1064},{"style":209},[1065],{"type":79,"value":417},{"type":67,"tag":202,"props":1067,"children":1068},{"style":380},[1069],{"type":79,"value":993},{"type":67,"tag":202,"props":1071,"children":1072},{"style":209},[1073],{"type":79,"value":105},{"type":67,"tag":202,"props":1075,"children":1076},{"style":264},[1077],{"type":79,"value":1078},"single",{"type":67,"tag":202,"props":1080,"children":1081},{"style":380},[1082],{"type":79,"value":272},{"type":67,"tag":202,"props":1084,"children":1085},{"class":204,"line":391},[1086],{"type":67,"tag":202,"props":1087,"children":1088},{"emptyLinePlaceholder":279},[1089],{"type":79,"value":282},{"type":67,"tag":202,"props":1091,"children":1092},{"class":204,"line":425},[1093,1098],{"type":67,"tag":202,"props":1094,"children":1095},{"style":351},[1096],{"type":79,"value":1097}," return",{"type":67,"tag":202,"props":1099,"children":1100},{"style":215},[1101],{"type":79,"value":1102}," data\n",{"type":67,"tag":202,"props":1104,"children":1105},{"class":204,"line":442},[1106,1110],{"type":67,"tag":202,"props":1107,"children":1108},{"style":209},[1109],{"type":79,"value":879},{"type":67,"tag":202,"props":1111,"children":1112},{"style":215},[1113],{"type":79,"value":492},{"type":67,"tag":202,"props":1115,"children":1116},{"class":204,"line":472},[1117,1121,1125],{"type":67,"tag":202,"props":1118,"children":1119},{"style":209},[1120],{"type":79,"value":706},{"type":67,"tag":202,"props":1122,"children":1123},{"style":380},[1124],{"type":79,"value":711},{"type":67,"tag":202,"props":1126,"children":1127},{"style":209},[1128],{"type":79,"value":242},{"type":67,"tag":147,"props":1130,"children":1132},{"id":1131},"realtime",[1133],{"type":79,"value":1134},"Realtime",{"type":67,"tag":68,"props":1136,"children":1137},{},[1138,1140,1147],{"type":79,"value":1139},"Based on ",{"type":67,"tag":72,"props":1141,"children":1144},{"href":1142,"rel":1143},"https://github.com/supabase/realtime",[76],[1145],{"type":79,"value":1146},"Supabase Realtime",{"type":79,"value":1148},", listen to changes in your PostgreSQL Database and broadcasts them over WebSockets.",{"type":67,"tag":68,"props":1150,"children":1151},{},[1152,1154,1161],{"type":79,"value":1153},"To enable it, make sure you have turned on the ",{"type":67,"tag":72,"props":1155,"children":1158},{"href":1156,"rel":1157},"https://supabase.com/docs/guides/api#realtime-api",[76],[1159],{"type":79,"value":1160},"Realtime API",{"type":79,"value":1162}," for your table.",{"type":67,"tag":68,"props":1164,"children":1165},{},[1166],{"type":79,"value":1167},"Then, listen to changes directly in your vue page / component:",{"type":67,"tag":192,"props":1169,"children":1171},{"className":771,"code":1170,"language":773,"meta":61,"style":61},"\u003Cscript setup lang=\"ts\">\nimport type { RealtimeChannel } from '@supabase/supabase-js'\n\nconst client = useSupabaseClient()\n\nlet realtimeChannel: RealtimeChannel\n\n// Fetch collaborators and get the refresh method provided by useAsyncData\nconst { data: collaborators, refresh: refreshCollaborators } = await useAsyncData('collaborators', async () => {\n const { data } = await client.from('collaborators').select('name')\n return data\n})\n\n// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\nonMounted(() => {\n // Real time listener for new workouts\n realtimeChannel = client.channel('public:collaborators').on(\n 'postgres_changes',\n { event: '*', schema: 'public', table: 'collaborators' },\n () => refreshCollaborators()\n )\n\n realtimeChannel.subscribe()\n})\n\n // Don't forget to unsubscribe when user left the page\nonUnmounted(() => {\n client.removeChannel(realtimeChannel)\n})\n\u003C/script>\n",[1172],{"type":67,"tag":116,"props":1173,"children":1174},{"__ignoreMap":61},[1175,1214,1259,1266,1289,1296,1319,1326,1335,1430,1517,1528,1539,1546,1554,1579,1587,1647,1668,1755,1777,1786,1794,1815,1827,1835,1844,1869,1900,1912],{"type":67,"tag":202,"props":1176,"children":1177},{"class":204,"line":205},[1178,1182,1186,1190,1194,1198,1202,1206,1210],{"type":67,"tag":202,"props":1179,"children":1180},{"style":209},[1181],{"type":79,"value":212},{"type":67,"tag":202,"props":1183,"children":1184},{"style":380},[1185],{"type":79,"value":711},{"type":67,"tag":202,"props":1187,"children":1188},{"style":249},[1189],{"type":79,"value":793},{"type":67,"tag":202,"props":1191,"children":1192},{"style":249},[1193],{"type":79,"value":798},{"type":67,"tag":202,"props":1195,"children":1196},{"style":209},[1197],{"type":79,"value":223},{"type":67,"tag":202,"props":1199,"children":1200},{"style":209},[1201],{"type":79,"value":228},{"type":67,"tag":202,"props":1203,"children":1204},{"style":231},[1205],{"type":79,"value":196},{"type":67,"tag":202,"props":1207,"children":1208},{"style":209},[1209],{"type":79,"value":228},{"type":67,"tag":202,"props":1211,"children":1212},{"style":209},[1213],{"type":79,"value":242},{"type":67,"tag":202,"props":1215,"children":1216},{"class":204,"line":245},[1217,1222,1227,1231,1236,1240,1245,1249,1254],{"type":67,"tag":202,"props":1218,"children":1219},{"style":351},[1220],{"type":79,"value":1221},"import",{"type":67,"tag":202,"props":1223,"children":1224},{"style":351},[1225],{"type":79,"value":1226}," type",{"type":67,"tag":202,"props":1228,"children":1229},{"style":209},[1230],{"type":79,"value":333},{"type":67,"tag":202,"props":1232,"children":1233},{"style":215},[1234],{"type":79,"value":1235}," RealtimeChannel",{"type":67,"tag":202,"props":1237,"children":1238},{"style":209},[1239],{"type":79,"value":343},{"type":67,"tag":202,"props":1241,"children":1242},{"style":351},[1243],{"type":79,"value":1244}," from",{"type":67,"tag":202,"props":1246,"children":1247},{"style":209},[1248],{"type":79,"value":407},{"type":67,"tag":202,"props":1250,"children":1251},{"style":231},[1252],{"type":79,"value":1253},"@supabase/supabase-js",{"type":67,"tag":202,"props":1255,"children":1256},{"style":209},[1257],{"type":79,"value":1258},"'\n",{"type":67,"tag":202,"props":1260,"children":1261},{"class":204,"line":275},[1262],{"type":67,"tag":202,"props":1263,"children":1264},{"emptyLinePlaceholder":279},[1265],{"type":79,"value":282},{"type":67,"tag":202,"props":1267,"children":1268},{"class":204,"line":285},[1269,1273,1277,1281,1285],{"type":67,"tag":202,"props":1270,"children":1271},{"style":249},[1272],{"type":79,"value":252},{"type":67,"tag":202,"props":1274,"children":1275},{"style":215},[1276],{"type":79,"value":830},{"type":67,"tag":202,"props":1278,"children":1279},{"style":209},[1280],{"type":79,"value":223},{"type":67,"tag":202,"props":1282,"children":1283},{"style":264},[1284],{"type":79,"value":267},{"type":67,"tag":202,"props":1286,"children":1287},{"style":215},[1288],{"type":79,"value":272},{"type":67,"tag":202,"props":1290,"children":1291},{"class":204,"line":322},[1292],{"type":67,"tag":202,"props":1293,"children":1294},{"emptyLinePlaceholder":279},[1295],{"type":79,"value":282},{"type":67,"tag":202,"props":1297,"children":1298},{"class":204,"line":391},[1299,1304,1309,1313],{"type":67,"tag":202,"props":1300,"children":1301},{"style":249},[1302],{"type":79,"value":1303},"let",{"type":67,"tag":202,"props":1305,"children":1306},{"style":215},[1307],{"type":79,"value":1308}," realtimeChannel",{"type":67,"tag":202,"props":1310,"children":1311},{"style":209},[1312],{"type":79,"value":402},{"type":67,"tag":202,"props":1314,"children":1316},{"style":1315},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[1317],{"type":79,"value":1318}," RealtimeChannel\n",{"type":67,"tag":202,"props":1320,"children":1321},{"class":204,"line":425},[1322],{"type":67,"tag":202,"props":1323,"children":1324},{"emptyLinePlaceholder":279},[1325],{"type":79,"value":282},{"type":67,"tag":202,"props":1327,"children":1328},{"class":204,"line":442},[1329],{"type":67,"tag":202,"props":1330,"children":1332},{"style":1331},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[1333],{"type":79,"value":1334},"// Fetch collaborators and get the refresh method provided by useAsyncData\n",{"type":67,"tag":202,"props":1336,"children":1337},{"class":204,"line":472},[1338,1342,1346,1350,1354,1359,1363,1368,1372,1377,1381,1385,1389,1393,1397,1401,1406,1410,1414,1418,1422,1426],{"type":67,"tag":202,"props":1339,"children":1340},{"style":249},[1341],{"type":79,"value":252},{"type":67,"tag":202,"props":1343,"children":1344},{"style":209},[1345],{"type":79,"value":333},{"type":67,"tag":202,"props":1347,"children":1348},{"style":380},[1349],{"type":79,"value":865},{"type":67,"tag":202,"props":1351,"children":1352},{"style":209},[1353],{"type":79,"value":402},{"type":67,"tag":202,"props":1355,"children":1356},{"style":215},[1357],{"type":79,"value":1358}," collaborators",{"type":67,"tag":202,"props":1360,"children":1361},{"style":209},[1362],{"type":79,"value":914},{"type":67,"tag":202,"props":1364,"children":1365},{"style":380},[1366],{"type":79,"value":1367}," refresh",{"type":67,"tag":202,"props":1369,"children":1370},{"style":209},[1371],{"type":79,"value":402},{"type":67,"tag":202,"props":1373,"children":1374},{"style":215},[1375],{"type":79,"value":1376}," refreshCollaborators ",{"type":67,"tag":202,"props":1378,"children":1379},{"style":209},[1380],{"type":79,"value":879},{"type":67,"tag":202,"props":1382,"children":1383},{"style":209},[1384],{"type":79,"value":348},{"type":67,"tag":202,"props":1386,"children":1387},{"style":351},[1388],{"type":79,"value":354},{"type":67,"tag":202,"props":1390,"children":1391},{"style":264},[1392],{"type":79,"value":892},{"type":67,"tag":202,"props":1394,"children":1395},{"style":215},[1396],{"type":79,"value":383},{"type":67,"tag":202,"props":1398,"children":1399},{"style":209},[1400],{"type":79,"value":417},{"type":67,"tag":202,"props":1402,"children":1403},{"style":231},[1404],{"type":79,"value":1405},"collaborators",{"type":67,"tag":202,"props":1407,"children":1408},{"style":209},[1409],{"type":79,"value":417},{"type":67,"tag":202,"props":1411,"children":1412},{"style":209},[1413],{"type":79,"value":914},{"type":67,"tag":202,"props":1415,"children":1416},{"style":249},[1417],{"type":79,"value":304},{"type":67,"tag":202,"props":1419,"children":1420},{"style":209},[1421],{"type":79,"value":309},{"type":67,"tag":202,"props":1423,"children":1424},{"style":249},[1425],{"type":79,"value":314},{"type":67,"tag":202,"props":1427,"children":1428},{"style":209},[1429],{"type":79,"value":319},{"type":67,"tag":202,"props":1431,"children":1432},{"class":204,"line":481},[1433,1437,1441,1445,1449,1453,1457,1461,1465,1469,1473,1477,1481,1485,1489,1493,1497,1501,1505,1509,1513],{"type":67,"tag":202,"props":1434,"children":1435},{"style":249},[1436],{"type":79,"value":328},{"type":67,"tag":202,"props":1438,"children":1439},{"style":209},[1440],{"type":79,"value":333},{"type":67,"tag":202,"props":1442,"children":1443},{"style":215},[1444],{"type":79,"value":865},{"type":67,"tag":202,"props":1446,"children":1447},{"style":209},[1448],{"type":79,"value":343},{"type":67,"tag":202,"props":1450,"children":1451},{"style":209},[1452],{"type":79,"value":348},{"type":67,"tag":202,"props":1454,"children":1455},{"style":351},[1456],{"type":79,"value":354},{"type":67,"tag":202,"props":1458,"children":1459},{"style":215},[1460],{"type":79,"value":962},{"type":67,"tag":202,"props":1462,"children":1463},{"style":209},[1464],{"type":79,"value":105},{"type":67,"tag":202,"props":1466,"children":1467},{"style":264},[1468],{"type":79,"value":971},{"type":67,"tag":202,"props":1470,"children":1471},{"style":380},[1472],{"type":79,"value":383},{"type":67,"tag":202,"props":1474,"children":1475},{"style":209},[1476],{"type":79,"value":417},{"type":67,"tag":202,"props":1478,"children":1479},{"style":231},[1480],{"type":79,"value":1405},{"type":67,"tag":202,"props":1482,"children":1483},{"style":209},[1484],{"type":79,"value":417},{"type":67,"tag":202,"props":1486,"children":1487},{"style":380},[1488],{"type":79,"value":993},{"type":67,"tag":202,"props":1490,"children":1491},{"style":209},[1492],{"type":79,"value":105},{"type":67,"tag":202,"props":1494,"children":1495},{"style":264},[1496],{"type":79,"value":757},{"type":67,"tag":202,"props":1498,"children":1499},{"style":380},[1500],{"type":79,"value":383},{"type":67,"tag":202,"props":1502,"children":1503},{"style":209},[1504],{"type":79,"value":417},{"type":67,"tag":202,"props":1506,"children":1507},{"style":231},[1508],{"type":79,"value":1044},{"type":67,"tag":202,"props":1510,"children":1511},{"style":209},[1512],{"type":79,"value":417},{"type":67,"tag":202,"props":1514,"children":1515},{"style":380},[1516],{"type":79,"value":492},{"type":67,"tag":202,"props":1518,"children":1519},{"class":204,"line":495},[1520,1524],{"type":67,"tag":202,"props":1521,"children":1522},{"style":351},[1523],{"type":79,"value":1097},{"type":67,"tag":202,"props":1525,"children":1526},{"style":215},[1527],{"type":79,"value":1102},{"type":67,"tag":202,"props":1529,"children":1530},{"class":204,"line":545},[1531,1535],{"type":67,"tag":202,"props":1532,"children":1533},{"style":209},[1534],{"type":79,"value":879},{"type":67,"tag":202,"props":1536,"children":1537},{"style":215},[1538],{"type":79,"value":492},{"type":67,"tag":202,"props":1540,"children":1541},{"class":204,"line":554},[1542],{"type":67,"tag":202,"props":1543,"children":1544},{"emptyLinePlaceholder":279},[1545],{"type":79,"value":282},{"type":67,"tag":202,"props":1547,"children":1548},{"class":204,"line":562},[1549],{"type":67,"tag":202,"props":1550,"children":1551},{"style":1331},[1552],{"type":79,"value":1553},"// Once page is mounted, listen to changes on the `collaborators` table and refresh collaborators when receiving event\n",{"type":67,"tag":202,"props":1555,"children":1556},{"class":204,"line":595},[1557,1562,1566,1571,1575],{"type":67,"tag":202,"props":1558,"children":1559},{"style":264},[1560],{"type":79,"value":1561},"onMounted",{"type":67,"tag":202,"props":1563,"children":1564},{"style":215},[1565],{"type":79,"value":383},{"type":67,"tag":202,"props":1567,"children":1568},{"style":209},[1569],{"type":79,"value":1570},"()",{"type":67,"tag":202,"props":1572,"children":1573},{"style":249},[1574],{"type":79,"value":314},{"type":67,"tag":202,"props":1576,"children":1577},{"style":209},[1578],{"type":79,"value":319},{"type":67,"tag":202,"props":1580,"children":1581},{"class":204,"line":648},[1582],{"type":67,"tag":202,"props":1583,"children":1584},{"style":1331},[1585],{"type":79,"value":1586}," // Real time listener for new workouts\n",{"type":67,"tag":202,"props":1588,"children":1589},{"class":204,"line":692},[1590,1595,1599,1603,1607,1612,1616,1620,1625,1629,1633,1637,1642],{"type":67,"tag":202,"props":1591,"children":1592},{"style":215},[1593],{"type":79,"value":1594}," realtimeChannel",{"type":67,"tag":202,"props":1596,"children":1597},{"style":209},[1598],{"type":79,"value":348},{"type":67,"tag":202,"props":1600,"children":1601},{"style":215},[1602],{"type":79,"value":962},{"type":67,"tag":202,"props":1604,"children":1605},{"style":209},[1606],{"type":79,"value":105},{"type":67,"tag":202,"props":1608,"children":1609},{"style":264},[1610],{"type":79,"value":1611},"channel",{"type":67,"tag":202,"props":1613,"children":1614},{"style":380},[1615],{"type":79,"value":383},{"type":67,"tag":202,"props":1617,"children":1618},{"style":209},[1619],{"type":79,"value":417},{"type":67,"tag":202,"props":1621,"children":1622},{"style":231},[1623],{"type":79,"value":1624},"public:collaborators",{"type":67,"tag":202,"props":1626,"children":1627},{"style":209},[1628],{"type":79,"value":417},{"type":67,"tag":202,"props":1630,"children":1631},{"style":380},[1632],{"type":79,"value":993},{"type":67,"tag":202,"props":1634,"children":1635},{"style":209},[1636],{"type":79,"value":105},{"type":67,"tag":202,"props":1638,"children":1639},{"style":264},[1640],{"type":79,"value":1641},"on",{"type":67,"tag":202,"props":1643,"children":1644},{"style":380},[1645],{"type":79,"value":1646},"(\n",{"type":67,"tag":202,"props":1648,"children":1649},{"class":204,"line":700},[1650,1655,1660,1664],{"type":67,"tag":202,"props":1651,"children":1652},{"style":209},[1653],{"type":79,"value":1654}," '",{"type":67,"tag":202,"props":1656,"children":1657},{"style":231},[1658],{"type":79,"value":1659},"postgres_changes",{"type":67,"tag":202,"props":1661,"children":1662},{"style":209},[1663],{"type":79,"value":417},{"type":67,"tag":202,"props":1665,"children":1666},{"style":209},[1667],{"type":79,"value":422},{"type":67,"tag":202,"props":1669,"children":1671},{"class":204,"line":1670},19,[1672,1677,1682,1686,1690,1695,1699,1703,1708,1712,1716,1721,1725,1729,1734,1738,1742,1746,1750],{"type":67,"tag":202,"props":1673,"children":1674},{"style":209},[1675],{"type":79,"value":1676}," {",{"type":67,"tag":202,"props":1678,"children":1679},{"style":380},[1680],{"type":79,"value":1681}," event",{"type":67,"tag":202,"props":1683,"children":1684},{"style":209},[1685],{"type":79,"value":402},{"type":67,"tag":202,"props":1687,"children":1688},{"style":209},[1689],{"type":79,"value":407},{"type":67,"tag":202,"props":1691,"children":1692},{"style":231},[1693],{"type":79,"value":1694},"*",{"type":67,"tag":202,"props":1696,"children":1697},{"style":209},[1698],{"type":79,"value":417},{"type":67,"tag":202,"props":1700,"children":1701},{"style":209},[1702],{"type":79,"value":914},{"type":67,"tag":202,"props":1704,"children":1705},{"style":380},[1706],{"type":79,"value":1707}," schema",{"type":67,"tag":202,"props":1709,"children":1710},{"style":209},[1711],{"type":79,"value":402},{"type":67,"tag":202,"props":1713,"children":1714},{"style":209},[1715],{"type":79,"value":407},{"type":67,"tag":202,"props":1717,"children":1718},{"style":231},[1719],{"type":79,"value":1720},"public",{"type":67,"tag":202,"props":1722,"children":1723},{"style":209},[1724],{"type":79,"value":417},{"type":67,"tag":202,"props":1726,"children":1727},{"style":209},[1728],{"type":79,"value":914},{"type":67,"tag":202,"props":1730,"children":1731},{"style":380},[1732],{"type":79,"value":1733}," table",{"type":67,"tag":202,"props":1735,"children":1736},{"style":209},[1737],{"type":79,"value":402},{"type":67,"tag":202,"props":1739,"children":1740},{"style":209},[1741],{"type":79,"value":407},{"type":67,"tag":202,"props":1743,"children":1744},{"style":231},[1745],{"type":79,"value":1405},{"type":67,"tag":202,"props":1747,"children":1748},{"style":209},[1749],{"type":79,"value":417},{"type":67,"tag":202,"props":1751,"children":1752},{"style":209},[1753],{"type":79,"value":1754}," },\n",{"type":67,"tag":202,"props":1756,"children":1758},{"class":204,"line":1757},20,[1759,1764,1768,1773],{"type":67,"tag":202,"props":1760,"children":1761},{"style":209},[1762],{"type":79,"value":1763}," ()",{"type":67,"tag":202,"props":1765,"children":1766},{"style":249},[1767],{"type":79,"value":314},{"type":67,"tag":202,"props":1769,"children":1770},{"style":264},[1771],{"type":79,"value":1772}," refreshCollaborators",{"type":67,"tag":202,"props":1774,"children":1775},{"style":380},[1776],{"type":79,"value":272},{"type":67,"tag":202,"props":1778,"children":1780},{"class":204,"line":1779},21,[1781],{"type":67,"tag":202,"props":1782,"children":1783},{"style":380},[1784],{"type":79,"value":1785}," )\n",{"type":67,"tag":202,"props":1787,"children":1789},{"class":204,"line":1788},22,[1790],{"type":67,"tag":202,"props":1791,"children":1792},{"emptyLinePlaceholder":279},[1793],{"type":79,"value":282},{"type":67,"tag":202,"props":1795,"children":1797},{"class":204,"line":1796},23,[1798,1802,1806,1811],{"type":67,"tag":202,"props":1799,"children":1800},{"style":215},[1801],{"type":79,"value":1594},{"type":67,"tag":202,"props":1803,"children":1804},{"style":209},[1805],{"type":79,"value":105},{"type":67,"tag":202,"props":1807,"children":1808},{"style":264},[1809],{"type":79,"value":1810},"subscribe",{"type":67,"tag":202,"props":1812,"children":1813},{"style":380},[1814],{"type":79,"value":272},{"type":67,"tag":202,"props":1816,"children":1818},{"class":204,"line":1817},24,[1819,1823],{"type":67,"tag":202,"props":1820,"children":1821},{"style":209},[1822],{"type":79,"value":879},{"type":67,"tag":202,"props":1824,"children":1825},{"style":215},[1826],{"type":79,"value":492},{"type":67,"tag":202,"props":1828,"children":1830},{"class":204,"line":1829},25,[1831],{"type":67,"tag":202,"props":1832,"children":1833},{"emptyLinePlaceholder":279},[1834],{"type":79,"value":282},{"type":67,"tag":202,"props":1836,"children":1838},{"class":204,"line":1837},26,[1839],{"type":67,"tag":202,"props":1840,"children":1841},{"style":1331},[1842],{"type":79,"value":1843}," // Don't forget to unsubscribe when user left the page\n",{"type":67,"tag":202,"props":1845,"children":1847},{"class":204,"line":1846},27,[1848,1853,1857,1861,1865],{"type":67,"tag":202,"props":1849,"children":1850},{"style":264},[1851],{"type":79,"value":1852},"onUnmounted",{"type":67,"tag":202,"props":1854,"children":1855},{"style":215},[1856],{"type":79,"value":383},{"type":67,"tag":202,"props":1858,"children":1859},{"style":209},[1860],{"type":79,"value":1570},{"type":67,"tag":202,"props":1862,"children":1863},{"style":249},[1864],{"type":79,"value":314},{"type":67,"tag":202,"props":1866,"children":1867},{"style":209},[1868],{"type":79,"value":319},{"type":67,"tag":202,"props":1870,"children":1872},{"class":204,"line":1871},28,[1873,1878,1882,1887,1891,1896],{"type":67,"tag":202,"props":1874,"children":1875},{"style":215},[1876],{"type":79,"value":1877}," client",{"type":67,"tag":202,"props":1879,"children":1880},{"style":209},[1881],{"type":79,"value":105},{"type":67,"tag":202,"props":1883,"children":1884},{"style":264},[1885],{"type":79,"value":1886},"removeChannel",{"type":67,"tag":202,"props":1888,"children":1889},{"style":380},[1890],{"type":79,"value":383},{"type":67,"tag":202,"props":1892,"children":1893},{"style":215},[1894],{"type":79,"value":1895},"realtimeChannel",{"type":67,"tag":202,"props":1897,"children":1898},{"style":380},[1899],{"type":79,"value":492},{"type":67,"tag":202,"props":1901,"children":1903},{"class":204,"line":1902},29,[1904,1908],{"type":67,"tag":202,"props":1905,"children":1906},{"style":209},[1907],{"type":79,"value":879},{"type":67,"tag":202,"props":1909,"children":1910},{"style":215},[1911],{"type":79,"value":492},{"type":67,"tag":202,"props":1913,"children":1915},{"class":204,"line":1914},30,[1916,1920,1924],{"type":67,"tag":202,"props":1917,"children":1918},{"style":209},[1919],{"type":79,"value":706},{"type":67,"tag":202,"props":1921,"children":1922},{"style":380},[1923],{"type":79,"value":711},{"type":67,"tag":202,"props":1925,"children":1926},{"style":209},[1927],{"type":79,"value":242},{"type":67,"tag":147,"props":1929,"children":1931},{"id":1930},"typescript",[1932],{"type":79,"value":1933},"Typescript",{"type":67,"tag":68,"props":1935,"children":1936},{},[1937,1939,1945,1947,1953,1955,1962],{"type":79,"value":1938},"Database typings are passed to the client out of the box if the database generated types are found at ",{"type":67,"tag":116,"props":1940,"children":1942},{"className":1941},[],[1943],{"type":79,"value":1944},"./types/database.types.ts",{"type":79,"value":1946}," or ",{"type":67,"tag":72,"props":1948,"children":1950},{"href":1949},"/get-started#types",[1951],{"type":79,"value":1952},"your configured types path",{"type":79,"value":1954},". Check Supabase ",{"type":67,"tag":72,"props":1956,"children":1959},{"href":1957,"rel":1958},"https://supabase.com/docs/reference/javascript/release-notes#typescript-support",[76],[1960],{"type":79,"value":1961},"documentation",{"type":79,"value":1963}," for further information.",{"type":67,"tag":192,"props":1965,"children":1969},{"className":1966,"code":1967,"language":1968,"meta":61,"style":61},"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","## Generate types from live database\nsupabase gen types typescript --project-id YourProjectId > types/database.types.ts\n\n## Generate types when using local environment\nsupabase gen types typescript --local > types/database.types.ts\n","shell",[1970],{"type":67,"tag":116,"props":1971,"children":1972},{"__ignoreMap":61},[1973,1981,2024,2031,2039],{"type":67,"tag":202,"props":1974,"children":1975},{"class":204,"line":205},[1976],{"type":67,"tag":202,"props":1977,"children":1978},{"style":1331},[1979],{"type":79,"value":1980},"## Generate types from live database\n",{"type":67,"tag":202,"props":1982,"children":1983},{"class":204,"line":245},[1984,1989,1994,1999,2004,2009,2014,2019],{"type":67,"tag":202,"props":1985,"children":1986},{"style":1315},[1987],{"type":79,"value":1988},"supabase",{"type":67,"tag":202,"props":1990,"children":1991},{"style":231},[1992],{"type":79,"value":1993}," gen",{"type":67,"tag":202,"props":1995,"children":1996},{"style":231},[1997],{"type":79,"value":1998}," types",{"type":67,"tag":202,"props":2000,"children":2001},{"style":231},[2002],{"type":79,"value":2003}," typescript",{"type":67,"tag":202,"props":2005,"children":2006},{"style":231},[2007],{"type":79,"value":2008}," --project-id",{"type":67,"tag":202,"props":2010,"children":2011},{"style":231},[2012],{"type":79,"value":2013}," YourProjectId",{"type":67,"tag":202,"props":2015,"children":2016},{"style":209},[2017],{"type":79,"value":2018}," >",{"type":67,"tag":202,"props":2020,"children":2021},{"style":231},[2022],{"type":79,"value":2023}," types/database.types.ts\n",{"type":67,"tag":202,"props":2025,"children":2026},{"class":204,"line":275},[2027],{"type":67,"tag":202,"props":2028,"children":2029},{"emptyLinePlaceholder":279},[2030],{"type":79,"value":282},{"type":67,"tag":202,"props":2032,"children":2033},{"class":204,"line":285},[2034],{"type":67,"tag":202,"props":2035,"children":2036},{"style":1331},[2037],{"type":79,"value":2038},"## Generate types when using local environment\n",{"type":67,"tag":202,"props":2040,"children":2041},{"class":204,"line":322},[2042,2046,2050,2054,2058,2063,2067],{"type":67,"tag":202,"props":2043,"children":2044},{"style":1315},[2045],{"type":79,"value":1988},{"type":67,"tag":202,"props":2047,"children":2048},{"style":231},[2049],{"type":79,"value":1993},{"type":67,"tag":202,"props":2051,"children":2052},{"style":231},[2053],{"type":79,"value":1998},{"type":67,"tag":202,"props":2055,"children":2056},{"style":231},[2057],{"type":79,"value":2003},{"type":67,"tag":202,"props":2059,"children":2060},{"style":231},[2061],{"type":79,"value":2062}," --local",{"type":67,"tag":202,"props":2064,"children":2065},{"style":209},[2066],{"type":79,"value":2018},{"type":67,"tag":202,"props":2068,"children":2069},{"style":231},[2070],{"type":79,"value":2023},{"type":67,"tag":68,"props":2072,"children":2073},{},[2074],{"type":79,"value":2075},"You can also pass Database typings to the client manually:",{"type":67,"tag":192,"props":2077,"children":2079},{"className":771,"code":2078,"language":773,"meta":61,"style":61},"\u003Cscript setup lang=\"ts\">\nimport type { Database } from '~/types'\nconst client = useSupabaseClient\u003CDatabase>()\n\u003C/script>\n",[2080],{"type":67,"tag":116,"props":2081,"children":2082},{"__ignoreMap":61},[2083,2122,2163,2200],{"type":67,"tag":202,"props":2084,"children":2085},{"class":204,"line":205},[2086,2090,2094,2098,2102,2106,2110,2114,2118],{"type":67,"tag":202,"props":2087,"children":2088},{"style":209},[2089],{"type":79,"value":212},{"type":67,"tag":202,"props":2091,"children":2092},{"style":380},[2093],{"type":79,"value":711},{"type":67,"tag":202,"props":2095,"children":2096},{"style":249},[2097],{"type":79,"value":793},{"type":67,"tag":202,"props":2099,"children":2100},{"style":249},[2101],{"type":79,"value":798},{"type":67,"tag":202,"props":2103,"children":2104},{"style":209},[2105],{"type":79,"value":223},{"type":67,"tag":202,"props":2107,"children":2108},{"style":209},[2109],{"type":79,"value":228},{"type":67,"tag":202,"props":2111,"children":2112},{"style":231},[2113],{"type":79,"value":196},{"type":67,"tag":202,"props":2115,"children":2116},{"style":209},[2117],{"type":79,"value":228},{"type":67,"tag":202,"props":2119,"children":2120},{"style":209},[2121],{"type":79,"value":242},{"type":67,"tag":202,"props":2123,"children":2124},{"class":204,"line":245},[2125,2129,2133,2137,2142,2146,2150,2154,2159],{"type":67,"tag":202,"props":2126,"children":2127},{"style":351},[2128],{"type":79,"value":1221},{"type":67,"tag":202,"props":2130,"children":2131},{"style":351},[2132],{"type":79,"value":1226},{"type":67,"tag":202,"props":2134,"children":2135},{"style":209},[2136],{"type":79,"value":333},{"type":67,"tag":202,"props":2138,"children":2139},{"style":215},[2140],{"type":79,"value":2141}," Database",{"type":67,"tag":202,"props":2143,"children":2144},{"style":209},[2145],{"type":79,"value":343},{"type":67,"tag":202,"props":2147,"children":2148},{"style":351},[2149],{"type":79,"value":1244},{"type":67,"tag":202,"props":2151,"children":2152},{"style":209},[2153],{"type":79,"value":407},{"type":67,"tag":202,"props":2155,"children":2156},{"style":231},[2157],{"type":79,"value":2158},"~/types",{"type":67,"tag":202,"props":2160,"children":2161},{"style":209},[2162],{"type":79,"value":1258},{"type":67,"tag":202,"props":2164,"children":2165},{"class":204,"line":275},[2166,2170,2174,2178,2182,2186,2191,2196],{"type":67,"tag":202,"props":2167,"children":2168},{"style":249},[2169],{"type":79,"value":252},{"type":67,"tag":202,"props":2171,"children":2172},{"style":215},[2173],{"type":79,"value":830},{"type":67,"tag":202,"props":2175,"children":2176},{"style":209},[2177],{"type":79,"value":223},{"type":67,"tag":202,"props":2179,"children":2180},{"style":264},[2181],{"type":79,"value":267},{"type":67,"tag":202,"props":2183,"children":2184},{"style":209},[2185],{"type":79,"value":212},{"type":67,"tag":202,"props":2187,"children":2188},{"style":1315},[2189],{"type":79,"value":2190},"Database",{"type":67,"tag":202,"props":2192,"children":2193},{"style":209},[2194],{"type":79,"value":2195},">",{"type":67,"tag":202,"props":2197,"children":2198},{"style":215},[2199],{"type":79,"value":272},{"type":67,"tag":202,"props":2201,"children":2202},{"class":204,"line":285},[2203,2207,2211],{"type":67,"tag":202,"props":2204,"children":2205},{"style":209},[2206],{"type":79,"value":706},{"type":67,"tag":202,"props":2208,"children":2209},{"style":380},[2210],{"type":79,"value":711},{"type":67,"tag":202,"props":2212,"children":2213},{"style":209},[2214],{"type":79,"value":242},{"type":67,"tag":2216,"props":2217,"children":2218},"style",{},[2219],{"type":79,"value":2220},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":245,"depth":245,"links":2222},[2223,2224,2225,2226],{"id":149,"depth":245,"text":9},{"id":729,"depth":245,"text":732},{"id":1131,"depth":245,"text":1134},{"id":1930,"depth":245,"text":1933},"markdown","content:4.usage:composables:useSupabaseClient.md","content","4.usage/composables/useSupabaseClient.md","4.usage/composables/useSupabaseClient","md",[2234,2236],{"_path":10,"title":9,"description":2235},"Authenticate your user thanks to the PKCE Oauth protocol that enables secure exchange of refresh and access tokens between an application and the authorization server",{"_path":25,"title":24,"description":2237},"Auto import and use your Supabase user's session with the useSupabaseSession composable",1734518136466] \ No newline at end of file diff --git a/usage/composables/usesupabaseclient/index.html b/usage/composables/usesupabaseclient/index.html index 5cdbdcbfb..92b7455ea 100644 --- a/usage/composables/usesupabaseclient/index.html +++ b/usage/composables/usesupabaseclient/index.html @@ -61,7 +61,7 @@ - + @@ -172,5 +172,5 @@ const client = useSupabaseClient<Database>() </script>
Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/composables/usesupabasesession/_payload.json b/usage/composables/usesupabasesession/_payload.json index df652fbba..c3dbc8d6e 100644 --- a/usage/composables/usesupabasesession/_payload.json +++ b/usage/composables/usesupabasesession/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":556},["ShallowReactive",2],{"navigation":3,"/usage/composables/usesupabasesession":58,"/usage/composables/usesupabasesession-surround":551},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":25,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":24,"description":62,"body":63,"_type":545,"_id":546,"_source":547,"_file":548,"_stem":549,"_extension":550},"composables",false,"","Auto import and use your Supabase user's session with the useSupabaseSession composable",{"type":64,"children":65,"toc":542},"root",[66,85,173,189,196,226,239,447,452,515,536],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71,74,83],{"type":72,"value":73},"text","Once logged in, you can ",{"type":67,"tag":75,"props":76,"children":80},"a",{"href":77,"rel":78},"https://nuxt.com/docs/guide/directory-structure/composables",[79],"nofollow",[81],{"type":72,"value":82},"auto-import",{"type":72,"value":84}," your user's session everywhere inside your vue files.",{"type":67,"tag":86,"props":87,"children":91},"pre",{"className":88,"code":89,"language":90,"meta":61,"style":61},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup>\nconst session = useSupabaseSession()\n\u003C/script>\n","vue",[92],{"type":67,"tag":93,"props":94,"children":95},"code",{"__ignoreMap":61},[96,125,156],{"type":67,"tag":97,"props":98,"children":101},"span",{"class":99,"line":100},"line",1,[102,108,114,120],{"type":67,"tag":97,"props":103,"children":105},{"style":104},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[106],{"type":72,"value":107},"\u003C",{"type":67,"tag":97,"props":109,"children":111},{"style":110},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[112],{"type":72,"value":113},"script",{"type":67,"tag":97,"props":115,"children":117},{"style":116},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[118],{"type":72,"value":119}," setup",{"type":67,"tag":97,"props":121,"children":122},{"style":104},[123],{"type":72,"value":124},">\n",{"type":67,"tag":97,"props":126,"children":128},{"class":99,"line":127},2,[129,134,140,145,151],{"type":67,"tag":97,"props":130,"children":131},{"style":116},[132],{"type":72,"value":133},"const",{"type":67,"tag":97,"props":135,"children":137},{"style":136},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[138],{"type":72,"value":139}," session ",{"type":67,"tag":97,"props":141,"children":142},{"style":104},[143],{"type":72,"value":144},"=",{"type":67,"tag":97,"props":146,"children":148},{"style":147},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[149],{"type":72,"value":150}," useSupabaseSession",{"type":67,"tag":97,"props":152,"children":153},{"style":136},[154],{"type":72,"value":155},"()\n",{"type":67,"tag":97,"props":157,"children":159},{"class":99,"line":158},3,[160,165,169],{"type":67,"tag":97,"props":161,"children":162},{"style":104},[163],{"type":72,"value":164},"\u003C/",{"type":67,"tag":97,"props":166,"children":167},{"style":110},[168],{"type":72,"value":113},{"type":67,"tag":97,"props":170,"children":171},{"style":104},[172],{"type":72,"value":124},{"type":67,"tag":174,"props":175,"children":177},"callout",{"icon":176},"i-heroicons-light-bulb",[178],{"type":67,"tag":68,"props":179,"children":180},{},[181,183,187],{"type":72,"value":182},"If you just need the User's information you can use ",{"type":67,"tag":75,"props":184,"children":185},{"href":28},[186],{"type":72,"value":27},{"type":72,"value":188}," which returns just the User information of the session.",{"type":67,"tag":190,"props":191,"children":193},"h2",{"id":192},"auth-middleware",[194],{"type":72,"value":195},"Auth middleware",{"type":67,"tag":174,"props":197,"children":198},{"icon":176},[199],{"type":67,"tag":68,"props":200,"children":201},{},[202,204,210,212,217,219,224],{"type":72,"value":203},"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the ",{"type":67,"tag":75,"props":205,"children":207},{"href":206},"/get-started#redirectoptions",[208],{"type":72,"value":209},"login",{"type":72,"value":211}," page. However, you can allow redirection to \"public\" pages by setting the ",{"type":67,"tag":75,"props":213,"children":214},{"href":206},[215],{"type":72,"value":216},"exclude",{"type":72,"value":218}," redirect option. Alternatively, you can enable the redirect only for certain routes using the ",{"type":67,"tag":75,"props":220,"children":221},{"href":206},[222],{"type":72,"value":223},"include",{"type":72,"value":225}," redirect option.",{"type":67,"tag":68,"props":227,"children":228},{},[229,231,237],{"type":72,"value":230},"If the ",{"type":67,"tag":75,"props":232,"children":234},{"href":233},"/get-started#redirect",[235],{"type":72,"value":236},"redirect",{"type":72,"value":238}," option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:",{"type":67,"tag":86,"props":240,"children":245},{"className":241,"code":242,"filename":243,"language":244,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtRouteMiddleware((to, _from) => {\n const session = useSupabaseSession()\n\n if (!session.value) {\n return navigateTo('/login')\n }\n})\n","middleware/auth.ts","ts",[246],{"type":67,"tag":93,"props":247,"children":248},{"__ignoreMap":61},[249,308,334,343,387,425,434],{"type":67,"tag":97,"props":250,"children":251},{"class":99,"line":100},[252,258,263,268,273,277,283,288,293,298,303],{"type":67,"tag":97,"props":253,"children":255},{"style":254},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[256],{"type":72,"value":257},"export",{"type":67,"tag":97,"props":259,"children":260},{"style":254},[261],{"type":72,"value":262}," default",{"type":67,"tag":97,"props":264,"children":265},{"style":147},[266],{"type":72,"value":267}," defineNuxtRouteMiddleware",{"type":67,"tag":97,"props":269,"children":270},{"style":136},[271],{"type":72,"value":272},"(",{"type":67,"tag":97,"props":274,"children":275},{"style":104},[276],{"type":72,"value":272},{"type":67,"tag":97,"props":278,"children":280},{"style":279},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[281],{"type":72,"value":282},"to",{"type":67,"tag":97,"props":284,"children":285},{"style":104},[286],{"type":72,"value":287},",",{"type":67,"tag":97,"props":289,"children":290},{"style":279},[291],{"type":72,"value":292}," _from",{"type":67,"tag":97,"props":294,"children":295},{"style":104},[296],{"type":72,"value":297},")",{"type":67,"tag":97,"props":299,"children":300},{"style":116},[301],{"type":72,"value":302}," =>",{"type":67,"tag":97,"props":304,"children":305},{"style":104},[306],{"type":72,"value":307}," {\n",{"type":67,"tag":97,"props":309,"children":310},{"class":99,"line":127},[311,316,321,326,330],{"type":67,"tag":97,"props":312,"children":313},{"style":116},[314],{"type":72,"value":315}," const",{"type":67,"tag":97,"props":317,"children":318},{"style":136},[319],{"type":72,"value":320}," session",{"type":67,"tag":97,"props":322,"children":323},{"style":104},[324],{"type":72,"value":325}," =",{"type":67,"tag":97,"props":327,"children":328},{"style":147},[329],{"type":72,"value":150},{"type":67,"tag":97,"props":331,"children":332},{"style":110},[333],{"type":72,"value":155},{"type":67,"tag":97,"props":335,"children":336},{"class":99,"line":158},[337],{"type":67,"tag":97,"props":338,"children":340},{"emptyLinePlaceholder":339},true,[341],{"type":72,"value":342},"\n",{"type":67,"tag":97,"props":344,"children":346},{"class":99,"line":345},4,[347,352,357,362,367,372,377,382],{"type":67,"tag":97,"props":348,"children":349},{"style":254},[350],{"type":72,"value":351}," if",{"type":67,"tag":97,"props":353,"children":354},{"style":110},[355],{"type":72,"value":356}," (",{"type":67,"tag":97,"props":358,"children":359},{"style":104},[360],{"type":72,"value":361},"!",{"type":67,"tag":97,"props":363,"children":364},{"style":136},[365],{"type":72,"value":366},"session",{"type":67,"tag":97,"props":368,"children":369},{"style":104},[370],{"type":72,"value":371},".",{"type":67,"tag":97,"props":373,"children":374},{"style":136},[375],{"type":72,"value":376},"value",{"type":67,"tag":97,"props":378,"children":379},{"style":110},[380],{"type":72,"value":381},") ",{"type":67,"tag":97,"props":383,"children":384},{"style":104},[385],{"type":72,"value":386},"{\n",{"type":67,"tag":97,"props":388,"children":390},{"class":99,"line":389},5,[391,396,401,405,410,416,420],{"type":67,"tag":97,"props":392,"children":393},{"style":254},[394],{"type":72,"value":395}," return",{"type":67,"tag":97,"props":397,"children":398},{"style":147},[399],{"type":72,"value":400}," navigateTo",{"type":67,"tag":97,"props":402,"children":403},{"style":110},[404],{"type":72,"value":272},{"type":67,"tag":97,"props":406,"children":407},{"style":104},[408],{"type":72,"value":409},"'",{"type":67,"tag":97,"props":411,"children":413},{"style":412},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[414],{"type":72,"value":415},"/login",{"type":67,"tag":97,"props":417,"children":418},{"style":104},[419],{"type":72,"value":409},{"type":67,"tag":97,"props":421,"children":422},{"style":110},[423],{"type":72,"value":424},")\n",{"type":67,"tag":97,"props":426,"children":428},{"class":99,"line":427},6,[429],{"type":67,"tag":97,"props":430,"children":431},{"style":104},[432],{"type":72,"value":433}," }\n",{"type":67,"tag":97,"props":435,"children":437},{"class":99,"line":436},7,[438,443],{"type":67,"tag":97,"props":439,"children":440},{"style":104},[441],{"type":72,"value":442},"}",{"type":67,"tag":97,"props":444,"children":445},{"style":136},[446],{"type":72,"value":424},{"type":67,"tag":68,"props":448,"children":449},{},[450],{"type":72,"value":451},"Then you can reference your middleware in your page with:",{"type":67,"tag":86,"props":453,"children":456},{"className":241,"code":454,"filename":455,"language":244,"meta":61,"style":61},"definePageMeta({\n middleware: 'auth'\n})\n","pages/dashboard.vue",[457],{"type":67,"tag":93,"props":458,"children":459},{"__ignoreMap":61},[460,476,504],{"type":67,"tag":97,"props":461,"children":462},{"class":99,"line":100},[463,468,472],{"type":67,"tag":97,"props":464,"children":465},{"style":147},[466],{"type":72,"value":467},"definePageMeta",{"type":67,"tag":97,"props":469,"children":470},{"style":136},[471],{"type":72,"value":272},{"type":67,"tag":97,"props":473,"children":474},{"style":104},[475],{"type":72,"value":386},{"type":67,"tag":97,"props":477,"children":478},{"class":99,"line":127},[479,484,489,494,499],{"type":67,"tag":97,"props":480,"children":481},{"style":110},[482],{"type":72,"value":483}," middleware",{"type":67,"tag":97,"props":485,"children":486},{"style":104},[487],{"type":72,"value":488},":",{"type":67,"tag":97,"props":490,"children":491},{"style":104},[492],{"type":72,"value":493}," '",{"type":67,"tag":97,"props":495,"children":496},{"style":412},[497],{"type":72,"value":498},"auth",{"type":67,"tag":97,"props":500,"children":501},{"style":104},[502],{"type":72,"value":503},"'\n",{"type":67,"tag":97,"props":505,"children":506},{"class":99,"line":158},[507,511],{"type":67,"tag":97,"props":508,"children":509},{"style":104},[510],{"type":72,"value":442},{"type":67,"tag":97,"props":512,"children":513},{"style":136},[514],{"type":72,"value":424},{"type":67,"tag":68,"props":516,"children":517},{},[518,520,527,529,535],{"type":72,"value":519},"Learn more about ",{"type":67,"tag":75,"props":521,"children":524},{"href":522,"rel":523},"https://nuxt.com/docs/guide/directory-structure/middleware",[79],[525],{"type":72,"value":526},"Nuxt middleware",{"type":72,"value":528}," and ",{"type":67,"tag":75,"props":530,"children":533},{"href":531,"rel":532},"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata",[79],[534],{"type":72,"value":467},{"type":72,"value":371},{"type":67,"tag":537,"props":538,"children":539},"style",{},[540],{"type":72,"value":541},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":127,"depth":127,"links":543},[544],{"id":192,"depth":127,"text":195},"markdown","content:4.usage:composables:useSupabaseSession.md","content","4.usage/composables/useSupabaseSession.md","4.usage/composables/useSupabaseSession","md",[552,554],{"_path":22,"title":21,"description":553},"Make requests to the Supabase API with the useSupabaseClient composable",{"_path":28,"title":27,"description":555},"Auto import and use your Supabase user with the useSupabaseUser composable",1733842352291] \ No newline at end of file +[{"data":1,"prerenderedAt":556},["ShallowReactive",2],{"navigation":3,"/usage/composables/usesupabasesession":58,"/usage/composables/usesupabasesession-surround":551},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":25,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":24,"description":62,"body":63,"_type":545,"_id":546,"_source":547,"_file":548,"_stem":549,"_extension":550},"composables",false,"","Auto import and use your Supabase user's session with the useSupabaseSession composable",{"type":64,"children":65,"toc":542},"root",[66,85,173,189,196,226,239,447,452,515,536],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71,74,83],{"type":72,"value":73},"text","Once logged in, you can ",{"type":67,"tag":75,"props":76,"children":80},"a",{"href":77,"rel":78},"https://nuxt.com/docs/guide/directory-structure/composables",[79],"nofollow",[81],{"type":72,"value":82},"auto-import",{"type":72,"value":84}," your user's session everywhere inside your vue files.",{"type":67,"tag":86,"props":87,"children":91},"pre",{"className":88,"code":89,"language":90,"meta":61,"style":61},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup>\nconst session = useSupabaseSession()\n\u003C/script>\n","vue",[92],{"type":67,"tag":93,"props":94,"children":95},"code",{"__ignoreMap":61},[96,125,156],{"type":67,"tag":97,"props":98,"children":101},"span",{"class":99,"line":100},"line",1,[102,108,114,120],{"type":67,"tag":97,"props":103,"children":105},{"style":104},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[106],{"type":72,"value":107},"\u003C",{"type":67,"tag":97,"props":109,"children":111},{"style":110},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[112],{"type":72,"value":113},"script",{"type":67,"tag":97,"props":115,"children":117},{"style":116},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[118],{"type":72,"value":119}," setup",{"type":67,"tag":97,"props":121,"children":122},{"style":104},[123],{"type":72,"value":124},">\n",{"type":67,"tag":97,"props":126,"children":128},{"class":99,"line":127},2,[129,134,140,145,151],{"type":67,"tag":97,"props":130,"children":131},{"style":116},[132],{"type":72,"value":133},"const",{"type":67,"tag":97,"props":135,"children":137},{"style":136},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[138],{"type":72,"value":139}," session ",{"type":67,"tag":97,"props":141,"children":142},{"style":104},[143],{"type":72,"value":144},"=",{"type":67,"tag":97,"props":146,"children":148},{"style":147},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[149],{"type":72,"value":150}," useSupabaseSession",{"type":67,"tag":97,"props":152,"children":153},{"style":136},[154],{"type":72,"value":155},"()\n",{"type":67,"tag":97,"props":157,"children":159},{"class":99,"line":158},3,[160,165,169],{"type":67,"tag":97,"props":161,"children":162},{"style":104},[163],{"type":72,"value":164},"\u003C/",{"type":67,"tag":97,"props":166,"children":167},{"style":110},[168],{"type":72,"value":113},{"type":67,"tag":97,"props":170,"children":171},{"style":104},[172],{"type":72,"value":124},{"type":67,"tag":174,"props":175,"children":177},"callout",{"icon":176},"i-heroicons-light-bulb",[178],{"type":67,"tag":68,"props":179,"children":180},{},[181,183,187],{"type":72,"value":182},"If you just need the User's information you can use ",{"type":67,"tag":75,"props":184,"children":185},{"href":28},[186],{"type":72,"value":27},{"type":72,"value":188}," which returns just the User information of the session.",{"type":67,"tag":190,"props":191,"children":193},"h2",{"id":192},"auth-middleware",[194],{"type":72,"value":195},"Auth middleware",{"type":67,"tag":174,"props":197,"children":198},{"icon":176},[199],{"type":67,"tag":68,"props":200,"children":201},{},[202,204,210,212,217,219,224],{"type":72,"value":203},"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the ",{"type":67,"tag":75,"props":205,"children":207},{"href":206},"/get-started#redirectoptions",[208],{"type":72,"value":209},"login",{"type":72,"value":211}," page. However, you can allow redirection to \"public\" pages by setting the ",{"type":67,"tag":75,"props":213,"children":214},{"href":206},[215],{"type":72,"value":216},"exclude",{"type":72,"value":218}," redirect option. Alternatively, you can enable the redirect only for certain routes using the ",{"type":67,"tag":75,"props":220,"children":221},{"href":206},[222],{"type":72,"value":223},"include",{"type":72,"value":225}," redirect option.",{"type":67,"tag":68,"props":227,"children":228},{},[229,231,237],{"type":72,"value":230},"If the ",{"type":67,"tag":75,"props":232,"children":234},{"href":233},"/get-started#redirect",[235],{"type":72,"value":236},"redirect",{"type":72,"value":238}," option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:",{"type":67,"tag":86,"props":240,"children":245},{"className":241,"code":242,"filename":243,"language":244,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtRouteMiddleware((to, _from) => {\n const session = useSupabaseSession()\n\n if (!session.value) {\n return navigateTo('/login')\n }\n})\n","middleware/auth.ts","ts",[246],{"type":67,"tag":93,"props":247,"children":248},{"__ignoreMap":61},[249,308,334,343,387,425,434],{"type":67,"tag":97,"props":250,"children":251},{"class":99,"line":100},[252,258,263,268,273,277,283,288,293,298,303],{"type":67,"tag":97,"props":253,"children":255},{"style":254},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[256],{"type":72,"value":257},"export",{"type":67,"tag":97,"props":259,"children":260},{"style":254},[261],{"type":72,"value":262}," default",{"type":67,"tag":97,"props":264,"children":265},{"style":147},[266],{"type":72,"value":267}," defineNuxtRouteMiddleware",{"type":67,"tag":97,"props":269,"children":270},{"style":136},[271],{"type":72,"value":272},"(",{"type":67,"tag":97,"props":274,"children":275},{"style":104},[276],{"type":72,"value":272},{"type":67,"tag":97,"props":278,"children":280},{"style":279},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[281],{"type":72,"value":282},"to",{"type":67,"tag":97,"props":284,"children":285},{"style":104},[286],{"type":72,"value":287},",",{"type":67,"tag":97,"props":289,"children":290},{"style":279},[291],{"type":72,"value":292}," _from",{"type":67,"tag":97,"props":294,"children":295},{"style":104},[296],{"type":72,"value":297},")",{"type":67,"tag":97,"props":299,"children":300},{"style":116},[301],{"type":72,"value":302}," =>",{"type":67,"tag":97,"props":304,"children":305},{"style":104},[306],{"type":72,"value":307}," {\n",{"type":67,"tag":97,"props":309,"children":310},{"class":99,"line":127},[311,316,321,326,330],{"type":67,"tag":97,"props":312,"children":313},{"style":116},[314],{"type":72,"value":315}," const",{"type":67,"tag":97,"props":317,"children":318},{"style":136},[319],{"type":72,"value":320}," session",{"type":67,"tag":97,"props":322,"children":323},{"style":104},[324],{"type":72,"value":325}," =",{"type":67,"tag":97,"props":327,"children":328},{"style":147},[329],{"type":72,"value":150},{"type":67,"tag":97,"props":331,"children":332},{"style":110},[333],{"type":72,"value":155},{"type":67,"tag":97,"props":335,"children":336},{"class":99,"line":158},[337],{"type":67,"tag":97,"props":338,"children":340},{"emptyLinePlaceholder":339},true,[341],{"type":72,"value":342},"\n",{"type":67,"tag":97,"props":344,"children":346},{"class":99,"line":345},4,[347,352,357,362,367,372,377,382],{"type":67,"tag":97,"props":348,"children":349},{"style":254},[350],{"type":72,"value":351}," if",{"type":67,"tag":97,"props":353,"children":354},{"style":110},[355],{"type":72,"value":356}," (",{"type":67,"tag":97,"props":358,"children":359},{"style":104},[360],{"type":72,"value":361},"!",{"type":67,"tag":97,"props":363,"children":364},{"style":136},[365],{"type":72,"value":366},"session",{"type":67,"tag":97,"props":368,"children":369},{"style":104},[370],{"type":72,"value":371},".",{"type":67,"tag":97,"props":373,"children":374},{"style":136},[375],{"type":72,"value":376},"value",{"type":67,"tag":97,"props":378,"children":379},{"style":110},[380],{"type":72,"value":381},") ",{"type":67,"tag":97,"props":383,"children":384},{"style":104},[385],{"type":72,"value":386},"{\n",{"type":67,"tag":97,"props":388,"children":390},{"class":99,"line":389},5,[391,396,401,405,410,416,420],{"type":67,"tag":97,"props":392,"children":393},{"style":254},[394],{"type":72,"value":395}," return",{"type":67,"tag":97,"props":397,"children":398},{"style":147},[399],{"type":72,"value":400}," navigateTo",{"type":67,"tag":97,"props":402,"children":403},{"style":110},[404],{"type":72,"value":272},{"type":67,"tag":97,"props":406,"children":407},{"style":104},[408],{"type":72,"value":409},"'",{"type":67,"tag":97,"props":411,"children":413},{"style":412},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[414],{"type":72,"value":415},"/login",{"type":67,"tag":97,"props":417,"children":418},{"style":104},[419],{"type":72,"value":409},{"type":67,"tag":97,"props":421,"children":422},{"style":110},[423],{"type":72,"value":424},")\n",{"type":67,"tag":97,"props":426,"children":428},{"class":99,"line":427},6,[429],{"type":67,"tag":97,"props":430,"children":431},{"style":104},[432],{"type":72,"value":433}," }\n",{"type":67,"tag":97,"props":435,"children":437},{"class":99,"line":436},7,[438,443],{"type":67,"tag":97,"props":439,"children":440},{"style":104},[441],{"type":72,"value":442},"}",{"type":67,"tag":97,"props":444,"children":445},{"style":136},[446],{"type":72,"value":424},{"type":67,"tag":68,"props":448,"children":449},{},[450],{"type":72,"value":451},"Then you can reference your middleware in your page with:",{"type":67,"tag":86,"props":453,"children":456},{"className":241,"code":454,"filename":455,"language":244,"meta":61,"style":61},"definePageMeta({\n middleware: 'auth'\n})\n","pages/dashboard.vue",[457],{"type":67,"tag":93,"props":458,"children":459},{"__ignoreMap":61},[460,476,504],{"type":67,"tag":97,"props":461,"children":462},{"class":99,"line":100},[463,468,472],{"type":67,"tag":97,"props":464,"children":465},{"style":147},[466],{"type":72,"value":467},"definePageMeta",{"type":67,"tag":97,"props":469,"children":470},{"style":136},[471],{"type":72,"value":272},{"type":67,"tag":97,"props":473,"children":474},{"style":104},[475],{"type":72,"value":386},{"type":67,"tag":97,"props":477,"children":478},{"class":99,"line":127},[479,484,489,494,499],{"type":67,"tag":97,"props":480,"children":481},{"style":110},[482],{"type":72,"value":483}," middleware",{"type":67,"tag":97,"props":485,"children":486},{"style":104},[487],{"type":72,"value":488},":",{"type":67,"tag":97,"props":490,"children":491},{"style":104},[492],{"type":72,"value":493}," '",{"type":67,"tag":97,"props":495,"children":496},{"style":412},[497],{"type":72,"value":498},"auth",{"type":67,"tag":97,"props":500,"children":501},{"style":104},[502],{"type":72,"value":503},"'\n",{"type":67,"tag":97,"props":505,"children":506},{"class":99,"line":158},[507,511],{"type":67,"tag":97,"props":508,"children":509},{"style":104},[510],{"type":72,"value":442},{"type":67,"tag":97,"props":512,"children":513},{"style":136},[514],{"type":72,"value":424},{"type":67,"tag":68,"props":516,"children":517},{},[518,520,527,529,535],{"type":72,"value":519},"Learn more about ",{"type":67,"tag":75,"props":521,"children":524},{"href":522,"rel":523},"https://nuxt.com/docs/guide/directory-structure/middleware",[79],[525],{"type":72,"value":526},"Nuxt middleware",{"type":72,"value":528}," and ",{"type":67,"tag":75,"props":530,"children":533},{"href":531,"rel":532},"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata",[79],[534],{"type":72,"value":467},{"type":72,"value":371},{"type":67,"tag":537,"props":538,"children":539},"style",{},[540],{"type":72,"value":541},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":127,"depth":127,"links":543},[544],{"id":192,"depth":127,"text":195},"markdown","content:4.usage:composables:useSupabaseSession.md","content","4.usage/composables/useSupabaseSession.md","4.usage/composables/useSupabaseSession","md",[552,554],{"_path":22,"title":21,"description":553},"Make requests to the Supabase API with the useSupabaseClient composable",{"_path":28,"title":27,"description":555},"Auto import and use your Supabase user with the useSupabaseUser composable",1734518136471] \ No newline at end of file diff --git a/usage/composables/usesupabasesession/index.html b/usage/composables/usesupabasesession/index.html index 8eba50470..ed64dec90 100644 --- a/usage/composables/usesupabasesession/index.html +++ b/usage/composables/usesupabasesession/index.html @@ -61,7 +61,7 @@ - + @@ -78,11 +78,11 @@ + + - - @@ -118,5 +118,5 @@ middleware: 'auth' })

Learn more about Nuxt middleware and definePageMeta.


Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/composables/usesupabaseuser/_payload.json b/usage/composables/usesupabaseuser/_payload.json index a0d6cbf2d..ff755b813 100644 --- a/usage/composables/usesupabaseuser/_payload.json +++ b/usage/composables/usesupabaseuser/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":542},["ShallowReactive",2],{"navigation":3,"/usage/composables/usesupabaseuser":58,"/usage/composables/usesupabaseuser-surround":537},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":28,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":27,"description":62,"body":63,"_type":531,"_id":532,"_source":533,"_file":534,"_stem":535,"_extension":536},"composables",false,"","Auto import and use your Supabase user with the useSupabaseUser composable",{"type":64,"children":65,"toc":528},"root",[66,85,173,180,212,225,433,438,501,522],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71,74,83],{"type":72,"value":73},"text","Once logged in, you can ",{"type":67,"tag":75,"props":76,"children":80},"a",{"href":77,"rel":78},"https://nuxt.com/docs/guide/directory-structure/composables",[79],"nofollow",[81],{"type":72,"value":82},"auto-import",{"type":72,"value":84}," your user everywhere inside your vue files.",{"type":67,"tag":86,"props":87,"children":91},"pre",{"className":88,"code":89,"language":90,"meta":61,"style":61},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup>\nconst user = useSupabaseUser()\n\u003C/script>\n","vue",[92],{"type":67,"tag":93,"props":94,"children":95},"code",{"__ignoreMap":61},[96,125,156],{"type":67,"tag":97,"props":98,"children":101},"span",{"class":99,"line":100},"line",1,[102,108,114,120],{"type":67,"tag":97,"props":103,"children":105},{"style":104},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[106],{"type":72,"value":107},"\u003C",{"type":67,"tag":97,"props":109,"children":111},{"style":110},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[112],{"type":72,"value":113},"script",{"type":67,"tag":97,"props":115,"children":117},{"style":116},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[118],{"type":72,"value":119}," setup",{"type":67,"tag":97,"props":121,"children":122},{"style":104},[123],{"type":72,"value":124},">\n",{"type":67,"tag":97,"props":126,"children":128},{"class":99,"line":127},2,[129,134,140,145,151],{"type":67,"tag":97,"props":130,"children":131},{"style":116},[132],{"type":72,"value":133},"const",{"type":67,"tag":97,"props":135,"children":137},{"style":136},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[138],{"type":72,"value":139}," user ",{"type":67,"tag":97,"props":141,"children":142},{"style":104},[143],{"type":72,"value":144},"=",{"type":67,"tag":97,"props":146,"children":148},{"style":147},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[149],{"type":72,"value":150}," useSupabaseUser",{"type":67,"tag":97,"props":152,"children":153},{"style":136},[154],{"type":72,"value":155},"()\n",{"type":67,"tag":97,"props":157,"children":159},{"class":99,"line":158},3,[160,165,169],{"type":67,"tag":97,"props":161,"children":162},{"style":104},[163],{"type":72,"value":164},"\u003C/",{"type":67,"tag":97,"props":166,"children":167},{"style":110},[168],{"type":72,"value":113},{"type":67,"tag":97,"props":170,"children":171},{"style":104},[172],{"type":72,"value":124},{"type":67,"tag":174,"props":175,"children":177},"h2",{"id":176},"auth-middleware",[178],{"type":72,"value":179},"Auth middleware",{"type":67,"tag":181,"props":182,"children":184},"callout",{"icon":183},"i-heroicons-light-bulb",[185],{"type":67,"tag":68,"props":186,"children":187},{},[188,190,196,198,203,205,210],{"type":72,"value":189},"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the ",{"type":67,"tag":75,"props":191,"children":193},{"href":192},"/get-started#redirectoptions",[194],{"type":72,"value":195},"login",{"type":72,"value":197}," page. However, you can allow redirection to \"public\" pages by setting the ",{"type":67,"tag":75,"props":199,"children":200},{"href":192},[201],{"type":72,"value":202},"exclude",{"type":72,"value":204}," redirect option. Alternatively, you can enable the redirect only for certain routes using the ",{"type":67,"tag":75,"props":206,"children":207},{"href":192},[208],{"type":72,"value":209},"include",{"type":72,"value":211}," redirect option.",{"type":67,"tag":68,"props":213,"children":214},{},[215,217,223],{"type":72,"value":216},"If the ",{"type":67,"tag":75,"props":218,"children":220},{"href":219},"/get-started#redirect",[221],{"type":72,"value":222},"redirect",{"type":72,"value":224}," option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:",{"type":67,"tag":86,"props":226,"children":231},{"className":227,"code":228,"filename":229,"language":230,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtRouteMiddleware((to, _from) => {\n const user = useSupabaseUser()\n\n if (!user.value) {\n return navigateTo('/login')\n }\n})\n","middleware/auth.ts","ts",[232],{"type":67,"tag":93,"props":233,"children":234},{"__ignoreMap":61},[235,294,320,329,373,411,420],{"type":67,"tag":97,"props":236,"children":237},{"class":99,"line":100},[238,244,249,254,259,263,269,274,279,284,289],{"type":67,"tag":97,"props":239,"children":241},{"style":240},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[242],{"type":72,"value":243},"export",{"type":67,"tag":97,"props":245,"children":246},{"style":240},[247],{"type":72,"value":248}," default",{"type":67,"tag":97,"props":250,"children":251},{"style":147},[252],{"type":72,"value":253}," defineNuxtRouteMiddleware",{"type":67,"tag":97,"props":255,"children":256},{"style":136},[257],{"type":72,"value":258},"(",{"type":67,"tag":97,"props":260,"children":261},{"style":104},[262],{"type":72,"value":258},{"type":67,"tag":97,"props":264,"children":266},{"style":265},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[267],{"type":72,"value":268},"to",{"type":67,"tag":97,"props":270,"children":271},{"style":104},[272],{"type":72,"value":273},",",{"type":67,"tag":97,"props":275,"children":276},{"style":265},[277],{"type":72,"value":278}," _from",{"type":67,"tag":97,"props":280,"children":281},{"style":104},[282],{"type":72,"value":283},")",{"type":67,"tag":97,"props":285,"children":286},{"style":116},[287],{"type":72,"value":288}," =>",{"type":67,"tag":97,"props":290,"children":291},{"style":104},[292],{"type":72,"value":293}," {\n",{"type":67,"tag":97,"props":295,"children":296},{"class":99,"line":127},[297,302,307,312,316],{"type":67,"tag":97,"props":298,"children":299},{"style":116},[300],{"type":72,"value":301}," const",{"type":67,"tag":97,"props":303,"children":304},{"style":136},[305],{"type":72,"value":306}," user",{"type":67,"tag":97,"props":308,"children":309},{"style":104},[310],{"type":72,"value":311}," =",{"type":67,"tag":97,"props":313,"children":314},{"style":147},[315],{"type":72,"value":150},{"type":67,"tag":97,"props":317,"children":318},{"style":110},[319],{"type":72,"value":155},{"type":67,"tag":97,"props":321,"children":322},{"class":99,"line":158},[323],{"type":67,"tag":97,"props":324,"children":326},{"emptyLinePlaceholder":325},true,[327],{"type":72,"value":328},"\n",{"type":67,"tag":97,"props":330,"children":332},{"class":99,"line":331},4,[333,338,343,348,353,358,363,368],{"type":67,"tag":97,"props":334,"children":335},{"style":240},[336],{"type":72,"value":337}," if",{"type":67,"tag":97,"props":339,"children":340},{"style":110},[341],{"type":72,"value":342}," (",{"type":67,"tag":97,"props":344,"children":345},{"style":104},[346],{"type":72,"value":347},"!",{"type":67,"tag":97,"props":349,"children":350},{"style":136},[351],{"type":72,"value":352},"user",{"type":67,"tag":97,"props":354,"children":355},{"style":104},[356],{"type":72,"value":357},".",{"type":67,"tag":97,"props":359,"children":360},{"style":136},[361],{"type":72,"value":362},"value",{"type":67,"tag":97,"props":364,"children":365},{"style":110},[366],{"type":72,"value":367},") ",{"type":67,"tag":97,"props":369,"children":370},{"style":104},[371],{"type":72,"value":372},"{\n",{"type":67,"tag":97,"props":374,"children":376},{"class":99,"line":375},5,[377,382,387,391,396,402,406],{"type":67,"tag":97,"props":378,"children":379},{"style":240},[380],{"type":72,"value":381}," return",{"type":67,"tag":97,"props":383,"children":384},{"style":147},[385],{"type":72,"value":386}," navigateTo",{"type":67,"tag":97,"props":388,"children":389},{"style":110},[390],{"type":72,"value":258},{"type":67,"tag":97,"props":392,"children":393},{"style":104},[394],{"type":72,"value":395},"'",{"type":67,"tag":97,"props":397,"children":399},{"style":398},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[400],{"type":72,"value":401},"/login",{"type":67,"tag":97,"props":403,"children":404},{"style":104},[405],{"type":72,"value":395},{"type":67,"tag":97,"props":407,"children":408},{"style":110},[409],{"type":72,"value":410},")\n",{"type":67,"tag":97,"props":412,"children":414},{"class":99,"line":413},6,[415],{"type":67,"tag":97,"props":416,"children":417},{"style":104},[418],{"type":72,"value":419}," }\n",{"type":67,"tag":97,"props":421,"children":423},{"class":99,"line":422},7,[424,429],{"type":67,"tag":97,"props":425,"children":426},{"style":104},[427],{"type":72,"value":428},"}",{"type":67,"tag":97,"props":430,"children":431},{"style":136},[432],{"type":72,"value":410},{"type":67,"tag":68,"props":434,"children":435},{},[436],{"type":72,"value":437},"Then you can reference your middleware in your page with:",{"type":67,"tag":86,"props":439,"children":442},{"className":227,"code":440,"filename":441,"language":230,"meta":61,"style":61},"definePageMeta({\n middleware: 'auth'\n})\n","pages/dashboard.vue",[443],{"type":67,"tag":93,"props":444,"children":445},{"__ignoreMap":61},[446,462,490],{"type":67,"tag":97,"props":447,"children":448},{"class":99,"line":100},[449,454,458],{"type":67,"tag":97,"props":450,"children":451},{"style":147},[452],{"type":72,"value":453},"definePageMeta",{"type":67,"tag":97,"props":455,"children":456},{"style":136},[457],{"type":72,"value":258},{"type":67,"tag":97,"props":459,"children":460},{"style":104},[461],{"type":72,"value":372},{"type":67,"tag":97,"props":463,"children":464},{"class":99,"line":127},[465,470,475,480,485],{"type":67,"tag":97,"props":466,"children":467},{"style":110},[468],{"type":72,"value":469}," middleware",{"type":67,"tag":97,"props":471,"children":472},{"style":104},[473],{"type":72,"value":474},":",{"type":67,"tag":97,"props":476,"children":477},{"style":104},[478],{"type":72,"value":479}," '",{"type":67,"tag":97,"props":481,"children":482},{"style":398},[483],{"type":72,"value":484},"auth",{"type":67,"tag":97,"props":486,"children":487},{"style":104},[488],{"type":72,"value":489},"'\n",{"type":67,"tag":97,"props":491,"children":492},{"class":99,"line":158},[493,497],{"type":67,"tag":97,"props":494,"children":495},{"style":104},[496],{"type":72,"value":428},{"type":67,"tag":97,"props":498,"children":499},{"style":136},[500],{"type":72,"value":410},{"type":67,"tag":68,"props":502,"children":503},{},[504,506,513,515,521],{"type":72,"value":505},"Learn more about ",{"type":67,"tag":75,"props":507,"children":510},{"href":508,"rel":509},"https://nuxt.com/docs/guide/directory-structure/middleware",[79],[511],{"type":72,"value":512},"Nuxt middleware",{"type":72,"value":514}," and ",{"type":67,"tag":75,"props":516,"children":519},{"href":517,"rel":518},"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata",[79],[520],{"type":72,"value":453},{"type":72,"value":357},{"type":67,"tag":523,"props":524,"children":525},"style",{},[526],{"type":72,"value":527},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":127,"depth":127,"links":529},[530],{"id":176,"depth":127,"text":179},"markdown","content:4.usage:composables:useSupabaseUser.md","content","4.usage/composables/useSupabaseUser.md","4.usage/composables/useSupabaseUser","md",[538,540],{"_path":25,"title":24,"description":539},"Auto import and use your Supabase user's session with the useSupabaseSession composable",{"_path":35,"title":34,"description":541},"Make requests to the Supabase API on server side with the serverSupabaseClient service",1733842352298] \ No newline at end of file +[{"data":1,"prerenderedAt":542},["ShallowReactive",2],{"navigation":3,"/usage/composables/usesupabaseuser":58,"/usage/composables/usesupabaseuser-surround":537},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":28,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":27,"description":62,"body":63,"_type":531,"_id":532,"_source":533,"_file":534,"_stem":535,"_extension":536},"composables",false,"","Auto import and use your Supabase user with the useSupabaseUser composable",{"type":64,"children":65,"toc":528},"root",[66,85,173,180,212,225,433,438,501,522],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71,74,83],{"type":72,"value":73},"text","Once logged in, you can ",{"type":67,"tag":75,"props":76,"children":80},"a",{"href":77,"rel":78},"https://nuxt.com/docs/guide/directory-structure/composables",[79],"nofollow",[81],{"type":72,"value":82},"auto-import",{"type":72,"value":84}," your user everywhere inside your vue files.",{"type":67,"tag":86,"props":87,"children":91},"pre",{"className":88,"code":89,"language":90,"meta":61,"style":61},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup>\nconst user = useSupabaseUser()\n\u003C/script>\n","vue",[92],{"type":67,"tag":93,"props":94,"children":95},"code",{"__ignoreMap":61},[96,125,156],{"type":67,"tag":97,"props":98,"children":101},"span",{"class":99,"line":100},"line",1,[102,108,114,120],{"type":67,"tag":97,"props":103,"children":105},{"style":104},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[106],{"type":72,"value":107},"\u003C",{"type":67,"tag":97,"props":109,"children":111},{"style":110},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[112],{"type":72,"value":113},"script",{"type":67,"tag":97,"props":115,"children":117},{"style":116},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[118],{"type":72,"value":119}," setup",{"type":67,"tag":97,"props":121,"children":122},{"style":104},[123],{"type":72,"value":124},">\n",{"type":67,"tag":97,"props":126,"children":128},{"class":99,"line":127},2,[129,134,140,145,151],{"type":67,"tag":97,"props":130,"children":131},{"style":116},[132],{"type":72,"value":133},"const",{"type":67,"tag":97,"props":135,"children":137},{"style":136},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[138],{"type":72,"value":139}," user ",{"type":67,"tag":97,"props":141,"children":142},{"style":104},[143],{"type":72,"value":144},"=",{"type":67,"tag":97,"props":146,"children":148},{"style":147},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[149],{"type":72,"value":150}," useSupabaseUser",{"type":67,"tag":97,"props":152,"children":153},{"style":136},[154],{"type":72,"value":155},"()\n",{"type":67,"tag":97,"props":157,"children":159},{"class":99,"line":158},3,[160,165,169],{"type":67,"tag":97,"props":161,"children":162},{"style":104},[163],{"type":72,"value":164},"\u003C/",{"type":67,"tag":97,"props":166,"children":167},{"style":110},[168],{"type":72,"value":113},{"type":67,"tag":97,"props":170,"children":171},{"style":104},[172],{"type":72,"value":124},{"type":67,"tag":174,"props":175,"children":177},"h2",{"id":176},"auth-middleware",[178],{"type":72,"value":179},"Auth middleware",{"type":67,"tag":181,"props":182,"children":184},"callout",{"icon":183},"i-heroicons-light-bulb",[185],{"type":67,"tag":68,"props":186,"children":187},{},[188,190,196,198,203,205,210],{"type":72,"value":189},"By default, the module is implementing a redirect middleware. All pages of your application are automatically redirected to the ",{"type":67,"tag":75,"props":191,"children":193},{"href":192},"/get-started#redirectoptions",[194],{"type":72,"value":195},"login",{"type":72,"value":197}," page. However, you can allow redirection to \"public\" pages by setting the ",{"type":67,"tag":75,"props":199,"children":200},{"href":192},[201],{"type":72,"value":202},"exclude",{"type":72,"value":204}," redirect option. Alternatively, you can enable the redirect only for certain routes using the ",{"type":67,"tag":75,"props":206,"children":207},{"href":192},[208],{"type":72,"value":209},"include",{"type":72,"value":211}," redirect option.",{"type":67,"tag":68,"props":213,"children":214},{},[215,217,223],{"type":72,"value":216},"If the ",{"type":67,"tag":75,"props":218,"children":220},{"href":219},"/get-started#redirect",[221],{"type":72,"value":222},"redirect",{"type":72,"value":224}," option is disabled, you can protect your authenticated routes by creating a custom middleware in your project, here is an example:",{"type":67,"tag":86,"props":226,"children":231},{"className":227,"code":228,"filename":229,"language":230,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtRouteMiddleware((to, _from) => {\n const user = useSupabaseUser()\n\n if (!user.value) {\n return navigateTo('/login')\n }\n})\n","middleware/auth.ts","ts",[232],{"type":67,"tag":93,"props":233,"children":234},{"__ignoreMap":61},[235,294,320,329,373,411,420],{"type":67,"tag":97,"props":236,"children":237},{"class":99,"line":100},[238,244,249,254,259,263,269,274,279,284,289],{"type":67,"tag":97,"props":239,"children":241},{"style":240},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[242],{"type":72,"value":243},"export",{"type":67,"tag":97,"props":245,"children":246},{"style":240},[247],{"type":72,"value":248}," default",{"type":67,"tag":97,"props":250,"children":251},{"style":147},[252],{"type":72,"value":253}," defineNuxtRouteMiddleware",{"type":67,"tag":97,"props":255,"children":256},{"style":136},[257],{"type":72,"value":258},"(",{"type":67,"tag":97,"props":260,"children":261},{"style":104},[262],{"type":72,"value":258},{"type":67,"tag":97,"props":264,"children":266},{"style":265},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[267],{"type":72,"value":268},"to",{"type":67,"tag":97,"props":270,"children":271},{"style":104},[272],{"type":72,"value":273},",",{"type":67,"tag":97,"props":275,"children":276},{"style":265},[277],{"type":72,"value":278}," _from",{"type":67,"tag":97,"props":280,"children":281},{"style":104},[282],{"type":72,"value":283},")",{"type":67,"tag":97,"props":285,"children":286},{"style":116},[287],{"type":72,"value":288}," =>",{"type":67,"tag":97,"props":290,"children":291},{"style":104},[292],{"type":72,"value":293}," {\n",{"type":67,"tag":97,"props":295,"children":296},{"class":99,"line":127},[297,302,307,312,316],{"type":67,"tag":97,"props":298,"children":299},{"style":116},[300],{"type":72,"value":301}," const",{"type":67,"tag":97,"props":303,"children":304},{"style":136},[305],{"type":72,"value":306}," user",{"type":67,"tag":97,"props":308,"children":309},{"style":104},[310],{"type":72,"value":311}," =",{"type":67,"tag":97,"props":313,"children":314},{"style":147},[315],{"type":72,"value":150},{"type":67,"tag":97,"props":317,"children":318},{"style":110},[319],{"type":72,"value":155},{"type":67,"tag":97,"props":321,"children":322},{"class":99,"line":158},[323],{"type":67,"tag":97,"props":324,"children":326},{"emptyLinePlaceholder":325},true,[327],{"type":72,"value":328},"\n",{"type":67,"tag":97,"props":330,"children":332},{"class":99,"line":331},4,[333,338,343,348,353,358,363,368],{"type":67,"tag":97,"props":334,"children":335},{"style":240},[336],{"type":72,"value":337}," if",{"type":67,"tag":97,"props":339,"children":340},{"style":110},[341],{"type":72,"value":342}," (",{"type":67,"tag":97,"props":344,"children":345},{"style":104},[346],{"type":72,"value":347},"!",{"type":67,"tag":97,"props":349,"children":350},{"style":136},[351],{"type":72,"value":352},"user",{"type":67,"tag":97,"props":354,"children":355},{"style":104},[356],{"type":72,"value":357},".",{"type":67,"tag":97,"props":359,"children":360},{"style":136},[361],{"type":72,"value":362},"value",{"type":67,"tag":97,"props":364,"children":365},{"style":110},[366],{"type":72,"value":367},") ",{"type":67,"tag":97,"props":369,"children":370},{"style":104},[371],{"type":72,"value":372},"{\n",{"type":67,"tag":97,"props":374,"children":376},{"class":99,"line":375},5,[377,382,387,391,396,402,406],{"type":67,"tag":97,"props":378,"children":379},{"style":240},[380],{"type":72,"value":381}," return",{"type":67,"tag":97,"props":383,"children":384},{"style":147},[385],{"type":72,"value":386}," navigateTo",{"type":67,"tag":97,"props":388,"children":389},{"style":110},[390],{"type":72,"value":258},{"type":67,"tag":97,"props":392,"children":393},{"style":104},[394],{"type":72,"value":395},"'",{"type":67,"tag":97,"props":397,"children":399},{"style":398},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[400],{"type":72,"value":401},"/login",{"type":67,"tag":97,"props":403,"children":404},{"style":104},[405],{"type":72,"value":395},{"type":67,"tag":97,"props":407,"children":408},{"style":110},[409],{"type":72,"value":410},")\n",{"type":67,"tag":97,"props":412,"children":414},{"class":99,"line":413},6,[415],{"type":67,"tag":97,"props":416,"children":417},{"style":104},[418],{"type":72,"value":419}," }\n",{"type":67,"tag":97,"props":421,"children":423},{"class":99,"line":422},7,[424,429],{"type":67,"tag":97,"props":425,"children":426},{"style":104},[427],{"type":72,"value":428},"}",{"type":67,"tag":97,"props":430,"children":431},{"style":136},[432],{"type":72,"value":410},{"type":67,"tag":68,"props":434,"children":435},{},[436],{"type":72,"value":437},"Then you can reference your middleware in your page with:",{"type":67,"tag":86,"props":439,"children":442},{"className":227,"code":440,"filename":441,"language":230,"meta":61,"style":61},"definePageMeta({\n middleware: 'auth'\n})\n","pages/dashboard.vue",[443],{"type":67,"tag":93,"props":444,"children":445},{"__ignoreMap":61},[446,462,490],{"type":67,"tag":97,"props":447,"children":448},{"class":99,"line":100},[449,454,458],{"type":67,"tag":97,"props":450,"children":451},{"style":147},[452],{"type":72,"value":453},"definePageMeta",{"type":67,"tag":97,"props":455,"children":456},{"style":136},[457],{"type":72,"value":258},{"type":67,"tag":97,"props":459,"children":460},{"style":104},[461],{"type":72,"value":372},{"type":67,"tag":97,"props":463,"children":464},{"class":99,"line":127},[465,470,475,480,485],{"type":67,"tag":97,"props":466,"children":467},{"style":110},[468],{"type":72,"value":469}," middleware",{"type":67,"tag":97,"props":471,"children":472},{"style":104},[473],{"type":72,"value":474},":",{"type":67,"tag":97,"props":476,"children":477},{"style":104},[478],{"type":72,"value":479}," '",{"type":67,"tag":97,"props":481,"children":482},{"style":398},[483],{"type":72,"value":484},"auth",{"type":67,"tag":97,"props":486,"children":487},{"style":104},[488],{"type":72,"value":489},"'\n",{"type":67,"tag":97,"props":491,"children":492},{"class":99,"line":158},[493,497],{"type":67,"tag":97,"props":494,"children":495},{"style":104},[496],{"type":72,"value":428},{"type":67,"tag":97,"props":498,"children":499},{"style":136},[500],{"type":72,"value":410},{"type":67,"tag":68,"props":502,"children":503},{},[504,506,513,515,521],{"type":72,"value":505},"Learn more about ",{"type":67,"tag":75,"props":507,"children":510},{"href":508,"rel":509},"https://nuxt.com/docs/guide/directory-structure/middleware",[79],[511],{"type":72,"value":512},"Nuxt middleware",{"type":72,"value":514}," and ",{"type":67,"tag":75,"props":516,"children":519},{"href":517,"rel":518},"https://nuxt.com/docs/guide/directory-structure/pages#page-metadata",[79],[520],{"type":72,"value":453},{"type":72,"value":357},{"type":67,"tag":523,"props":524,"children":525},"style",{},[526],{"type":72,"value":527},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":127,"depth":127,"links":529},[530],{"id":176,"depth":127,"text":179},"markdown","content:4.usage:composables:useSupabaseUser.md","content","4.usage/composables/useSupabaseUser.md","4.usage/composables/useSupabaseUser","md",[538,540],{"_path":25,"title":24,"description":539},"Auto import and use your Supabase user's session with the useSupabaseSession composable",{"_path":35,"title":34,"description":541},"Make requests to the Supabase API on server side with the serverSupabaseClient service",1734518136476] \ No newline at end of file diff --git a/usage/composables/usesupabaseuser/index.html b/usage/composables/usesupabaseuser/index.html index deb98cf4f..465641ec2 100644 --- a/usage/composables/usesupabaseuser/index.html +++ b/usage/composables/usesupabaseuser/index.html @@ -61,7 +61,7 @@ - + @@ -78,11 +78,11 @@ + + - - @@ -118,5 +118,5 @@ middleware: 'auth' })

Learn more about Nuxt middleware and definePageMeta.


Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/services/serversupabaseclient/_payload.json b/usage/services/serversupabaseclient/_payload.json index 70e06ecc6..cae22b955 100644 --- a/usage/services/serversupabaseclient/_payload.json +++ b/usage/services/serversupabaseclient/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":735},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabaseclient":58,"/usage/services/serversupabaseclient-surround":730},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":35,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":34,"description":62,"body":63,"_type":724,"_id":725,"_source":726,"_file":727,"_stem":728,"_extension":729},"services",false,"","Make requests to the Supabase API on server side with the serverSupabaseClient service",{"type":64,"children":65,"toc":722},"root",[66,91,111,139,463,468,573,587,716],{"type":67,"tag":68,"props":69,"children":72},"element","callout",{"color":70,"icon":71},"amber","i-heroicons-exclamation-triangle-20-solid",[73],{"type":67,"tag":74,"props":75,"children":76},"p",{},[77,80,89],{"type":78,"value":79},"text","This section assumes you're familiar with ",{"type":67,"tag":81,"props":82,"children":86},"a",{"href":83,"rel":84},"https://v3.nuxtjs.org/guide/concepts/server-engine",[85],"nofollow",[87],{"type":78,"value":88},"Nitro",{"type":78,"value":90},", the server engine powered by Nuxt.",{"type":67,"tag":74,"props":92,"children":93},{},[94,96,100,102,109],{"type":78,"value":95},"This function is working similary as the ",{"type":67,"tag":81,"props":97,"children":98},{"href":22},[99],{"type":78,"value":21},{"type":78,"value":101}," composable but is designed to be used in ",{"type":67,"tag":81,"props":103,"children":106},{"href":104,"rel":105},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[85],[107],{"type":78,"value":108},"server routes",{"type":78,"value":110},".",{"type":67,"tag":74,"props":112,"children":113},{},[114,116,122,124,130,132,137],{"type":78,"value":115},"Define your server route and just import the ",{"type":67,"tag":117,"props":118,"children":120},"code",{"className":119},[],[121],{"type":78,"value":34},{"type":78,"value":123}," from ",{"type":67,"tag":117,"props":125,"children":127},{"className":126},[],[128],{"type":78,"value":129},"#supabase/server",{"type":78,"value":131},". Be careful, ",{"type":67,"tag":117,"props":133,"children":135},{"className":134},[],[136],{"type":78,"value":34},{"type":78,"value":138}," is returning a promise.",{"type":67,"tag":140,"props":141,"children":146},"pre",{"className":142,"code":143,"filename":144,"language":145,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseClient } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = await serverSupabaseClient(event)\n\n const { data } = await client.from('libraries').select('*')\n\n return { libraries: data }\n})\n","server/api/libraries.ts","ts",[147],{"type":67,"tag":117,"props":148,"children":149},{"__ignoreMap":61},[150,199,209,266,308,316,410,418,450],{"type":67,"tag":151,"props":152,"children":155},"span",{"class":153,"line":154},"line",1,[156,162,168,174,179,184,189,194],{"type":67,"tag":151,"props":157,"children":159},{"style":158},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[160],{"type":78,"value":161},"import",{"type":67,"tag":151,"props":163,"children":165},{"style":164},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[166],{"type":78,"value":167}," {",{"type":67,"tag":151,"props":169,"children":171},{"style":170},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[172],{"type":78,"value":173}," serverSupabaseClient",{"type":67,"tag":151,"props":175,"children":176},{"style":164},[177],{"type":78,"value":178}," }",{"type":67,"tag":151,"props":180,"children":181},{"style":158},[182],{"type":78,"value":183}," from",{"type":67,"tag":151,"props":185,"children":186},{"style":164},[187],{"type":78,"value":188}," '",{"type":67,"tag":151,"props":190,"children":192},{"style":191},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[193],{"type":78,"value":129},{"type":67,"tag":151,"props":195,"children":196},{"style":164},[197],{"type":78,"value":198},"'\n",{"type":67,"tag":151,"props":200,"children":202},{"class":153,"line":201},2,[203],{"type":67,"tag":151,"props":204,"children":206},{"emptyLinePlaceholder":205},true,[207],{"type":78,"value":208},"\n",{"type":67,"tag":151,"props":210,"children":212},{"class":153,"line":211},3,[213,218,223,229,234,240,245,251,256,261],{"type":67,"tag":151,"props":214,"children":215},{"style":158},[216],{"type":78,"value":217},"export",{"type":67,"tag":151,"props":219,"children":220},{"style":158},[221],{"type":78,"value":222}," default",{"type":67,"tag":151,"props":224,"children":226},{"style":225},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[227],{"type":78,"value":228}," eventHandler",{"type":67,"tag":151,"props":230,"children":231},{"style":170},[232],{"type":78,"value":233},"(",{"type":67,"tag":151,"props":235,"children":237},{"style":236},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[238],{"type":78,"value":239},"async",{"type":67,"tag":151,"props":241,"children":242},{"style":164},[243],{"type":78,"value":244}," (",{"type":67,"tag":151,"props":246,"children":248},{"style":247},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[249],{"type":78,"value":250},"event",{"type":67,"tag":151,"props":252,"children":253},{"style":164},[254],{"type":78,"value":255},")",{"type":67,"tag":151,"props":257,"children":258},{"style":236},[259],{"type":78,"value":260}," =>",{"type":67,"tag":151,"props":262,"children":263},{"style":164},[264],{"type":78,"value":265}," {\n",{"type":67,"tag":151,"props":267,"children":269},{"class":153,"line":268},4,[270,275,280,285,290,294,299,303],{"type":67,"tag":151,"props":271,"children":272},{"style":236},[273],{"type":78,"value":274}," const",{"type":67,"tag":151,"props":276,"children":277},{"style":170},[278],{"type":78,"value":279}," client",{"type":67,"tag":151,"props":281,"children":282},{"style":164},[283],{"type":78,"value":284}," =",{"type":67,"tag":151,"props":286,"children":287},{"style":158},[288],{"type":78,"value":289}," await",{"type":67,"tag":151,"props":291,"children":292},{"style":225},[293],{"type":78,"value":173},{"type":67,"tag":151,"props":295,"children":297},{"style":296},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[298],{"type":78,"value":233},{"type":67,"tag":151,"props":300,"children":301},{"style":170},[302],{"type":78,"value":250},{"type":67,"tag":151,"props":304,"children":305},{"style":296},[306],{"type":78,"value":307},")\n",{"type":67,"tag":151,"props":309,"children":311},{"class":153,"line":310},5,[312],{"type":67,"tag":151,"props":313,"children":314},{"emptyLinePlaceholder":205},[315],{"type":78,"value":208},{"type":67,"tag":151,"props":317,"children":319},{"class":153,"line":318},6,[320,324,328,333,337,341,345,349,353,358,362,367,372,376,380,384,389,393,397,402,406],{"type":67,"tag":151,"props":321,"children":322},{"style":236},[323],{"type":78,"value":274},{"type":67,"tag":151,"props":325,"children":326},{"style":164},[327],{"type":78,"value":167},{"type":67,"tag":151,"props":329,"children":330},{"style":170},[331],{"type":78,"value":332}," data",{"type":67,"tag":151,"props":334,"children":335},{"style":164},[336],{"type":78,"value":178},{"type":67,"tag":151,"props":338,"children":339},{"style":164},[340],{"type":78,"value":284},{"type":67,"tag":151,"props":342,"children":343},{"style":158},[344],{"type":78,"value":289},{"type":67,"tag":151,"props":346,"children":347},{"style":170},[348],{"type":78,"value":279},{"type":67,"tag":151,"props":350,"children":351},{"style":164},[352],{"type":78,"value":110},{"type":67,"tag":151,"props":354,"children":355},{"style":225},[356],{"type":78,"value":357},"from",{"type":67,"tag":151,"props":359,"children":360},{"style":296},[361],{"type":78,"value":233},{"type":67,"tag":151,"props":363,"children":364},{"style":164},[365],{"type":78,"value":366},"'",{"type":67,"tag":151,"props":368,"children":369},{"style":191},[370],{"type":78,"value":371},"libraries",{"type":67,"tag":151,"props":373,"children":374},{"style":164},[375],{"type":78,"value":366},{"type":67,"tag":151,"props":377,"children":378},{"style":296},[379],{"type":78,"value":255},{"type":67,"tag":151,"props":381,"children":382},{"style":164},[383],{"type":78,"value":110},{"type":67,"tag":151,"props":385,"children":386},{"style":225},[387],{"type":78,"value":388},"select",{"type":67,"tag":151,"props":390,"children":391},{"style":296},[392],{"type":78,"value":233},{"type":67,"tag":151,"props":394,"children":395},{"style":164},[396],{"type":78,"value":366},{"type":67,"tag":151,"props":398,"children":399},{"style":191},[400],{"type":78,"value":401},"*",{"type":67,"tag":151,"props":403,"children":404},{"style":164},[405],{"type":78,"value":366},{"type":67,"tag":151,"props":407,"children":408},{"style":296},[409],{"type":78,"value":307},{"type":67,"tag":151,"props":411,"children":413},{"class":153,"line":412},7,[414],{"type":67,"tag":151,"props":415,"children":416},{"emptyLinePlaceholder":205},[417],{"type":78,"value":208},{"type":67,"tag":151,"props":419,"children":421},{"class":153,"line":420},8,[422,427,431,436,441,445],{"type":67,"tag":151,"props":423,"children":424},{"style":158},[425],{"type":78,"value":426}," return",{"type":67,"tag":151,"props":428,"children":429},{"style":164},[430],{"type":78,"value":167},{"type":67,"tag":151,"props":432,"children":433},{"style":296},[434],{"type":78,"value":435}," libraries",{"type":67,"tag":151,"props":437,"children":438},{"style":164},[439],{"type":78,"value":440},":",{"type":67,"tag":151,"props":442,"children":443},{"style":170},[444],{"type":78,"value":332},{"type":67,"tag":151,"props":446,"children":447},{"style":164},[448],{"type":78,"value":449}," }\n",{"type":67,"tag":151,"props":451,"children":453},{"class":153,"line":452},9,[454,459],{"type":67,"tag":151,"props":455,"children":456},{"style":164},[457],{"type":78,"value":458},"}",{"type":67,"tag":151,"props":460,"children":461},{"style":170},[462],{"type":78,"value":307},{"type":67,"tag":74,"props":464,"children":465},{},[466],{"type":78,"value":467},"Then call your API route from any vue file:",{"type":67,"tag":140,"props":469,"children":472},{"className":142,"code":470,"filename":471,"language":145,"meta":61,"style":61},"const fetchLibrary = async () => {\n const { libraries } = await $fetch('/api/libraries')\n}\n","pages/index.vue",[473],{"type":67,"tag":117,"props":474,"children":475},{"__ignoreMap":61},[476,512,565],{"type":67,"tag":151,"props":477,"children":478},{"class":153,"line":154},[479,484,489,494,499,504,508],{"type":67,"tag":151,"props":480,"children":481},{"style":236},[482],{"type":78,"value":483},"const",{"type":67,"tag":151,"props":485,"children":486},{"style":170},[487],{"type":78,"value":488}," fetchLibrary ",{"type":67,"tag":151,"props":490,"children":491},{"style":164},[492],{"type":78,"value":493},"=",{"type":67,"tag":151,"props":495,"children":496},{"style":236},[497],{"type":78,"value":498}," async",{"type":67,"tag":151,"props":500,"children":501},{"style":164},[502],{"type":78,"value":503}," ()",{"type":67,"tag":151,"props":505,"children":506},{"style":236},[507],{"type":78,"value":260},{"type":67,"tag":151,"props":509,"children":510},{"style":164},[511],{"type":78,"value":265},{"type":67,"tag":151,"props":513,"children":514},{"class":153,"line":201},[515,519,523,527,531,535,539,544,548,552,557,561],{"type":67,"tag":151,"props":516,"children":517},{"style":236},[518],{"type":78,"value":274},{"type":67,"tag":151,"props":520,"children":521},{"style":164},[522],{"type":78,"value":167},{"type":67,"tag":151,"props":524,"children":525},{"style":170},[526],{"type":78,"value":435},{"type":67,"tag":151,"props":528,"children":529},{"style":164},[530],{"type":78,"value":178},{"type":67,"tag":151,"props":532,"children":533},{"style":164},[534],{"type":78,"value":284},{"type":67,"tag":151,"props":536,"children":537},{"style":158},[538],{"type":78,"value":289},{"type":67,"tag":151,"props":540,"children":541},{"style":225},[542],{"type":78,"value":543}," $fetch",{"type":67,"tag":151,"props":545,"children":546},{"style":296},[547],{"type":78,"value":233},{"type":67,"tag":151,"props":549,"children":550},{"style":164},[551],{"type":78,"value":366},{"type":67,"tag":151,"props":553,"children":554},{"style":191},[555],{"type":78,"value":556},"/api/libraries",{"type":67,"tag":151,"props":558,"children":559},{"style":164},[560],{"type":78,"value":366},{"type":67,"tag":151,"props":562,"children":563},{"style":296},[564],{"type":78,"value":307},{"type":67,"tag":151,"props":566,"children":567},{"class":153,"line":211},[568],{"type":67,"tag":151,"props":569,"children":570},{"style":164},[571],{"type":78,"value":572},"}\n",{"type":67,"tag":74,"props":574,"children":575},{},[576,578,585],{"type":78,"value":577},"Be careful, if you want to call this route on SSR, please read this ",{"type":67,"tag":81,"props":579,"children":582},{"href":580,"rel":581},"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch",[85],[583],{"type":78,"value":584},"section",{"type":78,"value":586},", you must send your browser cookies including your supabase token.",{"type":67,"tag":140,"props":588,"children":590},{"className":142,"code":589,"filename":471,"language":145,"meta":61,"style":61},"const { data: { libraries }} = await useFetch('/api/libraries', {\n headers: useRequestHeaders(['cookie'])\n})\n",[591],{"type":67,"tag":117,"props":592,"children":593},{"__ignoreMap":61},[594,665,705],{"type":67,"tag":151,"props":595,"children":596},{"class":153,"line":154},[597,601,605,609,613,617,622,627,631,635,640,644,648,652,656,661],{"type":67,"tag":151,"props":598,"children":599},{"style":236},[600],{"type":78,"value":483},{"type":67,"tag":151,"props":602,"children":603},{"style":164},[604],{"type":78,"value":167},{"type":67,"tag":151,"props":606,"children":607},{"style":296},[608],{"type":78,"value":332},{"type":67,"tag":151,"props":610,"children":611},{"style":164},[612],{"type":78,"value":440},{"type":67,"tag":151,"props":614,"children":615},{"style":164},[616],{"type":78,"value":167},{"type":67,"tag":151,"props":618,"children":619},{"style":170},[620],{"type":78,"value":621}," libraries ",{"type":67,"tag":151,"props":623,"children":624},{"style":164},[625],{"type":78,"value":626},"}}",{"type":67,"tag":151,"props":628,"children":629},{"style":164},[630],{"type":78,"value":284},{"type":67,"tag":151,"props":632,"children":633},{"style":158},[634],{"type":78,"value":289},{"type":67,"tag":151,"props":636,"children":637},{"style":225},[638],{"type":78,"value":639}," useFetch",{"type":67,"tag":151,"props":641,"children":642},{"style":170},[643],{"type":78,"value":233},{"type":67,"tag":151,"props":645,"children":646},{"style":164},[647],{"type":78,"value":366},{"type":67,"tag":151,"props":649,"children":650},{"style":191},[651],{"type":78,"value":556},{"type":67,"tag":151,"props":653,"children":654},{"style":164},[655],{"type":78,"value":366},{"type":67,"tag":151,"props":657,"children":658},{"style":164},[659],{"type":78,"value":660},",",{"type":67,"tag":151,"props":662,"children":663},{"style":164},[664],{"type":78,"value":265},{"type":67,"tag":151,"props":666,"children":667},{"class":153,"line":201},[668,673,677,682,687,691,696,700],{"type":67,"tag":151,"props":669,"children":670},{"style":296},[671],{"type":78,"value":672}," headers",{"type":67,"tag":151,"props":674,"children":675},{"style":164},[676],{"type":78,"value":440},{"type":67,"tag":151,"props":678,"children":679},{"style":225},[680],{"type":78,"value":681}," useRequestHeaders",{"type":67,"tag":151,"props":683,"children":684},{"style":170},[685],{"type":78,"value":686},"([",{"type":67,"tag":151,"props":688,"children":689},{"style":164},[690],{"type":78,"value":366},{"type":67,"tag":151,"props":692,"children":693},{"style":191},[694],{"type":78,"value":695},"cookie",{"type":67,"tag":151,"props":697,"children":698},{"style":164},[699],{"type":78,"value":366},{"type":67,"tag":151,"props":701,"children":702},{"style":170},[703],{"type":78,"value":704},"])\n",{"type":67,"tag":151,"props":706,"children":707},{"class":153,"line":211},[708,712],{"type":67,"tag":151,"props":709,"children":710},{"style":164},[711],{"type":78,"value":458},{"type":67,"tag":151,"props":713,"children":714},{"style":170},[715],{"type":78,"value":307},{"type":67,"tag":717,"props":718,"children":719},"style",{},[720],{"type":78,"value":721},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":201,"depth":201,"links":723},[],"markdown","content:4.usage:services:1.serverSupabaseClient.md","content","4.usage/services/1.serverSupabaseClient.md","4.usage/services/1.serverSupabaseClient","md",[731,733],{"_path":28,"title":27,"description":732},"Auto import and use your Supabase user with the useSupabaseUser composable",{"_path":38,"title":37,"description":734},"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service",1733842351861] \ No newline at end of file +[{"data":1,"prerenderedAt":735},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabaseclient":58,"/usage/services/serversupabaseclient-surround":730},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":35,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":34,"description":62,"body":63,"_type":724,"_id":725,"_source":726,"_file":727,"_stem":728,"_extension":729},"services",false,"","Make requests to the Supabase API on server side with the serverSupabaseClient service",{"type":64,"children":65,"toc":722},"root",[66,91,111,139,463,468,573,587,716],{"type":67,"tag":68,"props":69,"children":72},"element","callout",{"color":70,"icon":71},"amber","i-heroicons-exclamation-triangle-20-solid",[73],{"type":67,"tag":74,"props":75,"children":76},"p",{},[77,80,89],{"type":78,"value":79},"text","This section assumes you're familiar with ",{"type":67,"tag":81,"props":82,"children":86},"a",{"href":83,"rel":84},"https://v3.nuxtjs.org/guide/concepts/server-engine",[85],"nofollow",[87],{"type":78,"value":88},"Nitro",{"type":78,"value":90},", the server engine powered by Nuxt.",{"type":67,"tag":74,"props":92,"children":93},{},[94,96,100,102,109],{"type":78,"value":95},"This function is working similary as the ",{"type":67,"tag":81,"props":97,"children":98},{"href":22},[99],{"type":78,"value":21},{"type":78,"value":101}," composable but is designed to be used in ",{"type":67,"tag":81,"props":103,"children":106},{"href":104,"rel":105},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[85],[107],{"type":78,"value":108},"server routes",{"type":78,"value":110},".",{"type":67,"tag":74,"props":112,"children":113},{},[114,116,122,124,130,132,137],{"type":78,"value":115},"Define your server route and just import the ",{"type":67,"tag":117,"props":118,"children":120},"code",{"className":119},[],[121],{"type":78,"value":34},{"type":78,"value":123}," from ",{"type":67,"tag":117,"props":125,"children":127},{"className":126},[],[128],{"type":78,"value":129},"#supabase/server",{"type":78,"value":131},". Be careful, ",{"type":67,"tag":117,"props":133,"children":135},{"className":134},[],[136],{"type":78,"value":34},{"type":78,"value":138}," is returning a promise.",{"type":67,"tag":140,"props":141,"children":146},"pre",{"className":142,"code":143,"filename":144,"language":145,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseClient } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = await serverSupabaseClient(event)\n\n const { data } = await client.from('libraries').select('*')\n\n return { libraries: data }\n})\n","server/api/libraries.ts","ts",[147],{"type":67,"tag":117,"props":148,"children":149},{"__ignoreMap":61},[150,199,209,266,308,316,410,418,450],{"type":67,"tag":151,"props":152,"children":155},"span",{"class":153,"line":154},"line",1,[156,162,168,174,179,184,189,194],{"type":67,"tag":151,"props":157,"children":159},{"style":158},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[160],{"type":78,"value":161},"import",{"type":67,"tag":151,"props":163,"children":165},{"style":164},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[166],{"type":78,"value":167}," {",{"type":67,"tag":151,"props":169,"children":171},{"style":170},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[172],{"type":78,"value":173}," serverSupabaseClient",{"type":67,"tag":151,"props":175,"children":176},{"style":164},[177],{"type":78,"value":178}," }",{"type":67,"tag":151,"props":180,"children":181},{"style":158},[182],{"type":78,"value":183}," from",{"type":67,"tag":151,"props":185,"children":186},{"style":164},[187],{"type":78,"value":188}," '",{"type":67,"tag":151,"props":190,"children":192},{"style":191},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[193],{"type":78,"value":129},{"type":67,"tag":151,"props":195,"children":196},{"style":164},[197],{"type":78,"value":198},"'\n",{"type":67,"tag":151,"props":200,"children":202},{"class":153,"line":201},2,[203],{"type":67,"tag":151,"props":204,"children":206},{"emptyLinePlaceholder":205},true,[207],{"type":78,"value":208},"\n",{"type":67,"tag":151,"props":210,"children":212},{"class":153,"line":211},3,[213,218,223,229,234,240,245,251,256,261],{"type":67,"tag":151,"props":214,"children":215},{"style":158},[216],{"type":78,"value":217},"export",{"type":67,"tag":151,"props":219,"children":220},{"style":158},[221],{"type":78,"value":222}," default",{"type":67,"tag":151,"props":224,"children":226},{"style":225},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[227],{"type":78,"value":228}," eventHandler",{"type":67,"tag":151,"props":230,"children":231},{"style":170},[232],{"type":78,"value":233},"(",{"type":67,"tag":151,"props":235,"children":237},{"style":236},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[238],{"type":78,"value":239},"async",{"type":67,"tag":151,"props":241,"children":242},{"style":164},[243],{"type":78,"value":244}," (",{"type":67,"tag":151,"props":246,"children":248},{"style":247},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[249],{"type":78,"value":250},"event",{"type":67,"tag":151,"props":252,"children":253},{"style":164},[254],{"type":78,"value":255},")",{"type":67,"tag":151,"props":257,"children":258},{"style":236},[259],{"type":78,"value":260}," =>",{"type":67,"tag":151,"props":262,"children":263},{"style":164},[264],{"type":78,"value":265}," {\n",{"type":67,"tag":151,"props":267,"children":269},{"class":153,"line":268},4,[270,275,280,285,290,294,299,303],{"type":67,"tag":151,"props":271,"children":272},{"style":236},[273],{"type":78,"value":274}," const",{"type":67,"tag":151,"props":276,"children":277},{"style":170},[278],{"type":78,"value":279}," client",{"type":67,"tag":151,"props":281,"children":282},{"style":164},[283],{"type":78,"value":284}," =",{"type":67,"tag":151,"props":286,"children":287},{"style":158},[288],{"type":78,"value":289}," await",{"type":67,"tag":151,"props":291,"children":292},{"style":225},[293],{"type":78,"value":173},{"type":67,"tag":151,"props":295,"children":297},{"style":296},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[298],{"type":78,"value":233},{"type":67,"tag":151,"props":300,"children":301},{"style":170},[302],{"type":78,"value":250},{"type":67,"tag":151,"props":304,"children":305},{"style":296},[306],{"type":78,"value":307},")\n",{"type":67,"tag":151,"props":309,"children":311},{"class":153,"line":310},5,[312],{"type":67,"tag":151,"props":313,"children":314},{"emptyLinePlaceholder":205},[315],{"type":78,"value":208},{"type":67,"tag":151,"props":317,"children":319},{"class":153,"line":318},6,[320,324,328,333,337,341,345,349,353,358,362,367,372,376,380,384,389,393,397,402,406],{"type":67,"tag":151,"props":321,"children":322},{"style":236},[323],{"type":78,"value":274},{"type":67,"tag":151,"props":325,"children":326},{"style":164},[327],{"type":78,"value":167},{"type":67,"tag":151,"props":329,"children":330},{"style":170},[331],{"type":78,"value":332}," data",{"type":67,"tag":151,"props":334,"children":335},{"style":164},[336],{"type":78,"value":178},{"type":67,"tag":151,"props":338,"children":339},{"style":164},[340],{"type":78,"value":284},{"type":67,"tag":151,"props":342,"children":343},{"style":158},[344],{"type":78,"value":289},{"type":67,"tag":151,"props":346,"children":347},{"style":170},[348],{"type":78,"value":279},{"type":67,"tag":151,"props":350,"children":351},{"style":164},[352],{"type":78,"value":110},{"type":67,"tag":151,"props":354,"children":355},{"style":225},[356],{"type":78,"value":357},"from",{"type":67,"tag":151,"props":359,"children":360},{"style":296},[361],{"type":78,"value":233},{"type":67,"tag":151,"props":363,"children":364},{"style":164},[365],{"type":78,"value":366},"'",{"type":67,"tag":151,"props":368,"children":369},{"style":191},[370],{"type":78,"value":371},"libraries",{"type":67,"tag":151,"props":373,"children":374},{"style":164},[375],{"type":78,"value":366},{"type":67,"tag":151,"props":377,"children":378},{"style":296},[379],{"type":78,"value":255},{"type":67,"tag":151,"props":381,"children":382},{"style":164},[383],{"type":78,"value":110},{"type":67,"tag":151,"props":385,"children":386},{"style":225},[387],{"type":78,"value":388},"select",{"type":67,"tag":151,"props":390,"children":391},{"style":296},[392],{"type":78,"value":233},{"type":67,"tag":151,"props":394,"children":395},{"style":164},[396],{"type":78,"value":366},{"type":67,"tag":151,"props":398,"children":399},{"style":191},[400],{"type":78,"value":401},"*",{"type":67,"tag":151,"props":403,"children":404},{"style":164},[405],{"type":78,"value":366},{"type":67,"tag":151,"props":407,"children":408},{"style":296},[409],{"type":78,"value":307},{"type":67,"tag":151,"props":411,"children":413},{"class":153,"line":412},7,[414],{"type":67,"tag":151,"props":415,"children":416},{"emptyLinePlaceholder":205},[417],{"type":78,"value":208},{"type":67,"tag":151,"props":419,"children":421},{"class":153,"line":420},8,[422,427,431,436,441,445],{"type":67,"tag":151,"props":423,"children":424},{"style":158},[425],{"type":78,"value":426}," return",{"type":67,"tag":151,"props":428,"children":429},{"style":164},[430],{"type":78,"value":167},{"type":67,"tag":151,"props":432,"children":433},{"style":296},[434],{"type":78,"value":435}," libraries",{"type":67,"tag":151,"props":437,"children":438},{"style":164},[439],{"type":78,"value":440},":",{"type":67,"tag":151,"props":442,"children":443},{"style":170},[444],{"type":78,"value":332},{"type":67,"tag":151,"props":446,"children":447},{"style":164},[448],{"type":78,"value":449}," }\n",{"type":67,"tag":151,"props":451,"children":453},{"class":153,"line":452},9,[454,459],{"type":67,"tag":151,"props":455,"children":456},{"style":164},[457],{"type":78,"value":458},"}",{"type":67,"tag":151,"props":460,"children":461},{"style":170},[462],{"type":78,"value":307},{"type":67,"tag":74,"props":464,"children":465},{},[466],{"type":78,"value":467},"Then call your API route from any vue file:",{"type":67,"tag":140,"props":469,"children":472},{"className":142,"code":470,"filename":471,"language":145,"meta":61,"style":61},"const fetchLibrary = async () => {\n const { libraries } = await $fetch('/api/libraries')\n}\n","pages/index.vue",[473],{"type":67,"tag":117,"props":474,"children":475},{"__ignoreMap":61},[476,512,565],{"type":67,"tag":151,"props":477,"children":478},{"class":153,"line":154},[479,484,489,494,499,504,508],{"type":67,"tag":151,"props":480,"children":481},{"style":236},[482],{"type":78,"value":483},"const",{"type":67,"tag":151,"props":485,"children":486},{"style":170},[487],{"type":78,"value":488}," fetchLibrary ",{"type":67,"tag":151,"props":490,"children":491},{"style":164},[492],{"type":78,"value":493},"=",{"type":67,"tag":151,"props":495,"children":496},{"style":236},[497],{"type":78,"value":498}," async",{"type":67,"tag":151,"props":500,"children":501},{"style":164},[502],{"type":78,"value":503}," ()",{"type":67,"tag":151,"props":505,"children":506},{"style":236},[507],{"type":78,"value":260},{"type":67,"tag":151,"props":509,"children":510},{"style":164},[511],{"type":78,"value":265},{"type":67,"tag":151,"props":513,"children":514},{"class":153,"line":201},[515,519,523,527,531,535,539,544,548,552,557,561],{"type":67,"tag":151,"props":516,"children":517},{"style":236},[518],{"type":78,"value":274},{"type":67,"tag":151,"props":520,"children":521},{"style":164},[522],{"type":78,"value":167},{"type":67,"tag":151,"props":524,"children":525},{"style":170},[526],{"type":78,"value":435},{"type":67,"tag":151,"props":528,"children":529},{"style":164},[530],{"type":78,"value":178},{"type":67,"tag":151,"props":532,"children":533},{"style":164},[534],{"type":78,"value":284},{"type":67,"tag":151,"props":536,"children":537},{"style":158},[538],{"type":78,"value":289},{"type":67,"tag":151,"props":540,"children":541},{"style":225},[542],{"type":78,"value":543}," $fetch",{"type":67,"tag":151,"props":545,"children":546},{"style":296},[547],{"type":78,"value":233},{"type":67,"tag":151,"props":549,"children":550},{"style":164},[551],{"type":78,"value":366},{"type":67,"tag":151,"props":553,"children":554},{"style":191},[555],{"type":78,"value":556},"/api/libraries",{"type":67,"tag":151,"props":558,"children":559},{"style":164},[560],{"type":78,"value":366},{"type":67,"tag":151,"props":562,"children":563},{"style":296},[564],{"type":78,"value":307},{"type":67,"tag":151,"props":566,"children":567},{"class":153,"line":211},[568],{"type":67,"tag":151,"props":569,"children":570},{"style":164},[571],{"type":78,"value":572},"}\n",{"type":67,"tag":74,"props":574,"children":575},{},[576,578,585],{"type":78,"value":577},"Be careful, if you want to call this route on SSR, please read this ",{"type":67,"tag":81,"props":579,"children":582},{"href":580,"rel":581},"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch",[85],[583],{"type":78,"value":584},"section",{"type":78,"value":586},", you must send your browser cookies including your supabase token.",{"type":67,"tag":140,"props":588,"children":590},{"className":142,"code":589,"filename":471,"language":145,"meta":61,"style":61},"const { data: { libraries }} = await useFetch('/api/libraries', {\n headers: useRequestHeaders(['cookie'])\n})\n",[591],{"type":67,"tag":117,"props":592,"children":593},{"__ignoreMap":61},[594,665,705],{"type":67,"tag":151,"props":595,"children":596},{"class":153,"line":154},[597,601,605,609,613,617,622,627,631,635,640,644,648,652,656,661],{"type":67,"tag":151,"props":598,"children":599},{"style":236},[600],{"type":78,"value":483},{"type":67,"tag":151,"props":602,"children":603},{"style":164},[604],{"type":78,"value":167},{"type":67,"tag":151,"props":606,"children":607},{"style":296},[608],{"type":78,"value":332},{"type":67,"tag":151,"props":610,"children":611},{"style":164},[612],{"type":78,"value":440},{"type":67,"tag":151,"props":614,"children":615},{"style":164},[616],{"type":78,"value":167},{"type":67,"tag":151,"props":618,"children":619},{"style":170},[620],{"type":78,"value":621}," libraries ",{"type":67,"tag":151,"props":623,"children":624},{"style":164},[625],{"type":78,"value":626},"}}",{"type":67,"tag":151,"props":628,"children":629},{"style":164},[630],{"type":78,"value":284},{"type":67,"tag":151,"props":632,"children":633},{"style":158},[634],{"type":78,"value":289},{"type":67,"tag":151,"props":636,"children":637},{"style":225},[638],{"type":78,"value":639}," useFetch",{"type":67,"tag":151,"props":641,"children":642},{"style":170},[643],{"type":78,"value":233},{"type":67,"tag":151,"props":645,"children":646},{"style":164},[647],{"type":78,"value":366},{"type":67,"tag":151,"props":649,"children":650},{"style":191},[651],{"type":78,"value":556},{"type":67,"tag":151,"props":653,"children":654},{"style":164},[655],{"type":78,"value":366},{"type":67,"tag":151,"props":657,"children":658},{"style":164},[659],{"type":78,"value":660},",",{"type":67,"tag":151,"props":662,"children":663},{"style":164},[664],{"type":78,"value":265},{"type":67,"tag":151,"props":666,"children":667},{"class":153,"line":201},[668,673,677,682,687,691,696,700],{"type":67,"tag":151,"props":669,"children":670},{"style":296},[671],{"type":78,"value":672}," headers",{"type":67,"tag":151,"props":674,"children":675},{"style":164},[676],{"type":78,"value":440},{"type":67,"tag":151,"props":678,"children":679},{"style":225},[680],{"type":78,"value":681}," useRequestHeaders",{"type":67,"tag":151,"props":683,"children":684},{"style":170},[685],{"type":78,"value":686},"([",{"type":67,"tag":151,"props":688,"children":689},{"style":164},[690],{"type":78,"value":366},{"type":67,"tag":151,"props":692,"children":693},{"style":191},[694],{"type":78,"value":695},"cookie",{"type":67,"tag":151,"props":697,"children":698},{"style":164},[699],{"type":78,"value":366},{"type":67,"tag":151,"props":701,"children":702},{"style":170},[703],{"type":78,"value":704},"])\n",{"type":67,"tag":151,"props":706,"children":707},{"class":153,"line":211},[708,712],{"type":67,"tag":151,"props":709,"children":710},{"style":164},[711],{"type":78,"value":458},{"type":67,"tag":151,"props":713,"children":714},{"style":170},[715],{"type":78,"value":307},{"type":67,"tag":717,"props":718,"children":719},"style",{},[720],{"type":78,"value":721},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":201,"depth":201,"links":723},[],"markdown","content:4.usage:services:1.serverSupabaseClient.md","content","4.usage/services/1.serverSupabaseClient.md","4.usage/services/1.serverSupabaseClient","md",[731,733],{"_path":28,"title":27,"description":732},"Auto import and use your Supabase user with the useSupabaseUser composable",{"_path":38,"title":37,"description":734},"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service",1734518135809] \ No newline at end of file diff --git a/usage/services/serversupabaseclient/index.html b/usage/services/serversupabaseclient/index.html index 3a768defe..38c696d30 100644 --- a/usage/services/serversupabaseclient/index.html +++ b/usage/services/serversupabaseclient/index.html @@ -61,7 +61,7 @@ - + @@ -119,5 +119,5 @@ headers: useRequestHeaders(['cookie']) })
Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/services/serversupabaseservicerole/_payload.json b/usage/services/serversupabaseservicerole/_payload.json index 3bf50c3fc..60d0a4e5f 100644 --- a/usage/services/serversupabaseservicerole/_payload.json +++ b/usage/services/serversupabaseservicerole/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":612},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabaseservicerole":58,"/usage/services/serversupabaseservicerole-surround":607},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":38,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":37,"description":62,"navigation":63,"body":64,"_type":601,"_id":602,"_source":603,"_file":604,"_stem":605,"_extension":606},"services",false,"","Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service",{"title":37},{"type":65,"children":66,"toc":599},"root",[67,92,106,126,160,179,483,488,593],{"type":68,"tag":69,"props":70,"children":73},"element","callout",{"color":71,"icon":72},"amber","i-heroicons-exclamation-triangle-20-solid",[74],{"type":68,"tag":75,"props":76,"children":77},"p",{},[78,81,90],{"type":79,"value":80},"text","This section assumes you're familiar with ",{"type":68,"tag":82,"props":83,"children":87},"a",{"href":84,"rel":85},"https://v3.nuxtjs.org/guide/concepts/server-engine",[86],"nofollow",[88],{"type":79,"value":89},"Nitro",{"type":79,"value":91},", the server engine powered by Nuxt.",{"type":68,"tag":75,"props":93,"children":94},{},[95,97,104],{"type":79,"value":96},"This function is designed to work only in ",{"type":68,"tag":82,"props":98,"children":101},{"href":99,"rel":100},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[86],[102],{"type":79,"value":103},"server routes",{"type":79,"value":105},", there is no vue composable equivalent.",{"type":68,"tag":75,"props":107,"children":108},{},[109,111,115,117,124],{"type":79,"value":110},"It works similary as the ",{"type":68,"tag":82,"props":112,"children":113},{"href":35},[114],{"type":79,"value":34},{"type":79,"value":116}," but it provides a client with super admin rights that can bypass your ",{"type":68,"tag":82,"props":118,"children":121},{"href":119,"rel":120},"https://supabase.com/docs/guides/auth/row-level-security",[86],[122],{"type":79,"value":123},"Row Level Security",{"type":79,"value":125},".",{"type":68,"tag":127,"props":128,"children":129},"blockquote",{},[130],{"type":68,"tag":75,"props":131,"children":132},{},[133,135,142,144,150,152,159],{"type":79,"value":134},"The client is initialized with the ",{"type":68,"tag":136,"props":137,"children":139},"code",{"className":138},[],[140],{"type":79,"value":141},"SUPABASE_SERVICE_KEY",{"type":79,"value":143}," you must have in your ",{"type":68,"tag":136,"props":145,"children":147},{"className":146},[],[148],{"type":79,"value":149},".env",{"type":79,"value":151}," file. Checkout the doc if you want to know more about ",{"type":68,"tag":82,"props":153,"children":156},{"href":154,"rel":155},"https://supabase.com/docs/learn/auth-deep-dive/auth-deep-dive-jwts#jwts-in-supabase",[86],[157],{"type":79,"value":158},"Supabase keys",{"type":79,"value":125},{"type":68,"tag":75,"props":161,"children":162},{},[163,165,170,172,178],{"type":79,"value":164},"Define your server route and just import the ",{"type":68,"tag":136,"props":166,"children":168},{"className":167},[],[169],{"type":79,"value":37},{"type":79,"value":171}," from ",{"type":68,"tag":136,"props":173,"children":175},{"className":174},[],[176],{"type":79,"value":177},"#supabase/server",{"type":79,"value":125},{"type":68,"tag":180,"props":181,"children":186},"pre",{"className":182,"code":183,"filename":184,"language":185,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseServiceRole } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = serverSupabaseServiceRole(event)\n\n const { data } = await client.from('rls-protected-table').select()\n\n return { sensitiveData: data }\n})\n","server/api/bypass-rls.ts","ts",[187],{"type":68,"tag":136,"props":188,"children":189},{"__ignoreMap":61},[190,239,249,306,343,351,430,438,470],{"type":68,"tag":191,"props":192,"children":195},"span",{"class":193,"line":194},"line",1,[196,202,208,214,219,224,229,234],{"type":68,"tag":191,"props":197,"children":199},{"style":198},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[200],{"type":79,"value":201},"import",{"type":68,"tag":191,"props":203,"children":205},{"style":204},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[206],{"type":79,"value":207}," {",{"type":68,"tag":191,"props":209,"children":211},{"style":210},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[212],{"type":79,"value":213}," serverSupabaseServiceRole",{"type":68,"tag":191,"props":215,"children":216},{"style":204},[217],{"type":79,"value":218}," }",{"type":68,"tag":191,"props":220,"children":221},{"style":198},[222],{"type":79,"value":223}," from",{"type":68,"tag":191,"props":225,"children":226},{"style":204},[227],{"type":79,"value":228}," '",{"type":68,"tag":191,"props":230,"children":232},{"style":231},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[233],{"type":79,"value":177},{"type":68,"tag":191,"props":235,"children":236},{"style":204},[237],{"type":79,"value":238},"'\n",{"type":68,"tag":191,"props":240,"children":242},{"class":193,"line":241},2,[243],{"type":68,"tag":191,"props":244,"children":246},{"emptyLinePlaceholder":245},true,[247],{"type":79,"value":248},"\n",{"type":68,"tag":191,"props":250,"children":252},{"class":193,"line":251},3,[253,258,263,269,274,280,285,291,296,301],{"type":68,"tag":191,"props":254,"children":255},{"style":198},[256],{"type":79,"value":257},"export",{"type":68,"tag":191,"props":259,"children":260},{"style":198},[261],{"type":79,"value":262}," default",{"type":68,"tag":191,"props":264,"children":266},{"style":265},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[267],{"type":79,"value":268}," eventHandler",{"type":68,"tag":191,"props":270,"children":271},{"style":210},[272],{"type":79,"value":273},"(",{"type":68,"tag":191,"props":275,"children":277},{"style":276},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[278],{"type":79,"value":279},"async",{"type":68,"tag":191,"props":281,"children":282},{"style":204},[283],{"type":79,"value":284}," (",{"type":68,"tag":191,"props":286,"children":288},{"style":287},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[289],{"type":79,"value":290},"event",{"type":68,"tag":191,"props":292,"children":293},{"style":204},[294],{"type":79,"value":295},")",{"type":68,"tag":191,"props":297,"children":298},{"style":276},[299],{"type":79,"value":300}," =>",{"type":68,"tag":191,"props":302,"children":303},{"style":204},[304],{"type":79,"value":305}," {\n",{"type":68,"tag":191,"props":307,"children":309},{"class":193,"line":308},4,[310,315,320,325,329,334,338],{"type":68,"tag":191,"props":311,"children":312},{"style":276},[313],{"type":79,"value":314}," const",{"type":68,"tag":191,"props":316,"children":317},{"style":210},[318],{"type":79,"value":319}," client",{"type":68,"tag":191,"props":321,"children":322},{"style":204},[323],{"type":79,"value":324}," =",{"type":68,"tag":191,"props":326,"children":327},{"style":265},[328],{"type":79,"value":213},{"type":68,"tag":191,"props":330,"children":332},{"style":331},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[333],{"type":79,"value":273},{"type":68,"tag":191,"props":335,"children":336},{"style":210},[337],{"type":79,"value":290},{"type":68,"tag":191,"props":339,"children":340},{"style":331},[341],{"type":79,"value":342},")\n",{"type":68,"tag":191,"props":344,"children":346},{"class":193,"line":345},5,[347],{"type":68,"tag":191,"props":348,"children":349},{"emptyLinePlaceholder":245},[350],{"type":79,"value":248},{"type":68,"tag":191,"props":352,"children":354},{"class":193,"line":353},6,[355,359,363,368,372,376,381,385,389,394,398,403,408,412,416,420,425],{"type":68,"tag":191,"props":356,"children":357},{"style":276},[358],{"type":79,"value":314},{"type":68,"tag":191,"props":360,"children":361},{"style":204},[362],{"type":79,"value":207},{"type":68,"tag":191,"props":364,"children":365},{"style":210},[366],{"type":79,"value":367}," data",{"type":68,"tag":191,"props":369,"children":370},{"style":204},[371],{"type":79,"value":218},{"type":68,"tag":191,"props":373,"children":374},{"style":204},[375],{"type":79,"value":324},{"type":68,"tag":191,"props":377,"children":378},{"style":198},[379],{"type":79,"value":380}," await",{"type":68,"tag":191,"props":382,"children":383},{"style":210},[384],{"type":79,"value":319},{"type":68,"tag":191,"props":386,"children":387},{"style":204},[388],{"type":79,"value":125},{"type":68,"tag":191,"props":390,"children":391},{"style":265},[392],{"type":79,"value":393},"from",{"type":68,"tag":191,"props":395,"children":396},{"style":331},[397],{"type":79,"value":273},{"type":68,"tag":191,"props":399,"children":400},{"style":204},[401],{"type":79,"value":402},"'",{"type":68,"tag":191,"props":404,"children":405},{"style":231},[406],{"type":79,"value":407},"rls-protected-table",{"type":68,"tag":191,"props":409,"children":410},{"style":204},[411],{"type":79,"value":402},{"type":68,"tag":191,"props":413,"children":414},{"style":331},[415],{"type":79,"value":295},{"type":68,"tag":191,"props":417,"children":418},{"style":204},[419],{"type":79,"value":125},{"type":68,"tag":191,"props":421,"children":422},{"style":265},[423],{"type":79,"value":424},"select",{"type":68,"tag":191,"props":426,"children":427},{"style":331},[428],{"type":79,"value":429},"()\n",{"type":68,"tag":191,"props":431,"children":433},{"class":193,"line":432},7,[434],{"type":68,"tag":191,"props":435,"children":436},{"emptyLinePlaceholder":245},[437],{"type":79,"value":248},{"type":68,"tag":191,"props":439,"children":441},{"class":193,"line":440},8,[442,447,451,456,461,465],{"type":68,"tag":191,"props":443,"children":444},{"style":198},[445],{"type":79,"value":446}," return",{"type":68,"tag":191,"props":448,"children":449},{"style":204},[450],{"type":79,"value":207},{"type":68,"tag":191,"props":452,"children":453},{"style":331},[454],{"type":79,"value":455}," sensitiveData",{"type":68,"tag":191,"props":457,"children":458},{"style":204},[459],{"type":79,"value":460},":",{"type":68,"tag":191,"props":462,"children":463},{"style":210},[464],{"type":79,"value":367},{"type":68,"tag":191,"props":466,"children":467},{"style":204},[468],{"type":79,"value":469}," }\n",{"type":68,"tag":191,"props":471,"children":473},{"class":193,"line":472},9,[474,479],{"type":68,"tag":191,"props":475,"children":476},{"style":204},[477],{"type":79,"value":478},"}",{"type":68,"tag":191,"props":480,"children":481},{"style":210},[482],{"type":79,"value":342},{"type":68,"tag":75,"props":484,"children":485},{},[486],{"type":79,"value":487},"Then call your API route from any vue file:",{"type":68,"tag":180,"props":489,"children":492},{"className":182,"code":490,"filename":491,"language":185,"meta":61,"style":61},"const fetchSensitiveData = async () => {\n const { sensitiveData } = await useFetch('/api/bypass-rls')\n}\n","pages/index.vue",[493],{"type":68,"tag":136,"props":494,"children":495},{"__ignoreMap":61},[496,532,585],{"type":68,"tag":191,"props":497,"children":498},{"class":193,"line":194},[499,504,509,514,519,524,528],{"type":68,"tag":191,"props":500,"children":501},{"style":276},[502],{"type":79,"value":503},"const",{"type":68,"tag":191,"props":505,"children":506},{"style":210},[507],{"type":79,"value":508}," fetchSensitiveData ",{"type":68,"tag":191,"props":510,"children":511},{"style":204},[512],{"type":79,"value":513},"=",{"type":68,"tag":191,"props":515,"children":516},{"style":276},[517],{"type":79,"value":518}," async",{"type":68,"tag":191,"props":520,"children":521},{"style":204},[522],{"type":79,"value":523}," ()",{"type":68,"tag":191,"props":525,"children":526},{"style":276},[527],{"type":79,"value":300},{"type":68,"tag":191,"props":529,"children":530},{"style":204},[531],{"type":79,"value":305},{"type":68,"tag":191,"props":533,"children":534},{"class":193,"line":241},[535,539,543,547,551,555,559,564,568,572,577,581],{"type":68,"tag":191,"props":536,"children":537},{"style":276},[538],{"type":79,"value":314},{"type":68,"tag":191,"props":540,"children":541},{"style":204},[542],{"type":79,"value":207},{"type":68,"tag":191,"props":544,"children":545},{"style":210},[546],{"type":79,"value":455},{"type":68,"tag":191,"props":548,"children":549},{"style":204},[550],{"type":79,"value":218},{"type":68,"tag":191,"props":552,"children":553},{"style":204},[554],{"type":79,"value":324},{"type":68,"tag":191,"props":556,"children":557},{"style":198},[558],{"type":79,"value":380},{"type":68,"tag":191,"props":560,"children":561},{"style":265},[562],{"type":79,"value":563}," useFetch",{"type":68,"tag":191,"props":565,"children":566},{"style":331},[567],{"type":79,"value":273},{"type":68,"tag":191,"props":569,"children":570},{"style":204},[571],{"type":79,"value":402},{"type":68,"tag":191,"props":573,"children":574},{"style":231},[575],{"type":79,"value":576},"/api/bypass-rls",{"type":68,"tag":191,"props":578,"children":579},{"style":204},[580],{"type":79,"value":402},{"type":68,"tag":191,"props":582,"children":583},{"style":331},[584],{"type":79,"value":342},{"type":68,"tag":191,"props":586,"children":587},{"class":193,"line":251},[588],{"type":68,"tag":191,"props":589,"children":590},{"style":204},[591],{"type":79,"value":592},"}\n",{"type":68,"tag":594,"props":595,"children":596},"style",{},[597],{"type":79,"value":598},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":241,"depth":241,"links":600},[],"markdown","content:4.usage:services:2.serverSupabaseServiceRole.md","content","4.usage/services/2.serverSupabaseServiceRole.md","4.usage/services/2.serverSupabaseServiceRole","md",[608,610],{"_path":35,"title":34,"description":609},"Make requests to the Supabase API on server side with the serverSupabaseClient service",{"_path":41,"title":40,"description":611},"Get your Supabase user's session from serverside with the serverSupabaseUser service",1733842352305] \ No newline at end of file +[{"data":1,"prerenderedAt":612},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabaseservicerole":58,"/usage/services/serversupabaseservicerole-surround":607},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":38,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":37,"description":62,"navigation":63,"body":64,"_type":601,"_id":602,"_source":603,"_file":604,"_stem":605,"_extension":606},"services",false,"","Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service",{"title":37},{"type":65,"children":66,"toc":599},"root",[67,92,106,126,160,179,483,488,593],{"type":68,"tag":69,"props":70,"children":73},"element","callout",{"color":71,"icon":72},"amber","i-heroicons-exclamation-triangle-20-solid",[74],{"type":68,"tag":75,"props":76,"children":77},"p",{},[78,81,90],{"type":79,"value":80},"text","This section assumes you're familiar with ",{"type":68,"tag":82,"props":83,"children":87},"a",{"href":84,"rel":85},"https://v3.nuxtjs.org/guide/concepts/server-engine",[86],"nofollow",[88],{"type":79,"value":89},"Nitro",{"type":79,"value":91},", the server engine powered by Nuxt.",{"type":68,"tag":75,"props":93,"children":94},{},[95,97,104],{"type":79,"value":96},"This function is designed to work only in ",{"type":68,"tag":82,"props":98,"children":101},{"href":99,"rel":100},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[86],[102],{"type":79,"value":103},"server routes",{"type":79,"value":105},", there is no vue composable equivalent.",{"type":68,"tag":75,"props":107,"children":108},{},[109,111,115,117,124],{"type":79,"value":110},"It works similary as the ",{"type":68,"tag":82,"props":112,"children":113},{"href":35},[114],{"type":79,"value":34},{"type":79,"value":116}," but it provides a client with super admin rights that can bypass your ",{"type":68,"tag":82,"props":118,"children":121},{"href":119,"rel":120},"https://supabase.com/docs/guides/auth/row-level-security",[86],[122],{"type":79,"value":123},"Row Level Security",{"type":79,"value":125},".",{"type":68,"tag":127,"props":128,"children":129},"blockquote",{},[130],{"type":68,"tag":75,"props":131,"children":132},{},[133,135,142,144,150,152,159],{"type":79,"value":134},"The client is initialized with the ",{"type":68,"tag":136,"props":137,"children":139},"code",{"className":138},[],[140],{"type":79,"value":141},"SUPABASE_SERVICE_KEY",{"type":79,"value":143}," you must have in your ",{"type":68,"tag":136,"props":145,"children":147},{"className":146},[],[148],{"type":79,"value":149},".env",{"type":79,"value":151}," file. Checkout the doc if you want to know more about ",{"type":68,"tag":82,"props":153,"children":156},{"href":154,"rel":155},"https://supabase.com/docs/learn/auth-deep-dive/auth-deep-dive-jwts#jwts-in-supabase",[86],[157],{"type":79,"value":158},"Supabase keys",{"type":79,"value":125},{"type":68,"tag":75,"props":161,"children":162},{},[163,165,170,172,178],{"type":79,"value":164},"Define your server route and just import the ",{"type":68,"tag":136,"props":166,"children":168},{"className":167},[],[169],{"type":79,"value":37},{"type":79,"value":171}," from ",{"type":68,"tag":136,"props":173,"children":175},{"className":174},[],[176],{"type":79,"value":177},"#supabase/server",{"type":79,"value":125},{"type":68,"tag":180,"props":181,"children":186},"pre",{"className":182,"code":183,"filename":184,"language":185,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseServiceRole } from '#supabase/server'\n\nexport default eventHandler(async (event) => {\n const client = serverSupabaseServiceRole(event)\n\n const { data } = await client.from('rls-protected-table').select()\n\n return { sensitiveData: data }\n})\n","server/api/bypass-rls.ts","ts",[187],{"type":68,"tag":136,"props":188,"children":189},{"__ignoreMap":61},[190,239,249,306,343,351,430,438,470],{"type":68,"tag":191,"props":192,"children":195},"span",{"class":193,"line":194},"line",1,[196,202,208,214,219,224,229,234],{"type":68,"tag":191,"props":197,"children":199},{"style":198},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[200],{"type":79,"value":201},"import",{"type":68,"tag":191,"props":203,"children":205},{"style":204},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[206],{"type":79,"value":207}," {",{"type":68,"tag":191,"props":209,"children":211},{"style":210},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[212],{"type":79,"value":213}," serverSupabaseServiceRole",{"type":68,"tag":191,"props":215,"children":216},{"style":204},[217],{"type":79,"value":218}," }",{"type":68,"tag":191,"props":220,"children":221},{"style":198},[222],{"type":79,"value":223}," from",{"type":68,"tag":191,"props":225,"children":226},{"style":204},[227],{"type":79,"value":228}," '",{"type":68,"tag":191,"props":230,"children":232},{"style":231},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[233],{"type":79,"value":177},{"type":68,"tag":191,"props":235,"children":236},{"style":204},[237],{"type":79,"value":238},"'\n",{"type":68,"tag":191,"props":240,"children":242},{"class":193,"line":241},2,[243],{"type":68,"tag":191,"props":244,"children":246},{"emptyLinePlaceholder":245},true,[247],{"type":79,"value":248},"\n",{"type":68,"tag":191,"props":250,"children":252},{"class":193,"line":251},3,[253,258,263,269,274,280,285,291,296,301],{"type":68,"tag":191,"props":254,"children":255},{"style":198},[256],{"type":79,"value":257},"export",{"type":68,"tag":191,"props":259,"children":260},{"style":198},[261],{"type":79,"value":262}," default",{"type":68,"tag":191,"props":264,"children":266},{"style":265},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[267],{"type":79,"value":268}," eventHandler",{"type":68,"tag":191,"props":270,"children":271},{"style":210},[272],{"type":79,"value":273},"(",{"type":68,"tag":191,"props":275,"children":277},{"style":276},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[278],{"type":79,"value":279},"async",{"type":68,"tag":191,"props":281,"children":282},{"style":204},[283],{"type":79,"value":284}," (",{"type":68,"tag":191,"props":286,"children":288},{"style":287},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[289],{"type":79,"value":290},"event",{"type":68,"tag":191,"props":292,"children":293},{"style":204},[294],{"type":79,"value":295},")",{"type":68,"tag":191,"props":297,"children":298},{"style":276},[299],{"type":79,"value":300}," =>",{"type":68,"tag":191,"props":302,"children":303},{"style":204},[304],{"type":79,"value":305}," {\n",{"type":68,"tag":191,"props":307,"children":309},{"class":193,"line":308},4,[310,315,320,325,329,334,338],{"type":68,"tag":191,"props":311,"children":312},{"style":276},[313],{"type":79,"value":314}," const",{"type":68,"tag":191,"props":316,"children":317},{"style":210},[318],{"type":79,"value":319}," client",{"type":68,"tag":191,"props":321,"children":322},{"style":204},[323],{"type":79,"value":324}," =",{"type":68,"tag":191,"props":326,"children":327},{"style":265},[328],{"type":79,"value":213},{"type":68,"tag":191,"props":330,"children":332},{"style":331},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[333],{"type":79,"value":273},{"type":68,"tag":191,"props":335,"children":336},{"style":210},[337],{"type":79,"value":290},{"type":68,"tag":191,"props":339,"children":340},{"style":331},[341],{"type":79,"value":342},")\n",{"type":68,"tag":191,"props":344,"children":346},{"class":193,"line":345},5,[347],{"type":68,"tag":191,"props":348,"children":349},{"emptyLinePlaceholder":245},[350],{"type":79,"value":248},{"type":68,"tag":191,"props":352,"children":354},{"class":193,"line":353},6,[355,359,363,368,372,376,381,385,389,394,398,403,408,412,416,420,425],{"type":68,"tag":191,"props":356,"children":357},{"style":276},[358],{"type":79,"value":314},{"type":68,"tag":191,"props":360,"children":361},{"style":204},[362],{"type":79,"value":207},{"type":68,"tag":191,"props":364,"children":365},{"style":210},[366],{"type":79,"value":367}," data",{"type":68,"tag":191,"props":369,"children":370},{"style":204},[371],{"type":79,"value":218},{"type":68,"tag":191,"props":373,"children":374},{"style":204},[375],{"type":79,"value":324},{"type":68,"tag":191,"props":377,"children":378},{"style":198},[379],{"type":79,"value":380}," await",{"type":68,"tag":191,"props":382,"children":383},{"style":210},[384],{"type":79,"value":319},{"type":68,"tag":191,"props":386,"children":387},{"style":204},[388],{"type":79,"value":125},{"type":68,"tag":191,"props":390,"children":391},{"style":265},[392],{"type":79,"value":393},"from",{"type":68,"tag":191,"props":395,"children":396},{"style":331},[397],{"type":79,"value":273},{"type":68,"tag":191,"props":399,"children":400},{"style":204},[401],{"type":79,"value":402},"'",{"type":68,"tag":191,"props":404,"children":405},{"style":231},[406],{"type":79,"value":407},"rls-protected-table",{"type":68,"tag":191,"props":409,"children":410},{"style":204},[411],{"type":79,"value":402},{"type":68,"tag":191,"props":413,"children":414},{"style":331},[415],{"type":79,"value":295},{"type":68,"tag":191,"props":417,"children":418},{"style":204},[419],{"type":79,"value":125},{"type":68,"tag":191,"props":421,"children":422},{"style":265},[423],{"type":79,"value":424},"select",{"type":68,"tag":191,"props":426,"children":427},{"style":331},[428],{"type":79,"value":429},"()\n",{"type":68,"tag":191,"props":431,"children":433},{"class":193,"line":432},7,[434],{"type":68,"tag":191,"props":435,"children":436},{"emptyLinePlaceholder":245},[437],{"type":79,"value":248},{"type":68,"tag":191,"props":439,"children":441},{"class":193,"line":440},8,[442,447,451,456,461,465],{"type":68,"tag":191,"props":443,"children":444},{"style":198},[445],{"type":79,"value":446}," return",{"type":68,"tag":191,"props":448,"children":449},{"style":204},[450],{"type":79,"value":207},{"type":68,"tag":191,"props":452,"children":453},{"style":331},[454],{"type":79,"value":455}," sensitiveData",{"type":68,"tag":191,"props":457,"children":458},{"style":204},[459],{"type":79,"value":460},":",{"type":68,"tag":191,"props":462,"children":463},{"style":210},[464],{"type":79,"value":367},{"type":68,"tag":191,"props":466,"children":467},{"style":204},[468],{"type":79,"value":469}," }\n",{"type":68,"tag":191,"props":471,"children":473},{"class":193,"line":472},9,[474,479],{"type":68,"tag":191,"props":475,"children":476},{"style":204},[477],{"type":79,"value":478},"}",{"type":68,"tag":191,"props":480,"children":481},{"style":210},[482],{"type":79,"value":342},{"type":68,"tag":75,"props":484,"children":485},{},[486],{"type":79,"value":487},"Then call your API route from any vue file:",{"type":68,"tag":180,"props":489,"children":492},{"className":182,"code":490,"filename":491,"language":185,"meta":61,"style":61},"const fetchSensitiveData = async () => {\n const { sensitiveData } = await useFetch('/api/bypass-rls')\n}\n","pages/index.vue",[493],{"type":68,"tag":136,"props":494,"children":495},{"__ignoreMap":61},[496,532,585],{"type":68,"tag":191,"props":497,"children":498},{"class":193,"line":194},[499,504,509,514,519,524,528],{"type":68,"tag":191,"props":500,"children":501},{"style":276},[502],{"type":79,"value":503},"const",{"type":68,"tag":191,"props":505,"children":506},{"style":210},[507],{"type":79,"value":508}," fetchSensitiveData ",{"type":68,"tag":191,"props":510,"children":511},{"style":204},[512],{"type":79,"value":513},"=",{"type":68,"tag":191,"props":515,"children":516},{"style":276},[517],{"type":79,"value":518}," async",{"type":68,"tag":191,"props":520,"children":521},{"style":204},[522],{"type":79,"value":523}," ()",{"type":68,"tag":191,"props":525,"children":526},{"style":276},[527],{"type":79,"value":300},{"type":68,"tag":191,"props":529,"children":530},{"style":204},[531],{"type":79,"value":305},{"type":68,"tag":191,"props":533,"children":534},{"class":193,"line":241},[535,539,543,547,551,555,559,564,568,572,577,581],{"type":68,"tag":191,"props":536,"children":537},{"style":276},[538],{"type":79,"value":314},{"type":68,"tag":191,"props":540,"children":541},{"style":204},[542],{"type":79,"value":207},{"type":68,"tag":191,"props":544,"children":545},{"style":210},[546],{"type":79,"value":455},{"type":68,"tag":191,"props":548,"children":549},{"style":204},[550],{"type":79,"value":218},{"type":68,"tag":191,"props":552,"children":553},{"style":204},[554],{"type":79,"value":324},{"type":68,"tag":191,"props":556,"children":557},{"style":198},[558],{"type":79,"value":380},{"type":68,"tag":191,"props":560,"children":561},{"style":265},[562],{"type":79,"value":563}," useFetch",{"type":68,"tag":191,"props":565,"children":566},{"style":331},[567],{"type":79,"value":273},{"type":68,"tag":191,"props":569,"children":570},{"style":204},[571],{"type":79,"value":402},{"type":68,"tag":191,"props":573,"children":574},{"style":231},[575],{"type":79,"value":576},"/api/bypass-rls",{"type":68,"tag":191,"props":578,"children":579},{"style":204},[580],{"type":79,"value":402},{"type":68,"tag":191,"props":582,"children":583},{"style":331},[584],{"type":79,"value":342},{"type":68,"tag":191,"props":586,"children":587},{"class":193,"line":251},[588],{"type":68,"tag":191,"props":589,"children":590},{"style":204},[591],{"type":79,"value":592},"}\n",{"type":68,"tag":594,"props":595,"children":596},"style",{},[597],{"type":79,"value":598},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":241,"depth":241,"links":600},[],"markdown","content:4.usage:services:2.serverSupabaseServiceRole.md","content","4.usage/services/2.serverSupabaseServiceRole.md","4.usage/services/2.serverSupabaseServiceRole","md",[608,610],{"_path":35,"title":34,"description":609},"Make requests to the Supabase API on server side with the serverSupabaseClient service",{"_path":41,"title":40,"description":611},"Get your Supabase user's session from serverside with the serverSupabaseUser service",1734518136481] \ No newline at end of file diff --git a/usage/services/serversupabaseservicerole/index.html b/usage/services/serversupabaseservicerole/index.html index 7aa3c5794..bb179b5d2 100644 --- a/usage/services/serversupabaseservicerole/index.html +++ b/usage/services/serversupabaseservicerole/index.html @@ -61,7 +61,7 @@ - + @@ -117,5 +117,5 @@ const { sensitiveData } = await useFetch('/api/bypass-rls') }
Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/services/serversupabasesession/_payload.json b/usage/services/serversupabasesession/_payload.json index 798c1a6a5..4bdc07103 100644 --- a/usage/services/serversupabasesession/_payload.json +++ b/usage/services/serversupabasesession/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":696},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabasesession":58,"/usage/services/serversupabasesession-surround":691},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":41,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":40,"description":62,"body":63,"_type":685,"_id":686,"_source":687,"_file":688,"_stem":689,"_extension":690},"services",false,"","Get your Supabase user's session from serverside with the serverSupabaseUser service",{"type":64,"children":65,"toc":683},"root",[66,91,111,131,150,322,327,473,487,677],{"type":67,"tag":68,"props":69,"children":72},"element","callout",{"color":70,"icon":71},"amber","i-heroicons-exclamation-triangle-20-solid",[73],{"type":67,"tag":74,"props":75,"children":76},"p",{},[77,80,89],{"type":78,"value":79},"text","This section assumes you're familiar with ",{"type":67,"tag":81,"props":82,"children":86},"a",{"href":83,"rel":84},"https://v3.nuxtjs.org/guide/concepts/server-engine",[85],"nofollow",[87],{"type":78,"value":88},"Nitro",{"type":78,"value":90},", the server engine powered by Nuxt.",{"type":67,"tag":74,"props":92,"children":93},{},[94,96,100,102,109],{"type":78,"value":95},"This function is similar to the ",{"type":67,"tag":81,"props":97,"children":98},{"href":25},[99],{"type":78,"value":24},{"type":78,"value":101}," composable but is used in ",{"type":67,"tag":81,"props":103,"children":106},{"href":104,"rel":105},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[85],[107],{"type":78,"value":108},"server routes",{"type":78,"value":110},".",{"type":67,"tag":68,"props":112,"children":113},{"color":70,"icon":71},[114],{"type":67,"tag":74,"props":115,"children":116},{},[117,119,125,127],{"type":78,"value":118},"Be advised that ",{"type":67,"tag":120,"props":121,"children":123},"code",{"className":122},[],[124],{"type":78,"value":40},{"type":78,"value":126}," is considered unsafe, since the session comes from the client and users can tamper with it. For checking if the user is logged in, always use ",{"type":67,"tag":81,"props":128,"children":129},{"href":44},[130],{"type":78,"value":43},{"type":67,"tag":74,"props":132,"children":133},{},[134,136,141,143,149],{"type":78,"value":135},"Define your server route and import the ",{"type":67,"tag":120,"props":137,"children":139},{"className":138},[],[140],{"type":78,"value":40},{"type":78,"value":142}," from ",{"type":67,"tag":120,"props":144,"children":146},{"className":145},[],[147],{"type":78,"value":148},"#supabase/server",{"type":78,"value":110},{"type":67,"tag":151,"props":152,"children":157},"pre",{"className":153,"code":154,"filename":155,"language":156,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseSession } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseSession(event)\n})\n","server/api/session.ts","ts",[158],{"type":67,"tag":120,"props":159,"children":160},{"__ignoreMap":61},[161,210,220,277,309],{"type":67,"tag":162,"props":163,"children":166},"span",{"class":164,"line":165},"line",1,[167,173,179,185,190,195,200,205],{"type":67,"tag":162,"props":168,"children":170},{"style":169},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[171],{"type":78,"value":172},"import",{"type":67,"tag":162,"props":174,"children":176},{"style":175},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[177],{"type":78,"value":178}," {",{"type":67,"tag":162,"props":180,"children":182},{"style":181},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[183],{"type":78,"value":184}," serverSupabaseSession",{"type":67,"tag":162,"props":186,"children":187},{"style":175},[188],{"type":78,"value":189}," }",{"type":67,"tag":162,"props":191,"children":192},{"style":169},[193],{"type":78,"value":194}," from",{"type":67,"tag":162,"props":196,"children":197},{"style":175},[198],{"type":78,"value":199}," '",{"type":67,"tag":162,"props":201,"children":203},{"style":202},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[204],{"type":78,"value":148},{"type":67,"tag":162,"props":206,"children":207},{"style":175},[208],{"type":78,"value":209},"'\n",{"type":67,"tag":162,"props":211,"children":213},{"class":164,"line":212},2,[214],{"type":67,"tag":162,"props":215,"children":217},{"emptyLinePlaceholder":216},true,[218],{"type":78,"value":219},"\n",{"type":67,"tag":162,"props":221,"children":223},{"class":164,"line":222},3,[224,229,234,240,245,251,256,262,267,272],{"type":67,"tag":162,"props":225,"children":226},{"style":169},[227],{"type":78,"value":228},"export",{"type":67,"tag":162,"props":230,"children":231},{"style":169},[232],{"type":78,"value":233}," default",{"type":67,"tag":162,"props":235,"children":237},{"style":236},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[238],{"type":78,"value":239}," defineEventHandler",{"type":67,"tag":162,"props":241,"children":242},{"style":181},[243],{"type":78,"value":244},"(",{"type":67,"tag":162,"props":246,"children":248},{"style":247},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[249],{"type":78,"value":250},"async",{"type":67,"tag":162,"props":252,"children":253},{"style":175},[254],{"type":78,"value":255}," (",{"type":67,"tag":162,"props":257,"children":259},{"style":258},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[260],{"type":78,"value":261},"event",{"type":67,"tag":162,"props":263,"children":264},{"style":175},[265],{"type":78,"value":266},")",{"type":67,"tag":162,"props":268,"children":269},{"style":247},[270],{"type":78,"value":271}," =>",{"type":67,"tag":162,"props":273,"children":274},{"style":175},[275],{"type":78,"value":276}," {\n",{"type":67,"tag":162,"props":278,"children":280},{"class":164,"line":279},4,[281,286,291,295,300,304],{"type":67,"tag":162,"props":282,"children":283},{"style":169},[284],{"type":78,"value":285}," return",{"type":67,"tag":162,"props":287,"children":288},{"style":169},[289],{"type":78,"value":290}," await",{"type":67,"tag":162,"props":292,"children":293},{"style":236},[294],{"type":78,"value":184},{"type":67,"tag":162,"props":296,"children":298},{"style":297},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[299],{"type":78,"value":244},{"type":67,"tag":162,"props":301,"children":302},{"style":181},[303],{"type":78,"value":261},{"type":67,"tag":162,"props":305,"children":306},{"style":297},[307],{"type":78,"value":308},")\n",{"type":67,"tag":162,"props":310,"children":312},{"class":164,"line":311},5,[313,318],{"type":67,"tag":162,"props":314,"children":315},{"style":175},[316],{"type":78,"value":317},"}",{"type":67,"tag":162,"props":319,"children":320},{"style":181},[321],{"type":78,"value":308},{"type":67,"tag":74,"props":323,"children":324},{},[325],{"type":78,"value":326},"Then call your api route from any vue file:",{"type":67,"tag":151,"props":328,"children":331},{"className":153,"code":329,"filename":330,"language":156,"meta":61,"style":61},"const session = ref(null)\n\nconst fetchSession = async () => {\n session.value = await $fetch('/api/session')\n}\n","pages/index.vue",[332],{"type":67,"tag":120,"props":333,"children":334},{"__ignoreMap":61},[335,371,378,412,465],{"type":67,"tag":162,"props":336,"children":337},{"class":164,"line":165},[338,343,348,353,358,362,367],{"type":67,"tag":162,"props":339,"children":340},{"style":247},[341],{"type":78,"value":342},"const",{"type":67,"tag":162,"props":344,"children":345},{"style":181},[346],{"type":78,"value":347}," session ",{"type":67,"tag":162,"props":349,"children":350},{"style":175},[351],{"type":78,"value":352},"=",{"type":67,"tag":162,"props":354,"children":355},{"style":236},[356],{"type":78,"value":357}," ref",{"type":67,"tag":162,"props":359,"children":360},{"style":181},[361],{"type":78,"value":244},{"type":67,"tag":162,"props":363,"children":364},{"style":175},[365],{"type":78,"value":366},"null",{"type":67,"tag":162,"props":368,"children":369},{"style":181},[370],{"type":78,"value":308},{"type":67,"tag":162,"props":372,"children":373},{"class":164,"line":212},[374],{"type":67,"tag":162,"props":375,"children":376},{"emptyLinePlaceholder":216},[377],{"type":78,"value":219},{"type":67,"tag":162,"props":379,"children":380},{"class":164,"line":222},[381,385,390,394,399,404,408],{"type":67,"tag":162,"props":382,"children":383},{"style":247},[384],{"type":78,"value":342},{"type":67,"tag":162,"props":386,"children":387},{"style":181},[388],{"type":78,"value":389}," fetchSession ",{"type":67,"tag":162,"props":391,"children":392},{"style":175},[393],{"type":78,"value":352},{"type":67,"tag":162,"props":395,"children":396},{"style":247},[397],{"type":78,"value":398}," async",{"type":67,"tag":162,"props":400,"children":401},{"style":175},[402],{"type":78,"value":403}," ()",{"type":67,"tag":162,"props":405,"children":406},{"style":247},[407],{"type":78,"value":271},{"type":67,"tag":162,"props":409,"children":410},{"style":175},[411],{"type":78,"value":276},{"type":67,"tag":162,"props":413,"children":414},{"class":164,"line":279},[415,420,424,429,434,438,443,447,452,457,461],{"type":67,"tag":162,"props":416,"children":417},{"style":181},[418],{"type":78,"value":419}," session",{"type":67,"tag":162,"props":421,"children":422},{"style":175},[423],{"type":78,"value":110},{"type":67,"tag":162,"props":425,"children":426},{"style":181},[427],{"type":78,"value":428},"value",{"type":67,"tag":162,"props":430,"children":431},{"style":175},[432],{"type":78,"value":433}," =",{"type":67,"tag":162,"props":435,"children":436},{"style":169},[437],{"type":78,"value":290},{"type":67,"tag":162,"props":439,"children":440},{"style":236},[441],{"type":78,"value":442}," $fetch",{"type":67,"tag":162,"props":444,"children":445},{"style":297},[446],{"type":78,"value":244},{"type":67,"tag":162,"props":448,"children":449},{"style":175},[450],{"type":78,"value":451},"'",{"type":67,"tag":162,"props":453,"children":454},{"style":202},[455],{"type":78,"value":456},"/api/session",{"type":67,"tag":162,"props":458,"children":459},{"style":175},[460],{"type":78,"value":451},{"type":67,"tag":162,"props":462,"children":463},{"style":297},[464],{"type":78,"value":308},{"type":67,"tag":162,"props":466,"children":467},{"class":164,"line":311},[468],{"type":67,"tag":162,"props":469,"children":470},{"style":175},[471],{"type":78,"value":472},"}\n",{"type":67,"tag":74,"props":474,"children":475},{},[476,478,485],{"type":78,"value":477},"Be careful, if you want to call this route on SSR, please read this ",{"type":67,"tag":81,"props":479,"children":482},{"href":480,"rel":481},"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch",[85],[483],{"type":78,"value":484},"section",{"type":78,"value":486},", you must send your browser cookies including your supabase token.",{"type":67,"tag":151,"props":488,"children":490},{"className":153,"code":489,"filename":330,"language":156,"meta":61,"style":61},"const session = ref(null)\n\nconst { data } = await useFetch('/api/session', {\n headers: useRequestHeaders(['cookie'])\n})\n\nsession.value = data\n",[491],{"type":67,"tag":120,"props":492,"children":493},{"__ignoreMap":61},[494,525,532,590,631,642,650],{"type":67,"tag":162,"props":495,"children":496},{"class":164,"line":165},[497,501,505,509,513,517,521],{"type":67,"tag":162,"props":498,"children":499},{"style":247},[500],{"type":78,"value":342},{"type":67,"tag":162,"props":502,"children":503},{"style":181},[504],{"type":78,"value":347},{"type":67,"tag":162,"props":506,"children":507},{"style":175},[508],{"type":78,"value":352},{"type":67,"tag":162,"props":510,"children":511},{"style":236},[512],{"type":78,"value":357},{"type":67,"tag":162,"props":514,"children":515},{"style":181},[516],{"type":78,"value":244},{"type":67,"tag":162,"props":518,"children":519},{"style":175},[520],{"type":78,"value":366},{"type":67,"tag":162,"props":522,"children":523},{"style":181},[524],{"type":78,"value":308},{"type":67,"tag":162,"props":526,"children":527},{"class":164,"line":212},[528],{"type":67,"tag":162,"props":529,"children":530},{"emptyLinePlaceholder":216},[531],{"type":78,"value":219},{"type":67,"tag":162,"props":533,"children":534},{"class":164,"line":222},[535,539,543,548,552,556,560,565,569,573,577,581,586],{"type":67,"tag":162,"props":536,"children":537},{"style":247},[538],{"type":78,"value":342},{"type":67,"tag":162,"props":540,"children":541},{"style":175},[542],{"type":78,"value":178},{"type":67,"tag":162,"props":544,"children":545},{"style":181},[546],{"type":78,"value":547}," data ",{"type":67,"tag":162,"props":549,"children":550},{"style":175},[551],{"type":78,"value":317},{"type":67,"tag":162,"props":553,"children":554},{"style":175},[555],{"type":78,"value":433},{"type":67,"tag":162,"props":557,"children":558},{"style":169},[559],{"type":78,"value":290},{"type":67,"tag":162,"props":561,"children":562},{"style":236},[563],{"type":78,"value":564}," useFetch",{"type":67,"tag":162,"props":566,"children":567},{"style":181},[568],{"type":78,"value":244},{"type":67,"tag":162,"props":570,"children":571},{"style":175},[572],{"type":78,"value":451},{"type":67,"tag":162,"props":574,"children":575},{"style":202},[576],{"type":78,"value":456},{"type":67,"tag":162,"props":578,"children":579},{"style":175},[580],{"type":78,"value":451},{"type":67,"tag":162,"props":582,"children":583},{"style":175},[584],{"type":78,"value":585},",",{"type":67,"tag":162,"props":587,"children":588},{"style":175},[589],{"type":78,"value":276},{"type":67,"tag":162,"props":591,"children":592},{"class":164,"line":279},[593,598,603,608,613,617,622,626],{"type":67,"tag":162,"props":594,"children":595},{"style":297},[596],{"type":78,"value":597}," headers",{"type":67,"tag":162,"props":599,"children":600},{"style":175},[601],{"type":78,"value":602},":",{"type":67,"tag":162,"props":604,"children":605},{"style":236},[606],{"type":78,"value":607}," useRequestHeaders",{"type":67,"tag":162,"props":609,"children":610},{"style":181},[611],{"type":78,"value":612},"([",{"type":67,"tag":162,"props":614,"children":615},{"style":175},[616],{"type":78,"value":451},{"type":67,"tag":162,"props":618,"children":619},{"style":202},[620],{"type":78,"value":621},"cookie",{"type":67,"tag":162,"props":623,"children":624},{"style":175},[625],{"type":78,"value":451},{"type":67,"tag":162,"props":627,"children":628},{"style":181},[629],{"type":78,"value":630},"])\n",{"type":67,"tag":162,"props":632,"children":633},{"class":164,"line":311},[634,638],{"type":67,"tag":162,"props":635,"children":636},{"style":175},[637],{"type":78,"value":317},{"type":67,"tag":162,"props":639,"children":640},{"style":181},[641],{"type":78,"value":308},{"type":67,"tag":162,"props":643,"children":645},{"class":164,"line":644},6,[646],{"type":67,"tag":162,"props":647,"children":648},{"emptyLinePlaceholder":216},[649],{"type":78,"value":219},{"type":67,"tag":162,"props":651,"children":653},{"class":164,"line":652},7,[654,659,663,668,672],{"type":67,"tag":162,"props":655,"children":656},{"style":181},[657],{"type":78,"value":658},"session",{"type":67,"tag":162,"props":660,"children":661},{"style":175},[662],{"type":78,"value":110},{"type":67,"tag":162,"props":664,"children":665},{"style":181},[666],{"type":78,"value":667},"value ",{"type":67,"tag":162,"props":669,"children":670},{"style":175},[671],{"type":78,"value":352},{"type":67,"tag":162,"props":673,"children":674},{"style":181},[675],{"type":78,"value":676}," data\n",{"type":67,"tag":678,"props":679,"children":680},"style",{},[681],{"type":78,"value":682},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":212,"depth":212,"links":684},[],"markdown","content:4.usage:services:3.serverSupabaseSession.md","content","4.usage/services/3.serverSupabaseSession.md","4.usage/services/3.serverSupabaseSession","md",[692,694],{"_path":38,"title":37,"description":693},"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service",{"_path":44,"title":43,"description":695},"Get your Supabase user from serverside with the serverSupabaseUser service",1733842352316] \ No newline at end of file +[{"data":1,"prerenderedAt":696},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabasesession":58,"/usage/services/serversupabasesession-surround":691},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":41,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":40,"description":62,"body":63,"_type":685,"_id":686,"_source":687,"_file":688,"_stem":689,"_extension":690},"services",false,"","Get your Supabase user's session from serverside with the serverSupabaseUser service",{"type":64,"children":65,"toc":683},"root",[66,91,111,131,150,322,327,473,487,677],{"type":67,"tag":68,"props":69,"children":72},"element","callout",{"color":70,"icon":71},"amber","i-heroicons-exclamation-triangle-20-solid",[73],{"type":67,"tag":74,"props":75,"children":76},"p",{},[77,80,89],{"type":78,"value":79},"text","This section assumes you're familiar with ",{"type":67,"tag":81,"props":82,"children":86},"a",{"href":83,"rel":84},"https://v3.nuxtjs.org/guide/concepts/server-engine",[85],"nofollow",[87],{"type":78,"value":88},"Nitro",{"type":78,"value":90},", the server engine powered by Nuxt.",{"type":67,"tag":74,"props":92,"children":93},{},[94,96,100,102,109],{"type":78,"value":95},"This function is similar to the ",{"type":67,"tag":81,"props":97,"children":98},{"href":25},[99],{"type":78,"value":24},{"type":78,"value":101}," composable but is used in ",{"type":67,"tag":81,"props":103,"children":106},{"href":104,"rel":105},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[85],[107],{"type":78,"value":108},"server routes",{"type":78,"value":110},".",{"type":67,"tag":68,"props":112,"children":113},{"color":70,"icon":71},[114],{"type":67,"tag":74,"props":115,"children":116},{},[117,119,125,127],{"type":78,"value":118},"Be advised that ",{"type":67,"tag":120,"props":121,"children":123},"code",{"className":122},[],[124],{"type":78,"value":40},{"type":78,"value":126}," is considered unsafe, since the session comes from the client and users can tamper with it. For checking if the user is logged in, always use ",{"type":67,"tag":81,"props":128,"children":129},{"href":44},[130],{"type":78,"value":43},{"type":67,"tag":74,"props":132,"children":133},{},[134,136,141,143,149],{"type":78,"value":135},"Define your server route and import the ",{"type":67,"tag":120,"props":137,"children":139},{"className":138},[],[140],{"type":78,"value":40},{"type":78,"value":142}," from ",{"type":67,"tag":120,"props":144,"children":146},{"className":145},[],[147],{"type":78,"value":148},"#supabase/server",{"type":78,"value":110},{"type":67,"tag":151,"props":152,"children":157},"pre",{"className":153,"code":154,"filename":155,"language":156,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseSession } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseSession(event)\n})\n","server/api/session.ts","ts",[158],{"type":67,"tag":120,"props":159,"children":160},{"__ignoreMap":61},[161,210,220,277,309],{"type":67,"tag":162,"props":163,"children":166},"span",{"class":164,"line":165},"line",1,[167,173,179,185,190,195,200,205],{"type":67,"tag":162,"props":168,"children":170},{"style":169},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[171],{"type":78,"value":172},"import",{"type":67,"tag":162,"props":174,"children":176},{"style":175},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[177],{"type":78,"value":178}," {",{"type":67,"tag":162,"props":180,"children":182},{"style":181},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[183],{"type":78,"value":184}," serverSupabaseSession",{"type":67,"tag":162,"props":186,"children":187},{"style":175},[188],{"type":78,"value":189}," }",{"type":67,"tag":162,"props":191,"children":192},{"style":169},[193],{"type":78,"value":194}," from",{"type":67,"tag":162,"props":196,"children":197},{"style":175},[198],{"type":78,"value":199}," '",{"type":67,"tag":162,"props":201,"children":203},{"style":202},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[204],{"type":78,"value":148},{"type":67,"tag":162,"props":206,"children":207},{"style":175},[208],{"type":78,"value":209},"'\n",{"type":67,"tag":162,"props":211,"children":213},{"class":164,"line":212},2,[214],{"type":67,"tag":162,"props":215,"children":217},{"emptyLinePlaceholder":216},true,[218],{"type":78,"value":219},"\n",{"type":67,"tag":162,"props":221,"children":223},{"class":164,"line":222},3,[224,229,234,240,245,251,256,262,267,272],{"type":67,"tag":162,"props":225,"children":226},{"style":169},[227],{"type":78,"value":228},"export",{"type":67,"tag":162,"props":230,"children":231},{"style":169},[232],{"type":78,"value":233}," default",{"type":67,"tag":162,"props":235,"children":237},{"style":236},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[238],{"type":78,"value":239}," defineEventHandler",{"type":67,"tag":162,"props":241,"children":242},{"style":181},[243],{"type":78,"value":244},"(",{"type":67,"tag":162,"props":246,"children":248},{"style":247},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[249],{"type":78,"value":250},"async",{"type":67,"tag":162,"props":252,"children":253},{"style":175},[254],{"type":78,"value":255}," (",{"type":67,"tag":162,"props":257,"children":259},{"style":258},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[260],{"type":78,"value":261},"event",{"type":67,"tag":162,"props":263,"children":264},{"style":175},[265],{"type":78,"value":266},")",{"type":67,"tag":162,"props":268,"children":269},{"style":247},[270],{"type":78,"value":271}," =>",{"type":67,"tag":162,"props":273,"children":274},{"style":175},[275],{"type":78,"value":276}," {\n",{"type":67,"tag":162,"props":278,"children":280},{"class":164,"line":279},4,[281,286,291,295,300,304],{"type":67,"tag":162,"props":282,"children":283},{"style":169},[284],{"type":78,"value":285}," return",{"type":67,"tag":162,"props":287,"children":288},{"style":169},[289],{"type":78,"value":290}," await",{"type":67,"tag":162,"props":292,"children":293},{"style":236},[294],{"type":78,"value":184},{"type":67,"tag":162,"props":296,"children":298},{"style":297},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[299],{"type":78,"value":244},{"type":67,"tag":162,"props":301,"children":302},{"style":181},[303],{"type":78,"value":261},{"type":67,"tag":162,"props":305,"children":306},{"style":297},[307],{"type":78,"value":308},")\n",{"type":67,"tag":162,"props":310,"children":312},{"class":164,"line":311},5,[313,318],{"type":67,"tag":162,"props":314,"children":315},{"style":175},[316],{"type":78,"value":317},"}",{"type":67,"tag":162,"props":319,"children":320},{"style":181},[321],{"type":78,"value":308},{"type":67,"tag":74,"props":323,"children":324},{},[325],{"type":78,"value":326},"Then call your api route from any vue file:",{"type":67,"tag":151,"props":328,"children":331},{"className":153,"code":329,"filename":330,"language":156,"meta":61,"style":61},"const session = ref(null)\n\nconst fetchSession = async () => {\n session.value = await $fetch('/api/session')\n}\n","pages/index.vue",[332],{"type":67,"tag":120,"props":333,"children":334},{"__ignoreMap":61},[335,371,378,412,465],{"type":67,"tag":162,"props":336,"children":337},{"class":164,"line":165},[338,343,348,353,358,362,367],{"type":67,"tag":162,"props":339,"children":340},{"style":247},[341],{"type":78,"value":342},"const",{"type":67,"tag":162,"props":344,"children":345},{"style":181},[346],{"type":78,"value":347}," session ",{"type":67,"tag":162,"props":349,"children":350},{"style":175},[351],{"type":78,"value":352},"=",{"type":67,"tag":162,"props":354,"children":355},{"style":236},[356],{"type":78,"value":357}," ref",{"type":67,"tag":162,"props":359,"children":360},{"style":181},[361],{"type":78,"value":244},{"type":67,"tag":162,"props":363,"children":364},{"style":175},[365],{"type":78,"value":366},"null",{"type":67,"tag":162,"props":368,"children":369},{"style":181},[370],{"type":78,"value":308},{"type":67,"tag":162,"props":372,"children":373},{"class":164,"line":212},[374],{"type":67,"tag":162,"props":375,"children":376},{"emptyLinePlaceholder":216},[377],{"type":78,"value":219},{"type":67,"tag":162,"props":379,"children":380},{"class":164,"line":222},[381,385,390,394,399,404,408],{"type":67,"tag":162,"props":382,"children":383},{"style":247},[384],{"type":78,"value":342},{"type":67,"tag":162,"props":386,"children":387},{"style":181},[388],{"type":78,"value":389}," fetchSession ",{"type":67,"tag":162,"props":391,"children":392},{"style":175},[393],{"type":78,"value":352},{"type":67,"tag":162,"props":395,"children":396},{"style":247},[397],{"type":78,"value":398}," async",{"type":67,"tag":162,"props":400,"children":401},{"style":175},[402],{"type":78,"value":403}," ()",{"type":67,"tag":162,"props":405,"children":406},{"style":247},[407],{"type":78,"value":271},{"type":67,"tag":162,"props":409,"children":410},{"style":175},[411],{"type":78,"value":276},{"type":67,"tag":162,"props":413,"children":414},{"class":164,"line":279},[415,420,424,429,434,438,443,447,452,457,461],{"type":67,"tag":162,"props":416,"children":417},{"style":181},[418],{"type":78,"value":419}," session",{"type":67,"tag":162,"props":421,"children":422},{"style":175},[423],{"type":78,"value":110},{"type":67,"tag":162,"props":425,"children":426},{"style":181},[427],{"type":78,"value":428},"value",{"type":67,"tag":162,"props":430,"children":431},{"style":175},[432],{"type":78,"value":433}," =",{"type":67,"tag":162,"props":435,"children":436},{"style":169},[437],{"type":78,"value":290},{"type":67,"tag":162,"props":439,"children":440},{"style":236},[441],{"type":78,"value":442}," $fetch",{"type":67,"tag":162,"props":444,"children":445},{"style":297},[446],{"type":78,"value":244},{"type":67,"tag":162,"props":448,"children":449},{"style":175},[450],{"type":78,"value":451},"'",{"type":67,"tag":162,"props":453,"children":454},{"style":202},[455],{"type":78,"value":456},"/api/session",{"type":67,"tag":162,"props":458,"children":459},{"style":175},[460],{"type":78,"value":451},{"type":67,"tag":162,"props":462,"children":463},{"style":297},[464],{"type":78,"value":308},{"type":67,"tag":162,"props":466,"children":467},{"class":164,"line":311},[468],{"type":67,"tag":162,"props":469,"children":470},{"style":175},[471],{"type":78,"value":472},"}\n",{"type":67,"tag":74,"props":474,"children":475},{},[476,478,485],{"type":78,"value":477},"Be careful, if you want to call this route on SSR, please read this ",{"type":67,"tag":81,"props":479,"children":482},{"href":480,"rel":481},"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch",[85],[483],{"type":78,"value":484},"section",{"type":78,"value":486},", you must send your browser cookies including your supabase token.",{"type":67,"tag":151,"props":488,"children":490},{"className":153,"code":489,"filename":330,"language":156,"meta":61,"style":61},"const session = ref(null)\n\nconst { data } = await useFetch('/api/session', {\n headers: useRequestHeaders(['cookie'])\n})\n\nsession.value = data\n",[491],{"type":67,"tag":120,"props":492,"children":493},{"__ignoreMap":61},[494,525,532,590,631,642,650],{"type":67,"tag":162,"props":495,"children":496},{"class":164,"line":165},[497,501,505,509,513,517,521],{"type":67,"tag":162,"props":498,"children":499},{"style":247},[500],{"type":78,"value":342},{"type":67,"tag":162,"props":502,"children":503},{"style":181},[504],{"type":78,"value":347},{"type":67,"tag":162,"props":506,"children":507},{"style":175},[508],{"type":78,"value":352},{"type":67,"tag":162,"props":510,"children":511},{"style":236},[512],{"type":78,"value":357},{"type":67,"tag":162,"props":514,"children":515},{"style":181},[516],{"type":78,"value":244},{"type":67,"tag":162,"props":518,"children":519},{"style":175},[520],{"type":78,"value":366},{"type":67,"tag":162,"props":522,"children":523},{"style":181},[524],{"type":78,"value":308},{"type":67,"tag":162,"props":526,"children":527},{"class":164,"line":212},[528],{"type":67,"tag":162,"props":529,"children":530},{"emptyLinePlaceholder":216},[531],{"type":78,"value":219},{"type":67,"tag":162,"props":533,"children":534},{"class":164,"line":222},[535,539,543,548,552,556,560,565,569,573,577,581,586],{"type":67,"tag":162,"props":536,"children":537},{"style":247},[538],{"type":78,"value":342},{"type":67,"tag":162,"props":540,"children":541},{"style":175},[542],{"type":78,"value":178},{"type":67,"tag":162,"props":544,"children":545},{"style":181},[546],{"type":78,"value":547}," data ",{"type":67,"tag":162,"props":549,"children":550},{"style":175},[551],{"type":78,"value":317},{"type":67,"tag":162,"props":553,"children":554},{"style":175},[555],{"type":78,"value":433},{"type":67,"tag":162,"props":557,"children":558},{"style":169},[559],{"type":78,"value":290},{"type":67,"tag":162,"props":561,"children":562},{"style":236},[563],{"type":78,"value":564}," useFetch",{"type":67,"tag":162,"props":566,"children":567},{"style":181},[568],{"type":78,"value":244},{"type":67,"tag":162,"props":570,"children":571},{"style":175},[572],{"type":78,"value":451},{"type":67,"tag":162,"props":574,"children":575},{"style":202},[576],{"type":78,"value":456},{"type":67,"tag":162,"props":578,"children":579},{"style":175},[580],{"type":78,"value":451},{"type":67,"tag":162,"props":582,"children":583},{"style":175},[584],{"type":78,"value":585},",",{"type":67,"tag":162,"props":587,"children":588},{"style":175},[589],{"type":78,"value":276},{"type":67,"tag":162,"props":591,"children":592},{"class":164,"line":279},[593,598,603,608,613,617,622,626],{"type":67,"tag":162,"props":594,"children":595},{"style":297},[596],{"type":78,"value":597}," headers",{"type":67,"tag":162,"props":599,"children":600},{"style":175},[601],{"type":78,"value":602},":",{"type":67,"tag":162,"props":604,"children":605},{"style":236},[606],{"type":78,"value":607}," useRequestHeaders",{"type":67,"tag":162,"props":609,"children":610},{"style":181},[611],{"type":78,"value":612},"([",{"type":67,"tag":162,"props":614,"children":615},{"style":175},[616],{"type":78,"value":451},{"type":67,"tag":162,"props":618,"children":619},{"style":202},[620],{"type":78,"value":621},"cookie",{"type":67,"tag":162,"props":623,"children":624},{"style":175},[625],{"type":78,"value":451},{"type":67,"tag":162,"props":627,"children":628},{"style":181},[629],{"type":78,"value":630},"])\n",{"type":67,"tag":162,"props":632,"children":633},{"class":164,"line":311},[634,638],{"type":67,"tag":162,"props":635,"children":636},{"style":175},[637],{"type":78,"value":317},{"type":67,"tag":162,"props":639,"children":640},{"style":181},[641],{"type":78,"value":308},{"type":67,"tag":162,"props":643,"children":645},{"class":164,"line":644},6,[646],{"type":67,"tag":162,"props":647,"children":648},{"emptyLinePlaceholder":216},[649],{"type":78,"value":219},{"type":67,"tag":162,"props":651,"children":653},{"class":164,"line":652},7,[654,659,663,668,672],{"type":67,"tag":162,"props":655,"children":656},{"style":181},[657],{"type":78,"value":658},"session",{"type":67,"tag":162,"props":660,"children":661},{"style":175},[662],{"type":78,"value":110},{"type":67,"tag":162,"props":664,"children":665},{"style":181},[666],{"type":78,"value":667},"value ",{"type":67,"tag":162,"props":669,"children":670},{"style":175},[671],{"type":78,"value":352},{"type":67,"tag":162,"props":673,"children":674},{"style":181},[675],{"type":78,"value":676}," data\n",{"type":67,"tag":678,"props":679,"children":680},"style",{},[681],{"type":78,"value":682},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":212,"depth":212,"links":684},[],"markdown","content:4.usage:services:3.serverSupabaseSession.md","content","4.usage/services/3.serverSupabaseSession.md","4.usage/services/3.serverSupabaseSession","md",[692,694],{"_path":38,"title":37,"description":693},"Make requests with super admin rights to the Supabase API with the serverSupabaseServiceRole service",{"_path":44,"title":43,"description":695},"Get your Supabase user from serverside with the serverSupabaseUser service",1734518136490] \ No newline at end of file diff --git a/usage/services/serversupabasesession/index.html b/usage/services/serversupabasesession/index.html index c2c78032d..ec409516f 100644 --- a/usage/services/serversupabasesession/index.html +++ b/usage/services/serversupabasesession/index.html @@ -61,7 +61,7 @@ - + @@ -121,5 +121,5 @@ session.value = data
Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file diff --git a/usage/services/serversupabaseuser/_payload.json b/usage/services/serversupabaseuser/_payload.json index 342dbc09d..b8e9a23c3 100644 --- a/usage/services/serversupabaseuser/_payload.json +++ b/usage/services/serversupabaseuser/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":677},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabaseuser":58,"/usage/services/serversupabaseuser-surround":672},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":44,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":43,"description":62,"body":63,"_type":666,"_id":667,"_source":668,"_file":669,"_stem":670,"_extension":671},"services",false,"","Get your Supabase user from serverside with the serverSupabaseUser service",{"type":64,"children":65,"toc":664},"root",[66,91,111,131,303,308,454,468,658],{"type":67,"tag":68,"props":69,"children":72},"element","callout",{"color":70,"icon":71},"amber","i-heroicons-exclamation-triangle-20-solid",[73],{"type":67,"tag":74,"props":75,"children":76},"p",{},[77,80,89],{"type":78,"value":79},"text","This section assumes you're familiar with ",{"type":67,"tag":81,"props":82,"children":86},"a",{"href":83,"rel":84},"https://v3.nuxtjs.org/guide/concepts/server-engine",[85],"nofollow",[87],{"type":78,"value":88},"Nitro",{"type":78,"value":90},", the server engine powered by Nuxt.",{"type":67,"tag":74,"props":92,"children":93},{},[94,96,100,102,109],{"type":78,"value":95},"This function is similar to the ",{"type":67,"tag":81,"props":97,"children":98},{"href":28},[99],{"type":78,"value":27},{"type":78,"value":101}," composable but is used in ",{"type":67,"tag":81,"props":103,"children":106},{"href":104,"rel":105},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[85],[107],{"type":78,"value":108},"server routes",{"type":78,"value":110},".",{"type":67,"tag":74,"props":112,"children":113},{},[114,116,122,124,130],{"type":78,"value":115},"Define your server route and import the ",{"type":67,"tag":117,"props":118,"children":120},"code",{"className":119},[],[121],{"type":78,"value":43},{"type":78,"value":123}," from ",{"type":67,"tag":117,"props":125,"children":127},{"className":126},[],[128],{"type":78,"value":129},"#supabase/server",{"type":78,"value":110},{"type":67,"tag":132,"props":133,"children":138},"pre",{"className":134,"code":135,"filename":136,"language":137,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseUser } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseUser(event)\n})\n","server/api/me.ts","ts",[139],{"type":67,"tag":117,"props":140,"children":141},{"__ignoreMap":61},[142,191,201,258,290],{"type":67,"tag":143,"props":144,"children":147},"span",{"class":145,"line":146},"line",1,[148,154,160,166,171,176,181,186],{"type":67,"tag":143,"props":149,"children":151},{"style":150},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[152],{"type":78,"value":153},"import",{"type":67,"tag":143,"props":155,"children":157},{"style":156},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[158],{"type":78,"value":159}," {",{"type":67,"tag":143,"props":161,"children":163},{"style":162},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[164],{"type":78,"value":165}," serverSupabaseUser",{"type":67,"tag":143,"props":167,"children":168},{"style":156},[169],{"type":78,"value":170}," }",{"type":67,"tag":143,"props":172,"children":173},{"style":150},[174],{"type":78,"value":175}," from",{"type":67,"tag":143,"props":177,"children":178},{"style":156},[179],{"type":78,"value":180}," '",{"type":67,"tag":143,"props":182,"children":184},{"style":183},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[185],{"type":78,"value":129},{"type":67,"tag":143,"props":187,"children":188},{"style":156},[189],{"type":78,"value":190},"'\n",{"type":67,"tag":143,"props":192,"children":194},{"class":145,"line":193},2,[195],{"type":67,"tag":143,"props":196,"children":198},{"emptyLinePlaceholder":197},true,[199],{"type":78,"value":200},"\n",{"type":67,"tag":143,"props":202,"children":204},{"class":145,"line":203},3,[205,210,215,221,226,232,237,243,248,253],{"type":67,"tag":143,"props":206,"children":207},{"style":150},[208],{"type":78,"value":209},"export",{"type":67,"tag":143,"props":211,"children":212},{"style":150},[213],{"type":78,"value":214}," default",{"type":67,"tag":143,"props":216,"children":218},{"style":217},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[219],{"type":78,"value":220}," defineEventHandler",{"type":67,"tag":143,"props":222,"children":223},{"style":162},[224],{"type":78,"value":225},"(",{"type":67,"tag":143,"props":227,"children":229},{"style":228},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[230],{"type":78,"value":231},"async",{"type":67,"tag":143,"props":233,"children":234},{"style":156},[235],{"type":78,"value":236}," (",{"type":67,"tag":143,"props":238,"children":240},{"style":239},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[241],{"type":78,"value":242},"event",{"type":67,"tag":143,"props":244,"children":245},{"style":156},[246],{"type":78,"value":247},")",{"type":67,"tag":143,"props":249,"children":250},{"style":228},[251],{"type":78,"value":252}," =>",{"type":67,"tag":143,"props":254,"children":255},{"style":156},[256],{"type":78,"value":257}," {\n",{"type":67,"tag":143,"props":259,"children":261},{"class":145,"line":260},4,[262,267,272,276,281,285],{"type":67,"tag":143,"props":263,"children":264},{"style":150},[265],{"type":78,"value":266}," return",{"type":67,"tag":143,"props":268,"children":269},{"style":150},[270],{"type":78,"value":271}," await",{"type":67,"tag":143,"props":273,"children":274},{"style":217},[275],{"type":78,"value":165},{"type":67,"tag":143,"props":277,"children":279},{"style":278},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[280],{"type":78,"value":225},{"type":67,"tag":143,"props":282,"children":283},{"style":162},[284],{"type":78,"value":242},{"type":67,"tag":143,"props":286,"children":287},{"style":278},[288],{"type":78,"value":289},")\n",{"type":67,"tag":143,"props":291,"children":293},{"class":145,"line":292},5,[294,299],{"type":67,"tag":143,"props":295,"children":296},{"style":156},[297],{"type":78,"value":298},"}",{"type":67,"tag":143,"props":300,"children":301},{"style":162},[302],{"type":78,"value":289},{"type":67,"tag":74,"props":304,"children":305},{},[306],{"type":78,"value":307},"Then call your api route from any vue file:",{"type":67,"tag":132,"props":309,"children":312},{"className":134,"code":310,"filename":311,"language":137,"meta":61,"style":61},"const user = ref(null)\n\nconst fetchMe = async () => {\n user.value = await $fetch('/api/me')\n}\n","pages/index.vue",[313],{"type":67,"tag":117,"props":314,"children":315},{"__ignoreMap":61},[316,352,359,393,446],{"type":67,"tag":143,"props":317,"children":318},{"class":145,"line":146},[319,324,329,334,339,343,348],{"type":67,"tag":143,"props":320,"children":321},{"style":228},[322],{"type":78,"value":323},"const",{"type":67,"tag":143,"props":325,"children":326},{"style":162},[327],{"type":78,"value":328}," user ",{"type":67,"tag":143,"props":330,"children":331},{"style":156},[332],{"type":78,"value":333},"=",{"type":67,"tag":143,"props":335,"children":336},{"style":217},[337],{"type":78,"value":338}," ref",{"type":67,"tag":143,"props":340,"children":341},{"style":162},[342],{"type":78,"value":225},{"type":67,"tag":143,"props":344,"children":345},{"style":156},[346],{"type":78,"value":347},"null",{"type":67,"tag":143,"props":349,"children":350},{"style":162},[351],{"type":78,"value":289},{"type":67,"tag":143,"props":353,"children":354},{"class":145,"line":193},[355],{"type":67,"tag":143,"props":356,"children":357},{"emptyLinePlaceholder":197},[358],{"type":78,"value":200},{"type":67,"tag":143,"props":360,"children":361},{"class":145,"line":203},[362,366,371,375,380,385,389],{"type":67,"tag":143,"props":363,"children":364},{"style":228},[365],{"type":78,"value":323},{"type":67,"tag":143,"props":367,"children":368},{"style":162},[369],{"type":78,"value":370}," fetchMe ",{"type":67,"tag":143,"props":372,"children":373},{"style":156},[374],{"type":78,"value":333},{"type":67,"tag":143,"props":376,"children":377},{"style":228},[378],{"type":78,"value":379}," async",{"type":67,"tag":143,"props":381,"children":382},{"style":156},[383],{"type":78,"value":384}," ()",{"type":67,"tag":143,"props":386,"children":387},{"style":228},[388],{"type":78,"value":252},{"type":67,"tag":143,"props":390,"children":391},{"style":156},[392],{"type":78,"value":257},{"type":67,"tag":143,"props":394,"children":395},{"class":145,"line":260},[396,401,405,410,415,419,424,428,433,438,442],{"type":67,"tag":143,"props":397,"children":398},{"style":162},[399],{"type":78,"value":400}," user",{"type":67,"tag":143,"props":402,"children":403},{"style":156},[404],{"type":78,"value":110},{"type":67,"tag":143,"props":406,"children":407},{"style":162},[408],{"type":78,"value":409},"value",{"type":67,"tag":143,"props":411,"children":412},{"style":156},[413],{"type":78,"value":414}," =",{"type":67,"tag":143,"props":416,"children":417},{"style":150},[418],{"type":78,"value":271},{"type":67,"tag":143,"props":420,"children":421},{"style":217},[422],{"type":78,"value":423}," $fetch",{"type":67,"tag":143,"props":425,"children":426},{"style":278},[427],{"type":78,"value":225},{"type":67,"tag":143,"props":429,"children":430},{"style":156},[431],{"type":78,"value":432},"'",{"type":67,"tag":143,"props":434,"children":435},{"style":183},[436],{"type":78,"value":437},"/api/me",{"type":67,"tag":143,"props":439,"children":440},{"style":156},[441],{"type":78,"value":432},{"type":67,"tag":143,"props":443,"children":444},{"style":278},[445],{"type":78,"value":289},{"type":67,"tag":143,"props":447,"children":448},{"class":145,"line":292},[449],{"type":67,"tag":143,"props":450,"children":451},{"style":156},[452],{"type":78,"value":453},"}\n",{"type":67,"tag":74,"props":455,"children":456},{},[457,459,466],{"type":78,"value":458},"Be careful, if you want to call this route on SSR, please read this ",{"type":67,"tag":81,"props":460,"children":463},{"href":461,"rel":462},"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch",[85],[464],{"type":78,"value":465},"section",{"type":78,"value":467},", you must send your browser cookies including your supabase token.",{"type":67,"tag":132,"props":469,"children":471},{"className":134,"code":470,"filename":311,"language":137,"meta":61,"style":61},"const user = ref(null)\n\nconst { data } = await useFetch('/api/me', {\n headers: useRequestHeaders(['cookie'])\n})\n\nuser.value = data\n",[472],{"type":67,"tag":117,"props":473,"children":474},{"__ignoreMap":61},[475,506,513,571,612,623,631],{"type":67,"tag":143,"props":476,"children":477},{"class":145,"line":146},[478,482,486,490,494,498,502],{"type":67,"tag":143,"props":479,"children":480},{"style":228},[481],{"type":78,"value":323},{"type":67,"tag":143,"props":483,"children":484},{"style":162},[485],{"type":78,"value":328},{"type":67,"tag":143,"props":487,"children":488},{"style":156},[489],{"type":78,"value":333},{"type":67,"tag":143,"props":491,"children":492},{"style":217},[493],{"type":78,"value":338},{"type":67,"tag":143,"props":495,"children":496},{"style":162},[497],{"type":78,"value":225},{"type":67,"tag":143,"props":499,"children":500},{"style":156},[501],{"type":78,"value":347},{"type":67,"tag":143,"props":503,"children":504},{"style":162},[505],{"type":78,"value":289},{"type":67,"tag":143,"props":507,"children":508},{"class":145,"line":193},[509],{"type":67,"tag":143,"props":510,"children":511},{"emptyLinePlaceholder":197},[512],{"type":78,"value":200},{"type":67,"tag":143,"props":514,"children":515},{"class":145,"line":203},[516,520,524,529,533,537,541,546,550,554,558,562,567],{"type":67,"tag":143,"props":517,"children":518},{"style":228},[519],{"type":78,"value":323},{"type":67,"tag":143,"props":521,"children":522},{"style":156},[523],{"type":78,"value":159},{"type":67,"tag":143,"props":525,"children":526},{"style":162},[527],{"type":78,"value":528}," data ",{"type":67,"tag":143,"props":530,"children":531},{"style":156},[532],{"type":78,"value":298},{"type":67,"tag":143,"props":534,"children":535},{"style":156},[536],{"type":78,"value":414},{"type":67,"tag":143,"props":538,"children":539},{"style":150},[540],{"type":78,"value":271},{"type":67,"tag":143,"props":542,"children":543},{"style":217},[544],{"type":78,"value":545}," useFetch",{"type":67,"tag":143,"props":547,"children":548},{"style":162},[549],{"type":78,"value":225},{"type":67,"tag":143,"props":551,"children":552},{"style":156},[553],{"type":78,"value":432},{"type":67,"tag":143,"props":555,"children":556},{"style":183},[557],{"type":78,"value":437},{"type":67,"tag":143,"props":559,"children":560},{"style":156},[561],{"type":78,"value":432},{"type":67,"tag":143,"props":563,"children":564},{"style":156},[565],{"type":78,"value":566},",",{"type":67,"tag":143,"props":568,"children":569},{"style":156},[570],{"type":78,"value":257},{"type":67,"tag":143,"props":572,"children":573},{"class":145,"line":260},[574,579,584,589,594,598,603,607],{"type":67,"tag":143,"props":575,"children":576},{"style":278},[577],{"type":78,"value":578}," headers",{"type":67,"tag":143,"props":580,"children":581},{"style":156},[582],{"type":78,"value":583},":",{"type":67,"tag":143,"props":585,"children":586},{"style":217},[587],{"type":78,"value":588}," useRequestHeaders",{"type":67,"tag":143,"props":590,"children":591},{"style":162},[592],{"type":78,"value":593},"([",{"type":67,"tag":143,"props":595,"children":596},{"style":156},[597],{"type":78,"value":432},{"type":67,"tag":143,"props":599,"children":600},{"style":183},[601],{"type":78,"value":602},"cookie",{"type":67,"tag":143,"props":604,"children":605},{"style":156},[606],{"type":78,"value":432},{"type":67,"tag":143,"props":608,"children":609},{"style":162},[610],{"type":78,"value":611},"])\n",{"type":67,"tag":143,"props":613,"children":614},{"class":145,"line":292},[615,619],{"type":67,"tag":143,"props":616,"children":617},{"style":156},[618],{"type":78,"value":298},{"type":67,"tag":143,"props":620,"children":621},{"style":162},[622],{"type":78,"value":289},{"type":67,"tag":143,"props":624,"children":626},{"class":145,"line":625},6,[627],{"type":67,"tag":143,"props":628,"children":629},{"emptyLinePlaceholder":197},[630],{"type":78,"value":200},{"type":67,"tag":143,"props":632,"children":634},{"class":145,"line":633},7,[635,640,644,649,653],{"type":67,"tag":143,"props":636,"children":637},{"style":162},[638],{"type":78,"value":639},"user",{"type":67,"tag":143,"props":641,"children":642},{"style":156},[643],{"type":78,"value":110},{"type":67,"tag":143,"props":645,"children":646},{"style":162},[647],{"type":78,"value":648},"value ",{"type":67,"tag":143,"props":650,"children":651},{"style":156},[652],{"type":78,"value":333},{"type":67,"tag":143,"props":654,"children":655},{"style":162},[656],{"type":78,"value":657}," data\n",{"type":67,"tag":659,"props":660,"children":661},"style",{},[662],{"type":78,"value":663},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":193,"depth":193,"links":665},[],"markdown","content:4.usage:services:4.serverSupabaseUser.md","content","4.usage/services/4.serverSupabaseUser.md","4.usage/services/4.serverSupabaseUser","md",[673,675],{"_path":41,"title":40,"description":674},"Get your Supabase user's session from serverside with the serverSupabaseUser service",{"_path":48,"title":47,"description":676},"Demonstration of using Supabase with Nuxt.",1733842352324] \ No newline at end of file +[{"data":1,"prerenderedAt":677},["ShallowReactive",2],{"navigation":3,"/usage/services/serversupabaseuser":58,"/usage/services/serversupabaseuser-surround":672},[4,8,12,46,50,54],{"title":5,"_path":6,"icon":7},"Get Started","/get-started","i-heroicons-rocket-launch",{"title":9,"_path":10,"icon":11},"Authentication","/authentication","i-heroicons-lock-closed",{"title":13,"_path":14,"children":15,"icon":45},"Usage","/usage",[16,29],{"title":17,"_path":18,"children":19},"Vue composables","/usage/composables",[20,23,26],{"title":21,"_path":22},"useSupabaseClient","/usage/composables/usesupabaseclient",{"title":24,"_path":25},"useSupabaseSession","/usage/composables/usesupabasesession",{"title":27,"_path":28},"useSupabaseUser","/usage/composables/usesupabaseuser",{"title":30,"_path":31,"children":32},"Server services","/usage/services",[33,36,39,42],{"title":34,"_path":35},"serverSupabaseClient","/usage/services/serversupabaseclient",{"title":37,"_path":38},"serverSupabaseServiceRole","/usage/services/serversupabaseservicerole",{"title":40,"_path":41},"serverSupabaseSession","/usage/services/serversupabasesession",{"title":43,"_path":44},"serverSupabaseUser","/usage/services/serversupabaseuser","heroicons:book-open",{"title":47,"_path":48,"icon":49},"Demo","/demo","i-heroicons-computer-desktop-20-solid",{"title":51,"_path":52,"icon":53},"Changelog","/changelog","i-heroicons-bookmark",{"title":55,"_path":56,"icon":57},"Roadmap","/roadmap","i-heroicons-map",{"_path":44,"_dir":59,"_draft":60,"_partial":60,"_locale":61,"title":43,"description":62,"body":63,"_type":666,"_id":667,"_source":668,"_file":669,"_stem":670,"_extension":671},"services",false,"","Get your Supabase user from serverside with the serverSupabaseUser service",{"type":64,"children":65,"toc":664},"root",[66,91,111,131,303,308,454,468,658],{"type":67,"tag":68,"props":69,"children":72},"element","callout",{"color":70,"icon":71},"amber","i-heroicons-exclamation-triangle-20-solid",[73],{"type":67,"tag":74,"props":75,"children":76},"p",{},[77,80,89],{"type":78,"value":79},"text","This section assumes you're familiar with ",{"type":67,"tag":81,"props":82,"children":86},"a",{"href":83,"rel":84},"https://v3.nuxtjs.org/guide/concepts/server-engine",[85],"nofollow",[87],{"type":78,"value":88},"Nitro",{"type":78,"value":90},", the server engine powered by Nuxt.",{"type":67,"tag":74,"props":92,"children":93},{},[94,96,100,102,109],{"type":78,"value":95},"This function is similar to the ",{"type":67,"tag":81,"props":97,"children":98},{"href":28},[99],{"type":78,"value":27},{"type":78,"value":101}," composable but is used in ",{"type":67,"tag":81,"props":103,"children":106},{"href":104,"rel":105},"https://nuxt.com/docs/guide/directory-structure/server#server-routes",[85],[107],{"type":78,"value":108},"server routes",{"type":78,"value":110},".",{"type":67,"tag":74,"props":112,"children":113},{},[114,116,122,124,130],{"type":78,"value":115},"Define your server route and import the ",{"type":67,"tag":117,"props":118,"children":120},"code",{"className":119},[],[121],{"type":78,"value":43},{"type":78,"value":123}," from ",{"type":67,"tag":117,"props":125,"children":127},{"className":126},[],[128],{"type":78,"value":129},"#supabase/server",{"type":78,"value":110},{"type":67,"tag":132,"props":133,"children":138},"pre",{"className":134,"code":135,"filename":136,"language":137,"meta":61,"style":61},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { serverSupabaseUser } from '#supabase/server'\n\nexport default defineEventHandler(async (event) => {\n return await serverSupabaseUser(event)\n})\n","server/api/me.ts","ts",[139],{"type":67,"tag":117,"props":140,"children":141},{"__ignoreMap":61},[142,191,201,258,290],{"type":67,"tag":143,"props":144,"children":147},"span",{"class":145,"line":146},"line",1,[148,154,160,166,171,176,181,186],{"type":67,"tag":143,"props":149,"children":151},{"style":150},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[152],{"type":78,"value":153},"import",{"type":67,"tag":143,"props":155,"children":157},{"style":156},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[158],{"type":78,"value":159}," {",{"type":67,"tag":143,"props":161,"children":163},{"style":162},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[164],{"type":78,"value":165}," serverSupabaseUser",{"type":67,"tag":143,"props":167,"children":168},{"style":156},[169],{"type":78,"value":170}," }",{"type":67,"tag":143,"props":172,"children":173},{"style":150},[174],{"type":78,"value":175}," from",{"type":67,"tag":143,"props":177,"children":178},{"style":156},[179],{"type":78,"value":180}," '",{"type":67,"tag":143,"props":182,"children":184},{"style":183},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[185],{"type":78,"value":129},{"type":67,"tag":143,"props":187,"children":188},{"style":156},[189],{"type":78,"value":190},"'\n",{"type":67,"tag":143,"props":192,"children":194},{"class":145,"line":193},2,[195],{"type":67,"tag":143,"props":196,"children":198},{"emptyLinePlaceholder":197},true,[199],{"type":78,"value":200},"\n",{"type":67,"tag":143,"props":202,"children":204},{"class":145,"line":203},3,[205,210,215,221,226,232,237,243,248,253],{"type":67,"tag":143,"props":206,"children":207},{"style":150},[208],{"type":78,"value":209},"export",{"type":67,"tag":143,"props":211,"children":212},{"style":150},[213],{"type":78,"value":214}," default",{"type":67,"tag":143,"props":216,"children":218},{"style":217},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[219],{"type":78,"value":220}," defineEventHandler",{"type":67,"tag":143,"props":222,"children":223},{"style":162},[224],{"type":78,"value":225},"(",{"type":67,"tag":143,"props":227,"children":229},{"style":228},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[230],{"type":78,"value":231},"async",{"type":67,"tag":143,"props":233,"children":234},{"style":156},[235],{"type":78,"value":236}," (",{"type":67,"tag":143,"props":238,"children":240},{"style":239},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[241],{"type":78,"value":242},"event",{"type":67,"tag":143,"props":244,"children":245},{"style":156},[246],{"type":78,"value":247},")",{"type":67,"tag":143,"props":249,"children":250},{"style":228},[251],{"type":78,"value":252}," =>",{"type":67,"tag":143,"props":254,"children":255},{"style":156},[256],{"type":78,"value":257}," {\n",{"type":67,"tag":143,"props":259,"children":261},{"class":145,"line":260},4,[262,267,272,276,281,285],{"type":67,"tag":143,"props":263,"children":264},{"style":150},[265],{"type":78,"value":266}," return",{"type":67,"tag":143,"props":268,"children":269},{"style":150},[270],{"type":78,"value":271}," await",{"type":67,"tag":143,"props":273,"children":274},{"style":217},[275],{"type":78,"value":165},{"type":67,"tag":143,"props":277,"children":279},{"style":278},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[280],{"type":78,"value":225},{"type":67,"tag":143,"props":282,"children":283},{"style":162},[284],{"type":78,"value":242},{"type":67,"tag":143,"props":286,"children":287},{"style":278},[288],{"type":78,"value":289},")\n",{"type":67,"tag":143,"props":291,"children":293},{"class":145,"line":292},5,[294,299],{"type":67,"tag":143,"props":295,"children":296},{"style":156},[297],{"type":78,"value":298},"}",{"type":67,"tag":143,"props":300,"children":301},{"style":162},[302],{"type":78,"value":289},{"type":67,"tag":74,"props":304,"children":305},{},[306],{"type":78,"value":307},"Then call your api route from any vue file:",{"type":67,"tag":132,"props":309,"children":312},{"className":134,"code":310,"filename":311,"language":137,"meta":61,"style":61},"const user = ref(null)\n\nconst fetchMe = async () => {\n user.value = await $fetch('/api/me')\n}\n","pages/index.vue",[313],{"type":67,"tag":117,"props":314,"children":315},{"__ignoreMap":61},[316,352,359,393,446],{"type":67,"tag":143,"props":317,"children":318},{"class":145,"line":146},[319,324,329,334,339,343,348],{"type":67,"tag":143,"props":320,"children":321},{"style":228},[322],{"type":78,"value":323},"const",{"type":67,"tag":143,"props":325,"children":326},{"style":162},[327],{"type":78,"value":328}," user ",{"type":67,"tag":143,"props":330,"children":331},{"style":156},[332],{"type":78,"value":333},"=",{"type":67,"tag":143,"props":335,"children":336},{"style":217},[337],{"type":78,"value":338}," ref",{"type":67,"tag":143,"props":340,"children":341},{"style":162},[342],{"type":78,"value":225},{"type":67,"tag":143,"props":344,"children":345},{"style":156},[346],{"type":78,"value":347},"null",{"type":67,"tag":143,"props":349,"children":350},{"style":162},[351],{"type":78,"value":289},{"type":67,"tag":143,"props":353,"children":354},{"class":145,"line":193},[355],{"type":67,"tag":143,"props":356,"children":357},{"emptyLinePlaceholder":197},[358],{"type":78,"value":200},{"type":67,"tag":143,"props":360,"children":361},{"class":145,"line":203},[362,366,371,375,380,385,389],{"type":67,"tag":143,"props":363,"children":364},{"style":228},[365],{"type":78,"value":323},{"type":67,"tag":143,"props":367,"children":368},{"style":162},[369],{"type":78,"value":370}," fetchMe ",{"type":67,"tag":143,"props":372,"children":373},{"style":156},[374],{"type":78,"value":333},{"type":67,"tag":143,"props":376,"children":377},{"style":228},[378],{"type":78,"value":379}," async",{"type":67,"tag":143,"props":381,"children":382},{"style":156},[383],{"type":78,"value":384}," ()",{"type":67,"tag":143,"props":386,"children":387},{"style":228},[388],{"type":78,"value":252},{"type":67,"tag":143,"props":390,"children":391},{"style":156},[392],{"type":78,"value":257},{"type":67,"tag":143,"props":394,"children":395},{"class":145,"line":260},[396,401,405,410,415,419,424,428,433,438,442],{"type":67,"tag":143,"props":397,"children":398},{"style":162},[399],{"type":78,"value":400}," user",{"type":67,"tag":143,"props":402,"children":403},{"style":156},[404],{"type":78,"value":110},{"type":67,"tag":143,"props":406,"children":407},{"style":162},[408],{"type":78,"value":409},"value",{"type":67,"tag":143,"props":411,"children":412},{"style":156},[413],{"type":78,"value":414}," =",{"type":67,"tag":143,"props":416,"children":417},{"style":150},[418],{"type":78,"value":271},{"type":67,"tag":143,"props":420,"children":421},{"style":217},[422],{"type":78,"value":423}," $fetch",{"type":67,"tag":143,"props":425,"children":426},{"style":278},[427],{"type":78,"value":225},{"type":67,"tag":143,"props":429,"children":430},{"style":156},[431],{"type":78,"value":432},"'",{"type":67,"tag":143,"props":434,"children":435},{"style":183},[436],{"type":78,"value":437},"/api/me",{"type":67,"tag":143,"props":439,"children":440},{"style":156},[441],{"type":78,"value":432},{"type":67,"tag":143,"props":443,"children":444},{"style":278},[445],{"type":78,"value":289},{"type":67,"tag":143,"props":447,"children":448},{"class":145,"line":292},[449],{"type":67,"tag":143,"props":450,"children":451},{"style":156},[452],{"type":78,"value":453},"}\n",{"type":67,"tag":74,"props":455,"children":456},{},[457,459,466],{"type":78,"value":458},"Be careful, if you want to call this route on SSR, please read this ",{"type":67,"tag":81,"props":460,"children":463},{"href":461,"rel":462},"https://nuxt.com/docs/getting-started/data-fetching#isomorphic-fetch-and-fetch",[85],[464],{"type":78,"value":465},"section",{"type":78,"value":467},", you must send your browser cookies including your supabase token.",{"type":67,"tag":132,"props":469,"children":471},{"className":134,"code":470,"filename":311,"language":137,"meta":61,"style":61},"const user = ref(null)\n\nconst { data } = await useFetch('/api/me', {\n headers: useRequestHeaders(['cookie'])\n})\n\nuser.value = data\n",[472],{"type":67,"tag":117,"props":473,"children":474},{"__ignoreMap":61},[475,506,513,571,612,623,631],{"type":67,"tag":143,"props":476,"children":477},{"class":145,"line":146},[478,482,486,490,494,498,502],{"type":67,"tag":143,"props":479,"children":480},{"style":228},[481],{"type":78,"value":323},{"type":67,"tag":143,"props":483,"children":484},{"style":162},[485],{"type":78,"value":328},{"type":67,"tag":143,"props":487,"children":488},{"style":156},[489],{"type":78,"value":333},{"type":67,"tag":143,"props":491,"children":492},{"style":217},[493],{"type":78,"value":338},{"type":67,"tag":143,"props":495,"children":496},{"style":162},[497],{"type":78,"value":225},{"type":67,"tag":143,"props":499,"children":500},{"style":156},[501],{"type":78,"value":347},{"type":67,"tag":143,"props":503,"children":504},{"style":162},[505],{"type":78,"value":289},{"type":67,"tag":143,"props":507,"children":508},{"class":145,"line":193},[509],{"type":67,"tag":143,"props":510,"children":511},{"emptyLinePlaceholder":197},[512],{"type":78,"value":200},{"type":67,"tag":143,"props":514,"children":515},{"class":145,"line":203},[516,520,524,529,533,537,541,546,550,554,558,562,567],{"type":67,"tag":143,"props":517,"children":518},{"style":228},[519],{"type":78,"value":323},{"type":67,"tag":143,"props":521,"children":522},{"style":156},[523],{"type":78,"value":159},{"type":67,"tag":143,"props":525,"children":526},{"style":162},[527],{"type":78,"value":528}," data ",{"type":67,"tag":143,"props":530,"children":531},{"style":156},[532],{"type":78,"value":298},{"type":67,"tag":143,"props":534,"children":535},{"style":156},[536],{"type":78,"value":414},{"type":67,"tag":143,"props":538,"children":539},{"style":150},[540],{"type":78,"value":271},{"type":67,"tag":143,"props":542,"children":543},{"style":217},[544],{"type":78,"value":545}," useFetch",{"type":67,"tag":143,"props":547,"children":548},{"style":162},[549],{"type":78,"value":225},{"type":67,"tag":143,"props":551,"children":552},{"style":156},[553],{"type":78,"value":432},{"type":67,"tag":143,"props":555,"children":556},{"style":183},[557],{"type":78,"value":437},{"type":67,"tag":143,"props":559,"children":560},{"style":156},[561],{"type":78,"value":432},{"type":67,"tag":143,"props":563,"children":564},{"style":156},[565],{"type":78,"value":566},",",{"type":67,"tag":143,"props":568,"children":569},{"style":156},[570],{"type":78,"value":257},{"type":67,"tag":143,"props":572,"children":573},{"class":145,"line":260},[574,579,584,589,594,598,603,607],{"type":67,"tag":143,"props":575,"children":576},{"style":278},[577],{"type":78,"value":578}," headers",{"type":67,"tag":143,"props":580,"children":581},{"style":156},[582],{"type":78,"value":583},":",{"type":67,"tag":143,"props":585,"children":586},{"style":217},[587],{"type":78,"value":588}," useRequestHeaders",{"type":67,"tag":143,"props":590,"children":591},{"style":162},[592],{"type":78,"value":593},"([",{"type":67,"tag":143,"props":595,"children":596},{"style":156},[597],{"type":78,"value":432},{"type":67,"tag":143,"props":599,"children":600},{"style":183},[601],{"type":78,"value":602},"cookie",{"type":67,"tag":143,"props":604,"children":605},{"style":156},[606],{"type":78,"value":432},{"type":67,"tag":143,"props":608,"children":609},{"style":162},[610],{"type":78,"value":611},"])\n",{"type":67,"tag":143,"props":613,"children":614},{"class":145,"line":292},[615,619],{"type":67,"tag":143,"props":616,"children":617},{"style":156},[618],{"type":78,"value":298},{"type":67,"tag":143,"props":620,"children":621},{"style":162},[622],{"type":78,"value":289},{"type":67,"tag":143,"props":624,"children":626},{"class":145,"line":625},6,[627],{"type":67,"tag":143,"props":628,"children":629},{"emptyLinePlaceholder":197},[630],{"type":78,"value":200},{"type":67,"tag":143,"props":632,"children":634},{"class":145,"line":633},7,[635,640,644,649,653],{"type":67,"tag":143,"props":636,"children":637},{"style":162},[638],{"type":78,"value":639},"user",{"type":67,"tag":143,"props":641,"children":642},{"style":156},[643],{"type":78,"value":110},{"type":67,"tag":143,"props":645,"children":646},{"style":162},[647],{"type":78,"value":648},"value ",{"type":67,"tag":143,"props":650,"children":651},{"style":156},[652],{"type":78,"value":333},{"type":67,"tag":143,"props":654,"children":655},{"style":162},[656],{"type":78,"value":657}," data\n",{"type":67,"tag":659,"props":660,"children":661},"style",{},[662],{"type":78,"value":663},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":61,"searchDepth":193,"depth":193,"links":665},[],"markdown","content:4.usage:services:4.serverSupabaseUser.md","content","4.usage/services/4.serverSupabaseUser.md","4.usage/services/4.serverSupabaseUser","md",[673,675],{"_path":41,"title":40,"description":674},"Get your Supabase user's session from serverside with the serverSupabaseUser service",{"_path":48,"title":47,"description":676},"Demonstration of using Supabase with Nuxt.",1734518136495] \ No newline at end of file diff --git a/usage/services/serversupabaseuser/index.html b/usage/services/serversupabaseuser/index.html index e830c29d8..3903c50da 100644 --- a/usage/services/serversupabaseuser/index.html +++ b/usage/services/serversupabaseuser/index.html @@ -61,7 +61,7 @@ - + @@ -121,5 +121,5 @@ user.value = data
Made with Nuxt Studio
- - \ No newline at end of file + + \ No newline at end of file