18 lines
877 B
TypeScript
18 lines
877 B
TypeScript
// Define o tipo base dos valores do formulário (importa do schema do usuário)
|
|
import { z } from 'zod';
|
|
import { UserSchema } from '../../schemas/User/UserSchema';
|
|
|
|
// Cria o tipo inferido a partir do schema do usuário
|
|
export type FormValues = z.infer<typeof UserSchema>;
|
|
|
|
/**
|
|
* Interface com as propriedades aceitas pelo componente UserForm.
|
|
* Isso facilita a reutilização e deixa o código mais limpo.
|
|
*/
|
|
export interface UserFormInterface {
|
|
isOpen: boolean; // Controla se o diálogo está aberto
|
|
data: FormValues | null; // Dados do usuário para edição (ou null no modo de criação)
|
|
onClose: (item: null, isFormStatus: boolean) => void; // Função executada ao fechar o diálogo
|
|
onSave: (data: FormValues) => void; // Função executada ao salvar o formulário
|
|
buttonIsLoading: boolean; // Define se o botão de envio está em modo de carregamento
|
|
}
|