From 59e526e318049f31df5430fdb8be6facb1ea5c13 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 30 Jul 2024 14:16:19 +0100 Subject: [PATCH] Update unsupported browser react component to new designs (#27857) --- docs/config.md | 4 + package.json | 8 +- res/css/structures/ErrorView.pcss | 113 +++---- res/themes/element/img/compound/apple.svg | 3 + .../element/img/compound/fade-arc-light.png | Bin 0 -> 6105 bytes res/themes/element/img/compound/linux.svg | 15 + res/themes/element/img/compound/microsoft.svg | 6 + .../element/img/logos/element-app-logo.png | Bin 0 -> 134672 bytes .../structures/CompatibilityView.tsx | 149 --------- src/async-components/structures/ErrorView.tsx | 205 +++++++++++-- src/i18n/strings/en_EN.json | 22 +- src/vector/init.tsx | 22 +- .../structures/ErrorView-test.tsx | 15 +- .../__snapshots__/ErrorView-test.tsx.snap | 285 +++++++++++++++--- tsconfig.json | 1 + yarn.lock | 182 +++-------- 16 files changed, 564 insertions(+), 466 deletions(-) create mode 100644 res/themes/element/img/compound/apple.svg create mode 100644 res/themes/element/img/compound/fade-arc-light.png create mode 100644 res/themes/element/img/compound/linux.svg create mode 100644 res/themes/element/img/compound/microsoft.svg create mode 100644 res/themes/element/img/logos/element-app-logo.png delete mode 100644 src/async-components/structures/CompatibilityView.tsx diff --git a/docs/config.md b/docs/config.md index 4745ddd07f..fa6ee5b07c 100644 --- a/docs/config.md +++ b/docs/config.md @@ -167,6 +167,10 @@ Starting with `desktop_builds`, the following subproperties are available: 1. `available`: Required. When `true`, the desktop app can be downloaded from somewhere. 2. `logo`: Required. A URL to a logo (SVG), intended to be shown at 24x24 pixels. 3. `url`: Required. The download URL for the app. This is used as a hyperlink. +4. `url_macos`: Optional. Direct link to download macOS desktop app. +5. `url_win32`: Optional. Direct link to download Windows 32-bit desktop app. +6. `url_win64`: Optional. Direct link to download Windows 64-bit desktop app. +7. `url_linux`: Optional. Direct link to download Linux desktop app. When `desktop_builds` is not specified at all, the app will assume desktop downloads are available from https://element.io diff --git a/package.json b/package.json index 6dfb7e5475..cf8908e623 100644 --- a/package.json +++ b/package.json @@ -68,11 +68,17 @@ }, "resolutions": { "@types/react-dom": "17.0.25", - "@types/react": "17.0.80" + "@types/react": "17.0.80", + "@vector-im/compound-design-tokens": "1.7.0", + "@vector-im/compound-web": "5.5.0", + "@floating-ui/react": "0.26.11", + "@radix-ui/react-id": "1.1.0" }, "dependencies": { "@formatjs/intl-segmenter": "^11.5.7", "@matrix-org/react-sdk-module-api": "^2.3.0", + "@vector-im/compound-design-tokens": "^1.6.1", + "@vector-im/compound-web": "^5.5.0", "jsrsasign": "^11.0.0", "katex": "^0.16.0", "lodash": "^4.17.21", diff --git a/res/css/structures/ErrorView.pcss b/res/css/structures/ErrorView.pcss index 704c68c1e9..e76932356a 100644 --- a/res/css/structures/ErrorView.pcss +++ b/res/css/structures/ErrorView.pcss @@ -14,94 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ -/* import font-size variables manually, - ideally this file would get loaded by the theme which has all variables in context */ -@import "../../../node_modules/matrix-react-sdk/res/css/_font-sizes.pcss"; - .mx_ErrorView { - background: #c5e0f7; - background: -moz-linear-gradient(top, #c5e0f7 0%, #ffffff 100%); - background: -webkit-linear-gradient(top, #c5e0f7 0%, #ffffff 100%); - background: linear-gradient(to bottom, #c5e0f7 0%, #ffffff 100%); - /* stylelint-disable-next-line function-no-unknown */ - filter: progid:dximagetransform.microsoft.gradient(startColorstr='#c5e0f7', endColorstr='#ffffff', GradientType=0); + --width: 520px; + --cpd-separator-inset: calc(50% - (var(--width) / 2)); + --cpd-separator-spacing: var(--cpd-space-8x); + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; - color: #000; + text-align: center; + color: var(--cpd-color-text-primary); width: 100%; height: 100%; - overflow: auto; - padding: 0 20px; box-sizing: border-box; + overflow: auto; + padding: var(--cpd-space-20x); + + background-color: var(--cpd-color-theme-bg); + background-image: url("../../themes/element/img/compound/fade-arc-light.png"); + background-repeat: no-repeat; + background-size: 100% 100%; + + .mx_ErrorView_logo { + display: block; + margin: 0 auto; + } .mx_ErrorView_container { - max-width: 680px; - margin: auto; - } - - .mx_Button { - border: 0; - border-radius: 4px; - font-size: $font-18px; - margin-left: 4px; - margin-right: 4px; - min-width: 80px; - background-color: #03b381; - color: #fff; - cursor: pointer; - padding: 12px 22px; - word-break: break-word; - text-decoration: none; - } - - .mx_Center { - justify-content: center; - } - - .mx_HomePage_header { - color: #2e2f32; - display: flex; - align-items: center; - justify-content: center; - } - - font-size: $font-16px; - h1 { - font-size: $font-32px; - } - h2 { - font-size: $font-24px; - color: #000; - } - - .mx_HomePage_col { - display: flex; - flex-direction: row; - } - - .mx_HomePage_row { - flex: 1 1 0; - display: flex; - flex-direction: row; - flex-wrap: wrap; - } - - .mx_HomePage_logo { - margin: auto 20px auto 0; + max-width: var(--width); + margin: 0 auto var(--cpd-space-8x); } h1, h2 { - font-weight: 600; - margin-bottom: 32px; + color: var(--cpd-color-text-primary); } - .mx_Spacer { - margin-top: 24px; + h2 { + margin: var(--cpd-space-8x) 0; + /* Workaround for heading sm being broken in Compound design tokens */ + font-size: var(--cpd-font-size-heading-sm); + line-height: var(--cpd-font-line-height-tight); + font-weight: var(--cpd-font-weight-semibold); } - .mx_FooterLink { - color: #368bd6; - text-decoration: none; + p { + color: var(--cpd-color-text-secondary); + } + + .mx_Flex { + margin: 0 auto; + max-width: max-content; + flex-wrap: wrap; + justify-content: space-evenly; + } + + .mx_ErrorView_buttons { + margin-top: var(--cpd-space-6x); } } diff --git a/res/themes/element/img/compound/apple.svg b/res/themes/element/img/compound/apple.svg new file mode 100644 index 0000000000..5e9c996e1c --- /dev/null +++ b/res/themes/element/img/compound/apple.svg @@ -0,0 +1,3 @@ + + + diff --git a/res/themes/element/img/compound/fade-arc-light.png b/res/themes/element/img/compound/fade-arc-light.png new file mode 100644 index 0000000000000000000000000000000000000000..901ba8ae374d38a6b1dbc4880f9c239fef1ca809 GIT binary patch literal 6105 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 literal 0 HcmV?d00001 diff --git a/res/themes/element/img/compound/linux.svg b/res/themes/element/img/compound/linux.svg new file mode 100644 index 0000000000..6df5e6f959 --- /dev/null +++ b/res/themes/element/img/compound/linux.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/res/themes/element/img/compound/microsoft.svg b/res/themes/element/img/compound/microsoft.svg new file mode 100644 index 0000000000..221dcba716 --- /dev/null +++ b/res/themes/element/img/compound/microsoft.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/res/themes/element/img/logos/element-app-logo.png b/res/themes/element/img/logos/element-app-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..54205a09faa4dc75ce926c325e77e40508e38ad4 GIT binary patch literal 134672 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 Ye|nA$9+m-T+5i9m07*qoM6N<$f?Gw4o&W#< literal 0 HcmV?d00001 diff --git a/src/async-components/structures/CompatibilityView.tsx b/src/async-components/structures/CompatibilityView.tsx deleted file mode 100644 index a9f1cce51a..0000000000 --- a/src/async-components/structures/CompatibilityView.tsx +++ /dev/null @@ -1,149 +0,0 @@ -/* -Copyright 2020 New Vector Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import React, { ReactNode } from "react"; -import SdkConfig from "matrix-react-sdk/src/SdkConfig"; - -import { _t } from "../../languageHandler"; - -// directly import the style here as this layer does not support rethemedex at this time so no matrix-react-sdk -// PostCSS variables will be accessible. -import "../../../res/css/structures/ErrorView.pcss"; - -interface IProps { - onAccept(): void; -} - -const CompatibilityView: React.FC = ({ onAccept }) => { - const brand = SdkConfig.get("brand"); - const mobileBuilds = SdkConfig.get("mobile_builds"); - - let ios: JSX.Element | undefined; - const iosCustomUrl = mobileBuilds?.ios; - if (iosCustomUrl !== null) { - // could be undefined or a string - ios = ( - <> -

- iOS (iPhone or iPad) -

-
- Apple App Store - - - ); - } - - let android = [ -

- Android -

, - ]; - const andCustomUrl = mobileBuilds?.android; - const fdroidCustomUrl = mobileBuilds?.fdroid; - if (andCustomUrl !== null) { - // undefined or string - android.push( - - Google Play Store - , - ); - } - if (fdroidCustomUrl !== null) { - // undefined or string - android.push( - - F-Droid - , - ); - } - if (android.length === 1) { - // just a header, meaning no links - android = []; - } - - let mobileHeader: ReactNode =

{_t("use_brand_on_mobile", { brand })}

; - if (!android.length && !ios) { - mobileHeader = null; - } - - return ( -
-
-
- - Element - -

{_t("incompatible_browser|title")}

-
- -
-
-
-

{_t("incompatible_browser|summary", { brand })}

-

{_t("incompatible_browser|features", { brand })}

-

- {_t( - "incompatible_browser|browser_links", - {}, - { - chromeLink: (sub) => {sub}, - firefoxLink: (sub) => {sub}, - safariLink: (sub) => {sub}, - }, - )} -

-

{_t("incompatible_browser|feature_warning")}

- -
-
-
- -
-
-
- {mobileHeader} - {ios} - {android} -
-
-
- - -
-
- ); -}; - -export default CompatibilityView; diff --git a/src/async-components/structures/ErrorView.tsx b/src/async-components/structures/ErrorView.tsx index 25ce1465c0..775e123b3f 100644 --- a/src/async-components/structures/ErrorView.tsx +++ b/src/async-components/structures/ErrorView.tsx @@ -14,9 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ -import * as React from "react"; +import React, { ReactNode } from "react"; +import { Text, Heading, Button, Separator } from "@vector-im/compound-web"; +import SdkConfig from "matrix-react-sdk/src/SdkConfig"; +import { Flex } from "matrix-react-sdk/src/components/utils/Flex"; +import PopOutIcon from "@vector-im/compound-design-tokens/assets/web/icons/pop-out"; import { _t } from "../../languageHandler"; +import { Icon as AppleIcon } from "../../../res/themes/element/img/compound/apple.svg"; +import { Icon as MicrosoftIcon } from "../../../res/themes/element/img/compound/microsoft.svg"; +import { Icon as LinuxIcon } from "../../../res/themes/element/img/compound/linux.svg"; // directly import the style here as this layer does not support rethemedex at this time so no matrix-react-sdk // PostCSS variables will be accessible. @@ -26,36 +33,184 @@ interface IProps { // both of these should already be internationalised title: string; messages?: string[]; + footer?: ReactNode; } -const ErrorView: React.FC = ({ title, messages }) => { +export const ErrorView: React.FC = ({ title, messages, footer, children }) => { return ( -
+
+ Element
-
- - Element - -

