File tree 3 files changed +30
-4
lines changed
src/containers/Tenant/Schema/SchemaViewer
3 files changed +30
-4
lines changed Original file line number Diff line number Diff line change 62
62
& __more-badge {
63
63
margin-left : var (--g-spacing-1 );
64
64
}
65
+ & __key-icon {
66
+ position : absolute ;
67
+ top : 3.5px ;
68
+
69
+ margin-left : var (--g-spacing-half );
70
+
71
+ vertical-align : baseline ;
72
+ }
73
+ & __id-wrapper {
74
+ position : relative ;
75
+
76
+ display : inline-block ;
77
+
78
+ padding-right : var (--g-spacing-1 );
79
+ }
65
80
}
Original file line number Diff line number Diff line change 1
1
import DataTable from '@gravity-ui/react-data-table' ;
2
+ import { Icon } from '@gravity-ui/uikit' ;
2
3
3
4
import { getColumnWidth } from '../../../../utils/getColumnWidth' ;
4
5
5
6
import i18n from './i18n' ;
7
+ import { b } from './shared' ;
6
8
import type { SchemaColumn , SchemaData } from './types' ;
7
9
10
+ import KeyIcon from '@gravity-ui/icons/svgs/key.svg' ;
11
+
8
12
export const SCHEMA_COLUMNS_WIDTH_LS_KEY = 'schemaTableColumnsWidth' ;
9
13
10
14
const SCHEMA_TABLE_COLUMS_IDS = {
@@ -26,7 +30,16 @@ const idColumn: SchemaColumn = {
26
30
return i18n ( 'column-title.id' ) ;
27
31
} ,
28
32
width : 60 ,
29
- render : ( { row} ) => row . id ,
33
+ align : DataTable . RIGHT ,
34
+ render : ( { row} ) => {
35
+ const keyIcon = < Icon className = { b ( 'key-icon' ) } size = { 12 } data = { KeyIcon } /> ;
36
+ return (
37
+ < span className = { b ( 'id-wrapper' ) } >
38
+ { row . id }
39
+ { row . keyColumnIndex === undefined || row . keyColumnIndex === - 1 ? null : keyIcon }
40
+ </ span >
41
+ ) ;
42
+ } ,
30
43
} ;
31
44
const nameColumn : SchemaColumn = {
32
45
name : SCHEMA_TABLE_COLUMS_IDS . name ,
Original file line number Diff line number Diff line change @@ -70,10 +70,8 @@ function prepareRowTableSchema(data: TTableDescription = {}): SchemaData[] {
70
70
columnCodec,
71
71
} ;
72
72
} ) ;
73
- const keyColumns = preparedColumns ?. filter ( ( column ) => column . keyColumnIndex !== - 1 ) || [ ] ;
74
- const otherColumns = preparedColumns ?. filter ( ( column ) => column . keyColumnIndex === - 1 ) || [ ] ;
75
73
76
- return [ ... keyColumns , ... otherColumns ] ;
74
+ return preparedColumns ?? [ ] ;
77
75
}
78
76
79
77
function prepareExternalTableSchema ( data : TExternalTableDescription = { } ) : SchemaData [ ] {
You can’t perform that action at this time.
0 commit comments