ydb-embedded-ui 6.2.2 → 6.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (142) hide show
  1. package/README.md +38 -16
  2. package/dist/assets/icons/disableFullscreen.svg +4 -0
  3. package/dist/assets/icons/emptyState.svg +13 -0
  4. package/dist/assets/icons/key.svg +6 -0
  5. package/dist/assets/icons/monitoring.svg +9 -0
  6. package/dist/assets/icons/network.svg +21 -0
  7. package/dist/components/BasicNodeViewer/BasicNodeViewer.js +11 -5
  8. package/dist/components/CriticalActionDialog/CriticalActionDialog.js +3 -4
  9. package/dist/components/CriticalActionDialog/CriticalActionDialog.scss +2 -0
  10. package/dist/components/EmptyState/EmptyState.js +3 -2
  11. package/dist/components/EnableFullscreenButton/EnableFullscreenButton.js +3 -3
  12. package/dist/components/Fullscreen/Fullscreen.js +3 -3
  13. package/dist/components/MonitoringButton/MonitoringButton.js +3 -3
  14. package/dist/components/NodeHostWrapper/NodeHostWrapper.js +3 -3
  15. package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
  16. package/dist/components/QueryExecutionStatus/QueryExecutionStatus.js +4 -5
  17. package/dist/components/StatusIcon/StatusIcon.js +5 -7
  18. package/dist/containers/App/App.js +1 -2
  19. package/dist/containers/AsideNavigation/AsideNavigation.js +4 -9
  20. package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +2 -3
  21. package/dist/containers/AsideNavigation/useNavigationMenuItems.js +5 -6
  22. package/dist/containers/Authentication/Authentication.js +2 -4
  23. package/dist/containers/Node/NodeStructure/Pdisk.js +4 -4
  24. package/dist/containers/Nodes/Nodes.js +19 -15
  25. package/dist/containers/Nodes/VirtualNodes.js +23 -6
  26. package/dist/containers/PDiskPage/PDiskPage.js +2 -2
  27. package/dist/containers/PDiskPage/i18n/index.d.ts +1 -1
  28. package/dist/containers/Storage/Storage.js +50 -22
  29. package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.js +2 -2
  30. package/dist/containers/Storage/VirtualStorage.js +32 -10
  31. package/dist/containers/Storage/utils/index.d.ts +4 -1
  32. package/dist/containers/Storage/utils/index.js +29 -0
  33. package/dist/containers/Tablet/Tablet.js +3 -3
  34. package/dist/containers/Tablet/i18n/index.d.ts +1 -1
  35. package/dist/containers/Tablets/Tablets.d.ts +1 -2
  36. package/dist/containers/Tablets/Tablets.js +112 -53
  37. package/dist/containers/Tablets/i18n/en.json +9 -4
  38. package/dist/containers/Tablets/i18n/index.d.ts +1 -1
  39. package/dist/containers/Tablets/i18n/index.js +1 -2
  40. package/dist/containers/Tenant/Diagnostics/Diagnostics.js +5 -5
  41. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.d.ts +7 -0
  42. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js +2 -0
  43. package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.js +3 -2
  44. package/dist/containers/Tenant/Diagnostics/Network/Network.js +3 -3
  45. package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +1 -0
  46. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js +2 -2
  47. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js +2 -8
  48. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +10 -7
  49. package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.js +1 -1
  50. package/dist/containers/Tenant/Query/Issues/Issues.js +6 -9
  51. package/dist/containers/Tenant/Query/Preview/Preview.js +5 -5
  52. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.d.ts +1 -1
  53. package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js +4 -4
  54. package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.js +3 -3
  55. package/dist/containers/Tenant/Schema/SchemaViewer/helpers.js +7 -6
  56. package/dist/containers/Tenant/i18n/en.json +2 -1
  57. package/dist/containers/Tenant/i18n/index.d.ts +1 -1
  58. package/dist/containers/Tenant/i18n/index.js +1 -2
  59. package/dist/containers/Tenant/utils/ToggleButton.scss +0 -2
  60. package/dist/containers/Tenant/utils/paneVisibilityToggleHelpers.js +4 -4
  61. package/dist/containers/Tenant/utils/queryTemplates.d.ts +2 -0
  62. package/dist/containers/Tenant/utils/queryTemplates.js +6 -0
  63. package/dist/containers/Tenant/utils/schema.d.ts +4 -3
  64. package/dist/containers/Tenant/utils/schema.js +12 -3
  65. package/dist/containers/Tenant/utils/schemaActions.js +10 -1
  66. package/dist/containers/Tenant/utils/schemaControls.js +4 -3
  67. package/dist/containers/VDiskPage/VDiskPage.js +2 -2
  68. package/dist/containers/VDiskPage/i18n/index.d.ts +1 -1
  69. package/dist/routes.d.ts +1 -1
  70. package/dist/services/settings.d.ts +18 -1
  71. package/dist/store/configureStore.d.ts +0 -8
  72. package/dist/store/defaultStore.d.ts +0 -4
  73. package/dist/store/reducers/authentication/authentication.d.ts +0 -6
  74. package/dist/store/reducers/executeQuery.d.ts +0 -2
  75. package/dist/store/reducers/explainQuery.d.ts +0 -4
  76. package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +0 -40
  77. package/dist/store/reducers/host.d.ts +0 -2
  78. package/dist/store/reducers/index.d.ts +0 -6
  79. package/dist/store/reducers/index.js +0 -4
  80. package/dist/store/reducers/node/selectors.d.ts +0 -2
  81. package/dist/store/reducers/nodes/nodes.d.ts +1 -5
  82. package/dist/store/reducers/nodes/nodes.js +0 -27
  83. package/dist/store/reducers/nodes/types.d.ts +4 -13
  84. package/dist/store/reducers/nodesList.d.ts +0 -2
  85. package/dist/store/reducers/schema/schema.d.ts +0 -2
  86. package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +0 -2
  87. package/dist/store/reducers/storage/selectors.d.ts +2 -17
  88. package/dist/store/reducers/storage/selectors.js +1 -36
  89. package/dist/store/reducers/storage/storage.d.ts +2 -6
  90. package/dist/store/reducers/storage/storage.js +0 -44
  91. package/dist/store/reducers/storage/types.d.ts +15 -22
  92. package/dist/store/reducers/storage/types.js +4 -1
  93. package/dist/store/reducers/tablets.d.ts +92 -1
  94. package/dist/store/reducers/tablets.js +16 -1
  95. package/dist/store/reducers/tabletsFilters.d.ts +0 -2
  96. package/dist/store/reducers/tenant/tenant.d.ts +2 -2
  97. package/dist/store/reducers/tenant/tenant.js +10 -1
  98. package/dist/store/reducers/tenant/types.d.ts +8 -3
  99. package/dist/store/reducers/tenant/types.js +3 -1
  100. package/dist/store/reducers/tenants/selectors.d.ts +0 -18
  101. package/dist/store/reducers/tenants/utils.d.ts +4 -4
  102. package/dist/store/reducers/tenants/utils.js +8 -8
  103. package/dist/store/reducers/topic.d.ts +0 -30
  104. package/dist/store/state-url-mapping.js +0 -22
  105. package/dist/types/api/schema/schema.d.ts +4 -1
  106. package/dist/types/api/schema/schema.js +1 -0
  107. package/dist/types/api/schema/view.d.ts +8 -0
  108. package/dist/types/api/schema/view.js +1 -0
  109. package/dist/utils/nodes.d.ts +2 -0
  110. package/dist/utils/nodes.js +4 -0
  111. package/dist/utils/tablet.d.ts +2 -0
  112. package/dist/utils/tablet.js +14 -0
  113. package/package.json +4 -3
  114. package/dist/assets/icons/bug.svg +0 -1
  115. package/dist/assets/icons/circle-exclamation.svg +0 -1
  116. package/dist/assets/icons/circle-info.svg +0 -1
  117. package/dist/assets/icons/circle-xmark.svg +0 -1
  118. package/dist/assets/icons/close.svg +0 -1
  119. package/dist/assets/icons/control-menu-button.svg +0 -1
  120. package/dist/assets/icons/dots.svg +0 -1
  121. package/dist/assets/icons/hide.svg +0 -1
  122. package/dist/assets/icons/question.svg +0 -1
  123. package/dist/assets/icons/server.svg +0 -1
  124. package/dist/assets/icons/settings-with-dot.svg +0 -1
  125. package/dist/assets/icons/settings.svg +0 -1
  126. package/dist/assets/icons/shield.svg +0 -3
  127. package/dist/assets/icons/show.svg +0 -1
  128. package/dist/assets/icons/signIn.svg +0 -1
  129. package/dist/assets/icons/signOut.svg +0 -1
  130. package/dist/assets/icons/storage.svg +0 -1
  131. package/dist/assets/icons/support.svg +0 -1
  132. package/dist/assets/icons/triangle-exclamation.svg +0 -1
  133. package/dist/assets/icons/update-arrow.svg +0 -6
  134. package/dist/components/Icon/Icon.d.ts +0 -14
  135. package/dist/components/Icon/Icon.js +0 -16
  136. package/dist/components/Icon/index.d.ts +0 -1
  137. package/dist/components/Icon/index.js +0 -1
  138. package/dist/containers/AppIcons/AppIcons.d.ts +0 -2
  139. package/dist/containers/AppIcons/AppIcons.js +0 -9
  140. package/dist/containers/Tablets/Tablets.scss +0 -35
  141. package/dist/containers/Tablets/i18n/ru.json +0 -6
  142. package/dist/containers/Tenant/i18n/ru.json +0 -22
