import { CheckTreePicker } from "rsuite";
import "rsuite/dist/rsuite.min.css";
import Copyright from "@rsuite/icons/legacy/Copyright"
import PlusCircle from "@rsuite/icons/legacy/PlusCircle"
import Tag from "@rsuite/icons/legacy/Tag"
export default function App() {
const customData = [
{
label: "Data Structures",
value: 1,
children: [
{
label: "Queue",
value: 2,
children: [
{
label: "Priority Queue",
value: 3,
},
{
label: "FIFO Queue",
value: 4,
},
],
},
{
label: "Linked List",
value: 5,
children: [
{
label: "Circular",
value: 6,
},
{
label: "Double",
value: 7,
},
{
label: "Single",
value: 8,
},
],
},
],
},
];
return (
<center>
<div>
<h2>GeeksforGeeks</h2>
<h4 style={{ color: "green" }}>
React Suite CheckTreePicker Custom Options</h4>
<div style={{ marginTop: 20, width: 800 }}>
<CheckTreePicker
defaultExpandAll
data={customData}
style={{ width: 280 }}
placeholder={
<span>
<PlusCircle color="gray" />
Select Algorithms
</span>
}
renderTreeNode={(nodeData) => {
return (
<span>
<i className="rs-icon
rs-icon-map-marker" />
{nodeData.label}
</span>
);
}}
renderValue={(value, checkedItems) => {
return (
<span>
<span style={{ color: "#575757" }}>
<Tag color="gray" />
Selected Algorithms :
</span>{" "}
{checkedItems.map(
(item) => item.label).join(" , ")}
</span>
);
}}
renderExtraFooter={() => {
return (
<span style={{ padding: 6,
alignItems: 'center',
textAlign: 'center' }}>
<Copyright color="gray" />
by GeeksforGeeks
</span>
);
}}
/>
</div>
</div>
</center>
);
}