react-virtualized-sticky-tree
Advanced tools
Comparing version 3.0.0-beta2 to 3.0.0-beta3
@@ -10,2 +10,3 @@ import React from 'react'; | ||
export default class StickyList<TNodeType extends TreeNode = TreeNode> extends React.PureComponent<StickyListProps<TNodeType>> { | ||
private root; | ||
getChildren: StickyTreeProps<TNodeType>['getChildren']; | ||
@@ -12,0 +13,0 @@ render(): JSX.Element; |
@@ -22,2 +22,3 @@ "use strict"; | ||
super(...arguments); | ||
this.root = { node: { id: 'root' } }; | ||
this.getChildren = (node) => { | ||
@@ -34,5 +35,5 @@ const { items, getHeight } = this.props; | ||
const _a = this.props, { items, rowRenderer, width, height, treeRef, getHeight } = _a, rest = __rest(_a, ["items", "rowRenderer", "width", "height", "treeRef", "getHeight"]); | ||
return (react_1.default.createElement(StickyTree_1.default, Object.assign({ ref: treeRef, getChildren: this.getChildren, renderRoot: false, root: { node: { id: 'root' } }, rowRenderer: rowRenderer, width: width, height: height }, rest))); | ||
return (react_1.default.createElement(StickyTree_1.default, Object.assign({ ref: treeRef, getChildren: this.getChildren, renderRoot: false, root: this.root, rowRenderer: rowRenderer, width: width, height: height }, rest))); | ||
} | ||
} | ||
exports.default = StickyList; |
@@ -36,2 +36,22 @@ import React from 'react'; | ||
export declare type EnhancedStickyTreeNode<TNodeType extends TreeNode = TreeNode> = EnhancedStickyTreeLeafNode<TNodeType> | EnhancedStickyTreeParentNode<TNodeType>; | ||
export declare type StickyTreeGetChildren<TNodeType extends TreeNode = TreeNode> = (node: TNodeType, nodeInfo: EnhancedStickyTreeNode<TNodeType>) => StickyTreeNode<TNodeType>[] | undefined; | ||
export declare type StickyTreeRowRenderer<TNodeType extends TreeNode = TreeNode> = (renderInfo: { | ||
node: TNodeType; | ||
nodeInfo: EnhancedStickyTreeNode<TNodeType>; | ||
style: React.CSSProperties; | ||
}) => React.ReactElement; | ||
export declare type StickyTreeOnScroll = (scrollInfo: { | ||
scrollTop: number; | ||
scrollLeft: number; | ||
scrollReason: ScrollReason; | ||
}) => void; | ||
export declare type StickyTreeOnRowsRendered<TNodeType extends TreeNode = TreeNode> = (renderInfo: { | ||
overscanStartIndex: number; | ||
overscanStopIndex: number; | ||
startIndex: number; | ||
stopIndex: number; | ||
startNode?: EnhancedStickyTreeNode<TNodeType>; | ||
endNode?: EnhancedStickyTreeNode<TNodeType>; | ||
nodes: EnhancedStickyTreeNode<TNodeType>[]; | ||
}) => void; | ||
export interface StickyTreeProps<TNodeType extends TreeNode = TreeNode> { | ||
@@ -57,3 +77,3 @@ /** | ||
*/ | ||
getChildren: (node: TNodeType, nodeInfo: EnhancedStickyTreeNode<TNodeType>) => StickyTreeNode<TNodeType>[] | undefined; | ||
getChildren: StickyTreeGetChildren<TNodeType>; | ||
/** | ||
@@ -69,7 +89,3 @@ * Called to retrieve a row to render. The function should return a single React node. | ||
*/ | ||
rowRenderer: (renderInfo: { | ||
node: TNodeType; | ||
nodeInfo: EnhancedStickyTreeNode<TNodeType>; | ||
style: React.CSSProperties; | ||
}) => React.ReactElement; | ||
rowRenderer: StickyTreeRowRenderer<TNodeType>; | ||
/** | ||
@@ -115,19 +131,7 @@ * An object which represents the root node in the form: | ||
*/ | ||
onScroll?: (scrollInfo: { | ||
scrollTop: number; | ||
scrollLeft: number; | ||
scrollReason: ScrollReason; | ||
}) => void; | ||
onScroll?: StickyTreeOnScroll; | ||
/** | ||
* Called to indicate that a new render range for rows has been rendered. | ||
*/ | ||
onRowsRendered?: (renderInfo: { | ||
overscanStartIndex: number; | ||
overscanStopIndex: number; | ||
startIndex: number; | ||
stopIndex: number; | ||
startNode?: EnhancedStickyTreeNode<TNodeType>; | ||
endNode?: EnhancedStickyTreeNode<TNodeType>; | ||
nodes: EnhancedStickyTreeNode<TNodeType>[]; | ||
}) => void; | ||
onRowsRendered?: StickyTreeOnRowsRendered<TNodeType>; | ||
/** | ||
@@ -197,2 +201,3 @@ * Specifies the default row height which will be used if the child or root object do not have a height specified. | ||
UNSAFE_componentWillUpdate(newProps: StickyTreeProps<TNodeType>, newState: StickyTreeState): void; | ||
getNode(nodeId: NodeId): TNodeType; | ||
/** | ||
@@ -199,0 +204,0 @@ * Returns the index of the node in a flat list tree (post-order traversal). |
@@ -162,2 +162,6 @@ "use strict"; | ||
} | ||
getNode(nodeId) { | ||
var _a; | ||
return (_a = this.nodes[this.getNodeIndex(nodeId)]) === null || _a === void 0 ? void 0 : _a.node; | ||
} | ||
/** | ||
@@ -164,0 +168,0 @@ * Returns the index of the node in a flat list tree (post-order traversal). |
{ | ||
"name": "react-virtualized-sticky-tree", | ||
"description": "A React component for efficiently rendering tree like structures with support for position: sticky", | ||
"version": "3.0.0-beta2", | ||
"version": "3.0.0-beta3", | ||
"author": "Marc McIntyre <marchaos@gmail.com>", | ||
@@ -6,0 +6,0 @@ "license": "MIT", |
56470
1112