@talend/react-components
Version:
Set of react components.
79 lines (77 loc) • 3.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _reactVirtualized = require("react-virtualized");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _classnames = _interopRequireDefault(require("classnames"));
var _TreeCellMeasurer = _interopRequireDefault(require("../TreeCellMeasurer"));
var _VirtualizedTreeModule = _interopRequireDefault(require("./VirtualizedTree.module.scss"));
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
const DEFAULT_HEIGHT = 40;
/**
* Help to use react-virtualized.
*/
class VirtualizedTree extends _react.Component {
constructor(..._args) {
super(..._args);
_defineProperty(this, "lazyLoadingCallBack", ({
startIndex,
stopIndex
}) => {
if (this.props.onVerticalScroll) {
this.props.onVerticalScroll({}, {
firstDisplayedRowIndex: startIndex,
lastDisplayedRowIndex: stopIndex
});
}
});
_defineProperty(this, "renderTreeCellMeasurer", args => /*#__PURE__*/(0, _jsxRuntime.jsx)(_TreeCellMeasurer.default, {
...args,
className: this.props.cellMeasurerClassName,
cellRenderer: this.props.cellRenderer
}));
}
render() {
const cache = new _reactVirtualized.CellMeasurerCache({
fixedWidth: true,
defaultHeight: DEFAULT_HEIGHT
});
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: (0, _classnames.default)(_VirtualizedTreeModule.default['tc-virtualized-tree'], 'tc-virtualized-tree', this.props.className),
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactVirtualized.AutoSizer, {
disableHeight: this.props.disableHeight,
children: ({
height,
width
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactVirtualized.List, {
...this.props,
cache: cache,
deferredMeasurementCache: cache,
height: height,
onRowsRendered: this.lazyLoadingCallBack,
rowCount: this.props.rowCount,
rowHeight: cache.rowHeight,
rowRenderer: this.renderTreeCellMeasurer,
width: width
})
})
});
}
}
exports.default = VirtualizedTree;
_defineProperty(VirtualizedTree, "propTypes", {
cellRenderer: _propTypes.default.func.isRequired,
className: _propTypes.default.string,
onVerticalScroll: _propTypes.default.func,
rowCount: _propTypes.default.number,
cellMeasurerClassName: _propTypes.default.string,
disableHeight: _propTypes.default.bool
});
//# sourceMappingURL=VirtualizedTree.component.js.map