@@ -13,7 +13,13 @@ import Search from 'components/common/Search/Search';
1313import PlusIcon from 'components/common/Icons/PlusIcon' ;
1414import Table , { LinkCell } from 'components/common/NewTable' ;
1515import { ColumnDef } from '@tanstack/react-table' ;
16- import { Action , SchemaSubject , ResourceType } from 'generated-sources' ;
16+ import {
17+ Action ,
18+ SchemaSubject ,
19+ ResourceType ,
20+ SchemaColumnsToSort ,
21+ SortOrder ,
22+ } from 'generated-sources' ;
1723import { useNavigate , useSearchParams } from 'react-router-dom' ;
1824import { PER_PAGE } from 'lib/constants' ;
1925import { useGetSchemas } from 'lib/hooks/api/schemas' ;
@@ -27,14 +33,18 @@ const List: React.FC = () => {
2733 const navigate = useNavigate ( ) ;
2834 const [ searchParams ] = useSearchParams ( ) ;
2935 const {
30- isFetching ,
36+ isInitialLoading ,
3137 isError,
3238 data = { pageCount : 1 , schemas : [ ] as SchemaSubject [ ] } ,
3339 } = useGetSchemas ( {
3440 clusterName,
3541 page : Number ( searchParams . get ( 'page' ) || 1 ) ,
3642 perPage : Number ( searchParams . get ( 'perPage' ) || PER_PAGE ) ,
3743 search : searchParams . get ( 'q' ) || '' ,
44+ orderBy : ( searchParams . get ( 'sortBy' ) as SchemaColumnsToSort ) ?? undefined ,
45+ sortOrder :
46+ ( searchParams . get ( 'sortDirection' ) ?. toUpperCase ( ) as SortOrder ) ||
47+ undefined ,
3848 } ) ;
3949
4050 const columns = React . useMemo < ColumnDef < SchemaSubject > [ ] > (
@@ -53,7 +63,12 @@ const List: React.FC = () => {
5363 } ,
5464 { header : 'Id' , accessorKey : 'id' , size : 120 } ,
5565 { header : 'Type' , accessorKey : 'schemaType' , size : 120 } ,
56- { header : 'Version' , accessorKey : 'version' , size : 120 } ,
66+ {
67+ header : 'Version' ,
68+ accessorKey : 'version' ,
69+ size : 120 ,
70+ enableSorting : false ,
71+ } ,
5772 {
5873 header : 'Compatibility' ,
5974 accessorKey : 'compatibilityLevel' ,
@@ -86,7 +101,7 @@ const List: React.FC = () => {
86101 < ControlPanelWrapper hasInput >
87102 < Search placeholder = "Search by Schema Name" />
88103 </ ControlPanelWrapper >
89- { isFetching || isError ? (
104+ { isInitialLoading || isError ? (
90105 < PageLoader />
91106 ) : (
92107 < Table
0 commit comments