File tree Expand file tree Collapse file tree 3 files changed +23
-10
lines changed
Expand file tree Collapse file tree 3 files changed +23
-10
lines changed Original file line number Diff line number Diff line change 11{
22 "name" : " classcat" ,
33 "description" : " 0.3 KB JavaScript function for conditionally concatenating CSS class names." ,
4- "version" : " 1.1.3 " ,
4+ "version" : " 2.0.0 " ,
55 "main" : " dist/classcat.js" ,
66 "jsnext:main" : " src/index.js" ,
77 "module" : " src/index.js" ,
Original file line number Diff line number Diff line change @@ -3,25 +3,26 @@ export default function cc(classes, prefix) {
33 var className = ""
44 var type = typeof classes
55
6+ prefix = prefix || ""
7+
8+ if ( type === "boolean" ) {
9+ return classes ? prefix : ""
10+ }
11+
612 if ( ( classes && type === "string" ) || type === "number" ) {
713 return classes
814 }
915
10- prefix = prefix || " "
11-
1216 if ( Array . isArray ( classes ) && classes . length ) {
1317 for ( var i = 0 , len = classes . length ; i < len ; i ++ ) {
1418 if ( ( value = cc ( classes [ i ] , prefix ) ) ) {
15- className += ( className && prefix ) + value
19+ className += ( className && " " ) + prefix + value
1620 }
1721 }
1822 } else {
1923 for ( var i in classes ) {
2024 if ( classes . hasOwnProperty ( i ) && ( value = classes [ i ] ) ) {
21- className +=
22- ( className && prefix ) +
23- i +
24- ( typeof value === "object" ? cc ( value , prefix + i ) : "" )
25+ className += ( className && " " ) + cc ( value , prefix + i )
2526 }
2627 }
2728 }
Original file line number Diff line number Diff line change @@ -43,9 +43,9 @@ test("prefix", () => {
4343 quux : false ,
4444 baz : true
4545 } ,
46- "-"
46+ "prefix -"
4747 )
48- ) . toBe ( "foo-bar-baz" )
48+ ) . toBe ( "prefix- foo prefix -bar prefix -baz" )
4949} )
5050
5151test ( "deep" , ( ) => {
@@ -72,3 +72,15 @@ test("not owned props", () => {
7272
7373 delete Object . prototype . myFunction
7474} )
75+
76+ test ( "all child elements false" , ( ) => {
77+ expect (
78+ cc ( [
79+ {
80+ foo : {
81+ "--bar" : false
82+ }
83+ }
84+ ] )
85+ ) . toBe ( "" )
86+ } )
You can’t perform that action at this time.
0 commit comments