Socket
Socket
Sign inDemoInstall

rc-tree-select

Package Overview
Dependencies
Maintainers
7
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 5.7.0 to 5.8.0

5

es/hooks/useCache.js
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import * as React from 'react';
/**

@@ -17,6 +16,6 @@ * This function will try to call requestIdleCallback if available to save performance.

var _item$label;
var value = item.value;
var mergedLabel = (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : valueLabels.get(value); // Save in cache
var mergedLabel = (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : valueLabels.get(value);
// Save in cache
valueLabelsCache.set(value, mergedLabel);

@@ -23,0 +22,0 @@ return _objectSpread(_objectSpread({}, item), {}, {

9

es/hooks/useCheckedKeys.js

@@ -17,14 +17,13 @@ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";

});
if (treeConduction) {
var _conductCheck = conductCheck(checkedKeys, true, keyEntities);
checkedKeys = _conductCheck.checkedKeys;
halfCheckedKeys = _conductCheck.halfCheckedKeys;
}
return [// Checked keys should fill with missing keys which should de-duplicated
Array.from(new Set([].concat(_toConsumableArray(missingValues), _toConsumableArray(checkedKeys)))), // Half checked keys
return [
// Checked keys should fill with missing keys which should de-duplicated
Array.from(new Set([].concat(_toConsumableArray(missingValues), _toConsumableArray(checkedKeys)))),
// Half checked keys
halfCheckedKeys];
}, [rawLabeledValues, rawHalfCheckedValues, treeConduction, keyEntities]);
});

@@ -16,4 +16,5 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";

processEntity: function processEntity(entity, wrapper) {
var val = entity.node[fieldNames.value]; // Check if exist same value
var val = entity.node[fieldNames.value];
// Check if exist same value
if (process.env.NODE_ENV !== 'production') {

@@ -25,3 +26,2 @@ var key = entity.node.key;

}
wrapper.valueEntities.set(val, entity);

@@ -28,0 +28,0 @@ }

@@ -7,4 +7,4 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";

var treeNodeFilterProp = _ref.treeNodeFilterProp,
filterTreeNode = _ref.filterTreeNode,
fieldNames = _ref.fieldNames;
filterTreeNode = _ref.filterTreeNode,
fieldNames = _ref.fieldNames;
var fieldChildren = fieldNames.children;

@@ -15,5 +15,3 @@ return React.useMemo(function () {

}
var filterOptionFunc;
if (typeof filterTreeNode === 'function') {

@@ -23,3 +21,2 @@ filterOptionFunc = filterTreeNode;

var upperStr = searchValue.toUpperCase();
filterOptionFunc = function filterOptionFunc(_, dataNode) {

@@ -30,3 +27,2 @@ var value = dataNode[treeNodeFilterProp];

}
function dig(list) {

@@ -38,3 +34,2 @@ var keepAll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;

var childList = dig(children || [], match);
if (match || childList.length) {

@@ -45,3 +40,2 @@ return _objectSpread(_objectSpread({}, dataNode), {}, _defineProperty({

}
return null;

@@ -52,5 +46,4 @@ }).filter(function (node) {

}
return dig(treeData);
}, [treeData, searchValue, fieldChildren, treeNodeFilterProp, filterTreeNode]);
});
import * as React from 'react';
/**

@@ -6,3 +7,2 @@ * Same as `React.useCallback` but always return a memoized function

*/
export default function useRefFunc(callback) {

@@ -9,0 +9,0 @@ var funcRef = React.useRef();

import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import * as React from 'react';
import { convertChildrenToData } from "../utils/legacyUtil";
function parseSimpleTreeData(treeData, _ref) {
var id = _ref.id,
pId = _ref.pId,
rootPId = _ref.rootPId;
pId = _ref.pId,
rootPId = _ref.rootPId;
var keyNodes = {};
var rootNodeList = []; // Fill in the map
var rootNodeList = [];
// Fill in the map
var nodeList = treeData.map(function (node) {
var clone = _objectSpread({}, node);
var key = clone[id];

@@ -19,14 +18,16 @@ keyNodes[key] = clone;

return clone;
}); // Connect tree
});
// Connect tree
nodeList.forEach(function (node) {
var parentKey = node[pId];
var parent = keyNodes[parentKey]; // Fill parent
var parent = keyNodes[parentKey];
// Fill parent
if (parent) {
parent.children = parent.children || [];
parent.children.push(node);
} // Fill root tree node
}
// Fill root tree node
if (parentKey === rootPId || !parent && rootPId === null) {

@@ -38,2 +39,3 @@ rootNodeList.push(node);

}
/**

@@ -43,4 +45,2 @@ * Convert `treeData` or `children` into formatted `treeData`.

*/
export default function useTreeData(treeData, children, simpleMode) {

@@ -55,5 +55,4 @@ return React.useMemo(function () {

}
return convertChildrenToData(children);
}, [children, simpleMode, treeData]);
}

@@ -22,41 +22,37 @@ import _extends from "@babel/runtime/helpers/esm/extends";

};
var OptionList = function OptionList(_, ref) {
var _useBaseProps = useBaseProps(),
prefixCls = _useBaseProps.prefixCls,
multiple = _useBaseProps.multiple,
searchValue = _useBaseProps.searchValue,
toggleOpen = _useBaseProps.toggleOpen,
open = _useBaseProps.open,
notFoundContent = _useBaseProps.notFoundContent;
prefixCls = _useBaseProps.prefixCls,
multiple = _useBaseProps.multiple,
searchValue = _useBaseProps.searchValue,
toggleOpen = _useBaseProps.toggleOpen,
open = _useBaseProps.open,
notFoundContent = _useBaseProps.notFoundContent;
var _React$useContext = React.useContext(TreeSelectContext),
virtual = _React$useContext.virtual,
listHeight = _React$useContext.listHeight,
listItemHeight = _React$useContext.listItemHeight,
treeData = _React$useContext.treeData,
fieldNames = _React$useContext.fieldNames,
onSelect = _React$useContext.onSelect,
dropdownMatchSelectWidth = _React$useContext.dropdownMatchSelectWidth,
treeExpandAction = _React$useContext.treeExpandAction;
virtual = _React$useContext.virtual,
listHeight = _React$useContext.listHeight,
listItemHeight = _React$useContext.listItemHeight,
treeData = _React$useContext.treeData,
fieldNames = _React$useContext.fieldNames,
onSelect = _React$useContext.onSelect,
dropdownMatchSelectWidth = _React$useContext.dropdownMatchSelectWidth,
treeExpandAction = _React$useContext.treeExpandAction;
var _React$useContext2 = React.useContext(LegacyContext),
checkable = _React$useContext2.checkable,
checkedKeys = _React$useContext2.checkedKeys,
halfCheckedKeys = _React$useContext2.halfCheckedKeys,
treeExpandedKeys = _React$useContext2.treeExpandedKeys,
treeDefaultExpandAll = _React$useContext2.treeDefaultExpandAll,
treeDefaultExpandedKeys = _React$useContext2.treeDefaultExpandedKeys,
onTreeExpand = _React$useContext2.onTreeExpand,
treeIcon = _React$useContext2.treeIcon,
showTreeIcon = _React$useContext2.showTreeIcon,
switcherIcon = _React$useContext2.switcherIcon,
treeLine = _React$useContext2.treeLine,
treeNodeFilterProp = _React$useContext2.treeNodeFilterProp,
loadData = _React$useContext2.loadData,
treeLoadedKeys = _React$useContext2.treeLoadedKeys,
treeMotion = _React$useContext2.treeMotion,
onTreeLoad = _React$useContext2.onTreeLoad,
keyEntities = _React$useContext2.keyEntities;
checkable = _React$useContext2.checkable,
checkedKeys = _React$useContext2.checkedKeys,
halfCheckedKeys = _React$useContext2.halfCheckedKeys,
treeExpandedKeys = _React$useContext2.treeExpandedKeys,
treeDefaultExpandAll = _React$useContext2.treeDefaultExpandAll,
treeDefaultExpandedKeys = _React$useContext2.treeDefaultExpandedKeys,
onTreeExpand = _React$useContext2.onTreeExpand,
treeIcon = _React$useContext2.treeIcon,
showTreeIcon = _React$useContext2.showTreeIcon,
switcherIcon = _React$useContext2.switcherIcon,
treeLine = _React$useContext2.treeLine,
treeNodeFilterProp = _React$useContext2.treeNodeFilterProp,
loadData = _React$useContext2.loadData,
treeLoadedKeys = _React$useContext2.treeLoadedKeys,
treeMotion = _React$useContext2.treeMotion,
onTreeLoad = _React$useContext2.onTreeLoad,
keyEntities = _React$useContext2.keyEntities;
var treeRef = React.useRef();

@@ -67,4 +63,5 @@ var memoTreeData = useMemo(function () {

return next[0] && prev[1] !== next[1];
}); // ========================== Values ==========================
});
// ========================== Values ==========================
var mergedCheckedKeys = React.useMemo(function () {

@@ -74,3 +71,2 @@ if (!checkable) {

}
return {

@@ -80,4 +76,5 @@ checked: checkedKeys,

};
}, [checkable, checkedKeys, halfCheckedKeys]); // ========================== Scroll ==========================
}, [checkable, checkedKeys, halfCheckedKeys]);
// ========================== Scroll ==========================
React.useEffect(function () {

@@ -87,3 +84,2 @@ // Single mode should scroll to current key

var _treeRef$current;
(_treeRef$current = treeRef.current) === null || _treeRef$current === void 0 ? void 0 : _treeRef$current.scrollTo({

@@ -93,6 +89,6 @@ key: checkedKeys[0]

}
}, [open]); // ========================== Search ==========================
}, [open]);
// ========================== Search ==========================
var lowerSearchValue = String(searchValue).toLowerCase();
var filterTreeNode = function filterTreeNode(treeNode) {

@@ -102,17 +98,14 @@ if (!lowerSearchValue) {

}
return String(treeNode[treeNodeFilterProp]).toLowerCase().includes(lowerSearchValue);
}; // =========================== Keys ===========================
};
// =========================== Keys ===========================
var _React$useState = React.useState(treeDefaultExpandedKeys),
_React$useState2 = _slicedToArray(_React$useState, 2),
expandedKeys = _React$useState2[0],
setExpandedKeys = _React$useState2[1];
_React$useState2 = _slicedToArray(_React$useState, 2),
expandedKeys = _React$useState2[0],
setExpandedKeys = _React$useState2[1];
var _React$useState3 = React.useState(null),
_React$useState4 = _slicedToArray(_React$useState3, 2),
searchExpandedKeys = _React$useState4[0],
setSearchExpandedKeys = _React$useState4[1];
_React$useState4 = _slicedToArray(_React$useState3, 2),
searchExpandedKeys = _React$useState4[0],
setSearchExpandedKeys = _React$useState4[1];
var mergedExpandedKeys = React.useMemo(function () {

@@ -122,3 +115,2 @@ if (treeExpandedKeys) {

}
return searchValue ? searchExpandedKeys : expandedKeys;

@@ -131,43 +123,35 @@ }, [expandedKeys, searchExpandedKeys, treeExpandedKeys, searchValue]);

}, [searchValue]);
var onInternalExpand = function onInternalExpand(keys) {
setExpandedKeys(keys);
setSearchExpandedKeys(keys);
if (onTreeExpand) {
onTreeExpand(keys);
}
}; // ========================== Events ==========================
};
// ========================== Events ==========================
var onListMouseDown = function onListMouseDown(event) {
event.preventDefault();
};
var onInternalSelect = function onInternalSelect(__, info) {
var node = info.node;
if (checkable && isCheckDisabled(node)) {
return;
}
onSelect(node.key, {
selected: !checkedKeys.includes(node.key)
});
if (!multiple) {
toggleOpen(false);
}
}; // ========================= Keyboard =========================
};
// ========================= Keyboard =========================
var _React$useState5 = React.useState(null),
_React$useState6 = _slicedToArray(_React$useState5, 2),
activeKey = _React$useState6[0],
setActiveKey = _React$useState6[1];
_React$useState6 = _slicedToArray(_React$useState5, 2),
activeKey = _React$useState6[0],
setActiveKey = _React$useState6[1];
var activeEntity = keyEntities[activeKey];
React.useImperativeHandle(ref, function () {
var _treeRef$current2;
return {

@@ -177,5 +161,3 @@ scrollTo: (_treeRef$current2 = treeRef.current) === null || _treeRef$current2 === void 0 ? void 0 : _treeRef$current2.scrollTo,

var _treeRef$current3;
var which = event.which;
switch (which) {

@@ -189,4 +171,4 @@ // >>> Arrow keys

break;
// >>> Select item
case KeyCode.ENTER:

@@ -196,5 +178,4 @@ {

var _ref = (activeEntity === null || activeEntity === void 0 ? void 0 : activeEntity.node) || {},
selectable = _ref.selectable,
value = _ref.value;
selectable = _ref.selectable,
value = _ref.value;
if (selectable !== false) {

@@ -209,7 +190,6 @@ onInternalSelect(null, {

}
break;
}
// >>> Close
case KeyCode.ESC:

@@ -223,4 +203,5 @@ {

};
}); // ========================== Render ==========================
});
// ========================== Render ==========================
if (memoTreeData.length === 0) {

@@ -233,15 +214,11 @@ return /*#__PURE__*/React.createElement("div", {

}
var treeProps = {
fieldNames: fieldNames
};
if (treeLoadedKeys) {
treeProps.loadedKeys = treeLoadedKeys;
}
if (mergedExpandedKeys) {
treeProps.expandedKeys = mergedExpandedKeys;
}
return /*#__PURE__*/React.createElement("div", {

@@ -267,3 +244,4 @@ onMouseDown: onListMouseDown

motion: treeMotion,
activeKey: activeKey // We handle keys by out instead tree self
activeKey: activeKey
// We handle keys by out instead tree self
,

@@ -286,5 +264,4 @@ checkable: checkable,

};
var RefOptionList = /*#__PURE__*/React.forwardRef(OptionList);
RefOptionList.displayName = 'OptionList';
export default RefOptionList;

@@ -7,3 +7,2 @@ /* istanbul ignore file */

};
export default TreeNode;

@@ -28,58 +28,55 @@ import _extends from "@babel/runtime/helpers/esm/extends";

import warning from "rc-util/es/warning";
function isRawValue(value) {
return !value || _typeof(value) !== 'object';
}
var TreeSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
var id = props.id,
_props$prefixCls = props.prefixCls,
prefixCls = _props$prefixCls === void 0 ? 'rc-tree-select' : _props$prefixCls,
value = props.value,
defaultValue = props.defaultValue,
onChange = props.onChange,
onSelect = props.onSelect,
onDeselect = props.onDeselect,
searchValue = props.searchValue,
inputValue = props.inputValue,
onSearch = props.onSearch,
_props$autoClearSearc = props.autoClearSearchValue,
autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,
filterTreeNode = props.filterTreeNode,
_props$treeNodeFilter = props.treeNodeFilterProp,
treeNodeFilterProp = _props$treeNodeFilter === void 0 ? 'value' : _props$treeNodeFilter,
_props$showCheckedStr = props.showCheckedStrategy,
showCheckedStrategy = _props$showCheckedStr === void 0 ? SHOW_CHILD : _props$showCheckedStr,
treeNodeLabelProp = props.treeNodeLabelProp,
multiple = props.multiple,
treeCheckable = props.treeCheckable,
treeCheckStrictly = props.treeCheckStrictly,
labelInValue = props.labelInValue,
fieldNames = props.fieldNames,
treeDataSimpleMode = props.treeDataSimpleMode,
treeData = props.treeData,
children = props.children,
loadData = props.loadData,
treeLoadedKeys = props.treeLoadedKeys,
onTreeLoad = props.onTreeLoad,
treeDefaultExpandAll = props.treeDefaultExpandAll,
treeExpandedKeys = props.treeExpandedKeys,
treeDefaultExpandedKeys = props.treeDefaultExpandedKeys,
onTreeExpand = props.onTreeExpand,
treeExpandAction = props.treeExpandAction,
virtual = props.virtual,
_props$listHeight = props.listHeight,
listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,
_props$listItemHeight = props.listItemHeight,
listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,
onDropdownVisibleChange = props.onDropdownVisibleChange,
_props$dropdownMatchS = props.dropdownMatchSelectWidth,
dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,
treeLine = props.treeLine,
treeIcon = props.treeIcon,
showTreeIcon = props.showTreeIcon,
switcherIcon = props.switcherIcon,
treeMotion = props.treeMotion,
restProps = _objectWithoutProperties(props, _excluded);
_props$prefixCls = props.prefixCls,
prefixCls = _props$prefixCls === void 0 ? 'rc-tree-select' : _props$prefixCls,
value = props.value,
defaultValue = props.defaultValue,
onChange = props.onChange,
onSelect = props.onSelect,
onDeselect = props.onDeselect,
searchValue = props.searchValue,
inputValue = props.inputValue,
onSearch = props.onSearch,
_props$autoClearSearc = props.autoClearSearchValue,
autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,
filterTreeNode = props.filterTreeNode,
_props$treeNodeFilter = props.treeNodeFilterProp,
treeNodeFilterProp = _props$treeNodeFilter === void 0 ? 'value' : _props$treeNodeFilter,
_props$showCheckedStr = props.showCheckedStrategy,
showCheckedStrategy = _props$showCheckedStr === void 0 ? SHOW_CHILD : _props$showCheckedStr,
treeNodeLabelProp = props.treeNodeLabelProp,
multiple = props.multiple,
treeCheckable = props.treeCheckable,
treeCheckStrictly = props.treeCheckStrictly,
labelInValue = props.labelInValue,
fieldNames = props.fieldNames,
treeDataSimpleMode = props.treeDataSimpleMode,
treeData = props.treeData,
children = props.children,
loadData = props.loadData,
treeLoadedKeys = props.treeLoadedKeys,
onTreeLoad = props.onTreeLoad,
treeDefaultExpandAll = props.treeDefaultExpandAll,
treeExpandedKeys = props.treeExpandedKeys,
treeDefaultExpandedKeys = props.treeDefaultExpandedKeys,
onTreeExpand = props.onTreeExpand,
treeExpandAction = props.treeExpandAction,
virtual = props.virtual,
_props$listHeight = props.listHeight,
listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,
_props$listItemHeight = props.listItemHeight,
listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,
onDropdownVisibleChange = props.onDropdownVisibleChange,
_props$dropdownMatchS = props.dropdownMatchSelectWidth,
dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,
treeLine = props.treeLine,
treeIcon = props.treeIcon,
showTreeIcon = props.showTreeIcon,
switcherIcon = props.switcherIcon,
treeMotion = props.treeMotion,
restProps = _objectWithoutProperties(props, _excluded);
var mergedId = useId(id);

@@ -90,55 +87,51 @@ var treeConduction = treeCheckable && !treeCheckStrictly;

var mergedMultiple = mergedCheckable || multiple;
var _useMergedState = useMergedState(defaultValue, {
value: value
}),
_useMergedState2 = _slicedToArray(_useMergedState, 2),
internalValue = _useMergedState2[0],
setInternalValue = _useMergedState2[1]; // ========================== Warning ===========================
value: value
}),
_useMergedState2 = _slicedToArray(_useMergedState, 2),
internalValue = _useMergedState2[0],
setInternalValue = _useMergedState2[1];
// ========================== Warning ===========================
if (process.env.NODE_ENV !== 'production') {
warningProps(props);
} // ========================= FieldNames =========================
}
// ========================= FieldNames =========================
var mergedFieldNames = React.useMemo(function () {
return fillFieldNames(fieldNames);
},
/* eslint-disable react-hooks/exhaustive-deps */
}, /* eslint-disable react-hooks/exhaustive-deps */
[JSON.stringify(fieldNames)]
/* eslint-enable react-hooks/exhaustive-deps */
); // =========================== Search ===========================
/* eslint-enable react-hooks/exhaustive-deps */);
// =========================== Search ===========================
var _useMergedState3 = useMergedState('', {
value: searchValue !== undefined ? searchValue : inputValue,
postState: function postState(search) {
return search || '';
}
}),
_useMergedState4 = _slicedToArray(_useMergedState3, 2),
mergedSearchValue = _useMergedState4[0],
setSearchValue = _useMergedState4[1];
value: searchValue !== undefined ? searchValue : inputValue,
postState: function postState(search) {
return search || '';
}
}),
_useMergedState4 = _slicedToArray(_useMergedState3, 2),
mergedSearchValue = _useMergedState4[0],
setSearchValue = _useMergedState4[1];
var onInternalSearch = function onInternalSearch(searchText) {
setSearchValue(searchText);
onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchText);
}; // ============================ Data ============================
};
// ============================ Data ============================
// `useTreeData` only do convert of `children` or `simpleMode`.
// Else will return origin `treeData` for perf consideration.
// Do not do anything to loop the data.
var mergedTreeData = useTreeData(treeData, children, treeDataSimpleMode);
var _useDataEntities = useDataEntities(mergedTreeData, mergedFieldNames),
keyEntities = _useDataEntities.keyEntities,
valueEntities = _useDataEntities.valueEntities;
var _useDataEntities = useDataEntities(mergedTreeData, mergedFieldNames),
keyEntities = _useDataEntities.keyEntities,
valueEntities = _useDataEntities.valueEntities;
/** Get `missingRawValues` which not exist in the tree yet */
var splitRawValues = React.useCallback(function (newRawValues) {
var missingRawValues = [];
var existRawValues = []; // Keep missing value in the cache
var existRawValues = [];
// Keep missing value in the cache
newRawValues.forEach(function (val) {

@@ -155,4 +148,5 @@ if (valueEntities.has(val)) {

};
}, [valueEntities]); // Filtered Tree
}, [valueEntities]);
// Filtered Tree
var filteredTreeData = useFilterTreeData(mergedTreeData, mergedSearchValue, {

@@ -162,4 +156,5 @@ fieldNames: mergedFieldNames,

filterTreeNode: filterTreeNode
}); // =========================== Label ============================
});
// =========================== Label ============================
var getLabel = React.useCallback(function (item) {

@@ -169,10 +164,8 @@ if (item) {

return item[treeNodeLabelProp];
} // Loop from fieldNames
}
// Loop from fieldNames
var titleList = mergedFieldNames._title;
for (var i = 0; i < titleList.length; i += 1) {
var title = item[titleList[i]];
if (title !== undefined) {

@@ -183,4 +176,5 @@ return title;

}
}, [mergedFieldNames, treeNodeLabelProp]); // ========================= Wrap Value =========================
}, [mergedFieldNames, treeNodeLabelProp]);
// ========================= Wrap Value =========================
var toLabeledValues = React.useCallback(function (draftValues) {

@@ -194,3 +188,2 @@ var values = toArray(draftValues);

}
return val;

@@ -204,9 +197,9 @@ });

var rawValue = item.value,
rawHalfChecked = item.halfChecked;
rawHalfChecked = item.halfChecked;
var rawDisabled;
var entity = valueEntities.get(rawValue); // Fill missing label & status
var entity = valueEntities.get(rawValue);
// Fill missing label & status
if (entity) {
var _rawLabel;
rawLabel = (_rawLabel = rawLabel) !== null && _rawLabel !== void 0 ? _rawLabel : getLabel(entity.node);

@@ -221,3 +214,2 @@ rawDisabled = entity.node.disabled;

}
return {

@@ -230,25 +222,27 @@ label: rawLabel,

});
}, [valueEntities, getLabel, toLabeledValues, internalValue]); // =========================== Values ===========================
}, [valueEntities, getLabel, toLabeledValues, internalValue]);
// =========================== Values ===========================
var rawMixedLabeledValues = React.useMemo(function () {
return toLabeledValues(internalValue);
}, [toLabeledValues, internalValue]); // Split value into full check and half check
}, [toLabeledValues, internalValue]);
// Split value into full check and half check
var _React$useMemo = React.useMemo(function () {
var fullCheckValues = [];
var halfCheckValues = [];
rawMixedLabeledValues.forEach(function (item) {
if (item.halfChecked) {
halfCheckValues.push(item);
} else {
fullCheckValues.push(item);
}
});
return [fullCheckValues, halfCheckValues];
}, [rawMixedLabeledValues]),
_React$useMemo2 = _slicedToArray(_React$useMemo, 2),
rawLabeledValues = _React$useMemo2[0],
rawHalfLabeledValues = _React$useMemo2[1]; // const [mergedValues] = useCache(rawLabeledValues);
var fullCheckValues = [];
var halfCheckValues = [];
rawMixedLabeledValues.forEach(function (item) {
if (item.halfChecked) {
halfCheckValues.push(item);
} else {
fullCheckValues.push(item);
}
});
return [fullCheckValues, halfCheckValues];
}, [rawMixedLabeledValues]),
_React$useMemo2 = _slicedToArray(_React$useMemo, 2),
rawLabeledValues = _React$useMemo2[0],
rawHalfLabeledValues = _React$useMemo2[1];
// const [mergedValues] = useCache(rawLabeledValues);
var rawValues = React.useMemo(function () {

@@ -258,20 +252,22 @@ return rawLabeledValues.map(function (item) {

});
}, [rawLabeledValues]); // Convert value to key. Will fill missed keys for conduct check.
}, [rawLabeledValues]);
// Convert value to key. Will fill missed keys for conduct check.
var _useCheckedKeys = useCheckedKeys(rawLabeledValues, rawHalfLabeledValues, treeConduction, keyEntities),
_useCheckedKeys2 = _slicedToArray(_useCheckedKeys, 2),
rawCheckedValues = _useCheckedKeys2[0],
rawHalfCheckedValues = _useCheckedKeys2[1]; // Convert rawCheckedKeys to check strategy related values
_useCheckedKeys2 = _slicedToArray(_useCheckedKeys, 2),
rawCheckedValues = _useCheckedKeys2[0],
rawHalfCheckedValues = _useCheckedKeys2[1];
// Convert rawCheckedKeys to check strategy related values
var displayValues = React.useMemo(function () {
// Collect keys which need to show
var displayKeys = formatStrategyValues(rawCheckedValues, showCheckedStrategy, keyEntities, mergedFieldNames); // Convert to value and filled with label
var displayKeys = formatStrategyValues(rawCheckedValues, showCheckedStrategy, keyEntities, mergedFieldNames);
// Convert to value and filled with label
var values = displayKeys.map(function (key) {
var _keyEntities$key$node, _keyEntities$key, _keyEntities$key$node2;
return (_keyEntities$key$node = (_keyEntities$key = keyEntities[key]) === null || _keyEntities$key === void 0 ? void 0 : (_keyEntities$key$node2 = _keyEntities$key.node) === null || _keyEntities$key$node2 === void 0 ? void 0 : _keyEntities$key$node2[mergedFieldNames.value]) !== null && _keyEntities$key$node !== void 0 ? _keyEntities$key$node : key;
}); // Back fill with origin label
});
// Back fill with origin label
var labeledValues = values.map(function (val) {

@@ -288,10 +284,7 @@ var targetItem = rawLabeledValues.find(function (item) {

var firstVal = rawDisplayValues[0];
if (!mergedMultiple && firstVal && isNil(firstVal.value) && isNil(firstVal.label)) {
return [];
}
return rawDisplayValues.map(function (item) {
var _item$label;
return _objectSpread(_objectSpread({}, item), {}, {

@@ -302,20 +295,19 @@ label: (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : item.value

}, [mergedFieldNames, mergedMultiple, rawCheckedValues, rawLabeledValues, convert2LabelValues, showCheckedStrategy, keyEntities]);
var _useCache = useCache(displayValues),
_useCache2 = _slicedToArray(_useCache, 1),
cachedDisplayValues = _useCache2[0]; // =========================== Change ===========================
_useCache2 = _slicedToArray(_useCache, 1),
cachedDisplayValues = _useCache2[0];
// =========================== Change ===========================
var triggerChange = useRefFunc(function (newRawValues, extra, source) {
var labeledValues = convert2LabelValues(newRawValues);
setInternalValue(labeledValues); // Clean up if needed
setInternalValue(labeledValues);
// Clean up if needed
if (autoClearSearchValue) {
setSearchValue('');
} // Generate rest parameters is costly, so only do it when necessary
}
// Generate rest parameters is costly, so only do it when necessary
if (onChange) {
var eventValues = newRawValues;
if (treeConduction) {

@@ -328,12 +320,11 @@ var formattedKeyList = formatStrategyValues(newRawValues, showCheckedStrategy, keyEntities, mergedFieldNames);

}
var _ref = extra || {
triggerValue: undefined,
selected: undefined
},
triggerValue = _ref.triggerValue,
selected = _ref.selected;
triggerValue: undefined,
selected: undefined
},
triggerValue = _ref.triggerValue,
selected = _ref.selected;
var returnRawValues = eventValues;
var returnRawValues = eventValues; // We need fill half check back
// We need fill half check back
if (treeCheckStrictly) {

@@ -345,3 +336,2 @@ var halfValues = rawHalfLabeledValues.filter(function (item) {

}
var returnLabeledValues = convert2LabelValues(returnRawValues);

@@ -352,14 +342,12 @@ var additionalInfo = {

triggerValue: triggerValue
}; // [Legacy] Fill legacy data if user query.
};
// [Legacy] Fill legacy data if user query.
// This is expansive that we only fill when user query
// https://github.com/react-component/tree-select/blob/fe33eb7c27830c9ac70cd1fdb1ebbe7bc679c16a/src/Select.jsx
var showPosition = true;
if (treeCheckStrictly || source === 'selection' && !selected) {
showPosition = false;
}
fillAdditionalInfo(additionalInfo, triggerValue, newRawValues, mergedTreeData, showPosition, mergedFieldNames);
if (mergedCheckable) {

@@ -370,3 +358,2 @@ additionalInfo.checked = selected;

}
var returnValues = mergedLabelInValue ? returnLabeledValues : returnLabeledValues.map(function (item) {

@@ -379,15 +366,15 @@ return item.value;

}
}); // ========================== Options ===========================
});
// ========================== Options ===========================
/** Trigger by option list */
var onOptionSelect = React.useCallback(function (selectedKey, _ref2) {
var _node$mergedFieldName;
var selected = _ref2.selected,
source = _ref2.source;
source = _ref2.source;
var entity = keyEntities[selectedKey];
var node = entity === null || entity === void 0 ? void 0 : entity.node;
var selectedValue = (_node$mergedFieldName = node === null || node === void 0 ? void 0 : node[mergedFieldNames.value]) !== null && _node$mergedFieldName !== void 0 ? _node$mergedFieldName : selectedKey; // Never be falsy but keep it safe
var selectedValue = (_node$mergedFieldName = node === null || node === void 0 ? void 0 : node[mergedFieldNames.value]) !== null && _node$mergedFieldName !== void 0 ? _node$mergedFieldName : selectedKey;
// Never be falsy but keep it safe
if (!mergedMultiple) {

@@ -402,19 +389,18 @@ // Single mode always set value

return v !== selectedValue;
}); // Add keys if tree conduction
});
// Add keys if tree conduction
if (treeConduction) {
// Should keep missing values
var _splitRawValues = splitRawValues(newRawValues),
missingRawValues = _splitRawValues.missingRawValues,
existRawValues = _splitRawValues.existRawValues;
missingRawValues = _splitRawValues.missingRawValues,
existRawValues = _splitRawValues.existRawValues;
var keyList = existRawValues.map(function (val) {
return valueEntities.get(val).key;
}); // Conduction by selected or not
});
// Conduction by selected or not
var checkedKeys;
if (selected) {
var _conductCheck = conductCheck(keyList, true, keyEntities);
checkedKeys = _conductCheck.checkedKeys;

@@ -426,7 +412,6 @@ } else {

}, keyEntities);
checkedKeys = _conductCheck2.checkedKeys;
} // Fill back of keys
}
// Fill back of keys
newRawValues = [].concat(_toConsumableArray(missingRawValues), _toConsumableArray(checkedKeys.map(function (key) {

@@ -436,3 +421,2 @@ return keyEntities[key].node[mergedFieldNames.value];

}
triggerChange(newRawValues, {

@@ -442,5 +426,5 @@ selected: selected,

}, source || 'option');
} // Trigger select event
}
// Trigger select event
if (selected || !mergedMultiple) {

@@ -451,4 +435,5 @@ onSelect === null || onSelect === void 0 ? void 0 : onSelect(selectedValue, fillLegacyProps(node));

}
}, [splitRawValues, valueEntities, keyEntities, mergedFieldNames, mergedMultiple, rawValues, triggerChange, treeConduction, onSelect, onDeselect, rawCheckedValues, rawHalfCheckedValues]); // ========================== Dropdown ==========================
}, [splitRawValues, valueEntities, keyEntities, mergedFieldNames, mergedMultiple, rawValues, triggerChange, treeConduction, onSelect, onDeselect, rawCheckedValues, rawHalfCheckedValues]);
// ========================== Dropdown ==========================
var onInternalDropdownVisibleChange = React.useCallback(function (open) {

@@ -465,4 +450,5 @@ if (onDropdownVisibleChange) {

}
}, [onDropdownVisibleChange]); // ====================== Display Change ========================
}, [onDropdownVisibleChange]);
// ====================== Display Change ========================
var onDisplayValuesChange = useRefFunc(function (newValues, info) {

@@ -472,9 +458,8 @@ var newRawValues = newValues.map(function (item) {

});
if (info.type === 'clear') {
triggerChange(newRawValues, {}, 'selection');
return;
} // TreeSelect only have multiple mode which means display change only has remove
}
// TreeSelect only have multiple mode which means display change only has remove
if (info.values.length) {

@@ -486,4 +471,5 @@ onOptionSelect(info.values[0].value, {

}
}); // ========================== Context ===========================
});
// ========================== Context ===========================
var treeSelectContext = React.useMemo(function () {

@@ -500,4 +486,5 @@ return {

};
}, [virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, filteredTreeData, mergedFieldNames, onOptionSelect, treeExpandAction]); // ======================= Legacy Context =======================
}, [virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, filteredTreeData, mergedFieldNames, onOptionSelect, treeExpandAction]);
// ======================= Legacy Context =======================
var legacyContext = React.useMemo(function () {

@@ -523,4 +510,5 @@ return {

};
}, [mergedCheckable, loadData, treeLoadedKeys, onTreeLoad, rawCheckedValues, rawHalfCheckedValues, treeDefaultExpandAll, treeExpandedKeys, treeDefaultExpandedKeys, onTreeExpand, treeIcon, treeMotion, showTreeIcon, switcherIcon, treeLine, treeNodeFilterProp, keyEntities]); // =========================== Render ===========================
}, [mergedCheckable, loadData, treeLoadedKeys, onTreeLoad, rawCheckedValues, rawHalfCheckedValues, treeDefaultExpandAll, treeExpandedKeys, treeDefaultExpandedKeys, onTreeExpand, treeIcon, treeMotion, showTreeIcon, switcherIcon, treeLine, treeNodeFilterProp, keyEntities]);
// =========================== Render ===========================
return /*#__PURE__*/React.createElement(TreeSelectContext.Provider, {

@@ -536,9 +524,12 @@ value: treeSelectContext

prefixCls: prefixCls,
mode: mergedMultiple ? 'multiple' : undefined // >>> Display Value
mode: mergedMultiple ? 'multiple' : undefined
// >>> Display Value
,
displayValues: cachedDisplayValues,
onDisplayValuesChange: onDisplayValuesChange // >>> Search
onDisplayValuesChange: onDisplayValuesChange
// >>> Search
,
searchValue: mergedSearchValue,
onSearch: onInternalSearch // >>> Options
onSearch: onInternalSearch
// >>> Options
,

@@ -550,8 +541,8 @@ OptionList: OptionList,

}))));
}); // Assign name for Debug
});
// Assign name for Debug
if (process.env.NODE_ENV !== 'production') {
TreeSelect.displayName = 'TreeSelect';
}
var GenericTreeSelect = TreeSelect;

@@ -558,0 +549,0 @@ GenericTreeSelect.TreeNode = TreeNode;

@@ -13,10 +13,8 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";

}
var _ref = node,
key = _ref.key,
_ref$props = _ref.props,
children = _ref$props.children,
value = _ref$props.value,
restProps = _objectWithoutProperties(_ref$props, _excluded);
key = _ref.key,
_ref$props = _ref.props,
children = _ref$props.children,
value = _ref$props.value,
restProps = _objectWithoutProperties(_ref$props, _excluded);
var data = _objectSpread({

@@ -26,9 +24,6 @@ key: key,

}, restProps);
var childData = convertChildrenToData(children);
if (childData.length) {
data.children = childData;
}
return data;

@@ -43,5 +38,3 @@ }).filter(function (data) {

}
var cloneNode = _objectSpread({}, dataNode);
if (!('props' in cloneNode)) {

@@ -55,3 +48,2 @@ Object.defineProperty(cloneNode, 'props', {

}
return cloneNode;

@@ -62,3 +54,2 @@ }

var nodeList = null;
function generateMap() {

@@ -75,8 +66,8 @@ function dig(list) {

return child.node;
})); // Link with trigger node
}));
// Link with trigger node
if (triggerValue === value) {
triggerNode = node;
}
if (included) {

@@ -88,10 +79,7 @@ var checkedNode = {

};
if (!parentIncluded) {
nodeList.push(checkedNode);
}
return checkedNode;
}
return null;

@@ -102,7 +90,7 @@ }).filter(function (node) {

}
if (!nodeList) {
nodeList = [];
dig(treeData); // Sort to keep the checked node length
dig(treeData);
// Sort to keep the checked node length
nodeList.sort(function (_ref2, _ref3) {

@@ -117,3 +105,2 @@ var val1 = _ref2.node.props.value;

}
Object.defineProperty(extra, 'triggerNode', {

@@ -130,7 +117,5 @@ get: function get() {

generateMap();
if (showPosition) {
return nodeList;
}
return nodeList.map(function (_ref4) {

@@ -137,0 +122,0 @@ var node = _ref4.node;

@@ -7,7 +7,5 @@ import { isCheckDisabled } from "./valueUtil";

var valueSet = new Set(values);
if (strategy === SHOW_CHILD) {
return values.filter(function (key) {
var entity = keyEntities[key];
if (entity && entity.children && entity.children.some(function (_ref) {

@@ -22,7 +20,5 @@ var node = _ref.node;

}
return true;
});
}
if (strategy === SHOW_PARENT) {

@@ -32,12 +28,9 @@ return values.filter(function (key) {

var parent = entity ? entity.parent : null;
if (parent && !isCheckDisabled(parent.node) && valueSet.has(parent.key)) {
return false;
}
return true;
});
}
return values;
}

@@ -5,3 +5,2 @@ export function toArray(value) {

}
return value !== undefined ? [value] : [];

@@ -11,6 +10,5 @@ }

var _ref = fieldNames || {},
label = _ref.label,
value = _ref.value,
children = _ref.children;
label = _ref.label,
value = _ref.value,
children = _ref.children;
var mergedValue = value || 'value';

@@ -27,11 +25,9 @@ return {

}
/** Loop fetch all the keys exist in the tree */
export function getAllKeys(treeData, fieldNames) {
var keys = [];
function dig(list) {
list.forEach(function (item) {
var children = item[fieldNames.children];
if (children) {

@@ -43,3 +39,2 @@ keys.push(item[fieldNames.value]);

}
dig(treeData);

@@ -46,0 +41,0 @@ return keys;

import _typeof from "@babel/runtime/helpers/esm/typeof";
import warning from "rc-util/es/warning";
import { toArray } from "./valueUtil";
function warningProps(props) {
var searchPlaceholder = props.searchPlaceholder,
treeCheckStrictly = props.treeCheckStrictly,
treeCheckable = props.treeCheckable,
labelInValue = props.labelInValue,
value = props.value,
multiple = props.multiple;
treeCheckStrictly = props.treeCheckStrictly,
treeCheckable = props.treeCheckable,
labelInValue = props.labelInValue,
value = props.value,
multiple = props.multiple;
warning(!searchPlaceholder, '`searchPlaceholder` has been removed.');
if (treeCheckStrictly && labelInValue === false) {
warning(false, '`treeCheckStrictly` will force set `labelInValue` to `true`.');
}
if (labelInValue || treeCheckStrictly) {

@@ -23,3 +20,2 @@ warning(toArray(value).every(function (val) {

}
if (treeCheckStrictly || multiple || treeCheckable) {

@@ -31,3 +27,2 @@ warning(!value || Array.isArray(value), '`value` should be an array when `TreeSelect` is checkable or multiple.');

}
export default warningProps;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,11 +9,6 @@ value: true

exports.default = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var React = _interopRequireWildcard(require("react"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
/**

@@ -34,6 +27,6 @@ * This function will try to call requestIdleCallback if available to save performance.

var _item$label;
var value = item.value;
var mergedLabel = (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : valueLabels.get(value); // Save in cache
var mergedLabel = (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : valueLabels.get(value);
// Save in cache
valueLabelsCache.set(value, mergedLabel);

@@ -48,3 +41,2 @@ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {

};
exports.default = _default;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,13 +9,7 @@ value: true

exports.default = void 0;
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var React = _interopRequireWildcard(require("react"));
var _conductUtil = require("rc-tree/lib/utils/conductUtil");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var _default = function _default(rawLabeledValues, rawHalfCheckedValues, treeConduction, keyEntities) {

@@ -36,16 +28,14 @@ return React.useMemo(function () {

});
if (treeConduction) {
var _conductCheck = (0, _conductUtil.conductCheck)(checkedKeys, true, keyEntities);
checkedKeys = _conductCheck.checkedKeys;
halfCheckedKeys = _conductCheck.halfCheckedKeys;
}
return [// Checked keys should fill with missing keys which should de-duplicated
Array.from(new Set([].concat((0, _toConsumableArray2.default)(missingValues), (0, _toConsumableArray2.default)(checkedKeys)))), // Half checked keys
return [
// Checked keys should fill with missing keys which should de-duplicated
Array.from(new Set([].concat((0, _toConsumableArray2.default)(missingValues), (0, _toConsumableArray2.default)(checkedKeys)))),
// Half checked keys
halfCheckedKeys];
}, [rawLabeledValues, rawHalfCheckedValues, treeConduction, keyEntities]);
};
exports.default = _default;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,17 +9,9 @@ value: true

exports.default = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var React = _interopRequireWildcard(require("react"));
var _treeUtil = require("rc-tree/lib/utils/treeUtil");
var _warning = _interopRequireDefault(require("rc-util/lib/warning"));
var _valueUtil = require("../utils/valueUtil");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var _default = function _default(treeData, fieldNames) {

@@ -37,4 +27,5 @@ return React.useMemo(function () {

processEntity: function processEntity(entity, wrapper) {
var val = entity.node[fieldNames.value]; // Check if exist same value
var val = entity.node[fieldNames.value];
// Check if exist same value
if (process.env.NODE_ENV !== 'production') {

@@ -46,3 +37,2 @@ var key = entity.node.key;

}
wrapper.valueEntities.set(val, entity);

@@ -54,3 +44,2 @@ }

};
exports.default = _default;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,19 +9,12 @@ value: true

exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var React = _interopRequireWildcard(require("react"));
var _legacyUtil = require("../utils/legacyUtil");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var _default = function _default(treeData, searchValue, _ref) {
var treeNodeFilterProp = _ref.treeNodeFilterProp,
filterTreeNode = _ref.filterTreeNode,
fieldNames = _ref.fieldNames;
filterTreeNode = _ref.filterTreeNode,
fieldNames = _ref.fieldNames;
var fieldChildren = fieldNames.children;

@@ -34,5 +25,3 @@ return React.useMemo(function () {

}
var filterOptionFunc;
if (typeof filterTreeNode === 'function') {

@@ -42,3 +31,2 @@ filterOptionFunc = filterTreeNode;

var upperStr = searchValue.toUpperCase();
filterOptionFunc = function filterOptionFunc(_, dataNode) {

@@ -49,3 +37,2 @@ var value = dataNode[treeNodeFilterProp];

}
function dig(list) {

@@ -57,3 +44,2 @@ var keepAll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;

var childList = dig(children || [], match);
if (match || childList.length) {

@@ -64,3 +50,2 @@ return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, dataNode), {}, (0, _defineProperty2.default)({

}
return null;

@@ -71,7 +56,5 @@ }).filter(function (node) {

}
return dig(treeData);
}, [treeData, searchValue, fieldChildren, treeNodeFilterProp, filterTreeNode]);
};
exports.default = _default;
"use strict";
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -9,9 +8,5 @@ value: true

exports.default = useRefFunc;
var React = _interopRequireWildcard(require("react"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
/**

@@ -18,0 +13,0 @@ * Same as `React.useCallback` but always return a memoized function

"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,20 +9,15 @@ value: true

exports.default = useTreeData;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var React = _interopRequireWildcard(require("react"));
var _legacyUtil = require("../utils/legacyUtil");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function parseSimpleTreeData(treeData, _ref) {
var id = _ref.id,
pId = _ref.pId,
rootPId = _ref.rootPId;
pId = _ref.pId,
rootPId = _ref.rootPId;
var keyNodes = {};
var rootNodeList = []; // Fill in the map
var rootNodeList = [];
// Fill in the map
var nodeList = treeData.map(function (node) {

@@ -36,14 +29,16 @@ var clone = (0, _objectSpread2.default)({}, node);

return clone;
}); // Connect tree
});
// Connect tree
nodeList.forEach(function (node) {
var parentKey = node[pId];
var parent = keyNodes[parentKey]; // Fill parent
var parent = keyNodes[parentKey];
// Fill parent
if (parent) {
parent.children = parent.children || [];
parent.children.push(node);
} // Fill root tree node
}
// Fill root tree node
if (parentKey === rootPId || !parent && rootPId === null) {

@@ -55,2 +50,3 @@ rootNodeList.push(node);

}
/**

@@ -60,4 +56,2 @@ * Convert `treeData` or `children` into formatted `treeData`.

*/
function useTreeData(treeData, children, simpleMode) {

@@ -72,5 +66,4 @@ return React.useMemo(function () {

}
return (0, _legacyUtil.convertChildrenToData)(children);
}, [children, simpleMode, treeData]);
}
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {

@@ -33,10 +32,6 @@ value: true

exports.default = void 0;
var _TreeSelect = _interopRequireDefault(require("./TreeSelect"));
var _TreeNode = _interopRequireDefault(require("./TreeNode"));
var _strategyUtil = require("./utils/strategyUtil");
var _default = _TreeSelect.default;
exports.default = _default;
"use strict";
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -9,11 +8,7 @@ value: true

exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var LegacySelectContext = /*#__PURE__*/React.createContext(null);
var _default = LegacySelectContext;
exports.default = _default;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,29 +9,15 @@ value: true

exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var React = _interopRequireWildcard(require("react"));
var _KeyCode = _interopRequireDefault(require("rc-util/lib/KeyCode"));
var _useMemo = _interopRequireDefault(require("rc-util/lib/hooks/useMemo"));
var _rcSelect = require("rc-select");
var _rcTree = _interopRequireDefault(require("rc-tree"));
var _LegacyContext = _interopRequireDefault(require("./LegacyContext"));
var _TreeSelectContext = _interopRequireDefault(require("./TreeSelectContext"));
var _valueUtil = require("./utils/valueUtil");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var HIDDEN_STYLE = {

@@ -49,41 +33,37 @@ width: 0,

};
var OptionList = function OptionList(_, ref) {
var _useBaseProps = (0, _rcSelect.useBaseProps)(),
prefixCls = _useBaseProps.prefixCls,
multiple = _useBaseProps.multiple,
searchValue = _useBaseProps.searchValue,
toggleOpen = _useBaseProps.toggleOpen,
open = _useBaseProps.open,
notFoundContent = _useBaseProps.notFoundContent;
prefixCls = _useBaseProps.prefixCls,
multiple = _useBaseProps.multiple,
searchValue = _useBaseProps.searchValue,
toggleOpen = _useBaseProps.toggleOpen,
open = _useBaseProps.open,
notFoundContent = _useBaseProps.notFoundContent;
var _React$useContext = React.useContext(_TreeSelectContext.default),
virtual = _React$useContext.virtual,
listHeight = _React$useContext.listHeight,
listItemHeight = _React$useContext.listItemHeight,
treeData = _React$useContext.treeData,
fieldNames = _React$useContext.fieldNames,
onSelect = _React$useContext.onSelect,
dropdownMatchSelectWidth = _React$useContext.dropdownMatchSelectWidth,
treeExpandAction = _React$useContext.treeExpandAction;
virtual = _React$useContext.virtual,
listHeight = _React$useContext.listHeight,
listItemHeight = _React$useContext.listItemHeight,
treeData = _React$useContext.treeData,
fieldNames = _React$useContext.fieldNames,
onSelect = _React$useContext.onSelect,
dropdownMatchSelectWidth = _React$useContext.dropdownMatchSelectWidth,
treeExpandAction = _React$useContext.treeExpandAction;
var _React$useContext2 = React.useContext(_LegacyContext.default),
checkable = _React$useContext2.checkable,
checkedKeys = _React$useContext2.checkedKeys,
halfCheckedKeys = _React$useContext2.halfCheckedKeys,
treeExpandedKeys = _React$useContext2.treeExpandedKeys,
treeDefaultExpandAll = _React$useContext2.treeDefaultExpandAll,
treeDefaultExpandedKeys = _React$useContext2.treeDefaultExpandedKeys,
onTreeExpand = _React$useContext2.onTreeExpand,
treeIcon = _React$useContext2.treeIcon,
showTreeIcon = _React$useContext2.showTreeIcon,
switcherIcon = _React$useContext2.switcherIcon,
treeLine = _React$useContext2.treeLine,
treeNodeFilterProp = _React$useContext2.treeNodeFilterProp,
loadData = _React$useContext2.loadData,
treeLoadedKeys = _React$useContext2.treeLoadedKeys,
treeMotion = _React$useContext2.treeMotion,
onTreeLoad = _React$useContext2.onTreeLoad,
keyEntities = _React$useContext2.keyEntities;
checkable = _React$useContext2.checkable,
checkedKeys = _React$useContext2.checkedKeys,
halfCheckedKeys = _React$useContext2.halfCheckedKeys,
treeExpandedKeys = _React$useContext2.treeExpandedKeys,
treeDefaultExpandAll = _React$useContext2.treeDefaultExpandAll,
treeDefaultExpandedKeys = _React$useContext2.treeDefaultExpandedKeys,
onTreeExpand = _React$useContext2.onTreeExpand,
treeIcon = _React$useContext2.treeIcon,
showTreeIcon = _React$useContext2.showTreeIcon,
switcherIcon = _React$useContext2.switcherIcon,
treeLine = _React$useContext2.treeLine,
treeNodeFilterProp = _React$useContext2.treeNodeFilterProp,
loadData = _React$useContext2.loadData,
treeLoadedKeys = _React$useContext2.treeLoadedKeys,
treeMotion = _React$useContext2.treeMotion,
onTreeLoad = _React$useContext2.onTreeLoad,
keyEntities = _React$useContext2.keyEntities;
var treeRef = React.useRef();

@@ -94,4 +74,5 @@ var memoTreeData = (0, _useMemo.default)(function () {

return next[0] && prev[1] !== next[1];
}); // ========================== Values ==========================
});
// ========================== Values ==========================
var mergedCheckedKeys = React.useMemo(function () {

@@ -101,3 +82,2 @@ if (!checkable) {

}
return {

@@ -107,4 +87,5 @@ checked: checkedKeys,

};
}, [checkable, checkedKeys, halfCheckedKeys]); // ========================== Scroll ==========================
}, [checkable, checkedKeys, halfCheckedKeys]);
// ========================== Scroll ==========================
React.useEffect(function () {

@@ -114,3 +95,2 @@ // Single mode should scroll to current key

var _treeRef$current;
(_treeRef$current = treeRef.current) === null || _treeRef$current === void 0 ? void 0 : _treeRef$current.scrollTo({

@@ -120,6 +100,6 @@ key: checkedKeys[0]

}
}, [open]); // ========================== Search ==========================
}, [open]);
// ========================== Search ==========================
var lowerSearchValue = String(searchValue).toLowerCase();
var filterTreeNode = function filterTreeNode(treeNode) {

@@ -129,17 +109,14 @@ if (!lowerSearchValue) {

}
return String(treeNode[treeNodeFilterProp]).toLowerCase().includes(lowerSearchValue);
}; // =========================== Keys ===========================
};
// =========================== Keys ===========================
var _React$useState = React.useState(treeDefaultExpandedKeys),
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
expandedKeys = _React$useState2[0],
setExpandedKeys = _React$useState2[1];
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
expandedKeys = _React$useState2[0],
setExpandedKeys = _React$useState2[1];
var _React$useState3 = React.useState(null),
_React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
searchExpandedKeys = _React$useState4[0],
setSearchExpandedKeys = _React$useState4[1];
_React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
searchExpandedKeys = _React$useState4[0],
setSearchExpandedKeys = _React$useState4[1];
var mergedExpandedKeys = React.useMemo(function () {

@@ -149,3 +126,2 @@ if (treeExpandedKeys) {

}
return searchValue ? searchExpandedKeys : expandedKeys;

@@ -158,43 +134,35 @@ }, [expandedKeys, searchExpandedKeys, treeExpandedKeys, searchValue]);

}, [searchValue]);
var onInternalExpand = function onInternalExpand(keys) {
setExpandedKeys(keys);
setSearchExpandedKeys(keys);
if (onTreeExpand) {
onTreeExpand(keys);
}
}; // ========================== Events ==========================
};
// ========================== Events ==========================
var onListMouseDown = function onListMouseDown(event) {
event.preventDefault();
};
var onInternalSelect = function onInternalSelect(__, info) {
var node = info.node;
if (checkable && (0, _valueUtil.isCheckDisabled)(node)) {
return;
}
onSelect(node.key, {
selected: !checkedKeys.includes(node.key)
});
if (!multiple) {
toggleOpen(false);
}
}; // ========================= Keyboard =========================
};
// ========================= Keyboard =========================
var _React$useState5 = React.useState(null),
_React$useState6 = (0, _slicedToArray2.default)(_React$useState5, 2),
activeKey = _React$useState6[0],
setActiveKey = _React$useState6[1];
_React$useState6 = (0, _slicedToArray2.default)(_React$useState5, 2),
activeKey = _React$useState6[0],
setActiveKey = _React$useState6[1];
var activeEntity = keyEntities[activeKey];
React.useImperativeHandle(ref, function () {
var _treeRef$current2;
return {

@@ -204,5 +172,3 @@ scrollTo: (_treeRef$current2 = treeRef.current) === null || _treeRef$current2 === void 0 ? void 0 : _treeRef$current2.scrollTo,

var _treeRef$current3;
var which = event.which;
switch (which) {

@@ -216,4 +182,4 @@ // >>> Arrow keys

break;
// >>> Select item
case _KeyCode.default.ENTER:

@@ -223,5 +189,4 @@ {

var _ref = (activeEntity === null || activeEntity === void 0 ? void 0 : activeEntity.node) || {},
selectable = _ref.selectable,
value = _ref.value;
selectable = _ref.selectable,
value = _ref.value;
if (selectable !== false) {

@@ -236,7 +201,6 @@ onInternalSelect(null, {

}
break;
}
// >>> Close
case _KeyCode.default.ESC:

@@ -250,4 +214,5 @@ {

};
}); // ========================== Render ==========================
});
// ========================== Render ==========================
if (memoTreeData.length === 0) {

@@ -260,15 +225,11 @@ return /*#__PURE__*/React.createElement("div", {

}
var treeProps = {
fieldNames: fieldNames
};
if (treeLoadedKeys) {
treeProps.loadedKeys = treeLoadedKeys;
}
if (mergedExpandedKeys) {
treeProps.expandedKeys = mergedExpandedKeys;
}
return /*#__PURE__*/React.createElement("div", {

@@ -294,3 +255,4 @@ onMouseDown: onListMouseDown

motion: treeMotion,
activeKey: activeKey // We handle keys by out instead tree self
activeKey: activeKey
// We handle keys by out instead tree self
,

@@ -313,3 +275,2 @@ checkable: checkable,

};
var RefOptionList = /*#__PURE__*/React.forwardRef(OptionList);

@@ -316,0 +277,0 @@ RefOptionList.displayName = 'OptionList';

@@ -7,3 +7,2 @@ "use strict";

exports.default = void 0;
/* istanbul ignore file */

@@ -15,4 +14,3 @@

};
var _default = TreeNode;
exports.default = _default;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof3 = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -11,115 +9,84 @@ value: true

exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
var React = _interopRequireWildcard(require("react"));
var _rcSelect = require("rc-select");
var _conductUtil = require("rc-tree/lib/utils/conductUtil");
var _useId = _interopRequireDefault(require("rc-select/lib/hooks/useId"));
var _useMergedState5 = _interopRequireDefault(require("rc-util/lib/hooks/useMergedState"));
var _OptionList = _interopRequireDefault(require("./OptionList"));
var _TreeNode = _interopRequireDefault(require("./TreeNode"));
var _strategyUtil = require("./utils/strategyUtil");
var _TreeSelectContext = _interopRequireDefault(require("./TreeSelectContext"));
var _LegacyContext = _interopRequireDefault(require("./LegacyContext"));
var _useTreeData = _interopRequireDefault(require("./hooks/useTreeData"));
var _valueUtil = require("./utils/valueUtil");
var _useCache3 = _interopRequireDefault(require("./hooks/useCache"));
var _useRefFunc = _interopRequireDefault(require("./hooks/useRefFunc"));
var _useDataEntities2 = _interopRequireDefault(require("./hooks/useDataEntities"));
var _legacyUtil = require("./utils/legacyUtil");
var _useCheckedKeys3 = _interopRequireDefault(require("./hooks/useCheckedKeys"));
var _useFilterTreeData = _interopRequireDefault(require("./hooks/useFilterTreeData"));
var _warningPropsUtil = _interopRequireDefault(require("./utils/warningPropsUtil"));
var _warning = _interopRequireDefault(require("rc-util/lib/warning"));
var _excluded = ["id", "prefixCls", "value", "defaultValue", "onChange", "onSelect", "onDeselect", "searchValue", "inputValue", "onSearch", "autoClearSearchValue", "filterTreeNode", "treeNodeFilterProp", "showCheckedStrategy", "treeNodeLabelProp", "multiple", "treeCheckable", "treeCheckStrictly", "labelInValue", "fieldNames", "treeDataSimpleMode", "treeData", "children", "loadData", "treeLoadedKeys", "onTreeLoad", "treeDefaultExpandAll", "treeExpandedKeys", "treeDefaultExpandedKeys", "onTreeExpand", "treeExpandAction", "virtual", "listHeight", "listItemHeight", "onDropdownVisibleChange", "dropdownMatchSelectWidth", "treeLine", "treeIcon", "showTreeIcon", "switcherIcon", "treeMotion"];
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function isRawValue(value) {
return !value || (0, _typeof2.default)(value) !== 'object';
}
var TreeSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
var id = props.id,
_props$prefixCls = props.prefixCls,
prefixCls = _props$prefixCls === void 0 ? 'rc-tree-select' : _props$prefixCls,
value = props.value,
defaultValue = props.defaultValue,
onChange = props.onChange,
onSelect = props.onSelect,
onDeselect = props.onDeselect,
searchValue = props.searchValue,
inputValue = props.inputValue,
onSearch = props.onSearch,
_props$autoClearSearc = props.autoClearSearchValue,
autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,
filterTreeNode = props.filterTreeNode,
_props$treeNodeFilter = props.treeNodeFilterProp,
treeNodeFilterProp = _props$treeNodeFilter === void 0 ? 'value' : _props$treeNodeFilter,
_props$showCheckedStr = props.showCheckedStrategy,
showCheckedStrategy = _props$showCheckedStr === void 0 ? _strategyUtil.SHOW_CHILD : _props$showCheckedStr,
treeNodeLabelProp = props.treeNodeLabelProp,
multiple = props.multiple,
treeCheckable = props.treeCheckable,
treeCheckStrictly = props.treeCheckStrictly,
labelInValue = props.labelInValue,
fieldNames = props.fieldNames,
treeDataSimpleMode = props.treeDataSimpleMode,
treeData = props.treeData,
children = props.children,
loadData = props.loadData,
treeLoadedKeys = props.treeLoadedKeys,
onTreeLoad = props.onTreeLoad,
treeDefaultExpandAll = props.treeDefaultExpandAll,
treeExpandedKeys = props.treeExpandedKeys,
treeDefaultExpandedKeys = props.treeDefaultExpandedKeys,
onTreeExpand = props.onTreeExpand,
treeExpandAction = props.treeExpandAction,
virtual = props.virtual,
_props$listHeight = props.listHeight,
listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,
_props$listItemHeight = props.listItemHeight,
listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,
onDropdownVisibleChange = props.onDropdownVisibleChange,
_props$dropdownMatchS = props.dropdownMatchSelectWidth,
dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,
treeLine = props.treeLine,
treeIcon = props.treeIcon,
showTreeIcon = props.showTreeIcon,
switcherIcon = props.switcherIcon,
treeMotion = props.treeMotion,
restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
_props$prefixCls = props.prefixCls,
prefixCls = _props$prefixCls === void 0 ? 'rc-tree-select' : _props$prefixCls,
value = props.value,
defaultValue = props.defaultValue,
onChange = props.onChange,
onSelect = props.onSelect,
onDeselect = props.onDeselect,
searchValue = props.searchValue,
inputValue = props.inputValue,
onSearch = props.onSearch,
_props$autoClearSearc = props.autoClearSearchValue,
autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,
filterTreeNode = props.filterTreeNode,
_props$treeNodeFilter = props.treeNodeFilterProp,
treeNodeFilterProp = _props$treeNodeFilter === void 0 ? 'value' : _props$treeNodeFilter,
_props$showCheckedStr = props.showCheckedStrategy,
showCheckedStrategy = _props$showCheckedStr === void 0 ? _strategyUtil.SHOW_CHILD : _props$showCheckedStr,
treeNodeLabelProp = props.treeNodeLabelProp,
multiple = props.multiple,
treeCheckable = props.treeCheckable,
treeCheckStrictly = props.treeCheckStrictly,
labelInValue = props.labelInValue,
fieldNames = props.fieldNames,
treeDataSimpleMode = props.treeDataSimpleMode,
treeData = props.treeData,
children = props.children,
loadData = props.loadData,
treeLoadedKeys = props.treeLoadedKeys,
onTreeLoad = props.onTreeLoad,
treeDefaultExpandAll = props.treeDefaultExpandAll,
treeExpandedKeys = props.treeExpandedKeys,
treeDefaultExpandedKeys = props.treeDefaultExpandedKeys,
onTreeExpand = props.onTreeExpand,
treeExpandAction = props.treeExpandAction,
virtual = props.virtual,
_props$listHeight = props.listHeight,
listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,
_props$listItemHeight = props.listItemHeight,
listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,
onDropdownVisibleChange = props.onDropdownVisibleChange,
_props$dropdownMatchS = props.dropdownMatchSelectWidth,
dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,
treeLine = props.treeLine,
treeIcon = props.treeIcon,
showTreeIcon = props.showTreeIcon,
switcherIcon = props.switcherIcon,
treeMotion = props.treeMotion,
restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
var mergedId = (0, _useId.default)(id);

@@ -130,55 +97,51 @@ var treeConduction = treeCheckable && !treeCheckStrictly;

var mergedMultiple = mergedCheckable || multiple;
var _useMergedState = (0, _useMergedState5.default)(defaultValue, {
value: value
}),
_useMergedState2 = (0, _slicedToArray2.default)(_useMergedState, 2),
internalValue = _useMergedState2[0],
setInternalValue = _useMergedState2[1]; // ========================== Warning ===========================
value: value
}),
_useMergedState2 = (0, _slicedToArray2.default)(_useMergedState, 2),
internalValue = _useMergedState2[0],
setInternalValue = _useMergedState2[1];
// ========================== Warning ===========================
if (process.env.NODE_ENV !== 'production') {
(0, _warningPropsUtil.default)(props);
} // ========================= FieldNames =========================
}
// ========================= FieldNames =========================
var mergedFieldNames = React.useMemo(function () {
return (0, _valueUtil.fillFieldNames)(fieldNames);
},
/* eslint-disable react-hooks/exhaustive-deps */
}, /* eslint-disable react-hooks/exhaustive-deps */
[JSON.stringify(fieldNames)]
/* eslint-enable react-hooks/exhaustive-deps */
); // =========================== Search ===========================
/* eslint-enable react-hooks/exhaustive-deps */);
// =========================== Search ===========================
var _useMergedState3 = (0, _useMergedState5.default)('', {
value: searchValue !== undefined ? searchValue : inputValue,
postState: function postState(search) {
return search || '';
}
}),
_useMergedState4 = (0, _slicedToArray2.default)(_useMergedState3, 2),
mergedSearchValue = _useMergedState4[0],
setSearchValue = _useMergedState4[1];
value: searchValue !== undefined ? searchValue : inputValue,
postState: function postState(search) {
return search || '';
}
}),
_useMergedState4 = (0, _slicedToArray2.default)(_useMergedState3, 2),
mergedSearchValue = _useMergedState4[0],
setSearchValue = _useMergedState4[1];
var onInternalSearch = function onInternalSearch(searchText) {
setSearchValue(searchText);
onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchText);
}; // ============================ Data ============================
};
// ============================ Data ============================
// `useTreeData` only do convert of `children` or `simpleMode`.
// Else will return origin `treeData` for perf consideration.
// Do not do anything to loop the data.
var mergedTreeData = (0, _useTreeData.default)(treeData, children, treeDataSimpleMode);
var _useDataEntities = (0, _useDataEntities2.default)(mergedTreeData, mergedFieldNames),
keyEntities = _useDataEntities.keyEntities,
valueEntities = _useDataEntities.valueEntities;
var _useDataEntities = (0, _useDataEntities2.default)(mergedTreeData, mergedFieldNames),
keyEntities = _useDataEntities.keyEntities,
valueEntities = _useDataEntities.valueEntities;
/** Get `missingRawValues` which not exist in the tree yet */
var splitRawValues = React.useCallback(function (newRawValues) {
var missingRawValues = [];
var existRawValues = []; // Keep missing value in the cache
var existRawValues = [];
// Keep missing value in the cache
newRawValues.forEach(function (val) {

@@ -195,4 +158,5 @@ if (valueEntities.has(val)) {

};
}, [valueEntities]); // Filtered Tree
}, [valueEntities]);
// Filtered Tree
var filteredTreeData = (0, _useFilterTreeData.default)(mergedTreeData, mergedSearchValue, {

@@ -202,4 +166,5 @@ fieldNames: mergedFieldNames,

filterTreeNode: filterTreeNode
}); // =========================== Label ============================
});
// =========================== Label ============================
var getLabel = React.useCallback(function (item) {

@@ -209,10 +174,8 @@ if (item) {

return item[treeNodeLabelProp];
} // Loop from fieldNames
}
// Loop from fieldNames
var titleList = mergedFieldNames._title;
for (var i = 0; i < titleList.length; i += 1) {
var title = item[titleList[i]];
if (title !== undefined) {

@@ -223,4 +186,5 @@ return title;

}
}, [mergedFieldNames, treeNodeLabelProp]); // ========================= Wrap Value =========================
}, [mergedFieldNames, treeNodeLabelProp]);
// ========================= Wrap Value =========================
var toLabeledValues = React.useCallback(function (draftValues) {

@@ -234,3 +198,2 @@ var values = (0, _valueUtil.toArray)(draftValues);

}
return val;

@@ -244,9 +207,9 @@ });

