UNPKG

@sindresorhus/class-names

Version:

Conditionally join CSS class names together - Especially useful with React

20 lines (16 loc) 406 B
export default function classnames(...arguments_) { const result = new Set(); for (const item of arguments_) { const type = typeof item; if (type === 'string' && item.length > 0) { result.add(item); } else if (type === 'object' && item !== null) { for (const [key, value] of Object.entries(item)) { if (value) { result.add(key); } } } } return [...result].join(' '); }