Skip to content

Commit 64af24f

Browse files
committed
fix(Header): add link to internal viewer
1 parent 3f8fa98 commit 64af24f

File tree

2 files changed

+40
-6
lines changed

2 files changed

+40
-6
lines changed

src/containers/Header/Header.scss

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,16 @@
2525
font-size: var(--yc-text-body2-font-size);
2626
font-weight: 500;
2727
}
28+
29+
&__cluster-name-wrapper {
30+
display: flex;
31+
align-items: center;
32+
33+
height: 100%;
34+
gap: 5px;
35+
}
36+
37+
&__divider {
38+
height: 80%;
39+
}
2840
}

src/containers/Header/Header.tsx

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
1-
import {useEffect} from 'react';
1+
import React, {useEffect} from 'react';
22
import {useDispatch, useSelector} from 'react-redux';
33
import cn from 'bem-cn-lite';
44
import {useHistory, useLocation} from 'react-router';
5+
import {Breadcrumbs, BreadcrumbsItem, Link} from '@yandex-cloud/uikit';
56

6-
import {clusterName as clusterNameLocation} from '../../store';
7+
import Divider from '../../components/Divider/Divider';
8+
//@ts-ignore
9+
import Icon from '../../components/Icon/Icon';
10+
11+
import {clusterName as clusterNameLocation, backend, customBackend} from '../../store';
712
import {getClusterInfo} from '../../store/reducers/cluster';
813
import {getHostInfo} from '../../store/reducers/host';
14+
import {HeaderItemType} from '../../store/reducers/header';
915

1016
import './Header.scss';
11-
import {Breadcrumbs, BreadcrumbsItem} from '@yandex-cloud/uikit';
12-
import {HeaderItemType} from '../../store/reducers/header';
1317

1418
const b = cn('header');
1519

@@ -49,6 +53,12 @@ function Header() {
4953
const renderHeader = () => {
5054
const clusterNameFinal = singleClusterMode ? host.ClusterName : clusterName;
5155

56+
let link = backend + '/internal';
57+
58+
if (singleClusterMode && !customBackend) {
59+
link = `/internal`;
60+
}
61+
5262
const breadcrumbItems = header.reduce((acc, el) => {
5363
acc.push({text: el.text, action: () => history.push(el.link)});
5464
return acc;
@@ -63,8 +73,20 @@ function Header() {
6373
firstDisplayedItemsCount={1}
6474
/>
6575
</div>
66-
<div>
67-
{clusterNameFinal && <ClusterName name={clusterNameFinal} />}
76+
77+
<div className={b('cluster-name-wrapper')}>
78+
<Link href={link} target="_blank">
79+
Internal viewer{' '}
80+
<Icon name="external" viewBox={'0 0 16 16'} width={16} height={16} />
81+
</Link>
82+
{clusterNameFinal && (
83+
<React.Fragment>
84+
<div className={b('divider')}>
85+
<Divider />
86+
</div>
87+
<ClusterName name={clusterNameFinal} />
88+
</React.Fragment>
89+
)}
6890
</div>
6991
</header>
7092
);

0 commit comments

Comments
 (0)