]> Untitled Git - lemmy-ui.git/blob - src/shared/components/home/legal.tsx
15bea9b5b312522ab35d1bcaa977147efe366806
[lemmy-ui.git] / src / shared / components / home / legal.tsx
1 import { Component } from "inferno";
2 import { GetSiteResponse } from "lemmy-js-client";
3 import { i18n } from "../../i18next";
4 import { mdToHtml, setIsoData } from "../../utils";
5 import { HtmlTags } from "../common/html-tags";
6
7 interface LegalState {
8   siteRes: GetSiteResponse;
9 }
10
11 export class Legal extends Component<any, LegalState> {
12   private isoData = setIsoData(this.context);
13   state: LegalState = {
14     siteRes: this.isoData.site_res,
15   };
16
17   constructor(props: any, context: any) {
18     super(props, context);
19   }
20
21   get documentTitle(): string {
22     return i18n.t("legal_information");
23   }
24
25   render() {
26     const legal = this.state.siteRes.site_view.local_site.legal_information;
27     return (
28       <div className="container-lg">
29         <HtmlTags
30           title={this.documentTitle}
31           path={this.context.router.route.match.url}
32         />
33         {legal && (
34           <div className="md-div" dangerouslySetInnerHTML={mdToHtml(legal)} />
35         )}
36       </div>
37     );
38   }
39 }