/* Copyright 2019-2024 New Vector Ltd. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial Please see LICENSE files in the repository root for full details. */ import React from "react"; import classNames from "classnames"; import { type EmptyObject } from "matrix-js-sdk/src/matrix"; import SdkConfig from "../../../SdkConfig"; import AuthPage from "./AuthPage"; import SettingsStore from "../../../settings/SettingsStore"; import { UIFeature } from "../../../settings/UIFeature"; import LanguageSelector from "./LanguageSelector"; import EmbeddedPage from "../../structures/EmbeddedPage"; import { MATRIX_LOGO_HTML } from "../../structures/static-page-vars"; export default class Welcome extends React.PureComponent { public render(): React.ReactNode { const pagesConfig = SdkConfig.getObject("embedded_pages"); let pageUrl: string | undefined; if (pagesConfig) { pageUrl = pagesConfig.get("welcome_url"); } const replaceMap: Record = { "$brand": SdkConfig.get("brand"), "$riot:ssoUrl": "#/start_sso", "$riot:casUrl": "#/start_cas", "$matrixLogo": MATRIX_LOGO_HTML, "[matrix]": MATRIX_LOGO_HTML, }; if (!pageUrl) { // Fall back to default and replace $logoUrl in welcome.html const brandingConfig = SdkConfig.getObject("branding"); const logoUrl = brandingConfig?.get("auth_header_logo_url") ?? "themes/element/img/logos/element-logo.svg"; replaceMap["$logoUrl"] = logoUrl; pageUrl = "welcome.html"; } return (
); } }