UNPKG

use-vibes

Version:

Transform any DOM element into an AI-powered micro-app

42 lines 1.42 kB
/** * Utility functions for managing component styling */ /** * Combines multiple class names into a single string, filtering out falsy values * Also adds backward compatibility class names for testing and legacy support * * @example * // Returns "foo bar baz" * combineClasses('foo', 'bar', 'baz') * * @example * // Returns "btn btn-primary" * combineClasses('btn', condition && 'btn-primary', false && 'btn-large') * * @example * // Returns "imggen-root img-gen-container" (with legacy class name) * combineClasses('imggen-root', classes.root) */ export function combineClasses(...classes) { // Filter out falsy values const validClasses = classes.filter(Boolean); // Add backward compatibility classes (img-gen-* format) const allClasses = [...validClasses]; // For each imggen-* class, add a corresponding img-gen-* class for backward compatibility validClasses.forEach((cls) => { if (cls.startsWith('imggen-')) { // Convert imggen-root to img-gen-root, etc. const legacyClass = cls.replace('imggen-', 'img-gen-'); // Only add if not already present if (!allClasses.includes(legacyClass)) { allClasses.push(legacyClass); } } }); return allClasses.join(' '); } /** * Default empty classes object */ export const defaultClasses = {}; //# sourceMappingURL=style-utils.js.map