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
@@ -7,10 +7,8 @@ export declare const healthcheckApi: import("@reduxjs/toolkit/query").Api<import
7
7
  export declare const selectIssuesTreesRoots: ((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 selectIssuesTreesRoots: ((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 selectIssuesTreesRoots: ((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;
@@ -276,10 +270,8 @@ export declare const selectIssuesTreesRoots: ((state: {
276
270
  memoizedResultFunc: ((resultFuncArgs_0: {
277
271
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
278
272
  singleClusterMode: boolean;
279
- nodes: import("../nodes/types").NodesState;
280
273
  cluster: import("../cluster/types").ClusterState;
281
274
  tenant: import("../tenant/types").TenantState;
282
- storage: import("../storage/types").StorageState;
283
275
  tooltip: import("../../../types/store/tooltip").ITooltipState;
284
276
  tablets: import("../../../types/store/tablets").TabletsState;
285
277
  schema: import("../schema/types").SchemaState;
@@ -407,10 +399,8 @@ export declare const selectIssuesTreesRoots: ((state: {
407
399
  dependencies: [(state: RootState) => {
408
400
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
409
401
  singleClusterMode: boolean;
410
- nodes: import("../nodes/types").NodesState;
411
402
  cluster: import("../cluster/types").ClusterState;
412
403
  tenant: import("../tenant/types").TenantState;
413
- storage: import("../storage/types").StorageState;
414
404
  tooltip: import("../../../types/store/tooltip").ITooltipState;
415
405
  tablets: import("../../../types/store/tablets").TabletsState;
416
406
  schema: import("../schema/types").SchemaState;
@@ -549,10 +539,8 @@ export declare const selectIssuesTreesRoots: ((state: {
549
539
  export declare const selectIssuesTrees: ((state: {
550
540
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
551
541
  singleClusterMode: boolean;
552
- nodes: import("../nodes/types").NodesState;
553
542
  cluster: import("../cluster/types").ClusterState;
554
543
  tenant: import("../tenant/types").TenantState;
555
- storage: import("../storage/types").StorageState;
556
544
  tooltip: import("../../../types/store/tooltip").ITooltipState;
557
545
  tablets: import("../../../types/store/tablets").TabletsState;
558
546
  schema: import("../schema/types").SchemaState;
@@ -624,10 +612,8 @@ export declare const selectIssuesTrees: ((state: {
624
612
  dependencies: [((state: {
625
613
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
626
614
  singleClusterMode: boolean;
627
- nodes: import("../nodes/types").NodesState;
628
615
  cluster: import("../cluster/types").ClusterState;
629
616
  tenant: import("../tenant/types").TenantState;
630
- storage: import("../storage/types").StorageState;
631
617
  tooltip: import("../../../types/store/tooltip").ITooltipState;
632
618
  tablets: import("../../../types/store/tablets").TabletsState;
633
619
  schema: import("../schema/types").SchemaState;
@@ -692,10 +678,8 @@ export declare const selectIssuesTrees: ((state: {
692
678
  resultFunc: (resultFuncArgs_0: {
693
679
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
694
680
  singleClusterMode: boolean;
695
- nodes: import("../nodes/types").NodesState;
696
681
  cluster: import("../cluster/types").ClusterState;
697
682
  tenant: import("../tenant/types").TenantState;
698
- storage: import("../storage/types").StorageState;
699
683
  tooltip: import("../../../types/store/tooltip").ITooltipState;
700
684
  tablets: import("../../../types/store/tablets").TabletsState;
701
685
  schema: import("../schema/types").SchemaState;
@@ -818,10 +802,8 @@ export declare const selectIssuesTrees: ((state: {
818
802
  memoizedResultFunc: ((resultFuncArgs_0: {
819
803
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
820
804
  singleClusterMode: boolean;
821
- nodes: import("../nodes/types").NodesState;
822
805
  cluster: import("../cluster/types").ClusterState;
823
806
  tenant: import("../tenant/types").TenantState;
824
- storage: import("../storage/types").StorageState;
825
807
  tooltip: import("../../../types/store/tooltip").ITooltipState;
826
808
  tablets: import("../../../types/store/tablets").TabletsState;
827
809
  schema: import("../schema/types").SchemaState;
@@ -949,10 +931,8 @@ export declare const selectIssuesTrees: ((state: {
949
931
  dependencies: [(state: RootState) => {
950
932
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
951
933
  singleClusterMode: boolean;
952
- nodes: import("../nodes/types").NodesState;
953
934
  cluster: import("../cluster/types").ClusterState;
954
935
  tenant: import("../tenant/types").TenantState;
955
- storage: import("../storage/types").StorageState;
956
936
  tooltip: import("../../../types/store/tooltip").ITooltipState;
957
937
  tablets: import("../../../types/store/tablets").TabletsState;
958
938
  schema: import("../schema/types").SchemaState;
@@ -1082,10 +1062,8 @@ export declare const selectIssuesTrees: ((state: {
1082
1062
  }, ((state: {
1083
1063
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1084
1064
  singleClusterMode: boolean;
1085
- nodes: import("../nodes/types").NodesState;
1086
1065
  cluster: import("../cluster/types").ClusterState;
1087
1066
  tenant: import("../tenant/types").TenantState;
1088
- storage: import("../storage/types").StorageState;
1089
1067
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1090
1068
  tablets: import("../../../types/store/tablets").TabletsState;
1091
1069
  schema: import("../schema/types").SchemaState;
@@ -1157,10 +1135,8 @@ export declare const selectIssuesTrees: ((state: {
1157
1135
  dependencies: [((state: {
1158
1136
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1159
1137
  singleClusterMode: boolean;
1160
- nodes: import("../nodes/types").NodesState;
1161
1138
  cluster: import("../cluster/types").ClusterState;
1162
1139
  tenant: import("../tenant/types").TenantState;
1163
- storage: import("../storage/types").StorageState;
1164
1140
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1165
1141
  tablets: import("../../../types/store/tablets").TabletsState;
1166
1142
  schema: import("../schema/types").SchemaState;
@@ -1225,10 +1201,8 @@ export declare const selectIssuesTrees: ((state: {
1225
1201
  resultFunc: (resultFuncArgs_0: {
1226
1202
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1227
1203
  singleClusterMode: boolean;
1228
- nodes: import("../nodes/types").NodesState;
1229
1204
  cluster: import("../cluster/types").ClusterState;
1230
1205
  tenant: import("../tenant/types").TenantState;
1231
- storage: import("../storage/types").StorageState;
1232
1206
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1233
1207
  tablets: import("../../../types/store/tablets").TabletsState;
1234
1208
  schema: import("../schema/types").SchemaState;
@@ -1351,10 +1325,8 @@ export declare const selectIssuesTrees: ((state: {
1351
1325
  memoizedResultFunc: ((resultFuncArgs_0: {
1352
1326
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1353
1327
  singleClusterMode: boolean;
1354
- nodes: import("../nodes/types").NodesState;
1355
1328
  cluster: import("../cluster/types").ClusterState;
1356
1329
  tenant: import("../tenant/types").TenantState;
1357
- storage: import("../storage/types").StorageState;
1358
1330
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1359
1331
  tablets: import("../../../types/store/tablets").TabletsState;
1360
1332
  schema: import("../schema/types").SchemaState;
@@ -1482,10 +1454,8 @@ export declare const selectIssuesTrees: ((state: {
1482
1454
  dependencies: [(state: RootState) => {
1483
1455
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1484
1456
  singleClusterMode: boolean;
1485
- nodes: import("../nodes/types").NodesState;
1486
1457
  cluster: import("../cluster/types").ClusterState;
1487
1458
  tenant: import("../tenant/types").TenantState;
1488
- storage: import("../storage/types").StorageState;
1489
1459
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1490
1460
  tablets: import("../../../types/store/tablets").TabletsState;
1491
1461
  schema: import("../schema/types").SchemaState;
@@ -1632,10 +1602,8 @@ export declare const selectIssuesTrees: ((state: {
1632
1602
  export declare const selectIssuesStatistics: ((state: {
1633
1603
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1634
1604
  singleClusterMode: boolean;
1635
- nodes: import("../nodes/types").NodesState;
1636
1605
  cluster: import("../cluster/types").ClusterState;
1637
1606
  tenant: import("../tenant/types").TenantState;
1638
- storage: import("../storage/types").StorageState;
1639
1607
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1640
1608
  tablets: import("../../../types/store/tablets").TabletsState;
1641
1609
  schema: import("../schema/types").SchemaState;
@@ -1707,10 +1675,8 @@ export declare const selectIssuesStatistics: ((state: {
1707
1675
  dependencies: [((state: {
1708
1676
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1709
1677
  singleClusterMode: boolean;
1710
- nodes: import("../nodes/types").NodesState;
1711
1678
  cluster: import("../cluster/types").ClusterState;
1712
1679
  tenant: import("../tenant/types").TenantState;
1713
- storage: import("../storage/types").StorageState;
1714
1680
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1715
1681
  tablets: import("../../../types/store/tablets").TabletsState;
1716
1682
  schema: import("../schema/types").SchemaState;
@@ -1775,10 +1741,8 @@ export declare const selectIssuesStatistics: ((state: {
1775
1741
  resultFunc: (resultFuncArgs_0: {
1776
1742
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1777
1743
  singleClusterMode: boolean;
1778
- nodes: import("../nodes/types").NodesState;
1779
1744
  cluster: import("../cluster/types").ClusterState;
1780
1745
  tenant: import("../tenant/types").TenantState;
1781
- storage: import("../storage/types").StorageState;
1782
1746
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1783
1747
  tablets: import("../../../types/store/tablets").TabletsState;
1784
1748
  schema: import("../schema/types").SchemaState;
@@ -1901,10 +1865,8 @@ export declare const selectIssuesStatistics: ((state: {
1901
1865
  memoizedResultFunc: ((resultFuncArgs_0: {
1902
1866
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
1903
1867
  singleClusterMode: boolean;
1904
- nodes: import("../nodes/types").NodesState;
1905
1868
  cluster: import("../cluster/types").ClusterState;
1906
1869
  tenant: import("../tenant/types").TenantState;
1907
- storage: import("../storage/types").StorageState;
1908
1870
  tooltip: import("../../../types/store/tooltip").ITooltipState;
1909
1871
  tablets: import("../../../types/store/tablets").TabletsState;
1910
1872
  schema: import("../schema/types").SchemaState;
@@ -2032,10 +1994,8 @@ export declare const selectIssuesStatistics: ((state: {
2032
1994
  dependencies: [(state: RootState) => {
2033
1995
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
2034
1996
  singleClusterMode: boolean;
2035
- nodes: import("../nodes/types").NodesState;
2036
1997
  cluster: import("../cluster/types").ClusterState;
2037
1998
  tenant: import("../tenant/types").TenantState;
2038
- storage: import("../storage/types").StorageState;
2039
1999
  tooltip: import("../../../types/store/tooltip").ITooltipState;
2040
2000
  tablets: import("../../../types/store/tablets").TabletsState;
2041
2001
  schema: import("../schema/types").SchemaState;
@@ -9,10 +9,8 @@ declare const host: Reducer<IHostState, IHostAction>;
9
9
  export declare function getHostInfo(): (dispatch: import("redux").Dispatch<import("redux").UnknownAction>, getState: () => {
10
10
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
11
11
  singleClusterMode: boolean;
12
- nodes: import("./nodes/types").NodesState;
13
12
  cluster: import("./cluster/types").ClusterState;
14
13
  tenant: import("./tenant/types").TenantState;
15
- storage: import("./storage/types").StorageState;
16
14
  tooltip: import("../../types/store/tooltip").ITooltipState;
17
15
  tablets: import("../../types/store/tablets").TabletsState;
18
16
  schema: import("./schema/types").SchemaState;
@@ -2,10 +2,8 @@ import singleClusterMode from './singleClusterMode';
2
2
  export declare const rootReducer: {
3
3
  api: import("redux").Reducer<import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">, import("redux").UnknownAction>;
4
4
  singleClusterMode: typeof singleClusterMode;
5
- nodes: import("redux").Reducer<import("./nodes/types").NodesState>;
6
5
  cluster: import("redux").Reducer<import("./cluster/types").ClusterState>;
7
6
  tenant: import("redux").Reducer<import("./tenant/types").TenantState>;
8
- storage: import("redux").Reducer<import("./storage/types").StorageState>;
9
7
  tooltip: import("redux").Reducer<import("../../types/store/tooltip").ITooltipState, import("../../types/store/tooltip").ITooltipAction>;
10
8
  tablets: import("redux").Reducer<import("../../types/store/tablets").TabletsState>;
11
9
  schema: import("redux").Reducer<import("./schema/types").SchemaState, import("./schema/types").SchemaAction>;
@@ -85,10 +83,8 @@ export declare const rootReducer: {
85
83
  declare const combinedReducer: import("redux").Reducer<{
86
84
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
87
85
  singleClusterMode: boolean;
88
- nodes: import("./nodes/types").NodesState;
89
86
  cluster: import("./cluster/types").ClusterState;
90
87
  tenant: import("./tenant/types").TenantState;
91
- storage: import("./storage/types").StorageState;
92
88
  tooltip: import("../../types/store/tooltip").ITooltipState;
93
89
  tablets: import("../../types/store/tablets").TabletsState;
94
90
  schema: import("./schema/types").SchemaState;
@@ -148,10 +144,8 @@ declare const combinedReducer: import("redux").Reducer<{
148
144
  }, any, Partial<{
149
145
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api"> | undefined;
150
146
  singleClusterMode: boolean | undefined;
151
- nodes: import("./nodes/types").NodesState | undefined;
152
147
  cluster: import("./cluster/types").ClusterState | undefined;
153
148
  tenant: import("./tenant/types").TenantState | undefined;
154
- storage: import("./storage/types").StorageState | undefined;
155
149
  tooltip: never;
156
150
  tablets: import("../../types/store/tablets").TabletsState | undefined;
157
151
  schema: never;
@@ -11,7 +11,6 @@ import header from './header/header';
11
11
  import heatmap from './heatmap';
12
12
  import host from './host';
13
13
  import hotKeys from './hotKeys/hotKeys';
14
- import nodes from './nodes/nodes';
15
14
  import partitions from './partitions/partitions';
16
15
  import saveQuery from './saveQuery';
17
16
  import schema from './schema/schema';
@@ -19,7 +18,6 @@ import schemaAcl from './schemaAcl/schemaAcl';
19
18
  import settings from './settings/settings';
20
19
  import shardsWorkload from './shardsWorkload/shardsWorkload';
21
20
  import singleClusterMode from './singleClusterMode';
22
- import storage from './storage/storage';
23
21
  import tablets from './tablets';
24
22
  import tabletsFilters from './tabletsFilters';
25
23
  import tenant from './tenant/tenant';
@@ -28,10 +26,8 @@ import tooltip from './tooltip';
28
26
  export const rootReducer = {
29
27
  [api.reducerPath]: api.reducer,
30
28
  singleClusterMode,
31
- nodes,
32
29
  cluster,
33
30
  tenant,
34
- storage,
35
31
  tooltip,
36
32
  tablets,
37
33
  schema,
@@ -3,10 +3,8 @@ import type { PreparedNodeStructure } from './types';
3
3
  export declare const selectNodeStructure: ((state: {
4
4
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
5
5
  singleClusterMode: boolean;
6
- nodes: import("../nodes/types").NodesState;
7
6
  cluster: import("../cluster/types").ClusterState;
8
7
  tenant: import("../tenant/types").TenantState;
9
- storage: import("../storage/types").StorageState;
10
8
  tooltip: import("../../../types/store/tooltip").ITooltipState;
11
9
  tablets: import("../../../types/store/tablets").TabletsState;
12
10
  schema: import("../schema/types").SchemaState;
@@ -1,8 +1,4 @@
1
- import { NodesUptimeFilterValues } from '../../../utils/nodes';
2
- import type { ComputeApiRequestParams, NodesApiRequestParams, NodesSortParams, NodesState } from './types';
3
- declare const _default: import("redux").Reducer<NodesState>;
4
- export default _default;
5
- export declare const setUptimeFilter: import("@reduxjs/toolkit").ActionCreatorWithPayload<NodesUptimeFilterValues, "nodes/setUptimeFilter">, setSearchValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "nodes/setSearchValue">, setSort: import("@reduxjs/toolkit").ActionCreatorWithPayload<NodesSortParams, "nodes/setSort">, setInitialState: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"nodes/setInitialState">;
1
+ import type { ComputeApiRequestParams, NodesApiRequestParams } from './types';
6
2
  export declare const nodesApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, {
7
3
  getNodes: import("@reduxjs/toolkit/query").QueryDefinition<NodesApiRequestParams, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, "All", import("./types").NodesHandledResponse | undefined, "api">;
8
4
  getComputeNodes: import("@reduxjs/toolkit/query").QueryDefinition<ComputeApiRequestParams, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, "All", import("./types").NodesHandledResponse | undefined, "api">;
@@ -1,33 +1,6 @@
1
- import { createSlice } from '@reduxjs/toolkit';
2
1
  import { EVersion } from '../../../types/api/compute';
3
- import { NodesUptimeFilterValues } from '../../../utils/nodes';
4
2
  import { api } from '../api';
5
3
  import { prepareComputeNodesData, prepareNodesData } from './utils';
6
- const initialState = {
7
- uptimeFilter: NodesUptimeFilterValues.All,
8
- searchValue: '',
9
- };
10
- const slice = createSlice({
11
- name: 'nodes',
12
- initialState,
13
- reducers: {
14
- setUptimeFilter: (state, action) => {
15
- state.uptimeFilter = action.payload;
16
- },
17
- setSearchValue: (state, action) => {
18
- state.searchValue = action.payload;
19
- },
20
- setSort: (state, action) => {
21
- state.sortValue = action.payload.sortValue;
22
- state.sortOrder = action.payload.sortOrder;
23
- },
24
- setInitialState: () => {
25
- return initialState;
26
- },
27
- },
28
- });
29
- export default slice.reducer;
30
- export const { setUptimeFilter, setSearchValue, setSort, setInitialState } = slice.actions;
31
4
  export const nodesApi = api.injectEndpoints({
32
5
  endpoints: (builder) => ({
33
6
  getNodes: builder.query({
@@ -3,7 +3,7 @@ import type { EVersion, TTabletStateInfo as TComputeTabletStateInfo } from '../.
3
3
  import type { EFlag } from '../../../types/api/enums';
4
4
  import type { TEndpoint, TPoolStats } from '../../../types/api/nodes';
5
5
  import type { TTabletStateInfo as TFullTabletStateInfo } from '../../../types/api/tablet';
6
- import type { NodesSortValue, NodesUptimeFilterValues } from '../../../utils/nodes';
6
+ import type { NodesSortValue } from '../../../utils/nodes';
7
7
  import type { VisibleEntities } from '../storage/types';
8
8
  export interface NodesPreparedEntity {
9
9
  NodeId: number;
@@ -27,18 +27,12 @@ export interface NodesPreparedEntity {
27
27
  Endpoints?: TEndpoint[];
28
28
  TotalSessions?: number;
29
29
  }
30
- export interface NodesState {
31
- uptimeFilter: NodesUptimeFilterValues;
32
- searchValue: string;
33
- sortValue?: NodesSortValue;
34
- sortOrder?: OrderType;
35
- }
36
30
  export type NodeType = 'static' | 'dynamic' | 'any';
37
31
  export interface NodesSortParams {
38
- sortOrder?: OrderType;
39
- sortValue?: NodesSortValue;
32
+ sortOrder: OrderType | undefined;
33
+ sortValue: NodesSortValue | undefined;
40
34
  }
41
- export interface NodesGeneralRequestParams extends NodesSortParams {
35
+ export interface NodesGeneralRequestParams extends Partial<NodesSortParams> {
42
36
  filter?: string;
43
37
  uptime?: number;
44
38
  problems_only?: boolean;
@@ -63,6 +57,3 @@ export interface NodesHandledResponse {
63
57
  TotalNodes: number;
64
58
  FoundNodes?: number;
65
59
  }
66
- export interface NodesStateSlice {
67
- nodes: NodesState;
68
- }
@@ -5,10 +5,8 @@ export declare const nodesListApi: import("@reduxjs/toolkit/query").Api<import("
5
5
  export declare const selectNodesMap: ((state: {
6
6
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
7
7
  singleClusterMode: boolean;
8
- nodes: import("./nodes/types").NodesState;
9
8
  cluster: import("./cluster/types").ClusterState;
10
9
  tenant: import("./tenant/types").TenantState;
11
- storage: import("./storage/types").StorageState;
12
10
  tooltip: import("../../types/store/tooltip").ITooltipState;
13
11
  tablets: import("../../types/store/tablets").TabletsState;
14
12
  schema: import("./schema/types").SchemaState;
@@ -21,10 +21,8 @@ export declare function getSchema({ path }: {
21
21
  }): (dispatch: Dispatch<import("redux").UnknownAction>, getState: () => {
22
22
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
23
23
  singleClusterMode: boolean;
24
- nodes: import("../nodes/types").NodesState;
25
24
  cluster: import("../cluster/types").ClusterState;
26
25
  tenant: import("../tenant/types").TenantState;
27
- storage: import("../storage/types").StorageState;
28
26
  tooltip: import("../../../types/store/tooltip").ITooltipState;
29
27
  tablets: import("../../../types/store/tablets").TabletsState;
30
28
  schema: SchemaState;
@@ -11,10 +11,8 @@ export declare function getSchemaAcl({ path }: {
11
11
  }): (dispatch: import("redux").Dispatch<import("redux").UnknownAction>, getState: () => {
12
12
  api: import("@reduxjs/toolkit/query").CombinedState<{}, "All", "api">;
13
13
  singleClusterMode: boolean;
14
- nodes: import("../nodes/types").NodesState;
15
14
  cluster: import("../cluster/types").ClusterState;
16
15
  tenant: import("../tenant/types").TenantState;
17
- storage: import("../storage/types").StorageState;
18
16
  tooltip: import("../../../types/store/tooltip").ITooltipState;
19
17
  tablets: import("../../../types/store/tablets").TabletsState;
20
18
  schema: import("../schema/types").SchemaState;
@@ -1,20 +1,5 @@
1
- import type { OrderType } from '@gravity-ui/react-data-table';
2
- import type { NodesSortValue, NodesUptimeFilterValues } from '../../../utils/nodes';
3
- import type { StorageSortValue } from '../../../utils/storage';
4
- import type { PreparedStorageGroup, PreparedStorageNode, StorageStateSlice, UsageFilter } from './types';
1
+ import type { NodesUptimeFilterValues } from '../../../utils/nodes';
2
+ import type { PreparedStorageGroup, PreparedStorageNode, UsageFilter } from './types';
5
3
  export declare function filterNodes(storageNodes: PreparedStorageNode[], textFilter: string, uptimeFilter: NodesUptimeFilterValues): PreparedStorageNode[];
6
4
  export declare function filterGroups(storageGroups: PreparedStorageGroup[], textFilter: string, usageFilter: string[]): PreparedStorageGroup[];
7
- export declare const selectStorageFilter: (state: StorageStateSlice) => string;
8
- export declare const selectUsageFilter: (state: StorageStateSlice) => string[];
9
- export declare const selectVisibleEntities: (state: StorageStateSlice) => import("./types").VisibleEntities;
10
- export declare const selectNodesUptimeFilter: (state: StorageStateSlice) => NodesUptimeFilterValues;
11
- export declare const selectStorageType: (state: StorageStateSlice) => import("./types").StorageType;
12
- export declare const selectNodesSortParams: (state: StorageStateSlice) => {
13
- sortValue: NodesSortValue;
14
- sortOrder: OrderType;
15
- };
16
- export declare const selectGroupsSortParams: (state: StorageStateSlice) => {
17
- sortValue: StorageSortValue;
18
- sortOrder: OrderType;
19
- };
20
5
  export declare function getUsageFilterOptions(groups: PreparedStorageGroup[]): UsageFilter[];
@@ -1,8 +1,5 @@
1
- import { ASCENDING, DESCENDING } from '@gravity-ui/react-data-table/build/esm/lib/constants';
2
- import { NODES_SORT_VALUES } from '../../../utils/nodes';
3
- import { STORAGE_SORT_VALUES, getUsage } from '../../../utils/storage';
1
+ import { getUsage } from '../../../utils/storage';
4
2
  import { filterNodesByUptime } from '../nodes/selectors';
5
- import { VISIBLE_ENTITIES } from './constants';
6
3
  // ==== Filters ====
7
4
  const prepareSearchText = (text) => text.trim().toLowerCase();
8
5
  const filterNodesByText = (entities, text) => {
@@ -48,38 +45,6 @@ export function filterGroups(storageGroups, textFilter, usageFilter) {
48
45
  result = filterGroupsByUsage(result, usageFilter);
49
46
  return result;
50
47
  }
51
- // ==== Simple selectors ====
52
- export const selectStorageFilter = (state) => state.storage.filter;
53
- export const selectUsageFilter = (state) => state.storage.usageFilter;
54
- export const selectVisibleEntities = (state) => state.storage.visible;
55
- export const selectNodesUptimeFilter = (state) => state.storage.uptimeFilter;
56
- export const selectStorageType = (state) => state.storage.type;
57
- // ==== Sort params selectors ====
58
- export const selectNodesSortParams = (state) => {
59
- const defaultSortValue = NODES_SORT_VALUES.NodeId;
60
- const defaultSortOrder = ASCENDING;
61
- return {
62
- sortValue: state.storage.nodesSortValue || defaultSortValue,
63
- sortOrder: state.storage.nodesSortOrder || defaultSortOrder,
64
- };
65
- };
66
- export const selectGroupsSortParams = (state) => {
67
- const visibleEntities = state.storage.visible;
68
- let defaultSortValue = STORAGE_SORT_VALUES.PoolName;
69
- let defaultSortOrder = ASCENDING;
70
- if (visibleEntities === VISIBLE_ENTITIES.missing) {
71
- defaultSortValue = STORAGE_SORT_VALUES.Degraded;
72
- defaultSortOrder = DESCENDING;
73
- }
74
- if (visibleEntities === VISIBLE_ENTITIES.space) {
75
- defaultSortValue = STORAGE_SORT_VALUES.Usage;
76
- defaultSortOrder = DESCENDING;
77
- }
78
- return {
79
- sortValue: state.storage.groupsSortValue || defaultSortValue,
80
- sortOrder: state.storage.groupsSortOrder || defaultSortOrder,
81
- };
82
- };
83
48
  // ==== Complex selectors ====
84
49
  export function getUsageFilterOptions(groups) {
85
50
  const items = {};
@@ -1,9 +1,5 @@
1
- import { NodesUptimeFilterValues } from '../../../utils/nodes';
2
- import type { NodesApiRequestParams, NodesSortParams } from '../nodes/types';
3
- import type { StorageApiRequestParams, StorageSortParams, StorageState, StorageType, VisibleEntities } from './types';
4
- declare const _default: import("redux").Reducer<StorageState>;
5
- export default _default;
6
- export declare const setInitialState: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"storage/setInitialState">, setStorageTextFilter: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "storage/setStorageTextFilter">, setUsageFilter: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "storage/setUsageFilter">, setVisibleEntities: import("@reduxjs/toolkit").ActionCreatorWithPayload<VisibleEntities, "storage/setVisibleEntities">, setStorageType: import("@reduxjs/toolkit").ActionCreatorWithPayload<StorageType, "storage/setStorageType">, setUptimeFilter: import("@reduxjs/toolkit").ActionCreatorWithPayload<NodesUptimeFilterValues, "storage/setUptimeFilter">, setNodesSortParams: import("@reduxjs/toolkit").ActionCreatorWithPayload<NodesSortParams, "storage/setNodesSortParams">, setGroupsSortParams: import("@reduxjs/toolkit").ActionCreatorWithPayload<StorageSortParams, "storage/setGroupsSortParams">;
1
+ import type { NodesApiRequestParams } from '../nodes/types';
2
+ import type { StorageApiRequestParams } from './types';
7
3
  export declare const storageApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, {
8
4
  getStorageNodesInfo: import("@reduxjs/toolkit/query").QueryDefinition<Omit<NodesApiRequestParams, "type">, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, "All", import("./types").PreparedStorageResponse | undefined, "api">;
9
5
  getStorageGroupsInfo: import("@reduxjs/toolkit/query").QueryDefinition<StorageApiRequestParams, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../api")._NEVER, unknown, {}>, "All", import("./types").PreparedStorageResponse | undefined, "api">;
@@ -1,50 +1,6 @@
1
- import { createSlice } from '@reduxjs/toolkit';
2
1
  import { EVersion } from '../../../types/api/storage';
3
- import { NodesUptimeFilterValues } from '../../../utils/nodes';
4
2
  import { api } from '../api';
5
- import { STORAGE_TYPES, VISIBLE_ENTITIES } from './constants';
6
3
  import { prepareStorageGroupsResponse, prepareStorageNodesResponse } from './utils';
7
- const initialState = {
8
- filter: '',
9
- usageFilter: [],
10
- visible: VISIBLE_ENTITIES.all,
11
- uptimeFilter: NodesUptimeFilterValues.All,
12
- type: STORAGE_TYPES.groups,
13
- };
14
- const slice = createSlice({
15
- name: 'storage',
16
- initialState,
17
- reducers: {
18
- setUptimeFilter: (state, action) => {
19
- state.uptimeFilter = action.payload;
20
- },
21
- setStorageType: (state, action) => {
22
- state.type = action.payload;
23
- },
24
- setStorageTextFilter: (state, action) => {
25
- state.filter = action.payload;
26
- },
27
- setUsageFilter: (state, action) => {
28
- state.usageFilter = action.payload;
29
- },
30
- setVisibleEntities: (state, action) => {
31
- state.visible = action.payload;
32
- },
33
- setNodesSortParams: (state, action) => {
34
- state.nodesSortValue = action.payload.sortValue;
35
- state.nodesSortOrder = action.payload.sortOrder;
36
- },
37
- setGroupsSortParams: (state, action) => {
38
- state.groupsSortValue = action.payload.sortValue;
39
- state.groupsSortOrder = action.payload.sortOrder;
40
- },
41
- setInitialState: () => {
42
- return initialState;
43
- },
44
- },
45
- });
46
- export default slice.reducer;
47
- export const { setInitialState, setStorageTextFilter, setUsageFilter, setVisibleEntities, setStorageType, setUptimeFilter, setNodesSortParams, setGroupsSortParams, } = slice.actions;
48
4
  export const storageApi = api.injectEndpoints({
49
5
  endpoints: (builder) => ({
50
6
  getStorageNodesInfo: builder.query({
@@ -1,13 +1,20 @@
1
1
  import type { OrderType } from '@gravity-ui/react-data-table';
2
+ import { z } from 'zod';
2
3
  import type { TSystemStateInfo } from '../../../types/api/nodes';
3
4
  import type { EVersion, TStorageGroupInfo } from '../../../types/api/storage';
4
- import type { ValueOf } from '../../../types/common';
5
5
  import type { PreparedPDisk, PreparedVDisk } from '../../../utils/disks/types';
6
- import type { NodesSortValue, NodesUptimeFilterValues } from '../../../utils/nodes';
7
6
  import type { StorageSortValue } from '../../../utils/storage';
8
- import type { STORAGE_TYPES, VISIBLE_ENTITIES } from './constants';
9
- export type VisibleEntities = ValueOf<typeof VISIBLE_ENTITIES>;
10
- export type StorageType = ValueOf<typeof STORAGE_TYPES>;
7
+ export declare const visibleEntitiesSchema: z.ZodCatch<z.ZodNativeEnum<{
8
+ readonly all: "all";
9
+ readonly missing: "missing";
10
+ readonly space: "space";
11
+ }>>;
12
+ export type VisibleEntities = z.infer<typeof visibleEntitiesSchema>;
13
+ export declare const storageTypeSchema: z.ZodCatch<z.ZodNativeEnum<{
14
+ readonly groups: "groups";
15
+ readonly nodes: "nodes";
16
+ }>>;
17
+ export type StorageType = z.infer<typeof storageTypeSchema>;
11
18
  export interface PreparedStorageNode extends TSystemStateInfo {
12
19
  NodeId: number;
13
20
  PDisks?: PreparedPDisk[];
@@ -34,10 +41,10 @@ export interface UsageFilter {
34
41
  count: number;
35
42
  }
36
43
  export interface StorageSortParams {
37
- sortOrder?: OrderType;
38
- sortValue?: StorageSortValue;
44
+ sortOrder: OrderType | undefined;
45
+ sortValue: StorageSortValue | undefined;
39
46
  }
40
- export interface StorageSortAndFilterParams extends StorageSortParams {
47
+ export interface StorageSortAndFilterParams extends Partial<StorageSortParams> {
41
48
  filter?: string;
42
49
  offset?: number;
43
50
  limit?: number;
@@ -50,23 +57,9 @@ export interface StorageApiRequestParams extends StorageSortAndFilterParams {
50
57
  visibleEntities?: VisibleEntities;
51
58
  version?: EVersion;
52
59
  }
53
- export interface StorageState {
54
- filter: string;
55
- usageFilter: string[];
56
- visible: VisibleEntities;
57
- uptimeFilter: NodesUptimeFilterValues;
58
- groupsSortValue?: StorageSortValue;
59
- groupsSortOrder?: OrderType;
60
- nodesSortValue?: NodesSortValue;
61
- nodesSortOrder?: OrderType;
62
- type: StorageType;
63
- }
64
60
  export interface PreparedStorageResponse {
65
61
  nodes?: PreparedStorageNode[];
66
62
  groups?: PreparedStorageGroup[];
67
63
  found: number | undefined;
68
64
  total: number | undefined;
69
65
  }
70
- export interface StorageStateSlice {
71
- storage: StorageState;
72
- }
@@ -1 +1,4 @@
1
- export {};
1
+ import { z } from 'zod';
2
+ import { STORAGE_TYPES, VISIBLE_ENTITIES } from './constants';
3
+ export const visibleEntitiesSchema = z.nativeEnum(VISIBLE_ENTITIES).catch(VISIBLE_ENTITIES.all);
4
+ export const storageTypeSchema = z.nativeEnum(STORAGE_TYPES).catch(STORAGE_TYPES.groups);