diff --git a/ui/src/components/settings/PageAuthProviders.svelte b/ui/src/components/settings/PageAuthProviders.svelte index 3174371d..17641eb7 100644 --- a/ui/src/components/settings/PageAuthProviders.svelte +++ b/ui/src/components/settings/PageAuthProviders.svelte @@ -8,6 +8,7 @@ import SettingsSidebar from "@/components/settings/SettingsSidebar.svelte"; import EmailAuthAccordion from "@/components/settings/EmailAuthAccordion.svelte"; import AuthProviderAccordion from "@/components/settings/AuthProviderAccordion.svelte"; + import providersList from "@/providers.js"; $pageTitle = "Auth providers"; @@ -63,11 +64,10 @@ emailAuth: Object.assign({ enabled: true }, data.emailAuth), }; - const providers = ["googleAuth", "facebookAuth", "githubAuth", "gitlabAuth", "discordAuth"]; - for (const provider of providers) { - formSettings[provider] = Object.assign( + for (const providerKey in providersList) { + formSettings[providerKey] = Object.assign( { enabled: false, allowRegistrations: true }, - data[provider] + data[providerKey] ); } @@ -102,42 +102,17 @@ single bind:config={formSettings.emailAuth} /> - - - - - + + {#each Object.entries(providersList) as [key, provider]} + + {/each}
diff --git a/ui/src/components/users/ExternalAuthsList.svelte b/ui/src/components/users/ExternalAuthsList.svelte index de84a03e..c8225697 100644 --- a/ui/src/components/users/ExternalAuthsList.svelte +++ b/ui/src/components/users/ExternalAuthsList.svelte @@ -4,6 +4,7 @@ import CommonHelper from "@/utils/CommonHelper"; import { confirm } from "@/stores/confirmation"; import { addSuccessToast } from "@/stores/toasts"; + import providersList from "@/providers.js"; const dispatch = createEventDispatcher(); @@ -12,6 +13,14 @@ let externalAuths = []; let isLoading = false; + function getProviderTitle(provider) { + return providersList[provider + "Auth"]?.title || CommonHelper.sentenize(auth.provider, false); + } + + function getProviderIcon(provider) { + return providersList[provider + "Auth"]?.icon || `ri-${provider}-line`; + } + async function loadExternalAuths() { if (!user?.id) { externalAuths = []; @@ -35,11 +44,11 @@ return; // nothing to unlink } - confirm(`Do you really want to unlink the selected provider?`, () => { + confirm(`Do you really want to unlink the ${getProviderTitle(provider)} provider?`, () => { return ApiClient.users .unlinkExternalAuth(user.id, provider) .then(() => { - addSuccessToast("Successfully unlinked the provider."); + addSuccessToast(`Successfully unlinked the ${getProviderTitle(provider)} provider.`); dispatch("unlink", provider); loadExternalAuths(); // reload list }) @@ -62,8 +71,8 @@
{#each externalAuths as auth}
- - {CommonHelper.sentenize(auth.provider, false)} + + {getProviderTitle(auth.provider)}
ID: {auth.providerId}