/** * Joins class names, dropping blanks. * * CSS-module lookups type as `string | undefined` under * `noUncheckedIndexedAccess`, so this is where that gets absorbed instead of * weakening the flag. */ export const cx = (...parts: (string | false | undefined)[]): string => parts.filter((p): p is string => typeof p === "string" && p !== "").join(" ");