Validators

Validatori Documenti

Validatori per documenti di identità - carte d'identità nazionali, passaporti, targhe veicoli e patenti di guida.

Panoramica

I validatori documenti verificano i numeri di documenti di identità di diversi paesi europei e USA: carte d'identità nazionali, passaporti, targhe automobilistiche e patenti di guida. Ogni validatore supporta un parametro opzionale per il codice paese; se omesso, viene tentato il match con tutti i formati noti.

I valori vengono automaticamente convertiti in maiuscolo e ripuliti da spazi e trattini prima della validazione.

Validatori

nationalid

Sintassi: nationalid oppure nationalid:paese
Descrizione: Verifica il numero di carta d'identità nazionale. Con il codice paese applica la validazione specifica; senza, tenta tutti i formati noti.
Parametro: (opzionale) codice paese ISO: IT, DE, FR, ES, GB, PT

PaeseFormatoEsempio
IT2 lettere + 7 cifreAB1234567
DE9 caratteri alfanumerici specificiCFGHJK123
FR12 cifre123456789012
ES8 cifre + 1 lettera (DNI)12345678A
GB2 lettere + 6 cifre + opz. lettera e cifraAB123456C
PT8 cifre12345678

Esempi:

// Italia
ValidationService.validate('AB1234567', 'nationalid:IT')  // valido
ValidationService.validate('A1234567', 'nationalid:IT')   // non valido: solo 1 lettera

// Spagna (DNI)
ValidationService.validate('12345678A', 'nationalid:ES')
ValidationService.validate('12345678Z', 'nationalid:ES')

// Generico (prova tutti i formati)
ValidationService.validate('AB1234567', 'nationalid')

// In schema DynamicFormLayouts
{ name: 'cartaidentita', type: 'text', validation: 'required|nationalid:IT' }

passportnumber

Sintassi: passportnumber oppure passportnumber:paese
Descrizione: Verifica il numero di passaporto. Con il codice paese applica la validazione specifica; senza parametro usa il formato generico (6-12 caratteri alfanumerici).
Parametro: (opzionale) codice paese: IT, DE, FR, ES, GB, US

PaeseFormatoEsempio
IT2 lettere + 7 cifreAB1234567
DE9 caratteri alfanumerici specificiCFGH12345
FR2 cifre + 2 lettere + 5 cifre12AB12345
ES3 lettere + 6 cifreABC123456
GB9 cifre123456789
USopz. lettera + 8-9 cifreA12345678
generico6-12 alfanumericiAB123456

Esempi:

// Italia
ValidationService.validate('AB1234567', 'passportnumber:IT')

// USA
ValidationService.validate('123456789', 'passportnumber:US')
ValidationService.validate('A12345678', 'passportnumber:US')

// Generico
ValidationService.validate('AB123456', 'passportnumber')

// In schema DynamicFormLayouts
{ name: 'passaporto', type: 'text', validation: 'required|passportnumber:IT' }

vehicleregistration

Sintassi: vehicleregistration oppure vehicleregistration:paese
Descrizione: Verifica la targa del veicolo. Con il codice paese applica il formato specifico; senza, tenta tutti i formati noti.
Parametro: (opzionale) codice paese: IT, DE, FR, ES, GB, AT, CH

PaeseFormatoEsempio
IT2 lettere + 3 cifre + 2 lettereAB123CD
DE1-3 lettere + trattino + 1-2 lettere + 1-4 cifreM-AB1234
FR2 lettere + trattino + 3 cifre + trattino + 2 lettereAB-123-CD
ES4 cifre + 3 lettere1234BCD
GB2 lettere + 2 cifre + 3 lettereAB12CDE
AT1-2 lettere + 1-6 cifre + opz. letteraW1234
CH2 lettere + 1-6 cifreZH12345

Esempi:

// Italia
ValidationService.validate('AB123CD', 'vehicleregistration:IT')
ValidationService.validate('FG456HI', 'vehicleregistration:IT')

// Germania
ValidationService.validate('M-AB1234', 'vehicleregistration:DE')
ValidationService.validate('HH-AB123', 'vehicleregistration:DE')

// Generico
ValidationService.validate('AB123CD', 'vehicleregistration')

// In schema DynamicFormLayouts
{ name: 'targa', type: 'text', validation: 'required|vehicleregistration:IT' }

driverlicense

Sintassi: driverlicense oppure driverlicense:paese
Descrizione: Verifica il numero della patente di guida. Con il codice paese applica il formato specifico; senza, usa una validazione generica (4-20 caratteri alfanumerici).
Parametro: (opzionale) codice paese: IT, DE, FR, GB, US

PaeseFormatoEsempio
IT2 lettere + 7 cifre + 1 letteraAB1234567X
DE11 caratteri alfanumericiA1234567890
FR12 cifre123456789012
GB5 lettere + 6 cifre + 2 lettere + 2 cifreABCDE123456AB12
US4-16 caratteri alfanumerici (varia per stato)D1234567
generico4-20 caratteri alfanumericiABC123456

Esempi:

// Italia
ValidationService.validate('AB1234567X', 'driverlicense:IT')

// USA
ValidationService.validate('D1234567', 'driverlicense:US')
ValidationService.validate('AB123456789', 'driverlicense:US')

// Generico
ValidationService.validate('ABC123456', 'driverlicense')

// In schema DynamicFormLayouts
{ name: 'patente', type: 'text', validation: 'required|driverlicense:IT' }