import React from 'react'; import { SchemaSubject } from 'generated-sources'; import { Link, useParams } from 'react-router-dom'; import { clusterSchemaNewPath } from 'lib/paths'; import { ClusterName } from 'redux/interfaces'; import PageLoader from 'components/common/PageLoader/PageLoader'; import Breadcrumb from 'components/common/Breadcrumb/Breadcrumb'; import ClusterContext from 'components/contexts/ClusterContext'; import ListItem from './ListItem'; export interface ListProps { schemas: SchemaSubject[]; isFetching: boolean; fetchSchemasByClusterName: (clusterName: ClusterName) => void; } const List: React.FC = ({ schemas, isFetching, fetchSchemasByClusterName, }) => { const { isReadOnly } = React.useContext(ClusterContext); const { clusterName } = useParams<{ clusterName: string }>(); React.useEffect(() => { fetchSchemasByClusterName(clusterName); }, [fetchSchemasByClusterName, clusterName]); return (
Schema Registry
{!isReadOnly && (
Create Schema
)}
{isFetching ? ( ) : (
{schemas.length === 0 && ( )} {schemas.map((subject) => ( ))}
Schema Name Version Compatibility
No schemas found
)}
); }; export default List;