@@ -1,8 +1,99 @@
1
- import type { ETabletState, EType } from '../../types/api/tablet';
1
+ import type { ETabletState, EType, TTabletStateInfo } from '../../types/api/tablet';
2
2
  import type { TabletsApiRequestParams, TabletsState } from '../../types/store/tablets';
3
+ import type { RootState } from '../defaultStore';
3
4
  export declare const setStateFilter: import("@reduxjs/toolkit").ActionCreatorWithPayload<ETabletState[], "tablets/setStateFilter">, setTypeFilter: import("@reduxjs/toolkit").ActionCreatorWithPayload<EType[], "tablets/setTypeFilter">;
4
5
  declare const _default: import("redux").Reducer<TabletsState>;
5
6
  export default _default;
6
7
  export declare const tabletsApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("./api")._NEVER, unknown, {}>, {
7
8
  getTabletsInfo: import("@reduxjs/toolkit/query").QueryDefinition<TabletsApiRequestParams, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("./api")._NEVER, unknown, {}>, "All", import("../../types/api/tablet").TEvTabletStateResponse | undefined, "api">;
8
9
  }, "api", "All", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
10
+ export declare const selectTabletsWithFqdn: ((state: {
11
+ api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
12
+ singleClusterMode: boolean;
13
+ cluster: import("./cluster/types").ClusterState;
14
+ tenant: import("./tenant/types").TenantState;
15
+ tooltip: import("../../types/store/tooltip").ITooltipState;
16
+ tablets: TabletsState;
17
+ schema: import("./schema/types").SchemaState;
18
+ host: import("../../types/store/host").IHostState;
19
+ tenants: import("./tenants/types").TenantsState;
20
+ partitions: import("./partitions/types").PartitionsState;
21
+ executeQuery: import("../../types/store/executeQuery").ExecuteQueryState;
22
+ explainQuery: import("../../types/store/explainQuery").ExplainQueryState;
23
+ tabletsFilters: {
24
+ loading: boolean;
25
+ requestTime: number;
26
+ data: undefined;
27
+ wasLoaded: boolean;
28
+ stateFilter: never[];
29
+ typeFilter: never[];
30
+ } | {
31
+ tabletsData: any;
32
+ nodes: any;
33
+ loading: boolean;
34
+ wasLoaded: boolean;
35
+ timeoutForRequest: number;
36
+ error: undefined;
37
+ data: undefined;
38
+ stateFilter: never[];
39
+ typeFilter: never[];
40
+ } | {
41
+ error: any;
42
+ loading: boolean;
43
+ data: undefined;
44
+ wasLoaded: boolean;
45
+ stateFilter: never[];
46
+ typeFilter: never[];
47
+ } | {
48
+ stateFilter: any;
49
+ data: undefined;
50
+ loading: boolean;
51
+ wasLoaded: boolean;
52
+ typeFilter: never[];
53
+ } | {
54
+ typeFilter: any;
55
+ data: undefined;
56
+ loading: boolean;
57
+ wasLoaded: boolean;
58
+ stateFilter: never[];
59
+ };
60
+ heatmap: import("../../types/store/heatmap").IHeatmapState;
61
+ settings: import("./settings/types").SettingsState;
62
+ schemaAcl: import("./schemaAcl/types").SchemaAclState;
63
+ executeTopQueries: import("./executeTopQueries/types").TopQueriesFilters;
64
+ shardsWorkload: import("./shardsWorkload/types").ShardsWorkloadFilters;
65
+ hotKeys: import("./hotKeys/types").HotKeysState;
66
+ authentication: import("./authentication/types").AuthenticationState;
67
+ header: import("./header/types").HeaderState;
68
+ saveQuery: string | null;
69
+ fullscreen: boolean;
70
+ clusters: import("./clusters/types").ClustersFilters;
71
+ }, nodeId: string | undefined, path: string | undefined) => (TTabletStateInfo & {
72
+ fqdn?: string | undefined;
73
+ })[]) & {
74
+ clearCache: () => void;
75
+ resultsCount: () => number;
76
+ resetResultsCount: () => void;
77
+ } & {
78
+ resultFunc: (resultFuncArgs_0: import("../../types/api/tablet").TEvTabletStateResponse | undefined, resultFuncArgs_1: import("../../types/store/nodesList").NodesMap | undefined) => (TTabletStateInfo & {
79
+ fqdn?: string | undefined;
80
+ })[];
81
+ memoizedResultFunc: ((resultFuncArgs_0: import("../../types/api/tablet").TEvTabletStateResponse | undefined, resultFuncArgs_1: import("../../types/store/nodesList").NodesMap | undefined) => (TTabletStateInfo & {
82
+ fqdn?: string | undefined;
83
+ })[]) & {
84
+ clearCache: () => void;
85
+ resultsCount: () => number;
86
+ resetResultsCount: () => void;
87
+ };
88
+ lastResult: () => (TTabletStateInfo & {
89
+ fqdn?: string | undefined;
90
+ })[];
91
+ dependencies: [(state: RootState, nodeId: string | undefined, path: string | undefined) => import("../../types/api/tablet").TEvTabletStateResponse | undefined, (state: RootState) => import("../../types/store/nodesList").NodesMap | undefined];
92
+ recomputations: () => number;
93
+ resetRecomputations: () => void;
94
+ dependencyRecomputations: () => number;
95
+ resetDependencyRecomputations: () => void;
96
+ } & {
97
+ argsMemoize: typeof import("reselect").weakMapMemoize;
98
+ memoize: typeof import("reselect").weakMapMemoize;
99
+ };
@@ -1,5 +1,6 @@
1
- import { createSlice } from '@reduxjs/toolkit';
1
+ import { createSelector, createSlice } from '@reduxjs/toolkit';
2
2
  import { api } from './api';
