Skip to content

Commit cc645d6

Browse files
authored
Merge branch 'main' into astandrik.very-bad-performance-1472
2 parents 05a3271 + 482d37d commit cc645d6

File tree

31 files changed

+347
-189
lines changed

31 files changed

+347
-189
lines changed

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,24 @@
11
# Changelog
22

3+
## [6.28.0](https://github.com/ydb-platform/ydb-embedded-ui/compare/v6.27.1...v6.28.0) (2024-10-23)
4+
5+
6+
### Features
7+
8+
* add developer ui links to disks popups ([#1512](https://github.com/ydb-platform/ydb-embedded-ui/issues/1512)) ([57d2092](https://github.com/ydb-platform/ydb-embedded-ui/commit/57d20927839b4a11b7f24b57f7d3cf9b7549fb0f))
9+
10+
11+
### Bug Fixes
12+
13+
* **Cluster:** handle cluster error in meta requests ([#1525](https://github.com/ydb-platform/ydb-embedded-ui/issues/1525)) ([71b254e](https://github.com/ydb-platform/ydb-embedded-ui/commit/71b254ec73ae492d722f8a720cda4e1de714e286))
14+
* correct width for columns with ProgressViewer ([#1522](https://github.com/ydb-platform/ydb-embedded-ui/issues/1522)) ([e27749a](https://github.com/ydb-platform/ydb-embedded-ui/commit/e27749af04d9230edd8cd24f5e3a59d968d87dcf))
15+
* **EntityStatus:** remove additionalControls, fix ClipboardButton layout ([#1524](https://github.com/ydb-platform/ydb-embedded-ui/issues/1524)) ([ea4d3a9](https://github.com/ydb-platform/ydb-embedded-ui/commit/ea4d3a95ffe99c8380f0a8971ff41f9b9b534aa7))
16+
* fields required in all groups and nodes requests ([#1515](https://github.com/ydb-platform/ydb-embedded-ui/issues/1515)) ([a9f79a3](https://github.com/ydb-platform/ydb-embedded-ui/commit/a9f79a31ced8a642dabd6231df4e810e1f14eaa3))
17+
* operations kind button width ([#1521](https://github.com/ydb-platform/ydb-embedded-ui/issues/1521)) ([980d4fa](https://github.com/ydb-platform/ydb-embedded-ui/commit/980d4facf842eb2f64275afaf925e6dde309c0fe))
18+
* replace EntityStatus with StatusIcon where possible ([#1518](https://github.com/ydb-platform/ydb-embedded-ui/issues/1518)) ([017c82a](https://github.com/ydb-platform/ydb-embedded-ui/commit/017c82a54fac97c2e62422ac971f615f39434d84))
19+
* **Storage:** display unavailable vdisks with average size ([#1511](https://github.com/ydb-platform/ydb-embedded-ui/issues/1511)) ([1868e18](https://github.com/ydb-platform/ydb-embedded-ui/commit/1868e182bd88fec178b400f32219f80f1cee1c02))
20+
* update license ([#1516](https://github.com/ydb-platform/ydb-embedded-ui/issues/1516)) ([cabcb5c](https://github.com/ydb-platform/ydb-embedded-ui/commit/cabcb5c89b0fa50ea4fdb2018eff39091d1b440f))
21+
322
## [6.27.1](https://github.com/ydb-platform/ydb-embedded-ui/compare/v6.27.0...v6.27.1) (2024-10-22)
423

524

package-lock.json

Lines changed: 21 additions & 21 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ydb-embedded-ui",
3-
"version": "6.27.1",
3+
"version": "6.28.0",
44
"files": [
55
"dist"
66
],
@@ -22,7 +22,7 @@
2222
"@gravity-ui/paranoid": "^2.0.1",
2323
"@gravity-ui/react-data-table": "^2.1.1",
2424
"@gravity-ui/table": "^0.5.0",
25-
"@gravity-ui/uikit": "^6.20.1",
25+
"@gravity-ui/uikit": "^6.33.0",
2626
"@gravity-ui/websql-autocomplete": "^9.1.0",
2727
"@hookform/resolvers": "^3.9.0",
2828
"@reduxjs/toolkit": "^2.2.3",

src/components/EntityStatus/EntityStatus.scss

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
@import '../../styles/mixins.scss';
22

33
.entity-status {
4+
--button-width: 28px;
45
position: relative;
56

67
display: inline-flex;
78
align-items: center;
89

9-
min-width: 90px;
1010
max-width: 100%;
1111
height: 100%;
1212

@@ -20,6 +20,18 @@
2020
color: var(--g-color-text-secondary);
2121

2222
@include table-hover-appearing-button();
23+
24+
&_visible {
25+
opacity: 1;
26+
}
27+
}
28+
29+
&__wrapper {
30+
position: relative;
31+
32+
overflow: hidden;
33+
34+
padding-right: var(--button-width);
2335
}
2436

2537
&__controls-wrapper {
@@ -34,13 +46,18 @@
3446
width: 0;
3547
height: 100%;
3648

37-
background-color: var(--g-color-base-float);
49+
&_visible {
50+
width: min-content;
51+
padding: var(--g-spacing-1);
52+
}
3853

3954
.data-table__row:hover &,
4055
.ydb-paginated-table__row:hover &,
4156
.ydb-tree-view__item & {
4257
width: min-content;
4358
padding: var(--g-spacing-1);
59+
60+
background-color: var(--g-color-base-float);
4461
}
4562
}
4663

@@ -57,13 +74,18 @@
5774
}
5875

5976
&__link {
77+
display: inline-block;
6078
overflow: hidden;
6179

80+
width: calc(100% + var(--button-width));
81+
margin-top: 5px;
82+
6283
white-space: nowrap;
6384
text-overflow: ellipsis;
6485
}
6586

6687
&__link_with-left-trim {
88+
text-align: end;
6789
direction: rtl;
6890

6991
.entity-status__name {

src/components/EntityStatus/EntityStatus.tsx

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ interface EntityStatusProps {
2828
clipboardButtonAlwaysVisible?: boolean;
2929

3030
className?: string;
31-
32-
additionalControls?: React.ReactNode;
3331
}
3432

3533
export function EntityStatus({
@@ -50,8 +48,6 @@ export function EntityStatus({
5048
clipboardButtonAlwaysVisible = false,
5149

5250
className,
53-
54-
additionalControls,
5551
}: EntityStatusProps) {
5652
const renderIcon = () => {
5753
if (!showStatus) {
@@ -93,22 +89,29 @@ export function EntityStatus({
9389
{label}
9490
</span>
9591
)}
96-
<span className={b('link', {'with-left-trim': withLeftTrim})}>{renderLink()}</span>
97-
<div className={b('controls-wrapper')}>
98-
{hasClipboardButton && (
99-
<ClipboardButton
100-
text={name}
101-
size="xs"
102-
view="normal"
103-
className={b('clipboard-button', {
104-
visible: clipboardButtonAlwaysVisible,
105-
})}
106-
/>
107-
)}
108-
{additionalControls && (
109-
<span className={b('additional-controls')}>{additionalControls}</span>
110-
)}
111-
</div>
92+
{(path || name) && (
93+
<div className={b('wrapper')}>
94+
<span className={b('link', {'with-left-trim': withLeftTrim})}>
95+
{renderLink()}
96+
</span>
97+
{hasClipboardButton && (
98+
<div
99+
className={b('controls-wrapper', {
100+
visible: clipboardButtonAlwaysVisible,
101+
})}
102+
>
103+
<ClipboardButton
104+
text={name}
105+
size="xs"
106+
view="normal"
107+
className={b('clipboard-button', {
108+
visible: clipboardButtonAlwaysVisible,
109+
})}
110+
/>
111+
</div>
112+
)}
113+
</div>
114+
)}
112115
</div>
113116
);
114117
}

src/components/MonitoringButton/MonitoringButton.scss

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/components/MonitoringButton/MonitoringButton.tsx

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,20 @@
11
import type {ButtonSize} from '@gravity-ui/uikit';
22
import {Button, Icon} from '@gravity-ui/uikit';
33

4-
import {cn} from '../../utils/cn';
5-
64
import monitoringIcon from '../../assets/icons/monitoring.svg';
75

8-
import './MonitoringButton.scss';
9-
10-
const b = cn('kv-monitoring-button');
11-
126
interface MonitoringButtonProps {
137
className?: string;
14-
visible?: boolean;
158
href: string;
169
size?: ButtonSize;
1710
}
1811

19-
export function MonitoringButton({
20-
href,
21-
visible = false,
22-
className,
23-
size = 's',
24-
}: MonitoringButtonProps) {
12+
export function MonitoringButton({href, className, size = 'xs'}: MonitoringButtonProps) {
2513
return (
2614
<Button
2715
href={href}
2816
target="_blank"
29-
className={b({visible}, className)}
17+
className={className}
3018
size={size}
3119
title="Monitoring dashboard"
3220
>

src/components/NodeHostWrapper/NodeHostWrapper.tsx

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import type {TSystemStateInfo} from '../../types/api/nodes';
66
import {createDeveloperUILinkWithNodeId} from '../../utils/developerUI/developerUI';
77
import {isUnavailableNode} from '../../utils/nodes';
88
import {CellWithPopover} from '../CellWithPopover/CellWithPopover';
9-
import {DeveloperUILinkButton} from '../DeveloperUILinkButton/DeveloperUILinkButton';
109
import {EntityStatus} from '../EntityStatus/EntityStatus';
1110
import {NodeEndpointsTooltipContent} from '../TooltipsContent';
1211

@@ -42,14 +41,10 @@ export const NodeHostWrapper = ({node, getNodeRef, database}: NodeHostWrapperPro
4241
})
4342
: undefined;
4443

45-
const additionalControls = nodeHref ? (
46-
<DeveloperUILinkButton href={nodeHref} size="xs" />
47-
) : null;
48-
4944
return (
5045
<CellWithPopover
5146
disabled={!isNodeAvailable}
52-
content={<NodeEndpointsTooltipContent data={node} />}
47+
content={<NodeEndpointsTooltipContent data={node} nodeHref={nodeHref} />}
5348
placement={['top', 'bottom']}
5449
behavior={PopoverBehavior.Immediate}
5550
>
@@ -58,7 +53,6 @@ export const NodeHostWrapper = ({node, getNodeRef, database}: NodeHostWrapperPro
5853
status={node.SystemState}
5954
path={nodePath}
6055
hasClipboardButton
61-
additionalControls={additionalControls}
6256
/>
6357
</CellWithPopover>
6458
);

0 commit comments

Comments
 (0)