import React, { useMemo, FC } from 'react'; import { Box, Button, ButtonGroup, Skeleton, Throbber, InputBox } from '@rocket.chat/fuselage'; import { useTranslation } from '../../../contexts/TranslationContext'; import EditCustomUserStatus from './EditCustomUserStatus'; import { useEndpointData } from '../../../hooks/useEndpointData'; import { AsyncStatePhase } from '../../../hooks/useAsyncState'; type EditCustomUserStatusWithDataProps = { _id: string; close: () => void; onChange: () => void; }; export const EditCustomUserStatusWithData: FC = ({ _id, onChange, ...props }) => { const t = useTranslation(); const query = useMemo(() => ({ query: JSON.stringify({ _id }) }), [_id]); const { value: data, phase: state, error, reload } = useEndpointData<{ statuses: unknown[]; }>('custom-user-status.list', query); if (state === AsyncStatePhase.LOADING) { return ; } if (error || !data || data.statuses.length < 1) { return {t('Custom_User_Status_Error_Invalid_User_Status')}; } const handleChange = (): void => { onChange && onChange(); reload && reload(); }; return ; }; export default EditCustomUserStatusWithData;