1 import { setIsoData } from "@utils/app";
2 import { Component } from "inferno";
3 import { T } from "inferno-i18next-dess";
4 import { Link } from "inferno-router";
5 import { i18n } from "../../i18next";
6 import { IsoDataOptionalSite } from "../../interfaces";
8 export class ErrorPage extends Component<any, any> {
9 private isoData: IsoDataOptionalSite = setIsoData(this.context);
11 constructor(props: any, context: any) {
12 super(props, context);
16 const { errorPageData } = this.isoData;
19 <div className="error-page container-lg text-center">
22 ? i18n.t("error_page_title")
23 : i18n.t("not_found_page_title")}
26 <T i18nKey="error_page_paragraph" className="p-4" parent="p">
27 #<a href="https://lemmy.ml/c/lemmy_support">#</a>#
28 <a href="https://matrix.to/#/#lemmy-space:matrix.org">#</a>#
31 <p>{i18n.t("not_found_page_message")}</p>
35 {i18n.t("not_found_return_home_button")}
38 {errorPageData?.adminMatrixIds &&
39 errorPageData.adminMatrixIds.length > 0 && (
42 {i18n.t("error_page_admin_matrix", {
44 this.isoData.site_res?.site_view.site.name ??
48 <ul className="mx-auto mt-2" style={{ width: "fit-content" }}>
49 {errorPageData.adminMatrixIds.map(matrixId => (
50 <li key={matrixId} className="text-info">
57 {errorPageData?.error && (
59 i18nKey="error_code_message"
61 interpolation={{ error: errorPageData.error }}
63 #<strong className="text-danger">#</strong>#