/** biome-ignore-all lint/suspicious/noAssignInExpressions: Because why not? */ type ClassValue = | ClassArray | ClassDictionary | string | number | bigint | null | boolean | undefined; type ClassDictionary = Record; type ClassArray = ClassValue[]; function toVal(mix: Exclude) { let result = ""; if (typeof mix === "string" || typeof mix === "number") { result += mix; } else if (typeof mix === "object") { if (Array.isArray(mix)) { for (let i = 0; i < mix.length; i++) { if (mix[i]) { const parsedValue = toVal(mix[i]); if (parsedValue) { result && (result += " "); result += parsedValue; } } } } else { for (const key in mix) { if (mix[key]) { result && (result += " "); result += key; } } } } return result; } function cl(...inputs: ClassValue[]) { let parsedValue: string; let currentValue: ClassValue; let result = ""; for (let i = 0; i < inputs.length; i++) { if ((currentValue = inputs[i])) { if ((parsedValue = toVal(currentValue))) { result && (result += " "); result += parsedValue; } } } return result; } export { cl };