tachybase_todo/packages/plugins/@tachybase/plugin-auth/src/client/authenticator.ts
sealday ede7ead8b1 chore(version): release v0.21.34 (#1045)
Co-authored-by: sealday <sealday@gmail.com>
Reviewed-on: daoyoucloud/tachybase#1045
2024-05-24 01:06:06 +08:00

21 lines
529 B
TypeScript

import { createContext, useContext } from 'react';
export type Authenticator = {
name: string;
authType: string;
authTypeTitle: string;
title?: string;
options?: {
[key: string]: any;
};
sort?: number;
};
export const AuthenticatorsContext = createContext<Authenticator[]>([]);
AuthenticatorsContext.displayName = 'AuthenticatorsContext';
export const useAuthenticator = (name: string) => {
const authenticators = useContext(AuthenticatorsContext);
return authenticators.find((a) => a.name === name);
};