style: clean up code formatting and remove trailing whitespace
refactor: reorganize imports and fix type imports
This commit is contained in:
1 parent
d3704602fd
commit
47c04de6fe
232 files changed
+7140
-4798
No files matched your search
+46
-29
@@ -8,19 +8,19 @@
|
||||
*/
|
||||
export function formatPhone(value: string): string {
|
||||
const cleaned = value.replace(/\D/g, "");
|
||||
|
||||
|
||||
if (cleaned.length <= 2) {
|
||||
return cleaned;
|
||||
}
|
||||
|
||||
|
||||
if (cleaned.length <= 6) {
|
||||
return `(${cleaned.slice(0, 2)}) ${cleaned.slice(2)}`;
|
||||
}
|
||||
|
||||
|
||||
if (cleaned.length <= 10) {
|
||||
return `(${cleaned.slice(0, 2)}) ${cleaned.slice(2, 6)}-${cleaned.slice(6)}`;
|
||||
}
|
||||
|
||||
|
||||
// Telefone com 11 dígitos (celular)
|
||||
return `(${cleaned.slice(0, 2)}) ${cleaned.slice(2, 7)}-${cleaned.slice(7, 11)}`;
|
||||
}
|
||||
@@ -30,34 +30,42 @@ export function formatPhone(value: string): string {
|
||||
* @param phoneNumber - Número do telefone (apenas dígitos, sem código de país)
|
||||
* @param countryCode - Código ISO do país (ex: "BR", "US", "GB")
|
||||
*/
|
||||
function formatPhoneByCountry(phoneNumber: string, countryCode: string): string {
|
||||
function formatPhoneByCountry(
|
||||
phoneNumber: string,
|
||||
countryCode: string,
|
||||
): string {
|
||||
const len = phoneNumber.length;
|
||||
|
||||
switch (countryCode) {
|
||||
// Brasil: (XX) XXXXX-XXXX ou (XX) XXXX-XXXX
|
||||
case "BR":
|
||||
if (len <= 2) return phoneNumber;
|
||||
if (len <= 6) return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2)}`;
|
||||
if (len <= 10) return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2, 6)}-${phoneNumber.slice(6)}`;
|
||||
if (len <= 6)
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2)}`;
|
||||
if (len <= 10)
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2, 6)}-${phoneNumber.slice(6)}`;
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2, 7)}-${phoneNumber.slice(7, 11)}`;
|
||||
|
||||
// EUA/Canadá: (XXX) XXX-XXXX
|
||||
case "US":
|
||||
case "CA":
|
||||
if (len <= 3) return phoneNumber;
|
||||
if (len <= 6) return `(${phoneNumber.slice(0, 3)}) ${phoneNumber.slice(3)}`;
|
||||
if (len <= 6)
|
||||
return `(${phoneNumber.slice(0, 3)}) ${phoneNumber.slice(3)}`;
|
||||
return `(${phoneNumber.slice(0, 3)}) ${phoneNumber.slice(3, 6)}-${phoneNumber.slice(6, 10)}`;
|
||||
|
||||
// México: (XX) XXXX XXXX
|
||||
case "MX":
|
||||
if (len <= 2) return phoneNumber;
|
||||
if (len <= 6) return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2)}`;
|
||||
if (len <= 6)
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2)}`;
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2, 6)} ${phoneNumber.slice(6, 10)}`;
|
||||
|
||||
// Argentina: (XX) XXXX-XXXX
|
||||
case "AR":
|
||||
if (len <= 2) return phoneNumber;
|
||||
if (len <= 6) return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2)}`;
|
||||
if (len <= 6)
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2)}`;
|
||||
return `(${phoneNumber.slice(0, 2)}) ${phoneNumber.slice(2, 6)}-${phoneNumber.slice(6, 10)}`;
|
||||
|
||||
// Chile: X XXXX XXXX
|
||||
@@ -130,14 +138,16 @@ function formatPhoneByCountry(phoneNumber: string, countryCode: string): string
|
||||
case "BE":
|
||||
if (len <= 4) return phoneNumber;
|
||||
if (len <= 6) return `${phoneNumber.slice(0, 4)} ${phoneNumber.slice(4)}`;
|
||||
if (len <= 8) return `${phoneNumber.slice(0, 4)} ${phoneNumber.slice(4, 6)} ${phoneNumber.slice(6)}`;
|
||||
if (len <= 8)
|
||||
return `${phoneNumber.slice(0, 4)} ${phoneNumber.slice(4, 6)} ${phoneNumber.slice(6)}`;
|
||||
return `${phoneNumber.slice(0, 4)} ${phoneNumber.slice(4, 6)} ${phoneNumber.slice(6, 8)} ${phoneNumber.slice(8)}`;
|
||||
|
||||
// Suíça: XX XXX XX XX
|
||||
case "CH":
|
||||
if (len <= 2) return phoneNumber;
|
||||
if (len <= 5) return `${phoneNumber.slice(0, 2)} ${phoneNumber.slice(2)}`;
|
||||
if (len <= 7) return `${phoneNumber.slice(0, 2)} ${phoneNumber.slice(2, 5)} ${phoneNumber.slice(5)}`;
|
||||
if (len <= 7)
|
||||
return `${phoneNumber.slice(0, 2)} ${phoneNumber.slice(2, 5)} ${phoneNumber.slice(5)}`;
|
||||
return `${phoneNumber.slice(0, 2)} ${phoneNumber.slice(2, 5)} ${phoneNumber.slice(5, 7)} ${phoneNumber.slice(7)}`;
|
||||
|
||||
// Áustria: XXXX XXXX
|
||||
@@ -155,7 +165,8 @@ function formatPhoneByCountry(phoneNumber: string, countryCode: string): string
|
||||
case "RU":
|
||||
if (len <= 3) return phoneNumber;
|
||||
if (len <= 6) return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3)}`;
|
||||
if (len <= 8) return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)}-${phoneNumber.slice(6)}`;
|
||||
if (len <= 8)
|
||||
return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)}-${phoneNumber.slice(6)}`;
|
||||
return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)}-${phoneNumber.slice(6, 8)}-${phoneNumber.slice(8)}`;
|
||||
|
||||
// China: XXX XXXX XXXX
|
||||
@@ -204,7 +215,8 @@ function formatPhoneByCountry(phoneNumber: string, countryCode: string): string
|
||||
case "TR":
|
||||
if (len <= 3) return phoneNumber;
|
||||
if (len <= 6) return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3)}`;
|
||||
if (len <= 8) return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)} ${phoneNumber.slice(6)}`;
|
||||
if (len <= 8)
|
||||
return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)} ${phoneNumber.slice(6)}`;
|
||||
return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)} ${phoneNumber.slice(6, 8)} ${phoneNumber.slice(8)}`;
|
||||
|
||||
// Arábia Saudita: XX XXX XXXX
|
||||
@@ -262,21 +274,22 @@ function formatPhoneByCountry(phoneNumber: string, countryCode: string): string
|
||||
default: {
|
||||
if (len <= 4) return phoneNumber;
|
||||
if (len <= 7) return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3)}`;
|
||||
if (len <= 10) return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)} ${phoneNumber.slice(6)}`;
|
||||
|
||||
if (len <= 10)
|
||||
return `${phoneNumber.slice(0, 3)} ${phoneNumber.slice(3, 6)} ${phoneNumber.slice(6)}`;
|
||||
|
||||
// Para números maiores, agrupa em grupos de 3-4 dígitos
|
||||
const groups: string[] = [];
|
||||
let remaining = phoneNumber;
|
||||
|
||||
|
||||
while (remaining.length > 4) {
|
||||
groups.push(remaining.slice(0, 3));
|
||||
remaining = remaining.slice(3);
|
||||
}
|
||||
|
||||
|
||||
if (remaining.length > 0) {
|
||||
groups.push(remaining);
|
||||
}
|
||||
|
||||
|
||||
return groups.join(" ");
|
||||
}
|
||||
}
|
||||
@@ -341,23 +354,23 @@ export function getPhonePlaceholder(countryCode: string): string {
|
||||
export function formatInternationalPhone(
|
||||
value: string,
|
||||
dialCode: string,
|
||||
countryCode?: string
|
||||
countryCode?: string,
|
||||
): string {
|
||||
const cleaned = value.replace(/\D/g, "");
|
||||
|
||||
|
||||
// Remove o código de país se já estiver presente
|
||||
let phoneNumber = cleaned;
|
||||
const dialCodeDigits = dialCode.replace(/\D/g, "");
|
||||
|
||||
|
||||
if (phoneNumber.startsWith(dialCodeDigits)) {
|
||||
phoneNumber = phoneNumber.slice(dialCodeDigits.length);
|
||||
}
|
||||
|
||||
|
||||
// Se não temos código de país, usar formatação genérica
|
||||
if (!countryCode) {
|
||||
return formatPhoneByCountry(phoneNumber, "DEFAULT");
|
||||
}
|
||||
|
||||
|
||||
// Aplicar formatação específica do país
|
||||
return formatPhoneByCountry(phoneNumber, countryCode);
|
||||
}
|
||||
@@ -375,15 +388,18 @@ export function unformatPhone(value: string): string {
|
||||
* @param dialCode - Código de discagem (ex: "+55")
|
||||
* @param phoneNumber - Número do telefone (sem código)
|
||||
*/
|
||||
export function combinePhoneWithDialCode(dialCode: string, phoneNumber: string): string {
|
||||
export function combinePhoneWithDialCode(
|
||||
dialCode: string,
|
||||
phoneNumber: string,
|
||||
): string {
|
||||
const cleanedPhone = unformatPhone(phoneNumber);
|
||||
const cleanedDialCode = dialCode.replace(/\D/g, "");
|
||||
|
||||
|
||||
// Remove código de país se já estiver presente
|
||||
if (cleanedPhone.startsWith(cleanedDialCode)) {
|
||||
return `${dialCode}${cleanedPhone.slice(cleanedDialCode.length)}`;
|
||||
}
|
||||
|
||||
|
||||
return `${dialCode}${cleanedPhone}`;
|
||||
}
|
||||
|
||||
@@ -391,7 +407,9 @@ export function combinePhoneWithDialCode(dialCode: string, phoneNumber: string):
|
||||
* Calcula a força da senha
|
||||
* Retorna: 'weak' | 'medium' | 'strong'
|
||||
*/
|
||||
export function checkPasswordStrength(password: string): "weak" | "medium" | "strong" {
|
||||
export function checkPasswordStrength(
|
||||
password: string,
|
||||
): "weak" | "medium" | "strong" {
|
||||
if (password.length < 8) {
|
||||
return "weak";
|
||||
}
|
||||
@@ -473,4 +491,3 @@ export function formatNumber(value: number, locale?: string): string {
|
||||
return String(value);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user