@bem-react/classname
Advanced tools
Comparing version 1.4.4 to 1.5.0
@@ -44,5 +44,6 @@ 'use strict'; | ||
var pairs = Object.keys(a).filter(function (k) { return a[k]; }).map(function (k) { return a[k] === true ? [k] : [k, a[k]]; }); | ||
var modValueDelimiter = preset.v || preset.m; | ||
return !pairs.length | ||
? '' | ||
: ' ' + pairs.map(function (pair) { return (o.e ? b + preset.e + o.e : b) + preset.m + pair.join(preset.m); }).join(' '); | ||
: ' ' + pairs.map(function (pair) { return (o.e ? b + preset.e + o.e : b) + preset.m + pair.join(modValueDelimiter); }).join(' '); | ||
} | ||
@@ -49,0 +50,0 @@ return className; |
@@ -1,1 +0,1 @@ | ||
"use strict";function withNaming(l){return function(p,s){return function(n,e,t){var i,r,o,u,c,m,a,f={b:p,e:s};return"string"==typeof n?(f.e=n,Array.isArray(e)?f.mix=e:(f.m=e,f.mix=t)):(f.m=n,f.mix=e),i=f,c=(l.n||"")+i.b,m=[],a=c+(i.e?l.e+i.e:""),void 0!==i.mix&&i.mix.forEach(function(n){if(void 0!==n){var e=n.split(" ").filter(function(n){return n!==a});m.push.apply(m,e)}}),a+=(r=i.m,o=r||Object.create(null),(u=Object.keys(o).filter(function(n){return o[n]}).map(function(n){return!0===o[n]?[n]:[n,o[n]]})).length?" "+u.map(function(n){return(i.e?c+l.e+i.e:c)+l.m+n.join(l.m)}).join(" "):""),0<m.length&&(a+=" "+m.join(" ")),a}}}Object.defineProperty(exports,"__esModule",{value:!0});var cn=withNaming({e:"-",m:"_"});exports.withNaming=withNaming,exports.cn=cn; | ||
"use strict";function withNaming(h){return function(s,l){return function(n,e,t){var i,r,o,u,c,m,a,f,p={b:s,e:l};return"string"==typeof n?(p.e=n,Array.isArray(e)?p.mix=e:(p.m=e,p.mix=t)):(p.m=n,p.mix=e),i=p,m=(h.n||"")+i.b,a=[],f=m+(i.e?h.e+i.e:""),void 0!==i.mix&&i.mix.forEach(function(n){if(void 0!==n){var e=n.split(" ").filter(function(n){return n!==f});a.push.apply(a,e)}}),f+=(r=i.m,o=r||Object.create(null),u=Object.keys(o).filter(function(n){return o[n]}).map(function(n){return!0===o[n]?[n]:[n,o[n]]}),c=h.v||h.m,u.length?" "+u.map(function(n){return(i.e?m+h.e+i.e:m)+h.m+n.join(c)}).join(" "):""),0<a.length&&(f+=" "+a.join(" ")),f}}}Object.defineProperty(exports,"__esModule",{value:!0});var cn=withNaming({e:"-",m:"_"});exports.withNaming=withNaming,exports.cn=cn; |
@@ -6,2 +6,13 @@ # Change Log | ||
# [1.5.0](https://github.com/bem/bem-react/tree/master/packages/classname/compare/@bem-react/classname@1.4.4...@bem-react/classname@1.5.0) (2019-04-22) | ||
### Features | ||
* **classname:** add modVal delimiter for withNaming configuration ([5fb63dc](https://github.com/bem/bem-react/tree/master/packages/classname/commit/5fb63dc)) | ||
## [1.4.4](https://github.com/bem/bem-react/tree/master/packages/classname/compare/@bem-react/classname@1.4.3...@bem-react/classname@1.4.4) (2019-03-01) | ||
@@ -8,0 +19,0 @@ |
@@ -39,9 +39,13 @@ /** | ||
/** | ||
* Elem's delimeter. | ||
* Elem's delimiter. | ||
*/ | ||
e?: string; | ||
/** | ||
* Modifier's delimeter. | ||
* Modifier's delimiter. | ||
*/ | ||
m?: string; | ||
/** | ||
* Modifier value delimiter. | ||
*/ | ||
v?: string; | ||
} | ||
@@ -48,0 +52,0 @@ /** |
{ | ||
"name": "@bem-react/classname", | ||
"version": "1.4.4", | ||
"version": "1.5.0", | ||
"description": "BEM React ClassName", | ||
"homepage": "https://github.com/bem/bem-react", | ||
"repository": "https://github.com/bem/bem-react/tree/master/packages/classname", | ||
@@ -46,3 +47,3 @@ "keywords": [ | ||
}, | ||
"gitHead": "44234ca2470324bfecb9ef393e0bc4718ab24780" | ||
"gitHead": "f542664df66df1874065280f8ff52f74cb2663a4" | ||
} |
@@ -27,10 +27,2 @@ # ClassName · [](https://www.npmjs.com/package/@bem-react/classname) [](https://bundlephobia.com/result?p=@bem-react/classname) | ||
### classnames merge | ||
``` js | ||
import { classnames } from '@bem-react/classname'; | ||
classnames('Block', 'Mix', undefined, 'Block'); // 'Block Mix' | ||
``` | ||
## Configure | ||
@@ -43,5 +35,5 @@ | ||
const cn = withNaming({ n: 'ns-', e: '__', m: '_' }); | ||
const cn = withNaming({ n: 'ns-', e: '__', m: '_', v: '_' }); | ||
cn('block', 'elem')({ theme: 'default' }); // ns-block__elem_theme_default | ||
``` |
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
18620
203
0
38