UNPKG

react-vtree

Version:

React component for efficiently rendering large tree structures

42 lines (39 loc) 1.7 kB
export var identity = function identity(value) { return value; }; export var createRecord = function createRecord(data, _ref, _ref2) { var _opennessState; var opennessState = _ref.opennessState; var recomputeTree = _ref2.recomputeTree; var record = { data: data, isOpen: (_opennessState = opennessState == null ? void 0 : opennessState[data.id]) != null ? _opennessState : data.isOpenByDefault, toggle: function toggle() { record.isOpen = !record.isOpen; return recomputeTree({ refreshNodes: record.isOpen }); } }; return record; }; export var shouldUpdateRecords = function shouldUpdateRecords(_ref3) { var opennessState = _ref3.opennessState, _ref3$useDefaultOpenn = _ref3.useDefaultOpenness, useDefaultOpenness = _ref3$useDefaultOpenn === void 0 ? false : _ref3$useDefaultOpenn; return !!opennessState || useDefaultOpenness; }; export var updateRecord = function updateRecord(record, recordId, _ref4) { var _opennessState2; var opennessState = _ref4.opennessState, _ref4$useDefaultOpenn = _ref4.useDefaultOpenness, useDefaultOpenness = _ref4$useDefaultOpenn === void 0 ? false : _ref4$useDefaultOpenn; record.isOpen = useDefaultOpenness ? record.data.isOpenByDefault : (_opennessState2 = opennessState == null ? void 0 : opennessState[recordId]) != null ? _opennessState2 : record.isOpen; }; export var updateRecordOnNewData = function updateRecordOnNewData(record, _ref5) { var _ref5$useDefaultOpenn = _ref5.useDefaultOpenness, useDefaultOpenness = _ref5$useDefaultOpenn === void 0 ? false : _ref5$useDefaultOpenn; if (useDefaultOpenness) { record.isOpen = record.data.isOpenByDefault; } };