@websolutespa/payload-plugin-bowl
Version:
Bowl PayloadCms plugin of the BOM Repository
52 lines (51 loc) • 1.59 kB
JavaScript
import { useState } from 'react';
export function useDataTree(items) {
const [data, setData] = useState({
items
});
return {
getTreeItem: async (itemId)=>{
console.log('getTreeItem', itemId);
return data.items[itemId];
},
onChangeItemChildren: async (itemId, children)=>{
console.log('onChangeItemChildren', itemId);
const items = {
...data.items
};
const item = {
...items[itemId]
};
item.children = children;
items[itemId] = item;
setData({
items
});
// this.data.items[itemId].children = children;
// this.onItemsDidChange_(items);
// this.onDidChangeTreeDataEmitter.emit([itemId]);
},
onRenameItem: async (item, name)=>{
console.log('onRenameItem', item, name);
const items = {
...data.items
};
const newItem = {
...item
};
newItem.data = name;
items[item.index] = newItem;
setData({
items
});
// this.data.items[item.index] = this.setItemName(item, name);
// this.onItemsDidChange_(items);
// this.onDidChangeTreeDataEmitter.emit(item.index);
},
onDidChangeTreeData: (listener)=>{
console.log('onDidChangeTreeData', listener);
return null;
}
};
}
//# sourceMappingURL=useDataTree.js.map