import { TPlugin, TPluginAuthConfig } from '@librechat/data-provider'; import { Save } from 'lucide-react'; import { useForm } from 'react-hook-form'; import { TPluginAction } from './PluginStoreDialog'; import { HoverCard, HoverCardTrigger } from '~/components/ui'; import { PluginTooltip } from '.'; type TPluginAuthFormProps = { plugin: TPlugin | undefined; onSubmit: (installActionData: TPluginAction) => void; }; function PluginAuthForm({ plugin, onSubmit }: TPluginAuthFormProps) { const { register, handleSubmit, formState: { errors, isDirty, isValid, isSubmitting }, } = useForm(); return (
onSubmit({ pluginKey: plugin!.pluginKey, action: 'install', auth }), )} > {plugin!.authConfig?.map((config: TPluginAuthConfig, i: number) => (
{errors[config.authField] && ( {/* @ts-ignore - Type 'string | FieldError | Merge> | undefined' is not assignable to type 'ReactNode' */} {errors[config.authField].message} )}
))}
); } export default PluginAuthForm;