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'],
},
}}
>
);
};