merisia-input

<merisia-input>

Champ de saisie texte accessible, form-associated, avec libellé, aide et gestion d'erreur intégrés.

Démos

Champ texte de base

<merisia-input
  label="Prénom"
  name="first-name"
  placeholder="Votre prénom"
  autocomplete="given-name"
  autocapitalize="words"
></merisia-input>

Courriel avec autocomplétion

<merisia-input
  label="Adresse courriel"
  type="email"
  name="email"
  hint="Exemple : prenom.nom@domaine.ca"
  autocomplete="email"
  spellcheck="false"
></merisia-input>

Avec erreur

const el = document.querySelector('merisia-input');
el.errors = ["L'adresse courriel est invalide."];

Avec limite de caractères (saisie au-delà permise)

<merisia-input
  label="Nom d'utilisateur"
  name="username"
  hint="30 caractères maximum."
  maxlength="30"
></merisia-input>

Requis

<merisia-input label="Nom de famille" name="last-name" required
  autocomplete="family-name"></merisia-input>

Désactivé

<merisia-input label="Champ désactivé" name="disabled" value="Non modifiable" disabled></merisia-input>

Largeur en caractères (UK GOV pattern)

La propriété width (disponible sur tous les composants) fixe le max-width de l'élément hôte en unités ch. Utile pour les champs de date, codes postaux, etc.

<merisia-input label="Jour"  name="day"  width="2"  placeholder="JJ"></merisia-input>
<merisia-input label="Année" name="year" width="4"  placeholder="AAAA"></merisia-input>
<merisia-input label="Code postal" name="postal" width="7"></merisia-input>

Propriétés

Propriété Attribut Type Défaut Description
MerisiaInput (propres)
type type 'text' | 'email' | 'tel' | 'url' | 'number' | 'search' | 'password' 'text' Type du champ de saisie HTML
autocomplete autocomplete string '' Attribut HTML autocomplete
autocorrect autocorrect boolean false Correction automatique (Safari/iOS)
autocapitalize autocapitalize string '' Capitalisation automatique
spellcheck spellcheck boolean true Vérification orthographique
minlength minlength number Longueur minimale de saisie
pattern pattern string '' Motif de validation (expression régulière)
MerisiaTextFieldBase (hérités)
label label string '' Texte du libellé
hint hint string '' Aide contextuelle affichée sous le libellé
errors string[] [] Liste de messages d'erreur (propriété JS uniquement)
errorPrefix error-prefix string 'Erreur :' Préfixe des messages d'erreur (i18n, visuellement masqué)
placeholder placeholder string '' Texte indicatif dans le champ vide
readonly readonly boolean false Rend le champ non modifiable
invalid invalid boolean false État d'erreur (synchronisé automatiquement avec errors)
maxlength maxlength number Longueur maximale ; active le compteur de caractères (saisie au-delà permise)
charsRemainingOne chars-remaining-one string '{n} caractère restant' Gabarit singulier du compteur restant (i18n)
charsRemainingOther chars-remaining-other string '{n} caractères restants' Gabarit pluriel du compteur restant (i18n)
charsOverLimitOne chars-over-limit-one string 'Vous avez saisi {over} caractère en trop.' Message dépassement singulier (i18n)
charsOverLimitOther chars-over-limit-other string 'Vous avez saisi {over} caractères en trop.' Message dépassement pluriel (i18n)
MerisiaFormElement (hérités)
name name string '' Nom du champ dans le formulaire
value value string '' Valeur actuelle
required required boolean false Rend le champ obligatoire
disabled disabled boolean false Désactive le champ
MerisiaElement (hérités)
id id string auto-généré Identifiant unique du composant
lang lang string 'fr' Langue pour les messages internes (i18n)
width width number Largeur en nombre de caractères : max-width: calc(N ch + 1.5rem)

Ressources externes

Import

import '@merisia-inc/merisia-components/input';