]> Untitled Git - lemmy-ui.git/blob - src/shared/components/app/footer.tsx
cf3c4de52766dcc4bc0c38f052d6bcfef9aef225
[lemmy-ui.git] / src / shared / components / app / footer.tsx
1 import { Component } from "inferno";
2 import { NavLink } from "inferno-router";
3 import { GetSiteResponse } from "lemmy-js-client";
4 import { i18n } from "../../i18next";
5 import { docsUrl, joinLemmyUrl, repoUrl } from "../../utils";
6 import { VERSION } from "../../version";
7
8 interface FooterProps {
9   site?: GetSiteResponse;
10 }
11
12 export class Footer extends Component<FooterProps, any> {
13   constructor(props: any, context: any) {
14     super(props, context);
15   }
16
17   render() {
18     return (
19       <footer className="container-lg navbar navbar-expand-md navbar-light navbar-bg p-3">
20         <div className="navbar-collapse">
21           <ul className="navbar-nav ms-auto">
22             {this.props.site?.version !== VERSION && (
23               <li className="nav-item">
24                 <span className="nav-link">UI: {VERSION}</span>
25               </li>
26             )}
27             <li className="nav-item">
28               <span className="nav-link">BE: {this.props.site?.version}</span>
29             </li>
30             <li className="nav-item">
31               <NavLink className="nav-link" to="/modlog">
32                 {i18n.t("modlog")}
33               </NavLink>
34             </li>
35             {this.props.site?.site_view.local_site.legal_information && (
36               <li className="nav-item">
37                 <NavLink className="nav-link" to="/legal">
38                   {i18n.t("legal_information")}
39                 </NavLink>
40               </li>
41             )}
42             {this.props.site?.site_view.local_site.federation_enabled && (
43               <li className="nav-item">
44                 <NavLink className="nav-link" to="/instances">
45                   {i18n.t("instances")}
46                 </NavLink>
47               </li>
48             )}
49             <li className="nav-item">
50               <a className="nav-link" href={docsUrl}>
51                 {i18n.t("docs")}
52               </a>
53             </li>
54             <li className="nav-item">
55               <a className="nav-link" href={repoUrl}>
56                 {i18n.t("code")}
57               </a>
58             </li>
59             <li className="nav-item">
60               <a className="nav-link" href={joinLemmyUrl}>
61                 {i18n.t("join_lemmy")}
62               </a>
63             </li>
64           </ul>
65         </div>
66       </footer>
67     );
68   }
69 }