joinClasses.js 803 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /**
  2. * Copyright (c) 2013-present, Facebook, Inc.
  3. *
  4. * This source code is licensed under the MIT license found in the
  5. * LICENSE file in the root directory of this source tree.
  6. *
  7. * @typechecks static-only
  8. */
  9. 'use strict';
  10. /**
  11. * Combines multiple className strings into one.
  12. * http://jsperf.com/joinclasses-args-vs-array
  13. *
  14. * @param {...?string} className
  15. * @return {string}
  16. */
  17. function joinClasses(className /*, ... */) {
  18. if (!className) {
  19. className = '';
  20. }
  21. var nextClass = void 0;
  22. var argLength = arguments.length;
  23. if (argLength > 1) {
  24. for (var ii = 1; ii < argLength; ii++) {
  25. nextClass = arguments[ii];
  26. if (nextClass) {
  27. className = (className ? className + ' ' : '') + nextClass;
  28. }
  29. }
  30. }
  31. return className;
  32. }
  33. module.exports = joinClasses;