ydb-embedded-ui 8.11.0 → 8.12.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/dist/components/DateRange/__test__/fromDateRangeValues.test.js +4 -4
- package/dist/components/DateRange/__test__/fromDateRangeValues.test.js.map +1 -1
- package/dist/components/DateRange/__test__/getdatePickerSize.test.js +4 -4
- package/dist/components/DateRange/__test__/getdatePickerSize.test.js.map +1 -1
- package/dist/components/DateRange/__test__/toDateRangeValues.test.js +4 -4
- package/dist/components/DateRange/__test__/toDateRangeValues.test.js.map +1 -1
- package/dist/components/FullNodeViewer/i18n/index.d.ts +1 -1
- package/dist/components/JsonViewer/JsonViewer.js +10 -4
- package/dist/components/JsonViewer/JsonViewer.js.map +1 -1
- package/dist/components/JsonViewer/components/Filter.d.ts +2 -0
- package/dist/components/JsonViewer/components/Filter.js +3 -6
- package/dist/components/JsonViewer/components/Filter.js.map +1 -1
- package/dist/components/NodeHostWrapper/NodeHostWrapper.d.ts +2 -2
- package/dist/components/PDiskInfo/PDiskInfo.js +2 -3
- package/dist/components/PDiskInfo/PDiskInfo.js.map +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.js +2 -2
- package/dist/components/PDiskPopup/PDiskPopup.js.map +1 -1
- package/dist/components/QueryResultTable/QueryResultTable.d.ts +2 -0
- package/dist/components/QueryResultTable/QueryResultTable.js +16 -11
- package/dist/components/QueryResultTable/QueryResultTable.js.map +1 -1
- package/dist/components/QueryResultTable/QueryResultTable.scss +6 -0
- package/dist/components/TabletNameWrapper/TabletNameWrapper.js +2 -3
- package/dist/components/TabletNameWrapper/TabletNameWrapper.js.map +1 -1
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js +2 -3
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js.map +1 -1
- package/dist/components/TooltipsContent/NodeEndpointsTooltipContent/NodeEndpointsTooltipContent.js +2 -3
- package/dist/components/TooltipsContent/NodeEndpointsTooltipContent/NodeEndpointsTooltipContent.js.map +1 -1
- package/dist/components/VDiskInfo/VDiskInfo.js +2 -3
- package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
- package/dist/components/VDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/VDiskPopup/VDiskPopup.js +2 -2
- package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
- package/dist/components/nodesColumns/__test__/utils.test.js +4 -4
- package/dist/components/nodesColumns/__test__/utils.test.js.map +1 -1
- package/dist/components/nodesColumns/constants.d.ts +1 -0
- package/dist/components/nodesColumns/constants.js +5 -0
- package/dist/components/nodesColumns/constants.js.map +1 -1
- package/dist/containers/App/App.d.ts +1 -1
- package/dist/containers/App/Content.js +13 -3
- package/dist/containers/App/Content.js.map +1 -1
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js +7 -2
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js.map +1 -1
- package/dist/containers/AppWithClusters/ExtendedTenant/ExtendedTenant.js +3 -3
- package/dist/containers/AppWithClusters/ExtendedTenant/ExtendedTenant.js.map +1 -1
- package/dist/containers/AppWithClusters/useClusterData.d.ts +1 -13
- package/dist/containers/AppWithClusters/useClusterData.js +4 -18
- package/dist/containers/AppWithClusters/useClusterData.js.map +1 -1
- package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +15 -2
- package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js.map +1 -1
- package/dist/containers/Authentication/Authentication.js +16 -4
- package/dist/containers/Authentication/Authentication.js.map +1 -1
- package/dist/containers/Authentication/utils.d.ts +1 -0
- package/dist/containers/Authentication/utils.js +3 -0
- package/dist/containers/Authentication/utils.js.map +1 -1
- package/dist/containers/Cluster/Cluster.js +1 -1
- package/dist/containers/Cluster/Cluster.js.map +1 -1
- package/dist/containers/Cluster/Cluster.scss +0 -7
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.d.ts +0 -2
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js.map +1 -1
- package/dist/containers/Header/Header.js +2 -2
- package/dist/containers/Header/Header.js.map +1 -1
- package/dist/containers/Node/Node.js +1 -1
- package/dist/containers/Node/Node.js.map +1 -1
- package/dist/containers/Node/NodeStructure/Pdisk.js +2 -3
- package/dist/containers/Node/NodeStructure/Pdisk.js.map +1 -1
- package/dist/containers/Nodes/Nodes.js +11 -3
- package/dist/containers/Nodes/Nodes.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js +3 -3
- package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorage.js +4 -1
- package/dist/containers/Storage/PaginatedStorage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes.js +2 -4
- package/dist/containers/Storage/PaginatedStorageNodes.js.map +1 -1
- package/dist/containers/Storage/StorageControls/StorageControls.js +4 -1
- package/dist/containers/Storage/StorageControls/StorageControls.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/constants.d.ts +1 -0
- package/dist/containers/Storage/StorageGroups/columns/constants.js +10 -0
- package/dist/containers/Storage/StorageGroups/columns/constants.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/hooks.js +9 -3
- package/dist/containers/Storage/StorageGroups/columns/hooks.js.map +1 -1
- package/dist/containers/Tablet/Tablet.js +3 -3
- package/dist/containers/Tablet/Tablet.js.map +1 -1
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js +2 -3
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js.map +1 -1
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.js +2 -3
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.js.map +1 -1
- package/dist/containers/Tablets/Tablets.d.ts +1 -2
- package/dist/containers/Tablets/Tablets.js +7 -11
- package/dist/containers/Tablets/Tablets.js.map +1 -1
- package/dist/containers/Tablets/TabletsTable.d.ts +2 -1
- package/dist/containers/Tablets/TabletsTable.js +22 -9
- package/dist/containers/Tablets/TabletsTable.js.map +1 -1
- package/dist/containers/Tablets/i18n/en.json +3 -1
- package/dist/containers/Tablets/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
- package/dist/containers/Tenant/ObjectSummary/__test__/transformPath.test.js +6 -6
- package/dist/containers/Tenant/ObjectSummary/__test__/transformPath.test.js.map +1 -1
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.d.ts +4 -3
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.js +2 -8
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +50 -15
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.test.js +3 -3
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.test.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.test.js +3 -3
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.test.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.d.ts +7 -2
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +10 -7
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js +5 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.d.ts +4 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js +8 -3
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js +17 -2
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js.map +1 -1
- package/dist/containers/UserSettings/i18n/en.json +2 -0
- package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/settings.d.ts +1 -0
- package/dist/containers/UserSettings/settings.js +7 -2
- package/dist/containers/UserSettings/settings.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +3 -3
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/containers/Versions/NodesTable/NodesTable.js +3 -5
- package/dist/containers/Versions/NodesTable/NodesTable.js.map +1 -1
- package/dist/services/api/auth.d.ts +1 -0
- package/dist/services/api/auth.js.map +1 -1
- package/dist/services/api/index.d.ts +2 -0
- package/dist/services/api/index.js +2 -0
- package/dist/services/api/index.js.map +1 -1
- package/dist/services/api/streaming.d.ts +12 -0
- package/dist/services/api/streaming.js +65 -0
- package/dist/services/api/streaming.js.map +1 -0
- package/dist/services/api/viewer.d.ts +2 -14
- package/dist/services/api/viewer.js.map +1 -1
- package/dist/services/settings.d.ts +1 -0
- package/dist/services/settings.js +2 -1
- package/dist/services/settings.js.map +1 -1
- package/dist/store/reducers/authentication/authentication.d.ts +1 -0
- package/dist/store/reducers/authentication/authentication.js.map +1 -1
- package/dist/store/reducers/capabilities/capabilities.d.ts +126 -1
- package/dist/store/reducers/capabilities/capabilities.js +6 -2
- package/dist/store/reducers/capabilities/capabilities.js.map +1 -1
- package/dist/store/reducers/capabilities/hooks.d.ts +3 -0
- package/dist/store/reducers/capabilities/hooks.js +14 -1
- package/dist/store/reducers/capabilities/hooks.js.map +1 -1
- package/dist/store/reducers/cluster/__test__/parseGroupsStatsQueryResponse.test.js +1 -1
- package/dist/store/reducers/cluster/__test__/parseGroupsStatsQueryResponse.test.js.map +1 -1
- package/dist/store/reducers/query/__test__/utils.test.js +4 -4
- package/dist/store/reducers/query/__test__/utils.test.js.map +1 -1
- package/dist/store/reducers/query/preparePlanData.d.ts +5 -0
- package/dist/store/reducers/query/preparePlanData.js +57 -0
- package/dist/store/reducers/query/preparePlanData.js.map +1 -0
- package/dist/store/reducers/query/prepareQueryData.js +8 -54
- package/dist/store/reducers/query/prepareQueryData.js.map +1 -1
- package/dist/store/reducers/query/query.d.ts +3 -1
- package/dist/store/reducers/query/query.js +76 -1
- package/dist/store/reducers/query/query.js.map +1 -1
- package/dist/store/reducers/query/streamingReducers.d.ts +6 -0
- package/dist/store/reducers/query/streamingReducers.js +118 -0
- package/dist/store/reducers/query/streamingReducers.js.map +1 -0
- package/dist/store/reducers/query/utils.d.ts +4 -0
- package/dist/store/reducers/query/utils.js +12 -0
- package/dist/store/reducers/query/utils.js.map +1 -1
- package/dist/{index.css → styles/index.scss} +4 -0
- package/dist/styles/themes.scss +0 -3
- package/dist/styles/unipika.scss +7 -0
- package/dist/types/additionalProps.d.ts +1 -1
- package/dist/types/api/capabilities.d.ts +4 -0
- package/dist/types/api/query.d.ts +17 -1
- package/dist/types/store/query.d.ts +9 -0
- package/dist/types/store/streaming.d.ts +37 -0
- package/dist/types/store/streaming.js +2 -0
- package/dist/types/store/streaming.js.map +1 -0
- package/dist/utils/__test__/getColumnWidth.test.js +15 -15
- package/dist/utils/__test__/getColumnWidth.test.js.map +1 -1
- package/dist/utils/__test__/monitoring.test.js +4 -4
- package/dist/utils/__test__/monitoring.test.js.map +1 -1
- package/dist/utils/__test__/parseBalancer.test.js +9 -9
- package/dist/utils/__test__/parseBalancer.test.js.map +1 -1
- package/dist/utils/__test__/prepareBackend.test.js +3 -3
- package/dist/utils/__test__/prepareBackend.test.js.map +1 -1
- package/dist/utils/bytesParsers/__test__/formatBytes.test.js +6 -6
- package/dist/utils/bytesParsers/__test__/formatBytes.test.js.map +1 -1
- package/dist/utils/constants.d.ts +2 -1
- package/dist/utils/constants.js +1 -0
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/formatNumbers.test.js +9 -9
- package/dist/utils/dataFormatters/__test__/formatNumbers.test.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/formatStorageValues.test.js +7 -7
- package/dist/utils/dataFormatters/__test__/formatStorageValues.test.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/formatUptime.test.js +11 -11
- package/dist/utils/dataFormatters/__test__/formatUptime.test.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/roundToSignificant.test.js +2 -2
- package/dist/utils/dataFormatters/__test__/roundToSignificant.test.js.map +1 -1
- package/dist/utils/developerUI/__test__/developerUI.test.js +12 -12
- package/dist/utils/developerUI/__test__/developerUI.test.js.map +1 -1
- package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js +5 -5
- package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js.map +1 -1
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +8 -8
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js.map +1 -1
- package/dist/utils/disks/__test__/prepareDisks.test.js +7 -7
- package/dist/utils/disks/__test__/prepareDisks.test.js.map +1 -1
- package/dist/utils/hooks/__test__/useTableSort.test.js +3 -3
- package/dist/utils/hooks/__test__/useTableSort.test.js.map +1 -1
- package/dist/utils/hooks/useAdditionalNodesProps.d.ts +2 -0
- package/dist/utils/hooks/useAdditionalNodesProps.js +14 -0
- package/dist/utils/hooks/useAdditionalNodesProps.js.map +1 -0
- package/dist/utils/hooks/useIsUserAllowedToMakeChanges.d.ts +1 -0
- package/dist/utils/hooks/useIsUserAllowedToMakeChanges.js +6 -0
- package/dist/utils/hooks/useIsUserAllowedToMakeChanges.js.map +1 -0
- package/dist/utils/hooks/useNodeDeveloperUIHref.js +4 -7
- package/dist/utils/hooks/useNodeDeveloperUIHref.js.map +1 -1
- package/dist/utils/prepareBackend.d.ts +2 -1
- package/dist/utils/prepareBackend.js +3 -2
- package/dist/utils/prepareBackend.js.map +1 -1
- package/dist/utils/query.d.ts +3 -2
- package/dist/utils/query.js +18 -31
- package/dist/utils/query.js.map +1 -1
- package/dist/utils/query.test.js +19 -19
- package/dist/utils/query.test.js.map +1 -1
- package/dist/utils/response.js +2 -1
- package/dist/utils/response.js.map +1 -1
- package/dist/utils/timeParsers/__test__/formatDuration.test.js +6 -6
- package/dist/utils/timeParsers/__test__/formatDuration.test.js.map +1 -1
- package/dist/utils/timeParsers/__test__/protobuf.test.js +10 -10
- package/dist/utils/timeParsers/__test__/protobuf.test.js.map +1 -1
- package/package.json +5 -4
- package/dist/containers/Tablets/index.d.ts +0 -1
- package/dist/containers/Tablets/index.js +0 -2
- package/dist/containers/Tablets/index.js.map +0 -1
@@ -1,72 +1,72 @@
|
|
1
1
|
import { HEADER_PADDING, MAX_COLUMN_WIDTH, PIXELS_PER_CHARACTER, SORT_ICON_TO_CHARACTERS, getColumnWidth, } from '../getColumnWidth';
|
2
2
|
describe('getColumnWidth', () => {
|
3
|
-
|
3
|
+
test('returns minimum width for empty data', () => {
|
4
4
|
const result = getColumnWidth({ data: [], name: 'test' });
|
5
5
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
6
6
|
});
|
7
|
-
|
7
|
+
test('calculates correct width for string columns', () => {
|
8
8
|
const data = [{ test: 'short' }, { test: 'medium length' }, { test: 'this is a longer string' }];
|
9
9
|
const result = getColumnWidth({ data, name: 'test' });
|
10
10
|
expect(result).toBe(HEADER_PADDING + 'this is a longer string'.length * PIXELS_PER_CHARACTER);
|
11
11
|
});
|
12
|
-
|
12
|
+
test('calculates correct width for columns with sorting', () => {
|
13
13
|
const result = getColumnWidth({ data: [], name: 'test', sortable: true });
|
14
14
|
expect(result).toBe(HEADER_PADDING + ('test'.length + SORT_ICON_TO_CHARACTERS) * PIXELS_PER_CHARACTER);
|
15
15
|
});
|
16
|
-
|
16
|
+
test('calculates correct width for columns with sorting and column name wider than header', () => {
|
17
17
|
const data = [{ test: 'this is a longer string' }];
|
18
18
|
const result = getColumnWidth({ data, name: 'test', sortable: true });
|
19
19
|
expect(result).toBe(HEADER_PADDING + 'this is a longer string'.length * PIXELS_PER_CHARACTER);
|
20
20
|
});
|
21
|
-
|
21
|
+
test('calculates correct width for columns with header', () => {
|
22
22
|
const result = getColumnWidth({ data: [], name: 'test', header: 'a' });
|
23
23
|
expect(result).toBe(HEADER_PADDING + 'a'.length * PIXELS_PER_CHARACTER);
|
24
24
|
});
|
25
|
-
|
25
|
+
test('returns MAX_COLUMN_WIDTH when calculated width exceeds it', () => {
|
26
26
|
const data = [{ test: 'a'.repeat(100) }];
|
27
27
|
const result = getColumnWidth({ data, name: 'test' });
|
28
28
|
expect(result).toBe(MAX_COLUMN_WIDTH);
|
29
29
|
});
|
30
|
-
|
30
|
+
test('handles undefined data correctly', () => {
|
31
31
|
const result = getColumnWidth({ name: 'test' });
|
32
32
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
33
33
|
});
|
34
|
-
|
34
|
+
test('handles missing values in data correctly', () => {
|
35
35
|
const data = [{ test: 'short' }, {}, { test: 'longer string' }];
|
36
36
|
const result = getColumnWidth({ data, name: 'test' });
|
37
37
|
expect(result).toBe(HEADER_PADDING + 'longer string'.length * PIXELS_PER_CHARACTER);
|
38
38
|
});
|
39
|
-
|
39
|
+
test('uses column name length when all values are shorter', () => {
|
40
40
|
const data = [{ longColumnName: 'a' }, { longColumnName: 'bb' }];
|
41
41
|
const result = getColumnWidth({ data, name: 'longColumnName' });
|
42
42
|
expect(result).toBe(HEADER_PADDING + 'longColumnName'.length * PIXELS_PER_CHARACTER);
|
43
43
|
});
|
44
|
-
|
44
|
+
test('handles null values in data correctly', () => {
|
45
45
|
const data = [{ test: 'a' }, { test: null }];
|
46
46
|
const result = getColumnWidth({ data, name: 'test' });
|
47
47
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
48
48
|
});
|
49
|
-
|
49
|
+
test('handles undefined values in data correctly', () => {
|
50
50
|
const data = [{ test: 'a' }, { test: undefined }];
|
51
51
|
const result = getColumnWidth({ data, name: 'test' });
|
52
52
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
53
53
|
});
|
54
|
-
|
54
|
+
test('handles empty string values in data correctly', () => {
|
55
55
|
const data = [{ test: 'short' }, { test: '' }, { test: 'longer string' }];
|
56
56
|
const result = getColumnWidth({ data, name: 'test' });
|
57
57
|
expect(result).toBe(HEADER_PADDING + 'longer string'.length * PIXELS_PER_CHARACTER);
|
58
58
|
});
|
59
|
-
|
59
|
+
test('handles an array of numbers correctly', () => {
|
60
60
|
const data = [{ test: 1 }, { test: 123 }, { test: 12345 }];
|
61
61
|
const result = getColumnWidth({ data, name: 'test' });
|
62
62
|
expect(result).toBe(HEADER_PADDING + '12345'.length * PIXELS_PER_CHARACTER);
|
63
63
|
});
|
64
|
-
|
64
|
+
test('handles an array of mixed data types correctly', () => {
|
65
65
|
const data = [{ test: 'short' }, { test: 123 }, { test: null }, { test: 'longer string' }];
|
66
66
|
const result = getColumnWidth({ data, name: 'test' });
|
67
67
|
expect(result).toBe(HEADER_PADDING + 'longer string'.length * PIXELS_PER_CHARACTER);
|
68
68
|
});
|
69
|
-
|
69
|
+
test('handles empty name correctly', () => {
|
70
70
|
const data = [{ test: 'test' }];
|
71
71
|
const result = getColumnWidth({ data, name: '' });
|
72
72
|
expect(result).toBe(HEADER_PADDING);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getColumnWidth.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/getColumnWidth.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,GACjB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC5B,
|
1
|
+
{"version":3,"file":"getColumnWidth.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/getColumnWidth.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { getMonitoringClusterLink, getMonitoringLink } from '../monitoring';
|
2
2
|
describe('getMonitoringLink', () => {
|
3
|
-
|
3
|
+
test('should create database monitoring link from JSON', () => {
|
4
4
|
const solomonRaw = {
|
5
5
|
monitoring_url: 'https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards',
|
6
6
|
serverless_dashboard: '',
|
@@ -14,7 +14,7 @@ describe('getMonitoringLink', () => {
|
|
14
14
|
dbType: 'Dedicated',
|
15
15
|
})).toBe('https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards/aol34hftdn7o4fls50sv?p.cluster=global&p.host=cluster&p.slot=static&p.database=database');
|
16
16
|
});
|
17
|
-
|
17
|
+
test('should create cluster monitoring link from JSON', () => {
|
18
18
|
const solomonRaw = {
|
19
19
|
monitoring_url: 'https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards',
|
20
20
|
cluster_dashboard: 'aol34hftdn7o4fls50sv',
|
@@ -22,7 +22,7 @@ describe('getMonitoringLink', () => {
|
|
22
22
|
const solomonString = JSON.stringify(solomonRaw);
|
23
23
|
expect(getMonitoringClusterLink(solomonString, 'clusterName')).toBe('https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards/aol34hftdn7o4fls50sv/view?p.cluster=clusterName&p.database=-');
|
24
24
|
});
|
25
|
-
|
25
|
+
test('should not parse ready to use database monitoring link', () => {
|
26
26
|
const solomonRaw = {
|
27
27
|
monitoring_url: 'https://monitoring.test.ai/projects/ydbaas/dashboards/aol34hftdn7o4fls50sv?p.cluster=cluster_name&a=',
|
28
28
|
};
|
@@ -33,7 +33,7 @@ describe('getMonitoringLink', () => {
|
|
33
33
|
dbType: 'Dedicated',
|
34
34
|
})).toBe('https://monitoring.test.ai/projects/ydbaas/dashboards/aol34hftdn7o4fls50sv?p.cluster=cluster_name&a=&p.host=cluster&p.slot=static&p.database=database');
|
35
35
|
});
|
36
|
-
|
36
|
+
test('should not parse ready to use cluster monitoring link', () => {
|
37
37
|
const solomonRaw = {
|
38
38
|
monitoring_url: 'https://monitoring.test.ai/projects/ydbaas/dashboards/aol34hftdn7o4fls50sv/view?p.cluster=cluster_name&a=',
|
39
39
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"monitoring.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/monitoring.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE1E,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC/B,
|
1
|
+
{"version":3,"file":"monitoring.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/monitoring.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE1E,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC/B,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,UAAU,GAAG;YACf,cAAc,EAAE,oEAAoE;YACpF,oBAAoB,EAAE,EAAE;YACxB,mBAAmB,EAAE,sBAAsB;SAC9C,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CACF,iBAAiB,CAAC;YACd,UAAU,EAAE,aAAa;YACzB,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,WAAW;SACtB,CAAC,CACL,CAAC,IAAI,CACF,2JAA2J,CAC9J,CAAC;IACN,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,UAAU,GAAG;YACf,cAAc,EAAE,oEAAoE;YACpF,iBAAiB,EAAE,sBAAsB;SAC5C,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CAAC,wBAAwB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAC/D,iIAAiI,CACpI,CAAC;IACN,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,UAAU,GAAG;YACf,cAAc,EACV,sGAAsG;SAC7G,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CACF,iBAAiB,CAAC;YACd,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,WAAW;SACtB,CAAC,CACL,CAAC,IAAI,CACF,uJAAuJ,CAC1J,CAAC;IACN,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,UAAU,GAAG;YACf,cAAc,EACV,2GAA2G;SAClH,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAChD,wHAAwH,CAC3H,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { getCleanBalancerValue, parseBalancer, removePort, removeProtocol, removeViewerPathname, } from '../parseBalancer';
|
2
2
|
describe('parseBalancer', () => {
|
3
|
-
|
3
|
+
test('should parse balancer with viewer proxy', () => {
|
4
4
|
const rawValue = 'https://viewer.ydb.ru:443/ydb-testing-0000.search.ydb.net:8765/viewer/json';
|
5
5
|
const balancer = 'ydb-testing-0000.search.ydb.net:8765';
|
6
6
|
const proxy = 'viewer.ydb.ru:443';
|
@@ -8,7 +8,7 @@ describe('parseBalancer', () => {
|
|
8
8
|
expect(parsedBalancerWithViewer.balancer).toBe(balancer);
|
9
9
|
expect(parsedBalancerWithViewer.proxy).toBe(proxy);
|
10
10
|
});
|
11
|
-
|
11
|
+
test('should parse balancer with bastion proxy', () => {
|
12
12
|
const rawValue = 'https://ydb.bastion.cloud.ru:443/ydbproxy.ydb.cloud.net:8765/viewer/json';
|
13
13
|
const balancer = 'ydbproxy.ydb.cloud.net:8765';
|
14
14
|
const proxy = 'ydb.bastion.cloud.ru:443';
|
@@ -16,7 +16,7 @@ describe('parseBalancer', () => {
|
|
16
16
|
expect(parsedBalancerWithBastion.balancer).toBe(balancer);
|
17
17
|
expect(parsedBalancerWithBastion.proxy).toBe(proxy);
|
18
18
|
});
|
19
|
-
|
19
|
+
test('should parse balancer with custom proxy', () => {
|
20
20
|
const rawValue = 'https://proxy.ydb.mdb.cloud-preprod.net:443/ydbproxy-public.ydb.cloud-preprod.net:8765/viewer/json';
|
21
21
|
const balancer = 'ydbproxy-public.ydb.cloud-preprod.net:8765';
|
22
22
|
const proxy = 'proxy.ydb.mdb.cloud-preprod.net:443';
|
@@ -24,14 +24,14 @@ describe('parseBalancer', () => {
|
|
24
24
|
expect(parsedBalancerWithCustomProxy.balancer).toBe(balancer);
|
25
25
|
expect(parsedBalancerWithCustomProxy.proxy).toBe(proxy);
|
26
26
|
});
|
27
|
-
|
27
|
+
test('should parse balancer without proxy', () => {
|
28
28
|
const rawValue = 'https://ydb-testing-0000.search.net:8765/viewer/json';
|
29
29
|
const balancer = 'ydb-testing-0000.search.net:8765';
|
30
30
|
const parsedBalancerWithoutProxy = parseBalancer(rawValue);
|
31
31
|
expect(parsedBalancerWithoutProxy.balancer).toBe(balancer);
|
32
32
|
expect(parsedBalancerWithoutProxy.proxy).toBe(undefined);
|
33
33
|
});
|
34
|
-
|
34
|
+
test('should parse pure balancer', () => {
|
35
35
|
const pureBalancer = 'ydb-testing-0000.search.net:8765';
|
36
36
|
const parsedPureBalancer = parseBalancer(pureBalancer);
|
37
37
|
expect(parsedPureBalancer.balancer).toBe(pureBalancer);
|
@@ -39,28 +39,28 @@ describe('parseBalancer', () => {
|
|
39
39
|
});
|
40
40
|
});
|
41
41
|
describe('removeViewerPathname', () => {
|
42
|
-
|
42
|
+
test('should remove pathname', () => {
|
43
43
|
const initialValue = 'https://ydb-testing-0000.search.net:8765/viewer/json';
|
44
44
|
const result = 'https://ydb-testing-0000.search.net:8765';
|
45
45
|
expect(removeViewerPathname(initialValue)).toBe(result);
|
46
46
|
});
|
47
47
|
});
|
48
48
|
describe('removeProtocol', () => {
|
49
|
-
|
49
|
+
test('should remove protocol', () => {
|
50
50
|
const initialValue = 'https://ydb-testing-0000.search.net:8765/viewer/json';
|
51
51
|
const result = 'ydb-testing-0000.search.net:8765/viewer/json';
|
52
52
|
expect(removeProtocol(initialValue)).toBe(result);
|
53
53
|
});
|
54
54
|
});
|
55
55
|
describe('removePort', () => {
|
56
|
-
|
56
|
+
test('should remove port', () => {
|
57
57
|
const initialValue = 'ydb-testing-0000.search.net:8765';
|
58
58
|
const result = 'ydb-testing-0000.search.net';
|
59
59
|
expect(removePort(initialValue)).toBe(result);
|
60
60
|
});
|
61
61
|
});
|
62
62
|
describe('getCleanBalancerValue', () => {
|
63
|
-
|
63
|
+
test('should return balancer value without protocol, proxy, port and pathname', () => {
|
64
64
|
const initialValue = 'https://ydb.bastion.cloud.ru:443/ydbproxy.ydb.cloud.net:8765/viewer/json';
|
65
65
|
const result = 'ydbproxy.ydb.cloud.net';
|
66
66
|
expect(getCleanBalancerValue(initialValue)).toBe(result);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parseBalancer.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/parseBalancer.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EACrB,aAAa,EACb,UAAU,EACV,cAAc,EACd,oBAAoB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC3B,
|
1
|
+
{"version":3,"file":"parseBalancer.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/parseBalancer.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { getBackendFromNodeHost, getBackendFromRawNodeData, prepareHost } from '../prepareBackend';
|
2
2
|
describe('prepareHost', () => {
|
3
|
-
|
3
|
+
test('should add vm prefix to cloud din nodes', () => {
|
4
4
|
const cloudDinNodeInitialHost = 'vm-cc8mco0j0snqehgh7r2a-ru-central1-c-nlmw-aniq.cc8mco0j0snqehgh7r2a.ydb.mdb.cloud-preprod.net';
|
5
5
|
const cloudDinNodeResultHost = 'u-vm-cc8mco0j0snqehgh7r2a-ru-central1-c-nlmw-aniq.cc8mco0j0snqehgh7r2a.ydb.mdb.cloud-preprod.net';
|
6
6
|
const commonNodeHost = 'sas09-ct5-1.cloud.net';
|
@@ -9,7 +9,7 @@ describe('prepareHost', () => {
|
|
9
9
|
});
|
10
10
|
});
|
11
11
|
describe('getBackendFromNodeHost', () => {
|
12
|
-
|
12
|
+
test('should prepare correct backend value from node host', () => {
|
13
13
|
const balancer = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765';
|
14
14
|
const nodeHost = 'ydb-dev02-001.search.net:31012';
|
15
15
|
const result = 'https://viewer.ydb.ru:443/ydb-dev02-001.search.net:31012';
|
@@ -17,7 +17,7 @@ describe('getBackendFromNodeHost', () => {
|
|
17
17
|
});
|
18
18
|
});
|
19
19
|
describe('getBackendFromRawNodeData', () => {
|
20
|
-
|
20
|
+
test('should prepare correct backend value from raw node data', () => {
|
21
21
|
const balancer = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765';
|
22
22
|
const node = {
|
23
23
|
Host: 'ydb-dev02-000.search.net',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prepareBackend.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/prepareBackend.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEjG,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,
|
1
|
+
{"version":3,"file":"prepareBackend.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/prepareBackend.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEjG,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,uBAAuB,GACzB,gGAAgG,CAAC;QACrG,MAAM,sBAAsB,GACxB,kGAAkG,CAAC;QAEvG,MAAM,cAAc,GAAG,uBAAuB,CAAC;QAE/C,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1E,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACpC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,QAAQ,GAAG,8CAA8C,CAAC;QAChE,MAAM,QAAQ,GAAG,gCAAgC,CAAC;QAClD,MAAM,MAAM,GAAG,0DAA0D,CAAC;QAE1E,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACvC,IAAI,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,QAAQ,GAAG,8CAA8C,CAAC;QAChE,MAAM,IAAI,GAAG;YACT,IAAI,EAAE,0BAA0B;YAChC,SAAS,EAAE;gBACP;oBACI,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE,OAAO;iBACnB;gBACD;oBACI,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,QAAQ;iBACpB;gBACD;oBACI,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,OAAO;iBACnB;aACJ;SACJ,CAAC;QACF,MAAM,MAAM,GAAG,yDAAyD,CAAC;QAEzE,MAAM,CAAC,yBAAyB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -1,33 +1,33 @@
|
|
1
1
|
import { UNBREAKABLE_GAP } from '../../utils';
|
2
2
|
import { formatBytes } from '../formatBytes';
|
3
3
|
describe('formatBytes', () => {
|
4
|
-
|
4
|
+
test('should work with only value', () => {
|
5
5
|
expect(formatBytes({ value: 100 })).toBe(`100${UNBREAKABLE_GAP}B`);
|
6
6
|
expect(formatBytes({ value: 100000 })).toBe(`100${UNBREAKABLE_GAP}KB`);
|
7
7
|
expect(formatBytes({ value: 100000000 })).toBe(`100${UNBREAKABLE_GAP}MB`);
|
8
8
|
expect(formatBytes({ value: 100000000000 })).toBe(`100${UNBREAKABLE_GAP}GB`);
|
9
9
|
expect(formatBytes({ value: 100000000000000 })).toBe(`100${UNBREAKABLE_GAP}TB`);
|
10
10
|
});
|
11
|
-
|
11
|
+
test('should convert to size', () => {
|
12
12
|
expect(formatBytes({ value: 100000, size: 'b' })).toBe(`100${UNBREAKABLE_GAP}000${UNBREAKABLE_GAP}B`);
|
13
13
|
expect(formatBytes({ value: 100000000000000, size: 'gb' })).toBe(`100${UNBREAKABLE_GAP}000${UNBREAKABLE_GAP}GB`);
|
14
14
|
});
|
15
|
-
|
15
|
+
test('should convert without labels', () => {
|
16
16
|
expect(formatBytes({ value: 100000, size: 'b', withSizeLabel: false })).toBe(`100${UNBREAKABLE_GAP}000`);
|
17
17
|
expect(formatBytes({ value: 100000000000000, size: 'gb', withSizeLabel: false })).toBe(`100${UNBREAKABLE_GAP}000`);
|
18
18
|
});
|
19
|
-
|
19
|
+
test('should convert to speed', () => {
|
20
20
|
expect(formatBytes({ value: 100000, withSpeedLabel: true })).toBe(`100${UNBREAKABLE_GAP}KB/s`);
|
21
21
|
expect(formatBytes({ value: 100000, size: 'b', withSpeedLabel: true })).toBe(`100${UNBREAKABLE_GAP}000${UNBREAKABLE_GAP}B/s`);
|
22
22
|
});
|
23
|
-
|
23
|
+
test('should return empty string on invalid data', () => {
|
24
24
|
expect(formatBytes({ value: undefined })).toEqual('');
|
25
25
|
expect(formatBytes({ value: null })).toEqual('');
|
26
26
|
expect(formatBytes({ value: '' })).toEqual('');
|
27
27
|
expect(formatBytes({ value: 'false' })).toEqual('');
|
28
28
|
expect(formatBytes({ value: '123qwe' })).toEqual('');
|
29
29
|
});
|
30
|
-
|
30
|
+
test('should work with precision', () => {
|
31
31
|
expect(formatBytes({ value: 123.123, precision: 2 })).toBe(`123${UNBREAKABLE_GAP}B`);
|
32
32
|
expect(formatBytes({ value: 12.123, precision: 2 })).toBe(`12${UNBREAKABLE_GAP}B`);
|
33
33
|
expect(formatBytes({ value: 1.123, precision: 2 })).toBe(`1.1${UNBREAKABLE_GAP}B`);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"formatBytes.test.js","sourceRoot":"","sources":["../../../../src/utils/bytesParsers/__test__/formatBytes.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,
|
1
|
+
{"version":3,"file":"formatBytes.test.js","sourceRoot":"","sources":["../../../../src/utils/bytesParsers/__test__/formatBytes.test.ts"],"names":[],"mappings":"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"}
|
@@ -37,7 +37,7 @@ export declare const DEFAULT_TABLE_SETTINGS: Settings;
|
|
37
37
|
export declare const TENANT_OVERVIEW_TABLES_SETTINGS: {
|
38
38
|
readonly stickyHead: "fixed";
|
39
39
|
readonly dynamicRender: false;
|
40
|
-
readonly displayIndices?: boolean;
|
40
|
+
readonly displayIndices?: boolean | import("@gravity-ui/react-data-table").DisplayIndicesConfig;
|
41
41
|
readonly stickyTop?: "auto" | number;
|
42
42
|
readonly syncHeadOnResize?: boolean;
|
43
43
|
readonly stickyFooter?: import("@gravity-ui/react-data-table").HeadPosition;
|
@@ -72,6 +72,7 @@ export declare const SHOW_DOMAIN_DATABASE_KEY = "showDomainDatabase";
|
|
72
72
|
export declare const USE_CLUSTER_BALANCER_AS_BACKEND_KEY = "useClusterBalancerAsBacked";
|
73
73
|
export declare const ENABLE_AUTOCOMPLETE = "enableAutocomplete";
|
74
74
|
export declare const ENABLE_CODE_ASSISTANT = "enableCodeAssistant";
|
75
|
+
export declare const ENABLE_QUERY_STREAMING = "enableQueryStreaming";
|
75
76
|
export declare const AUTOCOMPLETE_ON_ENTER = "autocompleteOnEnter";
|
76
77
|
export declare const IS_HOTKEYS_HELP_HIDDEN_KEY = "isHotKeysHelpHidden";
|
77
78
|
export declare const DEV_ENABLE_TRACING_FOR_ALL_REQUESTS = "enable_tracing_for_all_requests";
|
package/dist/utils/constants.js
CHANGED
@@ -87,6 +87,7 @@ export const SHOW_DOMAIN_DATABASE_KEY = 'showDomainDatabase';
|
|
87
87
|
export const USE_CLUSTER_BALANCER_AS_BACKEND_KEY = 'useClusterBalancerAsBacked';
|
88
88
|
export const ENABLE_AUTOCOMPLETE = 'enableAutocomplete';
|
89
89
|
export const ENABLE_CODE_ASSISTANT = 'enableCodeAssistant';
|
90
|
+
export const ENABLE_QUERY_STREAMING = 'enableQueryStreaming';
|
90
91
|
export const AUTOCOMPLETE_ON_ENTER = 'autocompleteOnEnter';
|
91
92
|
export const IS_HOTKEYS_HELP_HIDDEN_KEY = 'isHotKeysHelpHidden';
|
92
93
|
export const DEV_ENABLE_TRACING_FOR_ALL_REQUESTS = 'enable_tracing_for_all_requests';
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
|
@@ -1,39 +1,39 @@
|
|
1
1
|
import { UNBREAKABLE_GAP } from '../../utils';
|
2
2
|
import { formatNumericValues } from '../dataFormatters';
|
3
3
|
describe('formatNumericValues', () => {
|
4
|
-
|
4
|
+
test('should return ["", ""] when both value and total are undefined', () => {
|
5
5
|
const result = formatNumericValues();
|
6
6
|
expect(result).toEqual(['', '']);
|
7
7
|
});
|
8
|
-
|
8
|
+
test('should format value correctly when total is undefined', () => {
|
9
9
|
const result = formatNumericValues(1000);
|
10
10
|
expect(result).toEqual([`1${UNBREAKABLE_GAP}k`, '']);
|
11
11
|
});
|
12
|
-
|
12
|
+
test('should format total correctly when value is undefined', () => {
|
13
13
|
const result = formatNumericValues(undefined, 1000000);
|
14
14
|
expect(result).toEqual(['', `1${UNBREAKABLE_GAP}m`]);
|
15
15
|
});
|
16
|
-
|
16
|
+
test('should format both value and total correctly', () => {
|
17
17
|
const result = formatNumericValues(1024, 2048);
|
18
18
|
expect(result).toEqual(['1', `2${UNBREAKABLE_GAP}k`]);
|
19
19
|
});
|
20
|
-
|
20
|
+
test('should format values without units (less than 1000)', () => {
|
21
21
|
const result1 = formatNumericValues(10, 20);
|
22
22
|
expect(result1).toEqual(['10', `20`]);
|
23
23
|
});
|
24
|
-
|
24
|
+
test('should format value with label if set', () => {
|
25
25
|
const result = formatNumericValues(1024, 2048, undefined, undefined, true);
|
26
26
|
expect(result).toEqual([`1${UNBREAKABLE_GAP}k`, `2${UNBREAKABLE_GAP}k`]);
|
27
27
|
});
|
28
|
-
|
28
|
+
test('should return ["0", formattedTotal] when value is 0', () => {
|
29
29
|
const result = formatNumericValues(0, 2048);
|
30
30
|
expect(result).toEqual(['0', `2${UNBREAKABLE_GAP}k`]);
|
31
31
|
});
|
32
|
-
|
32
|
+
test('should use provided size and delimiter', () => {
|
33
33
|
const result = formatNumericValues(5120, 10240, 'billion', '/');
|
34
34
|
expect(result).toEqual(['0', '0/b']);
|
35
35
|
});
|
36
|
-
|
36
|
+
test('should handle non-numeric total gracefully', () => {
|
37
37
|
const result = formatNumericValues(2048, 'Not a number');
|
38
38
|
expect(result).toEqual([`2${UNBREAKABLE_GAP}k`, '']);
|
39
39
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"formatNumbers.test.js","sourceRoot":"","sources":["../../../../src/utils/dataFormatters/__test__/formatNumbers.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAEtD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,
|
1
|
+
{"version":3,"file":"formatNumbers.test.js","sourceRoot":"","sources":["../../../../src/utils/dataFormatters/__test__/formatNumbers.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAEtD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,IAAI,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,eAAe,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,EAAE,OAAS,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,eAAe,GAAG,EAAE,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,cAAqB,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,eAAe,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -1,31 +1,31 @@
|
|
1
1
|
import { UNBREAKABLE_GAP } from '../../utils';
|
2
2
|
import { formatStorageValues } from '../dataFormatters';
|
3
3
|
describe('formatStorageValues', () => {
|
4
|
-
|
4
|
+
test('should return ["", ""] when both value and total are undefined', () => {
|
5
5
|
const result = formatStorageValues();
|
6
6
|
expect(result).toEqual(['', '']);
|
7
7
|
});
|
8
|
-
|
8
|
+
test('should format value correctly when total is undefined', () => {
|
9
9
|
const result = formatStorageValues(1024);
|
10
10
|
expect(result).toEqual([`1${UNBREAKABLE_GAP}KB`, '']);
|
11
11
|
});
|
12
|
-
|
12
|
+
test('should format total correctly when value is undefined', () => {
|
13
13
|
const result = formatStorageValues(undefined, 2048);
|
14
14
|
expect(result).toEqual(['', `2${UNBREAKABLE_GAP}KB`]);
|
15
15
|
});
|
16
|
-
|
16
|
+
test('should format both value and total correctly', () => {
|
17
17
|
const result = formatStorageValues(1024, 2048);
|
18
18
|
expect(result).toEqual(['1', `2${UNBREAKABLE_GAP}KB`]);
|
19
19
|
});
|
20
|
-
|
20
|
+
test('should return ["0", formattedTotal] when value is 0', () => {
|
21
21
|
const result = formatStorageValues(0, 2048);
|
22
22
|
expect(result).toEqual(['0', `2${UNBREAKABLE_GAP}KB`]);
|
23
23
|
});
|
24
|
-
|
24
|
+
test('should use provided size and delimiter', () => {
|
25
25
|
const result = formatStorageValues(5120, 10240, 'mb', '/');
|
26
26
|
expect(result).toEqual(['0', '0/MB']);
|
27
27
|
});
|
28
|
-
|
28
|
+
test('should handle non-numeric total gracefully', () => {
|
29
29
|
const result = formatStorageValues(2048, 'Not a number');
|
30
30
|
expect(result).toEqual([`2${UNBREAKABLE_GAP}KB`, '']);
|
31
31
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"formatStorageValues.test.js","sourceRoot":"","sources":["../../../../src/utils/dataFormatters/__test__/formatStorageValues.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAEtD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,
|
1
|
+
{"version":3,"file":"formatStorageValues.test.js","sourceRoot":"","sources":["../../../../src/utils/dataFormatters/__test__/formatStorageValues.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAEtD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,IAAI,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,eAAe,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,IAAI,eAAe,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,eAAe,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,eAAe,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,cAAqB,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,eAAe,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -1,21 +1,21 @@
|
|
1
1
|
import { UNBREAKABLE_GAP } from '../../utils';
|
2
2
|
import { formatUptimeInSeconds, getDowntimeFromDateFormatted, getUptimeFromDateFormatted, } from '../dataFormatters';
|
3
3
|
describe('getUptimeFromDateFormatted', () => {
|
4
|
-
|
4
|
+
test('should calculate and format uptime', () => {
|
5
5
|
expect(getUptimeFromDateFormatted(3600000, 7200000)).toBe('1:00:00');
|
6
6
|
});
|
7
|
-
|
7
|
+
test('should return 0 if dateFrom after dateTo', () => {
|
8
8
|
expect(getUptimeFromDateFormatted(3600000, 3599000)).toBe('0s');
|
9
9
|
});
|
10
10
|
});
|
11
11
|
describe('getDowntimeFromDateFormatted', () => {
|
12
|
-
|
12
|
+
test('should calculate and format downtime as -uptime', () => {
|
13
13
|
expect(getDowntimeFromDateFormatted(3600000, 7200000)).toBe('-1:00:00');
|
14
14
|
});
|
15
|
-
|
15
|
+
test('should not add sign if downtime is 0', () => {
|
16
16
|
expect(getDowntimeFromDateFormatted(3600000, 3600000)).toBe('0s');
|
17
17
|
});
|
18
|
-
|
18
|
+
test('should return 0 if dateFrom after dateTo', () => {
|
19
19
|
expect(getDowntimeFromDateFormatted(3600000, 3599000)).toBe('0s');
|
20
20
|
});
|
21
21
|
});
|
@@ -23,7 +23,7 @@ describe('formatUptimeInSeconds', () => {
|
|
23
23
|
const M = 60;
|
24
24
|
const H = 60 * M;
|
25
25
|
const D = 24 * H;
|
26
|
-
|
26
|
+
test('should return days if value is more than 24h', () => {
|
27
27
|
expect(formatUptimeInSeconds(24 * H)).toBe('1d' + UNBREAKABLE_GAP + '00:00:00');
|
28
28
|
expect(formatUptimeInSeconds(D + H + M + 12)).toBe('1d' + UNBREAKABLE_GAP + '01:01:12');
|
29
29
|
// 1 week
|
@@ -32,26 +32,26 @@ describe('formatUptimeInSeconds', () => {
|
|
32
32
|
expect(formatUptimeInSeconds(30 * D + 11 * H + 30 * M + 12)).toBe('30d' + UNBREAKABLE_GAP + '11:30:12');
|
33
33
|
expect(formatUptimeInSeconds(1234 * D + 12 * H + 12 * M + 12)).toBe('1234d' + UNBREAKABLE_GAP + '12:12:12');
|
34
34
|
});
|
35
|
-
|
35
|
+
test('should return hours if value is less than 24h', () => {
|
36
36
|
expect(formatUptimeInSeconds(H + M + 12)).toBe('1:01:12');
|
37
37
|
expect(formatUptimeInSeconds(12 * H + 12 * M + 12)).toBe('12:12:12');
|
38
38
|
});
|
39
|
-
|
39
|
+
test('should return minutes if value is less than hour', () => {
|
40
40
|
expect(formatUptimeInSeconds(M + 12)).toBe('1:12');
|
41
41
|
expect(formatUptimeInSeconds(12 * M + 2)).toBe('12:02');
|
42
42
|
});
|
43
|
-
|
43
|
+
test('should return second if value is less than hour', () => {
|
44
44
|
expect(formatUptimeInSeconds(12)).toBe('12s');
|
45
45
|
expect(formatUptimeInSeconds(2)).toBe('2s');
|
46
46
|
});
|
47
|
-
|
47
|
+
test('should correctly process negative values', () => {
|
48
48
|
expect(formatUptimeInSeconds(-0)).toBe('0s');
|
49
49
|
expect(formatUptimeInSeconds(-12)).toBe('-12s');
|
50
50
|
expect(formatUptimeInSeconds(-1 * (12 * M + 2))).toBe('-12:02');
|
51
51
|
expect(formatUptimeInSeconds(-1 * (12 * H + 12 * M + 12))).toBe('-12:12:12');
|
52
52
|
expect(formatUptimeInSeconds(-1 * (12 * D + 12 * H + 12 * M + 12))).toBe('-12d' + UNBREAKABLE_GAP + '12:12:12');
|
53
53
|
});
|
54
|
-
|
54
|
+
test('should return empty placeholder on NaN', () => {
|
55
55
|
expect(formatUptimeInSeconds(Number.NaN)).toBe(undefined);
|
56
56
|
});
|
57
57
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"formatUptime.test.js","sourceRoot":"","sources":["../../../../src/utils/dataFormatters/__test__/formatUptime.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EACH,qBAAqB,EACrB,4BAA4B,EAC5B,0BAA0B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACxC,
|
1
|
+
{"version":3,"file":"formatUptime.test.js","sourceRoot":"","sources":["../../../../src/utils/dataFormatters/__test__/formatUptime.test.ts"],"names":[],"mappings":"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"}
|