@lobehub/chat
Version:
Lobe Chat - an open-source, high-performance chatbot framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.
26 lines (21 loc) • 624 B
text/typescript
import { getDBInstance } from '@/database/core/web-server';
import { oidcEnv } from '@/envs/oidc';
import { OIDCProvider, createOIDCProvider } from '@/libs/oidc-provider/provider';
/**
* OIDC Provider 实例
*/
let provider: OIDCProvider;
/**
* 获取 OIDC Provider 实例
* @returns OIDC Provider 实例
*/
export const getOIDCProvider = async (): Promise<OIDCProvider> => {
if (!provider) {
if (!oidcEnv.ENABLE_OIDC) {
throw new Error('OIDC is not enabled. Set ENABLE_OIDC=1 to enable it.');
}
const db = getDBInstance();
provider = await createOIDCProvider(db);
}
return provider;
};