@atlaskit/table-tree
Version:
A table tree is an expandable table for showing nested hierarchies of information.
27 lines (26 loc) • 841 B
JavaScript
import React, { useState } from 'react';
import Item from './item';
import LoaderItem from './loader-item';
function Items({
depth = 0,
items,
loadingLabel,
render
}) {
const [isLoaderShown, setIsLoaderShown] = useState(false);
const handleLoaderComplete = () => setIsLoaderShown(false);
return !items || isLoaderShown ? /*#__PURE__*/React.createElement(LoaderItem, {
isCompleting: !!(items && items.length),
onComplete: handleLoaderComplete,
depth: depth + 1,
loadingLabel: loadingLabel
}) : /*#__PURE__*/React.createElement(React.Fragment, null, items.map(data => /*#__PURE__*/React.createElement(Item, {
data: data,
depth: depth + 1,
key: data.id,
render: render,
loadingLabel: loadingLabel
})));
}
// eslint-disable-next-line @repo/internal/react/require-jsdoc
export default Items;