{_t("failed_to_start")}

-
-
-
-
-

{title}

- {messages && messages.map((msg) =>

{msg}

)} -
-
-
- + + {title} + + {messages?.map((message) => ( + + {message} + + ))} + {children}
+ {footer}
); }; -export default ErrorView; +const MobileAppLinks: React.FC<{ + appleAppStoreUrl?: string; + googlePlayUrl?: string; + fdroidUrl?: string; +}> = ({ appleAppStoreUrl, googlePlayUrl, fdroidUrl }) => ( + + {appleAppStoreUrl && ( + + Apple App Store + + )} + {googlePlayUrl && ( + + Google Play Store + + )} + {fdroidUrl && ( + + F-Droid + + )} + +); + +const DesktopAppLinks: React.FC<{ + macOsUrl?: string; + win64Url?: string; + win32Url?: string; + linuxUrl?: string; +}> = ({ macOsUrl, win64Url, win32Url, linuxUrl }) => { + return ( + + {macOsUrl && ( + + )} + {win64Url && ( + + )} + {win32Url && ( + + )} + {linuxUrl && ( + + )} + + ); +}; + +const linkFactory = + (link: string) => + (text: string): JSX.Element => ( + + {text} + + ); + +export const UnsupportedBrowserView: React.FC<{ + onAccept?(): void; +}> = ({ onAccept }) => { + const config = SdkConfig.get(); + const brand = config.brand ?? "Element"; + + const hasDesktopBuilds = + config.desktop_builds?.available && + (config.desktop_builds?.url_macos || + config.desktop_builds?.url_win64 || + config.desktop_builds?.url_win32 || + config.desktop_builds?.url_linux); + const hasMobileBuilds = Boolean( + config.mobile_builds?.ios || config.mobile_builds?.android || config.mobile_builds?.fdroid, + ); + + return ( + + {/* We render the apps in the footer as they are wider than the 520px container */} + {(hasDesktopBuilds || hasMobileBuilds) && } + + {hasDesktopBuilds && ( + <> + + {_t("incompatible_browser|use_desktop_heading", { brand })} + + + + )} + + {hasMobileBuilds && ( + <> + + {hasDesktopBuilds + ? _t("incompatible_browser|use_mobile_heading_after_desktop") + : _t("incompatible_browser|use_mobile_heading", { brand })} + + + + )} + + } + > + + {_t( + "incompatible_browser|supported_browsers", + {}, + { + Chrome: linkFactory("https://google.com/chrome"), + Firefox: linkFactory("https://firefox.com"), + Edge: linkFactory("https://microsoft.com/edge"), + Safari: linkFactory("https://apple.com/safari"), + }, + )} + + + + + {onAccept && ( + + )} + + + ); +}; diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index 39725bfee7..03b38fe373 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -21,20 +21,24 @@ "invalid_json_generic": "Invalid JSON", "misconfigured": "Your Element is misconfigured" }, - "failed_to_start": "Failed to start", - "go_to_element_io": "Go to element.io", "incompatible_browser": { - "browser_links": "Please install Chrome, Firefox, or Safari for the best experience.", - "continue_warning": "I understand the risks and wish to continue", - "feature_warning": "You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.", - "features": "%(brand)s uses advanced browser features which aren't supported by your current browser.", - "summary": "Your browser can't run %(brand)s", - "title": "Unsupported browser" + "continue": "Continue anyway", + "description": "%(brand)s uses some browser features which are not available in your current browser. %(detail)s", + "detail_can_continue": "If you continue, some features may stop working and there is a risk that you may lose data in the future.", + "detail_no_continue": "Try updating this browser if you're not using the latest version and try again.", + "learn_more": "Learn more", + "linux": "Linux", + "macos": "Mac", + "supported_browsers": "For the best experience, use Chrome, Firefox, Edge, or Safari.", + "title": "%(brand)s does not support this browser", + "use_desktop_heading": "Use %(brand)s Desktop instead", + "use_mobile_heading": "Use %(brand)s on mobile instead", + "use_mobile_heading_after_desktop": "Or use our mobile app", + "windows": "Windows (%(bits)s-bit)" }, "powered_by_matrix": "Powered by Matrix", "powered_by_matrix_with_logo": "Decentralised, encrypted chat & collaboration powered by $matrixLogo", "unknown_device": "Unknown device", - "use_brand_on_mobile": "Use %(brand)s on mobile", "web_default_device_name": "%(appName)s: %(browserName)s on %(osName)s", "welcome_to_element": "Welcome to Element" } diff --git a/src/vector/init.tsx b/src/vector/init.tsx index 76c238d0e4..277321eba4 100644 --- a/src/vector/init.tsx +++ b/src/vector/init.tsx @@ -109,12 +109,10 @@ export async function loadApp(fragParams: {}): Promise { } export async function showError(title: string, messages?: string[]): Promise { - const ErrorView = ( - await import( - /* webpackChunkName: "error-view" */ - "../async-components/structures/ErrorView" - ) - ).default; + const { ErrorView } = await import( + /* webpackChunkName: "error-view" */ + "../async-components/structures/ErrorView" + ); window.matrixChat = ReactDOM.render( , document.getElementById("matrixchat"), @@ -122,14 +120,12 @@ export async function showError(title: string, messages?: string[]): Promise void): Promise { - const CompatibilityView = ( - await import( - /* webpackChunkName: "compatibility-view" */ - "../async-components/structures/CompatibilityView" - ) - ).default; + const { UnsupportedBrowserView } = await import( + /* webpackChunkName: "error-view" */ + "../async-components/structures/ErrorView" + ); window.matrixChat = ReactDOM.render( - , + , document.getElementById("matrixchat"), ); } diff --git a/test/unit-tests/async-components/structures/ErrorView-test.tsx b/test/unit-tests/async-components/structures/ErrorView-test.tsx index 773c8106fd..266511dba7 100644 --- a/test/unit-tests/async-components/structures/ErrorView-test.tsx +++ b/test/unit-tests/async-components/structures/ErrorView-test.tsx @@ -16,8 +16,9 @@ limitations under the License. import * as React from "react"; import { render } from "@testing-library/react"; +import SdkConfig from "matrix-react-sdk/src/SdkConfig"; -import ErrorView from "../../../../src/async-components/structures/ErrorView"; +import { ErrorView, UnsupportedBrowserView } from "../../../../src/async-components/structures/ErrorView"; import { setupLanguageMock } from "../../../setup/setupLanguage"; describe("", () => { @@ -30,3 +31,15 @@ describe("", () => { expect(asFragment()).toMatchSnapshot(); }); }); + +describe("", () => { + beforeEach(() => { + setupLanguageMock(); + SdkConfig.put({}); + }); + + it("should match snapshot", () => { + const { asFragment } = render(); + expect(asFragment()).toMatchSnapshot(); + }); +}); diff --git a/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap b/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap index 9af471f05b..0bb96dc929 100644 --- a/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap +++ b/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap @@ -3,63 +3,248 @@ exports[` should match snapshot 1`] = `
+
-
- -

- Failed to start -

-
-
+

-

-
-

- TITLE -

-

- MSG1 -

-

- MSG2 -

-
-
-
- + MSG2 +

+
+
+
+`; + +exports[` should match snapshot 1`] = ` + +
+ +
+

+ Element does not support this browser +

+

+ Element uses some browser features which are not available in your current browser. Try updating this browser if you're not using the latest version and try again. +

+

+ + For the best experience, use + + Chrome + + , + + Firefox + + , + + Edge + + , or + + Safari + + . + +

+
+ +
+
+