import React from 'react'; import Button from './Button'; import { FixedSizeList as List, areEqual } from 'react-window'; import { RotateCw } from 'react-feather'; import { connect } from './StateProvider'; import { getClashAPIConfig } from '../store/app'; import ContentHeader from './ContentHeader'; import Rule from './Rule'; import RuleSearch from './RuleSearch'; import useRemainingViewPortHeight from '../hooks/useRemainingViewPortHeight'; import { getRules, fetchRules, fetchRulesOnce } from '../store/rules'; const { memo, useEffect, useMemo, useCallback } = React; // import s from './Rules.module.css'; const paddingBottom = 30; function itemKey(index, data) { const item = data[index]; return item.id; } const Row = memo(({ index, style, data }) => { const r = data[index]; return (