]> Untitled Git - lemmy-ui.git/blob - src/shared/components/app/theme.tsx
e048046c63473847d27cdcec7d5adcc883c9633d
[lemmy-ui.git] / src / shared / components / app / theme.tsx
1 import { Component } from "inferno";
2 import { Helmet } from "inferno-helmet";
3 import { MyUserInfo, Site } from "lemmy-js-client";
4
5 interface Props {
6   myUserInfo: MyUserInfo | undefined;
7   site: Site;
8 }
9
10 export class Theme extends Component<Props> {
11   render() {
12     let user = this.props.myUserInfo;
13     let hasTheme = user && user.local_user_view.local_user.theme !== "browser";
14
15     return (
16       <Helmet>
17         {hasTheme ? (
18           <link
19             rel="stylesheet"
20             type="text/css"
21             href={`/static/assets/css/themes/${user.local_user_view.local_user.theme}.min.css`}
22           />
23         ) : (
24           <link
25             rel="stylesheet"
26             type="text/css"
27             href={`/static/assets/css/themes/${this.props.site.default_theme}.min.css`}
28           />
29         )}
30       </Helmet>
31     );
32   }
33 }