Skip to content

Instantly share code, notes, and snippets.

@brettinternet
Created May 9, 2018 19:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brettinternet/a3fdb813fa669b5a49c3513266ad7e3a to your computer and use it in GitHub Desktop.
Save brettinternet/a3fdb813fa669b5a49c3513266ad7e3a to your computer and use it in GitHub Desktop.
Concatination helper, which can merge class names together. Skips over falsey values.
function css() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var classes = [];
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
var arg = args_1[_a];
if (arg) {
if (typeof arg === 'string') {
classes.push(arg);
}
else if ((arg.hasOwnProperty('toString') && typeof (arg.toString) === 'function')) {
classes.push(arg.toString());
}
else {
// tslint:disable-next-line:no-any
for (var key in arg) {
// tslint:disable-next-line:no-any
if (arg[key]) {
classes.push(key);
}
}
}
}
}
return classes.join(' ');
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment