Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
return (0, _toArray2['default'])(children).map(function handler(child) {
// eslint-disable-line
if (!child) {
return null;
}
if (child && child.props.children) {
// null or String has no Prop
return _react2['default'].createElement(
_rcTree.TreeNode,
(0, _extends3['default'])({}, child.props, { key: child.key }),
recursive(child.props.children)
);
}
return _react2['default'].createElement(_rcTree.TreeNode, (0, _extends3['default'])({}, child.props, { key: child.key }));
});
};
constructor(props: DirectoryTreeProps) {
super(props);
const {
defaultExpandAll,
defaultExpandParent,
expandedKeys,
defaultExpandedKeys,
children,
} = props;
const { keyEntities } = convertTreeToEntities(children);
// Selected keys
this.state = {
selectedKeys: props.selectedKeys || props.defaultSelectedKeys || [],
};
// Expanded keys
if (defaultExpandAll) {
this.state.expandedKeys = getFullKeyList(props.children);
} else if (defaultExpandParent) {
this.state.expandedKeys = conductExpandParent(
expandedKeys || defaultExpandedKeys,
keyEntities,
);
} else {
this.state.expandedKeys = expandedKeys || defaultExpandedKeys;
expandedKeys = props.expandedKeys,
defaultExpandedKeys = props.defaultExpandedKeys,
children = props.children;
var _convertTreeToEntitie = convertTreeToEntities(children),
keyEntities = _convertTreeToEntitie.keyEntities; // Selected keys
_this.state = {
selectedKeys: props.selectedKeys || props.defaultSelectedKeys || []
}; // Expanded keys
if (defaultExpandAll) {
_this.state.expandedKeys = getFullKeyList(props.children);
} else if (defaultExpandParent) {
_this.state.expandedKeys = conductExpandParent(expandedKeys || defaultExpandedKeys, keyEntities);
} else {
_this.state.expandedKeys = expandedKeys || defaultExpandedKeys;
}
_this.onDebounceExpand = debounce(_this.expandFolderNode, 200, {
leading: true
});
return _this;
}
expandedKeys: expandedKeys,
selectedKeys: selectedKeys,
onSelect: _this.onSelect,
onClick: _this.onClick,
onDoubleClick: _this.onDoubleClick,
onExpand: _this.onExpand
}));
};
var defaultExpandAll = props.defaultExpandAll,
defaultExpandParent = props.defaultExpandParent,
expandedKeys = props.expandedKeys,
defaultExpandedKeys = props.defaultExpandedKeys,
children = props.children;
var _convertTreeToEntitie = convertTreeToEntities(children),
keyEntities = _convertTreeToEntitie.keyEntities; // Selected keys
_this.state = {
selectedKeys: props.selectedKeys || props.defaultSelectedKeys || []
}; // Expanded keys
if (defaultExpandAll) {
_this.state.expandedKeys = getFullKeyList(props.children);
} else if (defaultExpandParent) {
_this.state.expandedKeys = conductExpandParent(expandedKeys || defaultExpandedKeys, keyEntities);
} else {
_this.state.expandedKeys = expandedKeys || defaultExpandedKeys;
}
_this.onDebounceExpand = debounce(_this.expandFolderNode, 200, {
expandedKeys,
defaultExpandedKeys,
children,
} = props;
const { keyEntities } = convertTreeToEntities(children);
// Selected keys
this.state = {
selectedKeys: props.selectedKeys || props.defaultSelectedKeys || [],
};
// Expanded keys
if (defaultExpandAll) {
this.state.expandedKeys = getFullKeyList(props.children);
} else if (defaultExpandParent) {
this.state.expandedKeys = conductExpandParent(
expandedKeys || defaultExpandedKeys,
keyEntities,
);
} else {
this.state.expandedKeys = expandedKeys || defaultExpandedKeys;
}
this.onDebounceExpand = debounce(this.expandFolderNode, 200, {
leading: true,
});
}
className = props.className;
var checkable = props.checkable;
return _react2['default'].createElement(
_rcTree2['default'],
(0, _extends3['default'])({}, props, { className: className, checkable: checkable ? _react2['default'].createElement('span', { className: prefixCls + '-checkbox-inner' }) : checkable }),
this.props.children
);
}
}]);
return Tree;
}(_react2['default'].Component);
exports['default'] = Tree;
Tree.TreeNode = _rcTree.TreeNode;
Tree.defaultProps = {
prefixCls: 'ant-tree',
checkable: false,
showIcon: false,
openAnimation: _openAnimation2['default']
};
export function getFullKeyList(children: React.ReactNode | React.ReactNode[]) {
const { keyEntities } = convertTreeToEntities(children);
return Object.keys(keyEntities);
}
function traverseNodesKey(
rootChildren: React.ReactNode | React.ReactNode[],
callback: (key: string | number | null, node: AntTreeNode) => boolean,
) {
const nodeList: React.ReactNode[] = getNodeChildren(rootChildren) || [];
function processNode(node: React.ReactElement) {
const {
key,
props: { children },
} = node;
if (callback(key, node as any) !== false) {
traverseNodesKey(children, callback);
}
}
nodeList.forEach(processNode);
}