import React, { useRef } from 'react'; import { Meta } from '@storybook/react'; import { longTree } from 'demodata'; import { Tree } from '../tree/Tree'; import { UncontrolledTreeEnvironment } from '../uncontrolledEnvironment/UncontrolledTreeEnvironment'; import { TreeEnvironmentRef, TreeRef } from '../types'; export default { title: 'Core/Delayed Data Source', } as Meta; export const TreeWithDelayedDataProvider = () => ( canDragAndDrop canDropOnFolder canReorderItems dataProvider={{ getTreeItem: itemId => new Promise(res => { setTimeout(() => res(longTree.items[itemId]), 750); }), }} getItemTitle={item => item.data} viewState={{ 'tree-1': {}, }} > ); export const WithExpandOrCollapseAll = () => { const treeEnvironment = useRef(null); const tree = useRef(null); return ( ref={treeEnvironment} canDragAndDrop canDropOnFolder canReorderItems dataProvider={{ getTreeItem: itemId => new Promise(res => { setTimeout(() => res(longTree.items[itemId]), 750); }), }} getItemTitle={item => item.data} viewState={{ 'tree-1': { // expandedItems: ['Fruit', 'Meals', 'Asia', 'Desserts'], }, }} > ); };