Skip to content

Commit 1846911

Browse files
committed
refactor: migrate MobileHeader and related components to tailwind
1 parent dba15bb commit 1846911

File tree

2 files changed

+16
-69
lines changed

2 files changed

+16
-69
lines changed
Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,14 @@
11
import React, { useContext, useMemo, useRef } from "react";
2-
import styled, { css } from "styled-components";
32

43
import { useClickAway, useToggle } from "react-use";
54

65
import HamburgerIcon from "svgs/header/hamburger.svg";
76

8-
import { landscapeStyle } from "styles/landscapeStyle";
9-
107
import LightButton from "components/LightButton";
118

129
import Logo from "./Logo";
1310
import NavBar from "./navbar";
1411

15-
const Container = styled.div`
16-
display: flex;
17-
align-items: center;
18-
justify-content: space-between;
19-
width: 100%;
20-
height: 64px;
21-
22-
${landscapeStyle(
23-
() => css`
24-
display: none;
25-
`
26-
)}
27-
`;
28-
29-
const StyledLightButton = styled(LightButton)`
30-
padding: 0 !important;
31-
32-
.button-svg {
33-
margin-right: 0px;
34-
}
35-
`;
36-
3712
const OpenContext = React.createContext({
3813
isOpen: false,
3914
toggleIsOpen: () => {
@@ -51,13 +26,13 @@ const MobileHeader = () => {
5126
useClickAway(containerRef, () => toggleIsOpen(false));
5227
const memoizedContext = useMemo(() => ({ isOpen, toggleIsOpen }), [isOpen, toggleIsOpen]);
5328
return (
54-
<Container ref={containerRef}>
29+
<div ref={containerRef} className="flex items-center justify-between w-full h-16 landscape-900:hidden">
5530
<OpenContext.Provider value={memoizedContext}>
5631
<Logo />
5732
<NavBar />
58-
<StyledLightButton text="" Icon={HamburgerIcon} onClick={toggleIsOpen} />
33+
<LightButton className="p-0 [&_.button-svg]:mr-0" text="" Icon={HamburgerIcon} onClick={toggleIsOpen} />
5934
</OpenContext.Provider>
60-
</Container>
35+
</div>
6136
);
6237
};
6338
export default MobileHeader;

web/src/layout/Header/navbar/index.tsx

Lines changed: 13 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -16,41 +16,6 @@ import Help from "./Menu/Help";
1616
import Settings from "./Menu/Settings";
1717
import { DisconnectWalletButton } from "./Menu/Settings/General";
1818

19-
const Container = styled.div<{ isOpen: boolean }>`
20-
position: absolute;
21-
top: 64px;
22-
left: 0;
23-
right: 0;
24-
max-height: calc(100vh - 64px);
25-
overflow-y: auto;
26-
z-index: 1;
27-
background-color: ${({ theme }) => theme.whiteBackground};
28-
box-shadow: 0px 2px 3px ${({ theme }) => theme.defaultShadow};
29-
transform-origin: top;
30-
transform: scaleY(${({ isOpen }) => (isOpen ? "1" : "0")});
31-
visibility: ${({ isOpen }) => (isOpen ? "visible" : "hidden")};
32-
transition-property: transform, visibility;
33-
transition-duration: ${({ theme }) => theme.transitionSpeed};
34-
transition-timing-function: ease;
35-
padding: 24px;
36-
37-
hr {
38-
margin: 24px 0;
39-
}
40-
`;
41-
42-
const WalletContainer = styled.div`
43-
display: flex;
44-
gap: 16px;
45-
justify-content: space-between;
46-
flex-wrap: wrap;
47-
`;
48-
49-
const DisconnectWalletButtonContainer = styled.div`
50-
display: flex;
51-
align-items: center;
52-
`;
53-
5419
export interface ISettings {
5520
toggleIsSettingsOpen: () => void;
5621
}
@@ -73,7 +38,14 @@ const NavBar: React.FC = () => {
7338

7439
return (
7540
<>
76-
<Container {...{ isOpen }}>
41+
<div
42+
className={
43+
"absolute top-16 left-0 right-0 max-h-[calc(100vh-64px)] overflow-y-auto z-1 bg-klerosUIComponentsWhiteBackground shadow-default p-6 [&_hr]:my-6 " +
44+
`origin-top transform-${isOpen ? "scaleY(1)" : "scaleY(0)"} visibility-${
45+
isOpen ? "visible" : "hidden"
46+
} transition-[transform,visibility] duration-[klerosUIComponentsTransitionSpeed] ease-in-out`
47+
}
48+
>
7749
<LightButton
7850
text="Kleros Solutions"
7951
onClick={() => {
@@ -84,18 +56,18 @@ const NavBar: React.FC = () => {
8456
<hr />
8557
<Explore isMobileNavbar={true} />
8658
<hr />
87-
<WalletContainer>
59+
<div className="flex gap-4 justify-between flex-wrap">
8860
<ConnectWallet />
8961
{isConnected && (
90-
<DisconnectWalletButtonContainer>
62+
<div className="flex items-center">
9163
<DisconnectWalletButton />
92-
</DisconnectWalletButtonContainer>
64+
</div>
9365
)}
94-
</WalletContainer>
66+
</div>
9567
<hr />
9668
<Menu {...{ toggleIsHelpOpen, toggleIsSettingsOpen }} />
9769
<br />
98-
</Container>
70+
</div>
9971
{(isDappListOpen || isHelpOpen || isSettingsOpen) && (
10072
<OverlayPortal>
10173
<Overlay>

0 commit comments

Comments
 (0)