var rawValue = item.value,
rawHalfChecked = item.halfChecked;
rawHalfChecked = item.halfChecked;
var rawDisabled;
var entity = valueEntities.get(rawValue); // Fill missing label & status
var entity = valueEntities.get(rawValue);
// Fill missing label & status
if (entity) {
var _rawLabel;
rawLabel = (_rawLabel = rawLabel) !== null && _rawLabel !== void 0 ? _rawLabel : getLabel(entity.node);

@@ -261,3 +224,2 @@ rawDisabled = entity.node.disabled;

}
return {

@@ -270,25 +232,27 @@ label: rawLabel,

});
}, [valueEntities, getLabel, toLabeledValues, internalValue]); // =========================== Values ===========================
}, [valueEntities, getLabel, toLabeledValues, internalValue]);
// =========================== Values ===========================
var rawMixedLabeledValues = React.useMemo(function () {
return toLabeledValues(internalValue);
}, [toLabeledValues, internalValue]); // Split value into full check and half check
}, [toLabeledValues, internalValue]);
// Split value into full check and half check
var _React$useMemo = React.useMemo(function () {
var fullCheckValues = [];
var halfCheckValues = [];
rawMixedLabeledValues.forEach(function (item) {
if (item.halfChecked) {
halfCheckValues.push(item);
} else {
fullCheckValues.push(item);
}
});
return [fullCheckValues, halfCheckValues];
}, [rawMixedLabeledValues]),
_React$useMemo2 = (0, _slicedToArray2.default)(_React$useMemo, 2),
rawLabeledValues = _React$useMemo2[0],
rawHalfLabeledValues = _React$useMemo2[1]; // const [mergedValues] = useCache(rawLabeledValues);
var fullCheckValues = [];
var halfCheckValues = [];
rawMixedLabeledValues.forEach(function (item) {
if (item.halfChecked) {
halfCheckValues.push(item);
} else {
fullCheckValues.push(item);
}
});
return [fullCheckValues, halfCheckValues];
}, [rawMixedLabeledValues]),
_React$useMemo2 = (0, _slicedToArray2.default)(_React$useMemo, 2),
rawLabeledValues = _React$useMemo2[0],
rawHalfLabeledValues = _React$useMemo2[1];
// const [mergedValues] = useCache(rawLabeledValues);
var rawValues = React.useMemo(function () {

@@ -298,20 +262,22 @@ return rawLabeledValues.map(function (item) {

});
}, [rawLabeledValues]); // Convert value to key. Will fill missed keys for conduct check.
}, [rawLabeledValues]);
// Convert value to key. Will fill missed keys for conduct check.
var _useCheckedKeys = (0, _useCheckedKeys3.default)(rawLabeledValues, rawHalfLabeledValues, treeConduction, keyEntities),
_useCheckedKeys2 = (0, _slicedToArray2.default)(_useCheckedKeys, 2),
rawCheckedValues = _useCheckedKeys2[0],
rawHalfCheckedValues = _useCheckedKeys2[1]; // Convert rawCheckedKeys to check strategy related values
_useCheckedKeys2 = (0, _slicedToArray2.default)(_useCheckedKeys, 2),
rawCheckedValues = _useCheckedKeys2[0],
rawHalfCheckedValues = _useCheckedKeys2[1];
// Convert rawCheckedKeys to check strategy related values
var displayValues = React.useMemo(function () {
// Collect keys which need to show
var displayKeys = (0, _strategyUtil.formatStrategyValues)(rawCheckedValues, showCheckedStrategy, keyEntities, mergedFieldNames); // Convert to value and filled with label
var displayKeys = (0, _strategyUtil.formatStrategyValues)(rawCheckedValues, showCheckedStrategy, keyEntities, mergedFieldNames);
// Convert to value and filled with label
var values = displayKeys.map(function (key) {
var _keyEntities$key$node, _keyEntities$key, _keyEntities$key$node2;
return (_keyEntities$key$node = (_keyEntities$key = keyEntities[key]) === null || _keyEntities$key === void 0 ? void 0 : (_keyEntities$key$node2 = _keyEntities$key.node) === null || _keyEntities$key$node2 === void 0 ? void 0 : _keyEntities$key$node2[mergedFieldNames.value]) !== null && _keyEntities$key$node !== void 0 ? _keyEntities$key$node : key;
}); // Back fill with origin label
});
// Back fill with origin label
var labeledValues = values.map(function (val) {

@@ -328,10 +294,7 @@ var targetItem = rawLabeledValues.find(function (item) {

var firstVal = rawDisplayValues[0];
if (!mergedMultiple && firstVal && (0, _valueUtil.isNil)(firstVal.value) && (0, _valueUtil.isNil)(firstVal.label)) {
return [];
}
return rawDisplayValues.map(function (item) {
var _item$label;
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {

@@ -342,20 +305,19 @@ label: (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : item.value

}, [mergedFieldNames, mergedMultiple, rawCheckedValues, rawLabeledValues, convert2LabelValues, showCheckedStrategy, keyEntities]);
var _useCache = (0, _useCache3.default)(displayValues),
_useCache2 = (0, _slicedToArray2.default)(_useCache, 1),
cachedDisplayValues = _useCache2[0]; // =========================== Change ===========================
_useCache2 = (0, _slicedToArray2.default)(_useCache, 1),
cachedDisplayValues = _useCache2[0];
// =========================== Change ===========================
var triggerChange = (0, _useRefFunc.default)(function (newRawValues, extra, source) {
var labeledValues = convert2LabelValues(newRawValues);
setInternalValue(labeledValues); // Clean up if needed
setInternalValue(labeledValues);
// Clean up if needed
if (autoClearSearchValue) {
setSearchValue('');
} // Generate rest parameters is costly, so only do it when necessary
}
// Generate rest parameters is costly, so only do it when necessary
if (onChange) {
var eventValues = newRawValues;
if (treeConduction) {

@@ -368,12 +330,11 @@ var formattedKeyList = (0, _strategyUtil.formatStrategyValues)(newRawValues, showCheckedStrategy, keyEntities, mergedFieldNames);

}
var _ref = extra || {
triggerValue: undefined,
selected: undefined
},
triggerValue = _ref.triggerValue,
selected = _ref.selected;
triggerValue: undefined,
selected: undefined
},
triggerValue = _ref.triggerValue,
selected = _ref.selected;
var returnRawValues = eventValues;
var returnRawValues = eventValues; // We need fill half check back
// We need fill half check back
if (treeCheckStrictly) {

@@ -385,3 +346,2 @@ var halfValues = rawHalfLabeledValues.filter(function (item) {

}
var returnLabeledValues = convert2LabelValues(returnRawValues);

@@ -392,14 +352,12 @@ var additionalInfo = {

triggerValue: triggerValue
}; // [Legacy] Fill legacy data if user query.
};
// [Legacy] Fill legacy data if user query.
// This is expansive that we only fill when user query
// https://github.com/react-component/tree-select/blob/fe33eb7c27830c9ac70cd1fdb1ebbe7bc679c16a/src/Select.jsx
var showPosition = true;
if (treeCheckStrictly || source === 'selection' && !selected) {
showPosition = false;
}
(0, _legacyUtil.fillAdditionalInfo)(additionalInfo, triggerValue, newRawValues, mergedTreeData, showPosition, mergedFieldNames);
if (mergedCheckable) {

@@ -410,3 +368,2 @@ additionalInfo.checked = selected;

}
var returnValues = mergedLabelInValue ? returnLabeledValues : returnLabeledValues.map(function (item) {

@@ -419,15 +376,15 @@ return item.value;

}
}); // ========================== Options ===========================
});
// ========================== Options ===========================
/** Trigger by option list */
var onOptionSelect = React.useCallback(function (selectedKey, _ref2) {
var _node$mergedFieldName;
var selected = _ref2.selected,
source = _ref2.source;
source = _ref2.source;
var entity = keyEntities[selectedKey];
var node = entity === null || entity === void 0 ? void 0 : entity.node;
var selectedValue = (_node$mergedFieldName = node === null || node === void 0 ? void 0 : node[mergedFieldNames.value]) !== null && _node$mergedFieldName !== void 0 ? _node$mergedFieldName : selectedKey; // Never be falsy but keep it safe
var selectedValue = (_node$mergedFieldName = node === null || node === void 0 ? void 0 : node[mergedFieldNames.value]) !== null && _node$mergedFieldName !== void 0 ? _node$mergedFieldName : selectedKey;
// Never be falsy but keep it safe
if (!mergedMultiple) {

@@ -442,19 +399,18 @@ // Single mode always set value

return v !== selectedValue;
}); // Add keys if tree conduction
});
// Add keys if tree conduction
if (treeConduction) {
// Should keep missing values
var _splitRawValues = splitRawValues(newRawValues),
missingRawValues = _splitRawValues.missingRawValues,
existRawValues = _splitRawValues.existRawValues;
missingRawValues = _splitRawValues.missingRawValues,
existRawValues = _splitRawValues.existRawValues;
var keyList = existRawValues.map(function (val) {
return valueEntities.get(val).key;
}); // Conduction by selected or not
});
// Conduction by selected or not
var checkedKeys;
if (selected) {
var _conductCheck = (0, _conductUtil.conductCheck)(keyList, true, keyEntities);
checkedKeys = _conductCheck.checkedKeys;

@@ -466,7 +422,6 @@ } else {

}, keyEntities);
checkedKeys = _conductCheck2.checkedKeys;
} // Fill back of keys
}
// Fill back of keys
newRawValues = [].concat((0, _toConsumableArray2.default)(missingRawValues), (0, _toConsumableArray2.default)(checkedKeys.map(function (key) {

@@ -476,3 +431,2 @@ return keyEntities[key].node[mergedFieldNames.value];

}
triggerChange(newRawValues, {

@@ -482,5 +436,5 @@ selected: selected,

}, source || 'option');
} // Trigger select event
}
// Trigger select event
if (selected || !mergedMultiple) {

@@ -491,4 +445,5 @@ onSelect === null || onSelect === void 0 ? void 0 : onSelect(selectedValue, (0, _legacyUtil.fillLegacyProps)(node));

}
}, [splitRawValues, valueEntities, keyEntities, mergedFieldNames, mergedMultiple, rawValues, triggerChange, treeConduction, onSelect, onDeselect, rawCheckedValues, rawHalfCheckedValues]); // ========================== Dropdown ==========================
}, [splitRawValues, valueEntities, keyEntities, mergedFieldNames, mergedMultiple, rawValues, triggerChange, treeConduction, onSelect, onDeselect, rawCheckedValues, rawHalfCheckedValues]);
// ========================== Dropdown ==========================
var onInternalDropdownVisibleChange = React.useCallback(function (open) {

@@ -505,4 +460,5 @@ if (onDropdownVisibleChange) {

}
}, [onDropdownVisibleChange]); // ====================== Display Change ========================
}, [onDropdownVisibleChange]);
// ====================== Display Change ========================
var onDisplayValuesChange = (0, _useRefFunc.default)(function (newValues, info) {

@@ -512,9 +468,8 @@ var newRawValues = newValues.map(function (item) {

});
if (info.type === 'clear') {
triggerChange(newRawValues, {}, 'selection');
return;
} // TreeSelect only have multiple mode which means display change only has remove
}
// TreeSelect only have multiple mode which means display change only has remove
if (info.values.length) {

@@ -526,4 +481,5 @@ onOptionSelect(info.values[0].value, {

}
}); // ========================== Context ===========================
});
// ========================== Context ===========================
var treeSelectContext = React.useMemo(function () {

@@ -540,4 +496,5 @@ return {

};
}, [virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, filteredTreeData, mergedFieldNames, onOptionSelect, treeExpandAction]); // ======================= Legacy Context =======================
}, [virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, filteredTreeData, mergedFieldNames, onOptionSelect, treeExpandAction]);
// ======================= Legacy Context =======================
var legacyContext = React.useMemo(function () {

@@ -563,4 +520,5 @@ return {

};
}, [mergedCheckable, loadData, treeLoadedKeys, onTreeLoad, rawCheckedValues, rawHalfCheckedValues, treeDefaultExpandAll, treeExpandedKeys, treeDefaultExpandedKeys, onTreeExpand, treeIcon, treeMotion, showTreeIcon, switcherIcon, treeLine, treeNodeFilterProp, keyEntities]); // =========================== Render ===========================
}, [mergedCheckable, loadData, treeLoadedKeys, onTreeLoad, rawCheckedValues, rawHalfCheckedValues, treeDefaultExpandAll, treeExpandedKeys, treeDefaultExpandedKeys, onTreeExpand, treeIcon, treeMotion, showTreeIcon, switcherIcon, treeLine, treeNodeFilterProp, keyEntities]);
// =========================== Render ===========================
return /*#__PURE__*/React.createElement(_TreeSelectContext.default.Provider, {

@@ -576,9 +534,12 @@ value: treeSelectContext

prefixCls: prefixCls,
mode: mergedMultiple ? 'multiple' : undefined // >>> Display Value
mode: mergedMultiple ? 'multiple' : undefined
// >>> Display Value
,
displayValues: cachedDisplayValues,
onDisplayValuesChange: onDisplayValuesChange // >>> Search
onDisplayValuesChange: onDisplayValuesChange
// >>> Search
,
searchValue: mergedSearchValue,
onSearch: onInternalSearch // >>> Options
onSearch: onInternalSearch
// >>> Options
,

@@ -590,8 +551,8 @@ OptionList: _OptionList.default,

}))));
}); // Assign name for Debug
});
// Assign name for Debug
if (process.env.NODE_ENV !== 'production') {
TreeSelect.displayName = 'TreeSelect';
}
var GenericTreeSelect = TreeSelect;

