import { Icon, SearchInput, CardGrid } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; import { Page, PageHeader, PageScrollableContentWithShadow, PageBlockWithBorder } from '@rocket.chat/ui-client'; import type { TranslationKey } from '@rocket.chat/ui-contexts'; import type { ChangeEvent } from 'react'; import { useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; import SettingsGroupCard from './SettingsGroupCard'; import { useSettingsGroups } from './hooks/useSettingsGroups'; import GenericNoResults from '../../../components/GenericNoResults'; const SettingsPage = () => { const { t } = useTranslation(); const [filter, setFilter] = useState(''); const handleChange = useCallback((e: ChangeEvent) => setFilter(e.currentTarget.value), []); const groups = useSettingsGroups(useDebouncedValue(filter, 400)); return ( } /> {!!groups.length && groups.map((group) => ( ))} {!groups.length && } ); }; export default SettingsPage;