Files
defiQUG c94eb595f8
Some checks failed
CI / lint-and-test (push) Has been cancelled
Initial commit: add .gitignore and README
2026-02-09 21:51:53 -08:00

29 lines
894 B
TypeScript

import { type ClassValue, clsx } from "clsx";
import { twMerge } from "tailwind-merge";
import { getAddress, isAddress as viemIsAddress } from "viem";
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs));
}
export function formatAddress(address: string): string {
try {
const checksummed = getAddress(address);
return `${checksummed.slice(0, 6)}...${checksummed.slice(-4)}`;
} catch {
return address;
}
}
export function formatBalance(balance: bigint, decimals: number = 18): string {
const divisor = BigInt(10 ** decimals);
const whole = balance / divisor;
const remainder = balance % divisor;
const decimalPart = remainder.toString().padStart(decimals, "0").replace(/0+$/, "");
return decimalPart ? `${whole}.${decimalPart}` : whole.toString();
}
export function isAddress(address: string): boolean {
return viemIsAddress(address);
}