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) }