New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@bem-react/core

Package Overview
Dependencies
Maintainers
6
Versions
56
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@bem-react/core - npm Package Compare versions

Comparing version 2.0.11-dev.1 to 2.0.11-dev.2

52

build/core.development.js

@@ -39,2 +39,3 @@ 'use strict';

function withBemMod(blockName, mod, enhance) {
if (enhance === void 0) { enhance = true; }
var entity;

@@ -68,3 +69,3 @@ var entityClassName;

.replace(entityClassName + " ", '');
if (enhance !== undefined) {
if (enhance !== undefined && typeof enhance !== 'boolean') {
if (ModifiedComponent === undefined) {

@@ -98,5 +99,9 @@ ModifiedComponent = enhance(WrappedComponent);

};
var keys = Object.keys(mod);
var isSimple = keys.length === 1 && typeof enhance !== 'boolean' ? !enhance : true;
withMod.__blockName = blockName;
withMod.__mod = mod;
withMod.__isSimple = !enhance;
withMod.__mod = keys[0];
withMod.__value = mod[keys[0]];
withMod.__isSimple = isSimple;
withMod.__presentInProps = enhance;
return withMod;

@@ -107,12 +112,11 @@ }

var allMods = {};
var allModsPresentProps = {};
var entity = classname.cn(__blockName);
var _loop_1 = function (mod) {
Object.keys(mod.__mod).forEach(function (key) {
allMods[key] = allMods[key] || [];
allMods[key].push(mod.__mod[key]);
});
};
for (var _i = 0, mods_1 = mods; _i < mods_1.length; _i++) {
var mod = mods_1[_i];
_loop_1(mod);
var _a = mods_1[_i], __mod = _a.__mod, __value = _a.__value, __presentInProps = _a.__presentInProps;
allMods[__mod] = allMods[__mod] || [];
// для оптимизации поиска вводим простой массив вместо объекта
allModsPresentProps[__mod] = allModsPresentProps[__mod] || [];
allMods[__mod].push(__value);
allModsPresentProps[__mod].push(__presentInProps);
}

@@ -124,24 +128,16 @@ var modNames = Object.keys(allMods);

var newProps = __assign({}, props);
var _loop_2 = function (key) {
for (var _i = 0, modNames_1 = modNames; _i < modNames_1.length; _i++) {
var key = modNames_1[_i];
var modValues = allMods[key];
var propValue = props[key];
if (modValues.indexOf(propValue) !== -1) {
var foundInValues = modValues.indexOf(propValue);
if (foundInValues !== -1) {
modifiers[key] = propValue;
// если стоит флаг PresentInProps = false, то не добавялем в пропсы
if (!allModsPresentProps[key][foundInValues]) {
delete newProps[key];
}
}
{
Object.defineProperty(newProps, key, {
enumerable: false,
get: function () {
console.warn("Don't use modificator prop:" + key + ", it will be removed soon");
return props[key];
},
});
}
};
for (var _i = 0, modNames_1 = modNames; _i < modNames_1.length; _i++) {
var key = modNames_1[_i];
_loop_2(key);
}
var className = entity(modifiers, [props.className]);
newProps.className = className;
newProps.className = entity(modifiers, [props.className]);
return react.createElement(Base, newProps);

@@ -148,0 +144,0 @@ };

@@ -1,1 +0,1 @@

'use strict';function e(e){for(var r={},c=t.cn(e[0].__blockName),o=function(e){Object.keys(e.__mod).forEach(function(n){r[n]=r[n]||[],r[n].push(e.__mod[n])})},u=0,s=e;u<s.length;u++)o(s[u]);var i=Object.keys(r);return function(e){return function(t){for(var o={},u=a({},t),s=function(e){var n=t[e];-1!==r[e].indexOf(n)&&(o[e]=n),Object.defineProperty(u,e,{enumerable:0})},l=0,f=i;l<f.length;l++)s(f[l]);var m=c(o,[t.className]);return u.className=m,n.createElement(e,u)}}}function r(){for(var r=[],n=[],t=0,c=[].slice.call(arguments);t<c.length;t++){var a=c[t];a.__isSimple?r.push(a):n.push(a)}return(r.length?[e(r)].concat(n):n).reduce(function(e,r){return function(){return e(r.apply(0,arguments))}},function(e){return e})}Object.defineProperty(exports,'__esModule',{value:1});var n=require('react'),t=require('@bem-react/classname'),c=require('@bem-react/classnames'),a=function(){return(a=Object.assign||function(e){for(var r,n=1,t=arguments.length;n<t;n++)for(var c in r=arguments[n])({}).hasOwnProperty.call(r,c)&&(e[c]=r[c]);return e}).apply(this,arguments)};exports.compose=r,exports.composeU=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return r.apply(void 0,e)},exports.withBemMod=function(e,r,a){var o,u,s,i=function(i){var l,f;return o=o||t.cn(e),u=u||o(),function(e){if((s=s||Object.keys(r)).every(function(n){var t=r[n],c=e[n];return t===c||'*'===t&&Boolean(c)})){var t=s.reduce(function(e,n){return'*'!==r[n]&&(e[n]=r[n]),e},{});f=f||o(t);var m=Object.assign({},e);return m.className=c.classnames(f,e.className).replace(u+" ",''),void 0!==a?void 0===l&&(l=a(i)):l=i,n.createElement(l,m)}return n.createElement(i,e)}};return i.__blockName=e,i.__mod=r,i.__isSimple=!a,i};
'use strict';function e(e){for(var r={},a={},c=t.cn(e[0].__blockName),s=0,u=e;s<u.length;s++){var l=u[s],i=l.__mod,p=l.__value,f=l.__presentInProps;r[i]=r[i]||[],a[i]=a[i]||[],r[i].push(p),a[i].push(f)}var v=Object.keys(r);return function(e){return function(t){for(var s={},u=o({},t),l=0,i=v;l<i.length;l++){var p=i[l],f=t[p],_=r[p].indexOf(f);-1!==_&&(s[p]=f,a[p][_]||delete u[p])}return u.className=c(s,[t.className]),n.createElement(e,u)}}}function r(){for(var r=[],n=[],t=0,a=[].slice.call(arguments);t<a.length;t++){var o=a[t];o.__isSimple?r.push(o):n.push(o)}return(r.length?[e(r)].concat(n):n).reduce(function(e,r){return function(){return e(r.apply(0,arguments))}},function(e){return e})}Object.defineProperty(exports,'__esModule',{value:1});var n=require('react'),t=require('@bem-react/classname'),a=require('@bem-react/classnames'),o=function(){return(o=Object.assign||function(e){for(var r,n=1,t=arguments.length;n<t;n++)for(var a in r=arguments[n])({}).hasOwnProperty.call(r,a)&&(e[a]=r[a]);return e}).apply(this,arguments)};exports.compose=r,exports.composeU=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return r.apply(void 0,e)},exports.withBemMod=function(e,r,o){var c,s,u;void 0===o&&(o=1);var l=function(l){var i,p;return c=c||t.cn(e),s=s||c(),function(e){if((u=u||Object.keys(r)).every(function(n){var t=r[n],a=e[n];return t===a||'*'===t&&Boolean(a)})){var t=u.reduce(function(e,n){return'*'!==r[n]&&(e[n]=r[n]),e},{});p=p||c(t);var f=Object.assign({},e);return f.className=a.classnames(p,e.className).replace(s+" ",''),void 0!==o&&'boolean'!=typeof o?void 0===i&&(i=o(l)):i=l,n.createElement(i,f)}return n.createElement(l,e)}},i=Object.keys(r),p=1===i.length&&'boolean'!=typeof o?!o:1;return l.__blockName=e,l.__mod=i[0],l.__value=r[i[0]],l.__isSimple=p,l.__presentInProps=o,l};

@@ -7,7 +7,10 @@ import { ComponentType, StatelessComponent } from 'react';

export declare type Enhance<T extends IClassNameProps> = (WrappedComponent: ComponentType<T>) => ComponentType<T>;
export declare function withBemMod<T, U extends IClassNameProps = {}>(blockName: string, mod: NoStrictEntityMods, enhance?: Enhance<T & U>): {
declare type PresentInProps = boolean;
export declare function withBemMod<T, U extends IClassNameProps = {}>(blockName: string, mod: NoStrictEntityMods, enhance?: Enhance<T & U> | PresentInProps): {
<K extends IClassNameProps = {}>(WrappedComponent: ComponentType<T & K>): (props: T & K) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, string | any | (new (props: any) => import("react").Component<any, any, any>)> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
__blockName: string;
__mod: Record<string, string | number | boolean | undefined>;
__mod: string;
__value: string | number | boolean | undefined;
__isSimple: boolean;
__presentInProps: boolean | Enhance<T & U>;
};

@@ -14,0 +17,0 @@ export declare type ExtractProps<T> = T extends ComponentType<infer K> ? {

{
"name": "@bem-react/core",
"version": "2.0.11-dev.1+40cec2c",
"version": "2.0.11-dev.2+8b65208",
"description": "BEM React Core",

@@ -51,3 +51,3 @@ "homepage": "https://github.com/bem/bem-react/tree/master/packages/core",

},
"gitHead": "40cec2c96f57f7b4927af00834a6de9fdb197d5f"
"gitHead": "8b65208ad831a87676433b97b935a33a9416e2b3"
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc