fix error on details page of schema reg section load

This commit is contained in:
Oleg Shuralev 2021-03-10 23:10:32 +03:00
parent 3b47cf3104
commit c2b8a79c1e
No known key found for this signature in database
GPG key ID: 99C6BDC0A1C2E647
3 changed files with 56 additions and 120 deletions

View file

@ -8,6 +8,7 @@ import LatestVersionItem from './LatestVersionItem';
import PageLoader from '../../common/PageLoader/PageLoader'; import PageLoader from '../../common/PageLoader/PageLoader';
export interface DetailsProps { export interface DetailsProps {
subject: SchemaName;
schema: SchemaSubject; schema: SchemaSubject;
clusterName: ClusterName; clusterName: ClusterName;
versions: SchemaSubject[]; versions: SchemaSubject[];
@ -19,6 +20,7 @@ export interface DetailsProps {
} }
const Details: React.FC<DetailsProps> = ({ const Details: React.FC<DetailsProps> = ({
subject,
schema, schema,
clusterName, clusterName,
fetchSchemaVersions, fetchSchemaVersions,
@ -26,8 +28,9 @@ const Details: React.FC<DetailsProps> = ({
isFetched, isFetched,
}) => { }) => {
React.useEffect(() => { React.useEffect(() => {
fetchSchemaVersions(clusterName, schema.subject as SchemaName); fetchSchemaVersions(clusterName, subject);
}, [fetchSchemaVersions, clusterName]); }, [fetchSchemaVersions, clusterName]);
return ( return (
<div className="section"> <div className="section">
<div className="level"> <div className="level">
@ -39,9 +42,11 @@ const Details: React.FC<DetailsProps> = ({
}, },
]} ]}
> >
{schema.subject} {subject}
</Breadcrumb> </Breadcrumb>
</div> </div>
{isFetched ? (
<>
<div className="box"> <div className="box">
<div className="level"> <div className="level">
<div className="level-left"> <div className="level-left">
@ -75,7 +80,6 @@ const Details: React.FC<DetailsProps> = ({
</div> </div>
<LatestVersionItem schema={schema} /> <LatestVersionItem schema={schema} />
</div> </div>
{isFetched ? (
<div className="box"> <div className="box">
<table className="table is-striped is-fullwidth"> <table className="table is-striped is-fullwidth">
<thead> <thead>
@ -92,6 +96,7 @@ const Details: React.FC<DetailsProps> = ({
</tbody> </tbody>
</table> </table>
</div> </div>
</>
) : ( ) : (
<PageLoader /> <PageLoader />
)} )}

View file

@ -24,6 +24,7 @@ const mapStateToProps = (
}, },
}: OwnProps }: OwnProps
) => ({ ) => ({
subject,
schema: getSchema(state, subject), schema: getSchema(state, subject),
versions: getSortedSchemaVersions(state), versions: getSortedSchemaVersions(state),
isFetched: getIsSchemaVersionFetched(state), isFetched: getIsSchemaVersionFetched(state),

View file

@ -16,9 +16,7 @@ exports[`Details View Initial state matches snapshot 1`] = `
}, },
] ]
} }
> />
test
</Breadcrumb>
</div> </div>
<div <div
className="box" className="box"
@ -123,70 +121,6 @@ exports[`Details View when page with schema versions is loading matches snapshot
}, },
] ]
} }
>
test
</Breadcrumb>
</div>
<div
className="box"
>
<div
className="level"
>
<div
className="level-left"
>
<div
className="level-item"
>
<div
className="mr-1"
>
<b>
Latest Version
</b>
</div>
<div
className="tag is-info is-light"
title="Version"
>
#
1
</div>
</div>
</div>
<div
className="level-right"
>
<button
className="button is-warning is-small level-item"
disabled={true}
title="in development"
type="button"
>
Update Schema
</button>
<button
className="button is-danger is-small level-item"
disabled={true}
title="in development"
type="button"
>
Delete
</button>
</div>
</div>
<LatestVersionItem
schema={
Object {
"compatibilityLevel": "BACKWARD",
"id": 1,
"schema": "{\\"type\\":\\"record\\",\\"name\\":\\"MyRecord1\\",\\"namespace\\":\\"com.mycompany\\",\\"fields\\":[{\\"name\\":\\"id\\",\\"type\\":\\"long\\"}]}",
"schemaType": "JSON",
"subject": "test",
"version": "1",
}
}
/> />
</div> </div>
<PageLoader /> <PageLoader />
@ -209,9 +143,7 @@ exports[`Details View when page with schema versions loaded when schema has vers
}, },
] ]
} }
> />
test
</Breadcrumb>
</div> </div>
<div <div
className="box" className="box"
@ -343,9 +275,7 @@ exports[`Details View when page with schema versions loaded when versions are em
}, },
] ]
} }
> />
test
</Breadcrumb>
</div> </div>
<div <div
className="box" className="box"