+ { status?.enabled ? (
+
+ {t("multi_factor_authentication.oauth_user_account")}
+ {status.name ?? t("multi_factor_authentication.oauth_user_not_logged_in")}
+
+
+ {t("multi_factor_authentication.oauth_user_email")}
+ {status.email ?? t("multi_factor_authentication.oauth_user_not_logged_in")}
+
+ ) : (
+ <>
+ {t("multi_factor_authentication.oauth_description_warning")}
+
+ { status?.missingVars && (
+
+ {t("multi_factor_authentication.oauth_missing_vars", {
+ variables: status.missingVars.map(v => `"${v}"`).join(", ")
+ })}
+
+ )}
+ >
+ )}
+
+ )
}
\ No newline at end of file
diff --git a/packages/commons/src/lib/server_api.ts b/packages/commons/src/lib/server_api.ts
index 6bb2f36fd..69f8a84a0 100644
--- a/packages/commons/src/lib/server_api.ts
+++ b/packages/commons/src/lib/server_api.ts
@@ -125,3 +125,10 @@ export interface TOTPRecoveryKeysResponse {
keysExist?: boolean;
usedRecoveryCodes?: string[];
}
+
+export interface OAuthStatus {
+ enabled: boolean;
+ name?: string;
+ email?: string;
+ missingVars?: string[];
+}