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}