diff --git a/src/routes/(auth)/login/+page.server.ts b/src/routes/(auth)/login/+page.server.ts new file mode 100644 index 0000000..daa4752 --- /dev/null +++ b/src/routes/(auth)/login/+page.server.ts @@ -0,0 +1,8 @@ +import type { PageServerLoad } from './$types.js'; +import { getEnabledProviders } from '$lib/server/oauth/providers.js'; + +export const load: PageServerLoad = async () => { + return { + providers: getEnabledProviders() + }; +}; diff --git a/src/routes/(auth)/login/+page.svelte b/src/routes/(auth)/login/+page.svelte index 500af27..1387f24 100644 --- a/src/routes/(auth)/login/+page.svelte +++ b/src/routes/(auth)/login/+page.svelte @@ -1,11 +1,19 @@ @@ -77,4 +90,40 @@ {loading ? 'Signing in...' : 'Sign in'} + + {#if providers.length > 0} + + + or continue with + + + + + {#each providers as provider (provider.id)} + + {#if provider.id === 'google'} + + + + + + + {:else if provider.id === 'github'} + + + + {:else} + + + + {/if} + {provider.name} + + {/each} + + {/if}