ydb-embedded-ui 18.3.2 → 18.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -4
- package/dist/components/ConfirmationDialog/ConfirmationDialog.d.ts +1 -0
- package/dist/components/ConfirmationDialog/ConfirmationDialog.js +3 -2
- package/dist/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
- package/dist/components/DiskCapacityInfo/DiskCapacityInfo.d.ts +21 -0
- package/dist/components/DiskCapacityInfo/DiskCapacityInfo.js +129 -0
- package/dist/components/DiskCapacityInfo/DiskCapacityInfo.js.map +1 -0
- package/dist/components/DiskCapacityInfo/i18n/en.json +7 -0
- package/dist/components/DiskCapacityInfo/i18n/index.d.ts +2 -0
- package/dist/components/DiskCapacityInfo/i18n/index.js +5 -0
- package/dist/components/DiskCapacityInfo/i18n/index.js.map +1 -0
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.d.ts +8 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +24 -14
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js.map +1 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +144 -0
- package/dist/components/HelpMarkWithDocs/HelpMarkWithDocs.d.ts +9 -0
- package/dist/components/HelpMarkWithDocs/HelpMarkWithDocs.js +8 -0
- package/dist/components/HelpMarkWithDocs/HelpMarkWithDocs.js.map +1 -0
- package/dist/components/HelpMarkWithDocs/i18n/en.json +3 -0
- package/dist/components/HelpMarkWithDocs/i18n/index.d.ts +1 -0
- package/dist/components/HelpMarkWithDocs/i18n/index.js +5 -0
- package/dist/components/HelpMarkWithDocs/i18n/index.js.map +1 -0
- package/dist/components/PDiskInfo/PDiskInfo.d.ts +1 -0
- package/dist/components/PDiskInfo/PDiskInfo.js +51 -14
- package/dist/components/PDiskInfo/PDiskInfo.js.map +1 -1
- package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.d.ts +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.js +13 -4
- package/dist/components/PDiskPopup/PDiskPopup.js.map +1 -1
- package/dist/components/StorageGroupInfo/StorageGroupInfo.js +120 -2
- package/dist/components/StorageGroupInfo/StorageGroupInfo.js.map +1 -1
- package/dist/components/StorageGroupInfo/i18n/en.json +2 -1
- package/dist/components/StorageGroupInfo/i18n/index.d.ts +1 -1
- package/dist/components/TitleWithHelpmark/TitleWithHelpmark.d.ts +5 -2
- package/dist/components/TitleWithHelpmark/TitleWithHelpmark.js +4 -3
- package/dist/components/TitleWithHelpmark/TitleWithHelpmark.js.map +1 -1
- package/dist/components/VDisk/VDisk.js +44 -10
- package/dist/components/VDisk/VDisk.js.map +1 -1
- package/dist/components/VDisk/i18n/en.json +6 -1
- package/dist/components/VDisk/i18n/index.d.ts +1 -1
- package/dist/components/VDiskInfo/VDiskInfo.js +117 -67
- package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
- package/dist/components/VDiskInfo/getVDiskCapacityColumns.d.ts +11 -0
- package/dist/components/VDiskInfo/getVDiskCapacityColumns.js +52 -0
- package/dist/components/VDiskInfo/getVDiskCapacityColumns.js.map +1 -0
- package/dist/components/VDiskPopup/VDiskPopup.d.ts +5 -0
- package/dist/components/VDiskPopup/VDiskPopup.js +18 -7
- package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
- package/dist/components/YDBDefinitionList/YDBDefinitionList.d.ts +2 -1
- package/dist/components/YDBDefinitionList/YDBDefinitionList.js +2 -2
- package/dist/components/YDBDefinitionList/YDBDefinitionList.js.map +1 -1
- package/dist/components/capacityMetricsColumns/columns.js +19 -24
- package/dist/components/capacityMetricsColumns/columns.js.map +1 -1
- package/dist/components/capacityMetricsColumns/constants.d.ts +11 -0
- package/dist/components/capacityMetricsColumns/constants.js +25 -0
- package/dist/components/capacityMetricsColumns/constants.js.map +1 -1
- package/dist/components/capacityMetricsColumns/formatters.d.ts +1 -0
- package/dist/components/capacityMetricsColumns/formatters.js +9 -0
- package/dist/components/capacityMetricsColumns/formatters.js.map +1 -0
- package/dist/components/capacityMetricsColumns/i18n/en.json +9 -1
- package/dist/components/capacityMetricsColumns/i18n/index.d.ts +1 -1
- package/dist/components/nodesColumns/constants.js +1 -1
- package/dist/components/nodesColumns/constants.js.map +1 -1
- package/dist/containers/App/NavigationWrapper.js +1 -1
- package/dist/containers/App/NavigationWrapper.js.map +1 -1
- package/dist/containers/AsideNavigation/i18n/en.json +1 -1
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +1 -1
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js.map +1 -1
- package/dist/containers/Storage/Disks/Disks.d.ts +2 -2
- package/dist/containers/Storage/Disks/Disks.js +13 -10
- package/dist/containers/Storage/Disks/Disks.js.map +1 -1
- package/dist/containers/Storage/Disks/Disks.scss +20 -0
- package/dist/containers/Storage/Disks/calculateCompactVDiskWidths.d.ts +2 -0
- package/dist/containers/Storage/Disks/calculateCompactVDiskWidths.js +46 -0
- package/dist/containers/Storage/Disks/calculateCompactVDiskWidths.js.map +1 -0
- package/dist/containers/Storage/Disks/constants.d.ts +5 -0
- package/dist/containers/Storage/Disks/constants.js +11 -0
- package/dist/containers/Storage/Disks/constants.js.map +1 -0
- package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js +8 -15
- package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.d.ts +2 -2
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js +37 -9
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.d.ts +5 -0
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.js +31 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/hooks.js +39 -24
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/hooks.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/en.json +1 -0
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/types.d.ts +1 -0
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/hooks.js +18 -9
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/hooks.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.scss +13 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.js +96 -2
- package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js +2 -5
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.d.ts +2 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js +6 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js +3 -3
- package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/i18n/en.json +13 -0
- package/dist/containers/Storage/StorageExpertModePanel/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/useStorageQueryParams.js +9 -4
- package/dist/containers/Storage/useStorageQueryParams.js.map +1 -1
- package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js +45 -5
- package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.js +12 -13
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/useManagePartitionForm.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.js +2 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/PartitionsProgress.js +3 -3
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/PartitionsProgress.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/i18n/en.json +1 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +5 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +36 -15
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageGroups.d.ts +14 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageGroups.js +38 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageGroups.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageNew.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageNew.js +3 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageNew.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.d.ts +10 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +12 -8
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/i18n/en.json +15 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/types.d.ts +3 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/getData.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/getData.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/useTopicProbeQuery.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/useTopicProbeQuery.js.map +1 -1
- package/dist/containers/Tenant/ObjectSummary/CreateDirectoryDialog/CreateDirectoryDialog.js +10 -6
- package/dist/containers/Tenant/ObjectSummary/CreateDirectoryDialog/CreateDirectoryDialog.js.map +1 -1
- package/dist/containers/Tenant/ObjectSummary/CreateDirectoryDialog/CreateDirectoryDialog.scss +57 -6
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.scss +31 -0
- package/dist/containers/Tenant/ObjectSummary/SchemaTree/SchemaTree.js +58 -0
- package/dist/containers/Tenant/ObjectSummary/SchemaTree/SchemaTree.js.map +1 -1
- package/dist/containers/Tenant/Query/Issues/Issues.js +3 -3
- package/dist/containers/Tenant/Query/Issues/Issues.js.map +1 -1
- package/dist/containers/Tenant/Query/Issues/helpers.d.ts +3 -0
- package/dist/containers/Tenant/Query/Issues/helpers.js +40 -0
- package/dist/containers/Tenant/Query/Issues/helpers.js.map +1 -1
- package/dist/containers/Tenant/Query/Issues/helpers.test.d.ts +1 -0
- package/dist/containers/Tenant/Query/Issues/helpers.test.js +94 -0
- package/dist/containers/Tenant/Query/Issues/helpers.test.js.map +1 -0
- package/dist/containers/Tenant/Query/NewSQL/NewSQL.js +1 -1
- package/dist/containers/Tenant/Query/NewSQL/NewSQL.js.map +1 -1
- package/dist/containers/Tenant/Query/Preview/components/TopicPreview.js +1 -1
- package/dist/containers/Tenant/Query/Preview/components/TopicPreview.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +141 -73
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.scss +8 -0
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/YqlEditor.d.ts +4 -2
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/YqlEditor.js +187 -20
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/YqlEditor.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.d.ts +9 -0
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.js +154 -0
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.js.map +1 -0
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.test.d.ts +1 -0
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.test.js +153 -0
- package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.test.js.map +1 -0
- package/dist/containers/Tenant/Query/QueryEditor/types.d.ts +5 -0
- package/dist/containers/Tenant/Query/QueryEditor/types.js +2 -0
- package/dist/containers/Tenant/Query/QueryEditor/types.js.map +1 -0
- package/dist/containers/Tenant/Query/QueryEditor/utils/reachExplainQueryMetricaGoals.d.ts +5 -0
- package/dist/containers/Tenant/Query/QueryEditor/utils/reachExplainQueryMetricaGoals.js +13 -0
- package/dist/containers/Tenant/Query/QueryEditor/utils/reachExplainQueryMetricaGoals.js.map +1 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.d.ts +6 -3
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.js +10 -5
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.scss +18 -5
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.d.ts +3 -2
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js +23 -12
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.scss +19 -0
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +14 -21
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.d.ts +6 -2
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js +6 -2
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.d.ts +2 -0
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/constants.d.ts +3 -0
- package/dist/containers/Tenant/Query/QueryResult/constants.js +35 -0
- package/dist/containers/Tenant/Query/QueryResult/constants.js.map +1 -1
- package/dist/containers/Tenant/Query/i18n/en.json +5 -2
- package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.d.ts +1 -1
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js +1 -13
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js.map +1 -1
- package/dist/containers/Tenant/TableFormDialog/TableFormDialog.d.ts +19 -0
- package/dist/containers/Tenant/TableFormDialog/TableFormDialog.js +225 -0
- package/dist/containers/Tenant/TableFormDialog/TableFormDialog.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/TableFormDialog.scss +589 -0
- package/dist/containers/Tenant/TableFormDialog/columnValueValidation.d.ts +1 -0
- package/dist/containers/Tenant/TableFormDialog/columnValueValidation.js +179 -0
- package/dist/containers/Tenant/TableFormDialog/columnValueValidation.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.d.ts +11 -0
- package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.js +84 -0
- package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.scss +175 -0
- package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.d.ts +19 -0
- package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.js +115 -0
- package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.scss +22 -0
- package/dist/containers/Tenant/TableFormDialog/components/layout.d.ts +15 -0
- package/dist/containers/Tenant/TableFormDialog/components/layout.js +32 -0
- package/dist/containers/Tenant/TableFormDialog/components/layout.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/constants.d.ts +16 -0
- package/dist/containers/Tenant/TableFormDialog/constants.js +99 -0
- package/dist/containers/Tenant/TableFormDialog/constants.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/i18n/en.json +143 -0
- package/dist/containers/Tenant/TableFormDialog/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/TableFormDialog/i18n/index.js +5 -0
- package/dist/containers/Tenant/TableFormDialog/i18n/index.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/GeneralSection.d.ts +8 -0
- package/dist/containers/Tenant/TableFormDialog/sections/GeneralSection.js +34 -0
- package/dist/containers/Tenant/TableFormDialog/sections/GeneralSection.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/PartitioningSection.d.ts +5 -0
- package/dist/containers/Tenant/TableFormDialog/sections/PartitioningSection.js +28 -0
- package/dist/containers/Tenant/TableFormDialog/sections/PartitioningSection.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/SettingsSection.d.ts +6 -0
- package/dist/containers/Tenant/TableFormDialog/sections/SettingsSection.js +141 -0
- package/dist/containers/Tenant/TableFormDialog/sections/SettingsSection.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/SplitPointDialog.d.ts +22 -0
- package/dist/containers/Tenant/TableFormDialog/sections/SplitPointDialog.js +97 -0
- package/dist/containers/Tenant/TableFormDialog/sections/SplitPointDialog.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/TTLSection.d.ts +6 -0
- package/dist/containers/Tenant/TableFormDialog/sections/TTLSection.js +70 -0
- package/dist/containers/Tenant/TableFormDialog/sections/TTLSection.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/YdbColumnsSection.d.ts +11 -0
- package/dist/containers/Tenant/TableFormDialog/sections/YdbColumnsSection.js +181 -0
- package/dist/containers/Tenant/TableFormDialog/sections/YdbColumnsSection.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/YdbIndexesSection.d.ts +1 -0
- package/dist/containers/Tenant/TableFormDialog/sections/YdbIndexesSection.js +42 -0
- package/dist/containers/Tenant/TableFormDialog/sections/YdbIndexesSection.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/types.d.ts +26 -0
- package/dist/containers/Tenant/TableFormDialog/types.js +3 -0
- package/dist/containers/Tenant/TableFormDialog/types.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/utils.d.ts +41 -0
- package/dist/containers/Tenant/TableFormDialog/utils.js +245 -0
- package/dist/containers/Tenant/TableFormDialog/utils.js.map +1 -0
- package/dist/containers/Tenant/TableFormDialog/validation.d.ts +8 -0
- package/dist/containers/Tenant/TableFormDialog/validation.js +308 -0
- package/dist/containers/Tenant/TableFormDialog/validation.js.map +1 -0
- package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.d.ts +19 -0
- package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.js +296 -0
- package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.js.map +1 -0
- package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.scss +182 -0
- package/dist/containers/Tenant/TopicFormDialog/i18n/en.json +51 -0
- package/dist/containers/Tenant/TopicFormDialog/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/TopicFormDialog/i18n/index.js +5 -0
- package/dist/containers/Tenant/TopicFormDialog/i18n/index.js.map +1 -0
- package/dist/containers/Tenant/TopicFormDialog/utils.d.ts +18 -0
- package/dist/containers/Tenant/TopicFormDialog/utils.js +100 -0
- package/dist/containers/Tenant/TopicFormDialog/utils.js.map +1 -0
- package/dist/containers/Tenant/TopicFormDialog/validation.d.ts +3 -0
- package/dist/containers/Tenant/TopicFormDialog/validation.js +88 -0
- package/dist/containers/Tenant/TopicFormDialog/validation.js.map +1 -0
- package/dist/containers/Tenant/i18n/en.json +5 -1
- package/dist/containers/Tenant/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/utils/pathSegmentValidation.d.ts +5 -0
- package/dist/containers/Tenant/utils/pathSegmentValidation.js +15 -0
- package/dist/containers/Tenant/utils/pathSegmentValidation.js.map +1 -0
- package/dist/containers/Tenant/utils/schemaActions.d.ts +4 -0
- package/dist/containers/Tenant/utils/schemaActions.js +103 -14
- package/dist/containers/Tenant/utils/schemaActions.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +3 -30
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/containers/VDiskPage/useVDiskQueryParams.d.ts +13 -0
- package/dist/containers/VDiskPage/useVDiskQueryParams.js +55 -0
- package/dist/containers/VDiskPage/useVDiskQueryParams.js.map +1 -0
- package/dist/store/reducers/pdisk/utils.js +4 -4
- package/dist/store/reducers/pdisk/utils.js.map +1 -1
- package/dist/store/reducers/query/api.d.ts +2 -1
- package/dist/store/reducers/query/api.js +107 -48
- package/dist/store/reducers/query/api.js.map +1 -1
- package/dist/store/reducers/query/parsers/preparePlanData.js +8 -1
- package/dist/store/reducers/query/parsers/preparePlanData.js.map +1 -1
- package/dist/store/reducers/query/slice.d.ts +8 -9
- package/dist/store/reducers/query/slice.js +5 -0
- package/dist/store/reducers/query/slice.js.map +1 -1
- package/dist/store/reducers/query/streaming/reducers.d.ts +3 -0
- package/dist/store/reducers/query/streaming/reducers.js +6 -6
- package/dist/store/reducers/query/streaming/reducers.js.map +1 -1
- package/dist/store/reducers/query/types.d.ts +8 -4
- package/dist/store/reducers/query/utils.d.ts +10 -2
- package/dist/store/reducers/query/utils.js +37 -6
- package/dist/store/reducers/query/utils.js.map +1 -1
- package/dist/store/reducers/storage/prepareGroupsDisks.d.ts +10 -3
- package/dist/store/reducers/storage/prepareGroupsDisks.js +43 -6
- package/dist/store/reducers/storage/prepareGroupsDisks.js.map +1 -1
- package/dist/store/reducers/storage/types.d.ts +1 -0
- package/dist/store/reducers/storage/utils.js +4 -7
- package/dist/store/reducers/storage/utils.js.map +1 -1
- package/dist/store/reducers/table/constants.d.ts +6 -0
- package/dist/store/reducers/table/constants.js +36 -0
- package/dist/store/reducers/table/constants.js.map +1 -0
- package/dist/store/reducers/table/table.d.ts +19 -0
- package/dist/store/reducers/table/table.js +104 -0
- package/dist/store/reducers/table/table.js.map +1 -0
- package/dist/store/reducers/table/types.d.ts +193 -0
- package/dist/store/reducers/table/types.js +12 -0
- package/dist/store/reducers/table/types.js.map +1 -0
- package/dist/store/reducers/table/utils.d.ts +17 -0
- package/dist/store/reducers/table/utils.js +485 -0
- package/dist/store/reducers/table/utils.js.map +1 -0
- package/dist/store/reducers/topic/topic.d.ts +1762 -0
- package/dist/store/reducers/topic/topic.js +172 -0
- package/dist/store/reducers/topic/topic.js.map +1 -0
- package/dist/store/reducers/topic/utils.d.ts +23 -0
- package/dist/store/reducers/topic/utils.js +75 -0
- package/dist/store/reducers/topic/utils.js.map +1 -0
- package/dist/types/api/pdisk.d.ts +6 -1
- package/dist/types/api/pdisk.js.map +1 -1
- package/dist/types/api/storage.d.ts +3 -1
- package/dist/types/api/storage.js.map +1 -1
- package/dist/types/api/topic.d.ts +18 -0
- package/dist/types/api/topic.js +8 -0
- package/dist/types/api/topic.js.map +1 -1
- package/dist/types/api/vdisk.d.ts +8 -0
- package/dist/types/api/vdisk.js.map +1 -1
- package/dist/uiFactory/types.d.ts +5 -0
- package/dist/uiFactory/uiFactory.d.ts +4 -1
- package/dist/uiFactory/uiFactory.js +8 -1
- package/dist/uiFactory/uiFactory.js.map +1 -1
- package/dist/utils/capacityAlerts.d.ts +1 -0
- package/dist/utils/capacityAlerts.js +3 -0
- package/dist/utils/capacityAlerts.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -1
- package/dist/utils/constants.js +1 -1
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/disks/displayState.d.ts +5 -0
- package/dist/utils/disks/displayState.js.map +1 -1
- package/dist/utils/disks/iconCalculators.d.ts +1 -3
- package/dist/utils/disks/iconCalculators.js +5 -6
- package/dist/utils/disks/iconCalculators.js.map +1 -1
- package/dist/utils/disks/prepareDisks.d.ts +1 -1
- package/dist/utils/disks/prepareDisks.js +44 -3
- package/dist/utils/disks/prepareDisks.js.map +1 -1
- package/dist/utils/disks/severityCalculators.d.ts +1 -4
- package/dist/utils/disks/severityCalculators.js +2 -6
- package/dist/utils/disks/severityCalculators.js.map +1 -1
- package/dist/utils/disks/types.d.ts +8 -0
- package/dist/utils/emptyDataPlaceholder.d.ts +1 -0
- package/dist/utils/emptyDataPlaceholder.js +2 -0
- package/dist/utils/emptyDataPlaceholder.js.map +1 -0
- package/dist/utils/hooks/useSelectedColumns.d.ts +3 -0
- package/dist/utils/hooks/useSelectedColumns.js +18 -0
- package/dist/utils/hooks/useSelectedColumns.js.map +1 -1
- package/dist/utils/query.d.ts +4 -1
- package/dist/utils/query.js +34 -1
- package/dist/utils/query.js.map +1 -1
- package/dist/utils/storageMetrics.d.ts +5 -1
- package/dist/utils/storageMetrics.js +35 -4
- package/dist/utils/storageMetrics.js.map +1 -1
- package/dist/utils/utils.js +2 -1
- package/dist/utils/utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/store/reducers/topic.d.ts +0 -1291
- package/dist/store/reducers/topic.js +0 -83
- package/dist/store/reducers/topic.js.map +0 -1
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/* eslint-disable camelcase */
|
|
2
|
+
import { createSelector } from '@reduxjs/toolkit';
|
|
3
|
+
import { convertBytesObjectToSpeed } from '../../../utils/bytesParsers';
|
|
4
|
+
import { isQueryErrorResponse, parseQueryAPIResponse } from '../../../utils/query';
|
|
5
|
+
import { parseLag, parseTimestampToIdleTime } from '../../../utils/timeParsers';
|
|
6
|
+
import { api } from '../api';
|
|
7
|
+
import { AutoPartitioningStrategy, buildAlterTopicQuery, buildCreateTopicQuery } from './utils';
|
|
8
|
+
export const TOPIC_MESSAGE_SIZE_LIMIT = 100;
|
|
9
|
+
const DEFAULT_WRITE_QUOTA_BYTES = 1024 * 1024;
|
|
10
|
+
export const topicApi = api.injectEndpoints({
|
|
11
|
+
endpoints: (build) => ({
|
|
12
|
+
getTopic: build.query({
|
|
13
|
+
queryFn: async ({ path, database, databaseFullPath, useMetaProxy, }) => {
|
|
14
|
+
try {
|
|
15
|
+
const data = await window.api.viewer.getTopic({
|
|
16
|
+
path: { path, databaseFullPath, useMetaProxy },
|
|
17
|
+
database,
|
|
18
|
+
});
|
|
19
|
+
// On older version it can return HTML page of Developer UI with an error
|
|
20
|
+
if (typeof data !== 'object') {
|
|
21
|
+
return { error: {} };
|
|
22
|
+
}
|
|
23
|
+
return { data };
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
return { error };
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
providesTags: ['All'],
|
|
30
|
+
}),
|
|
31
|
+
getTopicData: build.query({
|
|
32
|
+
queryFn: async ({ clusterName, useMeta, ...params }) => {
|
|
33
|
+
try {
|
|
34
|
+
const requestParams = {
|
|
35
|
+
message_size_limit: TOPIC_MESSAGE_SIZE_LIMIT,
|
|
36
|
+
...params,
|
|
37
|
+
};
|
|
38
|
+
const data = useMeta && window.api.meta
|
|
39
|
+
? await window.api.meta.getSchemaTopicData({
|
|
40
|
+
...requestParams,
|
|
41
|
+
clusterName,
|
|
42
|
+
})
|
|
43
|
+
: await window.api.viewer.getTopicData(requestParams);
|
|
44
|
+
return { data };
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
return { error };
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
keepUnusedDataFor: 0,
|
|
51
|
+
}),
|
|
52
|
+
createTopic: build.mutation({
|
|
53
|
+
queryFn: async ({ database, formData, }) => {
|
|
54
|
+
try {
|
|
55
|
+
const query = buildCreateTopicQuery(formData);
|
|
56
|
+
const response = await window.api.viewer.sendQuery({
|
|
57
|
+
query,
|
|
58
|
+
database,
|
|
59
|
+
action: 'execute-query',
|
|
60
|
+
});
|
|
61
|
+
if (isQueryErrorResponse(response)) {
|
|
62
|
+
return { error: response };
|
|
63
|
+
}
|
|
64
|
+
return { data: parseQueryAPIResponse(response) };
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
return { error };
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
invalidatesTags: (_result, error) => (error ? [] : ['All']),
|
|
71
|
+
}),
|
|
72
|
+
updateTopic: build.mutation({
|
|
73
|
+
queryFn: async ({ database, formData, }) => {
|
|
74
|
+
try {
|
|
75
|
+
const query = buildAlterTopicQuery(formData);
|
|
76
|
+
const response = await window.api.viewer.sendQuery({
|
|
77
|
+
query,
|
|
78
|
+
database,
|
|
79
|
+
action: 'execute-query',
|
|
80
|
+
});
|
|
81
|
+
if (isQueryErrorResponse(response)) {
|
|
82
|
+
return { error: response };
|
|
83
|
+
}
|
|
84
|
+
return { data: parseQueryAPIResponse(response) };
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
return { error };
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
invalidatesTags: (_result, error) => (error ? [] : ['All']),
|
|
91
|
+
}),
|
|
92
|
+
}),
|
|
93
|
+
overrideExisting: 'throw',
|
|
94
|
+
});
|
|
95
|
+
const createGetTopicSelector = createSelector((path) => path, (_path, database) => database, (_path, _database, databaseFullPath) => databaseFullPath, (_path, _database, _databaseFullPath, useMetaProxy) => useMetaProxy, (path, database, databaseFullPath, useMetaProxy) => topicApi.endpoints.getTopic.select({ path, database, databaseFullPath, useMetaProxy }));
|
|
96
|
+
const selectTopicStats = createSelector((state) => state, (_state, path, database, databaseFullPath, useMetaProxy) => createGetTopicSelector(path, database, databaseFullPath, useMetaProxy), (state, selectGetTopic) => { var _a; return (_a = selectGetTopic(state).data) === null || _a === void 0 ? void 0 : _a.topic_stats; });
|
|
97
|
+
const selectConsumers = createSelector((state) => state, (_state, path, database, databaseFullPath, useMetaProxy) => createGetTopicSelector(path, database, databaseFullPath, useMetaProxy), (state, selectGetTopic) => { var _a; return (_a = selectGetTopic(state).data) === null || _a === void 0 ? void 0 : _a.consumers; });
|
|
98
|
+
export const selectConsumersNames = createSelector(selectConsumers, (consumers) => {
|
|
99
|
+
return consumers === null || consumers === void 0 ? void 0 : consumers.map((consumer) => consumer === null || consumer === void 0 ? void 0 : consumer.name).filter((consumer) => consumer !== undefined);
|
|
100
|
+
});
|
|
101
|
+
export const selectPreparedTopicStats = createSelector(selectTopicStats, (rawTopicStats) => {
|
|
102
|
+
if (!rawTopicStats) {
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
105
|
+
const { store_size_bytes = '0', min_last_write_time, max_write_time_lag, bytes_written, } = rawTopicStats || {};
|
|
106
|
+
return {
|
|
107
|
+
storeSize: store_size_bytes,
|
|
108
|
+
partitionsIdleTime: parseTimestampToIdleTime(min_last_write_time),
|
|
109
|
+
partitionsWriteLag: parseLag(max_write_time_lag),
|
|
110
|
+
writeSpeed: convertBytesObjectToSpeed(bytes_written),
|
|
111
|
+
};
|
|
112
|
+
});
|
|
113
|
+
export const selectPreparedConsumersData = createSelector(selectConsumers, (consumers) => {
|
|
114
|
+
return consumers === null || consumers === void 0 ? void 0 : consumers.map((consumer) => {
|
|
115
|
+
const { name, consumer_stats } = consumer || {};
|
|
116
|
+
const { min_partitions_last_read_time, max_read_time_lag, max_write_time_lag, bytes_read } = consumer_stats || {};
|
|
117
|
+
return {
|
|
118
|
+
name,
|
|
119
|
+
readSpeed: convertBytesObjectToSpeed(bytes_read),
|
|
120
|
+
writeLag: parseLag(max_write_time_lag),
|
|
121
|
+
readLag: parseLag(max_read_time_lag),
|
|
122
|
+
readIdleTime: parseTimestampToIdleTime(min_partitions_last_read_time),
|
|
123
|
+
};
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
function parseDurationToSeconds(duration) {
|
|
127
|
+
if (!duration) {
|
|
128
|
+
return undefined;
|
|
129
|
+
}
|
|
130
|
+
if (typeof duration === 'string') {
|
|
131
|
+
const match = duration.match(/^(\d+)s$/);
|
|
132
|
+
return match ? parseInt(match[1], 10) : undefined;
|
|
133
|
+
}
|
|
134
|
+
if (typeof duration === 'object' && duration.seconds !== undefined) {
|
|
135
|
+
return typeof duration.seconds === 'string'
|
|
136
|
+
? parseInt(duration.seconds, 10)
|
|
137
|
+
: duration.seconds;
|
|
138
|
+
}
|
|
139
|
+
return undefined;
|
|
140
|
+
}
|
|
141
|
+
export const selectTopicFormValues = createSelector((state) => state, (_state, path, database, databaseFullPath, useMetaProxy) => createGetTopicSelector(path, database, databaseFullPath, useMetaProxy), (state, selectGetTopic) => {
|
|
142
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
143
|
+
const topicData = selectGetTopic(state).data;
|
|
144
|
+
if (!topicData) {
|
|
145
|
+
return undefined;
|
|
146
|
+
}
|
|
147
|
+
const minActivePartitions = parseInt((_b = (_a = topicData.partitioning_settings) === null || _a === void 0 ? void 0 : _a.min_active_partitions) !== null && _b !== void 0 ? _b : '1', 10);
|
|
148
|
+
const maxActivePartitions = parseInt((_d = (_c = topicData.partitioning_settings) === null || _c === void 0 ? void 0 : _c.max_active_partitions) !== null && _d !== void 0 ? _d : '0', 10);
|
|
149
|
+
const parsedWriteQuotaBytes = parseInt((_e = topicData.partition_write_speed_bytes_per_second) !== null && _e !== void 0 ? _e : '', 10);
|
|
150
|
+
const writeQuotaBytes = Number.isFinite(parsedWriteQuotaBytes)
|
|
151
|
+
? parsedWriteQuotaBytes
|
|
152
|
+
: DEFAULT_WRITE_QUOTA_BYTES;
|
|
153
|
+
const autoPartitioningSettings = (_f = topicData.partitioning_settings) === null || _f === void 0 ? void 0 : _f.auto_partitioning_settings;
|
|
154
|
+
const autoPartitioningStrategy = String((_g = autoPartitioningSettings === null || autoPartitioningSettings === void 0 ? void 0 : autoPartitioningSettings.strategy) !== null && _g !== void 0 ? _g : AutoPartitioningStrategy.Unspecified);
|
|
155
|
+
const autoPartitioningEnabled = autoPartitioningStrategy !== AutoPartitioningStrategy.Disabled &&
|
|
156
|
+
autoPartitioningStrategy !== AutoPartitioningStrategy.Unspecified;
|
|
157
|
+
const partitionWriteSpeed = autoPartitioningSettings === null || autoPartitioningSettings === void 0 ? void 0 : autoPartitioningSettings.partition_write_speed;
|
|
158
|
+
return {
|
|
159
|
+
name: (_h = topicData.self) === null || _h === void 0 ? void 0 : _h.name,
|
|
160
|
+
shards: minActivePartitions,
|
|
161
|
+
writeQuotaBytes,
|
|
162
|
+
autoPartitioning: {
|
|
163
|
+
enabled: autoPartitioningEnabled,
|
|
164
|
+
mode: autoPartitioningStrategy,
|
|
165
|
+
minPartitions: minActivePartitions,
|
|
166
|
+
maxPartitions: maxActivePartitions > 0 ? maxActivePartitions : undefined,
|
|
167
|
+
stabilizationWindow: parseDurationToSeconds(partitionWriteSpeed === null || partitionWriteSpeed === void 0 ? void 0 : partitionWriteSpeed.stabilization_window),
|
|
168
|
+
upUtilization: partitionWriteSpeed === null || partitionWriteSpeed === void 0 ? void 0 : partitionWriteSpeed.up_utilization_percent,
|
|
169
|
+
},
|
|
170
|
+
};
|
|
171
|
+
});
|
|
172
|
+
//# sourceMappingURL=topic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../../src/store/reducers/topic/topic.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAIhD,OAAO,EAAC,yBAAyB,EAAC,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAC,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAE,wBAAwB,EAAC,MAAM,4BAA4B,CAAC;AAE9E,OAAO,EAAC,GAAG,EAAC,MAAM,QAAQ,CAAC;AAG3B,OAAO,EAAC,wBAAwB,EAAE,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAE9F,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAO5C,MAAM,yBAAyB,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9C,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAC;IACxC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;YAClB,OAAO,EAAE,KAAK,EAAE,EACZ,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,YAAY,GAMf,EAAE,EAAE;gBACD,IAAI,CAAC;oBACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;wBAC1C,IAAI,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAC;wBAC5C,QAAQ;qBACX,CAAC,CAAC;oBACH,yEAAyE;oBACzE,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC3B,OAAO,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC;oBACvB,CAAC;oBACD,OAAO,EAAC,IAAI,EAAC,CAAC;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,EAAC,KAAK,EAAC,CAAC;gBACnB,CAAC;YACL,CAAC;YACD,YAAY,EAAE,CAAC,KAAK,CAAC;SACxB,CAAC;QACF,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC;YACtB,OAAO,EAAE,KAAK,EAAE,EAAC,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,EAAwB,EAAE,EAAE;gBACxE,IAAI,CAAC;oBACD,MAAM,aAAa,GAAG;wBAClB,kBAAkB,EAAE,wBAAwB;wBAC5C,GAAG,MAAM;qBACZ,CAAC;oBAEF,MAAM,IAAI,GACN,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI;wBACtB,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC;4BACrC,GAAG,aAAa;4BAChB,WAAW;yBACd,CAAC;wBACJ,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;oBAE9D,OAAO,EAAC,IAAI,EAAC,CAAC;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,EAAC,KAAK,EAAC,CAAC;gBACnB,CAAC;YACL,CAAC;YACD,iBAAiB,EAAE,CAAC;SACvB,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,EACZ,QAAQ,EACR,QAAQ,GAIX,EAAE,EAAE;gBACD,IAAI,CAAC;oBACD,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;oBAE9C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC/C,KAAK;wBACL,QAAQ;wBACR,MAAM,EAAE,eAAe;qBAC1B,CAAC,CAAC;oBAEH,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACjC,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC;oBAC7B,CAAC;oBAED,OAAO,EAAC,IAAI,EAAE,qBAAqB,CAAC,QAAQ,CAAC,EAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,EAAC,KAAK,EAAC,CAAC;gBACnB,CAAC;YACL,CAAC;YACD,eAAe,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9D,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,EACZ,QAAQ,EACR,QAAQ,GAIX,EAAE,EAAE;gBACD,IAAI,CAAC;oBACD,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;oBAE7C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC/C,KAAK;wBACL,QAAQ;wBACR,MAAM,EAAE,eAAe;qBAC1B,CAAC,CAAC;oBAEH,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACjC,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC;oBAC7B,CAAC;oBAED,OAAO,EAAC,IAAI,EAAE,qBAAqB,CAAC,QAAQ,CAAC,EAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,EAAC,KAAK,EAAC,CAAC;gBACnB,CAAC;YACL,CAAC;YACD,eAAe,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9D,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE,OAAO;CAC5B,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,cAAc,CACzC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,EACtB,CAAC,KAAa,EAAE,QAAgB,EAAE,EAAE,CAAC,QAAQ,EAC7C,CAAC,KAAa,EAAE,SAAiB,EAAE,gBAAwB,EAAE,EAAE,CAAC,gBAAgB,EAChF,CAAC,KAAa,EAAE,SAAiB,EAAE,iBAAyB,EAAE,YAAsB,EAAE,EAAE,CACpF,YAAY,EAChB,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,CAC/C,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAC,CAAC,CAC3F,CAAC;AAEF,MAAM,gBAAgB,GAAG,cAAc,CACnC,CAAC,KAAgB,EAAE,EAAE,CAAC,KAAK,EAC3B,CACI,MAAiB,EACjB,IAAY,EACZ,QAAgB,EAChB,gBAAwB,EACxB,YAAsB,EACxB,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC,EAC3E,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,WAAC,OAAA,MAAA,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,0CAAE,WAAW,CAAA,EAAA,CACrE,CAAC;AAEF,MAAM,eAAe,GAAG,cAAc,CAClC,CAAC,KAAgB,EAAE,EAAE,CAAC,KAAK,EAC3B,CACI,MAAiB,EACjB,IAAY,EACZ,QAAgB,EAChB,gBAAwB,EACxB,YAAsB,EACxB,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC,EAC3E,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,WAAC,OAAA,MAAA,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,0CAAE,SAAS,CAAA,EAAA,CACnE,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,EAAE;IAC9E,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CACV,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EACjC,MAAM,CAAC,CAAC,QAAQ,EAAsB,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAC,gBAAgB,EAAE,CAAC,aAAa,EAAE,EAAE;IACvF,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,EACF,gBAAgB,GAAG,GAAG,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,GAChB,GAAG,aAAa,IAAI,EAAE,CAAC;IAExB,OAAO;QACH,SAAS,EAAE,gBAAgB;QAC3B,kBAAkB,EAAE,wBAAwB,CAAC,mBAAmB,CAAC;QACjE,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB,CAAC;QAChD,UAAU,EAAE,yBAAyB,CAAC,aAAa,CAAC;KACvD,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,EAAE;IACrF,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC/B,MAAM,EAAC,IAAI,EAAE,cAAc,EAAC,GAAG,QAAQ,IAAI,EAAE,CAAC;QAE9C,MAAM,EAAC,6BAA6B,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAC,GACpF,cAAc,IAAI,EAAE,CAAC;QAEzB,OAAO;YACH,IAAI;YACJ,SAAS,EAAE,yBAAyB,CAAC,UAAU,CAAC;YAEhD,QAAQ,EAAE,QAAQ,CAAC,kBAAkB,CAAC;YACtC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC;YACpC,YAAY,EAAE,wBAAwB,CAAC,6BAA6B,CAAC;SACxE,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,SAAS,sBAAsB,CAAC,QAAuC;IACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACjE,OAAO,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YACvC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YAChC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,cAAc,CAC/C,CAAC,KAAgB,EAAE,EAAE,CAAC,KAAK,EAC3B,CACI,MAAiB,EACjB,IAAY,EACZ,QAAgB,EAChB,gBAAwB,EACxB,YAAsB,EACxB,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC,EAC3E,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE;;IACtB,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;IAC7C,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,mBAAmB,GAAG,QAAQ,CAChC,MAAA,MAAA,SAAS,CAAC,qBAAqB,0CAAE,qBAAqB,mCAAI,GAAG,EAC7D,EAAE,CACL,CAAC;IACF,MAAM,mBAAmB,GAAG,QAAQ,CAChC,MAAA,MAAA,SAAS,CAAC,qBAAqB,0CAAE,qBAAqB,mCAAI,GAAG,EAC7D,EAAE,CACL,CAAC;IACF,MAAM,qBAAqB,GAAG,QAAQ,CAClC,MAAA,SAAS,CAAC,sCAAsC,mCAAI,EAAE,EACtD,EAAE,CACL,CAAC;IAEF,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC1D,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,yBAAyB,CAAC;IAChC,MAAM,wBAAwB,GAC1B,MAAA,SAAS,CAAC,qBAAqB,0CAAE,0BAA0B,CAAC;IAChE,MAAM,wBAAwB,GAAG,MAAM,CACnC,MAAA,wBAAwB,aAAxB,wBAAwB,uBAAxB,wBAAwB,CAAE,QAAQ,mCAAI,wBAAwB,CAAC,WAAW,CAC7E,CAAC;IACF,MAAM,uBAAuB,GACzB,wBAAwB,KAAK,wBAAwB,CAAC,QAAQ;QAC9D,wBAAwB,KAAK,wBAAwB,CAAC,WAAW,CAAC;IACtE,MAAM,mBAAmB,GAAG,wBAAwB,aAAxB,wBAAwB,uBAAxB,wBAAwB,CAAE,qBAAqB,CAAC;IAE5E,OAAO;QACH,IAAI,EAAE,MAAA,SAAS,CAAC,IAAI,0CAAE,IAAI;QAC1B,MAAM,EAAE,mBAAmB;QAC3B,eAAe;QACf,gBAAgB,EAAE;YACd,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE,wBAAwB;YAC9B,aAAa,EAAE,mBAAmB;YAClC,aAAa,EAAE,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS;YACxE,mBAAmB,EAAE,sBAAsB,CACvC,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,oBAAoB,CAC5C;YACD,aAAa,EAAE,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,sBAAsB;SAC7D;KACe,CAAC;AACzB,CAAC,CACJ,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare enum AutoPartitioningStrategy {
|
|
2
|
+
Disabled = "AUTO_PARTITIONING_STRATEGY_DISABLED",
|
|
3
|
+
Unspecified = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED",
|
|
4
|
+
Paused = "AUTO_PARTITIONING_STRATEGY_PAUSED",
|
|
5
|
+
ScaleUp = "AUTO_PARTITIONING_STRATEGY_SCALE_UP",
|
|
6
|
+
ScaleUpAndDown = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN"
|
|
7
|
+
}
|
|
8
|
+
export interface TopicFormValues {
|
|
9
|
+
path?: string;
|
|
10
|
+
name?: string;
|
|
11
|
+
shards: number;
|
|
12
|
+
writeQuotaBytes: number;
|
|
13
|
+
autoPartitioning: {
|
|
14
|
+
enabled: boolean;
|
|
15
|
+
mode: string;
|
|
16
|
+
minPartitions?: number;
|
|
17
|
+
maxPartitions?: number;
|
|
18
|
+
stabilizationWindow?: number;
|
|
19
|
+
upUtilization?: number;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export declare function buildCreateTopicQuery(formData: TopicFormValues): string;
|
|
23
|
+
export declare function buildAlterTopicQuery(formData: TopicFormValues): string;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
export var AutoPartitioningStrategy;
|
|
2
|
+
(function (AutoPartitioningStrategy) {
|
|
3
|
+
AutoPartitioningStrategy["Disabled"] = "AUTO_PARTITIONING_STRATEGY_DISABLED";
|
|
4
|
+
AutoPartitioningStrategy["Unspecified"] = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED";
|
|
5
|
+
AutoPartitioningStrategy["Paused"] = "AUTO_PARTITIONING_STRATEGY_PAUSED";
|
|
6
|
+
AutoPartitioningStrategy["ScaleUp"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP";
|
|
7
|
+
AutoPartitioningStrategy["ScaleUpAndDown"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN";
|
|
8
|
+
})(AutoPartitioningStrategy || (AutoPartitioningStrategy = {}));
|
|
9
|
+
const AUTO_PARTITIONING_STRATEGY_TO_YQL = {
|
|
10
|
+
[AutoPartitioningStrategy.Disabled]: 'disabled',
|
|
11
|
+
[AutoPartitioningStrategy.Unspecified]: 'unspecified',
|
|
12
|
+
[AutoPartitioningStrategy.Paused]: 'paused',
|
|
13
|
+
[AutoPartitioningStrategy.ScaleUp]: 'scale_up',
|
|
14
|
+
[AutoPartitioningStrategy.ScaleUpAndDown]: 'scale_up_and_down',
|
|
15
|
+
};
|
|
16
|
+
const NAME_REGEX = /^[a-z_][a-z0-9_]*$/i;
|
|
17
|
+
function prepareTopicEntityName(path) {
|
|
18
|
+
return NAME_REGEX.test(path)
|
|
19
|
+
? path
|
|
20
|
+
: `\`${path.replaceAll('\\', '\\\\').replaceAll('`', '\\`')}\``;
|
|
21
|
+
}
|
|
22
|
+
function buildTopicPath(path, name) {
|
|
23
|
+
const topicPath = [path, name].filter(Boolean).join('/');
|
|
24
|
+
if (topicPath) {
|
|
25
|
+
return prepareTopicEntityName(topicPath);
|
|
26
|
+
}
|
|
27
|
+
throw new Error('Topic name or path is required');
|
|
28
|
+
}
|
|
29
|
+
function formatAutoPartitioningStrategy(strategy) {
|
|
30
|
+
var _a;
|
|
31
|
+
return ((_a = AUTO_PARTITIONING_STRATEGY_TO_YQL[strategy]) !== null && _a !== void 0 ? _a : strategy.replace(/^AUTO_PARTITIONING_STRATEGY_/, '').toLowerCase());
|
|
32
|
+
}
|
|
33
|
+
function buildTopicSettings(formData, { includeDisabledAutoPartitioningStrategy = true, } = {}) {
|
|
34
|
+
var _a;
|
|
35
|
+
const { shards, writeQuotaBytes, autoPartitioning } = formData;
|
|
36
|
+
const settings = [];
|
|
37
|
+
const minActivePartitions = autoPartitioning.enabled
|
|
38
|
+
? ((_a = autoPartitioning.minPartitions) !== null && _a !== void 0 ? _a : shards)
|
|
39
|
+
: shards;
|
|
40
|
+
settings.push(`MIN_ACTIVE_PARTITIONS = ${minActivePartitions}`);
|
|
41
|
+
if (autoPartitioning.enabled) {
|
|
42
|
+
if (autoPartitioning.maxPartitions !== undefined) {
|
|
43
|
+
settings.push(`MAX_ACTIVE_PARTITIONS = ${autoPartitioning.maxPartitions}`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
settings.push(`PARTITION_WRITE_SPEED_BYTES_PER_SECOND = ${writeQuotaBytes}`);
|
|
47
|
+
if (autoPartitioning.enabled || includeDisabledAutoPartitioningStrategy) {
|
|
48
|
+
const strategy = autoPartitioning.enabled
|
|
49
|
+
? formatAutoPartitioningStrategy(autoPartitioning.mode)
|
|
50
|
+
: formatAutoPartitioningStrategy(AutoPartitioningStrategy.Disabled);
|
|
51
|
+
settings.push(`AUTO_PARTITIONING_STRATEGY = '${strategy}'`);
|
|
52
|
+
}
|
|
53
|
+
if (autoPartitioning.enabled) {
|
|
54
|
+
if (autoPartitioning.stabilizationWindow !== undefined) {
|
|
55
|
+
settings.push(`AUTO_PARTITIONING_STABILIZATION_WINDOW = Interval('PT${autoPartitioning.stabilizationWindow}S')`);
|
|
56
|
+
}
|
|
57
|
+
if (autoPartitioning.upUtilization !== undefined) {
|
|
58
|
+
settings.push(`AUTO_PARTITIONING_UP_UTILIZATION_PERCENT = ${autoPartitioning.upUtilization}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return settings;
|
|
62
|
+
}
|
|
63
|
+
export function buildCreateTopicQuery(formData) {
|
|
64
|
+
const topicRef = buildTopicPath(formData.path, formData.name);
|
|
65
|
+
const settings = buildTopicSettings(formData);
|
|
66
|
+
return `CREATE TOPIC ${topicRef} WITH (\n ${settings.join(',\n ')}\n);`;
|
|
67
|
+
}
|
|
68
|
+
export function buildAlterTopicQuery(formData) {
|
|
69
|
+
const topicRef = buildTopicPath(formData.path, formData.name);
|
|
70
|
+
const settings = buildTopicSettings(formData, {
|
|
71
|
+
includeDisabledAutoPartitioningStrategy: false,
|
|
72
|
+
});
|
|
73
|
+
return `ALTER TOPIC ${topicRef} SET (\n ${settings.join(',\n ')}\n);`;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/store/reducers/topic/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EFlag } from './enums';
|
|
1
|
+
import type { ECapacityAlert, EFlag } from './enums';
|
|
2
2
|
import type { TVDiskStateInfo, TVSlotEntry } from './vdisk';
|
|
3
3
|
/**
|
|
4
4
|
* endpoint: /viewer/json/pdiskinfo
|
|
@@ -47,6 +47,11 @@ export interface TPDiskStateInfo {
|
|
|
47
47
|
EnforcedDynamicSlotSize?: string;
|
|
48
48
|
ExpectedSlotCount?: number;
|
|
49
49
|
NumActiveSlots?: number;
|
|
50
|
+
/** uint32; slot size in allocation units. */
|
|
51
|
+
SlotSizeInUnits?: number;
|
|
52
|
+
/** float; percent in the 0..100 scale. */
|
|
53
|
+
PDiskUsage?: number;
|
|
54
|
+
PDiskCapacityAlert?: ECapacityAlert | string;
|
|
50
55
|
}
|
|
51
56
|
export declare enum TPDiskState {
|
|
52
57
|
Initial = "Initial",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdisk.js","sourceRoot":"","sources":["../../../src/types/api/pdisk.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pdisk.js","sourceRoot":"","sources":["../../../src/types/api/pdisk.ts"],"names":[],"mappings":"AA0DA,MAAM,CAAN,IAAY,WAsBX;AAtBD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,sDAAuC,CAAA;IACvC,gEAAiD,CAAA;IACjD,sDAAuC,CAAA;IACvC,gEAAiD,CAAA;IACjD,kEAAmD,CAAA;IACnD,4DAA6C,CAAA;IAC7C,sEAAuD,CAAA;IACvD,wEAAyD,CAAA;IACzD,8DAA+C,CAAA;IAC/C,gCAAiB,CAAA;IACjB,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IACnC,8CAA+B,CAAA;IAC/B,kCAAmB,CAAA;IAEnB,4BAA4B;IAC5B,kCAAmB,CAAA;IACnB,kCAAmB,CAAA;IACnB,oDAAqC,CAAA;IACrC,kCAAmB,CAAA;AACvB,CAAC,EAtBW,WAAW,KAAX,WAAW,QAsBtB"}
|
|
@@ -134,6 +134,8 @@ export interface TGroupsStorageGroupInfo {
|
|
|
134
134
|
ErasureSpecies?: Erasure;
|
|
135
135
|
/** uint64 */
|
|
136
136
|
AllocationUnits?: string;
|
|
137
|
+
/** uint32; group slot weight in allocation units. */
|
|
138
|
+
GroupSizeInUnits?: number;
|
|
137
139
|
/**
|
|
138
140
|
* Could be one of:
|
|
139
141
|
* ok - group is okay
|
|
@@ -240,7 +242,7 @@ export type StorageV2Sort = BackendSortParam<StorageV2SortValue>;
|
|
|
240
242
|
export type GroupsSort = BackendSortParam<GroupsSortField>;
|
|
241
243
|
export type StorageWithFilter = 'space' | 'missing' | 'all';
|
|
242
244
|
export type GroupsGroupByField = 'GroupId' | 'Erasure' | 'Usage' | 'DiskSpaceUsage' | 'PoolName' | 'PileName' | 'Kind' | 'Encryption' | 'MediaType' | 'MissingDisks' | 'State' | 'Latency' | 'CapacityAlert';
|
|
243
|
-
export type GroupsRequiredField = 'GroupId' | 'PoolName' | 'PileName' | 'Kind' | 'MediaType' | 'Erasure' | 'MissingDisks' | 'Degraded' | 'State' | 'Used' | 'Limit' | 'Usage' | 'Available' | 'DiskSpaceUsage' | 'Encryption' | 'AllocationUnits' | 'Read' | 'Write' | 'PDisk' | 'VDisk' | 'Latency' | 'MaxPDiskUsage' | 'MaxVDiskSlotUsage' | 'MaxVDiskRawUsage' | 'MaxNormalizedOccupancy' | 'CapacityAlert';
|
|
245
|
+
export type GroupsRequiredField = 'GroupId' | 'PoolName' | 'PileName' | 'Kind' | 'MediaType' | 'Erasure' | 'MissingDisks' | 'Degraded' | 'State' | 'Used' | 'Limit' | 'Usage' | 'Available' | 'DiskSpaceUsage' | 'Encryption' | 'AllocationUnits' | 'GroupSizeInUnits' | 'Read' | 'Write' | 'PDisk' | 'VDisk' | 'Latency' | 'MaxPDiskUsage' | 'MaxVDiskSlotUsage' | 'MaxVDiskRawUsage' | 'MaxNormalizedOccupancy' | 'CapacityAlert';
|
|
244
246
|
interface BaseStorageRequestParams {
|
|
245
247
|
database?: string;
|
|
246
248
|
pool?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/types/api/storage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/types/api/storage.ts"],"names":[],"mappings":"AAoaA,MAAM,CAAN,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC5B,0DAAkC,CAAA;AACtC,CAAC,EAFW,oBAAoB,KAApB,oBAAoB,QAE/B"}
|
|
@@ -108,6 +108,7 @@ interface PartitioningSettings {
|
|
|
108
108
|
* Zero value means default - 1.
|
|
109
109
|
*/
|
|
110
110
|
min_active_partitions?: string;
|
|
111
|
+
max_active_partitions?: string;
|
|
111
112
|
/**
|
|
112
113
|
* int64
|
|
113
114
|
*
|
|
@@ -116,6 +117,23 @@ interface PartitioningSettings {
|
|
|
116
117
|
* Zero value means default - 100.
|
|
117
118
|
*/
|
|
118
119
|
partition_count_limit?: string;
|
|
120
|
+
auto_partitioning_settings?: AutoPartitioningSettings;
|
|
121
|
+
}
|
|
122
|
+
interface AutoPartitioningSettings {
|
|
123
|
+
strategy?: AutoPartitioningStrategy;
|
|
124
|
+
partition_write_speed?: AutoPartitioningWriteSpeedStrategy;
|
|
125
|
+
}
|
|
126
|
+
interface AutoPartitioningWriteSpeedStrategy {
|
|
127
|
+
stabilization_window?: string | IProtobufTimeObject;
|
|
128
|
+
up_utilization_percent?: number;
|
|
129
|
+
down_utilization_percent?: number;
|
|
130
|
+
}
|
|
131
|
+
declare enum AutoPartitioningStrategy {
|
|
132
|
+
AUTO_PARTITIONING_STRATEGY_UNSPECIFIED = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED",
|
|
133
|
+
AUTO_PARTITIONING_STRATEGY_DISABLED = "AUTO_PARTITIONING_STRATEGY_DISABLED",
|
|
134
|
+
AUTO_PARTITIONING_STRATEGY_SCALE_UP = "AUTO_PARTITIONING_STRATEGY_SCALE_UP",
|
|
135
|
+
AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN",
|
|
136
|
+
AUTO_PARTITIONING_STRATEGY_PAUSED = "AUTO_PARTITIONING_STRATEGY_PAUSED"
|
|
119
137
|
}
|
|
120
138
|
declare enum MeteringMode {
|
|
121
139
|
/** Use default */
|
package/dist/types/api/topic.js
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
var AutoPartitioningStrategy;
|
|
2
|
+
(function (AutoPartitioningStrategy) {
|
|
3
|
+
AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_UNSPECIFIED"] = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED";
|
|
4
|
+
AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_DISABLED"] = "AUTO_PARTITIONING_STRATEGY_DISABLED";
|
|
5
|
+
AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_SCALE_UP"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP";
|
|
6
|
+
AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN";
|
|
7
|
+
AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_PAUSED"] = "AUTO_PARTITIONING_STRATEGY_PAUSED";
|
|
8
|
+
})(AutoPartitioningStrategy || (AutoPartitioningStrategy = {}));
|
|
1
9
|
var MeteringMode;
|
|
2
10
|
(function (MeteringMode) {
|
|
3
11
|
/** Use default */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../src/types/api/topic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../src/types/api/topic.ts"],"names":[],"mappings":"AAuKA,IAAK,wBAMJ;AAND,WAAK,wBAAwB;IACzB,6GAAiF,CAAA;IACjF,uGAA2E,CAAA;IAC3E,uGAA2E,CAAA;IAC3E,yHAA6F,CAAA;IAC7F,mGAAuE,CAAA;AAC3E,CAAC,EANI,wBAAwB,KAAxB,wBAAwB,QAM5B;AAED,IAAK,YASJ;AATD,WAAK,YAAY;IACb,kBAAkB;IAClB,uEAAuD,CAAA;IAEvD,6CAA6C;IAC7C,mFAAmE,CAAA;IAEnE,qDAAqD;IACrD,2EAA2D,CAAA;AAC/D,CAAC,EATI,YAAY,KAAZ,YAAY,QAShB"}
|
|
@@ -14,6 +14,14 @@ export interface TVDiskStateInfo {
|
|
|
14
14
|
PDiskId?: number;
|
|
15
15
|
PDisk?: TPDiskStateInfo;
|
|
16
16
|
VDiskSlotId?: number;
|
|
17
|
+
/** uint32; VDisk slot weight in allocation units. */
|
|
18
|
+
GroupSizeInUnits?: number;
|
|
19
|
+
/** float; percent in the 0..100 scale. */
|
|
20
|
+
VDiskSlotUsage?: number;
|
|
21
|
+
/** float; percent in the 0..100 scale. */
|
|
22
|
+
VDiskRawUsage?: number;
|
|
23
|
+
/** float; backend normalized occupancy value. */
|
|
24
|
+
NormalizedOccupancy?: number;
|
|
17
25
|
/** uint64 */
|
|
18
26
|
Guid?: string;
|
|
19
27
|
/** uint64 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vdisk.js","sourceRoot":"","sources":["../../../src/types/api/vdisk.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vdisk.js","sourceRoot":"","sources":["../../../src/types/api/vdisk.ts"],"names":[],"mappings":"AAiIA,MAAM,CAAN,IAAY,WAOX;AAPD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,wDAAyC,CAAA;IACzC,oDAAqC,CAAA;IACrC,8DAA+C,CAAA;IAC/C,wBAAS,CAAA;IACT,wCAAyB,CAAA;AAC7B,CAAC,EAPW,WAAW,KAAX,WAAW,QAOtB"}
|
|
@@ -63,6 +63,8 @@ export interface UIFactory<H extends string = CommonIssueCategory, T extends str
|
|
|
63
63
|
databasesEnvironmentsConfig?: DatabasesEnvironmentsConfig;
|
|
64
64
|
getReportProblemUrl?: GetReportProblemUrl;
|
|
65
65
|
isDetailedStorageViewAvailable?: IsDetailedStorageViewAvailable;
|
|
66
|
+
/** Maximum number of disks in a storage group. */
|
|
67
|
+
maxVDisksInStorageGroup?: number;
|
|
66
68
|
illustrations?: Partial<Record<IllustrationName, IllustrationComponent>>;
|
|
67
69
|
hideNewFeaturesNotifications?: {
|
|
68
70
|
navigationV2?: boolean;
|
|
@@ -88,6 +90,8 @@ export interface DocsConfig {
|
|
|
88
90
|
basePath: string;
|
|
89
91
|
/** Path to the article about the auto partitioning max partitions count setting. */
|
|
90
92
|
autoPartitioningMaxPartitionsCount?: string;
|
|
93
|
+
/** Path to the distributed storage channel glossary entry. */
|
|
94
|
+
distributedStorageChannel?: string;
|
|
91
95
|
}
|
|
92
96
|
export type HandleCreateDB = (params: {
|
|
93
97
|
clusterName: string;
|
|
@@ -143,6 +147,7 @@ export type RenderNodeTooltipActions = (props: {
|
|
|
143
147
|
}) => React.ReactNode;
|
|
144
148
|
export interface UiMetricaGoals {
|
|
145
149
|
runQuery?: string;
|
|
150
|
+
explainAnalyzeQuery?: string;
|
|
146
151
|
stopQuery?: string;
|
|
147
152
|
openManagePartitioning?: string;
|
|
148
153
|
applyManagePartitioning?: string;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import type { UIFactory } from './types';
|
|
2
|
+
type ResolvedUIFactory = Omit<UIFactory, 'maxVDisksInStorageGroup'> & {
|
|
3
|
+
maxVDisksInStorageGroup: number;
|
|
4
|
+
};
|
|
2
5
|
type UIFactoryOverrides<H extends string, T extends string> = Omit<Partial<UIFactory<H, T>>, 'healthcheck'> & {
|
|
3
6
|
healthcheck?: Partial<UIFactory<H, T>['healthcheck']>;
|
|
4
7
|
};
|
|
5
8
|
export declare function configureUIFactory<H extends string, T extends string = string>(overrides: UIFactoryOverrides<H, T>): void;
|
|
6
|
-
export declare const uiFactory:
|
|
9
|
+
export declare const uiFactory: ResolvedUIFactory;
|
|
7
10
|
export {};
|
|
@@ -17,9 +17,10 @@ const uiFactoryBase = {
|
|
|
17
17
|
enableMultiTabQueryEditor: false,
|
|
18
18
|
hasDeveloperUi: true,
|
|
19
19
|
isDetailedStorageViewAvailable: () => true,
|
|
20
|
+
maxVDisksInStorageGroup: 9,
|
|
20
21
|
};
|
|
21
22
|
export function configureUIFactory(overrides) {
|
|
22
|
-
const { healthcheck, hasAccess, ...restOverrides } = overrides;
|
|
23
|
+
const { healthcheck, hasAccess, maxVDisksInStorageGroup, ...restOverrides } = overrides;
|
|
23
24
|
Object.assign(uiFactoryBase, restOverrides);
|
|
24
25
|
// Only override hasAccess when an actual function is provided.
|
|
25
26
|
// Forwarding an optional config field could pass `undefined` here,
|
|
@@ -27,6 +28,12 @@ export function configureUIFactory(overrides) {
|
|
|
27
28
|
if (typeof hasAccess === 'function') {
|
|
28
29
|
uiFactoryBase.hasAccess = hasAccess;
|
|
29
30
|
}
|
|
31
|
+
if (maxVDisksInStorageGroup !== undefined) {
|
|
32
|
+
if (!Number.isInteger(maxVDisksInStorageGroup) || maxVDisksInStorageGroup <= 0) {
|
|
33
|
+
throw new Error('UIFactory misconfiguration: `maxVDisksInStorageGroup` must be a positive integer.');
|
|
34
|
+
}
|
|
35
|
+
uiFactoryBase.maxVDisksInStorageGroup = maxVDisksInStorageGroup;
|
|
36
|
+
}
|
|
30
37
|
if (healthcheck) {
|
|
31
38
|
const merged = { ...uiFactoryBase.healthcheck, ...healthcheck };
|
|
32
39
|
if (merged.issueCategories.some((c) => c.toLowerCase() === 'unknown')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uiFactory.js","sourceRoot":"","sources":["../../src/uiFactory/uiFactory.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EACH,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,GAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACH,wBAAwB,IAAI,+BAA+B,EAC3D,iBAAiB,IAAI,wBAAwB,GAChD,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"uiFactory.js","sourceRoot":"","sources":["../../src/uiFactory/uiFactory.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EACH,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,GAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACH,wBAAwB,IAAI,+BAA+B,EAC3D,iBAAiB,IAAI,wBAAwB,GAChD,MAAM,qBAAqB,CAAC;AAQ7B,MAAM,aAAa,GAAsB;IACrC,iBAAiB,EAAE,wBAAwB;IAC3C,wBAAwB,EAAE,+BAA+B;IACzD,WAAW,EAAE;QACT,eAAe;QACf,qBAAqB;QACrB,wBAAwB;QACxB,wBAAwB;KAC3B;IACD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,aAAa,EAAE,KAAK;IACpB,eAAe,EAAE,SAAS;IAC1B,IAAI,EAAE,SAAS;IACf,yBAAyB,EAAE,KAAK;IAChC,cAAc,EAAE,IAAI;IACpB,8BAA8B,EAAE,GAAG,EAAE,CAAC,IAAI;IAC1C,uBAAuB,EAAE,CAAC;CAC7B,CAAC;AASF,MAAM,UAAU,kBAAkB,CAC9B,SAAmC;IAEnC,MAAM,EAAC,WAAW,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,aAAa,EAAC,GAAG,SAAS,CAAC;IAEtF,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE5C,+DAA+D;IAC/D,mEAAmE;IACnE,+EAA+E;IAC/E,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;QAClC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;IACxC,CAAC;IACD,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,uBAAuB,IAAI,CAAC,EAAE,CAAC;YAC7E,MAAM,IAAI,KAAK,CACX,mFAAmF,CACtF,CAAC;QACN,CAAC;QACD,aAAa,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;IACpE,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,EAAC,GAAG,aAAa,CAAC,WAAW,EAAE,GAAG,WAAW,EAAC,CAAC;QAE9D,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CACX,wIAAwI,CAC3I,CAAC;QACN,CAAC;QAED,IACI,CAAC,OAAO,CACJ,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,EACjC,MAAM,CAAC,wBAAwB,EAAE,CAAC,QAAQ,EAAE,CAC/C,EACH,CAAC;YACC,MAAM,IAAI,KAAK,CACX,2GAA2G,CAC9G,CAAC;QACN,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE;IAC9C,GAAG,EAAE,GAAG,EAAE;QACN,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1F,CAAC;CACJ,CAAC,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { LabelProps } from '@gravity-ui/uikit';
|
|
2
2
|
import type { ECapacityAlert } from '../types/api/enums';
|
|
3
3
|
import type { DataSeverity } from './disks/types';
|
|
4
|
+
export declare function normalizeCapacityAlert(value: unknown): string | undefined;
|
|
4
5
|
export declare function getCapacityAlertSeverity(capacityAlert?: ECapacityAlert): DataSeverity;
|
|
5
6
|
export declare function getCapacityAlertTheme(capacityAlert?: ECapacityAlert): LabelProps['theme'];
|
|
@@ -7,6 +7,9 @@ const SEVERITY_TO_THEME = {
|
|
|
7
7
|
4: 'danger', // DATA_SEVERITY.ORANGE
|
|
8
8
|
5: 'danger', // DATA_SEVERITY.RED
|
|
9
9
|
};
|
|
10
|
+
export function normalizeCapacityAlert(value) {
|
|
11
|
+
return typeof value === 'string' && value.trim() ? value : undefined;
|
|
12
|
+
}
|
|
10
13
|
export function getCapacityAlertSeverity(capacityAlert) {
|
|
11
14
|
switch (capacityAlert) {
|
|
12
15
|
case 'GREEN':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacityAlerts.js","sourceRoot":"","sources":["../../src/utils/capacityAlerts.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAGhD,MAAM,iBAAiB,GAA8C;IACjE,CAAC,EAAE,QAAQ,EAAE,qBAAqB;IAClC,CAAC,EAAE,SAAS,EAAE,sBAAsB;IACpC,CAAC,EAAE,MAAM,EAAE,qBAAqB;IAChC,CAAC,EAAE,SAAS,EAAE,uBAAuB;IACrC,CAAC,EAAE,QAAQ,EAAE,uBAAuB;IACpC,CAAC,EAAE,QAAQ,EAAE,oBAAoB;CACpC,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,aAA8B;IACnE,QAAQ,aAAa,EAAE,CAAC;QACpB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACP,OAAO,aAAa,CAAC,KAAK,CAAC;QAC/B,KAAK,cAAc;YACf,OAAO,aAAa,CAAC,MAAM,CAAC;QAChC,KAAK,QAAQ,CAAC;QACd,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,OAAO;YACR,OAAO,aAAa,CAAC,GAAG,CAAC;QAC7B;YACI,OAAO,aAAa,CAAC,IAAI,CAAC;IAClC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,aAA8B;IAChE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACzD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"capacityAlerts.js","sourceRoot":"","sources":["../../src/utils/capacityAlerts.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAGhD,MAAM,iBAAiB,GAA8C;IACjE,CAAC,EAAE,QAAQ,EAAE,qBAAqB;IAClC,CAAC,EAAE,SAAS,EAAE,sBAAsB;IACpC,CAAC,EAAE,MAAM,EAAE,qBAAqB;IAChC,CAAC,EAAE,SAAS,EAAE,uBAAuB;IACrC,CAAC,EAAE,QAAQ,EAAE,uBAAuB;IACpC,CAAC,EAAE,QAAQ,EAAE,oBAAoB;CACpC,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACjD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,aAA8B;IACnE,QAAQ,aAAa,EAAE,CAAC;QACpB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACP,OAAO,aAAa,CAAC,KAAK,CAAC;QAC/B,KAAK,cAAc;YACf,OAAO,aAAa,CAAC,MAAM,CAAC;QAChC,KAAK,QAAQ,CAAC;QACd,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,OAAO;YACR,OAAO,aAAa,CAAC,GAAG,CAAC;QAC7B;YACI,OAAO,aAAa,CAAC,IAAI,CAAC;IAClC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,aAA8B;IAChE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACzD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Settings } from '@gravity-ui/react-data-table';
|
|
2
|
+
export { EMPTY_DATA_PLACEHOLDER } from './emptyDataPlaceholder';
|
|
2
3
|
export declare const KILOBYTE = 1000;
|
|
3
4
|
export declare const MEGABYTE = 1000000;
|
|
4
5
|
export declare const GIGABYTE = 1000000000;
|
|
@@ -27,7 +28,6 @@ export declare const SECTION_IDS: {
|
|
|
27
28
|
readonly ABOUT: "aboutSettingsSection";
|
|
28
29
|
};
|
|
29
30
|
export declare const TENANT_OVERVIEW_TABLES_LIMIT = 3;
|
|
30
|
-
export declare const EMPTY_DATA_PLACEHOLDER = "\u2014";
|
|
31
31
|
export declare const UNBREAKABLE_GAP = "\u00A0";
|
|
32
32
|
export declare const QUERY_TECHNICAL_MARK = "/*UI-QUERY-EXCLUDE*/";
|
|
33
33
|
export declare const DEVELOPER_UI_TITLE = "Developer UI";
|
package/dist/utils/constants.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import DataTable from '@gravity-ui/react-data-table';
|
|
2
2
|
import { EType } from '../types/api/tablet';
|
|
3
|
+
export { EMPTY_DATA_PLACEHOLDER } from './emptyDataPlaceholder';
|
|
3
4
|
// by agreement, display all byte values in decimal scale
|
|
4
5
|
// values in data are always in bytes, never in higher units,
|
|
5
6
|
// therefore there is no issue arbitrary converting them in UI
|
|
@@ -55,7 +56,6 @@ export const SECTION_IDS = {
|
|
|
55
56
|
ABOUT: 'aboutSettingsSection',
|
|
56
57
|
};
|
|
57
58
|
export const TENANT_OVERVIEW_TABLES_LIMIT = 3;
|
|
58
|
-
export const EMPTY_DATA_PLACEHOLDER = '—';
|
|
59
59
|
export const UNBREAKABLE_GAP = '\u00A0';
|
|
60
60
|
export const QUERY_TECHNICAL_MARK = '/*UI-QUERY-EXCLUDE*/';
|
|
61
61
|
// ==== Titles ====
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,8BAA8B,CAAC;AAGrD,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAE1C,yDAAyD;AACzD,6DAA6D;AAC7D,8DAA8D;AAC9D,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAK,CAAC;AAC9B,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAS,CAAC;AAClC,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAa,CAAC;AACtC,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAiB,CAAC;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG,gBAAqB,CAAC;AAE9C,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,GAAG,iBAAiB,CAAC;AACtD,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,GAAG,eAAe,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAEzC,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,MAAM,cAAc,GAAG;IACnB,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG;IACvB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG;IACpB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI;IAC1B,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI;IACnB,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI;IAC3B,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,IAAI;IACnC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI;IACjB,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,IAAI;IACjC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,IAAI;IAC9B,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI;IACrB,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,IAAI;IAC9B,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,KAAK;CACxC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,IAAY,EAAuC,EAAE,CAAC,IAAI,IAAI,cAAc,CAAC;AAEnG,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAa,EAAE,EAAE;;IAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,MAAM,YAAY,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,0CAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;AACpE,CAAC,CAAC;AAEF,sBAAsB;AACtB,MAAM,CAAC,MAAM,QAAQ,GAAG;IACpB,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,YAAY;IACpB,WAAW,EAAE,iBAAiB;IAC9B,KAAK,EAAE,WAAW;CACZ,CAAC;AAEX,yBAAyB;AACzB,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,WAAW,EAAE,oBAAoB;IACjC,OAAO,EAAE,gBAAgB;IACzB,UAAU,EAAE,mBAAmB;IAC/B,YAAY,EAAE,oBAAoB;IAClC,KAAK,EAAE,sBAAsB;CACvB,CAAC;AAEX,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAE9C,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,13 @@ import type { DisplaySeverity, PreparedVDisk } from './types';
|
|
|
4
4
|
export interface DiskDisplayState {
|
|
5
5
|
severity: DisplaySeverity;
|
|
6
6
|
icon: IconData | IconWithColor[] | string | undefined;
|
|
7
|
+
capacityAlertIndicator?: IconData | string;
|
|
8
|
+
frontQueuesIndicator?: IconData;
|
|
9
|
+
compactionIndicator?: IconWithColor[];
|
|
10
|
+
allModeHasIssues?: boolean;
|
|
7
11
|
modeModifier: string | undefined;
|
|
8
12
|
isLegendInactive?: boolean;
|
|
13
|
+
showNoDataPlaceholder?: boolean;
|
|
9
14
|
}
|
|
10
15
|
export type DiskDisplayStateGetter = (vDisk: PreparedVDisk, isDonor?: boolean) => DiskDisplayState;
|
|
11
16
|
export declare function getDefaultDiskDisplayState(vDisk: PreparedVDisk): DiskDisplayState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"displayState.js","sourceRoot":"","sources":["../../../src/utils/disks/displayState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"displayState.js","sourceRoot":"","sources":["../../../src/utils/disks/displayState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAkB1C,MAAM,UAAU,0BAA0B,CAAC,KAAoB;;IAC3D,OAAO;QACH,QAAQ,EAAE,CAAC,MAAA,KAAK,CAAC,QAAQ,mCAAI,aAAa,CAAC,IAAI,CAAoB;QACnE,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,SAAS;QACvB,gBAAgB,EAAE,KAAK;KAC1B,CAAC;AACN,CAAC"}
|
|
@@ -44,8 +44,6 @@ export declare function calculateFrontQueuesIcon(vDisk: PreparedVDisk, isDonor?:
|
|
|
44
44
|
*/
|
|
45
45
|
export declare function calculateCompactionIcon(vDisk: PreparedVDisk, isDonor?: boolean): IconData | IconWithColor[] | undefined;
|
|
46
46
|
/**
|
|
47
|
-
* All mode
|
|
48
|
-
* For now, uses default icon logic
|
|
49
|
-
* TODO: Implement advanced "All" mode icon logic
|
|
47
|
+
* Calculate the All mode icon using VDiskState semantics.
|
|
50
48
|
*/
|
|
51
49
|
export declare function calculateAllIcon(vDisk: PreparedVDisk, isDonor?: boolean): IconData | undefined;
|