import { Loading } from '@/components/shared' import AdaptableCard from '@/components/shared/AdaptableCard' import Container from '@/components/shared/Container' import { Table } from '@/components/ui' import { TenantDto } from '@/proxy/config/models' import { useLocalization } from '@/utils/hooks/useLocalization' import useThemeClass from '@/utils/hooks/useThemeClass' import isEmpty from 'lodash/isEmpty' import { useEffect, useState } from 'react' import { Helmet } from 'react-helmet' import TenantsConnectionString from './TenantsConnectionString' import { getTenants } from '@/services/tenant.service' const { Tr, Th, Td, THead, TBody } = Table const Tenants = () => { const { textTheme } = useThemeClass() const [loading, setLoading] = useState(true) const [tenantList, setTenantList] = useState([]) const [activeTenant, setActiveTenant] = useState() const { translate } = useLocalization() const fetchData = async () => { setLoading(true) const response = await getTenants() if (response.data?.items) { setTenantList(response.data.items) } setLoading(false) } useEffect(() => { if (isEmpty(tenantList)) { fetchData() } }, []) const dialogOpen = (tenant: TenantDto) => { setActiveTenant(tenant) } return ( <> {tenantList.map((tenant) => ( ))}
Tenant
dialogOpen(tenant)} > {translate('::AbpTenantManagement.Tenants.ManageConnectionStrings')}
{tenant.name}
{activeTenant && ( setActiveTenant(undefined)} > )} ) } export default Tenants