UNPKG

react-vtree

Version:

React component for efficiently rendering large tree structures

41 lines (37 loc) 1.09 kB
export const identity = value => value; export const createRecord = (data, { opennessState }, { recomputeTree }) => { var _opennessState; const record = { data, isOpen: (_opennessState = opennessState == null ? void 0 : opennessState[data.id]) != null ? _opennessState : data.isOpenByDefault, toggle() { record.isOpen = !record.isOpen; return recomputeTree({ refreshNodes: record.isOpen }); } }; return record; }; export const shouldUpdateRecords = ({ opennessState, useDefaultOpenness = false }) => !!opennessState || useDefaultOpenness; export const updateRecord = (record, recordId, { opennessState, useDefaultOpenness = false }) => { var _opennessState2; record.isOpen = useDefaultOpenness ? record.data.isOpenByDefault : (_opennessState2 = opennessState == null ? void 0 : opennessState[recordId]) != null ? _opennessState2 : record.isOpen; }; export const updateRecordOnNewData = (record, { useDefaultOpenness = false }) => { if (useDefaultOpenness) { record.isOpen = record.data.isOpenByDefault; } };