@formkit/validation

Introduction

Le package/plugin de validation de première partie pour FormKit. Lisez la documentation de validation pour les instructions d'utilisation.

Fonctions

createMessageName()

Étant donné un nœud, cela renvoie le nom qui doit être utilisé dans les messages de validation. Il s'agit soit de la propriété validationLabel, soit de la propriété label, soit du nom de l'entrée (dans cet ordre).

Signature

createMessageName(node: FormKitNode): string;

Paramètres

  • node — Le nœud à afficher

Retourne

createValidationPlugin()

La fonction de plugin de validation réelle. Tout doit être initialisé ici.

Signature

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

Paramètres

  • baseRules optionnel — Règles de validation de base à inclure dans le plugin. Par défaut, FormKit rend toutes les règles du package @formkit/rules disponibles via le defaultConfig.

getValidationMessages()

Extrait tous les messages de validation du nœud donné et tous ses descendants. Ce n'est pas réactif et doit être rappelé chaque fois que les messages changent.

Signature

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

Paramètres

  • node — Le nœud FormKit pour extraire les règles de validation — ainsi que ses descendants.

TypeScript

FormKitValidationHints

Propriétés de validation spéciales qui affectent la manière dont les validations sont appliquées.

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

FormKitValidationMessage

L'interface pour la fonction de message de validation localisée.

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

FormKitValidationMessages

L'interface pour le registre de messages de validation localisés.

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

FormKitValidationRules

Les règles de validation FormKit sont structurées comme un objet de paires clé/fonction où la clé de l'objet est le nom de la règle de validation.

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

FormKitValidation

Définit à quoi ressemblent les règles de validation entièrement analysées.

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

FormKitValidationI18NArgs

Les arguments qui sont passés aux messages de validation dans le plugin i18n.

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

FormKitValidationIntent

Définit à quoi ressemblent les règles de validation lorsqu'elles sont analysées, mais n'ont pas nécessairement eu de règles de validation substituées encore.

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

FormKitValidationRule

Signature pour une règle de validation générique. Elle accepte une entrée - souvent une chaîne - mais devrait être capable d'accepter n'importe quel type d'entrée, et renvoie un booléen indiquant si elle a passé la validation ou non.

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