ydb-embedded-ui 11.1.1 → 11.3.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/DoughnutMetrics/DoughnutMetrics.d.ts +5 -3
- package/dist/components/DoughnutMetrics/DoughnutMetrics.js +18 -8
- package/dist/components/DoughnutMetrics/DoughnutMetrics.js.map +1 -1
- package/dist/components/DoughnutMetrics/DoughnutMetrics.scss +38 -27
- package/dist/components/MetricChart/MetricChart.d.ts +4 -9
- package/dist/components/MetricChart/MetricChart.js +10 -6
- package/dist/components/MetricChart/MetricChart.js.map +1 -1
- package/dist/components/MetricChart/MetricChart.scss +5 -7
- package/dist/components/MetricChart/reducer.d.ts +2 -2
- package/dist/components/QueriesActivityBar/QueriesActivityBar.js +5 -2
- package/dist/components/QueriesActivityBar/QueriesActivityBar.js.map +1 -1
- package/dist/components/QueriesActivityBar/QueriesActivityBar.scss +18 -21
- package/dist/components/QueriesActivityBar/QueriesActivityCharts.js +1 -13
- package/dist/components/QueriesActivityBar/QueriesActivityCharts.js.map +1 -1
- package/dist/components/SpeedMultiMeter/SpeedMultiMeter.scss +3 -0
- package/dist/components/VDiskInfo/VDiskInfo.js +43 -2
- package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
- package/dist/components/VDiskInfo/i18n/en.json +3 -0
- package/dist/components/VDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/VDiskPopup/VDiskPopup.js +21 -2
- package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
- package/dist/containers/App/App.d.ts +3 -10
- package/dist/containers/App/App.js +11 -8
- package/dist/containers/App/App.js.map +1 -1
- package/dist/containers/App/App.scss +1 -1
- package/dist/containers/App/AppTitleContext.d.ts +11 -0
- package/dist/containers/App/AppTitleContext.js +14 -0
- package/dist/containers/App/AppTitleContext.js.map +1 -0
- package/dist/containers/App/Providers.d.ts +2 -1
- package/dist/containers/App/Providers.js +3 -2
- package/dist/containers/App/Providers.js.map +1 -1
- package/dist/containers/AppWithClusters/AppWithClusters.d.ts +2 -1
- package/dist/containers/AppWithClusters/AppWithClusters.js +2 -2
- package/dist/containers/AppWithClusters/AppWithClusters.js.map +1 -1
- package/dist/containers/Cluster/Cluster.js +3 -1
- package/dist/containers/Cluster/Cluster.js.map +1 -1
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsCores.js +1 -11
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsCores.js.map +1 -1
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsMemory.js +1 -5
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsMemory.js.map +1 -1
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsStorage.js +1 -5
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsStorage.js.map +1 -1
- package/dist/containers/Node/Node.js +3 -1
- package/dist/containers/Node/Node.js.map +1 -1
- package/dist/containers/Operations/useOperationsInfiniteQuery.d.ts +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js +3 -1
- package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
- package/dist/containers/StorageGroupPage/StorageGroupPage.js +3 -1
- package/dist/containers/StorageGroupPage/StorageGroupPage.js.map +1 -1
- package/dist/containers/Tablet/Tablet.js +5 -6
- package/dist/containers/Tablet/Tablet.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/defaultDashboardConfig.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/defaultDashboardConfig.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.scss +1 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricsCards.d.ts +0 -8
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricsCards.js +26 -93
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricsCards.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricsCards.scss +219 -5
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.d.ts +16 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.js +16 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.scss +29 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js +3 -11
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.scss +0 -8
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +2 -6
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss +13 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/en.json +11 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/Preview/components/TablePreview.js +5 -1
- package/dist/containers/Tenant/Query/Preview/components/TablePreview.js.map +1 -1
- package/dist/containers/Tenant/Query/Preview/components/TablePreview.test.d.ts +1 -0
- package/dist/containers/Tenant/Query/Preview/components/TablePreview.test.js +28 -0
- package/dist/containers/Tenant/Query/Preview/components/TablePreview.test.js.map +1 -0
- package/dist/containers/Tenant/Tenant.js +3 -1
- package/dist/containers/Tenant/Tenant.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +58 -10
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.scss +3 -4
- package/dist/containers/VDiskPage/VDiskTablets/VDiskTablets.d.ts +8 -0
- package/dist/containers/VDiskPage/VDiskTablets/VDiskTablets.js +64 -0
- package/dist/containers/VDiskPage/VDiskTablets/VDiskTablets.js.map +1 -0
- package/dist/containers/VDiskPage/VDiskTablets/VDiskTablets.scss +0 -0
- package/dist/containers/VDiskPage/VDiskTablets/columns.d.ts +3 -0
- package/dist/containers/VDiskPage/VDiskTablets/columns.js +60 -0
- package/dist/containers/VDiskPage/VDiskTablets/columns.js.map +1 -0
- package/dist/containers/VDiskPage/VDiskTablets/constants.d.ts +12 -0
- package/dist/containers/VDiskPage/VDiskTablets/constants.js +14 -0
- package/dist/containers/VDiskPage/VDiskTablets/constants.js.map +1 -0
- package/dist/containers/VDiskPage/VDiskTablets/index.d.ts +1 -0
- package/dist/containers/VDiskPage/VDiskTablets/index.js +2 -0
- package/dist/containers/VDiskPage/VDiskTablets/index.js.map +1 -0
- package/dist/containers/VDiskPage/i18n/en.json +5 -0
- package/dist/containers/VDiskPage/i18n/index.d.ts +1 -1
- package/dist/services/api/viewer.d.ts +6 -0
- package/dist/services/api/viewer.js +7 -0
- package/dist/services/api/viewer.js.map +1 -1
- package/dist/store/configureStore.d.ts +7 -5
- package/dist/store/configureStore.js +4 -5
- package/dist/store/configureStore.js.map +1 -1
- package/dist/store/defaultStore.d.ts +2 -2
- package/dist/store/reducers/api.d.ts +1 -1
- package/dist/store/reducers/api.js +1 -0
- package/dist/store/reducers/api.js.map +1 -1
- package/dist/store/reducers/authentication/authentication.d.ts +4 -4
- package/dist/store/reducers/cancelQuery.d.ts +2 -2
- package/dist/store/reducers/capabilities/capabilities.d.ts +31 -31
- package/dist/store/reducers/cluster/cluster.d.ts +5 -5
- package/dist/store/reducers/clusters/clusters.d.ts +2 -2
- package/dist/store/reducers/codeAssist/codeAssist.d.ts +6 -6
- package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +3 -3
- package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +44 -44
- package/dist/store/reducers/heatmap.d.ts +2 -2
- package/dist/store/reducers/hotKeys/hotKeys.d.ts +2 -2
- package/dist/store/reducers/index.d.ts +3 -3
- package/dist/store/reducers/network/network.d.ts +2 -2
- package/dist/store/reducers/node/node.d.ts +3 -3
- package/dist/store/reducers/node/selectors.d.ts +1 -1
- package/dist/store/reducers/nodes/nodes.d.ts +2 -2
- package/dist/store/reducers/nodesList.d.ts +3 -3
- package/dist/store/reducers/operations.d.ts +4 -4
- package/dist/store/reducers/overview/overview.d.ts +2 -2
- package/dist/store/reducers/partitions/partitions.d.ts +2 -2
- package/dist/store/reducers/pdisk/pdisk.d.ts +2 -2
- package/dist/store/reducers/planToSvg.d.ts +2 -2
- package/dist/store/reducers/preview.d.ts +2 -2
- package/dist/store/reducers/query/query.d.ts +3 -3
- package/dist/store/reducers/replication.d.ts +2 -2
- package/dist/store/reducers/schema/schema.d.ts +16 -16
- package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +39 -39
- package/dist/store/reducers/shardsWorkload/shardsWorkload.d.ts +2 -2
- package/dist/store/reducers/storage/storage.d.ts +3 -3
- package/dist/store/reducers/tableData.d.ts +1 -1
- package/dist/store/reducers/tableSchemaData.d.ts +2 -2
- package/dist/store/reducers/tablet.d.ts +7 -7
- package/dist/store/reducers/tablets.d.ts +3 -3
- package/dist/store/reducers/tenant/tenant.d.ts +4 -3
- package/dist/store/reducers/tenant/tenant.js +7 -2
- package/dist/store/reducers/tenant/tenant.js.map +1 -1
- package/dist/store/reducers/tenant/types.d.ts +1 -1
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.d.ts +2 -2
- package/dist/store/reducers/tenants/selectors.d.ts +21 -21
- package/dist/store/reducers/tenants/tenants.d.ts +2 -2
- package/dist/store/reducers/topic.d.ts +45 -45
- package/dist/store/reducers/vdisk/vdisk.d.ts +3 -2
- package/dist/store/reducers/vdisk/vdisk.js +18 -0
- package/dist/store/reducers/vdisk/vdisk.js.map +1 -1
- package/dist/store/reducers/viewSchema/viewSchema.d.ts +2 -2
- package/dist/store/state-url-mapping.d.ts +1 -0
- package/dist/store/state-url-mapping.js +2 -0
- package/dist/store/state-url-mapping.js.map +1 -1
- package/dist/types/api/vdiskBlobIndex.d.ts +64 -0
- package/dist/types/api/vdiskBlobIndex.js +7 -0
- package/dist/types/api/vdiskBlobIndex.js.map +1 -0
- package/dist/utils/disks/prepareDisks.js +20 -1
- package/dist/utils/disks/prepareDisks.js.map +1 -1
- package/dist/utils/metrics/formatMetricLegend.d.ts +6 -0
- package/dist/utils/metrics/formatMetricLegend.js +17 -0
- package/dist/utils/metrics/formatMetricLegend.js.map +1 -0
- package/dist/utils/metrics/i18n/en.json +4 -0
- package/dist/utils/metrics/i18n/index.d.ts +2 -0
- package/dist/utils/metrics/i18n/index.js +5 -0
- package/dist/utils/metrics/i18n/index.js.map +1 -0
- package/dist/utils/metrics.d.ts +42 -0
- package/dist/utils/metrics.js +58 -0
- package/dist/utils/metrics.js.map +1 -0
- package/package.json +2 -1
- package/dist/components/DiagnosticCard/DiagnosticCard.d.ts +0 -9
- package/dist/components/DiagnosticCard/DiagnosticCard.js +0 -8
- package/dist/components/DiagnosticCard/DiagnosticCard.js.map +0 -1
- package/dist/components/DiagnosticCard/DiagnosticCard.scss +0 -35
- package/dist/components/TimeFrameSelector/TimeFrameSelector.d.ts +0 -9
- package/dist/components/TimeFrameSelector/TimeFrameSelector.js +0 -12
- package/dist/components/TimeFrameSelector/TimeFrameSelector.js.map +0 -1
- package/dist/components/TimeFrameSelector/TimeFrameSelector.scss +0 -4
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.d.ts +0 -5
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.js +0 -7
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.js.map +0 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricCard/MetricCard.d.ts +0 -16
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricCard/MetricCard.js +0 -37
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricCard/MetricCard.js.map +0 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricCard/MetricCard.scss +0 -48
@@ -1,12 +1,226 @@
|
|
1
|
-
|
2
|
-
display: flex;
|
3
|
-
gap: 16px;
|
1
|
+
// Mixins for pseudo-element patterns
|
4
2
|
|
5
|
-
|
3
|
+
/**
|
4
|
+
* Base mixin for creating positioned pseudo-elements with consistent sizing
|
5
|
+
* Used as foundation for all tab filler pseudo-elements
|
6
|
+
* @param {string} $side - Which side to position the element (left|right)
|
7
|
+
* @param {length} $height - Height of the pseudo-element
|
8
|
+
*/
|
6
9
|
|
7
|
-
|
10
|
+
@mixin pseudo-base($side: left, $height: var(--tab-filler-size)) {
|
11
|
+
position: absolute;
|
12
|
+
top: 100%;
|
13
|
+
#{$side}: 0;
|
14
|
+
width: var(--tab-filler-size);
|
15
|
+
height: $height;
|
16
|
+
|
17
|
+
content: '';
|
18
|
+
|
19
|
+
background-color: var(--g-color-base-background);
|
20
|
+
}
|
21
|
+
|
22
|
+
/**
|
23
|
+
* Creates a vertical filler for active tab states
|
24
|
+
* Used to extend the active tab's background below the container
|
25
|
+
* @param {string} $side - Which side to position the filler (left|right)
|
26
|
+
*/
|
27
|
+
|
28
|
+
@mixin pseudo-active-filler($side: left) {
|
29
|
+
@include pseudo-base($side, var(--g-spacing-3));
|
30
|
+
border-#{$side}: var(--tab-border-width) solid var(--g-color-line-generic);
|
31
|
+
}
|
32
|
+
|
33
|
+
/**
|
34
|
+
* Creates a rounded corner filler for inactive tab states
|
35
|
+
* Provides visual separation between tabs with border and radius
|
36
|
+
* @param {string} $side - Which side to position the filler (left|right)
|
37
|
+
*/
|
38
|
+
|
39
|
+
@mixin pseudo-inactive-filler($side: left) {
|
40
|
+
border-top: var(--tab-border-width) solid var(--g-color-line-generic);
|
41
|
+
@include pseudo-base($side, var(--tab-filler-size));
|
42
|
+
border-#{$side}: var(--tab-border-width) solid var(--g-color-line-generic);
|
43
|
+
border-top-#{$side}-radius: var(--g-border-radius-s);
|
44
|
+
}
|
45
|
+
|
46
|
+
/**
|
47
|
+
* Creates a simple background fill without borders
|
48
|
+
* Used as a background layer behind other pseudo-elements
|
49
|
+
* @param {string} $side - Which side to position the fill (left|right)
|
50
|
+
*/
|
51
|
+
|
52
|
+
@mixin pseudo-background-fill($side: left) {
|
53
|
+
@include pseudo-base($side, var(--tab-filler-size));
|
54
|
+
}
|
55
|
+
|
56
|
+
// Utility mixins for common patterns
|
57
|
+
|
58
|
+
/**
|
59
|
+
* Consistent tab border styling for both active and inactive states
|
60
|
+
* Creates the characteristic tab shape with top and side borders only
|
61
|
+
* @param {color} $color - Border color to use
|
62
|
+
*/
|
63
|
+
|
64
|
+
@mixin tab-border-base($color) {
|
65
|
+
border: var(--tab-border-width) solid $color;
|
66
|
+
border-bottom: none;
|
67
|
+
border-radius: var(--g-border-radius-s) var(--g-border-radius-s) 0 0;
|
68
|
+
}
|
69
|
+
|
70
|
+
/**
|
71
|
+
* Complete edge filler system for first/last tabs
|
72
|
+
* Handles all pseudo-element states (active/inactive, ::before/::after)
|
73
|
+
* Creates the complex tab connection visuals for edge containers
|
74
|
+
* @param {string} $side - Which edge this applies to (left|right)
|
75
|
+
*/
|
76
|
+
|
77
|
+
@mixin tab-edge-filler($side) {
|
78
|
+
&.tenant-metrics-cards__link-container_active::after {
|
79
|
+
@include pseudo-active-filler($side);
|
80
|
+
}
|
81
|
+
|
82
|
+
&:not(.tenant-metrics-cards__link-container_active)::after {
|
83
|
+
@include pseudo-inactive-filler($side);
|
84
|
+
}
|
85
|
+
|
86
|
+
&:not(.tenant-metrics-cards__link-container_active)::before {
|
87
|
+
@include pseudo-background-fill($side);
|
88
|
+
}
|
89
|
+
}
|
90
|
+
|
91
|
+
.tenant-metrics-cards {
|
92
|
+
// CSS Variables for consistent design system
|
93
|
+
--tab-border-width: 1px;
|
94
|
+
--tab-filler-size: 10px;
|
95
|
+
--tab-overlap: -1px;
|
96
|
+
--tab-lift-offset: -6px;
|
97
|
+
--tab-border-compensation: 1px;
|
98
|
+
--tab-adjusted-spacing: calc(var(--g-spacing-3) - var(--tab-border-width));
|
99
|
+
--z-tab-base: 100;
|
100
|
+
--z-tab-active: 110;
|
101
|
+
--g-border-radius-xxl: 12px;
|
102
|
+
|
103
|
+
// Fallback for browsers without :has() support
|
104
|
+
@supports not selector(:has(*)) {
|
105
|
+
&__link-container:not(:last-child) {
|
106
|
+
padding-right: var(--tab-adjusted-spacing);
|
107
|
+
|
108
|
+
border-right: var(--tab-border-width) solid var(--g-color-line-generic);
|
109
|
+
border-bottom-right-radius: var(--g-border-radius-xxl);
|
110
|
+
}
|
111
|
+
}
|
112
|
+
|
113
|
+
&__link {
|
8
114
|
text-decoration: none;
|
9
115
|
|
10
116
|
color: inherit;
|
117
|
+
|
118
|
+
&:hover {
|
119
|
+
text-decoration: none;
|
120
|
+
}
|
121
|
+
}
|
122
|
+
|
123
|
+
&__link-container {
|
124
|
+
position: relative;
|
125
|
+
z-index: var(--z-tab-base);
|
126
|
+
|
127
|
+
flex: 1;
|
128
|
+
|
129
|
+
margin-left: var(--tab-overlap);
|
130
|
+
padding: 0 var(--g-spacing-3) var(--g-spacing-3) var(--g-spacing-3);
|
131
|
+
|
132
|
+
border-bottom: var(--tab-border-width) solid var(--g-color-line-generic);
|
133
|
+
background: var(--g-color-base-background);
|
134
|
+
|
135
|
+
.tenant-tab-card__card-container {
|
136
|
+
border: 1px solid transparent;
|
137
|
+
border-top: none;
|
138
|
+
|
139
|
+
& > div {
|
140
|
+
transform: translateY(1px);
|
141
|
+
}
|
142
|
+
}
|
143
|
+
|
144
|
+
&:nth-child(1) {
|
145
|
+
z-index: calc(var(--z-tab-base) + 3);
|
146
|
+
}
|
147
|
+
|
148
|
+
&:nth-child(2) {
|
149
|
+
z-index: calc(var(--z-tab-base) + 2);
|
150
|
+
}
|
151
|
+
|
152
|
+
&:nth-child(3) {
|
153
|
+
z-index: calc(var(--z-tab-base) + 1);
|
154
|
+
}
|
155
|
+
|
156
|
+
&:nth-child(4) {
|
157
|
+
z-index: calc(var(--z-tab-base) + 0);
|
158
|
+
}
|
159
|
+
|
160
|
+
// Reset edge padding for first/last elements
|
161
|
+
&:first-child {
|
162
|
+
margin-left: 0;
|
163
|
+
}
|
164
|
+
|
165
|
+
&:first-child {
|
166
|
+
padding-left: 0;
|
167
|
+
@include tab-edge-filler(left);
|
168
|
+
}
|
169
|
+
|
170
|
+
&:last-child {
|
171
|
+
margin-right: 0;
|
172
|
+
padding-right: 0;
|
173
|
+
@include tab-edge-filler(right);
|
174
|
+
}
|
175
|
+
}
|
176
|
+
|
177
|
+
&__link {
|
178
|
+
display: block;
|
179
|
+
}
|
180
|
+
|
181
|
+
// Active state styling
|
182
|
+
&__link-container_active {
|
183
|
+
z-index: var(--z-tab-active) !important;
|
184
|
+
|
185
|
+
padding: 0;
|
186
|
+
|
187
|
+
border-bottom: 0;
|
188
|
+
background: var(--g-color-base-background);
|
189
|
+
|
190
|
+
transform: translateY(var(--tab-lift-offset));
|
191
|
+
|
192
|
+
.tenant-tab-card__card-container {
|
193
|
+
border: none;
|
194
|
+
border-radius: var(--g-border-radius-xs);
|
195
|
+
|
196
|
+
& > div {
|
197
|
+
transform: translateY(0);
|
198
|
+
}
|
199
|
+
}
|
200
|
+
|
201
|
+
.tenant-metrics-cards__link {
|
202
|
+
padding-bottom: var(--tab-border-compensation);
|
203
|
+
@include tab-border-base(var(--g-color-line-generic));
|
204
|
+
}
|
205
|
+
}
|
206
|
+
|
207
|
+
// Adjacent tab styling (modern browsers with :has() support)
|
208
|
+
&__link-container:has(+ &__link-container_active) {
|
209
|
+
padding-right: var(--tab-adjusted-spacing);
|
210
|
+
|
211
|
+
border-right: var(--tab-border-width) solid var(--g-color-line-generic);
|
212
|
+
border-bottom-right-radius: var(--g-border-radius-xxl);
|
213
|
+
}
|
214
|
+
|
215
|
+
&__link-container_active + &__link-container {
|
216
|
+
padding-left: var(--tab-adjusted-spacing);
|
217
|
+
|
218
|
+
border-left: var(--tab-border-width) solid var(--g-color-line-generic);
|
219
|
+
border-bottom-left-radius: var(--g-border-radius-xxl);
|
220
|
+
}
|
221
|
+
|
222
|
+
// Reset padding for specific cases
|
223
|
+
&__link-container:not(:has(+ &__link-container_active)) {
|
224
|
+
padding-right: 0;
|
11
225
|
}
|
12
226
|
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import './TabCard.scss';
|
2
|
+
interface TabCardProps {
|
3
|
+
label: string;
|
4
|
+
sublabel?: string;
|
5
|
+
value: number;
|
6
|
+
limit: number;
|
7
|
+
active?: boolean;
|
8
|
+
helpText?: string;
|
9
|
+
clickable?: boolean;
|
10
|
+
legendFormatter: (params: {
|
11
|
+
value: number;
|
12
|
+
capacity: number;
|
13
|
+
}) => string;
|
14
|
+
}
|
15
|
+
export declare function TabCard({ label, sublabel, value, limit, active, helpText, clickable, legendFormatter, }: TabCardProps): import("react/jsx-runtime").JSX.Element;
|
16
|
+
export {};
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import { Card, Flex } from '@gravity-ui/uikit';
|
3
|
+
import { DoughnutMetrics } from '../../../../../components/DoughnutMetrics/DoughnutMetrics';
|
4
|
+
import { getDiagramValues } from '../../../../../containers/Cluster/ClusterOverview/utils';
|
5
|
+
import { cn } from '../../../../../utils/cn';
|
6
|
+
import './TabCard.scss';
|
7
|
+
const b = cn('tenant-tab-card');
|
8
|
+
export function TabCard({ label, sublabel, value, limit, active, helpText, clickable = true, legendFormatter, }) {
|
9
|
+
const { status, percents, legend, fill } = getDiagramValues({
|
10
|
+
value,
|
11
|
+
capacity: limit,
|
12
|
+
legendFormatter,
|
13
|
+
});
|
14
|
+
return (_jsx("div", { className: b({ active }), children: _jsx(Card, { className: b('card-container', { active, clickable }), type: "container", view: active ? 'outlined' : 'raised', children: _jsxs(Flex, { gap: 3, alignItems: "center", children: [_jsx(DoughnutMetrics, { size: "small", status: status, fillWidth: fill, className: b('doughnut'), children: _jsx(DoughnutMetrics.Value, { variant: "subheader-1", children: percents }) }), _jsxs("div", { className: b('legend-wrapper'), children: [_jsx(DoughnutMetrics.Legend, { variant: "subheader-2", children: legend }), _jsx(DoughnutMetrics.Legend, { variant: "body-1", color: "secondary", note: helpText, noteIconSize: "s", children: sublabel || label })] })] }) }) }));
|
15
|
+
}
|
16
|
+
//# sourceMappingURL=TabCard.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TabCard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAC,eAAe,EAAC,MAAM,2DAA2D,CAAC;AAC1F,OAAO,EAAC,gBAAgB,EAAC,MAAM,yDAAyD,CAAC;AACzF,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAahC,MAAM,UAAU,OAAO,CAAC,EACpB,KAAK,EACL,QAAQ,EACR,KAAK,EACL,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,GAAG,IAAI,EAChB,eAAe,GACJ;IACX,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAC,GAAG,gBAAgB,CAAC;QACtD,KAAK;QACL,QAAQ,EAAE,KAAK;QACf,eAAe;KAClB,CAAC,CAAC;IAEH,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,YACvB,KAAC,IAAI,IACD,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAE,SAAS,EAAC,CAAC,EACnD,IAAI,EAAC,WAAW,EAChB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,YAEpC,MAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,aAC7B,KAAC,eAAe,IACZ,IAAI,EAAC,OAAO,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,YAExB,KAAC,eAAe,CAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YACvC,QAAQ,GACW,GACV,EAClB,eAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,aAC/B,KAAC,eAAe,CAAC,MAAM,IAAC,OAAO,EAAC,aAAa,YACxC,MAAM,GACc,EACzB,KAAC,eAAe,CAAC,MAAM,IACnB,OAAO,EAAC,QAAQ,EAChB,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,QAAQ,EACd,YAAY,EAAC,GAAG,YAEf,QAAQ,IAAI,KAAK,GACG,IACvB,IACH,GACJ,GACL,CACT,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
.tenant-tab-card {
|
2
|
+
border-radius: var(--g-border-radius-s);
|
3
|
+
|
4
|
+
&__card-container {
|
5
|
+
padding: var(--g-spacing-4);
|
6
|
+
|
7
|
+
border: 0;
|
8
|
+
border-radius: var(--g-border-radius-s);
|
9
|
+
}
|
10
|
+
|
11
|
+
&__card-container_clickable {
|
12
|
+
cursor: pointer;
|
13
|
+
|
14
|
+
// Smooth hover transition
|
15
|
+
transition: background-color 0.15s ease;
|
16
|
+
|
17
|
+
&:hover {
|
18
|
+
background-color: var(--g-color-base-float-hover);
|
19
|
+
}
|
20
|
+
}
|
21
|
+
|
22
|
+
&__card-container_active {
|
23
|
+
cursor: default !important;
|
24
|
+
|
25
|
+
&:hover {
|
26
|
+
background-color: transparent;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}
|
package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js
CHANGED
@@ -1,9 +1,6 @@
|
|
1
|
-
import { jsx as _jsx
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import React from 'react';
|
3
|
-
import { Flex } from '@gravity-ui/uikit';
|
4
|
-
import { StringParam, useQueryParam } from 'use-query-params';
|
5
3
|
import { MetricChart } from '../../../../../components/MetricChart';
|
6
|
-
import { TimeFrameSelector } from '../../../../../components/TimeFrameSelector/TimeFrameSelector';
|
7
4
|
import { cn } from '../../../../../utils/cn';
|
8
5
|
import { useAutoRefreshInterval } from '../../../../../utils/hooks';
|
9
6
|
import './TenantDashboard.scss';
|
@@ -12,7 +9,6 @@ const CHART_WIDTH_FULL = 872;
|
|
12
9
|
const b = cn('ydb-tenant-dashboard');
|
13
10
|
export const TenantDashboard = ({ database, charts }) => {
|
14
11
|
const [isDashboardHidden, setIsDashboardHidden] = React.useState(true);
|
15
|
-
const [timeFrame = '1h', setTimeframe] = useQueryParam('timeframe', StringParam);
|
16
12
|
const [autoRefreshInterval] = useAutoRefreshInterval();
|
17
13
|
// Refetch data only if dashboard successfully loaded
|
18
14
|
const shouldRefresh = isDashboardHidden ? 0 : autoRefreshInterval;
|
@@ -33,13 +29,9 @@ export const TenantDashboard = ({ database, charts }) => {
|
|
33
29
|
// If there is only one chart, display it with full width
|
34
30
|
const chartWidth = charts.length === 1 ? CHART_WIDTH_FULL : CHART_WIDTH;
|
35
31
|
const chartHeight = CHART_WIDTH / 1.5;
|
36
|
-
const renderChartToolbar = React.useCallback((chartConfig) => (_jsx(Flex, { className: b('toolbar'), justifyContent: "space-between", alignItems: "center", children: _jsx("div", { children: chartConfig.title }) })), []);
|
37
32
|
const renderContent = () => {
|
38
|
-
return charts.map((chartConfig) => {
|
39
|
-
const chartId = chartConfig.metrics.map(({ target }) => target).join('&');
|
40
|
-
return (_jsx(MetricChart, { database: database, metrics: chartConfig.metrics, timeFrame: timeFrame, chartOptions: chartConfig.options, autorefresh: shouldRefresh, width: chartWidth, height: chartHeight, onChartDataStatusChange: handleChartDataStatusChange, isChartVisible: !isDashboardHidden, renderChartToolbar: () => renderChartToolbar(chartConfig) }, chartId));
|
41
|
-
});
|
33
|
+
return charts.map((chartConfig, index) => (_jsx(MetricChart, { database: database, metrics: chartConfig.metrics, chartOptions: chartConfig.options, autorefresh: shouldRefresh, width: chartWidth, height: chartHeight, onChartDataStatusChange: handleChartDataStatusChange, isChartVisible: !isDashboardHidden, title: chartConfig.title }, index)));
|
42
34
|
};
|
43
|
-
return (
|
35
|
+
return (_jsx("div", { className: b(null), style: { display: isDashboardHidden ? 'none' : undefined }, children: _jsx("div", { className: b('charts'), children: renderContent() }) }));
|
44
36
|
};
|
45
37
|
//# sourceMappingURL=TenantDashboard.js.map
|
package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TenantDashboard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,
|
1
|
+
{"version":3,"file":"TenantDashboard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAMlE,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAC3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAElE,OAAO,wBAAwB,CAAC;AAEhC,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAC;AAarC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAC,QAAQ,EAAE,MAAM,EAAuB,EAAE,EAAE;IACxE,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,IAAI,CAAC,CAAC;IAChF,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IAEvD,qDAAqD;IACrD,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAElE;;;;;;;;OAQG;IACH,MAAM,2BAA2B,GAAG,CAAC,WAA4B,EAAE,EAAE;QACjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACL,CAAC,CAAC;IAEF,yDAAyD;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC;IACxE,MAAM,WAAW,GAAG,WAAW,GAAG,GAAG,CAAC;IAEtC,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,KAAC,WAAW,IAER,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,YAAY,EAAE,WAAW,CAAC,OAAO,EACjC,WAAW,EAAE,aAAa,EAC1B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,uBAAuB,EAAE,2BAA2B,EACpD,cAAc,EAAE,CAAC,iBAAiB,EAClC,KAAK,EAAE,WAAW,CAAC,KAAK,IATnB,KAAK,CAUZ,CACL,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAC,YAC7E,cAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAG,aAAa,EAAE,GAAO,GAClD,CACT,CAAC;AACN,CAAC,CAAC"}
|
package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.scss
CHANGED
@@ -2,17 +2,9 @@
|
|
2
2
|
width: var(--diagnostics-section-table-width);
|
3
3
|
margin-bottom: var(--diagnostics-section-margin);
|
4
4
|
|
5
|
-
&__controls {
|
6
|
-
margin-bottom: 10px;
|
7
|
-
}
|
8
|
-
|
9
5
|
&__charts {
|
10
6
|
display: flex;
|
11
7
|
flex-flow: row wrap;
|
12
8
|
gap: 16px;
|
13
9
|
}
|
14
|
-
|
15
|
-
&__toolbar {
|
16
|
-
margin-bottom: 10px;
|
17
|
-
}
|
18
10
|
}
|
@@ -12,7 +12,6 @@ import { TENANT_DEFAULT_TITLE } from '../../../../utils/constants';
|
|
12
12
|
import { useAutoRefreshInterval, useTypedSelector } from '../../../../utils/hooks';
|
13
13
|
import { useClusterNameFromQuery } from '../../../../utils/hooks/useDatabaseFromQuery';
|
14
14
|
import { mapDatabaseTypeToDBName } from '../../utils/schema';
|
15
|
-
import { DefaultOverviewContent } from './DefaultOverviewContent/DefaultOverviewContent';
|
16
15
|
import { HealthcheckPreview } from './Healthcheck/HealthcheckPreview';
|
17
16
|
import { MetricsCards } from './MetricsCards/MetricsCards';
|
18
17
|
import { TenantCpu } from './TenantCpu/TenantCpu';
|
@@ -52,7 +51,7 @@ export function TenantOverview({ tenantName, additionalTenantProps, additionalNo
|
|
52
51
|
},
|
53
52
|
};
|
54
53
|
// === === ===
|
55
|
-
const { blobStorage, tabletStorage, blobStorageLimit, tabletStorageLimit, poolsStats, memoryStats,
|
54
|
+
const { blobStorage, tabletStorage, blobStorageLimit, tabletStorageLimit, poolsStats, memoryStats, blobStorageStats, tabletStorageStats, networkStats, } = calculateTenantMetrics(tenantData);
|
56
55
|
const storageMetrics = {
|
57
56
|
blobStorageUsed: blobStorage,
|
58
57
|
blobStorageLimit,
|
@@ -73,12 +72,9 @@ export function TenantOverview({ tenantName, additionalTenantProps, additionalNo
|
|
73
72
|
case TENANT_METRICS_TABS_IDS.memory: {
|
74
73
|
return (_jsx(TenantMemory, { tenantName: tenantName, memoryUsed: tenantData.MemoryUsed, memoryLimit: tenantData.MemoryLimit, memoryStats: tenantData.MemoryStats }));
|
75
74
|
}
|
76
|
-
default: {
|
77
|
-
return _jsx(DefaultOverviewContent, { database: tenantName });
|
78
|
-
}
|
79
75
|
}
|
80
76
|
};
|
81
77
|
const links = getDatabaseLinks(additionalTenantProps, Name, Type);
|
82
|
-
return (_jsx(LoaderWrapper, { loading: tenantLoading, children: _jsxs("div", { className: b(), children: [_jsxs("div", { className: b('info'), children: [_jsx("div", { className: b('top-label'), children: tenantType }), _jsxs(Flex, { alignItems: "center", gap: "1", className: b('top'), children: [renderName(), _jsx(Flex, { gap: "2", children: links.map(({ title, url, icon }) => (_jsx(Button, { href: url, target: "_blank", size: "xs", title: title, children: _jsx(Icon, { data: icon }) }, title))) })] }), _jsxs(Flex, { direction: "column", gap:
|
78
|
+
return (_jsx(LoaderWrapper, { loading: tenantLoading, children: _jsxs("div", { className: b(), children: [_jsxs("div", { className: b('info'), children: [_jsx("div", { className: b('top-label'), children: tenantType }), _jsxs(Flex, { alignItems: "center", gap: "1", className: b('top'), children: [renderName(), _jsx(Flex, { gap: "2", children: links.map(({ title, url, icon }) => (_jsx(Button, { href: url, target: "_blank", size: "xs", title: title, children: _jsx(Icon, { data: icon }) }, title))) })] }), _jsxs(Flex, { direction: "column", gap: 4, children: [_jsx(HealthcheckPreview, { tenantName: tenantName }), _jsx(QueriesActivityBar, { tenantName: tenantName }), _jsx(MetricsCards, { poolsCpuStats: poolsStats, memoryStats: memoryStats, blobStorageStats: blobStorageStats, tabletStorageStats: tabletStorageStats, networkStats: networkStats })] })] }), _jsx("div", { className: b('tab-content'), children: renderTabContent() })] }) }));
|
83
79
|
}
|
84
80
|
//# sourceMappingURL=TenantOverview.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TenantOverview.js","sourceRoot":"","sources":["../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAC,YAAY,EAAC,MAAM,kDAAkD,CAAC;AAC9E,OAAO,EAAC,aAAa,EAAC,MAAM,oDAAoD,CAAC;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,8DAA8D,CAAC;AAChG,OAAO,EAAC,WAAW,EAAC,MAAM,8CAA8C,CAAC;AACzE,OAAO,EAAC,uBAAuB,EAAC,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAC,SAAS,EAAC,MAAM,0CAA0C,CAAC;AACnE,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAC;AAEhF,OAAO,EAAC,gBAAgB,EAAC,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAC,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAC,uBAAuB,EAAC,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAC,
|
1
|
+
{"version":3,"file":"TenantOverview.js","sourceRoot":"","sources":["../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.tsx"],"names":[],"mappings":"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"}
|
@@ -1,8 +1,6 @@
|
|
1
1
|
@use '../../../../styles/mixins.scss';
|
2
2
|
|
3
3
|
.tenant-overview {
|
4
|
-
overflow: auto;
|
5
|
-
|
6
4
|
height: 100%;
|
7
5
|
padding-bottom: 20px;
|
8
6
|
|
@@ -60,4 +58,17 @@
|
|
60
58
|
width: 300px;
|
61
59
|
margin-bottom: 36px;
|
62
60
|
}
|
61
|
+
|
62
|
+
&__tab-content {
|
63
|
+
overflow: auto;
|
64
|
+
|
65
|
+
margin-top: -1px;
|
66
|
+
padding: var(--g-spacing-4);
|
67
|
+
|
68
|
+
border: 1px solid var(--g-color-line-generic);
|
69
|
+
border-top: 0;
|
70
|
+
border-radius: var(--g-border-radius-s);
|
71
|
+
border-top-left-radius: 0;
|
72
|
+
border-top-right-radius: 0;
|
73
|
+
}
|
63
74
|
}
|
@@ -16,13 +16,21 @@
|
|
16
16
|
"by-memory": "by memory",
|
17
17
|
"by-usage": "by usage",
|
18
18
|
"by-size": "by size",
|
19
|
-
"cards.cpu-label": "CPU",
|
19
|
+
"cards.cpu-label": "CPU load",
|
20
20
|
"cards.storage-label": "Storage",
|
21
|
-
"cards.memory-label": "Memory",
|
21
|
+
"cards.memory-label": "Memory used",
|
22
22
|
"cards.network-label": "Network",
|
23
23
|
"cards.network-note": "Network usage is the average outgoing bandwidth usage across all nodes in the database",
|
24
|
+
"context_cpu-load": "CPU load",
|
25
|
+
"context_storage-groups": "Storage: {{count}} groups",
|
26
|
+
"context_memory-used": "Memory used",
|
27
|
+
"context_network-evaluation": "Network evaluation",
|
28
|
+
"context_cpu-description": "CPU load is calculated as the cumulative usage across all actor system pools in the database",
|
29
|
+
"context_memory-description": "Memory usage is the total memory consumed by all processes in the database",
|
30
|
+
"context_storage-description": "Storage usage shows how much data is stored in the database including user data and indexes",
|
31
|
+
"context_network-description": "Network usage is the average outgoing bandwidth usage across all nodes in the database",
|
24
32
|
"charts.queries-per-second": "Queries per second",
|
25
|
-
"charts.
|
33
|
+
"charts.queries-latency": "Queries latencies {{percentile}}",
|
26
34
|
"charts.cpu-usage": "CPU usage by pool",
|
27
35
|
"charts.storage-usage": "Tablet storage usage",
|
28
36
|
"charts.memory-usage": "Memory usage",
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: (key: "queries" | "nodes" | "tables" | "no-data" | "top" | "groups" | "shards" | "no-pools-data" | "top-nodes.empty-data" | "top-groups.empty-data" | "by-pools-usage" | "by-cpu-time" | "by-cpu-usage" | "by-load" | "by-memory" | "by-usage" | "by-size" | "cards.cpu-label" | "cards.storage-label" | "cards.memory-label" | "cards.network-label" | "cards.network-note" | "charts.queries-per-second" | "charts.
|
1
|
+
declare const _default: (key: "queries" | "nodes" | "tables" | "no-data" | "top" | "groups" | "context_cpu-description" | "context_memory-description" | "context_storage-description" | "context_network-description" | "shards" | "no-pools-data" | "top-nodes.empty-data" | "top-groups.empty-data" | "by-pools-usage" | "by-cpu-time" | "by-cpu-usage" | "by-load" | "by-memory" | "by-usage" | "by-size" | "cards.cpu-label" | "cards.storage-label" | "cards.memory-label" | "cards.network-label" | "cards.network-note" | "context_cpu-load" | "context_storage-groups" | "context_memory-used" | "context_network-evaluation" | "charts.queries-per-second" | "charts.queries-latency" | "charts.cpu-usage" | "charts.storage-usage" | "charts.memory-usage" | "storage.tablet-storage-title" | "storage.tablet-storage-description" | "storage.db-storage-title" | "storage.db-storage-description" | "executed-last-hour" | "column-header.process", params?: import("@gravity-ui/i18n").Params) => string;
|
2
2
|
export default _default;
|
@@ -1,12 +1,16 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import { QueryResultTable } from '../../../../../components/QueryResultTable';
|
3
3
|
import { previewApi } from '../../../../../store/reducers/preview';
|
4
|
+
import { prepareQueryWithPragmas } from '../../../../../store/reducers/query/utils';
|
5
|
+
import { useQueryExecutionSettings } from '../../../../../utils/hooks/useQueryExecutionSettings';
|
4
6
|
import { isExternalTableType } from '../../../utils/schema';
|
5
7
|
import { Preview } from './PreviewView';
|
6
8
|
const TABLE_PREVIEW_LIMIT = 100;
|
7
9
|
export function TablePreview({ database, path, type }) {
|
8
10
|
var _a, _b, _c;
|
9
|
-
const
|
11
|
+
const [querySettings] = useQueryExecutionSettings();
|
12
|
+
const baseQuery = `select * from \`${path}\` limit 101`;
|
13
|
+
const query = prepareQueryWithPragmas(baseQuery, querySettings.pragmas);
|
10
14
|
const { currentData, isFetching, error } = previewApi.useSendQueryQuery({
|
11
15
|
database,
|
12
16
|
query,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TablePreview.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Query/Preview/components/TablePreview.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAC,UAAU,EAAC,MAAM,uCAAuC,CAAC;AACjE,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAG1D,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,MAAM,UAAU,YAAY,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAwB;;IACtE,MAAM,
|
1
|
+
{"version":3,"file":"TablePreview.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Query/Preview/components/TablePreview.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAC,UAAU,EAAC,MAAM,uCAAuC,CAAC;AACjE,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,yBAAyB,EAAC,MAAM,sDAAsD,CAAC;AAC/F,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAG1D,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,MAAM,UAAU,YAAY,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAwB;;IACtE,MAAM,CAAC,aAAa,CAAC,GAAG,yBAAyB,EAAE,CAAC;IAEpD,MAAM,SAAS,GAAG,mBAAmB,IAAI,cAAc,CAAC;IACxD,MAAM,KAAK,GAAG,uBAAuB,CAAC,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAExE,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAC,GAAG,UAAU,CAAC,iBAAiB,CACjE;QACI,QAAQ;QACR,KAAK;QACL,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc;QACpE,SAAS,EAAE,mBAAmB;KACjC,EACD;QACI,yBAAyB,EAAE,IAAI;KAClC,CACJ,CAAC;IACF,MAAM,OAAO,GAAG,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;IACxD,MAAM,IAAI,GAAG,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,0CAAG,CAAC,CAAC,mCAAI,EAAE,CAAC;IAEhD,MAAM,YAAY,GAAG,GAAG,EAAE;QACtB,OAAO,KAAC,gBAAgB,IAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,GAAI,CAAC;IAC1E,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,OAAO,IACJ,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,QAAQ,EAAE,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,GAC/B,CACL,CAAC;AACN,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import { prepareQueryWithPragmas } from '../../../../../store/reducers/query/utils';
|
2
|
+
describe('TablePreview - Pragma Integration', () => {
|
3
|
+
test('should correctly prepare query with pragmas for table preview', () => {
|
4
|
+
const baseQuery = 'select * from `test-table` limit 101';
|
5
|
+
const pragmas = 'PRAGMA OrderedColumns;';
|
6
|
+
const result = prepareQueryWithPragmas(baseQuery, pragmas);
|
7
|
+
expect(result).toBe('PRAGMA OrderedColumns;\n\nselect * from `test-table` limit 101');
|
8
|
+
});
|
9
|
+
test('should handle empty pragmas correctly in table preview', () => {
|
10
|
+
const baseQuery = 'select * from `test-table` limit 101';
|
11
|
+
const pragmas = '';
|
12
|
+
const result = prepareQueryWithPragmas(baseQuery, pragmas);
|
13
|
+
expect(result).toBe('select * from `test-table` limit 101');
|
14
|
+
});
|
15
|
+
test('should handle multiple pragmas correctly in table preview', () => {
|
16
|
+
const baseQuery = 'select * from `test-table` limit 101';
|
17
|
+
const pragmas = 'PRAGMA OrderedColumns;\nPRAGMA AnsiOptionalAS;';
|
18
|
+
const result = prepareQueryWithPragmas(baseQuery, pragmas);
|
19
|
+
expect(result).toBe('PRAGMA OrderedColumns;\nPRAGMA AnsiOptionalAS;\n\nselect * from `test-table` limit 101');
|
20
|
+
});
|
21
|
+
test('should handle pragmas without semicolon correctly in table preview', () => {
|
22
|
+
const baseQuery = 'select * from `test-table` limit 101';
|
23
|
+
const pragmas = 'PRAGMA OrderedColumns';
|
24
|
+
const result = prepareQueryWithPragmas(baseQuery, pragmas);
|
25
|
+
expect(result).toBe('PRAGMA OrderedColumns;\n\nselect * from `test-table` limit 101');
|
26
|
+
});
|
27
|
+
});
|
28
|
+
//# sourceMappingURL=TablePreview.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TablePreview.test.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Query/Preview/components/TablePreview.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAElF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC/C,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,SAAS,GAAG,sCAAsC,CAAC;QACzD,MAAM,OAAO,GAAG,wBAAwB,CAAC;QAEzC,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,SAAS,GAAG,sCAAsC,CAAC;QACzD,MAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,SAAS,GAAG,sCAAsC,CAAC;QACzD,MAAM,OAAO,GAAG,gDAAgD,CAAC;QAEjE,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CACf,wFAAwF,CAC3F,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,SAAS,GAAG,sCAAsC,CAAC;QACzD,MAAM,OAAO,GAAG,uBAAuB,CAAC;QAExC,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -11,6 +11,7 @@ import { cn } from '../../utils/cn';
|
|
11
11
|
import { DEFAULT_IS_TENANT_SUMMARY_COLLAPSED, DEFAULT_SIZE_TENANT_KEY } from '../../utils/constants';
|
12
12
|
import { useTypedDispatch, useTypedSelector } from '../../utils/hooks';
|
13
13
|
import { isAccessError } from '../../utils/response';
|
14
|
+
import { useAppTitle } from '../App/AppTitleContext';
|
14
15
|
import ObjectGeneral from './ObjectGeneral/ObjectGeneral';
|
15
16
|
import { ObjectSummary } from './ObjectSummary/ObjectSummary';
|
16
17
|
import { TenantContextProvider } from './TenantContext';
|
@@ -72,6 +73,7 @@ export function Tenant(props) {
|
|
72
73
|
setInitialLoading(false);
|
73
74
|
}
|
74
75
|
const title = path || i18n('page.title');
|
75
|
-
|
76
|
+
const { appTitle } = useAppTitle();
|
77
|
+
return (_jsxs("div", { className: b(), children: [_jsx(Helmet, { defaultTitle: `${title} — ${appTitle}`, titleTemplate: `%s — ${title} — ${appTitle}` }), _jsx(LoaderWrapper, { loading: initialLoading, children: _jsx(PageError, { error: showBlockingError ? error : undefined, children: _jsx(TenantContextProvider, { database: database, path: path, type: currentPathType, subType: currentPathSubType, children: _jsx(TenantDrawerWrapper, { children: _jsxs(SplitPane, { defaultSizePaneKey: DEFAULT_SIZE_TENANT_KEY, defaultSizes: [25, 75], triggerCollapse: summaryVisibilityState.triggerCollapse, triggerExpand: summaryVisibilityState.triggerExpand, minSize: [36, 200], onSplitStartDragAdditional: onSplitStartDragAdditional, children: [_jsx(ObjectSummary, { onCollapseSummary: onCollapseSummaryHandler, onExpandSummary: onExpandSummaryHandler, isCollapsed: summaryVisibilityState.collapsed }), _jsx("div", { className: b('main'), children: _jsx(ObjectGeneral, { additionalTenantProps: props.additionalTenantProps, additionalNodesProps: props.additionalNodesProps }) })] }) }) }) }) })] }));
|
76
78
|
}
|
77
79
|
//# sourceMappingURL=Tenant.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Tenant.js","sourceRoot":"","sources":["../../../src/containers/Tenant/Tenant.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAE1C,OAAO,EAAC,SAAS,EAAC,MAAM,6CAA6C,CAAC;AACtE,OAAO,EAAC,aAAa,EAAC,MAAM,8CAA8C,CAAC;AAC3E,OAAO,SAAS,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAC,oBAAoB,EAAC,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAC,WAAW,EAAC,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAC,sBAAsB,EAAC,MAAM,oCAAoC,CAAC;AAE1E,OAAO,EAAC,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAC,mCAAmC,EAAE,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAEnD,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAC,qBAAqB,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAC3D,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACH,yBAAyB,EACzB,kCAAkC,GACrC,MAAM,qCAAqC,CAAC;AAE7C,OAAO,eAAe,CAAC;AAEvB,MAAM,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,qBAAqB,GAAG,GAAG,EAAE;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC,CAAC;IAErF,OAAO;QACH,aAAa,EAAE,KAAK;QACpB,eAAe,EAAE,KAAK;QACtB,SAAS;KACZ,CAAC;AACN,CAAC,CAAC;AAOF,sCAAsC;AACtC,MAAM,UAAU,MAAM,CAAC,KAAkB;;IACrC,MAAM,CAAC,sBAAsB,EAAE,+BAA+B,CAAC,GAAG,KAAK,CAAC,UAAU,CAC9E,kCAAkC,CAAC,mCAAmC,CAAC,EACvE,SAAS,EACT,qBAAqB,CACxB,CAAC;IAEF,MAAM,EAAC,QAAQ,EAAE,MAAM,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAElD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,EAAU,CAAC;IAC9C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,cAAc,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;gBACxB,MAAM,EAAC,iCAAiC,EAAC,GAAG,MAAM,MAAM,CACpD,mDAAmD,CACtD,CAAC;gBACF,iCAAiC,CAAC,QAAQ,CAAC,CAAC;YAChD,CAAC,CAAC;YACF,QAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,cAAc,CAAC,OAAO,GAAG,QAAQ,CAAC;QACtC,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,EAAE,EAAC,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC,CAAC;IACrE,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,QAAQ,CAAC;IAEhC,MAAM,EACF,WAAW,EAAE,WAAW,EACxB,KAAK,EACL,SAAS,GACZ,GAAG,WAAW,CAAC,mBAAmB,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;IAEhE,MAAM,aAAa,GAAG,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7C,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAChD,CAAC;IAEF,0DAA0D;IAC1D,MAAM,eAAe,GACjB,MAAA,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,eAAe,0CAAE,IAAI,0CAAE,QAAQ,mCAC5C,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,eAAe,0CAAE,IAAI,0CAAE,QAAQ,CAAC;IACnD,MAAM,kBAAkB,GACpB,MAAA,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,eAAe,0CAAE,IAAI,0CAAE,WAAW,mCAC/C,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,eAAe,0CAAE,IAAI,0CAAE,WAAW,CAAC;IAEtD,MAAM,iBAAiB,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAE/C,MAAM,wBAAwB,GAAG,GAAG,EAAE;QAClC,+BAA+B,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC;IAC/E,CAAC,CAAC;IACF,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAChC,+BAA+B,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAC7E,CAAC,CAAC;IAEF,MAAM,0BAA0B,GAAG,GAAG,EAAE;QACpC,+BAA+B,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACrE,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjE,IAAI,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;IACzC,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,EAAE,aACf,KAAC,MAAM,IACH,YAAY,EAAE,GAAG,KAAK,
|
1
|
+
{"version":3,"file":"Tenant.js","sourceRoot":"","sources":["../../../src/containers/Tenant/Tenant.tsx"],"names":[],"mappings":"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"}
|