Skip to content

Commit 664b03f

Browse files
committed
feat: convert footer links into icons
1 parent d9c40a2 commit 664b03f

File tree

2 files changed

+62
-0
lines changed

2 files changed

+62
-0
lines changed

src/css/footer.css

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
.footer {
2+
padding: var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal);
3+
background-color: var(--ifm-footer-background-color);
4+
color: var(--ifm-footer-color);
5+
display: flex;
6+
flex-direction: column;
7+
align-items: center;
8+
}
9+
10+
.footer a {
11+
color: var(--ifm-footer-link-color);
12+
line-height: 2;
13+
}
14+
15+
.footer p {
16+
color: var(--ifm-footer-link-color);
17+
line-height: 2;
18+
}
19+
20+
.footer a:hover {
21+
color: var(--ifm-footer-link-hover-color);
22+
}
23+
24+
.linkContainer {
25+
display: flex;
26+
justify-content: center;
27+
gap: 15px;
28+
margin-bottom: 10px;
29+
}

src/theme/Footer/index.js

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import React from "react";
2+
import { FaHome, FaFacebook, FaYoutube } from "react-icons/fa";
3+
import "@site/src/css/footer.css";
4+
import siteConfig from "@generated/docusaurus.config";
5+
6+
const iconMap = {
7+
Home: <FaHome size={24} />,
8+
Facebook: <FaFacebook size={24} />,
9+
Youtube: <FaYoutube size={24} />,
10+
};
11+
12+
const Link = ({ key, href, label }) => (
13+
<a key={key} href={href} target="_blank" rel="noopener noreferrer" className="footer-link-item">
14+
{iconMap[label] || label}
15+
</a>
16+
);
17+
18+
export default function FooterWrapper() {
19+
const items = siteConfig.themeConfig.footer.links[0].items;
20+
return (
21+
<footer className={"footer"}>
22+
<div>
23+
<h4>Community</h4>
24+
</div>
25+
<div className={"linkContainer"}>
26+
{items.map((item) => (
27+
<Link key={item.label} href={item.href} label={item.label} />
28+
))}
29+
</div>
30+
<p>Copyright © {new Date().getFullYear()} eStream Software</p>
31+
</footer>
32+
);
33+
}

0 commit comments

Comments
 (0)