@formkit/validation

Introdução

O pacote/plugin de validação de primeira parte para FormKit. Leia a documentação de validação para instruções de uso.

Funções

createMessageName()

Dado um nó, isso retorna o nome que deve ser usado nas mensagens de validação. Isso é ou a prop validationLabel, a prop label, ou o nome da entrada (nessa ordem).

Assinatura

createMessageName(node: FormKitNode): string;

Parâmetros

  • node — O nó a ser exibido

Retorna

createValidationPlugin()

A função do plugin de validação real. Tudo deve ser inicializado aqui.

Assinatura

createValidationPlugin(baseRules?: FormKitValidationRules): (node: FormKitNode) => void;

Parâmetros

  • baseRules opcional — Regras de validação base para incluir no plugin. Por padrão, FormKit disponibiliza todas as regras no pacote @formkit/rules via defaultConfig.

getValidationMessages()

Extrai todas as mensagens de validação do nó dado e todos os seus descendentes. Isso não é reativo e deve ser chamado novamente cada vez que as mensagens mudam.

Assinatura

getValidationMessages(node: FormKitNode): Map<FormKitNode, FormKitMessage[]>;

Parâmetros

  • node — O nó FormKit para extrair regras de validação — bem como seus descendentes.

TypeScript

FormKitValidationHints

Propriedades de validação especiais que afetam a maneira como as validações são aplicadas.

interface FormKitValidationHints {
    blocking: boolean;
    debounce: number;
    force: boolean;
    name: string;
    skipEmpty: boolean;
}

FormKitValidationMessage

A interface para a função de mensagem de validação localizada.

interface FormKitValidationMessage {
    (...args: FormKitValidationI18NArgs): string;
}

FormKitValidationMessages

A interface para o registro de mensagens de validação localizadas.

interface FormKitValidationMessages {
    [index: string]: string | FormKitValidationMessage;
}

FormKitValidationRules

As regras de validação do FormKit são estruturadas como um objeto de pares chave/função onde a chave do objeto é o nome da regra de validação.

interface FormKitValidationRules {
    [index: string]: FormKitValidationRule;
}

FormKitValidation

Define como as regras de validação totalmente analisadas se parecem.

export type FormKitValidation = {
    rule: FormKitValidationRule;
    args: any[];
    timer: number;
    state: boolean | null;
    queued: boolean;
    deps: FormKitDependencies;
    messageObserver?: FormKitObservedNode;
} & FormKitValidationHints;

FormKitValidationI18NArgs

Os argumentos que são passados para as mensagens de validação no plugin i18n.

export type FormKitValidationI18NArgs = [
    {
        node: FormKitNode;
        name: string;
        args: any[];
        message?: string;
    }
];

FormKitValidationIntent

Define como as regras de validação se parecem quando são analisadas, mas não necessariamente tiveram regras de validação substituídas ainda.

export type FormKitValidationIntent = [string | FormKitValidationRule, ...any[]];

FormKitValidationRule

Assinatura para uma regra de validação genérica. Ela aceita uma entrada - muitas vezes uma string - mas deve ser capaz de aceitar qualquer tipo de entrada, e retorna um booleano indicando se passou ou não na validação.

export type FormKitValidationRule = {
    (node: FormKitNode, ...args: any[]): boolean | Promise<boolean>;
    ruleName?: string;
} & Partial<FormKitValidationHints>;