Skip to content

Commit 0f7a212

Browse files
author
berdysheva
committed
fix: navigation button
1 parent d133ebf commit 0f7a212

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

src/components/navigation/components/Logo/Logo.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
&__icon {
1313
display: flex;
14-
height: 36px;
1514
margin-right: $indentXXXS;
1615

1716
object-fit: contain;

src/components/navigation/components/Logo/Logo.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ const Logo: React.FC<LogoProps> = ({icon, text, className}) => {
2020
return (
2121
<RouterLink href="/" passHref>
2222
<div className={b(null, className)}>
23-
{imageData && <Image {...imageData} />}
23+
{imageData && <Image className={b('icon')} {...imageData} />}
2424
<span className={b('text')}>{text}</span>
2525
</div>
2626
</RouterLink>

src/components/navigation/components/NavigationItem/NavigationItem.tsx

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import React, {Fragment, MouseEventHandler, useContext, useMemo} from 'react';
22
import block from 'bem-cn-lite';
33

4-
import {RouterLink, ToggleArrow} from '../../../index';
4+
import {RouterLink, ToggleArrow, Button, Image} from '../../../index';
55
import {getLinkProps} from '../../../../utils';
66
import {LocationContext} from '../../../../context/locationContext';
77
import {
@@ -10,13 +10,14 @@ import {
1010
NavigationItemType,
1111
NavigationSocialItem,
1212
NavigationLinkItem,
13-
} from '../../../../models/navigation';
13+
ImageProps,
14+
ButtonProps,
15+
} from '../../../../models';
1416
import {NavigationArrow} from '../../../../icons';
1517
import SocialIcon from '../SocialIcon/SocialIcon';
1618
import {getMediaImage} from '../../../Media/Image/utils';
1719

1820
import './NavigationItem.scss';
19-
import {ImageProps} from '../../../../models';
2021

2122
const b = block('navigation-item');
2223

@@ -37,7 +38,7 @@ export interface NavigationItemProps {
3738

3839
const Content: React.FC<{text: string; icon?: ImageProps}> = ({text, icon}) => (
3940
<Fragment>
40-
{icon && <img className={b('icon')} {...icon} />}
41+
{icon && <Image className={b('icon')} {...icon} />}
4142
<span className={b('text')}>{text}</span>
4243
</Fragment>
4344
);
@@ -92,10 +93,21 @@ const NavigationLink: React.FC<NavigationLinkProps> = (props) => {
9293
);
9394
};
9495

96+
const NavigationButton: React.FC<ButtonProps> = (props) => {
97+
const {url, target} = props;
98+
return target ? (
99+
<Button {...props} url={url} />
100+
) : (
101+
<RouterLink href={url}>
102+
<Button {...props} url={url} />
103+
</RouterLink>
104+
);
105+
};
106+
95107
//todo: add types support form component in map
96108
// eslint-disable-next-line @typescript-eslint/no-explicit-any
97109
const NavigationItemsMap: Record<NavigationItemType, React.ComponentType<any>> = {
98-
[NavigationItemType.Button]: RouterLink,
110+
[NavigationItemType.Button]: NavigationButton,
99111
[NavigationItemType.Social]: SocialIcon,
100112
[NavigationItemType.Dropdown]: NavigationDropdown,
101113
[NavigationItemType.Link]: NavigationLink,

0 commit comments

Comments
 (0)