cpf masking
This commit is contained in:
parent
7acbc48f43
commit
c347d5ce24
@ -1,19 +1,15 @@
|
||||
/**
|
||||
* Formats a CPF string with masking (123.***.789-10)
|
||||
* Formats a CPF string (might include masking) and masks it for display.
|
||||
* @param cpf - A CPF string (11 digits without punctuation)
|
||||
* @returns Formatted CPF with masking or the original input if invalid
|
||||
*/
|
||||
export function maskCpf(cpf: string): string {
|
||||
// Clean input, keeping only digits
|
||||
const cleanCpf = cpf.replace(/\D/g, '');
|
||||
|
||||
// Validate if it's 11 digits
|
||||
if (cleanCpf.length !== 11) {
|
||||
if (cpf.length !== 11) {
|
||||
return cpf;
|
||||
}
|
||||
|
||||
// Format with mask: 123.***.789-10
|
||||
return `${cleanCpf.slice(0, 3)}.***.${cleanCpf.slice(6, 9)}-${cleanCpf.slice(9)}`;
|
||||
// Mask with standard punctuation: 123.456.789-10
|
||||
return `${cpf.slice(0, 3)}.${cpf.slice(3, 6)}.${cpf.slice(6, 9)}-${cpf.slice(9)}`;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user