3
+ import { selectNodesMap } from './nodesList';
3
4
  const initialState = {
4
5
  stateFilter: [],
5
6
  typeFilter: [],
@@ -35,3 +36,17 @@ export const tabletsApi = api.injectEndpoints({
35
36
  }),
36
37
  overrideExisting: 'throw',
37
38
  });
39
+ const getTabletsInfoSelector = createSelector((nodeId, path) => ({ nodeId, path }), ({ nodeId, path }) => tabletsApi.endpoints.getTabletsInfo.select(nodeId === undefined ? { path } : { nodes: [nodeId] }));
40
+ const selectGetTabletsInfo = createSelector((state) => state, (_state, nodeId, path) => getTabletsInfoSelector(nodeId, path), (state, selectTabletsInfo) => selectTabletsInfo(state).data);
41
+ export const selectTabletsWithFqdn = createSelector((state, nodeId, path) => selectGetTabletsInfo(state, nodeId, path), (state) => selectNodesMap(state), (data, nodesMap) => {
42
+ if (!(data === null || data === void 0 ? void 0 : data.TabletStateInfo)) {
43
+ return [];
44
+ }
45
+ if (!nodesMap) {
46
+ return data.TabletStateInfo;
47
+ }
48
+ return data.TabletStateInfo.map((tablet) => {
49
+ const fqdn = tablet.NodeId === undefined ? undefined : nodesMap.get(tablet.NodeId);
50
+ return Object.assign(Object.assign({}, tablet), { fqdn });
51
+ });
52
+ });
@@ -1,10 +1,8 @@
1
1
  export function getTabletsInfo(data: any): (dispatch: import("redux").Dispatch<import("redux").UnknownAction>, getState: () => {
2
2
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
3
3
  singleClusterMode: boolean;
4
- nodes: import("./nodes/types").NodesState;
5
4
  cluster: import("./cluster/types").ClusterState;
6
5
  tenant: import("./tenant/types").TenantState;
7
- storage: import("./storage/types").StorageState;
8
6
  tooltip: import("../../types/store/tooltip").ITooltipState;
9
7
  tablets: import("../../types/store/tablets").TabletsState;
10
8
  schema: import("./schema/types").SchemaState;
@@ -1,7 +1,7 @@
1
- import type { TenantDiagnosticsTab, TenantMetricsTab, TenantPage, TenantQueryTab, TenantState, TenantSummaryTab } from './types';
1
+ import type { TenantDiagnosticsTab, TenantMetricsTab, TenantQueryTab, TenantState, TenantSummaryTab } from './types';
2
2
  declare const _default: import("redux").Reducer<TenantState>;
3
3
  export default _default;
4
- export declare const setTenantPage: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantPage, "tenant/setTenantPage">, setQueryTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantQueryTab, "tenant/setQueryTab">, setDiagnosticsTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantDiagnosticsTab, "tenant/setDiagnosticsTab">, setSummaryTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantSummaryTab, "tenant/setSummaryTab">, setMetricsTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantMetricsTab, "tenant/setMetricsTab">;
4
+ export declare const setTenantPage: import("@reduxjs/toolkit").ActionCreatorWithPayload<"query" | "diagnostics", "tenant/setTenantPage">, setQueryTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantQueryTab, "tenant/setQueryTab">, setDiagnosticsTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantDiagnosticsTab, "tenant/setDiagnosticsTab">, setSummaryTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantSummaryTab, "tenant/setSummaryTab">, setMetricsTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<TenantMetricsTab, "tenant/setMetricsTab">;
5
5
  export declare const tenantApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, {
6
6
  getTenantInfo: import("@reduxjs/toolkit/query").QueryDefinition<{
7
7
  path: string;
@@ -1,8 +1,17 @@
1
1
  import { createSlice } from '@reduxjs/toolkit';
2
+ import { DEFAULT_USER_SETTINGS, settingsManager } from '../../../services/settings';
3
+ import { TENANT_INITIAL_PAGE_KEY } from '../../../utils/constants';
2
4
  import { api } from '../api';
5
+ import { tenantPageSchema } from './types';
6
+ const tenantPage = tenantPageSchema
7
+ .catch(DEFAULT_USER_SETTINGS[TENANT_INITIAL_PAGE_KEY])
8
+ .parse(settingsManager.readUserSettingsValue(TENANT_INITIAL_PAGE_KEY));
9
+ const initialState = {
10
+ tenantPage,
11
+ };
3
12
  const slice = createSlice({
4
13
  name: 'tenant',
5
- initialState: {},
14
+ initialState,
6
15
  reducers: {
7
16
  setTenantPage: (state, action) => {
8
17
  state.tenantPage = action.payload;
@@ -1,12 +1,17 @@
1
+ import { z } from 'zod';
1
2
  import type { ValueOf } from '../../../types/common';
2
- import type { TENANT_DIAGNOSTICS_TABS_IDS, TENANT_METRICS_TABS_IDS, TENANT_PAGES_IDS, TENANT_QUERY_TABS_ID, TENANT_SUMMARY_TABS_IDS } from './constants';
3
- export type TenantPage = ValueOf<typeof TENANT_PAGES_IDS>;
3
+ import type { TENANT_DIAGNOSTICS_TABS_IDS, TENANT_METRICS_TABS_IDS, TENANT_QUERY_TABS_ID, TENANT_SUMMARY_TABS_IDS } from './constants';
4
+ export declare const tenantPageSchema: z.ZodNativeEnum<{
5
+ readonly query: "query";
6
+ readonly diagnostics: "diagnostics";
7
+ }>;
8
+ export type TenantPage = z.infer<typeof tenantPageSchema>;
4
9
  export type TenantQueryTab = ValueOf<typeof TENANT_QUERY_TABS_ID>;
5
10
  export type TenantDiagnosticsTab = ValueOf<typeof TENANT_DIAGNOSTICS_TABS_IDS>;
6
11
  export type TenantSummaryTab = ValueOf<typeof TENANT_SUMMARY_TABS_IDS>;
7
12
  export type TenantMetricsTab = ValueOf<typeof TENANT_METRICS_TABS_IDS>;
8
13
  export interface TenantState {
9
- tenantPage?: TenantPage;
14
+ tenantPage: TenantPage;
10
15
  queryTab?: TenantQueryTab;
11
16
  diagnosticsTab?: TenantDiagnosticsTab;
12
17
  summaryTab?: TenantSummaryTab;
@@ -1 +1,3 @@
1
- export {};
1
+ import { z } from 'zod';
2
+ import { TENANT_PAGES_IDS } from './constants';
3
+ export const tenantPageSchema = z.nativeEnum(TENANT_PAGES_IDS);
@@ -4,10 +4,8 @@ import type { PreparedTenant, TenantsStateSlice } from './types';
4
4
  export declare const selectTenants: ((state: {
5
5
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
6
6
  singleClusterMode: boolean;
7
- nodes: import("../nodes/types").NodesState;
8
7
  cluster: import("../cluster/types").ClusterState;
9
8
  tenant: import("../tenant/types").TenantState;
10
- storage: import("../storage/types").StorageState;
11
9
  tooltip: import("../../../types/store/tooltip").ITooltipState;
12
10
  tablets: import("../../../types/store/tablets").TabletsState;
13
11
  schema: import("../schema/types").SchemaState;
@@ -72,10 +70,8 @@ export declare const selectTenants: ((state: {
72
70
  resultFunc: (resultFuncArgs_0: {
73
71
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
74
72
  singleClusterMode: boolean;
75
- nodes: import("../nodes/types").NodesState;
76
73
  cluster: import("../cluster/types").ClusterState;
77
74
  tenant: import("../tenant/types").TenantState;
78
- storage: import("../storage/types").StorageState;
79
75
  tooltip: import("../../../types/store/tooltip").ITooltipState;
80
76
  tablets: import("../../../types/store/tablets").TabletsState;
81
77
  schema: import("../schema/types").SchemaState;
@@ -206,10 +202,8 @@ export declare const selectTenants: ((state: {
206
202
  memoizedResultFunc: ((resultFuncArgs_0: {
207
203
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
208
204
  singleClusterMode: boolean;
209
- nodes: import("../nodes/types").NodesState;
210
205
  cluster: import("../cluster/types").ClusterState;
211
206
  tenant: import("../tenant/types").TenantState;
212
- storage: import("../storage/types").StorageState;
213
207
  tooltip: import("../../../types/store/tooltip").ITooltipState;
214
208
  tablets: import("../../../types/store/tablets").TabletsState;
215
209
  schema: import("../schema/types").SchemaState;
@@ -345,10 +339,8 @@ export declare const selectTenants: ((state: {
345
339
  dependencies: [(state: RootState) => {
346
340
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
347
341
  singleClusterMode: boolean;
348
- nodes: import("../nodes/types").NodesState;
349
342
  cluster: import("../cluster/types").ClusterState;
350
343
  tenant: import("../tenant/types").TenantState;
351
- storage: import("../storage/types").StorageState;
352
344
  tooltip: import("../../../types/store/tooltip").ITooltipState;
353
345
  tablets: import("../../../types/store/tablets").TabletsState;
354
346
  schema: import("../schema/types").SchemaState;
@@ -488,10 +480,8 @@ export declare const selectTenantsSearchValue: (state: TenantsStateSlice) => str
488
480
  export declare const selectFilteredTenants: ((state: {
489
481
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
490
482
  singleClusterMode: boolean;
491
- nodes: import("../nodes/types").NodesState;
492
483
  cluster: import("../cluster/types").ClusterState;
493
484
  tenant: import("../tenant/types").TenantState;
494
- storage: import("../storage/types").StorageState;
495
485
  tooltip: import("../../../types/store/tooltip").ITooltipState;
496
486
  tablets: import("../../../types/store/tablets").TabletsState;
497
487
  schema: import("../schema/types").SchemaState;
@@ -563,10 +553,8 @@ export declare const selectFilteredTenants: ((state: {
563
553
  dependencies: [((state: {
564
554
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
565
555
  singleClusterMode: boolean;
566
- nodes: import("../nodes/types").NodesState;
567
556
  cluster: import("../cluster/types").ClusterState;
568
557
  tenant: import("../tenant/types").TenantState;
569
- storage: import("../storage/types").StorageState;
570
558
  tooltip: import("../../../types/store/tooltip").ITooltipState;
571
559
  tablets: import("../../../types/store/tablets").TabletsState;
572
560
  schema: import("../schema/types").SchemaState;
@@ -631,10 +619,8 @@ export declare const selectFilteredTenants: ((state: {
631
619
  resultFunc: (resultFuncArgs_0: {
632
620
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
633
621
  singleClusterMode: boolean;
634
- nodes: import("../nodes/types").NodesState;
635
622
  cluster: import("../cluster/types").ClusterState;
636
623
  tenant: import("../tenant/types").TenantState;
637
- storage: import("../storage/types").StorageState;
638
624
  tooltip: import("../../../types/store/tooltip").ITooltipState;
639
625
  tablets: import("../../../types/store/tablets").TabletsState;
640
626
  schema: import("../schema/types").SchemaState;
@@ -765,10 +751,8 @@ export declare const selectFilteredTenants: ((state: {
765
751
  memoizedResultFunc: ((resultFuncArgs_0: {
766
752
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
767
753
  singleClusterMode: boolean;
768
- nodes: import("../nodes/types").NodesState;
769
754
  cluster: import("../cluster/types").ClusterState;
770
755
  tenant: import("../tenant/types").TenantState;
771
- storage: import("../storage/types").StorageState;
772
756
  tooltip: import("../../../types/store/tooltip").ITooltipState;
773
757
  tablets: import("../../../types/store/tablets").TabletsState;
774
758
  schema: import("../schema/types").SchemaState;
@@ -904,10 +888,8 @@ export declare const selectFilteredTenants: ((state: {
904
888
  dependencies: [(state: RootState) => {
905
889
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
906
890
  singleClusterMode: boolean;
907
- nodes: import("../nodes/types").NodesState;
908
891
  cluster: import("../cluster/types").ClusterState;
909
892
  tenant: import("../tenant/types").TenantState;
910
- storage: import("../storage/types").StorageState;
911
893
  tooltip: import("../../../types/store/tooltip").ITooltipState;
912
894
  tablets: import("../../../types/store/tablets").TabletsState;
913
895
  schema: import("../schema/types").SchemaState;
@@ -11,13 +11,13 @@ export interface TenantMetricStats<T = string> {
11
11
  export type TenantPoolsStats = TenantMetricStats<PoolName>;
12
12
  export type TenantStorageStats = TenantMetricStats<EType>;
13
13
  export declare const calculateTenantMetrics: (tenant?: TTenant) => {
14
- memory: number | undefined;
15
- blobStorage: number | undefined;
16
- tabletStorage: number | undefined;
14
+ memory: number;
15
+ blobStorage: number;
16
+ tabletStorage: number;
17
17
  memoryLimit: number | undefined;
18
18
  blobStorageLimit: number | undefined;
19
19
  tabletStorageLimit: number | undefined;
20
- cpu: number | undefined;
20
+ cpu: number;
21
21
  poolsStats: TenantPoolsStats[] | undefined;
22
22
  memoryStats: TenantMetricStats<string>[];
23
23
  blobStorageStats: TenantStorageStats[];
@@ -25,7 +25,7 @@ const calculatePoolsStats = (poolsStats) => {
25
25
  return poolsStats
26
26
  .map((pool) => {
27
27
  if (pool.Name) {
28
- const usage = Number(pool.Usage);
28
+ const usage = Number(pool.Usage) || 0;
29
29
  const limit = Number(pool.Threads);
30
30
  const used = limit * usage;
31
31
  // Multiply usage by 100 to match with usage to status checkers
@@ -37,16 +37,16 @@ const calculatePoolsStats = (poolsStats) => {
37
37
  };
38
38
  export const calculateTenantMetrics = (tenant = {}) => {
39
39
  const { CoresUsed, MemoryUsed, StorageAllocatedSize, MemoryLimit, StorageAllocatedLimit, PoolStats, Metrics = {}, DatabaseQuotas = {}, StorageUsage, QuotaUsage, } = tenant;
40
- const cpu = isNumeric(CoresUsed) ? Number(CoresUsed) * 1000000 : undefined;
41
- const memory = isNumeric(MemoryUsed) ? Number(MemoryUsed) : undefined;
42
- const blobStorage = isNumeric(StorageAllocatedSize) ? Number(StorageAllocatedSize) : undefined;
43
- const tabletStorage = isNumeric(Metrics.Storage) ? Number(Metrics.Storage) : undefined;
40
+ const cpu = Number(CoresUsed) * 1000000 || 0;
41
+ const memory = Number(MemoryUsed) || 0;
42
+ const blobStorage = Number(StorageAllocatedSize) || 0;
43
+ const tabletStorage = Number(Metrics.Storage) || 0;
44
44
  const memoryLimit = isNumeric(MemoryLimit) ? Number(MemoryLimit) : undefined;
45
45
  const blobStorageLimit = isNumeric(StorageAllocatedLimit)
46
46
  ? Number(StorageAllocatedLimit)
47
47
  : undefined;
48
- const tabletStorageLimit = isNumeric(DatabaseQuotas.data_size_hard_quota)
49
- ? Number(DatabaseQuotas.data_size_hard_quota)
48
+ const tabletStorageLimit = isNumeric(DatabaseQuotas.data_size_soft_quota)
49
+ ? Number(DatabaseQuotas.data_size_soft_quota)
50
50
  : undefined;
51
51
  const poolsStats = calculatePoolsStats(PoolStats);
52
52
  let blobStorageStats;
@@ -87,7 +87,7 @@ export const calculateTenantMetrics = (tenant = {}) => {
87
87
  };
88
88
  });
89
89
  }
90
- else if (tabletStorage !== undefined && tabletStorageLimit) {
90
+ else if (tabletStorageLimit) {
91
91
  tabletStorageStats = [
92
92
  {
93
93
  name: EType.SSD,
@@ -7,10 +7,8 @@ export declare const topicApi: import("@reduxjs/toolkit/query").Api<import("@red
7
7
  export declare const selectConsumersNames: ((state: {
8
8
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
9
9
  singleClusterMode: boolean;
10
- nodes: import("./nodes/types").NodesState;
11
10
  cluster: import("./cluster/types").ClusterState;
12
11
  tenant: import("./tenant/types").TenantState;
13
- storage: import("./storage/types").StorageState;
14
12
  tooltip: import("../../types/store/tooltip").ITooltipState;
15
13
  tablets: import("../../types/store/tablets").TabletsState;
16
14
  schema: import("./schema/types").SchemaState;
@@ -82,10 +80,8 @@ export declare const selectConsumersNames: ((state: {
82
80
  dependencies: [((state: {
83
81
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
84
82
  singleClusterMode: boolean;
85
- nodes: import("./nodes/types").NodesState;
86
83
  cluster: import("./cluster/types").ClusterState;
87
84
  tenant: import("./tenant/types").TenantState;
88
- storage: import("./storage/types").StorageState;
89
85
  tooltip: import("../../types/store/tooltip").ITooltipState;
90
86
  tablets: import("../../types/store/tablets").TabletsState;
91
87
  schema: import("./schema/types").SchemaState;
@@ -150,10 +146,8 @@ export declare const selectConsumersNames: ((state: {
150
146
  resultFunc: (resultFuncArgs_0: {
151
147
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
152
148
  singleClusterMode: boolean;
153
- nodes: import("./nodes/types").NodesState;
154
149
  cluster: import("./cluster/types").ClusterState;
155
150
  tenant: import("./tenant/types").TenantState;
156
- storage: import("./storage/types").StorageState;
157
151
  tooltip: import("../../types/store/tooltip").ITooltipState;
158
152
  tablets: import("../../types/store/tablets").TabletsState;
159
153
  schema: import("./schema/types").SchemaState;
@@ -284,10 +278,8 @@ export declare const selectConsumersNames: ((state: {
284
278
  memoizedResultFunc: ((resultFuncArgs_0: {
285
279
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
286
280
  singleClusterMode: boolean;
287
- nodes: import("./nodes/types").NodesState;
288
281
  cluster: import("./cluster/types").ClusterState;
289
282
  tenant: import("./tenant/types").TenantState;
290
- storage: import("./storage/types").StorageState;
291
283
  tooltip: import("../../types/store/tooltip").ITooltipState;
292
284
  tablets: import("../../types/store/tablets").TabletsState;
293
285
  schema: import("./schema/types").SchemaState;
@@ -423,10 +415,8 @@ export declare const selectConsumersNames: ((state: {
423
415
  dependencies: [(state: RootState) => {
424
416
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
425
417
  singleClusterMode: boolean;
426
- nodes: import("./nodes/types").NodesState;
427
418
  cluster: import("./cluster/types").ClusterState;
428
419
  tenant: import("./tenant/types").TenantState;
429
- storage: import("./storage/types").StorageState;
430
420
  tooltip: import("../../types/store/tooltip").ITooltipState;
431
421
  tablets: import("../../types/store/tablets").TabletsState;
432
422
  schema: import("./schema/types").SchemaState;
@@ -573,10 +563,8 @@ export declare const selectConsumersNames: ((state: {
573
563
  export declare const selectPreparedTopicStats: ((state: {
574
564
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
575
565
  singleClusterMode: boolean;
576
- nodes: import("./nodes/types").NodesState;
577
566
  cluster: import("./cluster/types").ClusterState;
578
567
  tenant: import("./tenant/types").TenantState;
579
- storage: import("./storage/types").StorageState;
580
568
  tooltip: import("../../types/store/tooltip").ITooltipState;
581
569
  tablets: import("../../types/store/tablets").TabletsState;
582
570
  schema: import("./schema/types").SchemaState;
@@ -668,10 +656,8 @@ export declare const selectPreparedTopicStats: ((state: {
668
656
  dependencies: [((state: {
669
657
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
670
658
  singleClusterMode: boolean;
671
- nodes: import("./nodes/types").NodesState;
672
659
  cluster: import("./cluster/types").ClusterState;
673
660
  tenant: import("./tenant/types").TenantState;
674
- storage: import("./storage/types").StorageState;
675
661
  tooltip: import("../../types/store/tooltip").ITooltipState;
676
662
  tablets: import("../../types/store/tablets").TabletsState;
677
663
  schema: import("./schema/types").SchemaState;
@@ -736,10 +722,8 @@ export declare const selectPreparedTopicStats: ((state: {
736
722
  resultFunc: (resultFuncArgs_0: {
737
723
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
738
724
  singleClusterMode: boolean;
739
- nodes: import("./nodes/types").NodesState;
740
725
  cluster: import("./cluster/types").ClusterState;
741
726
  tenant: import("./tenant/types").TenantState;
742
- storage: import("./storage/types").StorageState;
743
727
  tooltip: import("../../types/store/tooltip").ITooltipState;
744
728
  tablets: import("../../types/store/tablets").TabletsState;
745
729
  schema: import("./schema/types").SchemaState;
@@ -870,10 +854,8 @@ export declare const selectPreparedTopicStats: ((state: {
870
854
  memoizedResultFunc: ((resultFuncArgs_0: {
871
855
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
872
856
  singleClusterMode: boolean;
873
- nodes: import("./nodes/types").NodesState;
874
857
  cluster: import("./cluster/types").ClusterState;
875
858
  tenant: import("./tenant/types").TenantState;
876
- storage: import("./storage/types").StorageState;
877
859
  tooltip: import("../../types/store/tooltip").ITooltipState;
878
860
  tablets: import("../../types/store/tablets").TabletsState;
879
861
  schema: import("./schema/types").SchemaState;
@@ -1009,10 +991,8 @@ export declare const selectPreparedTopicStats: ((state: {
1009
991
  dependencies: [(state: RootState) => {
1010
992
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1011
993
  singleClusterMode: boolean;
1012
- nodes: import("./nodes/types").NodesState;
1013
994
  cluster: import("./cluster/types").ClusterState;
1014
995
  tenant: import("./tenant/types").TenantState;
1015
- storage: import("./storage/types").StorageState;
1016
996
  tooltip: import("../../types/store/tooltip").ITooltipState;
1017
997
  tablets: import("../../types/store/tablets").TabletsState;
1018
998
  schema: import("./schema/types").SchemaState;
@@ -1159,10 +1139,8 @@ export declare const selectPreparedTopicStats: ((state: {
1159
1139
  export declare const selectPreparedConsumersData: ((state: {
1160
1140
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1161
1141
  singleClusterMode: boolean;
1162
- nodes: import("./nodes/types").NodesState;
1163
1142
  cluster: import("./cluster/types").ClusterState;
1164
1143
  tenant: import("./tenant/types").TenantState;
1165
- storage: import("./storage/types").StorageState;
1166
1144
  tooltip: import("../../types/store/tooltip").ITooltipState;
1167
1145
  tablets: import("../../types/store/tablets").TabletsState;
1168
1146
  schema: import("./schema/types").SchemaState;
@@ -1258,10 +1236,8 @@ export declare const selectPreparedConsumersData: ((state: {
1258
1236
  dependencies: [((state: {
1259
1237
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1260
1238
  singleClusterMode: boolean;
1261
- nodes: import("./nodes/types").NodesState;
1262
1239
  cluster: import("./cluster/types").ClusterState;
1263
1240
  tenant: import("./tenant/types").TenantState;
1264
- storage: import("./storage/types").StorageState;
1265
1241
  tooltip: import("../../types/store/tooltip").ITooltipState;
1266
1242
  tablets: import("../../types/store/tablets").TabletsState;
1267
1243
  schema: import("./schema/types").SchemaState;
@@ -1326,10 +1302,8 @@ export declare const selectPreparedConsumersData: ((state: {
1326
1302
  resultFunc: (resultFuncArgs_0: {
1327
1303
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1328
1304
  singleClusterMode: boolean;
1329
- nodes: import("./nodes/types").NodesState;
1330
1305
  cluster: import("./cluster/types").ClusterState;
1331
1306
  tenant: import("./tenant/types").TenantState;
1332
- storage: import("./storage/types").StorageState;
1333
1307
  tooltip: import("../../types/store/tooltip").ITooltipState;
1334
1308
  tablets: import("../../types/store/tablets").TabletsState;
1335
1309
  schema: import("./schema/types").SchemaState;
@@ -1460,10 +1434,8 @@ export declare const selectPreparedConsumersData: ((state: {
1460
1434
  memoizedResultFunc: ((resultFuncArgs_0: {
1461
1435
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1462
1436
  singleClusterMode: boolean;
1463
- nodes: import("./nodes/types").NodesState;
1464
1437
  cluster: import("./cluster/types").ClusterState;
1465
1438
  tenant: import("./tenant/types").TenantState;
1466
- storage: import("./storage/types").StorageState;
1467
1439
  tooltip: import("../../types/store/tooltip").ITooltipState;
1468
1440
  tablets: import("../../types/store/tablets").TabletsState;
1469
1441
  schema: import("./schema/types").SchemaState;
@@ -1599,10 +1571,8 @@ export declare const selectPreparedConsumersData: ((state: {
1599
1571
  dependencies: [(state: RootState) => {
1600
1572
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1601
1573
  singleClusterMode: boolean;
1602
- nodes: import("./nodes/types").NodesState;
1603
1574
  cluster: import("./cluster/types").ClusterState;
1604
1575
  tenant: import("./tenant/types").TenantState;
1605
- storage: import("./storage/types").StorageState;
1606
1576
  tooltip: import("../../types/store/tooltip").ITooltipState;
1607
1577
  tablets: import("../../types/store/tablets").TabletsState;
1608
1578
  schema: import("./schema/types").SchemaState;
@@ -81,28 +81,6 @@ const paramSetup = {
81
81
  stateKey: 'partitions.selectedConsumer',
82
82
  },
83
83
  },
84
- '/cluster/storage': {
85
- storageType: {
86
- stateKey: 'storage.type',
87
- },
88
- visible: {
89
- stateKey: 'storage.visible',
90
- },
91
- uptimeFilter: {
92
- stateKey: 'storage.uptimeFilter',
93
- },
94
- search: {
95
- stateKey: 'storage.filter',
96
- },
97
- },
98
- '/cluster/nodes': {
99
- uptimeFilter: {
100
- stateKey: 'nodes.uptimeFilter',
101
- },
102
- search: {
103
- stateKey: 'nodes.searchValue',
104
- },
105
- },
106
84
  '/cluster/tenants': {
107
85
  search: {
108
86
  stateKey: 'tenants.searchValue',
@@ -6,6 +6,7 @@ import type { TExternalTableDescription } from './externalTable';
6
6
  import type { TPersQueueGroupDescription } from './persQueueGroup';
7
7
  import type { TTableDescription, TTableStats } from './table';
8
8
  import type { TIndexDescription } from './tableIndex';
9
+ import type { TViewDescription } from './view';
9
10
  /**
10
11
  * source: https://github.com/ydb-platform/ydb/blob/main/ydb/core/protos/flat_tx_scheme.proto
11
12
  */
@@ -68,6 +69,7 @@ export interface TPathDescription {
68
69
  PersQueueGroup?: TPersQueueGroupDescription;
69
70
  ExternalTableDescription?: TExternalTableDescription;
70
71
  ExternalDataSourceDescription?: TExternalDataSourceDescription;
72
+ ViewDescription?: TViewDescription;
71
73
  }
72
74
  export interface TDirEntry {
73
75
  Name?: string;
@@ -211,7 +213,8 @@ export declare enum EPathType {
211
213
  EPathTypeColumnTable = "EPathTypeColumnTable",
212
214
  EPathTypeCdcStream = "EPathTypeCdcStream",
213
215
  EPathTypeExternalDataSource = "EPathTypeExternalDataSource",
214
- EPathTypeExternalTable = "EPathTypeExternalTable"
216
+ EPathTypeExternalTable = "EPathTypeExternalTable",
217
+ EPathTypeView = "EPathTypeView"
215
218
  }
216
219
  export declare enum EPathSubType {
217
220
  EPathSubTypeEmpty = "EPathSubTypeEmpty",
@@ -40,6 +40,7 @@ export var EPathType;
40
40
  EPathType["EPathTypeCdcStream"] = "EPathTypeCdcStream";
41
41
  EPathType["EPathTypeExternalDataSource"] = "EPathTypeExternalDataSource";
42
42
  EPathType["EPathTypeExternalTable"] = "EPathTypeExternalTable";
43
+ EPathType["EPathTypeView"] = "EPathTypeView";
43
44
  })(EPathType || (EPathType = {}));
44
45
  export var EPathSubType;
45
46
  (function (EPathSubType) {
@@ -0,0 +1,8 @@
1
+ import type { TPathID } from './shared';
2
+ export interface TViewDescription {
3
+ Name?: string;
4
+ PathId?: TPathID;
5
+ /** uint64 */
6
+ Version?: string;
7
+ QueryText?: string;
8
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -1,3 +1,4 @@
1
+ import { z } from 'zod';
1
2
  import type { NodesPreparedEntity } from '../store/reducers/nodes/types';
2
3
  import type { ProblemFilterValue } from '../store/reducers/settings/types';
3
4
  import type { TSystemStateInfo } from '../types/api/nodes';
@@ -8,6 +9,7 @@ export declare enum NodesUptimeFilterValues {
8
9
  'All' = "All",
9
10
  'SmallUptime' = "SmallUptime"
10
11
  }
12
+ export declare const nodesUptimeFilterValuesSchema: z.ZodCatch<z.ZodNativeEnum<typeof NodesUptimeFilterValues>>;
11
13
  export declare const NodesUptimeFilterTitles: {
12
14
  All: string;
13
15
  SmallUptime: string;
@@ -1,3 +1,4 @@
1
+ import { z } from 'zod';
1
2
  import { ProblemFilterValues } from '../store/reducers/settings/settings';
2
3
  import { EFlag } from '../types/api/enums';
3
4
  import { HOUR_IN_SECONDS } from './constants';
@@ -7,6 +8,9 @@ export var NodesUptimeFilterValues;
7
8
  NodesUptimeFilterValues["All"] = "All";
8
9
  NodesUptimeFilterValues["SmallUptime"] = "SmallUptime";
9
10
  })(NodesUptimeFilterValues || (NodesUptimeFilterValues = {}));
11
+ export const nodesUptimeFilterValuesSchema = z
12
+ .nativeEnum(NodesUptimeFilterValues)
13
+ .catch(NodesUptimeFilterValues.All);
10
14
  export const NodesUptimeFilterTitles = {
11
15
  [NodesUptimeFilterValues.All]: 'All',
12
16
  [NodesUptimeFilterValues.SmallUptime]: 'Uptime < 1h',
@@ -1,5 +1,7 @@
1
+ import type { LabelProps } from '@gravity-ui/uikit';
1
2
  import { EFlag } from '../types/api/enums';
2
3
  import { ETabletState } from '../types/api/tablet';
3
4
  export declare const tabletStates: string[];
4
5
  export declare const tabletColorToTabletState: Record<EFlag, ETabletState[]>;
5
6
  export declare const mapTabletStateToColorState: (state?: ETabletState | EFlag) => EFlag;
7
+ export declare function mapTabletStateToLabelTheme(state?: ETabletState): LabelProps['theme'];