@@ -598,0 +559,0 @@ GenericTreeSelect.TreeNode = _TreeNode.default;

"use strict";
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -9,11 +8,7 @@ value: true

exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var TreeSelectContext = /*#__PURE__*/React.createContext(null);
var _default = TreeSelectContext;
exports.default = _default;
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {

@@ -13,21 +11,11 @@ value: true

exports.fillLegacyProps = fillLegacyProps;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var React = _interopRequireWildcard(require("react"));
var _toArray = _interopRequireDefault(require("rc-util/lib/Children/toArray"));
var _warning = _interopRequireDefault(require("rc-util/lib/warning"));
var _TreeNode = _interopRequireDefault(require("../TreeNode"));
var _excluded = ["children", "value"];
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function convertChildrenToData(nodes) {

@@ -38,9 +26,8 @@ return (0, _toArray.default)(nodes).map(function (node) {

}
var _ref = node,
key = _ref.key,
_ref$props = _ref.props,
children = _ref$props.children,
value = _ref$props.value,
restProps = (0, _objectWithoutProperties2.default)(_ref$props, _excluded);
key = _ref.key,
_ref$props = _ref.props,
children = _ref$props.children,
value = _ref$props.value,
restProps = (0, _objectWithoutProperties2.default)(_ref$props, _excluded);
var data = (0, _objectSpread2.default)({

@@ -51,7 +38,5 @@ key: key,

var childData = convertChildrenToData(children);
if (childData.length) {
data.children = childData;
}
return data;

@@ -62,3 +47,2 @@ }).filter(function (data) {

}
function fillLegacyProps(dataNode) {

@@ -68,5 +52,3 @@ if (!dataNode) {

}
var cloneNode = (0, _objectSpread2.default)({}, dataNode);
if (!('props' in cloneNode)) {

@@ -80,10 +62,7 @@ Object.defineProperty(cloneNode, 'props', {

}
return cloneNode;
}
function fillAdditionalInfo(extra, triggerValue, checkedValues, treeData, showPosition, fieldNames) {
var triggerNode = null;
var nodeList = null;
function generateMap() {

@@ -100,8 +79,8 @@ function dig(list) {

return child.node;
})); // Link with trigger node
}));
// Link with trigger node
if (triggerValue === value) {
triggerNode = node;
}
if (included) {

@@ -113,10 +92,7 @@ var checkedNode = {

};
if (!parentIncluded) {
nodeList.push(checkedNode);
}
return checkedNode;
}
return null;

@@ -127,7 +103,7 @@ }).filter(function (node) {

}
if (!nodeList) {
nodeList = [];
dig(treeData); // Sort to keep the checked node length
dig(treeData);
// Sort to keep the checked node length
nodeList.sort(function (_ref2, _ref3) {

@@ -142,3 +118,2 @@ var val1 = _ref2.node.props.value;

}
Object.defineProperty(extra, 'triggerNode', {

@@ -155,7 +130,5 @@ get: function get() {

generateMap();
if (showPosition) {
return nodeList;
}
return nodeList.map(function (_ref4) {

@@ -162,0 +135,0 @@ var node = _ref4.node;

@@ -8,5 +8,3 @@ "use strict";

exports.formatStrategyValues = formatStrategyValues;
var _valueUtil = require("./valueUtil");
var SHOW_ALL = 'SHOW_ALL';

@@ -18,10 +16,7 @@ exports.SHOW_ALL = SHOW_ALL;

exports.SHOW_CHILD = SHOW_CHILD;
function formatStrategyValues(values, strategy, keyEntities, fieldNames) {
var valueSet = new Set(values);
if (strategy === SHOW_CHILD) {
return values.filter(function (key) {
var entity = keyEntities[key];
if (entity && entity.children && entity.children.some(function (_ref) {

@@ -36,7 +31,5 @@ var node = _ref.node;

}
return true;
});
}
if (strategy === SHOW_PARENT) {

@@ -46,12 +39,9 @@ return values.filter(function (key) {

var parent = entity ? entity.parent : null;
if (parent && !(0, _valueUtil.isCheckDisabled)(parent.node) && valueSet.has(parent.key)) {
return false;
}
return true;
});
}
return values;
}

@@ -11,3 +11,2 @@ "use strict";

exports.toArray = toArray;
function toArray(value) {

@@ -17,12 +16,9 @@ if (Array.isArray(value)) {

}
return value !== undefined ? [value] : [];
}
function fillFieldNames(fieldNames) {
var _ref = fieldNames || {},
label = _ref.label,
value = _ref.value,
children = _ref.children;
label = _ref.label,
value = _ref.value,
children = _ref.children;
var mergedValue = value || 'value';

@@ -36,16 +32,12 @@ return {

}
function isCheckDisabled(node) {
return !node || node.disabled || node.disableCheckbox || node.checkable === false;
}
/** Loop fetch all the keys exist in the tree */
function getAllKeys(treeData, fieldNames) {
var keys = [];
function dig(list) {
list.forEach(function (item) {
var children = item[fieldNames.children];
if (children) {

@@ -57,9 +49,7 @@ keys.push(item[fieldNames.value]);

}
dig(treeData);
return keys;
}
function isNil(val) {
return val === null || val === undefined;
}
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {

@@ -9,22 +8,16 @@ value: true

exports.default = void 0;
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
var _warning = _interopRequireDefault(require("rc-util/lib/warning"));
var _valueUtil = require("./valueUtil");
function warningProps(props) {
var searchPlaceholder = props.searchPlaceholder,
treeCheckStrictly = props.treeCheckStrictly,
treeCheckable = props.treeCheckable,
labelInValue = props.labelInValue,
value = props.value,
multiple = props.multiple;
treeCheckStrictly = props.treeCheckStrictly,
treeCheckable = props.treeCheckable,
labelInValue = props.labelInValue,
value = props.value,
multiple = props.multiple;
(0, _warning.default)(!searchPlaceholder, '`searchPlaceholder` has been removed.');
if (treeCheckStrictly && labelInValue === false) {
(0, _warning.default)(false, '`treeCheckStrictly` will force set `labelInValue` to `true`.');
}
if (labelInValue || treeCheckStrictly) {

@@ -35,3 +28,2 @@ (0, _warning.default)((0, _valueUtil.toArray)(value).every(function (val) {

}
if (treeCheckStrictly || multiple || treeCheckable) {

@@ -43,4 +35,3 @@ (0, _warning.default)(!value || Array.isArray(value), '`value` should be an array when `TreeSelect` is checkable or multiple.');

}
var _default = warningProps;
exports.default = _default;
{
"name": "rc-tree-select",
"version": "5.7.0",
"version": "5.8.0",
"description": "tree-select ui component for react",

@@ -48,3 +48,3 @@ "keywords": [

"@rc-component/father-plugin": "^1.0.0",
"@rc-component/trigger": "^1.4.0",
"@rc-component/trigger": "^1.5.0",
"@testing-library/react": "^12.0.0",

@@ -76,3 +76,3 @@ "@types/jest": "^26.0.5",

"classnames": "2.x",
"rc-select": "~14.3.0",
"rc-select": "~14.4.0",
"rc-tree": "~5.7.0",

@@ -79,0 +79,0 @@ "rc-util": "^5.16.1"

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