/* eslint-disable react/display-name */ import React, { memo } from "react"; import PropTypes from "prop-types"; import CustomScrollbarsVirtualList from "../scrollbar/custom-scrollbars-virtual-list"; import { FixedSizeList as List, areEqual } from "react-window"; import AutoSizer from "react-virtualized-auto-sizer"; import ContextMenu from "../context-menu"; import StyledRowContainer from "./styled-row-container"; class RowContainer extends React.PureComponent { constructor(props) { super(props); this.state = { contextOptions: [], }; } onRowContextClick = (options) => { if (Array.isArray(options)) { this.setState({ contextOptions: options, }); } }; componentDidMount() { window.addEventListener("contextmenu", this.onRowContextClick); } componentWillUnmount() { window.removeEventListener("contextmenu", this.onRowContextClick); } // eslint-disable-next-line react/prop-types renderRow = memo(({ data, index, style }) => { // eslint-disable-next-line react/prop-types const options = data[index].props.contextOptions; return (