Socket
Socket
Sign inDemoInstall

rc-tree-select

Package Overview
Dependencies
Maintainers
2
Versions
259
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rc-tree-select - npm Package Compare versions

Comparing version 1.1.6 to 1.2.0

3

lib/Select.js

@@ -332,3 +332,4 @@ 'use strict';

extraInfo.checked = info.checked;
extraInfo.allCheckedNodes = info.checkedNodes;
// extraInfo.allCheckedNodes = info.checkedNodes;
extraInfo.allCheckedNodes = (0, _util.flatToHierarchy)(info.checkedNodesPositions);
} else {

@@ -335,0 +336,0 @@ extraInfo.selected = info.selected;

@@ -137,3 +137,3 @@ 'use strict';

});
posArr = (0, _util.filterMinPos)(posArr);
posArr = (0, _util.filterMinPosition)(posArr);

@@ -140,0 +140,0 @@ var filterChildren = {};

@@ -15,3 +15,4 @@ 'use strict';

exports.loopAllChildren = loopAllChildren;
exports.filterMinPos = filterMinPos;
exports.flatToHierarchy = flatToHierarchy;
exports.filterMinPosition = filterMinPosition;
exports.getTreeNodesStates = getTreeNodesStates;

@@ -121,3 +122,39 @@

function filterMinPos(arr) {
function flatToHierarchy(arr) {
var hierarchyNodes = [];
var levelObj = {};
arr.forEach(function (item) {
var posLen = item.pos.split('-').length;
if (!levelObj[posLen]) {
levelObj[posLen] = [];
}
levelObj[posLen].push(item);
});
var levelArr = Object.keys(levelObj).sort(function (a, b) {
return b - a;
});
levelArr.reduce(function (pre, cur) {
if (cur && cur !== pre) {
levelObj[pre].forEach(function (item) {
var haveParent = false;
levelObj[cur].forEach(function (ii) {
if (isInclude(ii.pos.split('-'), item.pos.split('-'))) {
haveParent = true;
if (!ii.children) {
ii.children = [];
}
ii.children.push(item);
}
});
if (!haveParent) {
hierarchyNodes.push(item);
}
});
}
return cur;
});
return levelObj[levelArr[levelArr.length - 1]].concat(hierarchyNodes);
}
function filterMinPosition(arr) {
var a = [];

@@ -135,3 +172,3 @@ arr.forEach(function (item) {

// console.log(filterMinPos(['0-0','0-1', '0-10', '0-0-1', '0-1-1', '0-10-0']));
// console.log(filterMinPosition(['0-1', '0-10', '0-0-1', '0-1-1', '0-10-0']));

@@ -227,5 +264,5 @@ function handleCheckState(obj, checkedPosArr, checkIt) {

handleCheckState(treeNodesStates, filterMinPos(checkedPos.sort()), true);
handleCheckState(treeNodesStates, filterMinPosition(checkedPos.sort()), true);
return getCheckValues(treeNodesStates);
}
{
"name": "rc-tree-select",
"version": "1.1.6",
"version": "1.2.0",
"description": "tree-select ui component for react",

@@ -5,0 +5,0 @@ "keywords": [

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