@bemto/core
Advanced tools
Comparing version 0.1.0-alpha.5 to 0.1.0-alpha.6
@@ -77,2 +77,5 @@ 'use strict'; | ||
var SPACES_REGEX = /\s+/; | ||
var MODIFIER_REGEX = /^(\S*?[^_])_[^_]/; | ||
var getMethodsWithSettings = function getMethodsWithSettings(_ref) { | ||
@@ -122,3 +125,3 @@ var omitTrueModValue = _ref.omitTrueModValue, | ||
var normalizeElementOption = function normalizeElementOption(input) { | ||
if (_typeof(input) === 'object' && !input.$$typeof) { | ||
if (_typeof(input) === 'object') { | ||
return input; | ||
@@ -136,2 +139,14 @@ } | ||
var getBlockNames = function getBlockNames(str) { | ||
return str.split(SPACES_REGEX).filter(function (name, i, arr) { | ||
var isModifier = name.match(MODIFIER_REGEX); | ||
if (isModifier && arr.indexOf(isModifier[1]) !== -1) { | ||
return false; | ||
} | ||
return true; | ||
}); | ||
}; | ||
var filterProps = function filterProps(props) { | ||
@@ -173,3 +188,3 @@ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
var result = { | ||
blockNames: (options.block || props.className || '').split(/\s+/), | ||
blockNames: getBlockNames(options.block || props.className || ''), | ||
elements: Object.keys(options).reduce(optionsElementsReducer, {}), | ||
@@ -186,4 +201,5 @@ modifiers: {} | ||
return { | ||
getBlockNames: getBlockNames, | ||
getElement: getElement, | ||
getModifiers: getModifiers, | ||
getElement: getElement, | ||
filterProps: filterProps | ||
@@ -190,0 +206,0 @@ }; |
@@ -73,2 +73,5 @@ function _typeof(obj) { | ||
var SPACES_REGEX = /\s+/; | ||
var MODIFIER_REGEX = /^(\S*?[^_])_[^_]/; | ||
var getMethodsWithSettings = function getMethodsWithSettings(_ref) { | ||
@@ -118,3 +121,3 @@ var omitTrueModValue = _ref.omitTrueModValue, | ||
var normalizeElementOption = function normalizeElementOption(input) { | ||
if (_typeof(input) === 'object' && !input.$$typeof) { | ||
if (_typeof(input) === 'object') { | ||
return input; | ||
@@ -132,2 +135,14 @@ } | ||
var getBlockNames = function getBlockNames(str) { | ||
return str.split(SPACES_REGEX).filter(function (name, i, arr) { | ||
var isModifier = name.match(MODIFIER_REGEX); | ||
if (isModifier && arr.indexOf(isModifier[1]) !== -1) { | ||
return false; | ||
} | ||
return true; | ||
}); | ||
}; | ||
var filterProps = function filterProps(props) { | ||
@@ -169,3 +184,3 @@ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
var result = { | ||
blockNames: (options.block || props.className || '').split(/\s+/), | ||
blockNames: getBlockNames(options.block || props.className || ''), | ||
elements: Object.keys(options).reduce(optionsElementsReducer, {}), | ||
@@ -182,4 +197,5 @@ modifiers: {} | ||
return { | ||
getBlockNames: getBlockNames, | ||
getElement: getElement, | ||
getModifiers: getModifiers, | ||
getElement: getElement, | ||
filterProps: filterProps | ||
@@ -186,0 +202,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).bemto={})}(this,function(e){"use strict";function m(e){return(m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function f(r){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{},t=Object.keys(i);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(i).filter(function(e){return Object.getOwnPropertyDescriptor(i,e).enumerable}))),t.forEach(function(e){var t,n,o;t=r,o=i[n=e],n in t?Object.defineProperty(t,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[n]=o})}return r}var i={rootElem:"__Root",omitTrueModValue:!0,getters:{modifier:function(e){return 0===e.indexOf("_")?e.substring(1):e},element:function(e){return 0===e.indexOf("__")?e.substring(2):e}},templates:{modifier:function(e,t){return"".concat(e,"_").concat(t)},modifierValue:function(e,t){return"".concat(e,"_").concat(t)},element:function(e,t){return"".concat(e,"__").concat(t)}}},s=function(e){var c=e.omitTrueModValue,l=e.getters,u=e.templates,s=e.rootElem;return{getModifiers:function(e,s){return Object.keys(s).reduce(function(r,i){return s[i]&&e.map(function(e){return r.push((t=e,o=s[n=i],u.modifier(t,"boolean"==typeof o&&c?l.modifier(n):u.modifierValue(l.modifier(n),o))));var t,n,o}),r},[])},getElement:function(e,o){return e.map(function(e){return t=e,n=o,u.element(t,l.element(n));var t,n})},filterProps:function(r){var o=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=f({className:""},r[s]),e={blockNames:(o.block||r.className||"").split(/\s+/),elements:Object.keys(o).reduce(function(e,t){var n;return 0===t.indexOf("__")&&null!==r[t]&&!1!==r[t]&&(e[t]="object"!==m(n=o[t])||n.$$typeof?{component:n}:n),e},{}),modifiers:{}};return Object.keys(r).reduce(function(e,t){var n,o;return 0===t.indexOf("__")?t!==s&&null!=(o=r[t])&&!1!==o&&(e.elements[t]||(e.elements[t]={}),e.elements[t].props="object"!==m(n=r[t])||n instanceof Array||n.props?{children:n}:n):0===t.indexOf("_")?e.modifiers[t]=r[t]:i[t]=r[t],e},e),e.elements[s]=f({},e.elements[s],{props:i}),e}}},t=function t(e){var l=e.rootElem,n=s(e),o=n.getModifiers,u=n.getElement,r=n.filterProps;return{withSettings:function(e){return t(f({},i,e,{getters:f({},i.getters,e.getters),templates:f({},i.templates,e.templates)}))},bemto:function s(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},c=r(e,t);return c.elements[l].props.className=[c.elements[l].props.className,o(c.blockNames,c.modifiers).join(" ")].join(" ").trim(),c.getProps=function(e,t){var n,o;if(e&&e!==l?(o=u(c.blockNames,e).join(" "),(n=f({},c.elements[e]&&c.elements[e].props)).className=[o,n.className].join(" ").trim()):(o=c.blockNames.join(" "),n=f({},c.elements[l].props)),t){var r=s(t,{block:o}).elements[l].props,i=n.className;(n=f({},n,r)).className=[i,r.className].join(" ").trim()}return n},c}}}(i),n=t.withSettings,o=t.bemto;e.bemto=o,e.withSettings=n,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).bemto={})}(this,function(e){"use strict";function f(e){return(f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function m(o){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{},t=Object.keys(i);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(i).filter(function(e){return Object.getOwnPropertyDescriptor(i,e).enumerable}))),t.forEach(function(e){var t,n,r;t=o,r=i[n=e],n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r})}return o}var i={rootElem:"__Root",omitTrueModValue:!0,getters:{modifier:function(e){return 0===e.indexOf("_")?e.substring(1):e},element:function(e){return 0===e.indexOf("__")?e.substring(2):e}},templates:{modifier:function(e,t){return"".concat(e,"_").concat(t)},modifierValue:function(e,t){return"".concat(e,"_").concat(t)},element:function(e,t){return"".concat(e,"__").concat(t)}}},n=/\s+/,o=/^(\S*?[^_])_[^_]/,s=function(e){var c=e.omitTrueModValue,u=e.getters,l=e.templates,s=e.rootElem,t=function(e){return e.split(n).filter(function(e,t,n){var r=e.match(o);return!r||-1===n.indexOf(r[1])})};return{getBlockNames:t,getElement:function(e,r){return e.map(function(e){return t=e,n=r,l.element(t,u.element(n));var t,n})},getModifiers:function(e,s){return Object.keys(s).reduce(function(o,i){return s[i]&&e.map(function(e){return o.push((t=e,r=s[n=i],l.modifier(t,"boolean"==typeof r&&c?u.modifier(n):l.modifierValue(u.modifier(n),r))));var t,n,r}),o},[])},filterProps:function(o){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=m({className:""},o[s]),e={blockNames:t(r.block||o.className||""),elements:Object.keys(r).reduce(function(e,t){var n;return 0===t.indexOf("__")&&null!==o[t]&&!1!==o[t]&&(e[t]="object"===f(n=r[t])?n:{component:n}),e},{}),modifiers:{}};return Object.keys(o).reduce(function(e,t){var n,r;return 0===t.indexOf("__")?t!==s&&null!=(r=o[t])&&!1!==r&&(e.elements[t]||(e.elements[t]={}),e.elements[t].props="object"!==f(n=o[t])||n instanceof Array||n.props?{children:n}:n):0===t.indexOf("_")?e.modifiers[t]=o[t]:i[t]=o[t],e},e),e.elements[s]=m({},e.elements[s],{props:i}),e}}},t=function t(e){var u=e.rootElem,n=s(e),r=n.getModifiers,l=n.getElement,o=n.filterProps;return{withSettings:function(e){return t(m({},i,e,{getters:m({},i.getters,e.getters),templates:m({},i.templates,e.templates)}))},bemto:function s(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},c=o(e,t);return c.elements[u].props.className=[c.elements[u].props.className,r(c.blockNames,c.modifiers).join(" ")].join(" ").trim(),c.getProps=function(e,t){var n,r;if(e&&e!==u?(r=l(c.blockNames,e).join(" "),(n=m({},c.elements[e]&&c.elements[e].props)).className=[r,n.className].join(" ").trim()):(r=c.blockNames.join(" "),n=m({},c.elements[u].props)),t){var o=s(t,{block:r}).elements[u].props,i=n.className;(n=m({},n,o)).className=[i,o.className].join(" ").trim()}return n},c}}}(i),r=t.withSettings,c=t.bemto;e.bemto=c,e.withSettings=r,Object.defineProperty(e,"__esModule",{value:!0})}); |
{ | ||
"name": "@bemto/core", | ||
"version": "0.1.0-alpha.5", | ||
"version": "0.1.0-alpha.6", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "author": "Roman Komarov <kizu@kizu.ru>", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
21623
446