11import type { ButtonSize } from '@gravity-ui/uikit' ;
22import { Button , Icon } from '@gravity-ui/uikit' ;
3- import type { NavigationTreeNodeType , NavigationTreeProps } from 'ydb-ui-components' ;
3+ import type { NavigationTreeNodeType } from 'ydb-ui-components' ;
44
55import { api } from '../../../store/reducers/api' ;
66import { setShowPreview } from '../../../store/reducers/schema/schema' ;
77import { TENANT_PAGES_IDS , TENANT_QUERY_TABS_ID } from '../../../store/reducers/tenant/constants' ;
88import { setQueryTab , setTenantPage } from '../../../store/reducers/tenant/tenant' ;
99import i18n from '../i18n' ;
1010
11+ import type { YdbNavigationTreeProps } from './types' ;
12+
1113import EyeIcon from '@gravity-ui/icons/svgs/eye.svg' ;
1214
1315interface ControlsAdditionalEffects {
@@ -32,7 +34,7 @@ const bindActions = (
3234 } ;
3335} ;
3436
35- type Controls = ReturnType < Required < NavigationTreeProps > [ 'renderAdditionalNodeElements' ] > ;
37+ type Controls = ReturnType < Required < YdbNavigationTreeProps > [ 'renderAdditionalNodeElements' ] > ;
3638
3739type SummaryType = 'preview' ;
3840
@@ -55,8 +57,8 @@ export const getSchemaControls =
5557 additionalEffects : ControlsAdditionalEffects ,
5658 size ?: ButtonSize ,
5759 isTopicPreviewAvailable ?: boolean ,
58- ) =>
59- ( path : string , type : NavigationTreeNodeType ) => {
60+ ) : YdbNavigationTreeProps [ 'renderAdditionalNodeElements' ] =>
61+ ( path , type , meta ) => {
6062 const options = bindActions ( path , dispatch , additionalEffects ) ;
6163 const openPreview = getPreviewControl ( options , size ) ;
6264
@@ -72,7 +74,7 @@ export const getSchemaControls =
7274 column_table : openPreview ,
7375
7476 index_table : undefined ,
75- topic : isTopicPreviewAvailable ? openPreview : undefined ,
77+ topic : isTopicPreviewAvailable && ! meta . subType ? openPreview : undefined ,
7678 stream : undefined ,
7779
7880 index : undefined ,
0 commit comments