import React from 'react';
import { numberWithCommas } from 'App/utils';
import withPageTitle from 'HOCs/withPageTitle';
import withPermissions from 'HOCs/withPermissions';
import FFlagsListHeader from 'Components/FFlags/FFlagsListHeader';
import AnimatedSVG, { ICONS } from 'Shared/AnimatedSVG/AnimatedSVG';
import { Loader, NoContent, Pagination } from 'UI';
import FFlagItem from './FFlagItem';
import { useStore } from 'App/mstore';
import { observer } from 'mobx-react-lite';
import Select from 'Shared/Select';
function FFlagsList({ siteId }: { siteId: string }) {
const { featureFlagsStore, userStore } = useStore();
React.useEffect(() => {
void featureFlagsStore.fetchFlags();
void userStore.fetchUsers();
}, []);
return (
Status:
{featureFlagsStore.sort.query === ''
? "You haven't created any feature flags yet"
: 'No matching results'}
}
subtext={
featureFlagsStore.sort.query === '' ? (
Use feature flags to deploy and rollback new functionality with ease.
) : null
}
>
Key
Last modified
By
Status
{featureFlagsStore.flags.map((flag) => (
))}
Showing{' '}
{(featureFlagsStore.page - 1) * featureFlagsStore.pageSize + 1}
{' '}
to{' '}
{(featureFlagsStore.page - 1) * featureFlagsStore.pageSize +
featureFlagsStore.flags.length}
{' '}
of {numberWithCommas(featureFlagsStore.total)}{' '}
Feature Flags.
featureFlagsStore.setPage(page)}
limit={featureFlagsStore.pageSize}
debounceRequest={100}
/>
);
}
export default withPageTitle('Feature Flags')(
withPermissions(['FEATURE_FLAGS'])(observer(FFlagsList))
);