UNPKG

@jbrowse/core

Version:

JBrowse 2 core libraries used by plugins

25 lines (24 loc) 794 B
export function mergeClasses(classesFromUseStyles, classesOverrides, cx) { if (!(classesOverrides instanceof Object)) { return classesFromUseStyles; } const overrideKeys = Object.keys(classesOverrides); if (overrideKeys.length === 0) { return classesFromUseStyles; } const out = {}; for (const ruleName of Object.keys(classesFromUseStyles)) { out[ruleName] = cx(classesFromUseStyles[ruleName], classesOverrides[ruleName]); } for (const ruleName of overrideKeys) { if (ruleName in classesFromUseStyles) { continue; } const className = classesOverrides[ruleName]; if (typeof className !== 'string') { continue; } out[ruleName] = className; } return out; }