@@ -15,7 +15,7 @@ import { formatDateAsTimeAgo } from '../../utils/i18n/timeAgo';
1515
1616import { YamlViewButton } from '../Yaml/YamlViewButton.tsx' ;
1717
18- import { useCallback , useContext , useMemo , useRef } from 'react' ;
18+ import { Fragment , useCallback , useContext , useMemo , useRef } from 'react' ;
1919import { Resource } from '../../utils/removeManagedFieldsAndFilterData.ts' ;
2020import { ProviderConfigItem } from '../../lib/shared/types.ts' ;
2121import { ProviderConfigsRowActionsMenu } from './ProviderConfigsActionMenu.tsx' ;
@@ -35,13 +35,8 @@ type Rows = {
3535 resource : ProviderConfigItem ;
3636} ;
3737
38- interface CellData < T > {
39- cell : {
40- value : T | null ; // null for grouping rows
41- row : {
42- original ?: Rows ; // missing for grouping rows
43- } ;
44- } ;
38+ interface CellRow < T > {
39+ original : T ;
4540}
4641
4742export function ProvidersConfig ( ) {
@@ -77,14 +72,14 @@ export function ProvidersConfig() {
7772 ( item : ProviderConfigItem ) => {
7873 const identityKey = `${ item . kind } :${ item . metadata . name } ` ;
7974 openInAside (
80- < >
75+ < Fragment key = { identityKey } >
8176 < YamlSidePanel
8277 isEdit = { true }
8378 resource = { item as unknown as Resource }
8479 filename = { `${ item . kind } _${ item . metadata . name } ` }
8580 onApply = { async ( parsed ) =>
8681 await handleResourcePatch ( {
87- item : item as unknown as any , // cast to align with expected shape
82+ item,
8883 parsed,
8984 getPluralKind,
9085 apiConfig,
@@ -94,53 +89,54 @@ export function ProvidersConfig() {
9489 } )
9590 }
9691 />
97- </ > ,
92+ </ Fragment > ,
9893 ) ;
9994 } ,
10095 [ openInAside , getPluralKind , apiConfig , t , toast ] ,
10196 ) ;
10297
103- const columns : AnalyticalTableColumnDefinition [ ] = useMemo (
104- ( ) => [
105- {
106- Header : t ( 'ProvidersConfig.tableHeaderProvider' ) ,
107- accessor : 'parent' ,
108- } ,
109- {
110- Header : t ( 'ProvidersConfig.tableHeaderName' ) ,
111- accessor : 'name' ,
112- } ,
113- {
114- Header : t ( 'ProvidersConfig.tableHeaderUsage' ) ,
115- accessor : 'usage' ,
116- } ,
117- {
118- Header : t ( 'ProvidersConfig.tableHeaderCreated' ) ,
119- accessor : 'created' ,
120- } ,
121- {
122- Header : t ( 'yaml.YAML' ) ,
123- hAlign : 'Center' ,
124- width : 75 ,
125- accessor : 'yaml' ,
126- disableFilters : true ,
127- Cell : ( cellData : CellData < Rows > ) =>
128- cellData . cell . row . original ?. resource ? (
129- < YamlViewButton variant = "resource" resource = { cellData . cell . row . original ?. resource as unknown as Resource } />
130- ) : undefined ,
131- } ,
132- {
133- Header : t ( 'ManagedResources.actionColumnHeader' ) ,
134- hAlign : 'Center' ,
135- width : 60 ,
136- disableFilters : true ,
137- accessor : 'actions' ,
138- Cell : ( cellData : CellData < Rows > ) => {
139- const item = cellData . cell . row . original ?. resource ;
140- return item ? < ProviderConfigsRowActionsMenu item = { item } onEdit = { openEditPanel } /> : undefined ;
98+ const columns = useMemo (
99+ ( ) =>
100+ [
101+ {
102+ Header : t ( 'ProvidersConfig.tableHeaderProvider' ) ,
103+ accessor : 'parent' ,
141104 } ,
142- } ,
143- ] ,
105+ {
106+ Header : t ( 'ProvidersConfig.tableHeaderName' ) ,
107+ accessor : 'name' ,
108+ } ,
109+ {
110+ Header : t ( 'ProvidersConfig.tableHeaderUsage' ) ,
111+ accessor : 'usage' ,
112+ } ,
113+ {
114+ Header : t ( 'ProvidersConfig.tableHeaderCreated' ) ,
115+ accessor : 'created' ,
116+ } ,
117+ {
118+ Header : t ( 'yaml.YAML' ) ,
119+ hAlign : 'Center' ,
120+ width : 75 ,
121+ accessor : 'yaml' ,
122+ disableFilters : true ,
123+ Cell : ( { row } : { row : CellRow < Rows > } ) => {
124+ const item = row . original ?. resource ;
125+ return item ? < YamlViewButton variant = "resource" resource = { item as unknown as Resource } /> : undefined ;
126+ } ,
127+ } ,
128+ {
129+ Header : t ( 'ManagedResources.actionColumnHeader' ) ,
130+ hAlign : 'Center' ,
131+ width : 60 ,
132+ disableFilters : true ,
133+ accessor : 'actions' ,
134+ Cell : ( { row } : { row : CellRow < Rows > } ) => {
135+ const item = row . original ?. resource ;
136+ return item ? < ProviderConfigsRowActionsMenu item = { item } onEdit = { openEditPanel } /> : undefined ;
137+ } ,
138+ } ,
139+ ] as AnalyticalTableColumnDefinition [ ] ,
144140 [ t , openEditPanel ] ,
145141 ) ;
146142
0 commit comments