diff --git a/app/components/Auth/OAuthBindingCard.vue b/app/components/Auth/OAuthBindingCard.vue
index 3329656..03f07f3 100644
--- a/app/components/Auth/OAuthBindingCard.vue
+++ b/app/components/Auth/OAuthBindingCard.vue
@@ -117,6 +117,45 @@
+
+
+
+
+
+ {{
+ getProviderDisplayName('aggregate')
+ }}
+ {{
+ aggregateIdentity.providerUsername
+ }}
+ 未绑定
+
+
+
+
+
+
+
identities.value.find((i) => i.provider === 'github'))
const casdoorIdentity = computed(() => identities.value.find((i) => i.provider === 'casdoor'))
const googleIdentity = computed(() => identities.value.find((i) => i.provider === 'google'))
+const aggregateIdentity = computed(() => identities.value.find((i) => i.provider === 'aggregate'))
const webauthnIdentities = computed(() => identities.value.filter((i) => i.provider === 'webauthn'))
const fetchIdentities = async () => {
diff --git a/app/components/Auth/OAuthButtons.vue b/app/components/Auth/OAuthButtons.vue
index d7a169f..b21365f 100644
--- a/app/components/Auth/OAuthButtons.vue
+++ b/app/components/Auth/OAuthButtons.vue
@@ -27,12 +27,12 @@
@@ -152,10 +152,10 @@ const loginWith = (provider: string) => {
border-color: #dadce0;
}
-.oauth-btn-aggregate:hover {
- background: var(--bg-secondary, #12b7f5);
+.oauth-btn-wechat:hover {
+ background: var(--bg-secondary, #07c160);
color: var(--text-primary, #ffffff);
- border-color: var(--border-secondary, #12b7f5);
+ border-color: var(--border-secondary, #07c160);
}
.oauth-empty-hint {
diff --git a/app/pages/account/index.vue b/app/pages/account/index.vue
index 09d80dc..6a2856b 100644
--- a/app/pages/account/index.vue
+++ b/app/pages/account/index.vue
@@ -133,7 +133,7 @@ const { showToast } = useToast()
const config = useRuntimeConfig()
const hasOAuthProviders = computed(() => {
- return config.public.oauth.github || config.public.oauth.casdoor || config.public.oauth.google
+ return config.public.oauth.github || config.public.oauth.casdoor || config.public.oauth.google || config.public.oauth.aggregate
})
const avatarError = ref(false)
diff --git a/app/utils/oauth.ts b/app/utils/oauth.ts
index 50f2bc4..10b676e 100644
--- a/app/utils/oauth.ts
+++ b/app/utils/oauth.ts
@@ -2,7 +2,8 @@ export const getProviderDisplayName = (provider: string): string => {
const map: Record = {
github: 'GitHub',
casdoor: 'Casdoor',
- google: 'Google'
+ google: 'Google',
+ aggregate: '微信'
}
return map[provider.toLowerCase()] || provider.charAt(0).toUpperCase() + provider.slice(1)
}