diff --git a/Dockerfile b/Dockerfile index 908c05520cc..93d7c676d9f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,17 @@ # Builder -FROM --platform=$BUILDPLATFORM node:22-bullseye as builder +FROM --platform=$BUILDPLATFORM node:22-bullseye AS builder # Support custom branch of the js-sdk. This also helps us build images of element-web develop. ARG USE_CUSTOM_SDKS=false ARG JS_SDK_REPO="https://github.com/matrix-org/matrix-js-sdk.git" ARG JS_SDK_BRANCH="master" -RUN apt-get update && apt-get install -y git dos2unix - WORKDIR /src COPY . /src -RUN dos2unix /src/scripts/docker-link-repos.sh && bash /src/scripts/docker-link-repos.sh +RUN /src/scripts/docker-link-repos.sh RUN yarn --network-timeout=200000 install - -RUN dos2unix /src/scripts/docker-package.sh /src/scripts/get-version-from-git.sh /src/scripts/normalize-version.sh && bash /src/scripts/docker-package.sh +RUN /src/scripts/docker-package.sh # Copy the config now so that we don't create another layer in the app image RUN cp /src/config.sample.json /src/webapp/config.json @@ -24,8 +21,22 @@ FROM nginx:alpine-slim COPY --from=builder /src/webapp /app -# Override default nginx config -COPY /nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf +# Override default nginx config. Templates in `/etc/nginx/templates` are passed +# through `envsubst` by the nginx docker image entry point. +COPY /docker/nginx-templates/* /etc/nginx/templates/ + +# Tell nginx to put its pidfile elsewhere, so it can run as non-root +RUN sed -i -e 's,/var/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf + +# nginx user must own the cache and etc directory to write cache and tweak the nginx config +RUN chown -R nginx:0 /var/cache/nginx /etc/nginx +RUN chmod -R g+w /var/cache/nginx /etc/nginx RUN rm -rf /usr/share/nginx/html \ && ln -s /app /usr/share/nginx/html + +# Run as nginx user by default +USER nginx + +# HTTP listen port +ENV ELEMENT_WEB_PORT=80 diff --git a/LICENSE-COMMERCIAL b/LICENSE-COMMERCIAL new file mode 100644 index 00000000000..173e03e0c03 --- /dev/null +++ b/LICENSE-COMMERCIAL @@ -0,0 +1,6 @@ +Licensees holding a valid commercial license with Element may use this +software in accordance with the terms contained in a written agreement +between you and Element. + +To purchase a commercial license please contact our sales team at +licensing@element.io diff --git a/__mocks__/maplibre-gl.js b/__mocks__/maplibre-gl.js index c410e4f24c5..cac71db330b 100644 --- a/__mocks__/maplibre-gl.js +++ b/__mocks__/maplibre-gl.js @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/__mocks__/workerFactoryMock.js b/__mocks__/workerFactoryMock.js index 956f5b04acf..a6f04ce0861 100644 --- a/__mocks__/workerFactoryMock.js +++ b/__mocks__/workerFactoryMock.js @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/contribute.json b/contribute.json index 5c7fc79d398..fdd84bd8a04 100644 --- a/contribute.json +++ b/contribute.json @@ -3,7 +3,7 @@ "description": "A glossy Matrix collaboration client for the web.", "repository": { "url": "https://github.com/element-hq/element-web", - "license": "AGPL-3.0-only OR GPL-3.0-only" + "license": "AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial" }, "bugs": { "list": "https://github.com/element-hq/element-web/issues", diff --git a/nginx/conf.d/default.conf b/docker/nginx-templates/default.conf.template similarity index 90% rename from nginx/conf.d/default.conf rename to docker/nginx-templates/default.conf.template index 0ae57903744..06f33e08dd2 100644 --- a/nginx/conf.d/default.conf +++ b/docker/nginx-templates/default.conf.template @@ -1,6 +1,6 @@ server { - listen 80; - listen [::]:80; + listen ${ELEMENT_WEB_PORT}; + listen [::]:${ELEMENT_WEB_PORT}; server_name localhost; root /usr/share/nginx/html; diff --git a/docs/install.md b/docs/install.md index 1c182cdd34c..f6bd98611cb 100644 --- a/docs/install.md +++ b/docs/install.md @@ -60,6 +60,22 @@ would be: docker run --rm -p 127.0.0.1:80:80 -v /etc/element-web/config.json:/app/config.json vectorim/element-web ``` +The Docker image is configured to run as an unprivileged (non-root) user by +default. This should be fine on modern Docker runtimes, but binding to port 80 +on other runtimes may require root privileges. To resolve this, either run the +image as root (`docker run --user 0`) or, better, change the port that nginx +listens on via the `ELEMENT_WEB_PORT` environment variable. + +The behaviour of the docker image can be customised via the following +environment variables: + +- `ELEMENT_WEB_PORT` + + The port to listen on (within the docker container) for HTTP + traffic. Defaults to `80`. + +### Building the docker image + To build the image yourself: ```bash diff --git a/docs/oidc.md b/docs/oidc.md index 34387f92413..bf10792d0ca 100644 --- a/docs/oidc.md +++ b/docs/oidc.md @@ -1,29 +1,9 @@ # OIDC and delegated authentication -## Compatibility/OIDC-aware mode - -[MSC2965: OIDC provider discovery](https://github.com/matrix-org/matrix-spec-proposals/pull/2965) -[MSC3824: OIDC aware clients](https://github.com/matrix-org/matrix-spec-proposals/pull/3824) -This mode uses an SSO flow to gain a `loginToken` from the authentication provider, then continues with SSO login. -Element Web uses [MSC2965: OIDC provider discovery](https://github.com/matrix-org/matrix-spec-proposals/pull/2965) to discover the configured provider. -Wherever valid MSC2965 configuration is discovered, OIDC-aware login flow will be the only option offered. - -## (🧪Experimental) OIDC-native flow - -Can be enabled by a config-level-only setting in `config.json` - -```json -{ - "features": { - "feature_oidc_native_flow": true - } -} -``` - See https://areweoidcyet.com/client-implementation-guide/ for implementation details. Element Web uses [MSC2965: OIDC provider discovery](https://github.com/matrix-org/matrix-spec-proposals/pull/2965) to discover the configured provider. -Where OIDC native login flow is enabled and valid MSC2965 configuration is discovered, OIDC native login flow will be the only login option offered. +Where a valid MSC2965 configuration is discovered, OIDC native login flow will be the only login option offered. Element Web will attempt to [dynamically register](https://openid.net/specs/openid-connect-registration-1_0.html) with the configured OP. Then, authentication will be completed [as described here](https://areweoidcyet.com/client-implementation-guide/). diff --git a/docs/playwright.md b/docs/playwright.md index 4af3194220a..73ee77228b7 100644 --- a/docs/playwright.md +++ b/docs/playwright.md @@ -53,15 +53,11 @@ yarn run test:playwright:open --headed --debug See more command line options at . -### Running with Rust cryptography +## Projects -`matrix-js-sdk` is currently in the -[process](https://github.com/vector-im/element-web/issues/21972) of being -updated to replace its end-to-end encryption implementation to use the [Matrix -Rust SDK](https://github.com/matrix-org/matrix-rust-sdk). This is not currently -enabled by default, but it is possible to have Playwright configure Element to use -the Rust crypto implementation by passing `--project="Rust Crypto"` or using -the top left options in open mode. +By default, Playwright will run all "Projects", this means tests will run against Chrome, Firefox and "Safari" (Webkit). +We only run tests against Chrome in pull request CI, but all projects in the merge queue. +Some tests are excluded from running on certain browsers due to incompatibilities in the test harness. ## How the Tests Work @@ -224,3 +220,14 @@ We use test tags to categorise tests for running subsets more efficiently. - `@mergequeue`: Tests that are slow or flaky and cover areas of the app we update seldom, should not be run on every PR commit but will be run in the Merge Queue. - `@screenshot`: Tests that use `toMatchScreenshot` to speed up a run of `test:playwright:screenshots`. A test with this tag must not also have the `@mergequeue` tag as this would cause false positives in the stale screenshot detection. +- `@no-$project`: Tests which are unsupported in $Project. These tests will be skipped when running in $Project. + +Anything testing Matrix media will need to have `@no-firefox` and `@no-webkit` as those rely on the service worker which +has to be disabled in Playwright on Firefox & Webkit to retain routing functionality. +Anything testing VoIP/microphone will need to have `@no-webkit` as fake microphone functionality is not available +there at this time. + +## Colima + +If you are running under Colima, you may need to set the environment variable `TMPDIR` to `/tmp/colima` or a path +within `$HOME` to allow bind mounting temporary directories into the Docker containers. diff --git a/jest.config.ts b/jest.config.ts index 326f2040d97..b70b21bc979 100644 --- a/jest.config.ts +++ b/jest.config.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -14,6 +14,8 @@ const config: Config = { testEnvironment: "jsdom", testEnvironmentOptions: { url: "http://localhost/", + // This is needed to be able to load dual CJS/ESM WASM packages e.g. rust crypto & matrix-wywiwyg + customExportConditions: ["browser", "node"], }, testMatch: ["/test/**/*-test.[tj]s?(x)"], globalSetup: "/test/globalSetup.ts", diff --git a/module_system/BuildConfig.ts b/module_system/BuildConfig.ts index 8cf83dea8b4..cfb805840d7 100644 --- a/module_system/BuildConfig.ts +++ b/module_system/BuildConfig.ts @@ -1,7 +1,7 @@ /* Copyright 2022-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/module_system/installer.ts b/module_system/installer.ts index e681bb1673f..4e677b7d674 100644 --- a/module_system/installer.ts +++ b/module_system/installer.ts @@ -1,7 +1,7 @@ /* Copyright 2022-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/module_system/scripts/install.ts b/module_system/scripts/install.ts index 57a2f9fce3c..0b6d2e1c29f 100644 --- a/module_system/scripts/install.ts +++ b/module_system/scripts/install.ts @@ -1,7 +1,7 @@ /* Copyright 2022-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/package.json b/package.json index 4d839b37e15..8c48d1d5672 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,13 @@ { "name": "elecord-web", - "version": "1.11.89", + "version": "1.11.90", "description": "Privacy focused chat app for gamers", "author": "hazzuk", "repository": { "type": "git", "url": "https://github.com/elecordapp/elecord-web" }, - "license": "AGPL-3.0-only OR GPL-3.0-only", + "license": "SEE LICENSE IN README.md", "files": [ "lib", "res", @@ -64,7 +64,7 @@ "test:playwright:open": "yarn test:playwright --ui", "test:playwright:screenshots": "yarn test:playwright:screenshots:build && yarn test:playwright:screenshots:run", "test:playwright:screenshots:build": "docker build playwright -t element-web-playwright", - "test:playwright:screenshots:run": "docker run --rm --network host -e BASE_URL -e CI -v $(pwd):/work/ -v $(node -e 'console.log(require(`path`).dirname(require.resolve(`matrix-js-sdk/package.json`)))'):/work/node_modules/matrix-js-sdk -v /var/run/docker.sock:/var/run/docker.sock -v /tmp/:/tmp/ -it element-web-playwright --grep @screenshot", + "test:playwright:screenshots:run": "docker run --rm --network host -e BASE_URL -e CI -v $(pwd):/work/ -v $(node -e 'console.log(require(`path`).dirname(require.resolve(`matrix-js-sdk/package.json`)))'):/work/node_modules/matrix-js-sdk -v /var/run/docker.sock:/var/run/docker.sock -v /tmp/:/tmp/ -it element-web-playwright --grep @screenshot --project=Chrome", "coverage": "yarn test --coverage", "analyse:unused-exports": "ts-node ./scripts/analyse_unused_exports.ts", "analyse:webpack-bundles": "webpack-bundle-analyzer webpack-stats.json webapp", @@ -87,9 +87,10 @@ "@matrix-org/react-sdk-module-api": "^2.4.0", "@matrix-org/spec": "^1.7.0", "@sentry/browser": "^8.0.0", + "@types/png-chunks-extract": "^1.0.2", "@vector-im/compound-design-tokens": "^2.0.1", - "@vector-im/compound-web": "^7.4.0", - "@vector-im/matrix-wysiwyg": "2.37.13", + "@vector-im/compound-web": "^7.5.0", + "@vector-im/matrix-wysiwyg": "2.38.0", "@zxcvbn-ts/core": "^3.0.4", "@zxcvbn-ts/language-common": "^3.0.4", "@zxcvbn-ts/language-en": "^3.0.2", @@ -124,7 +125,7 @@ "maplibre-gl": "^4.0.0", "matrix-encrypt-attachment": "^1.0.3", "matrix-events-sdk": "0.0.1", - "matrix-js-sdk": "35.1.0", + "matrix-js-sdk": "36.0.0", "matrix-widget-api": "^1.10.0", "memoize-one": "^6.0.0", "mime": "^4.0.4", @@ -269,7 +270,7 @@ "postcss-preset-env": "^10.0.0", "postcss-scss": "^4.0.4", "postcss-simple-vars": "^7.0.1", - "prettier": "3.4.1", + "prettier": "3.4.2", "process": "^0.11.10", "raw-loader": "^4.0.2", "rimraf": "^6.0.0", @@ -282,7 +283,7 @@ "terser-webpack-plugin": "^5.3.9", "ts-node": "^10.9.1", "ts-prune": "^0.10.3", - "typescript": "5.6.3", + "typescript": "5.7.2", "util": "^0.12.5", "web-streams-polyfill": "^4.0.0", "webpack": "^5.89.0", diff --git a/playwright.config.ts b/playwright.config.ts index 06c1b05322d..d317c55a6d6 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,16 +11,49 @@ import { defineConfig, devices } from "@playwright/test"; const baseURL = process.env["BASE_URL"] ?? "http://localhost:8080"; export default defineConfig({ - projects: [{ name: "Chrome", use: { ...devices["Desktop Chrome"], channel: "chromium" } }], + projects: [ + { + name: "Chrome", + use: { + ...devices["Desktop Chrome"], + channel: "chromium", + permissions: ["clipboard-write", "clipboard-read", "microphone"], + launchOptions: { + args: ["--use-fake-ui-for-media-stream", "--use-fake-device-for-media-stream", "--mute-audio"], + }, + }, + }, + { + name: "Firefox", + use: { + ...devices["Desktop Firefox"], + launchOptions: { + firefoxUserPrefs: { + "permissions.default.microphone": 1, + }, + }, + // This is needed to work around an issue between Playwright routes, Firefox, and Service workers + // https://github.com/microsoft/playwright/issues/33561#issuecomment-2471642120 + serviceWorkers: "block", + }, + ignoreSnapshots: true, + }, + { + name: "WebKit", + use: { + ...devices["Desktop Safari"], + // Seemingly WebKit has the same issue as Firefox in Playwright routes not working + // https://playwright.dev/docs/network#missing-network-events-and-service-workers + serviceWorkers: "block", + }, + ignoreSnapshots: true, + }, + ], use: { viewport: { width: 1280, height: 720 }, ignoreHTTPSErrors: true, video: "retain-on-failure", baseURL, - permissions: ["clipboard-write", "clipboard-read", "microphone"], - launchOptions: { - args: ["--use-fake-ui-for-media-stream", "--use-fake-device-for-media-stream", "--mute-audio"], - }, trace: "on-first-retry", }, webServer: { diff --git a/playwright/@types/playwright-core.d.ts b/playwright/@types/playwright-core.d.ts index 9701b2ddac0..244f3c91d46 100644 --- a/playwright/@types/playwright-core.d.ts +++ b/playwright/@types/playwright-core.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/Dockerfile b/playwright/Dockerfile index 021820984a9..7e918e04f7c 100644 --- a/playwright/Dockerfile +++ b/playwright/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/playwright:v1.49.0-noble +FROM mcr.microsoft.com/playwright:v1.49.1-noble WORKDIR /work diff --git a/playwright/e2e/accessibility/keyboard-navigation.spec.ts b/playwright/e2e/accessibility/keyboard-navigation.spec.ts index 87cee4e05c3..6f4fc9be5fc 100644 --- a/playwright/e2e/accessibility/keyboard-navigation.spec.ts +++ b/playwright/e2e/accessibility/keyboard-navigation.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/app-loading/feature-detection.spec.ts b/playwright/e2e/app-loading/feature-detection.spec.ts index ee61fb56628..0d11e4a31a9 100644 --- a/playwright/e2e/app-loading/feature-detection.spec.ts +++ b/playwright/e2e/app-loading/feature-detection.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/app-loading/guest-registration.spec.ts b/playwright/e2e/app-loading/guest-registration.spec.ts index 4455baed230..ea732e59ece 100644 --- a/playwright/e2e/app-loading/guest-registration.spec.ts +++ b/playwright/e2e/app-loading/guest-registration.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -14,13 +14,6 @@ import { expect, test } from "../../element-web-test"; test.use({ startHomeserverOpts: "guest-enabled", - config: async ({ homeserver }, use) => { - await use({ - default_server_config: { - "m.homeserver": { base_url: homeserver.config.baseUrl }, - }, - }); - }, }); test("Shows the welcome page by default", async ({ page }) => { diff --git a/playwright/e2e/app-loading/stored-credentials.spec.ts b/playwright/e2e/app-loading/stored-credentials.spec.ts index 34cbb5aea4c..7e1bb29ce71 100644 --- a/playwright/e2e/app-loading/stored-credentials.spec.ts +++ b/playwright/e2e/app-loading/stored-credentials.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/audio-player/audio-player.spec.ts b/playwright/e2e/audio-player/audio-player.spec.ts index 2bb9ab0be45..a6d920dcb84 100644 --- a/playwright/e2e/audio-player/audio-player.spec.ts +++ b/playwright/e2e/audio-player/audio-player.spec.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -13,7 +13,7 @@ import { SettingLevel } from "../../../src/settings/SettingLevel"; import { Layout } from "../../../src/settings/enums/Layout"; import { ElementAppPage } from "../../pages/ElementAppPage"; -test.describe("Audio player", () => { +test.describe("Audio player", { tag: ["@no-firefox", "@no-webkit"] }, () => { test.use({ displayName: "Hanako", }); @@ -253,7 +253,6 @@ test.describe("Audio player", () => { // Find and click "Reply" button const clickButtonReply = async () => { - await tile.scrollIntoViewIfNeeded(); await tile.hover(); await tile.getByRole("button", { name: "Reply", exact: true }).click(); }; diff --git a/playwright/e2e/chat-export/html-export.spec.ts b/playwright/e2e/chat-export/html-export.spec.ts index f914cccd96b..33ca6728c6c 100644 --- a/playwright/e2e/chat-export/html-export.spec.ts +++ b/playwright/e2e/chat-export/html-export.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/composer/CIDER.spec.ts b/playwright/e2e/composer/CIDER.spec.ts index 2052b9683dd..03fc59cd0f1 100644 --- a/playwright/e2e/composer/CIDER.spec.ts +++ b/playwright/e2e/composer/CIDER.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/composer/RTE.spec.ts b/playwright/e2e/composer/RTE.spec.ts index 91a56afb8ad..3b750000c56 100644 --- a/playwright/e2e/composer/RTE.spec.ts +++ b/playwright/e2e/composer/RTE.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -79,9 +79,8 @@ test.describe("Composer", () => { // Enter some more text, then send the message await page.getByRole("textbox").pressSequentially("this is the spoiler text "); await page.getByRole("button", { name: "Send message" }).click(); - // Check that a spoiler item has appeared in the timeline and locator the spoiler command text - await expect(page.locator("button.mx_EventTile_spoiler")).toBeVisible(); - await expect(page.getByText("this is the spoiler text")).toBeVisible(); + // Check that a spoiler item has appeared in the timeline and contains the spoiler text + await expect(page.locator("button.mx_EventTile_spoiler")).toHaveText("this is the spoiler text"); }); }); }); diff --git a/playwright/e2e/create-room/create-room.spec.ts b/playwright/e2e/create-room/create-room.spec.ts index 51a135ca03f..4a4fee16207 100644 --- a/playwright/e2e/create-room/create-room.spec.ts +++ b/playwright/e2e/create-room/create-room.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/crypto/backups.spec.ts b/playwright/e2e/crypto/backups.spec.ts index da162474fa7..23a976bb1ba 100644 --- a/playwright/e2e/crypto/backups.spec.ts +++ b/playwright/e2e/crypto/backups.spec.ts @@ -2,13 +2,16 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { type Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; +import { test as masTest, registerAccountMas } from "../oidc"; +import { isDendrite } from "../../plugins/homeserver/dendrite"; +import { TestClientServerAPI } from "../csAPI"; async function expectBackupVersionToBe(page: Page, version: string) { await expect(page.locator(".mx_SecureBackupPanel_statusList tr:nth-child(5) td")).toHaveText( @@ -18,95 +21,181 @@ async function expectBackupVersionToBe(page: Page, version: string) { await expect(page.locator(".mx_SecureBackupPanel_statusList tr:nth-child(6) td")).toHaveText(version); } -test.describe("Backups", () => { - test.use({ - displayName: "Hanako", +// These tests register an account with MAS because then we go through the "normal" registration flow +// and crypto gets set up. Using the 'user' fixture create a a user an synthesizes an existing login, +// which is faster but leaves us without crypto set up. +masTest.describe("Encryption state after registration", () => { + masTest.skip(isDendrite, "does not yet support MAS"); + + masTest("Key backup is enabled by default", async ({ page, mailhog, app }) => { + await page.goto("/#/login"); + await page.getByRole("button", { name: "Continue" }).click(); + await registerAccountMas(page, mailhog.api, "alice", "alice@email.com", "Pa$sW0rD!"); + + await app.settings.openUserSettings("Security & Privacy"); + await expect(page.getByText("This session is backing up your keys.")).toBeVisible(); }); - test("Create, delete and recreate a keys backup", async ({ page, user, app }, workerInfo) => { - // Create a backup - const securityTab = await app.settings.openUserSettings("Security & Privacy"); + masTest("user is prompted to set up recovery", async ({ page, mailhog, app }) => { + await page.goto("/#/login"); + await page.getByRole("button", { name: "Continue" }).click(); + await registerAccountMas(page, mailhog.api, "alice", "alice@email.com", "Pa$sW0rD!"); - await expect(securityTab.getByRole("heading", { name: "Secure Backup" })).toBeVisible(); - await securityTab.getByRole("button", { name: "Set up", exact: true }).click(); + await page.getByRole("button", { name: "Add room" }).click(); + await page.getByRole("menuitem", { name: "New room" }).click(); + await page.getByRole("textbox", { name: "Name" }).fill("test room"); + await page.getByRole("button", { name: "Create room" }).click(); - const currentDialogLocator = page.locator(".mx_Dialog"); + await expect(page.getByRole("heading", { name: "Set up recovery" })).toBeVisible(); + }); +}); - // It's the first time and secure storage is not set up, so it will create one - await expect(currentDialogLocator.getByRole("heading", { name: "Set up Secure Backup" })).toBeVisible(); - await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); - await expect(currentDialogLocator.getByRole("heading", { name: "Save your Security Key" })).toBeVisible(); - await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); - // copy the recovery key to use it later - const securityKey = await app.getClipboard(); - await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); +masTest.describe("Key backup reset from elsewhere", () => { + masTest.skip(isDendrite, "does not yet support MAS"); - await expect(currentDialogLocator.getByRole("heading", { name: "Secure Backup successful" })).toBeVisible(); - await currentDialogLocator.getByRole("button", { name: "Done", exact: true }).click(); + masTest( + "Key backup is disabled when reset from elsewhere", + async ({ page, mailhog, request, masPrepare, homeserver }) => { + const testUsername = "alice"; + const testPassword = "Pa$sW0rD!"; - // Open the settings again - await app.settings.openUserSettings("Security & Privacy"); - await expect(securityTab.getByRole("heading", { name: "Secure Backup" })).toBeVisible(); + // there's a delay before keys are uploaded so the error doesn't appear immediately: use a fake + // clock so we can skip the delay + await page.clock.install(); - // expand the advanced section to see the active version in the reports - await page - .locator(".mx_Dialog .mx_SettingsSubsection_content details .mx_SecureBackupPanel_advanced") - .locator("..") - .click(); + await page.goto("/#/login"); + await page.getByRole("button", { name: "Continue" }).click(); + await registerAccountMas(page, mailhog.api, testUsername, "alice@email.com", testPassword); - await expectBackupVersionToBe(page, "1"); + await page.getByRole("button", { name: "Add room" }).click(); + await page.getByRole("menuitem", { name: "New room" }).click(); + await page.getByRole("textbox", { name: "Name" }).fill("test room"); + await page.getByRole("button", { name: "Create room" }).click(); - await securityTab.getByRole("button", { name: "Delete Backup", exact: true }).click(); - await expect(currentDialogLocator.getByRole("heading", { name: "Delete Backup" })).toBeVisible(); - // Delete it - await currentDialogLocator.getByTestId("dialog-primary-button").click(); // Click "Delete Backup" + // @ts-ignore - this runs in the browser scope where mxMatrixClientPeg is a thing. Here, it is not. + const accessToken = await page.evaluate(() => mxMatrixClientPeg.get().getAccessToken()); - // Create another - await securityTab.getByRole("button", { name: "Set up", exact: true }).click(); - await expect(currentDialogLocator.getByRole("heading", { name: "Security Key" })).toBeVisible(); - await currentDialogLocator.getByLabel("Security Key").fill(securityKey); - await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); + const csAPI = new TestClientServerAPI(request, homeserver, accessToken); - // Should be successful - await expect(currentDialogLocator.getByRole("heading", { name: "Success!" })).toBeVisible(); - await currentDialogLocator.getByRole("button", { name: "OK", exact: true }).click(); + const backupInfo = await csAPI.getCurrentBackupInfo(); - // Open the settings again - await app.settings.openUserSettings("Security & Privacy"); - await expect(securityTab.getByRole("heading", { name: "Secure Backup" })).toBeVisible(); - - // expand the advanced section to see the active version in the reports - await page - .locator(".mx_Dialog .mx_SettingsSubsection_content details .mx_SecureBackupPanel_advanced") - .locator("..") - .click(); - - await expectBackupVersionToBe(page, "2"); - - // == - // Ensure that if you don't have the secret storage passphrase the backup won't be created - // == - - // First delete version 2 - await securityTab.getByRole("button", { name: "Delete Backup", exact: true }).click(); - await expect(currentDialogLocator.getByRole("heading", { name: "Delete Backup" })).toBeVisible(); - // Click "Delete Backup" - await currentDialogLocator.getByTestId("dialog-primary-button").click(); - - // Try to create another - await securityTab.getByRole("button", { name: "Set up", exact: true }).click(); - await expect(currentDialogLocator.getByRole("heading", { name: "Security Key" })).toBeVisible(); - // But cancel the security key dialog, to simulate not having the secret storage passphrase - await currentDialogLocator.getByTestId("dialog-cancel-button").click(); - - await expect(currentDialogLocator.getByRole("heading", { name: "Starting backup…" })).toBeVisible(); - // check that it failed - await expect(currentDialogLocator.getByText("Unable to create key backup")).toBeVisible(); - // cancel - await currentDialogLocator.getByTestId("dialog-cancel-button").click(); - - // go back to the settings to check that no backup was created (the setup button should still be there) - await app.settings.openUserSettings("Security & Privacy"); - await expect(securityTab.getByRole("button", { name: "Set up", exact: true })).toBeVisible(); + await csAPI.deleteBackupVersion(backupInfo.version); + + await page.getByRole("textbox", { name: "Send an encrypted message…" }).fill("/discardsession"); + await page.getByRole("button", { name: "Send message" }).click(); + + await page + .getByRole("textbox", { name: "Send an encrypted message…" }) + .fill("Message with broken key backup"); + await page.getByRole("button", { name: "Send message" }).click(); + + // Should be the message we sent plus the room creation event + await expect(page.locator(".mx_EventTile")).toHaveCount(2); + await expect( + page.locator(".mx_RoomView_MessageList > .mx_EventTile_last .mx_EventTile_receiptSent"), + ).toBeVisible(); + + // Wait for it to try uploading the key + await page.clock.fastForward(20000); + + await expect(page.getByRole("heading", { level: 1, name: "New Recovery Method" })).toBeVisible(); + }, + ); +}); + +test.describe("Backups", () => { + test.use({ + displayName: "Hanako", }); + + test( + "Create, delete and recreate a keys backup", + { tag: "@no-webkit" }, + async ({ page, user, app }, workerInfo) => { + // Create a backup + const securityTab = await app.settings.openUserSettings("Security & Privacy"); + + await expect(securityTab.getByRole("heading", { name: "Secure Backup" })).toBeVisible(); + await securityTab.getByRole("button", { name: "Set up", exact: true }).click(); + + const currentDialogLocator = page.locator(".mx_Dialog"); + + // It's the first time and secure storage is not set up, so it will create one + await expect(currentDialogLocator.getByRole("heading", { name: "Set up Secure Backup" })).toBeVisible(); + await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); + await expect(currentDialogLocator.getByRole("heading", { name: "Save your Security Key" })).toBeVisible(); + await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); + // copy the recovery key to use it later + const securityKey = await app.getClipboard(); + await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); + + await expect(currentDialogLocator.getByRole("heading", { name: "Secure Backup successful" })).toBeVisible(); + await currentDialogLocator.getByRole("button", { name: "Done", exact: true }).click(); + + // Open the settings again + await app.settings.openUserSettings("Security & Privacy"); + await expect(securityTab.getByRole("heading", { name: "Secure Backup" })).toBeVisible(); + + // expand the advanced section to see the active version in the reports + await page + .locator(".mx_Dialog .mx_SettingsSubsection_content details .mx_SecureBackupPanel_advanced") + .locator("..") + .click(); + + await expectBackupVersionToBe(page, "1"); + + await securityTab.getByRole("button", { name: "Delete Backup", exact: true }).click(); + await expect(currentDialogLocator.getByRole("heading", { name: "Delete Backup" })).toBeVisible(); + // Delete it + await currentDialogLocator.getByTestId("dialog-primary-button").click(); // Click "Delete Backup" + + // Create another + await securityTab.getByRole("button", { name: "Set up", exact: true }).click(); + await expect(currentDialogLocator.getByRole("heading", { name: "Security Key" })).toBeVisible(); + await currentDialogLocator.getByLabel("Security Key").fill(securityKey); + await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); + + // Should be successful + await expect(currentDialogLocator.getByRole("heading", { name: "Success!" })).toBeVisible(); + await currentDialogLocator.getByRole("button", { name: "OK", exact: true }).click(); + + // Open the settings again + await app.settings.openUserSettings("Security & Privacy"); + await expect(securityTab.getByRole("heading", { name: "Secure Backup" })).toBeVisible(); + + // expand the advanced section to see the active version in the reports + await page + .locator(".mx_Dialog .mx_SettingsSubsection_content details .mx_SecureBackupPanel_advanced") + .locator("..") + .click(); + + await expectBackupVersionToBe(page, "2"); + + // == + // Ensure that if you don't have the secret storage passphrase the backup won't be created + // == + + // First delete version 2 + await securityTab.getByRole("button", { name: "Delete Backup", exact: true }).click(); + await expect(currentDialogLocator.getByRole("heading", { name: "Delete Backup" })).toBeVisible(); + // Click "Delete Backup" + await currentDialogLocator.getByTestId("dialog-primary-button").click(); + + // Try to create another + await securityTab.getByRole("button", { name: "Set up", exact: true }).click(); + await expect(currentDialogLocator.getByRole("heading", { name: "Security Key" })).toBeVisible(); + // But cancel the security key dialog, to simulate not having the secret storage passphrase + await currentDialogLocator.getByTestId("dialog-cancel-button").click(); + + await expect(currentDialogLocator.getByRole("heading", { name: "Starting backup…" })).toBeVisible(); + // check that it failed + await expect(currentDialogLocator.getByText("Unable to create key backup")).toBeVisible(); + // cancel + await currentDialogLocator.getByTestId("dialog-cancel-button").click(); + + // go back to the settings to check that no backup was created (the setup button should still be there) + await app.settings.openUserSettings("Security & Privacy"); + await expect(securityTab.getByRole("button", { name: "Set up", exact: true })).toBeVisible(); + }, + ); }); diff --git a/playwright/e2e/crypto/complete-security.spec.ts b/playwright/e2e/crypto/complete-security.spec.ts index e5c5f8e9a3f..da6974459c9 100644 --- a/playwright/e2e/crypto/complete-security.spec.ts +++ b/playwright/e2e/crypto/complete-security.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -19,9 +19,9 @@ test.describe("Complete security", () => { homeserver, credentials, }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); await expect(page.getByText("Welcome Jeff", { exact: true })).toBeVisible(); }); - // see also "Verify device during login with SAS" in `verifiction.spec.ts`. + // see also "Verify device during login with SAS" in `verification.spec.ts`. }); diff --git a/playwright/e2e/crypto/crypto.spec.ts b/playwright/e2e/crypto/crypto.spec.ts index 668c17d931d..2b6844574ec 100644 --- a/playwright/e2e/crypto/crypto.spec.ts +++ b/playwright/e2e/crypto/crypto.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -81,7 +81,7 @@ test.describe("Cryptography", function () { * Verify that the `m.cross_signing.${keyType}` key is available on the account data on the server * @param keyType */ - async function verifyKey(app: ElementAppPage, keyType: string) { + async function verifyKey(app: ElementAppPage, keyType: "master" | "self_signing" | "user_signing") { const accountData: { encrypted: Record> } = await app.client.evaluate( (cli, keyType) => cli.getAccountDataFromServer(`m.cross_signing.${keyType}`), keyType, diff --git a/playwright/e2e/crypto/decryption-failure-messages.spec.ts b/playwright/e2e/crypto/decryption-failure-messages.spec.ts index b2a1209a70a..e1952bfec60 100644 --- a/playwright/e2e/crypto/decryption-failure-messages.spec.ts +++ b/playwright/e2e/crypto/decryption-failure-messages.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -45,7 +45,7 @@ test.describe("Cryptography", function () { await logOutOfElement(page, true); // Log in again, and see how the message looks. - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); await app.viewRoomByName("Test room"); const lastTile = page.locator(".mx_EventTile").last(); await expect(lastTile).toContainText("Historical messages are not available on this device"); @@ -62,7 +62,7 @@ test.describe("Cryptography", function () { // Finally, log out again, and back in, skipping verification for now, and see what we see. await logOutOfElement(page); - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); await page.locator(".mx_AuthPage").getByRole("button", { name: "Skip verification for now" }).click(); await page.locator(".mx_AuthPage").getByRole("button", { name: "I'll verify later" }).click(); await app.viewRoomByName("Test room"); diff --git a/playwright/e2e/crypto/dehydration.spec.ts b/playwright/e2e/crypto/dehydration.spec.ts index 590ab774b50..158e85a476e 100644 --- a/playwright/e2e/crypto/dehydration.spec.ts +++ b/playwright/e2e/crypto/dehydration.spec.ts @@ -2,26 +2,24 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { Locator, type Page } from "@playwright/test"; -import { test as base, expect } from "../../element-web-test"; +import { test as base, expect, Fixtures } from "../../element-web-test"; import { viewRoomSummaryByName } from "../right-panel/utils"; import { isDendrite } from "../../plugins/homeserver/dendrite"; -const test = base.extend({ +const test = base.extend({ // eslint-disable-next-line no-empty-pattern startHomeserverOpts: async ({}, use) => { await use("dehydration"); }, - config: async ({ homeserver, context }, use) => { + config: async ({ config, context }, use) => { const wellKnown = { - "m.homeserver": { - base_url: homeserver.config.baseUrl, - }, + ...config.default_server_config, "org.matrix.msc3814": true, }; @@ -29,9 +27,7 @@ const test = base.extend({ await route.fulfill({ json: wellKnown }); }); - await use({ - default_server_config: wellKnown, - }); + await use(config); }, }); @@ -50,8 +46,6 @@ test.describe("Dehydration", () => { }); test("Create dehydrated device", async ({ page, user, app }, workerInfo) => { - test.skip(workerInfo.project.name === "Legacy Crypto", "This test only works with Rust crypto."); - // Create a backup (which will create SSSS, and dehydrated device) const securityTab = await app.settings.openUserSettings("Security & Privacy"); diff --git a/playwright/e2e/crypto/device-verification.spec.ts b/playwright/e2e/crypto/device-verification.spec.ts index 83a81c260cd..a028bfb70c2 100644 --- a/playwright/e2e/crypto/device-verification.spec.ts +++ b/playwright/e2e/crypto/device-verification.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -21,7 +21,7 @@ import { } from "./utils"; import { Bot } from "../../pages/bot"; -test.describe("Device verification", () => { +test.describe("Device verification", { tag: "@no-webkit" }, () => { let aliceBotClient: Bot; /** The backup version that was set up by the bot client. */ @@ -66,7 +66,7 @@ test.describe("Device verification", () => { } test("Verify device with SAS during login", async ({ page, app, credentials, homeserver }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); // Launch the verification request between alice and the bot const verificationRequest = await initiateAliceVerificationRequest(page); @@ -93,7 +93,7 @@ test.describe("Device verification", () => { test("Verify device with QR code during login", async ({ page, app, credentials, homeserver }) => { // A mode 0x02 verification: "self-verifying in which the current device does not yet trust the master key" - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); // Launch the verification request between alice and the bot const verificationRequest = await initiateAliceVerificationRequest(page); @@ -137,7 +137,7 @@ test.describe("Device verification", () => { }); test("Verify device with Security Phrase during login", async ({ page, app, credentials, homeserver }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); // Select the security phrase await page.locator(".mx_AuthPage").getByRole("button", { name: "Verify with Security Key or Phrase" }).click(); @@ -158,7 +158,7 @@ test.describe("Device verification", () => { }); test("Verify device with Security Key during login", async ({ page, app, credentials, homeserver }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); // Select the security phrase await page.locator(".mx_AuthPage").getByRole("button", { name: "Verify with Security Key or Phrase" }).click(); @@ -181,7 +181,7 @@ test.describe("Device verification", () => { }); test("Handle incoming verification request with SAS", async ({ page, credentials, homeserver, toasts }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); /* Dismiss "Verify this device" */ const authPage = page.locator(".mx_AuthPage"); diff --git a/playwright/e2e/crypto/event-shields.spec.ts b/playwright/e2e/crypto/event-shields.spec.ts index 0beb8e36500..3811c2819e5 100644 --- a/playwright/e2e/crypto/event-shields.spec.ts +++ b/playwright/e2e/crypto/event-shields.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -53,6 +53,8 @@ test.describe("Cryptography", function () { // Even though Alice has seen Bob's join event, Bob may not have done so yet. Wait for the sync to arrive. await bob.awaitRoomMembership(testRoomId); + + await app.client.network.setupRoute(); }); test("should show the correct shield on e2e events", async ({ @@ -133,8 +135,7 @@ test.describe("Cryptography", function () { "Encrypted by a device not verified by its owner.", ); - /* In legacy crypto: should show a grey padlock for a message from a deleted device. - * In rust crypto: should show a red padlock for a message from an unverified device. + /* Should show a red padlock for a message from an unverified device. * Rust crypto remembers the verification state of the sending device, so it will know that the device was * unverified, even if it gets deleted. */ // bob deletes his second device @@ -168,9 +169,7 @@ test.describe("Cryptography", function () { await expect(lastE2eIcon).toHaveClass(/mx_EventTile_e2eIcon_warning/); await lastE2eIcon.focus(); await expect(await app.getTooltipForElement(lastE2eIcon)).toContainText( - workerInfo.project.name === "Legacy Crypto" - ? "Encrypted by an unknown or deleted device." - : "Encrypted by a device not verified by its owner.", + "Encrypted by a device not verified by its owner.", ); }); @@ -208,7 +207,7 @@ test.describe("Cryptography", function () { window.localStorage.clear(); }); await page.reload(); - await logIntoElement(page, homeserver, aliceCredentials, securityKey); + await logIntoElement(page, aliceCredentials, securityKey); /* go back to the test room and find Bob's message again */ await app.viewRoomById(testRoomId); diff --git a/playwright/e2e/crypto/invisible-crypto.spec.ts b/playwright/e2e/crypto/invisible-crypto.spec.ts index f207d2c6bb3..f1272ec710d 100644 --- a/playwright/e2e/crypto/invisible-crypto.spec.ts +++ b/playwright/e2e/crypto/invisible-crypto.spec.ts @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/crypto/logout.spec.ts b/playwright/e2e/crypto/logout.spec.ts index b88ae0de734..2bafe0ece88 100644 --- a/playwright/e2e/crypto/logout.spec.ts +++ b/playwright/e2e/crypto/logout.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,7 +11,7 @@ import { createRoom, enableKeyBackup, logIntoElement, sendMessageInCurrentRoom } test.describe("Logout tests", () => { test.beforeEach(async ({ page, homeserver, credentials }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); }); test("Ask to set up recovery on logout if not setup", async ({ page, app }) => { diff --git a/playwright/e2e/crypto/migration.spec.ts b/playwright/e2e/crypto/migration.spec.ts index 048b39f06a5..c36cf2997ee 100644 --- a/playwright/e2e/crypto/migration.spec.ts +++ b/playwright/e2e/crypto/migration.spec.ts @@ -2,16 +2,16 @@ Copyright 2024 New Vector Ltd. Copyright 2023, 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 path from "path"; import { readFile } from "node:fs/promises"; -import { expect, test as base } from "../../element-web-test"; +import { expect, Fixtures, test as base } from "../../element-web-test"; -const test = base.extend({ +const test = base.extend({ // Replace the `user` fixture with one which populates the indexeddb data before starting the app. user: async ({ context, pageWithCredentials: page, credentials }, use) => { await page.route(`/test_indexeddb_cryptostore_dump/*`, async (route, request) => { @@ -25,11 +25,10 @@ const test = base.extend({ }, }); -test.describe("migration", function () { +test.describe("migration", { tag: "@no-webkit" }, function () { test.use({ displayName: "Alice" }); test("Should support migration from legacy crypto", async ({ context, user, page }, workerInfo) => { - test.skip(workerInfo.project.name === "Legacy Crypto", "This test only works with Rust crypto."); test.slow(); // We should see a migration progress bar diff --git a/playwright/e2e/crypto/test_indexeddb_cryptostore_dump/load.js b/playwright/e2e/crypto/test_indexeddb_cryptostore_dump/load.js index 4f5090b55d2..73c1b21b229 100644 --- a/playwright/e2e/crypto/test_indexeddb_cryptostore_dump/load.js +++ b/playwright/e2e/crypto/test_indexeddb_cryptostore_dump/load.js @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023, 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/crypto/user-verification.spec.ts b/playwright/e2e/crypto/user-verification.spec.ts index bd3d8595267..7d428ac0604 100644 --- a/playwright/e2e/crypto/user-verification.spec.ts +++ b/playwright/e2e/crypto/user-verification.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/crypto/utils.ts b/playwright/e2e/crypto/utils.ts index 94b1933977e..48da798f1a7 100644 --- a/playwright/e2e/crypto/utils.ts +++ b/playwright/e2e/crypto/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -138,22 +138,9 @@ export async function checkDeviceIsConnectedKeyBackup( * * If a `securityKey` is given, verifies the new device using the key. */ -export async function logIntoElement( - page: Page, - homeserver: HomeserverInstance, - credentials: Credentials, - securityKey?: string, -) { +export async function logIntoElement(page: Page, credentials: Credentials, securityKey?: string) { await page.goto("/#/login"); - // select homeserver - await page.getByRole("button", { name: "Edit" }).click(); - await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.config.baseUrl); - await page.getByRole("button", { name: "Continue", exact: true }).click(); - - // wait for the dialog to go away - await expect(page.locator(".mx_ServerPickerDialog")).not.toBeVisible(); - await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); await page.getByPlaceholder("Password").fill(credentials.password); await page.getByRole("button", { name: "Sign in" }).click(); @@ -220,11 +207,7 @@ export async function doTwoWaySasVerification(page: Page, verifier: JSHandle { + const res = await this.request.get(`${this.homeserver.baseUrl}/_matrix/client/v3/room_keys/version`, { + headers: { Authorization: `Bearer ${this.accessToken}` }, + }); + + return await res.json(); + } + + /** + * Calls the API directly to delete the given backup version + * @param version The version to delete + */ + public async deleteBackupVersion(version: string): Promise { + const res = await this.request.delete( + `${this.homeserver.baseUrl}/_matrix/client/v3/room_keys/version/${version}`, + { + headers: { Authorization: `Bearer ${this.accessToken}` }, + }, + ); + + if (!res.ok) { + throw new Error(`Failed to delete backup version: ${res.status}`); + } + } +} diff --git a/playwright/e2e/editing/editing.spec.ts b/playwright/e2e/editing/editing.spec.ts index e22ec250b98..83ae6ba2d9c 100644 --- a/playwright/e2e/editing/editing.spec.ts +++ b/playwright/e2e/editing/editing.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/file-upload/image-upload.spec.ts b/playwright/e2e/file-upload/image-upload.spec.ts index 76782e90e8b..ad445ab1d96 100644 --- a/playwright/e2e/file-upload/image-upload.spec.ts +++ b/playwright/e2e/file-upload/image-upload.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/forgot-password/forgot-password.spec.ts b/playwright/e2e/forgot-password/forgot-password.spec.ts index 0a12514d9ec..8033f0a1236 100644 --- a/playwright/e2e/forgot-password/forgot-password.spec.ts +++ b/playwright/e2e/forgot-password/forgot-password.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -16,6 +16,15 @@ const email = "user@nowhere.dummy"; test.describe("Forgot Password", () => { test.use({ + config: { + // The only thing that we really *need* (otherwise Element refuses to load) is a default homeserver. + // We point that to a guaranteed-invalid domain. + default_server_config: { + "m.homeserver": { + base_url: "https://server.invalid", + }, + }, + }, startHomeserverOpts: ({ mailhog }, use) => use({ template: "email", @@ -32,7 +41,7 @@ test.describe("Forgot Password", () => { await page.getByRole("link", { name: "Sign in" }).click(); // need to select a homeserver at this stage, before entering the forgot password flow - await selectHomeserver(page, homeserver.config.baseUrl); + await selectHomeserver(page, homeserver.baseUrl); await page.getByRole("button", { name: "Forgot password?" }).click(); @@ -47,7 +56,7 @@ test.describe("Forgot Password", () => { await page.goto("/"); await page.getByRole("link", { name: "Sign in" }).click(); - await selectHomeserver(page, homeserver.config.baseUrl); + await selectHomeserver(page, homeserver.baseUrl); await page.getByRole("button", { name: "Forgot password?" }).click(); diff --git a/playwright/e2e/integration-manager/get-openid-token.spec.ts b/playwright/e2e/integration-manager/get-openid-token.spec.ts index 48d52d35fa4..38da5c3de5d 100644 --- a/playwright/e2e/integration-manager/get-openid-token.spec.ts +++ b/playwright/e2e/integration-manager/get-openid-token.spec.ts @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; import { openIntegrationManager } from "./utils"; +import type { UserWidget } from "../../../src/utils/WidgetUtils-types.ts"; const ROOM_NAME = "Integration Manager Test"; @@ -92,7 +93,7 @@ test.describe("Integration Manager: Get OpenID Token", () => { }, }, id: "integration-manager", - }, + } as unknown as UserWidget, }); // Succeed when checking the token is valid diff --git a/playwright/e2e/integration-manager/kick.spec.ts b/playwright/e2e/integration-manager/kick.spec.ts index 59c2703a18d..b12215fe332 100644 --- a/playwright/e2e/integration-manager/kick.spec.ts +++ b/playwright/e2e/integration-manager/kick.spec.ts @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; import { openIntegrationManager } from "./utils"; +import type { UserWidget } from "../../../src/utils/WidgetUtils-types.ts"; const ROOM_NAME = "Integration Manager Test"; const USER_DISPLAY_NAME = "Alice"; @@ -136,7 +137,7 @@ test.describe("Integration Manager: Kick", () => { }, }, id: "integration-manager", - }, + } as unknown as UserWidget, }); // Succeed when checking the token is valid diff --git a/playwright/e2e/integration-manager/read_events.spec.ts b/playwright/e2e/integration-manager/read_events.spec.ts index 791d5bd725b..6375f3c7a22 100644 --- a/playwright/e2e/integration-manager/read_events.spec.ts +++ b/playwright/e2e/integration-manager/read_events.spec.ts @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; import { openIntegrationManager } from "./utils"; +import type { UserWidget } from "../../../src/utils/WidgetUtils-types.ts"; const ROOM_NAME = "Integration Manager Test"; @@ -107,7 +108,7 @@ test.describe("Integration Manager: Read Events", () => { }, }, id: "integration-manager", - }, + } as unknown as UserWidget, }); // Succeed when checking the token is valid diff --git a/playwright/e2e/integration-manager/send_event.spec.ts b/playwright/e2e/integration-manager/send_event.spec.ts index 363719d8f14..7edcf9812b8 100644 --- a/playwright/e2e/integration-manager/send_event.spec.ts +++ b/playwright/e2e/integration-manager/send_event.spec.ts @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; import { openIntegrationManager } from "./utils"; +import type { UserWidget } from "../../../src/utils/WidgetUtils-types.ts"; const ROOM_NAME = "Integration Manager Test"; @@ -113,7 +114,7 @@ test.describe("Integration Manager: Send Event", () => { }, }, id: "integration-manager", - }, + } as unknown as UserWidget, }); // Succeed when checking the token is valid diff --git a/playwright/e2e/integration-manager/utils.ts b/playwright/e2e/integration-manager/utils.ts index a6a11473e3a..07acb3c9c10 100644 --- a/playwright/e2e/integration-manager/utils.ts +++ b/playwright/e2e/integration-manager/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/invite/invite-dialog.spec.ts b/playwright/e2e/invite/invite-dialog.spec.ts index eb434eb5b56..73238f8c3dc 100644 --- a/playwright/e2e/invite/invite-dialog.spec.ts +++ b/playwright/e2e/invite/invite-dialog.spec.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/knock/create-knock-room.spec.ts b/playwright/e2e/knock/create-knock-room.spec.ts index 12a5a666eba..1c729ff610e 100644 --- a/playwright/e2e/knock/create-knock-room.spec.ts +++ b/playwright/e2e/knock/create-knock-room.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/knock/knock-into-room.spec.ts b/playwright/e2e/knock/knock-into-room.spec.ts index e04806f84c3..a87c33415b3 100644 --- a/playwright/e2e/knock/knock-into-room.spec.ts +++ b/playwright/e2e/knock/knock-into-room.spec.ts @@ -4,7 +4,7 @@ Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/knock/manage-knocks.spec.ts b/playwright/e2e/knock/manage-knocks.spec.ts index b2e1fc9a398..fb7e2751945 100644 --- a/playwright/e2e/knock/manage-knocks.spec.ts +++ b/playwright/e2e/knock/manage-knocks.spec.ts @@ -4,7 +4,7 @@ Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/lazy-loading/lazy-loading.spec.ts b/playwright/e2e/lazy-loading/lazy-loading.spec.ts index c931bcfb1ff..6c9457dfafb 100644 --- a/playwright/e2e/lazy-loading/lazy-loading.spec.ts +++ b/playwright/e2e/lazy-loading/lazy-loading.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -25,12 +25,13 @@ test.describe("Lazy Loading", () => { }); }); - test.beforeEach(async ({ page, homeserver, user, bot }) => { + test.beforeEach(async ({ page, homeserver, user, bot, app }) => { for (let i = 1; i <= 10; i++) { const displayName = `Charly #${i}`; const bot = new Bot(page, homeserver, { displayName, startClient: false, autoAcceptInvites: false }); charlies.push(bot); } + await app.client.network.setupRoute(); }); const name = "Lazy Loading Test"; diff --git a/playwright/e2e/left-panel/left-panel.spec.ts b/playwright/e2e/left-panel/left-panel.spec.ts index 649302d7bd9..3850df5cd07 100644 --- a/playwright/e2e/left-panel/left-panel.spec.ts +++ b/playwright/e2e/left-panel/left-panel.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/location/location.spec.ts b/playwright/e2e/location/location.spec.ts index e0c23d6c22f..6f4db3ae72d 100644 --- a/playwright/e2e/location/location.spec.ts +++ b/playwright/e2e/location/location.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,7 +10,8 @@ import { Locator, Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; -test.describe("Location sharing", () => { +// Firefox headless lacks WebGL support https://bugzilla.mozilla.org/show_bug.cgi?id=1375585 +test.describe("Location sharing", { tag: "@no-firefox" }, () => { const selectLocationShareTypeOption = (page: Page, shareType: string): Locator => { return page.getByTestId(`share-location-option-${shareType}`); }; diff --git a/playwright/e2e/login/consent.spec.ts b/playwright/e2e/login/consent.spec.ts index 4d8dd821e0c..e6c68669ecc 100644 --- a/playwright/e2e/login/consent.spec.ts +++ b/playwright/e2e/login/consent.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/login/login.spec.ts b/playwright/e2e/login/login.spec.ts index e1307f7402d..7bab38e015d 100644 --- a/playwright/e2e/login/login.spec.ts +++ b/playwright/e2e/login/login.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -70,7 +70,7 @@ const DEVICE_SIGNING_KEYS_BODY = { async function login(page: Page, homeserver: HomeserverInstance) { await page.getByRole("link", { name: "Sign in" }).click(); - await selectHomeserver(page, homeserver.config.baseUrl); + await selectHomeserver(page, homeserver.baseUrl); await page.getByRole("textbox", { name: "Username" }).fill(username); await page.getByPlaceholder("Password").fill(password); @@ -78,6 +78,18 @@ async function login(page: Page, homeserver: HomeserverInstance) { } test.describe("Login", () => { + test.use({ + config: { + // The only thing that we really *need* (otherwise Element refuses to load) is a default homeserver. + // We point that to a guaranteed-invalid domain. + default_server_config: { + "m.homeserver": { + base_url: "https://server.invalid", + }, + }, + }, + }); + test.describe("Password login", () => { test.use({ startHomeserverOpts: "consent" }); @@ -101,7 +113,7 @@ test.describe("Login", () => { await page.getByRole("link", { name: "Sign in" }).click(); // first pick the homeserver, as otherwise the user picker won't be visible - await selectHomeserver(page, homeserver.config.baseUrl); + await selectHomeserver(page, homeserver.baseUrl); await page.getByRole("button", { name: "Edit" }).click(); @@ -114,7 +126,7 @@ test.describe("Login", () => { await expect(page.locator(".mx_ServerPicker_server")).toHaveText("server.invalid"); // switch back to the custom homeserver - await selectHomeserver(page, homeserver.config.baseUrl); + await selectHomeserver(page, homeserver.baseUrl); await expect(page.getByRole("textbox", { name: "Username" })).toBeVisible(); // Disabled because flaky - see https://github.com/vector-im/element-web/issues/24688 @@ -142,10 +154,10 @@ test.describe("Login", () => { homeserver, request, }) => { - const res = await request.post( - `${homeserver.config.baseUrl}/_matrix/client/v3/keys/device_signing/upload`, - { headers: { Authorization: `Bearer ${creds.accessToken}` }, data: DEVICE_SIGNING_KEYS_BODY }, - ); + const res = await request.post(`${homeserver.baseUrl}/_matrix/client/v3/keys/device_signing/upload`, { + headers: { Authorization: `Bearer ${creds.accessToken}` }, + data: DEVICE_SIGNING_KEYS_BODY, + }); if (res.status() / 100 !== 2) { console.log("Uploading dummy keys failed", await res.json()); } @@ -172,7 +184,7 @@ test.describe("Login", () => { request, }) => { const res = await request.post( - `${homeserver.config.baseUrl}/_matrix/client/v3/keys/device_signing/upload`, + `${homeserver.baseUrl}/_matrix/client/v3/keys/device_signing/upload`, { headers: { Authorization: `Bearer ${creds.accessToken}` }, data: DEVICE_SIGNING_KEYS_BODY }, ); if (res.status() / 100 !== 2) { @@ -203,7 +215,7 @@ test.describe("Login", () => { }) => { console.log(`uid ${creds.userId} body`, DEVICE_SIGNING_KEYS_BODY); const res = await request.post( - `${homeserver.config.baseUrl}/_matrix/client/v3/keys/device_signing/upload`, + `${homeserver.baseUrl}/_matrix/client/v3/keys/device_signing/upload`, { headers: { Authorization: `Bearer ${creds.accessToken}` }, data: DEVICE_SIGNING_KEYS_BODY }, ); if (res.status() / 100 !== 2) { diff --git a/playwright/e2e/login/overwrite_login.spec.ts b/playwright/e2e/login/overwrite_login.spec.ts index 6d06bbc4290..4beed00d120 100644 --- a/playwright/e2e/login/overwrite_login.spec.ts +++ b/playwright/e2e/login/overwrite_login.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -13,7 +13,7 @@ test.describe("Overwrite login action", () => { // This seems terminally flakey: https://github.com/element-hq/element-web/issues/27363 // I tried verious things to try & deflake it, to no avail: https://github.com/matrix-org/matrix-react-sdk/pull/12506 test.skip("Try replace existing login with new one", async ({ page, app, credentials, homeserver }) => { - await logIntoElement(page, homeserver, credentials); + await logIntoElement(page, credentials); const userMenu = await app.openUserMenu(); await expect(userMenu.getByText(credentials.userId)).toBeVisible(); @@ -24,7 +24,7 @@ test.describe("Overwrite login action", () => { expect(credentials.userId).not.toBe(bobRegister.userId); const clientCredentials /* IMatrixClientCreds */ = { - homeserverUrl: homeserver.config.baseUrl, + homeserverUrl: homeserver.baseUrl, ...bobRegister, }; diff --git a/playwright/e2e/login/soft_logout.spec.ts b/playwright/e2e/login/soft_logout.spec.ts index ca0c11132a3..693d2eb08d9 100644 --- a/playwright/e2e/login/soft_logout.spec.ts +++ b/playwright/e2e/login/soft_logout.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -16,6 +16,15 @@ import { isDendrite } from "../../plugins/homeserver/dendrite"; test.describe("Soft logout", () => { test.use({ displayName: "Alice", + config: { + // The only thing that we really *need* (otherwise Element refuses to load) is a default homeserver. + // We point that to a guaranteed-invalid domain. + default_server_config: { + "m.homeserver": { + base_url: "https://server.invalid", + }, + }, + }, startHomeserverOpts: ({ oAuthServer }, use) => use({ template: "default", @@ -32,7 +41,9 @@ test.describe("Soft logout", () => { // back to the welcome page await expect(page).toHaveURL(/\/#\/home/); - await expect(page.getByRole("heading", { name: `Welcome ${user.userId}`, exact: true })).toBeVisible(); + await expect( + page.getByRole("heading", { name: "Now, let's help you get started", exact: true }), + ).toBeVisible(); }); test("still shows the soft-logout page when the page is reloaded after a soft-logout", async ({ diff --git a/playwright/e2e/login/utils.ts b/playwright/e2e/login/utils.ts index dc856d586fe..0a728faecc1 100644 --- a/playwright/e2e/login/utils.ts +++ b/playwright/e2e/login/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -19,7 +19,7 @@ export async function doTokenRegistration( await page.goto("/#/login"); await page.getByRole("button", { name: "Edit" }).click(); - await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.config.baseUrl); + await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.baseUrl); await page.getByRole("button", { name: "Continue" }).click(); // wait for the dialog to go away await expect(page.locator(".mx_ServerPickerDialog")).toHaveCount(0); diff --git a/playwright/e2e/messages/messages.spec.ts b/playwright/e2e/messages/messages.spec.ts index 1c518199a00..03c93d2620f 100644 --- a/playwright/e2e/messages/messages.spec.ts +++ b/playwright/e2e/messages/messages.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/oidc/index.ts b/playwright/e2e/oidc/index.ts index 9403406d80c..79e87a3741a 100644 --- a/playwright/e2e/oidc/index.ts +++ b/playwright/e2e/oidc/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -40,12 +40,10 @@ export const test = base.extend<{ }, }); }, - config: async ({ homeserver, startHomeserverOpts, context }, use) => { + config: async ({ config, startHomeserverOpts, context }, use) => { const issuer = `http://localhost:${(startHomeserverOpts as StartHomeserverOpts).variables["MAS_PORT"]}/`; const wellKnown = { - "m.homeserver": { - base_url: homeserver.config.baseUrl, - }, + ...config.default_server_config, "org.matrix.msc2965.authentication": { issuer, account: `${issuer}account`, @@ -57,9 +55,7 @@ export const test = base.extend<{ await route.fulfill({ json: wellKnown }); }); - await use({ - default_server_config: wellKnown, - }); + await use(config); }, }); diff --git a/playwright/e2e/oidc/oidc-aware.spec.ts b/playwright/e2e/oidc/oidc-aware.spec.ts deleted file mode 100644 index a2f1e62714c..00000000000 --- a/playwright/e2e/oidc/oidc-aware.spec.ts +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. -Copyright 2023 The Matrix.org Foundation C.I.C. - -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -Please see LICENSE files in the repository root for full details. -*/ - -import { test, expect, registerAccountMas } from "."; -import { isDendrite } from "../../plugins/homeserver/dendrite"; - -test.describe("OIDC Aware", () => { - test.skip(isDendrite, "does not yet support MAS"); - test.slow(); // trace recording takes a while here - - test("can register an account and manage it", async ({ context, page, homeserver, mailhog, app }) => { - await page.goto("/#/login"); - await page.getByRole("button", { name: "Continue" }).click(); - await registerAccountMas(page, mailhog.api, "alice", "alice@email.com", "Pa$sW0rD!"); - - // Eventually, we should end up at the home screen. - await expect(page).toHaveURL(/\/#\/home$/, { timeout: 10000 }); - await expect(page.getByRole("heading", { name: "Welcome alice", exact: true })).toBeVisible(); - - // Open settings and navigate to account management - await app.settings.openUserSettings("Account"); - const newPagePromise = context.waitForEvent("page"); - await page.getByRole("button", { name: "Manage account" }).click(); - - // Assert new tab opened - const newPage = await newPagePromise; - await expect(newPage.getByText("Primary email")).toBeVisible(); - }); -}); diff --git a/playwright/e2e/oidc/oidc-native.spec.ts b/playwright/e2e/oidc/oidc-native.spec.ts index 3309826b634..e2e7a816dd2 100644 --- a/playwright/e2e/oidc/oidc-native.spec.ts +++ b/playwright/e2e/oidc/oidc-native.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,14 +10,10 @@ import { test, expect, registerAccountMas } from "."; import { isDendrite } from "../../plugins/homeserver/dendrite"; import { ElementAppPage } from "../../pages/ElementAppPage.ts"; -test.describe("OIDC Native", () => { +test.describe("OIDC Native", { tag: ["@no-firefox", "@no-webkit"] }, () => { test.skip(isDendrite, "does not yet support MAS"); test.slow(); // trace recording takes a while here - test.use({ - labsFlags: ["feature_oidc_native_flow"], - }); - test("can register the oauth2 client and an account", async ({ context, page, homeserver, mailhog, mas }) => { const tokenUri = `http://localhost:${mas.port}/oauth2/token`; const tokenApiPromise = page.waitForRequest( @@ -45,11 +41,11 @@ test.describe("OIDC Native", () => { // Assert MAS sees the session as OIDC Native const newPage = await newPagePromise; - await newPage.getByText("Sessions").click(); + await newPage.getByText("Devices").click(); await newPage.getByText(deviceId).click(); await expect(newPage.getByText("Element")).toBeVisible(); - await expect(newPage.getByText("oauth2_session:")).toBeVisible(); await expect(newPage.getByText("http://localhost:8080/")).toBeVisible(); + await expect(newPage).toHaveURL(/\/oauth2_session/); await newPage.close(); // Assert logging out revokes both tokens diff --git a/playwright/e2e/one-to-one-chat/one-to-one-chat.spec.ts b/playwright/e2e/one-to-one-chat/one-to-one-chat.spec.ts index 1e59a9a9b23..deefb305dbc 100644 --- a/playwright/e2e/one-to-one-chat/one-to-one-chat.spec.ts +++ b/playwright/e2e/one-to-one-chat/one-to-one-chat.spec.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Ahmad Kadri Copyright 2023 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/permalinks/permalinks.spec.ts b/playwright/e2e/permalinks/permalinks.spec.ts index 746e15d2880..9b448455ecf 100644 --- a/playwright/e2e/permalinks/permalinks.spec.ts +++ b/playwright/e2e/permalinks/permalinks.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/pinned-messages/index.ts b/playwright/e2e/pinned-messages/index.ts index 545d0e34389..bb65f316277 100644 --- a/playwright/e2e/pinned-messages/index.ts +++ b/playwright/e2e/pinned-messages/index.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -13,6 +13,8 @@ import { Client } from "../../pages/client"; import { ElementAppPage } from "../../pages/ElementAppPage"; import { Bot } from "../../pages/bot"; +type RoomRef = { name: string; roomId: string }; + /** * Set up for pinned message tests. */ @@ -47,7 +49,7 @@ export class Helpers { * @param room - the name of the room to send messages into * @param messages - the list of messages to send, these can be strings or implementations of MessageSpec like `editOf` */ - async receiveMessages(room: string | { name: string }, messages: string[]) { + async receiveMessages(room: RoomRef, messages: string[]) { await this.sendMessageAsClient(this.bot, room, messages); } @@ -55,9 +57,8 @@ export class Helpers { * Use the supplied client to send messages or perform actions as specified by * the supplied {@link Message} items. */ - private async sendMessageAsClient(cli: Client, roomName: string | { name: string }, messages: string[]) { - const room = await this.findRoomByName(typeof roomName === "string" ? roomName : roomName.name); - const roomId = await room.evaluate((room) => room.roomId); + private async sendMessageAsClient(cli: Client, room: RoomRef, messages: string[]) { + const roomId = room.roomId; for (const message of messages) { await cli.sendMessage(roomId, { body: message, msgtype: "m.text" }); @@ -73,22 +74,11 @@ export class Helpers { } } - /** - * Find a room by its name - * @param roomName - * @private - */ - private async findRoomByName(roomName: string) { - return this.app.client.evaluateHandle((cli, roomName) => { - return cli.getRooms().find((r) => r.name === roomName); - }, roomName); - } - /** * Open the room with the supplied name. */ - async goTo(room: string | { name: string }) { - await this.app.viewRoomByName(typeof room === "string" ? room : room.name); + async goTo(room: RoomRef) { + await this.app.viewRoomByName(room.name); } /** diff --git a/playwright/e2e/pinned-messages/pinned-messages.spec.ts b/playwright/e2e/pinned-messages/pinned-messages.spec.ts index 06d6db80580..bb72c026107 100644 --- a/playwright/e2e/pinned-messages/pinned-messages.spec.ts +++ b/playwright/e2e/pinned-messages/pinned-messages.spec.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/playwright/e2e/polls/pollHistory.spec.ts b/playwright/e2e/polls/pollHistory.spec.ts index b9250baceae..a4d6a8ae0e0 100644 --- a/playwright/e2e/polls/pollHistory.spec.ts +++ b/playwright/e2e/polls/pollHistory.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { test, expect } from "../../element-web-test"; diff --git a/playwright/e2e/polls/polls.spec.ts b/playwright/e2e/polls/polls.spec.ts index e1d3ebe7e36..727c453a31c 100644 --- a/playwright/e2e/polls/polls.spec.ts +++ b/playwright/e2e/polls/polls.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/presence/presence.spec.ts b/playwright/e2e/presence/presence.spec.ts index 47b3440e6ed..684fd8a5bf3 100644 --- a/playwright/e2e/presence/presence.spec.ts +++ b/playwright/e2e/presence/presence.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/editing-messages-in-threads.spec.ts b/playwright/e2e/read-receipts/editing-messages-in-threads.spec.ts index 42191831c80..da27d39a2ca 100644 --- a/playwright/e2e/read-receipts/editing-messages-in-threads.spec.ts +++ b/playwright/e2e/read-receipts/editing-messages-in-threads.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/editing-messages-main-timeline.spec.ts b/playwright/e2e/read-receipts/editing-messages-main-timeline.spec.ts index a4648223050..bc4eff711b0 100644 --- a/playwright/e2e/read-receipts/editing-messages-main-timeline.spec.ts +++ b/playwright/e2e/read-receipts/editing-messages-main-timeline.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/editing-messages-thread-roots.spec.ts b/playwright/e2e/read-receipts/editing-messages-thread-roots.spec.ts index 506ed603bda..a750fd9ba76 100644 --- a/playwright/e2e/read-receipts/editing-messages-thread-roots.spec.ts +++ b/playwright/e2e/read-receipts/editing-messages-thread-roots.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/high-level.spec.ts b/playwright/e2e/read-receipts/high-level.spec.ts index 457cf994814..627b2d348d3 100644 --- a/playwright/e2e/read-receipts/high-level.spec.ts +++ b/playwright/e2e/read-receipts/high-level.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,6 +11,8 @@ Please see LICENSE files in the repository root for full details. import { customEvent, many, test } from "."; test.describe("Read receipts", { tag: "@mergequeue" }, () => { + test.slow(); + test.describe("Ignored events", () => { test("If all events after receipt are unimportant, the room is read", async ({ roomAlpha: room1, @@ -120,7 +122,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { await util.assertUnread(room2, 40); // When I jump to a message in the middle and page up - await msg.jumpTo(room2.name, "x\ny\nz\nMsg0020"); + await msg.jumpTo(room2, "x\ny\nz\nMsg0020"); await util.pageUp(); // Then the room is still unread diff --git a/playwright/e2e/read-receipts/index.ts b/playwright/e2e/read-receipts/index.ts index 49a0195fd72..eab261042e7 100644 --- a/playwright/e2e/read-receipts/index.ts +++ b/playwright/e2e/read-receipts/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -13,6 +13,8 @@ import { Bot } from "../../pages/bot"; import { Client } from "../../pages/client"; import { ElementAppPage } from "../../pages/ElementAppPage"; +type RoomRef = { name: string; roomId: string }; + /** * Set up for a read receipt test: * - Create a user with the supplied name @@ -22,9 +24,9 @@ import { ElementAppPage } from "../../pages/ElementAppPage"; */ export const test = base.extend<{ roomAlphaName?: string; - roomAlpha: { name: string; roomId: string }; + roomAlpha: RoomRef; roomBetaName?: string; - roomBeta: { name: string; roomId: string }; + roomBeta: RoomRef; msg: MessageBuilder; util: Helpers; }>({ @@ -248,12 +250,13 @@ export class MessageBuilder { /** * Find and display a message. * - * @param roomName the name of the room to look inside + * @param roomRef the ref of the room to look inside * @param message the content of the message to fine * @param includeThreads look for messages inside threads, not just the main timeline */ - async jumpTo(roomName: string, message: string, includeThreads = false) { - const room = await this.helpers.findRoomByName(roomName); + async jumpTo(roomRef: RoomRef, message: string, includeThreads = false) { + const room = await this.helpers.findRoomById(roomRef.roomId); + expect(room).toBeTruthy(); const foundMessage = await this.getMessage(room, message, includeThreads); const roomId = await room.evaluate((room) => room.roomId); const foundMessageId = await foundMessage.evaluate((ev) => ev.getId()); @@ -333,9 +336,10 @@ class Helpers { * Use the supplied client to send messages or perform actions as specified by * the supplied {@link Message} items. */ - async sendMessageAsClient(cli: Client, roomName: string | { name: string }, messages: Message[]) { - const room = await this.findRoomByName(typeof roomName === "string" ? roomName : roomName.name); - const roomId = await room.evaluate((room) => room.roomId); + async sendMessageAsClient(cli: Client, roomRef: RoomRef, messages: Message[]) { + const roomId = roomRef.roomId; + const room = await this.findRoomById(roomId); + expect(room).toBeTruthy(); for (const message of messages) { if (typeof message === "string") { @@ -359,7 +363,7 @@ class Helpers { /** * Open the room with the supplied name. */ - async goTo(room: string | { name: string }) { + async goTo(room: RoomRef) { await this.app.viewRoomByName(typeof room === "string" ? room : room.name); } @@ -423,17 +427,16 @@ class Helpers { }); } - getRoomListTile(room: string | { name: string }) { - const roomName = typeof room === "string" ? room : room.name; - return this.page.getByRole("treeitem", { name: new RegExp("^" + roomName) }); + getRoomListTile(label: string) { + return this.page.getByRole("treeitem", { name: new RegExp("^" + label) }); } /** * Click the "Mark as Read" context menu item on the room with the supplied name * in the room list. */ - async markAsRead(room: string | { name: string }) { - await this.getRoomListTile(room).click({ button: "right" }); + async markAsRead(room: RoomRef) { + await this.getRoomListTile(room.name).click({ button: "right" }); await this.page.getByText("Mark as read").click(); } @@ -441,8 +444,8 @@ class Helpers { * Assert that the room with the supplied name is "read" in the room list - i.g. * has not dot or count of unread messages. */ - async assertRead(room: string | { name: string }) { - const tile = this.getRoomListTile(room); + async assertRead(room: RoomRef) { + const tile = this.getRoomListTile(room.name); await expect(tile.locator(".mx_NotificationBadge_dot")).not.toBeVisible(); await expect(tile.locator(".mx_NotificationBadge_count")).not.toBeVisible(); } @@ -452,7 +455,7 @@ class Helpers { * (In practice, this just waits a short while to allow any unread marker to * appear, and then asserts that the room is read.) */ - async assertStillRead(room: string | { name: string }) { + async assertStillRead(room: RoomRef) { await this.page.waitForTimeout(200); await this.assertRead(room); } @@ -462,8 +465,8 @@ class Helpers { * @param room - the name of the room to check * @param count - the numeric count to assert, or if "." specified then a bold/dot (no count) state is asserted */ - async assertUnread(room: string | { name: string }, count: number | ".") { - const tile = this.getRoomListTile(room); + async assertUnread(room: RoomRef, count: number | ".") { + const tile = this.getRoomListTile(room.name); if (count === ".") { await expect(tile.locator(".mx_NotificationBadge_dot")).toBeVisible(); } else { @@ -478,8 +481,8 @@ class Helpers { * @param room - the name of the room to check * @param lessThan - the number of unread messages that is too many */ - async assertUnreadLessThan(room: string | { name: string }, lessThan: number) { - const tile = this.getRoomListTile(room); + async assertUnreadLessThan(room: RoomRef, lessThan: number) { + const tile = this.getRoomListTile(room.name); // https://playwright.dev/docs/test-assertions#expectpoll // .toBeLessThan doesn't have a retry mechanism, so we use .poll await expect @@ -496,8 +499,8 @@ class Helpers { * @param room - the name of the room to check * @param greaterThan - the number of unread messages that is too few */ - async assertUnreadGreaterThan(room: string | { name: string }, greaterThan: number) { - const tile = this.getRoomListTile(room); + async assertUnreadGreaterThan(room: RoomRef, greaterThan: number) { + const tile = this.getRoomListTile(room.name); // https://playwright.dev/docs/test-assertions#expectpoll // .toBeGreaterThan doesn't have a retry mechanism, so we use .poll await expect @@ -531,10 +534,10 @@ class Helpers { }); } - async findRoomByName(roomName: string): Promise> { - return this.app.client.evaluateHandle((cli, roomName) => { - return cli.getRooms().find((r) => r.name === roomName); - }, roomName); + async findRoomById(roomId: string): Promise> { + return this.app.client.evaluateHandle((cli, roomId) => { + return cli.getRooms().find((r) => r.roomId === roomId); + }, roomId); } private async getThreadListTile(rootMessage: string) { @@ -578,7 +581,7 @@ class Helpers { * @param room - the name of the room to send messages into * @param messages - the list of messages to send, these can be strings or implementations of MessageSpec like `editOf` */ - async receiveMessages(room: string | { name: string }, messages: Message[]) { + async receiveMessages(room: RoomRef, messages: Message[]) { await this.sendMessageAsClient(this.bot, room, messages); } diff --git a/playwright/e2e/read-receipts/message-ordering.spec.ts b/playwright/e2e/read-receipts/message-ordering.spec.ts index d7f77fae5f5..59a56e6c50b 100644 --- a/playwright/e2e/read-receipts/message-ordering.spec.ts +++ b/playwright/e2e/read-receipts/message-ordering.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/missing-referents.spec.ts b/playwright/e2e/read-receipts/missing-referents.spec.ts index a1741851e2c..a953aae448d 100644 --- a/playwright/e2e/read-receipts/missing-referents.spec.ts +++ b/playwright/e2e/read-receipts/missing-referents.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/new-messages-in-threads.spec.ts b/playwright/e2e/read-receipts/new-messages-in-threads.spec.ts index 5407f3cb44a..8deef2d2f52 100644 --- a/playwright/e2e/read-receipts/new-messages-in-threads.spec.ts +++ b/playwright/e2e/read-receipts/new-messages-in-threads.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -101,7 +101,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { await util.goTo(room1); // When I read an older message in the thread - await msg.jumpTo(room2.name, "InThread0000", true); + await msg.jumpTo(room2, "InThread0000", true); // Then the thread is still marked as unread await util.backToThreadsList(); diff --git a/playwright/e2e/read-receipts/new-messages-main-timeline.spec.ts b/playwright/e2e/read-receipts/new-messages-main-timeline.spec.ts index 92f7b10cdd7..4f94e7b09fb 100644 --- a/playwright/e2e/read-receipts/new-messages-main-timeline.spec.ts +++ b/playwright/e2e/read-receipts/new-messages-main-timeline.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -59,7 +59,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { await util.assertUnread(room2, 30); // When I jump to one of the older messages - await msg.jumpTo(room2.name, "Msg0001"); + await msg.jumpTo(room2, "Msg0001"); // Then the room is still unread, but some messages were read await util.assertUnreadLessThan(room2, 30); diff --git a/playwright/e2e/read-receipts/new-messages-thread-roots.spec.ts b/playwright/e2e/read-receipts/new-messages-thread-roots.spec.ts index 3c8ed7849f4..0e101d311a4 100644 --- a/playwright/e2e/read-receipts/new-messages-thread-roots.spec.ts +++ b/playwright/e2e/read-receipts/new-messages-thread-roots.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -49,7 +49,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { await util.assertUnread(room2, 61); // Sanity // When I jump to an old message and read the thread - await msg.jumpTo(room2.name, "beforeThread0000"); + await msg.jumpTo(room2, "beforeThread0000"); // When the thread is opened, the timeline is scrolled until the thread root reached the center await util.openThread("ThreadRoot"); diff --git a/playwright/e2e/read-receipts/notifications.spec.ts b/playwright/e2e/read-receipts/notifications.spec.ts index 46edc9a7a32..93f5515eeb7 100644 --- a/playwright/e2e/read-receipts/notifications.spec.ts +++ b/playwright/e2e/read-receipts/notifications.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/reactions-in-threads.spec.ts b/playwright/e2e/read-receipts/reactions-in-threads.spec.ts index 45b5e071ecc..eb733d3a12d 100644 --- a/playwright/e2e/read-receipts/reactions-in-threads.spec.ts +++ b/playwright/e2e/read-receipts/reactions-in-threads.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/reactions-main-timeline.spec.ts b/playwright/e2e/read-receipts/reactions-main-timeline.spec.ts index 16d5c92eca0..d8c16473836 100644 --- a/playwright/e2e/read-receipts/reactions-main-timeline.spec.ts +++ b/playwright/e2e/read-receipts/reactions-main-timeline.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/reactions-thread-roots.spec.ts b/playwright/e2e/read-receipts/reactions-thread-roots.spec.ts index 817597a27e0..d83d55e5dca 100644 --- a/playwright/e2e/read-receipts/reactions-thread-roots.spec.ts +++ b/playwright/e2e/read-receipts/reactions-thread-roots.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/read-receipts.spec.ts b/playwright/e2e/read-receipts/read-receipts.spec.ts index f6515361f23..5d42513b560 100644 --- a/playwright/e2e/read-receipts/read-receipts.spec.ts +++ b/playwright/e2e/read-receipts/read-receipts.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -196,7 +196,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { await sendThreadedReadReceipt(app, thread1a, main1); // Then the room has only one unread - the one in the thread - await util.goTo(otherRoomName); + await util.goTo({ name: otherRoomName, roomId: otherRoomId }); await util.assertUnreadThread("Message 1"); }); @@ -214,7 +214,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { // Then the room has no unreads await expect(page.getByLabel(`${otherRoomName}`)).toBeVisible(); - await util.goTo(otherRoomName); + await util.goTo({ name: otherRoomName, roomId: otherRoomId }); await util.assertReadThread("Message 1"); }); @@ -239,7 +239,7 @@ test.describe("Read receipts", { tag: "@mergequeue" }, () => { // receipt is for a later event. The room should therefore be // read, and the thread unread. await expect(page.getByLabel(`${otherRoomName}`)).toBeVisible(); - await util.goTo(otherRoomName); + await util.goTo({ name: otherRoomName, roomId: otherRoomId }); await util.assertUnreadThread("Message 1"); }); diff --git a/playwright/e2e/read-receipts/redactions-in-threads.spec.ts b/playwright/e2e/read-receipts/redactions-in-threads.spec.ts index 25c19a4f975..dc229d0b1b7 100644 --- a/playwright/e2e/read-receipts/redactions-in-threads.spec.ts +++ b/playwright/e2e/read-receipts/redactions-in-threads.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/redactions-main-timeline.spec.ts b/playwright/e2e/read-receipts/redactions-main-timeline.spec.ts index 143d9685d8f..356d03938f1 100644 --- a/playwright/e2e/read-receipts/redactions-main-timeline.spec.ts +++ b/playwright/e2e/read-receipts/redactions-main-timeline.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/redactions-thread-roots.spec.ts b/playwright/e2e/read-receipts/redactions-thread-roots.spec.ts index 01f296075c9..d875b0cecb3 100644 --- a/playwright/e2e/read-receipts/redactions-thread-roots.spec.ts +++ b/playwright/e2e/read-receipts/redactions-thread-roots.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/read-receipts/room-list-order.spec.ts b/playwright/e2e/read-receipts/room-list-order.spec.ts index 80dda202a3a..e940c45b878 100644 --- a/playwright/e2e/read-receipts/room-list-order.spec.ts +++ b/playwright/e2e/read-receipts/room-list-order.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/register/email.spec.ts b/playwright/e2e/register/email.spec.ts index 665e20ef01f..58e68c958e2 100644 --- a/playwright/e2e/register/email.spec.ts +++ b/playwright/e2e/register/email.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -21,12 +21,11 @@ test.describe("Email Registration", async () => { SMTP_PORT: mailhog.instance.smtpPort, }, }), - config: ({ homeserver }, use) => + config: ({ config }, use) => use({ + ...config, default_server_config: { - "m.homeserver": { - base_url: homeserver.config.baseUrl, - }, + ...config.default_server_config, "m.identity_server": { base_url: "https://server.invalid", }, @@ -34,7 +33,7 @@ test.describe("Email Registration", async () => { }), }); - test.beforeEach(async ({ page }) => { + test.beforeEach(async ({ homeserver, page }) => { await page.goto("/#/register"); }); diff --git a/playwright/e2e/register/register.spec.ts b/playwright/e2e/register/register.spec.ts index 19608ee174d..3aea1b2d5c1 100644 --- a/playwright/e2e/register/register.spec.ts +++ b/playwright/e2e/register/register.spec.ts @@ -2,14 +2,25 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { test, expect } from "../../element-web-test"; test.describe("Registration", () => { - test.use({ startHomeserverOpts: "consent" }); + test.use({ + startHomeserverOpts: "consent", + config: { + // The only thing that we really *need* (otherwise Element refuses to load) is a default homeserver. + // We point that to a guaranteed-invalid domain. + default_server_config: { + "m.homeserver": { + base_url: "https://server.invalid", + }, + }, + }, + }); test.beforeEach(async ({ page }) => { await page.goto("/#/register"); @@ -25,7 +36,7 @@ test.describe("Registration", () => { await expect(page.locator(".mx_Dialog")).toMatchScreenshot("server-picker.png"); await checkA11y(); - await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.config.baseUrl); + await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.baseUrl); await page.getByRole("button", { name: "Continue", exact: true }).click(); // wait for the dialog to go away await expect(page.getByRole("dialog")).not.toBeVisible(); @@ -86,7 +97,7 @@ test.describe("Registration", () => { test("should require username to fulfil requirements and be available", async ({ homeserver, page }) => { await page.getByRole("button", { name: "Edit", exact: true }).click(); await expect(page.getByRole("button", { name: "Continue", exact: true })).toBeVisible(); - await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.config.baseUrl); + await page.getByRole("textbox", { name: "Other homeserver" }).fill(homeserver.baseUrl); await page.getByRole("button", { name: "Continue", exact: true }).click(); // wait for the dialog to go away await expect(page.getByRole("dialog")).not.toBeVisible(); diff --git a/playwright/e2e/regression-tests/pills-click-in-app.spec.ts b/playwright/e2e/regression-tests/pills-click-in-app.spec.ts index f19e8c896e7..7486af70337 100644 --- a/playwright/e2e/regression-tests/pills-click-in-app.spec.ts +++ b/playwright/e2e/regression-tests/pills-click-in-app.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/release-announcement/index.ts b/playwright/e2e/release-announcement/index.ts index 59db80c3c6d..e20dfb85b4a 100644 --- a/playwright/e2e/release-announcement/index.ts +++ b/playwright/e2e/release-announcement/index.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/playwright/e2e/release-announcement/releaseAnnouncement.spec.ts b/playwright/e2e/release-announcement/releaseAnnouncement.spec.ts index e18d72ddba9..c2ebd5b8539 100644 --- a/playwright/e2e/release-announcement/releaseAnnouncement.spec.ts +++ b/playwright/e2e/release-announcement/releaseAnnouncement.spec.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/playwright/e2e/right-panel/file-panel.spec.ts b/playwright/e2e/right-panel/file-panel.spec.ts index c535bcdfbb6..579ba05bb7f 100644 --- a/playwright/e2e/right-panel/file-panel.spec.ts +++ b/playwright/e2e/right-panel/file-panel.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -39,7 +39,7 @@ test.describe("FilePanel", () => { await expect(page.locator(".mx_FilePanel")).toBeVisible(); }); - test.describe("render", () => { + test.describe("render", { tag: ["@no-firefox", "@no-webkit"] }, () => { test("should render empty state", { tag: "@screenshot" }, async ({ page }) => { // Wait until the information about the empty state is rendered await expect(page.locator(".mx_EmptyState")).toBeVisible(); diff --git a/playwright/e2e/right-panel/notification-panel.spec.ts b/playwright/e2e/right-panel/notification-panel.spec.ts index 55a6be04505..6786d8bf8d5 100644 --- a/playwright/e2e/right-panel/notification-panel.spec.ts +++ b/playwright/e2e/right-panel/notification-panel.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/right-panel/right-panel.spec.ts b/playwright/e2e/right-panel/right-panel.spec.ts index 1e9b8ebe1d4..2f51f92587e 100644 --- a/playwright/e2e/right-panel/right-panel.spec.ts +++ b/playwright/e2e/right-panel/right-panel.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/right-panel/utils.ts b/playwright/e2e/right-panel/utils.ts index b82698b93eb..0f57178f50a 100644 --- a/playwright/e2e/right-panel/utils.ts +++ b/playwright/e2e/right-panel/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/room-directory/room-directory.spec.ts b/playwright/e2e/room-directory/room-directory.spec.ts index f299a929bb7..34004c90d27 100644 --- a/playwright/e2e/room-directory/room-directory.spec.ts +++ b/playwright/e2e/room-directory/room-directory.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -15,37 +15,43 @@ test.describe("Room Directory", () => { botCreateOpts: { displayName: "Paul" }, }); - test("should allow admin to add alias & publish room to directory", async ({ page, app, user, bot }) => { - const roomId = await app.client.createRoom({ - name: "Gaming", - preset: "public_chat" as Preset, - }); - - await app.viewRoomByName("Gaming"); - await app.settings.openRoomSettings(); - - // First add a local address `gaming` - const localAddresses = page.locator(".mx_SettingsFieldset", { hasText: "Local Addresses" }); - await localAddresses.getByRole("textbox").fill("gaming"); - await localAddresses.getByRole("button", { name: "Add" }).click(); - await expect(localAddresses.getByText("#gaming:localhost")).toHaveClass("mx_EditableItem_item"); - - // Publish into the public rooms directory - const publishedAddresses = page.locator(".mx_SettingsFieldset", { hasText: "Published Addresses" }); - await expect(publishedAddresses.locator("#canonicalAlias")).toHaveValue("#gaming:localhost"); - const checkbox = publishedAddresses - .locator(".mx_SettingsFlag", { hasText: "Publish this room to the public in localhost's room directory?" }) - .getByRole("switch"); - await checkbox.check(); - await expect(checkbox).toBeChecked(); - - await app.closeDialog(); - - const resp = await bot.publicRooms({}); - expect(resp.total_room_count_estimate).toEqual(1); - expect(resp.chunk).toHaveLength(1); - expect(resp.chunk[0].room_id).toEqual(roomId); - }); + test( + "should allow admin to add alias & publish room to directory", + { tag: "@no-webkit" }, + async ({ page, app, user, bot }) => { + const roomId = await app.client.createRoom({ + name: "Gaming", + preset: "public_chat" as Preset, + }); + + await app.viewRoomByName("Gaming"); + await app.settings.openRoomSettings(); + + // First add a local address `gaming` + const localAddresses = page.locator(".mx_SettingsFieldset", { hasText: "Local Addresses" }); + await localAddresses.getByRole("textbox").fill("gaming"); + await localAddresses.getByRole("button", { name: "Add" }).click(); + await expect(localAddresses.getByText("#gaming:localhost")).toHaveClass("mx_EditableItem_item"); + + // Publish into the public rooms directory + const publishedAddresses = page.locator(".mx_SettingsFieldset", { hasText: "Published Addresses" }); + await expect(publishedAddresses.locator("#canonicalAlias")).toHaveValue("#gaming:localhost"); + const checkbox = publishedAddresses + .locator(".mx_SettingsFlag", { + hasText: "Publish this room to the public in localhost's room directory?", + }) + .getByRole("switch"); + await checkbox.check(); + await expect(checkbox).toBeChecked(); + + await app.closeDialog(); + + const resp = await bot.publicRooms({}); + expect(resp.total_room_count_estimate).toEqual(1); + expect(resp.chunk).toHaveLength(1); + expect(resp.chunk[0].room_id).toEqual(roomId); + }, + ); test( "should allow finding published rooms in directory", diff --git a/playwright/e2e/room/room-header.spec.ts b/playwright/e2e/room/room-header.spec.ts index 971508b25bb..7fe0cb3d476 100644 --- a/playwright/e2e/room/room-header.spec.ts +++ b/playwright/e2e/room/room-header.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -71,7 +71,9 @@ test.describe("Room Header", () => { // Assert the size of buttons on RoomHeader are specified and the buttons are not compressed // Note these assertions do not check the size of mx_LegacyRoomHeader_name button - const buttons = header.locator(".mx_Flex").getByRole("button"); + const buttons = header.getByRole("button").filter({ + has: page.locator("svg"), + }); await expect(buttons).toHaveCount(5); for (const button of await buttons.all()) { diff --git a/playwright/e2e/room/room.spec.ts b/playwright/e2e/room/room.spec.ts index 76fa64a6488..6181333e871 100644 --- a/playwright/e2e/room/room.spec.ts +++ b/playwright/e2e/room/room.spec.ts @@ -2,11 +2,11 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { EventType } from "matrix-js-sdk/src/matrix"; +import type { AccountDataEvents } from "matrix-js-sdk/src/matrix"; import { test, expect } from "../../element-web-test"; import { Bot } from "../../pages/bot"; @@ -28,7 +28,7 @@ test.describe("Room Directory", () => { const charlieRoom = await cli.createRoom({ is_direct: true }); await cli.invite(bobRoom.room_id, bob); await cli.invite(charlieRoom.room_id, charlie); - await cli.setAccountData("m.direct" as EventType, { + await cli.setAccountData("m.direct" as keyof AccountDataEvents, { [bob]: [bobRoom.room_id], [charlie]: [charlieRoom.room_id], }); diff --git a/playwright/e2e/room_options/marked_unread.spec.ts b/playwright/e2e/room_options/marked_unread.spec.ts index ec5b1d36798..b314152e684 100644 --- a/playwright/e2e/room_options/marked_unread.spec.ts +++ b/playwright/e2e/room_options/marked_unread.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/settings/account-user-settings-tab.spec.ts b/playwright/e2e/settings/account-user-settings-tab.spec.ts index 7390ccfd8d1..f0374174477 100644 --- a/playwright/e2e/settings/account-user-settings-tab.spec.ts +++ b/playwright/e2e/settings/account-user-settings-tab.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts b/playwright/e2e/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts index c60ecb99d25..b4eeed7728f 100644 --- a/playwright/e2e/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts +++ b/playwright/e2e/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/settings/appearance-user-settings-tab/index.ts b/playwright/e2e/settings/appearance-user-settings-tab/index.ts index d2810b021bf..be609edf9f5 100644 --- a/playwright/e2e/settings/appearance-user-settings-tab/index.ts +++ b/playwright/e2e/settings/appearance-user-settings-tab/index.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/playwright/e2e/settings/appearance-user-settings-tab/message-layout-panel.ts b/playwright/e2e/settings/appearance-user-settings-tab/message-layout-panel.spec.ts similarity index 96% rename from playwright/e2e/settings/appearance-user-settings-tab/message-layout-panel.ts rename to playwright/e2e/settings/appearance-user-settings-tab/message-layout-panel.spec.ts index 157942a5853..ce0d614d905 100644 --- a/playwright/e2e/settings/appearance-user-settings-tab/message-layout-panel.ts +++ b/playwright/e2e/settings/appearance-user-settings-tab/message-layout-panel.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts b/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts index 63b53caa23e..1fad16948d2 100644 --- a/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts +++ b/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/settings/device-management.spec.ts b/playwright/e2e/settings/device-management.spec.ts index cc7d033d6c1..4c1169ad094 100644 --- a/playwright/e2e/settings/device-management.spec.ts +++ b/playwright/e2e/settings/device-management.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/settings/general-room-settings-tab.spec.ts b/playwright/e2e/settings/general-room-settings-tab.spec.ts index 828ba5285bb..eec32f7af5e 100644 --- a/playwright/e2e/settings/general-room-settings-tab.spec.ts +++ b/playwright/e2e/settings/general-room-settings-tab.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -36,7 +36,7 @@ test.describe("General room settings tab", () => { await expect(settings.getByText("Show more")).toBeVisible(); }); - test("long address should not cause dialog to overflow", async ({ page, app }) => { + test("long address should not cause dialog to overflow", { tag: "@no-webkit" }, async ({ page, app }) => { const settings = await app.settings.openRoomSettings("General"); // 1. Set the room-address to be a really long string const longString = "abcasdhjasjhdaj1jh1asdhasjdhajsdhjavhjksd".repeat(4); diff --git a/playwright/e2e/settings/preferences-user-settings-tab.spec.ts b/playwright/e2e/settings/preferences-user-settings-tab.spec.ts index 8dc2570b426..4b6e3e299d7 100644 --- a/playwright/e2e/settings/preferences-user-settings-tab.spec.ts +++ b/playwright/e2e/settings/preferences-user-settings-tab.spec.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -31,7 +31,7 @@ test.describe("Preferences user settings tab", () => { await expect(tab).toMatchScreenshot("Preferences-user-settings-tab-should-be-rendered-properly-1.png"); }); - test("should be able to change the app language", async ({ uut, user }) => { + test("should be able to change the app language", { tag: ["@no-firefox", "@no-webkit"] }, async ({ uut, user }) => { // Check language and region setting dropdown const languageInput = uut.getByRole("button", { name: "Language Dropdown" }); await languageInput.scrollIntoViewIfNeeded(); diff --git a/playwright/e2e/settings/roles-permissions-room-settings-tab.spec.ts b/playwright/e2e/settings/roles-permissions-room-settings-tab.spec.ts index b9fc7c10eff..1193afe135c 100644 --- a/playwright/e2e/settings/roles-permissions-room-settings-tab.spec.ts +++ b/playwright/e2e/settings/roles-permissions-room-settings-tab.spec.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -37,7 +37,9 @@ test.describe("Roles & Permissions room settings tab", () => { // Change the role of Alice to Moderator (50) await combobox.selectOption("Moderator"); await expect(combobox).toHaveValue("50"); + const respPromise = page.waitForRequest("**/state/**"); await applyButton.click(); + await respPromise; // Reload and check Alice is still Moderator (50) await page.reload(); diff --git a/playwright/e2e/settings/security-user-settings-tab.spec.ts b/playwright/e2e/settings/security-user-settings-tab.spec.ts index e7562698c33..b723d1398fe 100644 --- a/playwright/e2e/settings/security-user-settings-tab.spec.ts +++ b/playwright/e2e/settings/security-user-settings-tab.spec.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/share-dialog/share-dialog.spec.ts b/playwright/e2e/share-dialog/share-dialog.spec.ts index e0993dd1bc4..d5424a681d6 100644 --- a/playwright/e2e/share-dialog/share-dialog.spec.ts +++ b/playwright/e2e/share-dialog/share-dialog.spec.ts @@ -1,7 +1,7 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/playwright/e2e/sliding-sync/sliding-sync.spec.ts b/playwright/e2e/sliding-sync/sliding-sync.spec.ts index 885948980e7..4a7fb9deed7 100644 --- a/playwright/e2e/sliding-sync/sliding-sync.spec.ts +++ b/playwright/e2e/sliding-sync/sliding-sync.spec.ts @@ -2,23 +2,63 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { Page, Request } from "@playwright/test"; -import { test, expect } from "../../element-web-test"; +import { test as base, expect } from "../../element-web-test"; import type { ElementAppPage } from "../../pages/ElementAppPage"; import type { Bot } from "../../pages/bot"; +import { ProxyInstance, SlidingSyncProxy } from "../../plugins/sliding-sync-proxy"; + +const test = base.extend<{ + slidingSyncProxy: ProxyInstance; + testRoom: { roomId: string; name: string }; + joinedBot: Bot; +}>({ + slidingSyncProxy: async ({ context, page, homeserver }, use) => { + const proxy = new SlidingSyncProxy(homeserver.config.dockerUrl, context); + const proxyInstance = await proxy.start(); + const proxyAddress = `http://localhost:${proxyInstance.port}`; + await page.addInitScript((proxyAddress) => { + window.localStorage.setItem( + "mx_local_settings", + JSON.stringify({ + feature_sliding_sync_proxy_url: proxyAddress, + }), + ); + window.localStorage.setItem("mx_labs_feature_feature_sliding_sync", "true"); + }, proxyAddress); + await use(proxyInstance); + await proxy.stop(); + }, + // Ensure slidingSyncProxy is set up before the user fixture as it relies on an init script + credentials: async ({ slidingSyncProxy, credentials }, use) => { + await use(credentials); + }, + testRoom: async ({ user, app }, use) => { + const name = "Test Room"; + const roomId = await app.client.createRoom({ name }); + await use({ roomId, name }); + }, + joinedBot: async ({ app, bot, testRoom }, use) => { + const roomId = testRoom.roomId; + await bot.prepareClient(); + const bobUserId = await bot.evaluate((client) => client.getUserId()); + await app.client.evaluate( + async (client, { bobUserId, roomId }) => { + await client.invite(roomId, bobUserId); + }, + { bobUserId, roomId }, + ); + await bot.joinRoom(roomId); + await use(bot); + }, +}); test.describe("Sliding Sync", () => { - let roomId: string; - - test.beforeEach(async ({ slidingSyncProxy, page, user, app }) => { - roomId = await app.client.createRoom({ name: "Test Room" }); - }); - const checkOrder = async (wantOrder: string[], page: Page) => { await expect(page.getByRole("group", { name: "Rooms" }).locator(".mx_RoomTile_title")).toHaveText(wantOrder); }; @@ -32,22 +72,13 @@ test.describe("Sliding Sync", () => { }); }; - const createAndJoinBot = async (app: ElementAppPage, bot: Bot): Promise => { - await bot.prepareClient(); - const bobUserId = await bot.evaluate((client) => client.getUserId()); - await app.client.evaluate( - async (client, { bobUserId, roomId }) => { - await client.invite(roomId, bobUserId); - }, - { bobUserId, roomId }, - ); - await bot.joinRoom(roomId); - return bot; - }; + // Load the user fixture for all tests + test.beforeEach(({ user }) => {}); - test.skip("should render the Rooms list in reverse chronological order by default and allowing sorting A-Z", async ({ + test("should render the Rooms list in reverse chronological order by default and allowing sorting A-Z", async ({ page, app, + testRoom, }) => { // create rooms and check room names are correct for (const fruit of ["Apple", "Pineapple", "Orange"]) { @@ -55,7 +86,7 @@ test.describe("Sliding Sync", () => { await expect(page.getByRole("treeitem", { name: fruit })).toBeVisible(); } - // Check count, 3 fruits + 1 room created in beforeEach = 4 + // Check count, 3 fruits + 1 testRoom = 4 await expect(page.locator(".mx_RoomSublist_tiles").getByRole("treeitem")).toHaveCount(4); await checkOrder(["Orange", "Pineapple", "Apple", "Test Room"], page); @@ -71,7 +102,7 @@ test.describe("Sliding Sync", () => { await checkOrder(["Apple", "Orange", "Pineapple", "Test Room"], page); }); - test.skip("should move rooms around as new events arrive", async ({ page, app }) => { + test("should move rooms around as new events arrive", async ({ page, app, testRoom }) => { // create rooms and check room names are correct const roomIds: string[] = []; for (const fruit of ["Apple", "Pineapple", "Orange"]) { @@ -94,7 +125,7 @@ test.describe("Sliding Sync", () => { await checkOrder(["Pineapple", "Orange", "Apple", "Test Room"], page); }); - test.skip("should not move the selected room: it should be sticky", async ({ page, app }) => { + test("should not move the selected room: it should be sticky", async ({ page, app, testRoom }) => { // create rooms and check room names are correct const roomIds: string[] = []; for (const fruit of ["Apple", "Pineapple", "Orange"]) { @@ -122,11 +153,9 @@ test.describe("Sliding Sync", () => { await checkOrder(["Apple", "Orange", "Pineapple", "Test Room"], page); }); - test.skip("should show the right unread notifications", async ({ page, app, user, bot }) => { - const bob = await createAndJoinBot(app, bot); - + test.skip("should show the right unread notifications", async ({ page, user, joinedBot: bob, testRoom }) => { // send a message in the test room: unread notification count should increment - await bob.sendMessage(roomId, "Hello World"); + await bob.sendMessage(testRoom.roomId, "Hello World"); const treeItemLocator1 = page.getByRole("treeitem", { name: "Test Room 1 unread message." }); await expect(treeItemLocator1.locator(".mx_NotificationBadge_count")).toHaveText("1"); @@ -136,7 +165,7 @@ test.describe("Sliding Sync", () => { ); // send an @mention: highlight count (red) should be 2. - await bob.sendMessage(roomId, `Hello ${user.displayName}`); + await bob.sendMessage(testRoom.roomId, `Hello ${user.displayName}`); const treeItemLocator2 = page.getByRole("treeitem", { name: "Test Room 2 unread messages including mentions.", }); @@ -150,9 +179,8 @@ test.describe("Sliding Sync", () => { ).not.toBeAttached(); }); - test.skip("should not show unread indicators", async ({ page, app, bot }) => { + test("should not show unread indicators", async ({ page, app, joinedBot: bot, testRoom }) => { // TODO: for now. Later we should. - await createAndJoinBot(app, bot); // disable notifs in this room (TODO: CS API call?) const locator = page.getByRole("treeitem", { name: "Test Room" }); @@ -165,7 +193,7 @@ test.describe("Sliding Sync", () => { await checkOrder(["Dummy", "Test Room"], page); - await bot.sendMessage(roomId, "Do you read me?"); + await bot.sendMessage(testRoom.roomId, "Do you read me?"); // wait for this message to arrive, tell by the room list resorting await checkOrder(["Test Room", "Dummy"], page); @@ -178,15 +206,18 @@ test.describe("Sliding Sync", () => { test("should update user settings promptly", async ({ page, app }) => { await app.settings.openUserSettings("Preferences"); const locator = page.locator(".mx_SettingsFlag").filter({ hasText: "Show timestamps in 12 hour format" }); - expect(locator).toBeVisible(); - expect(locator.locator(".mx_ToggleSwitch_on")).not.toBeAttached(); + await expect(locator).toBeVisible(); + await expect(locator.locator(".mx_ToggleSwitch_on")).not.toBeAttached(); await locator.locator(".mx_ToggleSwitch_ball").click(); - expect(locator.locator(".mx_ToggleSwitch_on")).toBeAttached(); + await expect(locator.locator(".mx_ToggleSwitch_on")).toBeAttached(); }); - test.skip("should show and be able to accept/reject/rescind invites", async ({ page, app, bot }) => { - await createAndJoinBot(app, bot); - + test("should show and be able to accept/reject/rescind invites", async ({ + page, + app, + joinedBot: bot, + testRoom, + }) => { const clientUserId = await app.client.evaluate((client) => client.getUserId()); // invite bot into 3 rooms: @@ -262,10 +293,10 @@ test.describe("Sliding Sync", () => { // Regression test for a bug in SS mode, but would be useful to have in non-SS mode too. // This ensures we are setting RoomViewStore state correctly. - test.skip("should clear the reply to field when swapping rooms", async ({ page, app }) => { + test("should clear the reply to field when swapping rooms", async ({ page, app, testRoom }) => { await app.client.createRoom({ name: "Other Room" }); await expect(page.getByRole("treeitem", { name: "Other Room" })).toBeVisible(); - await app.client.sendMessage(roomId, "Hello world"); + await app.client.sendMessage(testRoom.roomId, "Hello world"); // select the room await page.getByRole("treeitem", { name: "Test Room" }).click(); @@ -294,11 +325,11 @@ test.describe("Sliding Sync", () => { }); // Regression test for https://github.com/vector-im/element-web/issues/21462 - test.skip("should not cancel replies when permalinks are clicked", async ({ page, app }) => { + test("should not cancel replies when permalinks are clicked", async ({ page, app, testRoom }) => { // we require a first message as you cannot click the permalink text with the avatar in the way - await app.client.sendMessage(roomId, "First message"); - await app.client.sendMessage(roomId, "Permalink me"); - await app.client.sendMessage(roomId, "Reply to me"); + await app.client.sendMessage(testRoom.roomId, "First message"); + await app.client.sendMessage(testRoom.roomId, "Permalink me"); + await app.client.sendMessage(testRoom.roomId, "Reply to me"); // select the room await page.getByRole("treeitem", { name: "Test Room" }).click(); @@ -322,7 +353,7 @@ test.describe("Sliding Sync", () => { await expect(page.locator(".mx_ReplyPreview")).toBeVisible(); }); - test.skip("should send unsubscribe_rooms for every room switch", async ({ page, app }) => { + test("should send unsubscribe_rooms for every room switch", async ({ page, app }) => { // create rooms and check room names are correct const roomIds: string[] = []; for (const fruit of ["Apple", "Pineapple", "Orange"]) { diff --git a/playwright/e2e/spaces/spaces.spec.ts b/playwright/e2e/spaces/spaces.spec.ts index 233cdee3b4b..48bcc13c53a 100644 --- a/playwright/e2e/spaces/spaces.spec.ts +++ b/playwright/e2e/spaces/spaces.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -55,38 +55,44 @@ test.describe("Spaces", () => { botCreateOpts: { displayName: "BotBob" }, }); - test("should allow user to create public space", { tag: "@screenshot" }, async ({ page, app, user }) => { - const contextMenu = await openSpaceCreateMenu(page); - await expect(contextMenu).toMatchScreenshot("space-create-menu.png"); - - await contextMenu.getByRole("button", { name: /Public/ }).click(); - - await contextMenu - .locator('.mx_SpaceBasicSettings_avatarContainer input[type="file"]') - .setInputFiles("playwright/sample-files/riot.png"); - await contextMenu.getByRole("textbox", { name: "Name" }).fill("Let's have a Riot"); - await expect(contextMenu.getByRole("textbox", { name: "Address" })).toHaveValue("lets-have-a-riot"); - await contextMenu.getByRole("textbox", { name: "Description" }).fill("This is a space to reminisce Riot.im!"); - await contextMenu.getByRole("button", { name: "Create" }).click(); - - // Create the default General & Random rooms, as well as a custom "Jokes" room - await expect(page.getByPlaceholder("General")).toBeVisible(); - await expect(page.getByPlaceholder("Random")).toBeVisible(); - await page.getByPlaceholder("Support").fill("Jokes"); - await page.getByRole("button", { name: "Continue" }).click(); - - // Copy matrix.to link - await page.getByRole("button", { name: "Share invite link" }).click(); - expect(await app.getClipboardText()).toEqual("https://matrix.to/#/#lets-have-a-riot:localhost"); - - // Go to space home - await page.getByRole("button", { name: "Go to my first room" }).click(); - - // Assert rooms exist in the room list - await expect(page.getByRole("treeitem", { name: "General" })).toBeVisible(); - await expect(page.getByRole("treeitem", { name: "Random" })).toBeVisible(); - await expect(page.getByRole("treeitem", { name: "Jokes" })).toBeVisible(); - }); + test( + "should allow user to create public space", + { tag: ["@screenshot", "@no-webkit"] }, + async ({ page, app, user }) => { + const contextMenu = await openSpaceCreateMenu(page); + await expect(contextMenu).toMatchScreenshot("space-create-menu.png"); + + await contextMenu.getByRole("button", { name: /Public/ }).click(); + + await contextMenu + .locator('.mx_SpaceBasicSettings_avatarContainer input[type="file"]') + .setInputFiles("playwright/sample-files/riot.png"); + await contextMenu.getByRole("textbox", { name: "Name" }).fill("Let's have a Riot"); + await expect(contextMenu.getByRole("textbox", { name: "Address" })).toHaveValue("lets-have-a-riot"); + await contextMenu + .getByRole("textbox", { name: "Description" }) + .fill("This is a space to reminisce Riot.im!"); + await contextMenu.getByRole("button", { name: "Create" }).click(); + + // Create the default General & Random rooms, as well as a custom "Jokes" room + await expect(page.getByPlaceholder("General")).toBeVisible(); + await expect(page.getByPlaceholder("Random")).toBeVisible(); + await page.getByPlaceholder("Support").fill("Jokes"); + await page.getByRole("button", { name: "Continue" }).click(); + + // Copy matrix.to link + await page.getByRole("button", { name: "Share invite link" }).click(); + expect(await app.getClipboardText()).toEqual("https://matrix.to/#/#lets-have-a-riot:localhost"); + + // Go to space home + await page.getByRole("button", { name: "Go to my first room" }).click(); + + // Assert rooms exist in the room list + await expect(page.getByRole("treeitem", { name: "General" })).toBeVisible(); + await expect(page.getByRole("treeitem", { name: "Random" })).toBeVisible(); + await expect(page.getByRole("treeitem", { name: "Jokes" })).toBeVisible(); + }, + ); test("should allow user to create private space", { tag: "@screenshot" }, async ({ page, app, user }) => { const menu = await openSpaceCreateMenu(page); @@ -157,7 +163,7 @@ test.describe("Spaces", () => { ).toBeVisible(); }); - test("should allow user to invite another to a space", async ({ page, app, user, bot }) => { + test("should allow user to invite another to a space", { tag: "@no-webkit" }, async ({ page, app, user, bot }) => { await app.client.createSpace({ visibility: "public" as any, room_alias_name: "space", diff --git a/playwright/e2e/spaces/threads-activity-centre/index.ts b/playwright/e2e/spaces/threads-activity-centre/index.ts index b2b8473640e..2555e5a8353 100644 --- a/playwright/e2e/spaces/threads-activity-centre/index.ts +++ b/playwright/e2e/spaces/threads-activity-centre/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -14,6 +14,8 @@ import { Bot } from "../../../pages/bot"; import { Client } from "../../../pages/client"; import { ElementAppPage } from "../../../pages/ElementAppPage"; +type RoomRef = { name: string; roomId: string }; + /** * Set up for a read receipt test: * - Create a user with the supplied name @@ -181,9 +183,10 @@ export class Helpers { * Use the supplied client to send messages or perform actions as specified by * the supplied {@link Message} items. */ - async sendMessageAsClient(cli: Client, roomName: string | { name: string }, messages: Message[]) { - const room = await this.findRoomByName(typeof roomName === "string" ? roomName : roomName.name); - const roomId = await room.evaluate((room) => room.roomId); + async sendMessageAsClient(cli: Client, roomRef: RoomRef, messages: Message[]) { + const roomId = roomRef.roomId; + const room = await this.findRoomById(roomId); + expect(room).toBeTruthy(); for (const message of messages) { if (typeof message === "string") { @@ -205,7 +208,7 @@ export class Helpers { /** * Open the room with the supplied name. */ - async goTo(room: string | { name: string }) { + async goTo(room: RoomRef) { await this.app.viewRoomByName(typeof room === "string" ? room : room.name); } @@ -220,10 +223,10 @@ export class Helpers { await expect(this.page.locator(".mx_ThreadView_timelinePanelWrapper")).toBeVisible(); } - async findRoomByName(roomName: string): Promise> { - return this.app.client.evaluateHandle((cli, roomName) => { - return cli.getRooms().find((r) => r.name === roomName); - }, roomName); + async findRoomById(roomId: string): Promise> { + return this.app.client.evaluateHandle((cli, roomId) => { + return cli.getRooms().find((r) => r.roomId === roomId); + }, roomId); } /** @@ -231,7 +234,7 @@ export class Helpers { * @param room - the name of the room to send messages into * @param messages - the list of messages to send, these can be strings or implementations of MessageSpec like `editOf` */ - async receiveMessages(room: string | { name: string }, messages: Message[]) { + async receiveMessages(room: RoomRef, messages: Message[]) { await this.sendMessageAsClient(this.bot, room, messages); } diff --git a/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts b/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts index ecf458c0600..16276c5b9db 100644 --- a/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts +++ b/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts @@ -2,14 +2,14 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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 { expect, test } from "."; import { CommandOrControl } from "../../utils"; -test.describe("Threads Activity Centre", () => { +test.describe("Threads Activity Centre", { tag: "@no-firefox" }, () => { test.use({ displayName: "Alice", botCreateOpts: { displayName: "Other User" }, diff --git a/playwright/e2e/spotlight/spotlight.spec.ts b/playwright/e2e/spotlight/spotlight.spec.ts index 22513ca47a7..d1bb3dec258 100644 --- a/playwright/e2e/spotlight/spotlight.spec.ts +++ b/playwright/e2e/spotlight/spotlight.spec.ts @@ -2,10 +2,11 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { AccountDataEvents } from "matrix-js-sdk/src/matrix"; import { test, expect } from "../../element-web-test"; import { Filter } from "../../pages/Spotlight"; import { Bot } from "../../pages/bot"; @@ -124,7 +125,7 @@ test.describe("Spotlight", () => { await expect(resultLocator).toHaveCount(1); await expect(resultLocator.first()).toContainText(room1Name); await resultLocator.first().click(); - expect(page.url()).toContain(room1Id); + await expect(page).toHaveURL(new RegExp(`#/room/${room1Id}`)); await expect(roomHeaderName(page)).toContainText(room1Name); }); @@ -138,7 +139,7 @@ test.describe("Spotlight", () => { await expect(resultLocator.first()).toContainText(room1Name); await expect(resultLocator.first()).toContainText("View"); await resultLocator.first().click(); - expect(page.url()).toContain(room1Id); + await expect(page).toHaveURL(new RegExp(`#/room/${room1Id}`)); await expect(roomHeaderName(page)).toContainText(room1Name); }); @@ -152,7 +153,7 @@ test.describe("Spotlight", () => { await expect(resultLocator.first()).toContainText(room2Name); await expect(resultLocator.first()).toContainText("Join"); await resultLocator.first().click(); - expect(page.url()).toContain(room2Id); + await expect(page).toHaveURL(new RegExp(`#/room/${room2Id}`)); await expect(page.locator(".mx_RoomView_MessageList")).toHaveCount(1); await expect(roomHeaderName(page)).toContainText(room2Name); }); @@ -167,7 +168,7 @@ test.describe("Spotlight", () => { await expect(resultLocator.first()).toContainText(room3Name); await expect(resultLocator.first()).toContainText("View"); await resultLocator.first().click(); - expect(page.url()).toContain(room3Id); + await expect(page).toHaveURL(new RegExp(`#/room/${room3Id}`)); await page.getByRole("button", { name: "Join the discussion" }).click(); await expect(roomHeaderName(page)).toHaveText(room3Name); }); @@ -255,7 +256,9 @@ test.describe("Spotlight", () => { // Invite BotBob into existing DM with ByteBot const dmRooms = await app.client.evaluate((client, userId) => { - const map = client.getAccountData("m.direct")?.getContent>(); + const map = client + .getAccountData("m.direct" as keyof AccountDataEvents) + ?.getContent>(); return map[userId] ?? []; }, bot2UserId); expect(dmRooms).toHaveLength(1); diff --git a/playwright/e2e/threads/threads.spec.ts b/playwright/e2e/threads/threads.spec.ts index 06ec57653c7..edcc0578d8a 100644 --- a/playwright/e2e/threads/threads.spec.ts +++ b/playwright/e2e/threads/threads.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { SettingLevel } from "../../../src/settings/SettingLevel"; @@ -324,7 +324,7 @@ test.describe("Threads", () => { }); }); - test("can send voice messages", async ({ page, app, user }) => { + test("can send voice messages", { tag: ["@no-firefox", "@no-webkit"] }, async ({ page, app, user }) => { // Increase right-panel size, so that voice messages fit await page.evaluate(() => { window.localStorage.setItem("mx_rhs_size", "600"); @@ -353,7 +353,7 @@ test.describe("Threads", () => { test( "should send location and reply to the location on ThreadView", - { tag: "@screenshot" }, + { tag: ["@screenshot", "@no-firefox"] }, async ({ page, app, bot }) => { const roomId = await app.client.createRoom({}); await app.client.inviteUser(roomId, bot.credentials.userId); diff --git a/playwright/e2e/timeline/timeline.spec.ts b/playwright/e2e/timeline/timeline.spec.ts index 7aaabb9759d..fc8205709cb 100644 --- a/playwright/e2e/timeline/timeline.spec.ts +++ b/playwright/e2e/timeline/timeline.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -90,7 +90,7 @@ test.describe("Timeline", () => { let oldAvatarUrl: string; let newAvatarUrl: string; - test.describe("useOnlyCurrentProfiles", () => { + test.describe("useOnlyCurrentProfiles", { tag: ["@no-firefox", "@no-webkit"] }, () => { test.beforeEach(async ({ app, user }) => { ({ content_uri: oldAvatarUrl } = await app.client.uploadContent(OLD_AVATAR, { type: "image/png" })); await app.client.setAvatarUrl(oldAvatarUrl); @@ -876,7 +876,7 @@ test.describe("Timeline", () => { }); }); - test.describe("message sending", () => { + test.describe("message sending", { tag: ["@no-firefox", "@no-webkit"] }, () => { const MESSAGE = "Hello world"; const reply = "Reply"; const viewRoomSendMessageAndSetupReply = async (page: Page, app: ElementAppPage, roomId: string) => { @@ -914,7 +914,6 @@ test.describe("Timeline", () => { }); test("can reply with a voice message", async ({ page, app, room, context }) => { - await context.grantPermissions(["microphone"]); await viewRoomSendMessageAndSetupReply(page, app, room.roomId); const composerOptions = await app.openMessageComposerOptions(); diff --git a/playwright/e2e/toasts/analytics-toast.spec.ts b/playwright/e2e/toasts/analytics-toast.spec.ts index b1faf7a7794..ff106298725 100644 --- a/playwright/e2e/toasts/analytics-toast.spec.ts +++ b/playwright/e2e/toasts/analytics-toast.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/update/update.spec.ts b/playwright/e2e/update/update.spec.ts index d073a334333..a5febc55974 100644 --- a/playwright/e2e/update/update.spec.ts +++ b/playwright/e2e/update/update.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/user-menu/user-menu.spec.ts b/playwright/e2e/user-menu/user-menu.spec.ts index 268da00f30f..1f67aa0be65 100644 --- a/playwright/e2e/user-menu/user-menu.spec.ts +++ b/playwright/e2e/user-menu/user-menu.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/user-onboarding/user-onboarding-new.spec.ts b/playwright/e2e/user-onboarding/user-onboarding-new.spec.ts index b89fa3ac70a..3c7ef1f1710 100644 --- a/playwright/e2e/user-onboarding/user-onboarding-new.spec.ts +++ b/playwright/e2e/user-onboarding/user-onboarding-new.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/user-onboarding/user-onboarding-old.spec.ts b/playwright/e2e/user-onboarding/user-onboarding-old.spec.ts index e1454311c8e..8931672b52e 100644 --- a/playwright/e2e/user-onboarding/user-onboarding-old.spec.ts +++ b/playwright/e2e/user-onboarding/user-onboarding-old.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/user-view/user-view.spec.ts b/playwright/e2e/user-view/user-view.spec.ts index ff8e9684e93..f3745e78595 100644 --- a/playwright/e2e/user-view/user-view.spec.ts +++ b/playwright/e2e/user-view/user-view.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/utils.ts b/playwright/e2e/utils.ts index a2bcc0f29ae..49e7577bf6d 100644 --- a/playwright/e2e/utils.ts +++ b/playwright/e2e/utils.ts @@ -4,7 +4,7 @@ Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/widgets/events.spec.ts b/playwright/e2e/widgets/events.spec.ts index c2c8c8d3049..7553ec4b469 100644 --- a/playwright/e2e/widgets/events.spec.ts +++ b/playwright/e2e/widgets/events.spec.ts @@ -4,7 +4,7 @@ Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Mikhail Aheichyk Copyright 2022 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/widgets/layout.spec.ts b/playwright/e2e/widgets/layout.spec.ts index c80ea44078e..61332aecb4f 100644 --- a/playwright/e2e/widgets/layout.spec.ts +++ b/playwright/e2e/widgets/layout.spec.ts @@ -4,7 +4,7 @@ Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Oliver Sand Copyright 2022 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/e2e/widgets/stickers.spec.ts b/playwright/e2e/widgets/stickers.spec.ts index 318f7129616..54de1b69e28 100644 --- a/playwright/e2e/widgets/stickers.spec.ts +++ b/playwright/e2e/widgets/stickers.spec.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -12,6 +12,7 @@ import type { Page } from "@playwright/test"; import { test, expect } from "../../element-web-test"; import { ElementAppPage } from "../../pages/ElementAppPage"; import { Credentials } from "../../plugins/homeserver"; +import type { UserWidget } from "../../../src/utils/WidgetUtils-types.ts"; const STICKER_PICKER_WIDGET_ID = "fake-sticker-picker"; const STICKER_PICKER_WIDGET_NAME = "Fake Stickers"; @@ -123,11 +124,11 @@ async function setWidgetAccountData( state_key: STICKER_PICKER_WIDGET_ID, type: "m.widget", id: STICKER_PICKER_WIDGET_ID, - }, + } as unknown as UserWidget, }); } -test.describe("Stickers", () => { +test.describe("Stickers", { tag: ["@no-firefox", "@no-webkit"] }, () => { test.use({ displayName: "Sally", room: async ({ app }, use) => { diff --git a/playwright/e2e/widgets/widget-pip-close.spec.ts b/playwright/e2e/widgets/widget-pip-close.spec.ts index 1ee2246a2a5..ec3184ed6c2 100644 --- a/playwright/e2e/widgets/widget-pip-close.spec.ts +++ b/playwright/e2e/widgets/widget-pip-close.spec.ts @@ -4,7 +4,7 @@ Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Mikhail Aheichyk Copyright 2022 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/element-web-test.ts b/playwright/element-web-test.ts index 76e57e33f70..be84fbe1451 100644 --- a/playwright/element-web-test.ts +++ b/playwright/element-web-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -23,25 +23,14 @@ import { OAuthServer } from "./plugins/oauth_server"; import { Crypto } from "./pages/crypto"; import { Toasts } from "./pages/toasts"; import { Bot, CreateBotOpts } from "./pages/bot"; -import { ProxyInstance, SlidingSyncProxy } from "./plugins/sliding-sync-proxy"; import { Webserver } from "./plugins/webserver"; // Enable experimental service worker support // See https://playwright.dev/docs/service-workers-experimental#how-to-enable process.env["PW_EXPERIMENTAL_SERVICE_WORKER_NETWORK_EVENTS"] = "1"; +// This is deliberately quite a minimal config.json, so that we can test that the default settings actually work. const CONFIG_JSON: Partial = { - // This is deliberately quite a minimal config.json, so that we can test that the default settings - // actually work. - // - // The only thing that we really *need* (otherwise Element refuses to load) is a default homeserver. - // We point that to a guaranteed-invalid domain. - default_server_config: { - "m.homeserver": { - base_url: "https://server.invalid", - }, - }, - // The default language is set here for test consistency setting_defaults: { language: "en-GB", @@ -60,7 +49,7 @@ interface CredentialsWithDisplayName extends Credentials { displayName: string; } -export const test = base.extend<{ +export interface Fixtures { axe: AxeBuilder; checkA11y: () => Promise; @@ -121,14 +110,32 @@ export const test = base.extend<{ uut?: Locator; // Unit Under Test, useful place to refer a prepared locator botCreateOpts: CreateBotOpts; bot: Bot; - slidingSyncProxy: ProxyInstance; labsFlags: string[]; webserver: Webserver; -}>({ - config: CONFIG_JSON, - page: async ({ context, page, config, labsFlags }, use) => { +} + +export const test = base.extend({ + context: async ({ context }, use, testInfo) => { + // We skip tests instead of using grep-invert to still surface the counts in the html report + test.skip( + testInfo.tags.includes(`@no-${testInfo.project.name.toLowerCase()}`), + `Test does not work on ${testInfo.project.name}`, + ); + await use(context); + }, + config: {}, // We merge this atop the default CONFIG_JSON in the page fixture to make extending it easier + page: async ({ homeserver, context, page, config, labsFlags }, use) => { await context.route(`http://localhost:8080/config.json*`, async (route) => { - const json = { ...CONFIG_JSON, ...config }; + const json = { + ...CONFIG_JSON, + ...config, + default_server_config: { + "m.homeserver": { + base_url: homeserver.baseUrl, + }, + ...config.default_server_config, + }, + }; json["features"] = { ...json["features"], // Enable the lab features @@ -212,7 +219,7 @@ export const test = base.extend<{ // Ensure the language is set to a consistent value window.localStorage.setItem("mx_local_settings", '{"language":"en"}'); }, - { baseUrl: homeserver.config.baseUrl, credentials }, + { baseUrl: homeserver.baseUrl, credentials }, ); await use(page); }, @@ -241,6 +248,7 @@ export const test = base.extend<{ app: async ({ page }, use) => { const app = new ElementAppPage(page); await use(app); + await app.cleanup(); }, crypto: async ({ page, homeserver, request }, use) => { await use(new Crypto(page, homeserver, request)); @@ -264,25 +272,6 @@ export const test = base.extend<{ await mailhog.stop(); }, - slidingSyncProxy: async ({ page, user, homeserver }, use) => { - const proxy = new SlidingSyncProxy(homeserver.config.dockerUrl); - const proxyInstance = await proxy.start(); - const proxyAddress = `http://localhost:${proxyInstance.port}`; - await page.addInitScript((proxyAddress) => { - window.localStorage.setItem( - "mx_local_settings", - JSON.stringify({ - feature_sliding_sync_proxy_url: proxyAddress, - }), - ); - window.localStorage.setItem("mx_labs_feature_feature_sliding_sync", "true"); - }, proxyAddress); - await page.goto("/"); - await page.waitForSelector(".mx_MatrixChat", { timeout: 30000 }); - await use(proxyInstance); - await proxy.stop(); - }, - // eslint-disable-next-line no-empty-pattern webserver: async ({}, use) => { const webserver = new Webserver(); diff --git a/playwright/flaky-reporter.ts b/playwright/flaky-reporter.ts index 243699ebab3..ad92aca12e5 100644 --- a/playwright/flaky-reporter.ts +++ b/playwright/flaky-reporter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/global.d.ts b/playwright/global.d.ts index 0ff5bc84dc6..30875bd5778 100644 --- a/playwright/global.d.ts +++ b/playwright/global.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/pages/ElementAppPage.ts b/playwright/pages/ElementAppPage.ts index 4cff3c72eac..a02afd27bad 100644 --- a/playwright/pages/ElementAppPage.ts +++ b/playwright/pages/ElementAppPage.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -37,6 +37,10 @@ export class ElementAppPage { return this._timeline; } + public async cleanup() { + await this._client?.cleanup(); + } + /** * Open the top left user menu, returning a Locator to the resulting context menu. */ diff --git a/playwright/pages/Spotlight.ts b/playwright/pages/Spotlight.ts index a5f1318de27..5f3c8ef6b9b 100644 --- a/playwright/pages/Spotlight.ts +++ b/playwright/pages/Spotlight.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/pages/bot.ts b/playwright/pages/bot.ts index d50a0e84ee1..1d414c7bf6a 100644 --- a/playwright/pages/bot.ts +++ b/playwright/pages/bot.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -97,7 +97,7 @@ export class Bot extends Client { private async buildClient(): Promise> { const credentials = await this.getCredentials(); const clientHandle = await this.page.evaluateHandle( - async ({ homeserver, credentials, opts }) => { + async ({ baseUrl, credentials, opts }) => { function getLogger(loggerName: string): Logger { const logger = { getChild: (namespace: string) => getLogger(`${loggerName}:${namespace}`), @@ -157,7 +157,7 @@ export class Bot extends Client { }; const cli = new window.matrixcs.MatrixClient({ - baseUrl: homeserver.baseUrl, + baseUrl, userId: credentials.userId, deviceId: credentials.deviceId, accessToken: credentials.accessToken, @@ -179,7 +179,7 @@ export class Bot extends Client { return cli; }, { - homeserver: this.homeserver.config, + baseUrl: this.homeserver.baseUrl, credentials, opts: this.opts, }, diff --git a/playwright/pages/client.ts b/playwright/pages/client.ts index 2dfe7484f5d..c2586f1b5ef 100644 --- a/playwright/pages/client.ts +++ b/playwright/pages/client.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -25,6 +25,7 @@ import type { Upload, StateEvents, TimelineEvents, + AccountDataEvents, } from "matrix-js-sdk/src/matrix"; import type { RoomMessageEventContent } from "matrix-js-sdk/src/types"; import { Credentials } from "../plugins/homeserver"; @@ -51,6 +52,10 @@ export class Client { this.network = new Network(page, this); } + public async cleanup() { + await this.network.destroyRoute(); + } + public evaluate( pageFunction: PageFunctionOn, arg: Arg, @@ -174,18 +179,18 @@ export class Client { public async createRoom(options: ICreateRoomOpts): Promise { const client = await this.prepareClient(); return await client.evaluate(async (cli, options) => { - const resp = await cli.createRoom(options); - const roomId = resp.room_id; + const roomPromise = new Promise((resolve) => { + const onRoom = (room: Room) => { + if (room.roomId === roomId) { + cli.off(window.matrixcs.ClientEvent.Room, onRoom); + resolve(); + } + }; + cli.on(window.matrixcs.ClientEvent.Room, onRoom); + }); + const { room_id: roomId } = await cli.createRoom(options); if (!cli.getRoom(roomId)) { - await new Promise((resolve) => { - const onRoom = (room: Room) => { - if (room.roomId === roomId) { - cli.off(window.matrixcs.ClientEvent.Room, onRoom); - resolve(); - } - }; - cli.on(window.matrixcs.ClientEvent.Room, onRoom); - }); + await roomPromise; } return roomId; }, options); @@ -439,11 +444,14 @@ export class Client { * @param type The type of account data to set * @param content The content to set */ - public async setAccountData(type: string, content: IContent): Promise { + public async setAccountData( + type: T, + content: AccountDataEvents[T], + ): Promise { const client = await this.prepareClient(); return client.evaluate( async (client, { type, content }) => { - await client.setAccountData(type, content); + await client.setAccountData(type as T, content as AccountDataEvents[T]); }, { type, content }, ); diff --git a/playwright/pages/crypto.ts b/playwright/pages/crypto.ts index f221412a7ce..c31e7fbedb3 100644 --- a/playwright/pages/crypto.ts +++ b/playwright/pages/crypto.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -27,7 +27,7 @@ export class Crypto { accessToken: window.mxMatrixClientPeg.get().getAccessToken(), })); - const res = await this.request.post(`${this.homeserver.config.baseUrl}/_matrix/client/v3/keys/query`, { + const res = await this.request.post(`${this.homeserver.baseUrl}/_matrix/client/v3/keys/query`, { headers: { Authorization: `Bearer ${accessToken}` }, data: { device_keys: { [userId]: [] } }, }); diff --git a/playwright/pages/network.ts b/playwright/pages/network.ts index 8a2692543a0..3296fc8779b 100644 --- a/playwright/pages/network.ts +++ b/playwright/pages/network.ts @@ -2,23 +2,26 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { Page, Request } from "@playwright/test"; +import type { Page, Request, Route } from "@playwright/test"; import type { Client } from "./client"; +/** + * Utility class to simulate offline mode by blocking all requests to the homeserver. + * Will not affect any requests before `setupRoute` is called, + * which happens implicitly using the goOffline/goOnline methods. + */ export class Network { private isOffline = false; - private readonly setupPromise: Promise; + private setupPromise?: Promise; constructor( private page: Page, private client: Client, - ) { - this.setupPromise = this.setupRoute(); - } + ) {} /** * Checks if the request is from the client associated with this network object. @@ -30,25 +33,47 @@ export class Network { return authHeader === `Bearer ${accessToken}`; } - private async setupRoute() { - await this.page.route("**/_matrix/**", async (route) => { - if (this.isOffline && (await this.isRequestFromOurClient(route.request()))) { - route.abort(); - } else { - route.continue(); - } - }); + private handler = async (route: Route) => { + if (this.isOffline && (await this.isRequestFromOurClient(route.request()))) { + await route.abort(); + } else { + await route.continue(); + } + }; + + /** + * Intercept all /_matrix/ networking requests for client ready to continue/abort them based on offline status + * which is set by the goOffline/goOnline methods + */ + public async setupRoute() { + if (!this.setupPromise) { + this.setupPromise = this.page.route("**/_matrix/**", this.handler); + } + await this.setupPromise; } - // Intercept all /_matrix/ networking requests for client and fail them + /** + * Cease intercepting all /_matrix/ networking requests for client + */ + public async destroyRoute() { + if (!this.setupPromise) return; + await this.page.unroute("**/_matrix/**", this.handler); + this.setupPromise = undefined; + } + + /** + * Reject all /_matrix/ networking requests for client + */ async goOffline(): Promise { - await this.setupPromise; + await this.setupRoute(); this.isOffline = true; } - // Remove intercept on all /_matrix/ networking requests for this client + /** + * Continue all /_matrix/ networking requests for this client + */ async goOnline(): Promise { - await this.setupPromise; + await this.setupRoute(); this.isOffline = false; } } diff --git a/playwright/pages/settings.ts b/playwright/pages/settings.ts index 6a1caf1559f..7dbd183233c 100644 --- a/playwright/pages/settings.ts +++ b/playwright/pages/settings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/pages/timeline.ts b/playwright/pages/timeline.ts index baf8306a7cf..ca9965a63ec 100644 --- a/playwright/pages/timeline.ts +++ b/playwright/pages/timeline.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/pages/toasts.ts b/playwright/pages/toasts.ts index a90e18251db..4fadfb9a9b3 100644 --- a/playwright/pages/toasts.ts +++ b/playwright/pages/toasts.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/plugins/docker/index.ts b/playwright/plugins/docker/index.ts index 895a7d0f123..667dbbe597b 100644 --- a/playwright/plugins/docker/index.ts +++ b/playwright/plugins/docker/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -140,8 +140,12 @@ export class Docker { * Detects whether the docker command is actually podman. * To do this, it looks for "podman" in the output of "docker --help". */ + static _isPodman?: boolean; static async isPodman(): Promise { - const { stdout } = await exec("docker", ["--help"], true); - return stdout.toLowerCase().includes("podman"); + if (Docker._isPodman === undefined) { + const { stdout } = await exec("docker", ["--help"], true); + Docker._isPodman = stdout.toLowerCase().includes("podman"); + } + return Docker._isPodman; } } diff --git a/playwright/plugins/homeserver/dendrite/index.ts b/playwright/plugins/homeserver/dendrite/index.ts index 0886dc1586d..27215b05c9b 100644 --- a/playwright/plugins/homeserver/dendrite/index.ts +++ b/playwright/plugins/homeserver/dendrite/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/plugins/homeserver/index.ts b/playwright/plugins/homeserver/index.ts index c17ea15f554..c0f07a7bcde 100644 --- a/playwright/plugins/homeserver/index.ts +++ b/playwright/plugins/homeserver/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -16,6 +16,7 @@ export interface HomeserverConfig { export interface HomeserverInstance { readonly config: HomeserverConfig; + readonly baseUrl: string; /** * Register a user on the given Homeserver using the shared registration secret. diff --git a/playwright/plugins/homeserver/synapse/index.ts b/playwright/plugins/homeserver/synapse/index.ts index 078ca2848f3..ea9d8e3c2e3 100644 --- a/playwright/plugins/homeserver/synapse/index.ts +++ b/playwright/plugins/homeserver/synapse/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -20,7 +20,7 @@ import { randB64Bytes } from "../../utils/rand"; // Docker tag to use for synapse docker image. // We target a specific digest as every now and then a Synapse update will break our CI. // This digest is updated by the playwright-image-updates.yaml workflow periodically. -const DOCKER_TAG = "develop@sha256:6b82dba715fa7ae641010b4cc5e71edaeb9cc05a50ac5b9e4ff09afa9cd2a80d"; +const DOCKER_TAG = "develop@sha256:39f94b005e87cd3042c2535c37d8d9f915a88072fe79f6283ac18977fe134321"; async function cfgDirFromTemplate(opts: StartHomeserverOpts): Promise> { const templateDir = path.join(__dirname, "templates", opts.template); @@ -146,6 +146,10 @@ export class Synapse implements Homeserver, HomeserverInstance { return [path.join(synapseLogsPath, "stdout.log"), path.join(synapseLogsPath, "stderr.log")]; } + public get baseUrl(): string { + return this.config.baseUrl; + } + private async registerUserInternal( username: string, password: string, diff --git a/playwright/plugins/homeserver/synapse/templates/mas-oidc/homeserver.yaml b/playwright/plugins/homeserver/synapse/templates/mas-oidc/homeserver.yaml index 802d97acade..64fea9a5a97 100644 --- a/playwright/plugins/homeserver/synapse/templates/mas-oidc/homeserver.yaml +++ b/playwright/plugins/homeserver/synapse/templates/mas-oidc/homeserver.yaml @@ -82,103 +82,8 @@ experimental_features: msc3861: enabled: true - issuer: http://localhost:%MAS_PORT%/ - # We have to bake in the metadata here as we need to override `introspection_endpoint` - issuer_metadata: { - "issuer": "http://localhost:%MAS_PORT%/", - "authorization_endpoint": "http://localhost:%MAS_PORT%/authorize", - "token_endpoint": "http://localhost:%MAS_PORT%/oauth2/token", - "jwks_uri": "http://localhost:%MAS_PORT%/oauth2/keys.json", - "registration_endpoint": "http://localhost:%MAS_PORT%/oauth2/registration", - "scopes_supported": ["openid", "email"], - "response_types_supported": ["code", "id_token", "code id_token"], - "response_modes_supported": ["form_post", "query", "fragment"], - "grant_types_supported": - [ - "authorization_code", - "refresh_token", - "client_credentials", - "urn:ietf:params:oauth:grant-type:device_code", - ], - "token_endpoint_auth_methods_supported": - ["client_secret_basic", "client_secret_post", "client_secret_jwt", "private_key_jwt", "none"], - "token_endpoint_auth_signing_alg_values_supported": - [ - "HS256", - "HS384", - "HS512", - "RS256", - "RS384", - "RS512", - "PS256", - "PS384", - "PS512", - "ES256", - "ES384", - "ES256K", - ], - "revocation_endpoint": "http://localhost:%MAS_PORT%/oauth2/revoke", - "revocation_endpoint_auth_methods_supported": - ["client_secret_basic", "client_secret_post", "client_secret_jwt", "private_key_jwt", "none"], - "revocation_endpoint_auth_signing_alg_values_supported": - [ - "HS256", - "HS384", - "HS512", - "RS256", - "RS384", - "RS512", - "PS256", - "PS384", - "PS512", - "ES256", - "ES384", - "ES256K", - ], - # This is the only changed value - "introspection_endpoint": "http://host.containers.internal:%MAS_PORT%/oauth2/introspect", - "introspection_endpoint_auth_methods_supported": - ["client_secret_basic", "client_secret_post", "client_secret_jwt", "private_key_jwt", "none"], - "introspection_endpoint_auth_signing_alg_values_supported": - [ - "HS256", - "HS384", - "HS512", - "RS256", - "RS384", - "RS512", - "PS256", - "PS384", - "PS512", - "ES256", - "ES384", - "ES256K", - ], - "code_challenge_methods_supported": ["plain", "S256"], - "userinfo_endpoint": "http://localhost:%MAS_PORT%/oauth2/userinfo", - "subject_types_supported": ["public"], - "id_token_signing_alg_values_supported": - ["RS256", "RS384", "RS512", "ES256", "ES384", "PS256", "PS384", "PS512", "ES256K"], - "userinfo_signing_alg_values_supported": - ["RS256", "RS384", "RS512", "ES256", "ES384", "PS256", "PS384", "PS512", "ES256K"], - "display_values_supported": ["page"], - "claim_types_supported": ["normal"], - "claims_supported": ["iss", "sub", "aud", "iat", "exp", "nonce", "auth_time", "at_hash", "c_hash"], - "claims_parameter_supported": false, - "request_parameter_supported": false, - "request_uri_parameter_supported": false, - "prompt_values_supported": ["none", "login", "create"], - "device_authorization_endpoint": "http://localhost:%MAS_PORT%/oauth2/device", - "org.matrix.matrix-authentication-service.graphql_endpoint": "http://localhost:%MAS_PORT%/graphql", - "account_management_uri": "http://localhost:%MAS_PORT%/account/", - "account_management_actions_supported": - [ - "org.matrix.profile", - "org.matrix.sessions_list", - "org.matrix.session_view", - "org.matrix.session_end", - ], - } + issuer: http://host.containers.internal:%MAS_PORT%/ + introspection_endpoint: http://host.containers.internal:%MAS_PORT%/oauth2/introspect # Matches the `client_id` in the auth service config client_id: 0000000000000000000SYNAPSE @@ -189,6 +94,3 @@ experimental_features: # Matches the `matrix.secret` in the auth service config admin_token: "AnotherRandomSecret" - - # URL to advertise to clients where users can self-manage their account - account_management_url: "http://localhost:%MAS_PORT%/account" diff --git a/playwright/plugins/mailhog/index.ts b/playwright/plugins/mailhog/index.ts index e9e5f08b717..967d2cb8065 100644 --- a/playwright/plugins/mailhog/index.ts +++ b/playwright/plugins/mailhog/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/plugins/matrix-authentication-service/config.yaml b/playwright/plugins/matrix-authentication-service/config.yaml index e7ab83e736e..5ee69bdec5a 100644 --- a/playwright/plugins/matrix-authentication-service/config.yaml +++ b/playwright/plugins/matrix-authentication-service/config.yaml @@ -125,6 +125,7 @@ passwords: schemes: - version: 1 algorithm: argon2id + minimum_complexity: 0 matrix: homeserver: localhost secret: AnotherRandomSecret @@ -148,6 +149,8 @@ branding: tos_uri: null imprint: null logo_uri: null +account: + password_registration_enabled: true experimental: access_token_ttl: 300 compat_token_ttl: 300 diff --git a/playwright/plugins/matrix-authentication-service/index.ts b/playwright/plugins/matrix-authentication-service/index.ts index eaad350b829..775497ed968 100644 --- a/playwright/plugins/matrix-authentication-service/index.ts +++ b/playwright/plugins/matrix-authentication-service/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -18,10 +18,9 @@ import { HomeserverInstance } from "../homeserver"; import { Instance as MailhogInstance } from "../mailhog"; // Docker tag to use for `ghcr.io/matrix-org/matrix-authentication-service` image. -// We use a debug tag so that we have a shell and can run all 3 necessary commands in one run. -const TAG = "0.8.0-debug"; +const TAG = "0.12.0"; -export interface ProxyInstance { +interface Instance { containerId: string; postgresId: string; configDir: string; @@ -62,7 +61,7 @@ async function cfgDirFromTemplate(opts: { export class MatrixAuthenticationService { private readonly masDocker = new Docker(); private readonly postgresDocker = new PostgresDocker("mas"); - private instance: ProxyInstance; + private instance: Instance; public port: number; constructor(private context: BrowserContext) {} @@ -72,7 +71,7 @@ export class MatrixAuthenticationService { return { port: this.port }; } - async start(homeserver: HomeserverInstance, mailhog: MailhogInstance): Promise { + async start(homeserver: HomeserverInstance, mailhog: MailhogInstance): Promise { console.log(new Date(), "Starting mas..."); if (!this.port) await this.prepare(); @@ -87,15 +86,10 @@ export class MatrixAuthenticationService { console.log(new Date(), "starting mas container...", TAG); const containerId = await this.masDocker.run({ - image: "ghcr.io/matrix-org/matrix-authentication-service:" + TAG, + image: "ghcr.io/element-hq/matrix-authentication-service:" + TAG, containerName: "react-sdk-playwright-mas", - params: ["-p", `${port}:8080/tcp`, "-v", `${configDir}:/config`, "--entrypoint", "sh"], - cmd: [ - "-c", - "mas-cli database migrate --config /config/config.yaml && " + - "mas-cli config sync --config /config/config.yaml && " + - "mas-cli server --config /config/config.yaml", - ], + params: ["-p", `${port}:8080/tcp`, "-v", `${configDir}:/config`], + cmd: ["server", "--config", "/config/config.yaml"], }); console.log(new Date(), "started!"); diff --git a/playwright/plugins/oauth_server/index.ts b/playwright/plugins/oauth_server/index.ts index 4f855d3dc4f..3f80dc11ca9 100644 --- a/playwright/plugins/oauth_server/index.ts +++ b/playwright/plugins/oauth_server/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/plugins/postgres/index.ts b/playwright/plugins/postgres/index.ts index bb63016c7a1..52f682c4b44 100644 --- a/playwright/plugins/postgres/index.ts +++ b/playwright/plugins/postgres/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -21,13 +21,15 @@ export class PostgresDocker extends Docker { super(); } - private async waitForPostgresReady(): Promise { + private async waitForPostgresReady(ipAddress: string): Promise { const waitTimeMillis = 30000; const startTime = new Date().getTime(); let lastErr: Error | null = null; while (new Date().getTime() - startTime < waitTimeMillis) { try { - await this.exec(["pg_isready", "-U", "postgres"], true); + // Note that we specify the IP address rather than letting it connect to the local + // socket: that's the listener we care about and empirically it matters. + await this.exec(["pg_isready", "-h", ipAddress, "-U", "postgres"], true); lastErr = null; break; } catch (err) { @@ -57,7 +59,7 @@ export class PostgresDocker extends Docker { const ipAddress = await this.getContainerIp(); console.log(new Date(), "postgres container up"); - await this.waitForPostgresReady(); + await this.waitForPostgresReady(ipAddress); console.log(new Date(), "postgres container ready"); return { ipAddress, containerId }; } diff --git a/playwright/plugins/sliding-sync-proxy/index.ts b/playwright/plugins/sliding-sync-proxy/index.ts index 3a1075339d0..166729df2df 100644 --- a/playwright/plugins/sliding-sync-proxy/index.ts +++ b/playwright/plugins/sliding-sync-proxy/index.ts @@ -2,10 +2,11 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 type { BrowserContext, Route } from "@playwright/test"; import { getFreePort } from "../utils/port"; import { Docker } from "../docker"; import { PG_PASSWORD, PostgresDocker } from "../postgres"; @@ -24,7 +25,19 @@ export class SlidingSyncProxy { private readonly postgresDocker = new PostgresDocker("sliding-sync"); private instance: ProxyInstance; - constructor(private synapseIp: string) {} + constructor( + private synapseIp: string, + private context: BrowserContext, + ) {} + + private syncHandler = async (route: Route) => { + if (!this.instance) return route.abort("blockedbyclient"); + + const baseUrl = `http://localhost:${this.instance.port}`; + await route.continue({ + url: new URL(route.request().url().split("/").slice(3).join("/"), baseUrl).href, + }); + }; async start(): Promise { console.log(new Date(), "Starting sliding sync proxy..."); @@ -50,10 +63,13 @@ export class SlidingSyncProxy { console.log(new Date(), "started!"); this.instance = { containerId, postgresId, port }; + await this.context.route("**/_matrix/client/unstable/org.matrix.msc3575/sync*", this.syncHandler); return this.instance; } async stop(): Promise { + await this.context.unroute("**/_matrix/client/unstable/org.matrix.msc3575/sync*", this.syncHandler); + await this.postgresDocker.stop(); await this.proxyDocker.stop(); console.log(new Date(), "Stopped sliding sync proxy."); diff --git a/playwright/plugins/utils/port.ts b/playwright/plugins/utils/port.ts index 8ab5fddd9b4..b54e251f2f2 100644 --- a/playwright/plugins/utils/port.ts +++ b/playwright/plugins/utils/port.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/plugins/utils/rand.ts b/playwright/plugins/utils/rand.ts index 2560da2dc99..94f723f0a6c 100644 --- a/playwright/plugins/utils/rand.ts +++ b/playwright/plugins/utils/rand.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/plugins/webserver/index.ts b/playwright/plugins/webserver/index.ts index 3a3b77b4d5a..7645e9cff3d 100644 --- a/playwright/plugins/webserver/index.ts +++ b/playwright/plugins/webserver/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/playwright/snapshots/room/room-header.spec.ts/room-header-linux.png b/playwright/snapshots/room/room-header.spec.ts/room-header-linux.png index afc5d53fab3..4ba22a52209 100644 Binary files a/playwright/snapshots/room/room-header.spec.ts/room-header-linux.png and b/playwright/snapshots/room/room-header.spec.ts/room-header-linux.png differ diff --git a/playwright/snapshots/room/room-header.spec.ts/room-header-long-name-linux.png b/playwright/snapshots/room/room-header.spec.ts/room-header-long-name-linux.png index ce15e3e1516..ef6112da1de 100644 Binary files a/playwright/snapshots/room/room-header.spec.ts/room-header-long-name-linux.png and b/playwright/snapshots/room/room-header.spec.ts/room-header-long-name-linux.png differ diff --git a/playwright/snapshots/room/room-header.spec.ts/room-header-video-room-linux.png b/playwright/snapshots/room/room-header.spec.ts/room-header-video-room-linux.png index bd31e502d7f..ed8c75104f1 100644 Binary files a/playwright/snapshots/room/room-header.spec.ts/room-header-video-room-linux.png and b/playwright/snapshots/room/room-header.spec.ts/room-header-video-room-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts/window-12px-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts/window-12px-linux.png index b2b71375bd2..41ffca6c93d 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts/window-12px-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/appearance-user-settings-tab.spec.ts/window-12px-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/message-layout-panel.spec.ts/message-layout-panel-bubble-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/message-layout-panel.spec.ts/message-layout-panel-bubble-linux.png new file mode 100644 index 00000000000..eaa68eae4ab Binary files /dev/null and b/playwright/snapshots/settings/appearance-user-settings-tab/message-layout-panel.spec.ts/message-layout-panel-bubble-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/message-layout-panel.spec.ts/message-layout-panel-modern-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/message-layout-panel.spec.ts/message-layout-panel-modern-linux.png new file mode 100644 index 00000000000..036ff61851e Binary files /dev/null and b/playwright/snapshots/settings/appearance-user-settings-tab/message-layout-panel.spec.ts/message-layout-panel-modern-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-added-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-added-linux.png index 0d18bff1c26..147fcfa057d 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-added-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-added-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-linux.png index 9cadcde4155..5475f9a5379 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-removed-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-removed-linux.png index 1ec17661fe4..23b88c022c8 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-removed-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-custom-theme-removed-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-dark-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-dark-linux.png index 75db794a1a3..6378098d7ac 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-dark-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-dark-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-light-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-light-linux.png index 357790598d0..f2269a0532a 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-light-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-light-linux.png differ diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-match-system-enabled-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-match-system-enabled-linux.png index 42f27d10bf5..6b41f30acd5 100644 Binary files a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-match-system-enabled-linux.png and b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/theme-panel-match-system-enabled-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-and-messages-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-and-messages-irc-layout-linux.png index 348db69cfc3..00b271004eb 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-and-messages-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-and-messages-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-bubble-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-bubble-layout-linux.png index 42ee5a0acb3..8f11c831dbd 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-bubble-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/collapsed-gels-bubble-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/configured-room-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/configured-room-irc-layout-linux.png index 92532e3d9c8..63655439479 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/configured-room-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/configured-room-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/event-line-inline-start-margin-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/event-line-inline-start-margin-irc-layout-linux.png index 1e50cd3c0fb..d8a5ae40569 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/event-line-inline-start-margin-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/event-line-inline-start-margin-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-bubble-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-bubble-layout-linux.png index b0960a11887..58c844a54d3 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-bubble-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-bubble-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-compact-modern-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-compact-modern-layout-linux.png index a7637b6b94d..d8e6da9f8fe 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-compact-modern-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-compact-modern-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-irc-layout-linux.png index a609a4cd0df..e1a4e6ef068 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-modern-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-modern-layout-linux.png index fe50abef0cc..032a8c11188 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-modern-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/event-tiles-modern-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-and-messages-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-and-messages-irc-layout-linux.png index ac6dadc9625..b31eae03f64 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-and-messages-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-and-messages-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-bubble-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-bubble-layout-linux.png index 8e833be3085..1c7265ca62d 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-bubble-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-bubble-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-emote-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-emote-irc-layout-linux.png index 3e9e78ca997..33ef04df3cf 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-emote-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-emote-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-irc-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-irc-layout-linux.png index 1e50cd3c0fb..d8a5ae40569 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-irc-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-irc-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-modern-layout-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-modern-layout-linux.png index b81a9d68a86..608b17051dd 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-modern-layout-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-modern-layout-linux.png differ diff --git a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-redaction-placeholder-linux.png b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-redaction-placeholder-linux.png index 58ba6c57033..06aa02cdf8c 100644 Binary files a/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-redaction-placeholder-linux.png and b/playwright/snapshots/timeline/timeline.spec.ts/expanded-gels-redaction-placeholder-linux.png differ diff --git a/playwright/stale-screenshot-reporter.ts b/playwright/stale-screenshot-reporter.ts index e5fe7edc990..3e38f78ca93 100644 --- a/playwright/stale-screenshot-reporter.ts +++ b/playwright/stale-screenshot-reporter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/recorder-worklet-loader.js b/recorder-worklet-loader.js index 41fe8b3b4e9..1717166ae06 100644 --- a/recorder-worklet-loader.js +++ b/recorder-worklet-loader.js @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/_animations.pcss b/res/css/_animations.pcss index f78d8143f5f..97fd0443313 100644 --- a/res/css/_animations.pcss +++ b/res/css/_animations.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/_common.pcss b/res/css/_common.pcss index 74328af39b2..ac7c36daa53 100644 --- a/res/css/_common.pcss +++ b/res/css/_common.pcss @@ -5,7 +5,7 @@ Copyright 2017-2019 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/_font-sizes.pcss b/res/css/_font-sizes.pcss index eb6ac362a67..528cc3c4621 100644 --- a/res/css/_font-sizes.pcss +++ b/res/css/_font-sizes.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/_spacing.pcss b/res/css/_spacing.pcss index 2fbc380e6a4..5887204c31c 100644 --- a/res/css/_spacing.pcss +++ b/res/css/_spacing.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_BeaconListItem.pcss b/res/css/components/views/beacon/_BeaconListItem.pcss index 8090f55ca3e..9b3d0dd88fd 100644 --- a/res/css/components/views/beacon/_BeaconListItem.pcss +++ b/res/css/components/views/beacon/_BeaconListItem.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_BeaconStatus.pcss b/res/css/components/views/beacon/_BeaconStatus.pcss index 7dfd401aa96..52d27bea614 100644 --- a/res/css/components/views/beacon/_BeaconStatus.pcss +++ b/res/css/components/views/beacon/_BeaconStatus.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_BeaconStatusTooltip.pcss b/res/css/components/views/beacon/_BeaconStatusTooltip.pcss index e5ee11ee5e3..8b5ef93eb13 100644 --- a/res/css/components/views/beacon/_BeaconStatusTooltip.pcss +++ b/res/css/components/views/beacon/_BeaconStatusTooltip.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_BeaconViewDialog.pcss b/res/css/components/views/beacon/_BeaconViewDialog.pcss index 71a276a62f7..8883aa4f091 100644 --- a/res/css/components/views/beacon/_BeaconViewDialog.pcss +++ b/res/css/components/views/beacon/_BeaconViewDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_DialogOwnBeaconStatus.pcss b/res/css/components/views/beacon/_DialogOwnBeaconStatus.pcss index 3e71001ebd2..b9b02c284ea 100644 --- a/res/css/components/views/beacon/_DialogOwnBeaconStatus.pcss +++ b/res/css/components/views/beacon/_DialogOwnBeaconStatus.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_DialogSidebar.pcss b/res/css/components/views/beacon/_DialogSidebar.pcss index 577a8f19c18..7c882c2da8f 100644 --- a/res/css/components/views/beacon/_DialogSidebar.pcss +++ b/res/css/components/views/beacon/_DialogSidebar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_LeftPanelLiveShareWarning.pcss b/res/css/components/views/beacon/_LeftPanelLiveShareWarning.pcss index 83fd0f3fe44..4a8fce98f6a 100644 --- a/res/css/components/views/beacon/_LeftPanelLiveShareWarning.pcss +++ b/res/css/components/views/beacon/_LeftPanelLiveShareWarning.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_LiveTimeRemaining.pcss b/res/css/components/views/beacon/_LiveTimeRemaining.pcss index a91fa29bc1a..4fe954e6a49 100644 --- a/res/css/components/views/beacon/_LiveTimeRemaining.pcss +++ b/res/css/components/views/beacon/_LiveTimeRemaining.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_OwnBeaconStatus.pcss b/res/css/components/views/beacon/_OwnBeaconStatus.pcss index e94e07c50c6..331c404d1d3 100644 --- a/res/css/components/views/beacon/_OwnBeaconStatus.pcss +++ b/res/css/components/views/beacon/_OwnBeaconStatus.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_ShareLatestLocation.pcss b/res/css/components/views/beacon/_ShareLatestLocation.pcss index aed3bc7cb97..ada69fddc12 100644 --- a/res/css/components/views/beacon/_ShareLatestLocation.pcss +++ b/res/css/components/views/beacon/_ShareLatestLocation.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/beacon/_StyledLiveBeaconIcon.pcss b/res/css/components/views/beacon/_StyledLiveBeaconIcon.pcss index 89c35791ffb..9a1d84bf43c 100644 --- a/res/css/components/views/beacon/_StyledLiveBeaconIcon.pcss +++ b/res/css/components/views/beacon/_StyledLiveBeaconIcon.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/context_menus/_KebabContextMenu.pcss b/res/css/components/views/context_menus/_KebabContextMenu.pcss index 21136d01e3b..18a01f0f6aa 100644 --- a/res/css/components/views/context_menus/_KebabContextMenu.pcss +++ b/res/css/components/views/context_menus/_KebabContextMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/dialogs/polls/_PollDetailHeader.pcss b/res/css/components/views/dialogs/polls/_PollDetailHeader.pcss index 0b31b700e23..56c11740ef0 100644 --- a/res/css/components/views/dialogs/polls/_PollDetailHeader.pcss +++ b/res/css/components/views/dialogs/polls/_PollDetailHeader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/dialogs/polls/_PollListItem.pcss b/res/css/components/views/dialogs/polls/_PollListItem.pcss index 568d1ad7127..6cb46a21d2d 100644 --- a/res/css/components/views/dialogs/polls/_PollListItem.pcss +++ b/res/css/components/views/dialogs/polls/_PollListItem.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/dialogs/polls/_PollListItemEnded.pcss b/res/css/components/views/dialogs/polls/_PollListItemEnded.pcss index 05734c1e773..772b47c9a49 100644 --- a/res/css/components/views/dialogs/polls/_PollListItemEnded.pcss +++ b/res/css/components/views/dialogs/polls/_PollListItemEnded.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/elements/_AppPermission.pcss b/res/css/components/views/elements/_AppPermission.pcss index 0891d25221b..fb7f2a7b707 100644 --- a/res/css/components/views/elements/_AppPermission.pcss +++ b/res/css/components/views/elements/_AppPermission.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/elements/_AppWarning.pcss b/res/css/components/views/elements/_AppWarning.pcss index 9cba3020d5e..099d35ce4af 100644 --- a/res/css/components/views/elements/_AppWarning.pcss +++ b/res/css/components/views/elements/_AppWarning.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Suguru Hirahara -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/elements/_FilterDropdown.pcss b/res/css/components/views/elements/_FilterDropdown.pcss index ed9f78e1bea..a2682213c66 100644 --- a/res/css/components/views/elements/_FilterDropdown.pcss +++ b/res/css/components/views/elements/_FilterDropdown.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/elements/_FilterTabGroup.pcss b/res/css/components/views/elements/_FilterTabGroup.pcss index da469ca65a8..e2b2aba2652 100644 --- a/res/css/components/views/elements/_FilterTabGroup.pcss +++ b/res/css/components/views/elements/_FilterTabGroup.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/elements/_LearnMore.pcss b/res/css/components/views/elements/_LearnMore.pcss index 388a8254ded..e6fb16ec65e 100644 --- a/res/css/components/views/elements/_LearnMore.pcss +++ b/res/css/components/views/elements/_LearnMore.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_EnableLiveShare.pcss b/res/css/components/views/location/_EnableLiveShare.pcss index 4799dda0d2b..9e56fa8dc52 100644 --- a/res/css/components/views/location/_EnableLiveShare.pcss +++ b/res/css/components/views/location/_EnableLiveShare.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_LiveDurationDropdown.pcss b/res/css/components/views/location/_LiveDurationDropdown.pcss index 0166109943c..fa292918773 100644 --- a/res/css/components/views/location/_LiveDurationDropdown.pcss +++ b/res/css/components/views/location/_LiveDurationDropdown.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_LocationShareMenu.pcss b/res/css/components/views/location/_LocationShareMenu.pcss index e1c10401f2c..d34578830fa 100644 --- a/res/css/components/views/location/_LocationShareMenu.pcss +++ b/res/css/components/views/location/_LocationShareMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_MapError.pcss b/res/css/components/views/location/_MapError.pcss index 176ab9a2a11..61227f75a35 100644 --- a/res/css/components/views/location/_MapError.pcss +++ b/res/css/components/views/location/_MapError.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_MapFallback.pcss b/res/css/components/views/location/_MapFallback.pcss index 68500eb31d2..160480ff256 100644 --- a/res/css/components/views/location/_MapFallback.pcss +++ b/res/css/components/views/location/_MapFallback.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_Marker.pcss b/res/css/components/views/location/_Marker.pcss index e8f321f601b..5a8fef91992 100644 --- a/res/css/components/views/location/_Marker.pcss +++ b/res/css/components/views/location/_Marker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_ShareDialogButtons.pcss b/res/css/components/views/location/_ShareDialogButtons.pcss index 947ac1de1cd..d0c419accbe 100644 --- a/res/css/components/views/location/_ShareDialogButtons.pcss +++ b/res/css/components/views/location/_ShareDialogButtons.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_ShareType.pcss b/res/css/components/views/location/_ShareType.pcss index 304ecd0086f..fd99be3317d 100644 --- a/res/css/components/views/location/_ShareType.pcss +++ b/res/css/components/views/location/_ShareType.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/location/_ZoomButtons.pcss b/res/css/components/views/location/_ZoomButtons.pcss index 4e9d3b124b1..f98c7bf1b0b 100644 --- a/res/css/components/views/location/_ZoomButtons.pcss +++ b/res/css/components/views/location/_ZoomButtons.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/messages/_MBeaconBody.pcss b/res/css/components/views/messages/_MBeaconBody.pcss index 18d7c4b2b3d..054db68feae 100644 --- a/res/css/components/views/messages/_MBeaconBody.pcss +++ b/res/css/components/views/messages/_MBeaconBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/messages/shared/_MediaProcessingError.pcss b/res/css/components/views/messages/shared/_MediaProcessingError.pcss index de6915f8e2b..39bbbde3894 100644 --- a/res/css/components/views/messages/shared/_MediaProcessingError.pcss +++ b/res/css/components/views/messages/shared/_MediaProcessingError.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/pips/_WidgetPip.pcss b/res/css/components/views/pips/_WidgetPip.pcss index db38238a7d6..e515e3eec08 100644 --- a/res/css/components/views/pips/_WidgetPip.pcss +++ b/res/css/components/views/pips/_WidgetPip.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/polls/_PollOption.pcss b/res/css/components/views/polls/_PollOption.pcss index 4ef6c225224..42ec7c8dac6 100644 --- a/res/css/components/views/polls/_PollOption.pcss +++ b/res/css/components/views/polls/_PollOption.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/_AddRemoveThreepids.pcss b/res/css/components/views/settings/_AddRemoveThreepids.pcss index a67a790c035..b16298f94cb 100644 --- a/res/css/components/views/settings/_AddRemoveThreepids.pcss +++ b/res/css/components/views/settings/_AddRemoveThreepids.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_CurrentDeviceSection.pcss b/res/css/components/views/settings/devices/_CurrentDeviceSection.pcss index 30d6c752f7a..051b974de2b 100644 --- a/res/css/components/views/settings/devices/_CurrentDeviceSection.pcss +++ b/res/css/components/views/settings/devices/_CurrentDeviceSection.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_DeviceDetailHeading.pcss b/res/css/components/views/settings/devices/_DeviceDetailHeading.pcss index 6ae233ba9c6..789efa9e7f8 100644 --- a/res/css/components/views/settings/devices/_DeviceDetailHeading.pcss +++ b/res/css/components/views/settings/devices/_DeviceDetailHeading.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_DeviceDetails.pcss b/res/css/components/views/settings/devices/_DeviceDetails.pcss index a6c567ad2aa..d3635710f3a 100644 --- a/res/css/components/views/settings/devices/_DeviceDetails.pcss +++ b/res/css/components/views/settings/devices/_DeviceDetails.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_DeviceExpandDetailsButton.pcss b/res/css/components/views/settings/devices/_DeviceExpandDetailsButton.pcss index 8ad786c4baf..5526f07241a 100644 --- a/res/css/components/views/settings/devices/_DeviceExpandDetailsButton.pcss +++ b/res/css/components/views/settings/devices/_DeviceExpandDetailsButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_DeviceSecurityCard.pcss b/res/css/components/views/settings/devices/_DeviceSecurityCard.pcss index ff596309ab7..7ac20c076fc 100644 --- a/res/css/components/views/settings/devices/_DeviceSecurityCard.pcss +++ b/res/css/components/views/settings/devices/_DeviceSecurityCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_DeviceTile.pcss b/res/css/components/views/settings/devices/_DeviceTile.pcss index 1bc301efadb..e4096329d6a 100644 --- a/res/css/components/views/settings/devices/_DeviceTile.pcss +++ b/res/css/components/views/settings/devices/_DeviceTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_DeviceTypeIcon.pcss b/res/css/components/views/settings/devices/_DeviceTypeIcon.pcss index 1c0a453f912..0d459b3473b 100644 --- a/res/css/components/views/settings/devices/_DeviceTypeIcon.pcss +++ b/res/css/components/views/settings/devices/_DeviceTypeIcon.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_FilteredDeviceList.pcss b/res/css/components/views/settings/devices/_FilteredDeviceList.pcss index 8508122fcd9..aac5986280e 100644 --- a/res/css/components/views/settings/devices/_FilteredDeviceList.pcss +++ b/res/css/components/views/settings/devices/_FilteredDeviceList.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_FilteredDeviceListHeader.pcss b/res/css/components/views/settings/devices/_FilteredDeviceListHeader.pcss index ce0fe84b60e..eb50e097c1b 100644 --- a/res/css/components/views/settings/devices/_FilteredDeviceListHeader.pcss +++ b/res/css/components/views/settings/devices/_FilteredDeviceListHeader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_SecurityRecommendations.pcss b/res/css/components/views/settings/devices/_SecurityRecommendations.pcss index e40e6048d37..20c9343cdaf 100644 --- a/res/css/components/views/settings/devices/_SecurityRecommendations.pcss +++ b/res/css/components/views/settings/devices/_SecurityRecommendations.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/devices/_SelectableDeviceTile.pcss b/res/css/components/views/settings/devices/_SelectableDeviceTile.pcss index 9a5ad5d2abe..927a53937f6 100644 --- a/res/css/components/views/settings/devices/_SelectableDeviceTile.pcss +++ b/res/css/components/views/settings/devices/_SelectableDeviceTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/shared/_SettingsSubsection.pcss b/res/css/components/views/settings/shared/_SettingsSubsection.pcss index ec20b86d98e..0d03a12b1db 100644 --- a/res/css/components/views/settings/shared/_SettingsSubsection.pcss +++ b/res/css/components/views/settings/shared/_SettingsSubsection.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/settings/shared/_SettingsSubsectionHeading.pcss b/res/css/components/views/settings/shared/_SettingsSubsectionHeading.pcss index fad1a51337e..eab923faa2c 100644 --- a/res/css/components/views/settings/shared/_SettingsSubsectionHeading.pcss +++ b/res/css/components/views/settings/shared/_SettingsSubsectionHeading.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/spaces/_QuickThemeSwitcher.pcss b/res/css/components/views/spaces/_QuickThemeSwitcher.pcss index 0c7ca8363d0..b84bb636e6f 100644 --- a/res/css/components/views/spaces/_QuickThemeSwitcher.pcss +++ b/res/css/components/views/spaces/_QuickThemeSwitcher.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/typography/_Caption.pcss b/res/css/components/views/typography/_Caption.pcss index 1aebc077b01..5ddede46b03 100644 --- a/res/css/components/views/typography/_Caption.pcss +++ b/res/css/components/views/typography/_Caption.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/utils/_Box.pcss b/res/css/components/views/utils/_Box.pcss index d6063c21f43..5721e326336 100644 --- a/res/css/components/views/utils/_Box.pcss +++ b/res/css/components/views/utils/_Box.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/components/views/utils/_Flex.pcss b/res/css/components/views/utils/_Flex.pcss index 7d6ad089ac3..a7f3688466d 100644 --- a/res/css/components/views/utils/_Flex.pcss +++ b/res/css/components/views/utils/_Flex.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/compound/_Icon.pcss b/res/css/compound/_Icon.pcss index bbe2f7c89b6..488e919dee5 100644 --- a/res/css/compound/_Icon.pcss +++ b/res/css/compound/_Icon.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/compound/_SuccessDialog.pcss b/res/css/compound/_SuccessDialog.pcss index 040c3064051..951eceda99b 100644 --- a/res/css/compound/_SuccessDialog.pcss +++ b/res/css/compound/_SuccessDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/ErrorView.pcss b/res/css/structures/ErrorView.pcss index 7267425ae85..cf09ac02afd 100644 --- a/res/css/structures/ErrorView.pcss +++ b/res/css/structures/ErrorView.pcss @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_AutoHideScrollbar.pcss b/res/css/structures/_AutoHideScrollbar.pcss index 610e63e5377..48d34b8e2f7 100644 --- a/res/css/structures/_AutoHideScrollbar.pcss +++ b/res/css/structures/_AutoHideScrollbar.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_AutocompleteInput.pcss b/res/css/structures/_AutocompleteInput.pcss index 409d67ceea9..15050264245 100644 --- a/res/css/structures/_AutocompleteInput.pcss +++ b/res/css/structures/_AutocompleteInput.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_BackdropPanel.pcss b/res/css/structures/_BackdropPanel.pcss index cb93bd5d6ed..3499663c72d 100644 --- a/res/css/structures/_BackdropPanel.pcss +++ b/res/css/structures/_BackdropPanel.pcss @@ -1,7 +1,7 @@ /* Copyright 2021-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_ContextualMenu.pcss b/res/css/structures/_ContextualMenu.pcss index ac4af849397..9e6be31ac05 100644 --- a/res/css/structures/_ContextualMenu.pcss +++ b/res/css/structures/_ContextualMenu.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_ErrorMessage.pcss b/res/css/structures/_ErrorMessage.pcss index 820d8820d9c..aaf2dc3b514 100644 --- a/res/css/structures/_ErrorMessage.pcss +++ b/res/css/structures/_ErrorMessage.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_FileDropTarget.pcss b/res/css/structures/_FileDropTarget.pcss index bfaa7259cf2..88712e5c1a0 100644 --- a/res/css/structures/_FileDropTarget.pcss +++ b/res/css/structures/_FileDropTarget.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_FilePanel.pcss b/res/css/structures/_FilePanel.pcss index ba6a6235760..fff90832dad 100644 --- a/res/css/structures/_FilePanel.pcss +++ b/res/css/structures/_FilePanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_GenericDropdownMenu.pcss b/res/css/structures/_GenericDropdownMenu.pcss index bf0098b4ed2..dd9dc0ade14 100644 --- a/res/css/structures/_GenericDropdownMenu.pcss +++ b/res/css/structures/_GenericDropdownMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_HomePage.pcss b/res/css/structures/_HomePage.pcss index 2c7e665e713..4999bae3fec 100644 --- a/res/css/structures/_HomePage.pcss +++ b/res/css/structures/_HomePage.pcss @@ -3,7 +3,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_LargeLoader.pcss b/res/css/structures/_LargeLoader.pcss index c18d67a0572..0e861c67ff4 100644 --- a/res/css/structures/_LargeLoader.pcss +++ b/res/css/structures/_LargeLoader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_LeftPanel.pcss b/res/css/structures/_LeftPanel.pcss index bde11867a73..d820fd333b6 100644 --- a/res/css/structures/_LeftPanel.pcss +++ b/res/css/structures/_LeftPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_MainSplit.pcss b/res/css/structures/_MainSplit.pcss index f334e34b931..750ab37108f 100644 --- a/res/css/structures/_MainSplit.pcss +++ b/res/css/structures/_MainSplit.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_MatrixChat.pcss b/res/css/structures/_MatrixChat.pcss index 39cc8c467d2..284c411013b 100644 --- a/res/css/structures/_MatrixChat.pcss +++ b/res/css/structures/_MatrixChat.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_MessagePanel.pcss b/res/css/structures/_MessagePanel.pcss index f35abed5904..fb2830bce7d 100644 --- a/res/css/structures/_MessagePanel.pcss +++ b/res/css/structures/_MessagePanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_NonUrgentToastContainer.pcss b/res/css/structures/_NonUrgentToastContainer.pcss index 05c019e0fcc..daccc88600c 100644 --- a/res/css/structures/_NonUrgentToastContainer.pcss +++ b/res/css/structures/_NonUrgentToastContainer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_QuickSettingsButton.pcss b/res/css/structures/_QuickSettingsButton.pcss index 234042105a8..44e0ded064c 100644 --- a/res/css/structures/_QuickSettingsButton.pcss +++ b/res/css/structures/_QuickSettingsButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_RightPanel.pcss b/res/css/structures/_RightPanel.pcss index 0f796dbc96d..f96f8b72322 100644 --- a/res/css/structures/_RightPanel.pcss +++ b/res/css/structures/_RightPanel.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_RoomSearch.pcss b/res/css/structures/_RoomSearch.pcss index b3e084e2963..8c82f73ea49 100644 --- a/res/css/structures/_RoomSearch.pcss +++ b/res/css/structures/_RoomSearch.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_RoomStatusBar.pcss b/res/css/structures/_RoomStatusBar.pcss index 0f30401a6b1..19bcc4cb975 100644 --- a/res/css/structures/_RoomStatusBar.pcss +++ b/res/css/structures/_RoomStatusBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_RoomView.pcss b/res/css/structures/_RoomView.pcss index 65ea555ce18..478bf548caa 100644 --- a/res/css/structures/_RoomView.pcss +++ b/res/css/structures/_RoomView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_SearchBox.pcss b/res/css/structures/_SearchBox.pcss index 316294462da..dcb7bbb85e9 100644 --- a/res/css/structures/_SearchBox.pcss +++ b/res/css/structures/_SearchBox.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_SpaceHierarchy.pcss b/res/css/structures/_SpaceHierarchy.pcss index ccbeef07347..31dad9413f1 100644 --- a/res/css/structures/_SpaceHierarchy.pcss +++ b/res/css/structures/_SpaceHierarchy.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_SpacePanel.pcss b/res/css/structures/_SpacePanel.pcss index 7ea717554b2..31dab1ee8dd 100644 --- a/res/css/structures/_SpacePanel.pcss +++ b/res/css/structures/_SpacePanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_SpaceRoomView.pcss b/res/css/structures/_SpaceRoomView.pcss index d756d51d65b..3f981ba2dee 100644 --- a/res/css/structures/_SpaceRoomView.pcss +++ b/res/css/structures/_SpaceRoomView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_SplashPage.pcss b/res/css/structures/_SplashPage.pcss index ec5e5defc84..6f976ba5753 100644 --- a/res/css/structures/_SplashPage.pcss +++ b/res/css/structures/_SplashPage.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_TabbedView.pcss b/res/css/structures/_TabbedView.pcss index 687eaf06ff4..60fe2f72115 100644 --- a/res/css/structures/_TabbedView.pcss +++ b/res/css/structures/_TabbedView.pcss @@ -4,7 +4,7 @@ Copyright 2021 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_ThreadsActivityCentre.pcss b/res/css/structures/_ThreadsActivityCentre.pcss index c159ee11146..a1472108ac9 100644 --- a/res/css/structures/_ThreadsActivityCentre.pcss +++ b/res/css/structures/_ThreadsActivityCentre.pcss @@ -1,9 +1,9 @@ /* -* Copyright 2024 New Vector Ltd. -* Copyright 2024 The Matrix.org Foundation C.I.C. -* -* SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -* Please see LICENSE files in the repository root for full details. + * Copyright 2024 New Vector Ltd. + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * 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. */ .mx_ThreadsActivityCentre_container { diff --git a/res/css/structures/_ToastContainer.pcss b/res/css/structures/_ToastContainer.pcss index 284b55c5b82..199514d9b2b 100644 --- a/res/css/structures/_ToastContainer.pcss +++ b/res/css/structures/_ToastContainer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_UploadBar.pcss b/res/css/structures/_UploadBar.pcss index f28b2fe23a6..8bc341c057b 100644 --- a/res/css/structures/_UploadBar.pcss +++ b/res/css/structures/_UploadBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_UserMenu.pcss b/res/css/structures/_UserMenu.pcss index d24a6e4ac7a..50e93d23693 100644 --- a/res/css/structures/_UserMenu.pcss +++ b/res/css/structures/_UserMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/_ViewSource.pcss b/res/css/structures/_ViewSource.pcss index 68bb123cce6..b01f8de8bd9 100644 --- a/res/css/structures/_ViewSource.pcss +++ b/res/css/structures/_ViewSource.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_CompleteSecurity.pcss b/res/css/structures/auth/_CompleteSecurity.pcss index cd540793517..f0bca3f39cc 100644 --- a/res/css/structures/auth/_CompleteSecurity.pcss +++ b/res/css/structures/auth/_CompleteSecurity.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_ConfirmSessionLockTheftView.pcss b/res/css/structures/auth/_ConfirmSessionLockTheftView.pcss index f06da60328b..5a4a427fdf7 100644 --- a/res/css/structures/auth/_ConfirmSessionLockTheftView.pcss +++ b/res/css/structures/auth/_ConfirmSessionLockTheftView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_Login.pcss b/res/css/structures/auth/_Login.pcss index 49b2faf19d0..a7192b1f0d9 100644 --- a/res/css/structures/auth/_Login.pcss +++ b/res/css/structures/auth/_Login.pcss @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_LoginSplashView.pcss b/res/css/structures/auth/_LoginSplashView.pcss index 413cda35a2e..89e94b38917 100644 --- a/res/css/structures/auth/_LoginSplashView.pcss +++ b/res/css/structures/auth/_LoginSplashView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_MobileRegistration.pcss b/res/css/structures/auth/_MobileRegistration.pcss index e2ba1cba285..77c4b78e14c 100644 --- a/res/css/structures/auth/_MobileRegistration.pcss +++ b/res/css/structures/auth/_MobileRegistration.pcss @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_Registration.pcss b/res/css/structures/auth/_Registration.pcss index 7742f256a67..409767e1da7 100644 --- a/res/css/structures/auth/_Registration.pcss +++ b/res/css/structures/auth/_Registration.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_SessionLockStolenView.pcss b/res/css/structures/auth/_SessionLockStolenView.pcss index 046e5c6ebda..a17206ecfd5 100644 --- a/res/css/structures/auth/_SessionLockStolenView.pcss +++ b/res/css/structures/auth/_SessionLockStolenView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/structures/auth/_SetupEncryptionBody.pcss b/res/css/structures/auth/_SetupEncryptionBody.pcss index c7836b96d35..ac6384313c7 100644 --- a/res/css/structures/auth/_SetupEncryptionBody.pcss +++ b/res/css/structures/auth/_SetupEncryptionBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/audio_messages/_AudioPlayer.pcss b/res/css/views/audio_messages/_AudioPlayer.pcss index 5a81e266dfa..51e97611f5a 100644 --- a/res/css/views/audio_messages/_AudioPlayer.pcss +++ b/res/css/views/audio_messages/_AudioPlayer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/audio_messages/_PlayPauseButton.pcss b/res/css/views/audio_messages/_PlayPauseButton.pcss index a47399090b5..e932c282e33 100644 --- a/res/css/views/audio_messages/_PlayPauseButton.pcss +++ b/res/css/views/audio_messages/_PlayPauseButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/audio_messages/_PlaybackContainer.pcss b/res/css/views/audio_messages/_PlaybackContainer.pcss index f1dc1d1ec8b..21980b67e6c 100644 --- a/res/css/views/audio_messages/_PlaybackContainer.pcss +++ b/res/css/views/audio_messages/_PlaybackContainer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/audio_messages/_SeekBar.pcss b/res/css/views/audio_messages/_SeekBar.pcss index fb781811f1f..980595905c3 100644 --- a/res/css/views/audio_messages/_SeekBar.pcss +++ b/res/css/views/audio_messages/_SeekBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/audio_messages/_Waveform.pcss b/res/css/views/audio_messages/_Waveform.pcss index 237352f18f0..cb548f7694c 100644 --- a/res/css/views/audio_messages/_Waveform.pcss +++ b/res/css/views/audio_messages/_Waveform.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_AuthBody.pcss b/res/css/views/auth/_AuthBody.pcss index 00db5581a0c..d86089e3311 100644 --- a/res/css/views/auth/_AuthBody.pcss +++ b/res/css/views/auth/_AuthBody.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_AuthFooter.pcss b/res/css/views/auth/_AuthFooter.pcss index c3fac570744..96b41406ad3 100644 --- a/res/css/views/auth/_AuthFooter.pcss +++ b/res/css/views/auth/_AuthFooter.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_AuthHeader.pcss b/res/css/views/auth/_AuthHeader.pcss index ef7d4dbff7d..c9133ed8cfe 100644 --- a/res/css/views/auth/_AuthHeader.pcss +++ b/res/css/views/auth/_AuthHeader.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_AuthHeaderLogo.pcss b/res/css/views/auth/_AuthHeaderLogo.pcss index 8bc9e16640f..431d77e163b 100644 --- a/res/css/views/auth/_AuthHeaderLogo.pcss +++ b/res/css/views/auth/_AuthHeaderLogo.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_AuthPage.pcss b/res/css/views/auth/_AuthPage.pcss index e73d679c462..469bca50539 100644 --- a/res/css/views/auth/_AuthPage.pcss +++ b/res/css/views/auth/_AuthPage.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_CompleteSecurityBody.pcss b/res/css/views/auth/_CompleteSecurityBody.pcss index 189d97dd52d..f0701290051 100644 --- a/res/css/views/auth/_CompleteSecurityBody.pcss +++ b/res/css/views/auth/_CompleteSecurityBody.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_CountryDropdown.pcss b/res/css/views/auth/_CountryDropdown.pcss index 51376fb4e3f..aed6ab71d8b 100644 --- a/res/css/views/auth/_CountryDropdown.pcss +++ b/res/css/views/auth/_CountryDropdown.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_InteractiveAuthEntryComponents.pcss b/res/css/views/auth/_InteractiveAuthEntryComponents.pcss index fb0bbfad8b1..cd458ee57ed 100644 --- a/res/css/views/auth/_InteractiveAuthEntryComponents.pcss +++ b/res/css/views/auth/_InteractiveAuthEntryComponents.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_LanguageSelector.pcss b/res/css/views/auth/_LanguageSelector.pcss index f76f4d6a795..d5002d00b26 100644 --- a/res/css/views/auth/_LanguageSelector.pcss +++ b/res/css/views/auth/_LanguageSelector.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_LoginWithQR.pcss b/res/css/views/auth/_LoginWithQR.pcss index 9d4744a3894..e4e41d496e4 100644 --- a/res/css/views/auth/_LoginWithQR.pcss +++ b/res/css/views/auth/_LoginWithQR.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_PassphraseField.pcss b/res/css/views/auth/_PassphraseField.pcss index 293a81cbe2a..146d501516f 100644 --- a/res/css/views/auth/_PassphraseField.pcss +++ b/res/css/views/auth/_PassphraseField.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/auth/_Welcome.pcss b/res/css/views/auth/_Welcome.pcss index 71f607a8f91..490b6490f6f 100644 --- a/res/css/views/auth/_Welcome.pcss +++ b/res/css/views/auth/_Welcome.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/avatars/_BaseAvatar.pcss b/res/css/views/avatars/_BaseAvatar.pcss index 84875215241..f1d6e0390e5 100644 --- a/res/css/views/avatars/_BaseAvatar.pcss +++ b/res/css/views/avatars/_BaseAvatar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/avatars/_DecoratedRoomAvatar.pcss b/res/css/views/avatars/_DecoratedRoomAvatar.pcss index 72fd1e4e2b2..6ac5d684965 100644 --- a/res/css/views/avatars/_DecoratedRoomAvatar.pcss +++ b/res/css/views/avatars/_DecoratedRoomAvatar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/avatars/_WidgetAvatar.pcss b/res/css/views/avatars/_WidgetAvatar.pcss index 6e2b77d0eb2..564c9fefc28 100644 --- a/res/css/views/avatars/_WidgetAvatar.pcss +++ b/res/css/views/avatars/_WidgetAvatar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/avatars/_WithPresenceIndicator.pcss b/res/css/views/avatars/_WithPresenceIndicator.pcss index 1dd779cc5c3..7fe328dc602 100644 --- a/res/css/views/avatars/_WithPresenceIndicator.pcss +++ b/res/css/views/avatars/_WithPresenceIndicator.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/beta/_BetaCard.pcss b/res/css/views/beta/_BetaCard.pcss index 33f566ae691..c5d02538615 100644 --- a/res/css/views/beta/_BetaCard.pcss +++ b/res/css/views/beta/_BetaCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/context_menus/_DeviceContextMenu.pcss b/res/css/views/context_menus/_DeviceContextMenu.pcss index a234f8f5df7..d70b5eb0438 100644 --- a/res/css/views/context_menus/_DeviceContextMenu.pcss +++ b/res/css/views/context_menus/_DeviceContextMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/context_menus/_IconizedContextMenu.pcss b/res/css/views/context_menus/_IconizedContextMenu.pcss index f57237223f6..853d97c9354 100644 --- a/res/css/views/context_menus/_IconizedContextMenu.pcss +++ b/res/css/views/context_menus/_IconizedContextMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/context_menus/_LegacyCallContextMenu.pcss b/res/css/views/context_menus/_LegacyCallContextMenu.pcss index 6b83f2af958..e6ec26c8fba 100644 --- a/res/css/views/context_menus/_LegacyCallContextMenu.pcss +++ b/res/css/views/context_menus/_LegacyCallContextMenu.pcss @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/context_menus/_MessageContextMenu.pcss b/res/css/views/context_menus/_MessageContextMenu.pcss index a73dab9982c..f365c4a293c 100644 --- a/res/css/views/context_menus/_MessageContextMenu.pcss +++ b/res/css/views/context_menus/_MessageContextMenu.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Michael Weimann Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_AddExistingToSpaceDialog.pcss b/res/css/views/dialogs/_AddExistingToSpaceDialog.pcss index 1656ca7e676..7dc25d68113 100644 --- a/res/css/views/dialogs/_AddExistingToSpaceDialog.pcss +++ b/res/css/views/dialogs/_AddExistingToSpaceDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_AnalyticsLearnMoreDialog.pcss b/res/css/views/dialogs/_AnalyticsLearnMoreDialog.pcss index 456b28d88a5..ace00603437 100644 --- a/res/css/views/dialogs/_AnalyticsLearnMoreDialog.pcss +++ b/res/css/views/dialogs/_AnalyticsLearnMoreDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_BugReportDialog.pcss b/res/css/views/dialogs/_BugReportDialog.pcss index 7c1750bc40f..8f825a97571 100644 --- a/res/css/views/dialogs/_BugReportDialog.pcss +++ b/res/css/views/dialogs/_BugReportDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_BulkRedactDialog.pcss b/res/css/views/dialogs/_BulkRedactDialog.pcss index 5d8e9d6ef41..3e274798eba 100644 --- a/res/css/views/dialogs/_BulkRedactDialog.pcss +++ b/res/css/views/dialogs/_BulkRedactDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Robin Townsend -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ChangelogDialog.pcss b/res/css/views/dialogs/_ChangelogDialog.pcss index 81c6b2683f5..b5c1398062d 100644 --- a/res/css/views/dialogs/_ChangelogDialog.pcss +++ b/res/css/views/dialogs/_ChangelogDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_CompoundDialog.pcss b/res/css/views/dialogs/_CompoundDialog.pcss index 789184d47c4..b43fa1f14e8 100644 --- a/res/css/views/dialogs/_CompoundDialog.pcss +++ b/res/css/views/dialogs/_CompoundDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ConfirmSpaceUserActionDialog.pcss b/res/css/views/dialogs/_ConfirmSpaceUserActionDialog.pcss index 3b91eddc8b8..1921ef24570 100644 --- a/res/css/views/dialogs/_ConfirmSpaceUserActionDialog.pcss +++ b/res/css/views/dialogs/_ConfirmSpaceUserActionDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ConfirmUserActionDialog.pcss b/res/css/views/dialogs/_ConfirmUserActionDialog.pcss index b1810dff09b..fbd67f89f41 100644 --- a/res/css/views/dialogs/_ConfirmUserActionDialog.pcss +++ b/res/css/views/dialogs/_ConfirmUserActionDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_CreateRoomDialog.pcss b/res/css/views/dialogs/_CreateRoomDialog.pcss index 86aa5d0f4d4..a96b9ba4724 100644 --- a/res/css/views/dialogs/_CreateRoomDialog.pcss +++ b/res/css/views/dialogs/_CreateRoomDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_CreateSubspaceDialog.pcss b/res/css/views/dialogs/_CreateSubspaceDialog.pcss index 4977ee883df..300fc4ba2ab 100644 --- a/res/css/views/dialogs/_CreateSubspaceDialog.pcss +++ b/res/css/views/dialogs/_CreateSubspaceDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_DeactivateAccountDialog.pcss b/res/css/views/dialogs/_DeactivateAccountDialog.pcss index d1a899158f0..f28cbde8894 100644 --- a/res/css/views/dialogs/_DeactivateAccountDialog.pcss +++ b/res/css/views/dialogs/_DeactivateAccountDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_DevtoolsDialog.pcss b/res/css/views/dialogs/_DevtoolsDialog.pcss index 8b86233b962..3a706345c92 100644 --- a/res/css/views/dialogs/_DevtoolsDialog.pcss +++ b/res/css/views/dialogs/_DevtoolsDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ExportDialog.pcss b/res/css/views/dialogs/_ExportDialog.pcss index 9a5bc58344b..46c0c578c65 100644 --- a/res/css/views/dialogs/_ExportDialog.pcss +++ b/res/css/views/dialogs/_ExportDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_FeedbackDialog.pcss b/res/css/views/dialogs/_FeedbackDialog.pcss index dde15b4e0f0..a9e7d97920c 100644 --- a/res/css/views/dialogs/_FeedbackDialog.pcss +++ b/res/css/views/dialogs/_FeedbackDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ForwardDialog.pcss b/res/css/views/dialogs/_ForwardDialog.pcss index 40be3f2292d..ecbc19d5339 100644 --- a/res/css/views/dialogs/_ForwardDialog.pcss +++ b/res/css/views/dialogs/_ForwardDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Robin Townsend -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_GenericFeatureFeedbackDialog.pcss b/res/css/views/dialogs/_GenericFeatureFeedbackDialog.pcss index cc41e691313..655f7f95e8d 100644 --- a/res/css/views/dialogs/_GenericFeatureFeedbackDialog.pcss +++ b/res/css/views/dialogs/_GenericFeatureFeedbackDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_IncomingSasDialog.pcss b/res/css/views/dialogs/_IncomingSasDialog.pcss index a455f144f7b..0fb0c9a4168 100644 --- a/res/css/views/dialogs/_IncomingSasDialog.pcss +++ b/res/css/views/dialogs/_IncomingSasDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_InviteDialog.pcss b/res/css/views/dialogs/_InviteDialog.pcss index e5c00cef18e..70a8cdc6087 100644 --- a/res/css/views/dialogs/_InviteDialog.pcss +++ b/res/css/views/dialogs/_InviteDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_JoinRuleDropdown.pcss b/res/css/views/dialogs/_JoinRuleDropdown.pcss index 6fd00168858..3f72b095832 100644 --- a/res/css/views/dialogs/_JoinRuleDropdown.pcss +++ b/res/css/views/dialogs/_JoinRuleDropdown.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_LeaveSpaceDialog.pcss b/res/css/views/dialogs/_LeaveSpaceDialog.pcss index b3e38782766..d9884666536 100644 --- a/res/css/views/dialogs/_LeaveSpaceDialog.pcss +++ b/res/css/views/dialogs/_LeaveSpaceDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_LocationViewDialog.pcss b/res/css/views/dialogs/_LocationViewDialog.pcss index 118897b923e..f25541520bc 100644 --- a/res/css/views/dialogs/_LocationViewDialog.pcss +++ b/res/css/views/dialogs/_LocationViewDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_LogoutDialog.pcss b/res/css/views/dialogs/_LogoutDialog.pcss index 0161c00d329..8f11f8c7c27 100644 --- a/res/css/views/dialogs/_LogoutDialog.pcss +++ b/res/css/views/dialogs/_LogoutDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Manan Sadana -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ManageRestrictedJoinRuleDialog.pcss b/res/css/views/dialogs/_ManageRestrictedJoinRuleDialog.pcss index a6b9fe03045..f77ebf7b6b9 100644 --- a/res/css/views/dialogs/_ManageRestrictedJoinRuleDialog.pcss +++ b/res/css/views/dialogs/_ManageRestrictedJoinRuleDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_MessageEditHistoryDialog.pcss b/res/css/views/dialogs/_MessageEditHistoryDialog.pcss index b1c820e16be..8105833830c 100644 --- a/res/css/views/dialogs/_MessageEditHistoryDialog.pcss +++ b/res/css/views/dialogs/_MessageEditHistoryDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ModalWidgetDialog.pcss b/res/css/views/dialogs/_ModalWidgetDialog.pcss index 6b3e475a842..423e4c26ecc 100644 --- a/res/css/views/dialogs/_ModalWidgetDialog.pcss +++ b/res/css/views/dialogs/_ModalWidgetDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_PollCreateDialog.pcss b/res/css/views/dialogs/_PollCreateDialog.pcss index b0d89c4676a..0689938a24e 100644 --- a/res/css/views/dialogs/_PollCreateDialog.pcss +++ b/res/css/views/dialogs/_PollCreateDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_RegistrationEmailPromptDialog.pcss b/res/css/views/dialogs/_RegistrationEmailPromptDialog.pcss index eea733fa69e..98bf9e9cd9c 100644 --- a/res/css/views/dialogs/_RegistrationEmailPromptDialog.pcss +++ b/res/css/views/dialogs/_RegistrationEmailPromptDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_RoomSettingsDialog.pcss b/res/css/views/dialogs/_RoomSettingsDialog.pcss index 544512d02aa..7593a72bd9f 100644 --- a/res/css/views/dialogs/_RoomSettingsDialog.pcss +++ b/res/css/views/dialogs/_RoomSettingsDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_RoomSettingsDialogBridges.pcss b/res/css/views/dialogs/_RoomSettingsDialogBridges.pcss index 36fb34e8b1f..5633130b649 100644 --- a/res/css/views/dialogs/_RoomSettingsDialogBridges.pcss +++ b/res/css/views/dialogs/_RoomSettingsDialogBridges.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_RoomUpgradeDialog.pcss b/res/css/views/dialogs/_RoomUpgradeDialog.pcss index 82bce661edb..b64c11bcf71 100644 --- a/res/css/views/dialogs/_RoomUpgradeDialog.pcss +++ b/res/css/views/dialogs/_RoomUpgradeDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_RoomUpgradeWarningDialog.pcss b/res/css/views/dialogs/_RoomUpgradeWarningDialog.pcss index 79b3228cb38..d988c34077a 100644 --- a/res/css/views/dialogs/_RoomUpgradeWarningDialog.pcss +++ b/res/css/views/dialogs/_RoomUpgradeWarningDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ServerOfflineDialog.pcss b/res/css/views/dialogs/_ServerOfflineDialog.pcss index 0dcd0dbfa72..96a4aa9bfb0 100644 --- a/res/css/views/dialogs/_ServerOfflineDialog.pcss +++ b/res/css/views/dialogs/_ServerOfflineDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ServerPickerDialog.pcss b/res/css/views/dialogs/_ServerPickerDialog.pcss index 445d5aad6f7..b1346ff73f5 100644 --- a/res/css/views/dialogs/_ServerPickerDialog.pcss +++ b/res/css/views/dialogs/_ServerPickerDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_SetEmailDialog.pcss b/res/css/views/dialogs/_SetEmailDialog.pcss index 1be983eaab2..718618c9232 100644 --- a/res/css/views/dialogs/_SetEmailDialog.pcss +++ b/res/css/views/dialogs/_SetEmailDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_SettingsDialog.pcss b/res/css/views/dialogs/_SettingsDialog.pcss index 05be3b54f46..186a82c0f5d 100644 --- a/res/css/views/dialogs/_SettingsDialog.pcss +++ b/res/css/views/dialogs/_SettingsDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_ShareDialog.pcss b/res/css/views/dialogs/_ShareDialog.pcss index cfede43aae7..e8ac18f0be0 100644 --- a/res/css/views/dialogs/_ShareDialog.pcss +++ b/res/css/views/dialogs/_ShareDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_SlashCommandHelpDialog.pcss b/res/css/views/dialogs/_SlashCommandHelpDialog.pcss index 8efa89e1cf8..445b2d02d50 100644 --- a/res/css/views/dialogs/_SlashCommandHelpDialog.pcss +++ b/res/css/views/dialogs/_SlashCommandHelpDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_SpacePreferencesDialog.pcss b/res/css/views/dialogs/_SpacePreferencesDialog.pcss index af75b7866f9..709c9267600 100644 --- a/res/css/views/dialogs/_SpacePreferencesDialog.pcss +++ b/res/css/views/dialogs/_SpacePreferencesDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_SpaceSettingsDialog.pcss b/res/css/views/dialogs/_SpaceSettingsDialog.pcss index d1990b5973a..6c48e34b758 100644 --- a/res/css/views/dialogs/_SpaceSettingsDialog.pcss +++ b/res/css/views/dialogs/_SpaceSettingsDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_SpotlightDialog.pcss b/res/css/views/dialogs/_SpotlightDialog.pcss index c4f94bfde9d..d00acd6786d 100644 --- a/res/css/views/dialogs/_SpotlightDialog.pcss +++ b/res/css/views/dialogs/_SpotlightDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_TermsDialog.pcss b/res/css/views/dialogs/_TermsDialog.pcss index 268432f441f..b6a8170f787 100644 --- a/res/css/views/dialogs/_TermsDialog.pcss +++ b/res/css/views/dialogs/_TermsDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_UnpinAllDialog.pcss b/res/css/views/dialogs/_UnpinAllDialog.pcss index 596f9926963..e3a4c413827 100644 --- a/res/css/views/dialogs/_UnpinAllDialog.pcss +++ b/res/css/views/dialogs/_UnpinAllDialog.pcss @@ -1,9 +1,9 @@ /* -* Copyright 2024 New Vector Ltd. -* Copyright 2024 The Matrix.org Foundation C.I.C. -* -* SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -* Please see LICENSE files in the repository root for full details. + * Copyright 2024 New Vector Ltd. + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * 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. */ .mx_UnpinAllDialog { diff --git a/res/css/views/dialogs/_UntrustedDeviceDialog.pcss b/res/css/views/dialogs/_UntrustedDeviceDialog.pcss index af7d4863b65..8fb74319009 100644 --- a/res/css/views/dialogs/_UntrustedDeviceDialog.pcss +++ b/res/css/views/dialogs/_UntrustedDeviceDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_UploadConfirmDialog.pcss b/res/css/views/dialogs/_UploadConfirmDialog.pcss index fc633b9b699..f50bf5e7d50 100644 --- a/res/css/views/dialogs/_UploadConfirmDialog.pcss +++ b/res/css/views/dialogs/_UploadConfirmDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_UserSettingsDialog.pcss b/res/css/views/dialogs/_UserSettingsDialog.pcss index 4f91ea2ddbd..7f307afe2f4 100644 --- a/res/css/views/dialogs/_UserSettingsDialog.pcss +++ b/res/css/views/dialogs/_UserSettingsDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_VerifyEMailDialog.pcss b/res/css/views/dialogs/_VerifyEMailDialog.pcss index ec2449517bd..32fc8189e9d 100644 --- a/res/css/views/dialogs/_VerifyEMailDialog.pcss +++ b/res/css/views/dialogs/_VerifyEMailDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/_WidgetCapabilitiesPromptDialog.pcss b/res/css/views/dialogs/_WidgetCapabilitiesPromptDialog.pcss index 3cc14396220..9e1024b9a49 100644 --- a/res/css/views/dialogs/_WidgetCapabilitiesPromptDialog.pcss +++ b/res/css/views/dialogs/_WidgetCapabilitiesPromptDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/security/_AccessSecretStorageDialog.pcss b/res/css/views/dialogs/security/_AccessSecretStorageDialog.pcss index e5abc1e48bc..da71b4462b0 100644 --- a/res/css/views/dialogs/security/_AccessSecretStorageDialog.pcss +++ b/res/css/views/dialogs/security/_AccessSecretStorageDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018, 2019 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/security/_CreateCrossSigningDialog.pcss b/res/css/views/dialogs/security/_CreateCrossSigningDialog.pcss index e543d089209..9cc7e98243d 100644 --- a/res/css/views/dialogs/security/_CreateCrossSigningDialog.pcss +++ b/res/css/views/dialogs/security/_CreateCrossSigningDialog.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/security/_CreateKeyBackupDialog.pcss b/res/css/views/dialogs/security/_CreateKeyBackupDialog.pcss index 4460abd35dc..9bd85398818 100644 --- a/res/css/views/dialogs/security/_CreateKeyBackupDialog.pcss +++ b/res/css/views/dialogs/security/_CreateKeyBackupDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/security/_CreateSecretStorageDialog.pcss b/res/css/views/dialogs/security/_CreateSecretStorageDialog.pcss index 02d98902706..e40458f48fc 100644 --- a/res/css/views/dialogs/security/_CreateSecretStorageDialog.pcss +++ b/res/css/views/dialogs/security/_CreateSecretStorageDialog.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/security/_KeyBackupFailedDialog.pcss b/res/css/views/dialogs/security/_KeyBackupFailedDialog.pcss index 604e948a349..b02964f64ba 100644 --- a/res/css/views/dialogs/security/_KeyBackupFailedDialog.pcss +++ b/res/css/views/dialogs/security/_KeyBackupFailedDialog.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/dialogs/security/_RestoreKeyBackupDialog.pcss b/res/css/views/dialogs/security/_RestoreKeyBackupDialog.pcss index 832619c5881..c8c7c3355dd 100644 --- a/res/css/views/dialogs/security/_RestoreKeyBackupDialog.pcss +++ b/res/css/views/dialogs/security/_RestoreKeyBackupDialog.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/directory/_NetworkDropdown.pcss b/res/css/views/directory/_NetworkDropdown.pcss index df82d175552..47180e3c2f5 100644 --- a/res/css/views/directory/_NetworkDropdown.pcss +++ b/res/css/views/directory/_NetworkDropdown.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_AccessibleButton.pcss b/res/css/views/elements/_AccessibleButton.pcss index 27219d06b56..c67a7441be3 100644 --- a/res/css/views/elements/_AccessibleButton.pcss +++ b/res/css/views/elements/_AccessibleButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_CopyableText.pcss b/res/css/views/elements/_CopyableText.pcss index 7c98d5911d4..2764fea46c3 100644 --- a/res/css/views/elements/_CopyableText.pcss +++ b/res/css/views/elements/_CopyableText.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_DesktopCapturerSourcePicker.pcss b/res/css/views/elements/_DesktopCapturerSourcePicker.pcss index 1281c74a4d1..136dada34a7 100644 --- a/res/css/views/elements/_DesktopCapturerSourcePicker.pcss +++ b/res/css/views/elements/_DesktopCapturerSourcePicker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_DialPadBackspaceButton.pcss b/res/css/views/elements/_DialPadBackspaceButton.pcss index 020c4ee5781..4e305999ff2 100644 --- a/res/css/views/elements/_DialPadBackspaceButton.pcss +++ b/res/css/views/elements/_DialPadBackspaceButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_Dropdown.pcss b/res/css/views/elements/_Dropdown.pcss index b91af285fd6..355d79d569d 100644 --- a/res/css/views/elements/_Dropdown.pcss +++ b/res/css/views/elements/_Dropdown.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_EditableItemList.pcss b/res/css/views/elements/_EditableItemList.pcss index 8a85f615d86..82aa4923838 100644 --- a/res/css/views/elements/_EditableItemList.pcss +++ b/res/css/views/elements/_EditableItemList.pcss @@ -1,7 +1,7 @@ /* Copyright 2017-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ErrorBoundary.pcss b/res/css/views/elements/_ErrorBoundary.pcss index 74fe0792e1a..0ed1f7b6382 100644 --- a/res/css/views/elements/_ErrorBoundary.pcss +++ b/res/css/views/elements/_ErrorBoundary.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ExternalLink.pcss b/res/css/views/elements/_ExternalLink.pcss index 7a2c51bcaef..c103207ab03 100644 --- a/res/css/views/elements/_ExternalLink.pcss +++ b/res/css/views/elements/_ExternalLink.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_FacePile.pcss b/res/css/views/elements/_FacePile.pcss index b063f5900e6..1e4acb75e8d 100644 --- a/res/css/views/elements/_FacePile.pcss +++ b/res/css/views/elements/_FacePile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_Field.pcss b/res/css/views/elements/_Field.pcss index 21a0a0208aa..90cb1762515 100644 --- a/res/css/views/elements/_Field.pcss +++ b/res/css/views/elements/_Field.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_GenericEventListSummary.pcss b/res/css/views/elements/_GenericEventListSummary.pcss index c13f8194396..f4aa0e6f0fa 100644 --- a/res/css/views/elements/_GenericEventListSummary.pcss +++ b/res/css/views/elements/_GenericEventListSummary.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ImageView.pcss b/res/css/views/elements/_ImageView.pcss index c1fa7373952..d6649d15da3 100644 --- a/res/css/views/elements/_ImageView.pcss +++ b/res/css/views/elements/_ImageView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_InfoTooltip.pcss b/res/css/views/elements/_InfoTooltip.pcss index dcec1410f1e..5229b7d9f59 100644 --- a/res/css/views/elements/_InfoTooltip.pcss +++ b/res/css/views/elements/_InfoTooltip.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_InlineSpinner.pcss b/res/css/views/elements/_InlineSpinner.pcss index f22a0552cbc..9f7ae2ab523 100644 --- a/res/css/views/elements/_InlineSpinner.pcss +++ b/res/css/views/elements/_InlineSpinner.pcss @@ -1,7 +1,7 @@ /* Copyright 2017-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_InteractiveTooltip.pcss b/res/css/views/elements/_InteractiveTooltip.pcss index 71d9fa4e299..e53282b203c 100644 --- a/res/css/views/elements/_InteractiveTooltip.pcss +++ b/res/css/views/elements/_InteractiveTooltip.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_InviteReason.pcss b/res/css/views/elements/_InviteReason.pcss index c57c59ae1f8..509e6cfaf90 100644 --- a/res/css/views/elements/_InviteReason.pcss +++ b/res/css/views/elements/_InviteReason.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_LabelledCheckbox.pcss b/res/css/views/elements/_LabelledCheckbox.pcss index 00eb2053039..add8f14998c 100644 --- a/res/css/views/elements/_LabelledCheckbox.pcss +++ b/res/css/views/elements/_LabelledCheckbox.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_LanguageDropdown.pcss b/res/css/views/elements/_LanguageDropdown.pcss index 2ba7188e967..cd35d6bd5bd 100644 --- a/res/css/views/elements/_LanguageDropdown.pcss +++ b/res/css/views/elements/_LanguageDropdown.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_MiniAvatarUploader.pcss b/res/css/views/elements/_MiniAvatarUploader.pcss index d997118e88b..6fbe209ac97 100644 --- a/res/css/views/elements/_MiniAvatarUploader.pcss +++ b/res/css/views/elements/_MiniAvatarUploader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_Pill.pcss b/res/css/views/elements/_Pill.pcss index ccf82ff6d62..055a524c5a1 100644 --- a/res/css/views/elements/_Pill.pcss +++ b/res/css/views/elements/_Pill.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_PowerSelector.pcss b/res/css/views/elements/_PowerSelector.pcss index f400e10764d..eded483376b 100644 --- a/res/css/views/elements/_PowerSelector.pcss +++ b/res/css/views/elements/_PowerSelector.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ProgressBar.pcss b/res/css/views/elements/_ProgressBar.pcss index 062770f77f0..aea2902e128 100644 --- a/res/css/views/elements/_ProgressBar.pcss +++ b/res/css/views/elements/_ProgressBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_QRCode.pcss b/res/css/views/elements/_QRCode.pcss index 59586427081..5af0fd5c203 100644 --- a/res/css/views/elements/_QRCode.pcss +++ b/res/css/views/elements/_QRCode.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ReplyChain.pcss b/res/css/views/elements/_ReplyChain.pcss index 27d8429b6b1..2b1e7f9b57b 100644 --- a/res/css/views/elements/_ReplyChain.pcss +++ b/res/css/views/elements/_ReplyChain.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ResizeHandle.pcss b/res/css/views/elements/_ResizeHandle.pcss index a237662f8bf..65827d4fb9c 100644 --- a/res/css/views/elements/_ResizeHandle.pcss +++ b/res/css/views/elements/_ResizeHandle.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_RoomAliasField.pcss b/res/css/views/elements/_RoomAliasField.pcss index 71cc32c386f..c1fb066ed5b 100644 --- a/res/css/views/elements/_RoomAliasField.pcss +++ b/res/css/views/elements/_RoomAliasField.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_SSOButtons.pcss b/res/css/views/elements/_SSOButtons.pcss index b69c5f99d49..7b4d2c973f2 100644 --- a/res/css/views/elements/_SSOButtons.pcss +++ b/res/css/views/elements/_SSOButtons.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_SearchWarning.pcss b/res/css/views/elements/_SearchWarning.pcss index 03be05a1b10..52aadb56948 100644 --- a/res/css/views/elements/_SearchWarning.pcss +++ b/res/css/views/elements/_SearchWarning.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_ServerPicker.pcss b/res/css/views/elements/_ServerPicker.pcss index f525f65df10..fa0b46599fa 100644 --- a/res/css/views/elements/_ServerPicker.pcss +++ b/res/css/views/elements/_ServerPicker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_SettingsFlag.pcss b/res/css/views/elements/_SettingsFlag.pcss index 604b42fd9ac..dbef5fcb2b6 100644 --- a/res/css/views/elements/_SettingsFlag.pcss +++ b/res/css/views/elements/_SettingsFlag.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_Spinner.pcss b/res/css/views/elements/_Spinner.pcss index f5f5d47070a..1280cc888ce 100644 --- a/res/css/views/elements/_Spinner.pcss +++ b/res/css/views/elements/_Spinner.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_StyledCheckbox.pcss b/res/css/views/elements/_StyledCheckbox.pcss index 986889c6dc1..77382d711c9 100644 --- a/res/css/views/elements/_StyledCheckbox.pcss +++ b/res/css/views/elements/_StyledCheckbox.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_StyledRadioButton.pcss b/res/css/views/elements/_StyledRadioButton.pcss index 1df1c453a59..13bcf309e74 100644 --- a/res/css/views/elements/_StyledRadioButton.pcss +++ b/res/css/views/elements/_StyledRadioButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_SyntaxHighlight.pcss b/res/css/views/elements/_SyntaxHighlight.pcss index 03ad526754b..8472d3cf602 100644 --- a/res/css/views/elements/_SyntaxHighlight.pcss +++ b/res/css/views/elements/_SyntaxHighlight.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_TagComposer.pcss b/res/css/views/elements/_TagComposer.pcss index 1e758a2c3c7..a85d24d1219 100644 --- a/res/css/views/elements/_TagComposer.pcss +++ b/res/css/views/elements/_TagComposer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_TextWithTooltip.pcss b/res/css/views/elements/_TextWithTooltip.pcss index 99221582358..ce6cb1cc659 100644 --- a/res/css/views/elements/_TextWithTooltip.pcss +++ b/res/css/views/elements/_TextWithTooltip.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ .mx_TextWithTooltip_target { diff --git a/res/css/views/elements/_ToggleSwitch.pcss b/res/css/views/elements/_ToggleSwitch.pcss index 5ff2f461073..6f197e1c77c 100644 --- a/res/css/views/elements/_ToggleSwitch.pcss +++ b/res/css/views/elements/_ToggleSwitch.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_UseCaseSelection.pcss b/res/css/views/elements/_UseCaseSelection.pcss index 070a8a243bb..ec577a66bdd 100644 --- a/res/css/views/elements/_UseCaseSelection.pcss +++ b/res/css/views/elements/_UseCaseSelection.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_UseCaseSelectionButton.pcss b/res/css/views/elements/_UseCaseSelectionButton.pcss index f8c001714f9..9393b8a53c2 100644 --- a/res/css/views/elements/_UseCaseSelectionButton.pcss +++ b/res/css/views/elements/_UseCaseSelectionButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/elements/_Validation.pcss b/res/css/views/elements/_Validation.pcss index 5bf8dfb7944..28ea95c0b00 100644 --- a/res/css/views/elements/_Validation.pcss +++ b/res/css/views/elements/_Validation.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/emojipicker/_EmojiPicker.pcss b/res/css/views/emojipicker/_EmojiPicker.pcss index d4ae92172d6..c1a666a672e 100644 --- a/res/css/views/emojipicker/_EmojiPicker.pcss +++ b/res/css/views/emojipicker/_EmojiPicker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/location/_LocationPicker.pcss b/res/css/views/location/_LocationPicker.pcss index 872017546ea..9384411cf80 100644 --- a/res/css/views/location/_LocationPicker.pcss +++ b/res/css/views/location/_LocationPicker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_CallEvent.pcss b/res/css/views/messages/_CallEvent.pcss index 45be948b41b..1797c283ce3 100644 --- a/res/css/views/messages/_CallEvent.pcss +++ b/res/css/views/messages/_CallEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_CreateEvent.pcss b/res/css/views/messages/_CreateEvent.pcss index 7f76d07613d..0c8a003dcd4 100644 --- a/res/css/views/messages/_CreateEvent.pcss +++ b/res/css/views/messages/_CreateEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_DateSeparator.pcss b/res/css/views/messages/_DateSeparator.pcss index aa6f88eaaa5..fe134125610 100644 --- a/res/css/views/messages/_DateSeparator.pcss +++ b/res/css/views/messages/_DateSeparator.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_DecryptionFailureBody.pcss b/res/css/views/messages/_DecryptionFailureBody.pcss index 516e7bcc89f..4a4940abe33 100644 --- a/res/css/views/messages/_DecryptionFailureBody.pcss +++ b/res/css/views/messages/_DecryptionFailureBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_DisambiguatedProfile.pcss b/res/css/views/messages/_DisambiguatedProfile.pcss index 25a28971d41..c675ba99ed8 100644 --- a/res/css/views/messages/_DisambiguatedProfile.pcss +++ b/res/css/views/messages/_DisambiguatedProfile.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_EventTileBubble.pcss b/res/css/views/messages/_EventTileBubble.pcss index 16d48185fb6..4b47c8b78e2 100644 --- a/res/css/views/messages/_EventTileBubble.pcss +++ b/res/css/views/messages/_EventTileBubble.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_HiddenBody.pcss b/res/css/views/messages/_HiddenBody.pcss index 05c8df1b030..672cd262b20 100644 --- a/res/css/views/messages/_HiddenBody.pcss +++ b/res/css/views/messages/_HiddenBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_JumpToDatePicker.pcss b/res/css/views/messages/_JumpToDatePicker.pcss index b65091aa4c2..b4b0244be56 100644 --- a/res/css/views/messages/_JumpToDatePicker.pcss +++ b/res/css/views/messages/_JumpToDatePicker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_LegacyCallEvent.pcss b/res/css/views/messages/_LegacyCallEvent.pcss index 54ebb957667..c79279b7633 100644 --- a/res/css/views/messages/_LegacyCallEvent.pcss +++ b/res/css/views/messages/_LegacyCallEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MEmoteBody.pcss b/res/css/views/messages/_MEmoteBody.pcss index 4d90af68fa0..ad7abb01766 100644 --- a/res/css/views/messages/_MEmoteBody.pcss +++ b/res/css/views/messages/_MEmoteBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MFileBody.pcss b/res/css/views/messages/_MFileBody.pcss index 2ce13320efc..c8361f1d296 100644 --- a/res/css/views/messages/_MFileBody.pcss +++ b/res/css/views/messages/_MFileBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MImageBody.pcss b/res/css/views/messages/_MImageBody.pcss index 6a6f31948a7..5942bb44b3d 100644 --- a/res/css/views/messages/_MImageBody.pcss +++ b/res/css/views/messages/_MImageBody.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MImageReplyBody.pcss b/res/css/views/messages/_MImageReplyBody.pcss index 58621c78767..9576e75fd81 100644 --- a/res/css/views/messages/_MImageReplyBody.pcss +++ b/res/css/views/messages/_MImageReplyBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MJitsiWidgetEvent.pcss b/res/css/views/messages/_MJitsiWidgetEvent.pcss index 6375c99d5b2..252681f6848 100644 --- a/res/css/views/messages/_MJitsiWidgetEvent.pcss +++ b/res/css/views/messages/_MJitsiWidgetEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MLocationBody.pcss b/res/css/views/messages/_MLocationBody.pcss index c388a58ee7b..ad597c42aa3 100644 --- a/res/css/views/messages/_MLocationBody.pcss +++ b/res/css/views/messages/_MLocationBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MNoticeBody.pcss b/res/css/views/messages/_MNoticeBody.pcss index 92647ba90fe..f82c2b8fcc9 100644 --- a/res/css/views/messages/_MNoticeBody.pcss +++ b/res/css/views/messages/_MNoticeBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MPollBody.pcss b/res/css/views/messages/_MPollBody.pcss index 7b272d7aa87..33144083ea9 100644 --- a/res/css/views/messages/_MPollBody.pcss +++ b/res/css/views/messages/_MPollBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MPollEndBody.pcss b/res/css/views/messages/_MPollEndBody.pcss index 59787818bbd..655f444e357 100644 --- a/res/css/views/messages/_MPollEndBody.pcss +++ b/res/css/views/messages/_MPollEndBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MStickerBody.pcss b/res/css/views/messages/_MStickerBody.pcss index 7db1c396c0e..d6331fce599 100644 --- a/res/css/views/messages/_MStickerBody.pcss +++ b/res/css/views/messages/_MStickerBody.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MTextBody.pcss b/res/css/views/messages/_MTextBody.pcss index 9d17fc4f005..973fd3a3540 100644 --- a/res/css/views/messages/_MTextBody.pcss +++ b/res/css/views/messages/_MTextBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MVideoBody.pcss b/res/css/views/messages/_MVideoBody.pcss index bc384754ab7..0727a8dc443 100644 --- a/res/css/views/messages/_MVideoBody.pcss +++ b/res/css/views/messages/_MVideoBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MediaBody.pcss b/res/css/views/messages/_MediaBody.pcss index aeafe0f0ee3..d3eb02ca651 100644 --- a/res/css/views/messages/_MediaBody.pcss +++ b/res/css/views/messages/_MediaBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MessageActionBar.pcss b/res/css/views/messages/_MessageActionBar.pcss index cdfc3693d53..61897bb34f7 100644 --- a/res/css/views/messages/_MessageActionBar.pcss +++ b/res/css/views/messages/_MessageActionBar.pcss @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MessageTimestamp.pcss b/res/css/views/messages/_MessageTimestamp.pcss index 2bb90033e3e..2cca6a3aaf4 100644 --- a/res/css/views/messages/_MessageTimestamp.pcss +++ b/res/css/views/messages/_MessageTimestamp.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_MjolnirBody.pcss b/res/css/views/messages/_MjolnirBody.pcss index 5c9a749c064..825eb36af67 100644 --- a/res/css/views/messages/_MjolnirBody.pcss +++ b/res/css/views/messages/_MjolnirBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_PinnedMessageBadge.pcss b/res/css/views/messages/_PinnedMessageBadge.pcss index 99770a70378..69b592d7898 100644 --- a/res/css/views/messages/_PinnedMessageBadge.pcss +++ b/res/css/views/messages/_PinnedMessageBadge.pcss @@ -1,9 +1,8 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. - * */ .mx_PinnedMessageBadge { diff --git a/res/css/views/messages/_ReactionsRow.pcss b/res/css/views/messages/_ReactionsRow.pcss index e07b529ef44..e787e505173 100644 --- a/res/css/views/messages/_ReactionsRow.pcss +++ b/res/css/views/messages/_ReactionsRow.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_ReactionsRowButton.pcss b/res/css/views/messages/_ReactionsRowButton.pcss index dd9d7ddb479..917bcfbb843 100644 --- a/res/css/views/messages/_ReactionsRowButton.pcss +++ b/res/css/views/messages/_ReactionsRowButton.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_RedactedBody.pcss b/res/css/views/messages/_RedactedBody.pcss index 7939cc6d098..7b114b1866b 100644 --- a/res/css/views/messages/_RedactedBody.pcss +++ b/res/css/views/messages/_RedactedBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_RoomAvatarEvent.pcss b/res/css/views/messages/_RoomAvatarEvent.pcss index f8ff857c822..340c5a87bd7 100644 --- a/res/css/views/messages/_RoomAvatarEvent.pcss +++ b/res/css/views/messages/_RoomAvatarEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_TextualEvent.pcss b/res/css/views/messages/_TextualEvent.pcss index 2a27efccc65..bf7061f2ba9 100644 --- a/res/css/views/messages/_TextualEvent.pcss +++ b/res/css/views/messages/_TextualEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_TimelineSeparator.pcss b/res/css/views/messages/_TimelineSeparator.pcss index fcf41e9f05a..aab77d4e032 100644 --- a/res/css/views/messages/_TimelineSeparator.pcss +++ b/res/css/views/messages/_TimelineSeparator.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_UnknownBody.pcss b/res/css/views/messages/_UnknownBody.pcss index 2b768052157..9583f55734e 100644 --- a/res/css/views/messages/_UnknownBody.pcss +++ b/res/css/views/messages/_UnknownBody.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_ViewSourceEvent.pcss b/res/css/views/messages/_ViewSourceEvent.pcss index 6b497719d93..02dce05bbbf 100644 --- a/res/css/views/messages/_ViewSourceEvent.pcss +++ b/res/css/views/messages/_ViewSourceEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/messages/_common_CryptoEvent.pcss b/res/css/views/messages/_common_CryptoEvent.pcss index ef0177c2d2e..ba18f4f2ae3 100644 --- a/res/css/views/messages/_common_CryptoEvent.pcss +++ b/res/css/views/messages/_common_CryptoEvent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/polls/pollHistory/_PollHistory.pcss b/res/css/views/polls/pollHistory/_PollHistory.pcss index a68e6ffaf9e..ee28f01b652 100644 --- a/res/css/views/polls/pollHistory/_PollHistory.pcss +++ b/res/css/views/polls/pollHistory/_PollHistory.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/polls/pollHistory/_PollHistoryList.pcss b/res/css/views/polls/pollHistory/_PollHistoryList.pcss index 4ac97a70d52..95d54192f91 100644 --- a/res/css/views/polls/pollHistory/_PollHistoryList.pcss +++ b/res/css/views/polls/pollHistory/_PollHistoryList.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_BaseCard.pcss b/res/css/views/right_panel/_BaseCard.pcss index d09a280dfab..83e1fc28d48 100644 --- a/res/css/views/right_panel/_BaseCard.pcss +++ b/res/css/views/right_panel/_BaseCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_EmptyState.pcss b/res/css/views/right_panel/_EmptyState.pcss index 8ac6ac2555f..05bc2882b8d 100644 --- a/res/css/views/right_panel/_EmptyState.pcss +++ b/res/css/views/right_panel/_EmptyState.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_EncryptionInfo.pcss b/res/css/views/right_panel/_EncryptionInfo.pcss index e9fbc736813..9abc23ef70d 100644 --- a/res/css/views/right_panel/_EncryptionInfo.pcss +++ b/res/css/views/right_panel/_EncryptionInfo.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_ExtensionsCard.pcss b/res/css/views/right_panel/_ExtensionsCard.pcss index ee3984537ba..65dc23f6671 100644 --- a/res/css/views/right_panel/_ExtensionsCard.pcss +++ b/res/css/views/right_panel/_ExtensionsCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_PinnedMessagesCard.pcss b/res/css/views/right_panel/_PinnedMessagesCard.pcss index 731af8b1475..6a156533980 100644 --- a/res/css/views/right_panel/_PinnedMessagesCard.pcss +++ b/res/css/views/right_panel/_PinnedMessagesCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_RoomSummaryCard.pcss b/res/css/views/right_panel/_RoomSummaryCard.pcss index 8dcbfe2e0a9..fb1d6f7d9cd 100644 --- a/res/css/views/right_panel/_RoomSummaryCard.pcss +++ b/res/css/views/right_panel/_RoomSummaryCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_ThreadPanel.pcss b/res/css/views/right_panel/_ThreadPanel.pcss index 1f9d1e0562d..b21eb17f033 100644 --- a/res/css/views/right_panel/_ThreadPanel.pcss +++ b/res/css/views/right_panel/_ThreadPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_TimelineCard.pcss b/res/css/views/right_panel/_TimelineCard.pcss index adaf20f2861..cbd373c7f5c 100644 --- a/res/css/views/right_panel/_TimelineCard.pcss +++ b/res/css/views/right_panel/_TimelineCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_UserInfo.pcss b/res/css/views/right_panel/_UserInfo.pcss index d381d03867d..0af5585d1a2 100644 --- a/res/css/views/right_panel/_UserInfo.pcss +++ b/res/css/views/right_panel/_UserInfo.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_VerificationPanel.pcss b/res/css/views/right_panel/_VerificationPanel.pcss index f743724b591..40b6de32668 100644 --- a/res/css/views/right_panel/_VerificationPanel.pcss +++ b/res/css/views/right_panel/_VerificationPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/right_panel/_WidgetCard.pcss b/res/css/views/right_panel/_WidgetCard.pcss index 6fcc3e9963e..cba86194ce4 100644 --- a/res/css/views/right_panel/_WidgetCard.pcss +++ b/res/css/views/right_panel/_WidgetCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/room_settings/_AliasSettings.pcss b/res/css/views/room_settings/_AliasSettings.pcss index ca2c24b2964..821a6543031 100644 --- a/res/css/views/room_settings/_AliasSettings.pcss +++ b/res/css/views/room_settings/_AliasSettings.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_AppsDrawer.pcss b/res/css/views/rooms/_AppsDrawer.pcss index baf967b7deb..e8baa1257b7 100644 --- a/res/css/views/rooms/_AppsDrawer.pcss +++ b/res/css/views/rooms/_AppsDrawer.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_AuxPanel.pcss b/res/css/views/rooms/_AuxPanel.pcss index f1440fd98a9..c2477287b03 100644 --- a/res/css/views/rooms/_AuxPanel.pcss +++ b/res/css/views/rooms/_AuxPanel.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_BasicMessageComposer.pcss b/res/css/views/rooms/_BasicMessageComposer.pcss index 499ce870ecc..5729c22075c 100644 --- a/res/css/views/rooms/_BasicMessageComposer.pcss +++ b/res/css/views/rooms/_BasicMessageComposer.pcss @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_DecryptionFailureBar.pcss b/res/css/views/rooms/_DecryptionFailureBar.pcss index d38d753e0b0..ca6709b24b7 100644 --- a/res/css/views/rooms/_DecryptionFailureBar.pcss +++ b/res/css/views/rooms/_DecryptionFailureBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_E2EIcon.pcss b/res/css/views/rooms/_E2EIcon.pcss index 0d9e7cf7e3d..f3aaf8a8833 100644 --- a/res/css/views/rooms/_E2EIcon.pcss +++ b/res/css/views/rooms/_E2EIcon.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_EditMessageComposer.pcss b/res/css/views/rooms/_EditMessageComposer.pcss index 0fcc8345e65..dbc7aad4fd4 100644 --- a/res/css/views/rooms/_EditMessageComposer.pcss +++ b/res/css/views/rooms/_EditMessageComposer.pcss @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_EmojiButton.pcss b/res/css/views/rooms/_EmojiButton.pcss index 8efdbb7dd23..16281046464 100644 --- a/res/css/views/rooms/_EmojiButton.pcss +++ b/res/css/views/rooms/_EmojiButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_EntityTile.pcss b/res/css/views/rooms/_EntityTile.pcss index 979d5bb5d43..43723dfb67e 100644 --- a/res/css/views/rooms/_EntityTile.pcss +++ b/res/css/views/rooms/_EntityTile.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_EventBubbleTile.pcss b/res/css/views/rooms/_EventBubbleTile.pcss index 7b1af0c771d..c25cbfcec41 100644 --- a/res/css/views/rooms/_EventBubbleTile.pcss +++ b/res/css/views/rooms/_EventBubbleTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_EventPreview.pcss b/res/css/views/rooms/_EventPreview.pcss index 0639c76d98d..6999810abfc 100644 --- a/res/css/views/rooms/_EventPreview.pcss +++ b/res/css/views/rooms/_EventPreview.pcss @@ -1,9 +1,9 @@ /* -* Copyright 2024 New Vector Ltd. -* Copyright 2024 The Matrix.org Foundation C.I.C. -* -* SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -* Please see LICENSE files in the repository root for full details. + * Copyright 2024 New Vector Ltd. + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * 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. */ .mx_EventPreview { diff --git a/res/css/views/rooms/_EventTile.pcss b/res/css/views/rooms/_EventTile.pcss index d405381db1c..5b86e3f7532 100644 --- a/res/css/views/rooms/_EventTile.pcss +++ b/res/css/views/rooms/_EventTile.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_HistoryTile.pcss b/res/css/views/rooms/_HistoryTile.pcss index 659ccdaef29..09a75c3e4a5 100644 --- a/res/css/views/rooms/_HistoryTile.pcss +++ b/res/css/views/rooms/_HistoryTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Robin Townsend -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_IRCLayout.pcss b/res/css/views/rooms/_IRCLayout.pcss index ecf1c257168..953a0c941fd 100644 --- a/res/css/views/rooms/_IRCLayout.pcss +++ b/res/css/views/rooms/_IRCLayout.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_JumpToBottomButton.pcss b/res/css/views/rooms/_JumpToBottomButton.pcss index 89aac3c58b5..912dda0f671 100644 --- a/res/css/views/rooms/_JumpToBottomButton.pcss +++ b/res/css/views/rooms/_JumpToBottomButton.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_LinkPreviewGroup.pcss b/res/css/views/rooms/_LinkPreviewGroup.pcss index 751a394c442..a98966bc209 100644 --- a/res/css/views/rooms/_LinkPreviewGroup.pcss +++ b/res/css/views/rooms/_LinkPreviewGroup.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_LinkPreviewWidget.pcss b/res/css/views/rooms/_LinkPreviewWidget.pcss index 03134ce7336..99f4418c31a 100644 --- a/res/css/views/rooms/_LinkPreviewWidget.pcss +++ b/res/css/views/rooms/_LinkPreviewWidget.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_LiveContentSummary.pcss b/res/css/views/rooms/_LiveContentSummary.pcss index 03f62d975f1..0736f0dd45b 100644 --- a/res/css/views/rooms/_LiveContentSummary.pcss +++ b/res/css/views/rooms/_LiveContentSummary.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_MemberList.pcss b/res/css/views/rooms/_MemberList.pcss index e3fe819ab65..93d390f7574 100644 --- a/res/css/views/rooms/_MemberList.pcss +++ b/res/css/views/rooms/_MemberList.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_MessageComposer.pcss b/res/css/views/rooms/_MessageComposer.pcss index 73ac15c9c9e..8b92b682ec1 100644 --- a/res/css/views/rooms/_MessageComposer.pcss +++ b/res/css/views/rooms/_MessageComposer.pcss @@ -2,7 +2,7 @@ Copyright 2018-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_MessageComposerFormatBar.pcss b/res/css/views/rooms/_MessageComposerFormatBar.pcss index 36bfe477d78..233fda1affc 100644 --- a/res/css/views/rooms/_MessageComposerFormatBar.pcss +++ b/res/css/views/rooms/_MessageComposerFormatBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_NewRoomIntro.pcss b/res/css/views/rooms/_NewRoomIntro.pcss index 84fa5aead00..4f704facd91 100644 --- a/res/css/views/rooms/_NewRoomIntro.pcss +++ b/res/css/views/rooms/_NewRoomIntro.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_NotificationBadge.pcss b/res/css/views/rooms/_NotificationBadge.pcss index 1e708fc8473..2066b81f0a2 100644 --- a/res/css/views/rooms/_NotificationBadge.pcss +++ b/res/css/views/rooms/_NotificationBadge.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_PinnedEventTile.pcss b/res/css/views/rooms/_PinnedEventTile.pcss index f58645ee8f9..a39a7603db6 100644 --- a/res/css/views/rooms/_PinnedEventTile.pcss +++ b/res/css/views/rooms/_PinnedEventTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_PinnedMessageBanner.pcss b/res/css/views/rooms/_PinnedMessageBanner.pcss index 27c79718338..da9b75b17d1 100644 --- a/res/css/views/rooms/_PinnedMessageBanner.pcss +++ b/res/css/views/rooms/_PinnedMessageBanner.pcss @@ -1,9 +1,9 @@ /* -* Copyright 2024 New Vector Ltd. -* Copyright 2024 The Matrix.org Foundation C.I.C. -* -* SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -* Please see LICENSE files in the repository root for full details. + * Copyright 2024 New Vector Ltd. + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * 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. */ .mx_PinnedMessageBanner { diff --git a/res/css/views/rooms/_PresenceLabel.pcss b/res/css/views/rooms/_PresenceLabel.pcss index c9c610c221d..7f7f6dbfaf6 100644 --- a/res/css/views/rooms/_PresenceLabel.pcss +++ b/res/css/views/rooms/_PresenceLabel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_ReadReceiptGroup.pcss b/res/css/views/rooms/_ReadReceiptGroup.pcss index 743f38459ec..1b6c1b4b440 100644 --- a/res/css/views/rooms/_ReadReceiptGroup.pcss +++ b/res/css/views/rooms/_ReadReceiptGroup.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_ReplyPreview.pcss b/res/css/views/rooms/_ReplyPreview.pcss index 2aef45ef717..9e48e6656b9 100644 --- a/res/css/views/rooms/_ReplyPreview.pcss +++ b/res/css/views/rooms/_ReplyPreview.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_ReplyTile.pcss b/res/css/views/rooms/_ReplyTile.pcss index 82cdd59ccf4..803e38c67f6 100644 --- a/res/css/views/rooms/_ReplyTile.pcss +++ b/res/css/views/rooms/_ReplyTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomBreadcrumbs.pcss b/res/css/views/rooms/_RoomBreadcrumbs.pcss index 8aadb3061f5..7dd150cd27b 100644 --- a/res/css/views/rooms/_RoomBreadcrumbs.pcss +++ b/res/css/views/rooms/_RoomBreadcrumbs.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomCallBanner.pcss b/res/css/views/rooms/_RoomCallBanner.pcss index 2596d220f80..0be3abe26f7 100644 --- a/res/css/views/rooms/_RoomCallBanner.pcss +++ b/res/css/views/rooms/_RoomCallBanner.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomHeader.pcss b/res/css/views/rooms/_RoomHeader.pcss index a53d06fd1c0..32eb055f07e 100644 --- a/res/css/views/rooms/_RoomHeader.pcss +++ b/res/css/views/rooms/_RoomHeader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomInfoLine.pcss b/res/css/views/rooms/_RoomInfoLine.pcss index 0c49b63c633..16127b1c6d0 100644 --- a/res/css/views/rooms/_RoomInfoLine.pcss +++ b/res/css/views/rooms/_RoomInfoLine.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomKnocksBar.pcss b/res/css/views/rooms/_RoomKnocksBar.pcss index 4fc1ab9a71f..2661bb069ae 100644 --- a/res/css/views/rooms/_RoomKnocksBar.pcss +++ b/res/css/views/rooms/_RoomKnocksBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Nordeck IT + Consulting GmbH -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomList.pcss b/res/css/views/rooms/_RoomList.pcss index 97b1e76cef8..74e2e86ed1d 100644 --- a/res/css/views/rooms/_RoomList.pcss +++ b/res/css/views/rooms/_RoomList.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomListHeader.pcss b/res/css/views/rooms/_RoomListHeader.pcss index fa0e0b24eb3..396aa4a61a7 100644 --- a/res/css/views/rooms/_RoomListHeader.pcss +++ b/res/css/views/rooms/_RoomListHeader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomPreviewBar.pcss b/res/css/views/rooms/_RoomPreviewBar.pcss index e0528383771..39df898c1ac 100644 --- a/res/css/views/rooms/_RoomPreviewBar.pcss +++ b/res/css/views/rooms/_RoomPreviewBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomPreviewCard.pcss b/res/css/views/rooms/_RoomPreviewCard.pcss index f96b705cc2b..bad3a9ad05c 100644 --- a/res/css/views/rooms/_RoomPreviewCard.pcss +++ b/res/css/views/rooms/_RoomPreviewCard.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomSearchAuxPanel.pcss b/res/css/views/rooms/_RoomSearchAuxPanel.pcss index 91ed8fe9f17..3e66f7103c7 100644 --- a/res/css/views/rooms/_RoomSearchAuxPanel.pcss +++ b/res/css/views/rooms/_RoomSearchAuxPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomSublist.pcss b/res/css/views/rooms/_RoomSublist.pcss index a8041344301..f5d0e4ed913 100644 --- a/res/css/views/rooms/_RoomSublist.pcss +++ b/res/css/views/rooms/_RoomSublist.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomTile.pcss b/res/css/views/rooms/_RoomTile.pcss index 53f9c10f1b3..798f3bfa462 100644 --- a/res/css/views/rooms/_RoomTile.pcss +++ b/res/css/views/rooms/_RoomTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_RoomUpgradeWarningBar.pcss b/res/css/views/rooms/_RoomUpgradeWarningBar.pcss index 240132dd70d..d561a9b81bd 100644 --- a/res/css/views/rooms/_RoomUpgradeWarningBar.pcss +++ b/res/css/views/rooms/_RoomUpgradeWarningBar.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_SendMessageComposer.pcss b/res/css/views/rooms/_SendMessageComposer.pcss index b88bb394715..a0fc1e81329 100644 --- a/res/css/views/rooms/_SendMessageComposer.pcss +++ b/res/css/views/rooms/_SendMessageComposer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_ThirdPartyMemberInfo.pcss b/res/css/views/rooms/_ThirdPartyMemberInfo.pcss index c645a0ba385..96aadc895e1 100644 --- a/res/css/views/rooms/_ThirdPartyMemberInfo.pcss +++ b/res/css/views/rooms/_ThirdPartyMemberInfo.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_ThreadSummary.pcss b/res/css/views/rooms/_ThreadSummary.pcss index 118ee512831..0e30cd3fedd 100644 --- a/res/css/views/rooms/_ThreadSummary.pcss +++ b/res/css/views/rooms/_ThreadSummary.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_TopUnreadMessagesBar.pcss b/res/css/views/rooms/_TopUnreadMessagesBar.pcss index dafe192e763..d80bc129160 100644 --- a/res/css/views/rooms/_TopUnreadMessagesBar.pcss +++ b/res/css/views/rooms/_TopUnreadMessagesBar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_UserIdentityWarning.pcss b/res/css/views/rooms/_UserIdentityWarning.pcss index b294b3fc8cf..e5d14eb4726 100644 --- a/res/css/views/rooms/_UserIdentityWarning.pcss +++ b/res/css/views/rooms/_UserIdentityWarning.pcss @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_VoiceRecordComposerTile.pcss b/res/css/views/rooms/_VoiceRecordComposerTile.pcss index 9e51dbea6c2..8dabc06fe58 100644 --- a/res/css/views/rooms/_VoiceRecordComposerTile.pcss +++ b/res/css/views/rooms/_VoiceRecordComposerTile.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/_WhoIsTypingTile.pcss b/res/css/views/rooms/_WhoIsTypingTile.pcss index a126a8baf28..eb604155c5d 100644 --- a/res/css/views/rooms/_WhoIsTypingTile.pcss +++ b/res/css/views/rooms/_WhoIsTypingTile.pcss @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/wysiwyg_composer/_EditWysiwygComposer.pcss b/res/css/views/rooms/wysiwyg_composer/_EditWysiwygComposer.pcss index 4f40280c246..a27f7b9b777 100644 --- a/res/css/views/rooms/wysiwyg_composer/_EditWysiwygComposer.pcss +++ b/res/css/views/rooms/wysiwyg_composer/_EditWysiwygComposer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/wysiwyg_composer/_SendWysiwygComposer.pcss b/res/css/views/rooms/wysiwyg_composer/_SendWysiwygComposer.pcss index b629088dac1..5ad59dd8e5b 100644 --- a/res/css/views/rooms/wysiwyg_composer/_SendWysiwygComposer.pcss +++ b/res/css/views/rooms/wysiwyg_composer/_SendWysiwygComposer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/wysiwyg_composer/components/_Editor.pcss b/res/css/views/rooms/wysiwyg_composer/components/_Editor.pcss index 34c2a4d626e..4de58b123bc 100644 --- a/res/css/views/rooms/wysiwyg_composer/components/_Editor.pcss +++ b/res/css/views/rooms/wysiwyg_composer/components/_Editor.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/wysiwyg_composer/components/_FormattingButtons.pcss b/res/css/views/rooms/wysiwyg_composer/components/_FormattingButtons.pcss index 42047531664..f43f313b088 100644 --- a/res/css/views/rooms/wysiwyg_composer/components/_FormattingButtons.pcss +++ b/res/css/views/rooms/wysiwyg_composer/components/_FormattingButtons.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss b/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss index 77848421fd9..346e05efc37 100644 --- a/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss +++ b/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_AvatarSetting.pcss b/res/css/views/settings/_AvatarSetting.pcss index fcab16a98ee..b928522820e 100644 --- a/res/css/views/settings/_AvatarSetting.pcss +++ b/res/css/views/settings/_AvatarSetting.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_CrossSigningPanel.pcss b/res/css/views/settings/_CrossSigningPanel.pcss index 7a68fcddf5c..e9b2aa0c293 100644 --- a/res/css/views/settings/_CrossSigningPanel.pcss +++ b/res/css/views/settings/_CrossSigningPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_CryptographyPanel.pcss b/res/css/views/settings/_CryptographyPanel.pcss index dfef7285d2a..9c174ceaab7 100644 --- a/res/css/views/settings/_CryptographyPanel.pcss +++ b/res/css/views/settings/_CryptographyPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_FontScalingPanel.pcss b/res/css/views/settings/_FontScalingPanel.pcss index e66c2205337..56e90bd9b82 100644 --- a/res/css/views/settings/_FontScalingPanel.pcss +++ b/res/css/views/settings/_FontScalingPanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_ImageSizePanel.pcss b/res/css/views/settings/_ImageSizePanel.pcss index 8456d16d9ca..174f5a262ad 100644 --- a/res/css/views/settings/_ImageSizePanel.pcss +++ b/res/css/views/settings/_ImageSizePanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_IntegrationManager.pcss b/res/css/views/settings/_IntegrationManager.pcss index 2bc8e9440e2..15b7ef4b0de 100644 --- a/res/css/views/settings/_IntegrationManager.pcss +++ b/res/css/views/settings/_IntegrationManager.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_JoinRuleSettings.pcss b/res/css/views/settings/_JoinRuleSettings.pcss index 965db9fb45f..485434f0da5 100644 --- a/res/css/views/settings/_JoinRuleSettings.pcss +++ b/res/css/views/settings/_JoinRuleSettings.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_KeyboardShortcut.pcss b/res/css/views/settings/_KeyboardShortcut.pcss index 826935eb1a8..b35629c98f6 100644 --- a/res/css/views/settings/_KeyboardShortcut.pcss +++ b/res/css/views/settings/_KeyboardShortcut.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_LayoutSwitcher.pcss b/res/css/views/settings/_LayoutSwitcher.pcss index 07da23389b0..8d50fa25d39 100644 --- a/res/css/views/settings/_LayoutSwitcher.pcss +++ b/res/css/views/settings/_LayoutSwitcher.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_NotificationPusherSettings.pcss b/res/css/views/settings/_NotificationPusherSettings.pcss index 78c2e9f1794..a8fc8f7e7d2 100644 --- a/res/css/views/settings/_NotificationPusherSettings.pcss +++ b/res/css/views/settings/_NotificationPusherSettings.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_NotificationSettings2.pcss b/res/css/views/settings/_NotificationSettings2.pcss index a56326ac323..d579c22b95b 100644 --- a/res/css/views/settings/_NotificationSettings2.pcss +++ b/res/css/views/settings/_NotificationSettings2.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_Notifications.pcss b/res/css/views/settings/_Notifications.pcss index a7f38507ccf..e4e450fd581 100644 --- a/res/css/views/settings/_Notifications.pcss +++ b/res/css/views/settings/_Notifications.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_PhoneNumbers.pcss b/res/css/views/settings/_PhoneNumbers.pcss index e6de1320f4f..9a5f1e49499 100644 --- a/res/css/views/settings/_PhoneNumbers.pcss +++ b/res/css/views/settings/_PhoneNumbers.pcss @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_PowerLevelSelector.pcss b/res/css/views/settings/_PowerLevelSelector.pcss index 6d5cf0a78f7..64c862742bb 100644 --- a/res/css/views/settings/_PowerLevelSelector.pcss +++ b/res/css/views/settings/_PowerLevelSelector.pcss @@ -1,9 +1,9 @@ /* -* Copyright 2024 New Vector Ltd. -* Copyright 2024 The Matrix.org Foundation C.I.C. -* -* SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -* Please see LICENSE files in the repository root for full details. + * Copyright 2024 New Vector Ltd. + * Copyright 2024 The Matrix.org Foundation C.I.C. + * + * 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. */ .mx_PowerLevelSelector_Button { diff --git a/res/css/views/settings/_RoomProfileSettings.pcss b/res/css/views/settings/_RoomProfileSettings.pcss index 14251ff291f..5b196a44b4f 100644 --- a/res/css/views/settings/_RoomProfileSettings.pcss +++ b/res/css/views/settings/_RoomProfileSettings.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 , 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_SecureBackupPanel.pcss b/res/css/views/settings/_SecureBackupPanel.pcss index ed77fcad4f6..6e571af3391 100644 --- a/res/css/views/settings/_SecureBackupPanel.pcss +++ b/res/css/views/settings/_SecureBackupPanel.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_SetIdServer.pcss b/res/css/views/settings/_SetIdServer.pcss index da752b17f32..377292451ff 100644 --- a/res/css/views/settings/_SetIdServer.pcss +++ b/res/css/views/settings/_SetIdServer.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_SetIntegrationManager.pcss b/res/css/views/settings/_SetIntegrationManager.pcss index acdff690266..a046ce0fffa 100644 --- a/res/css/views/settings/_SetIntegrationManager.pcss +++ b/res/css/views/settings/_SetIntegrationManager.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_SettingsFieldset.pcss b/res/css/views/settings/_SettingsFieldset.pcss index d45671f37f0..2b013da4b1e 100644 --- a/res/css/views/settings/_SettingsFieldset.pcss +++ b/res/css/views/settings/_SettingsFieldset.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_SpellCheckLanguages.pcss b/res/css/views/settings/_SpellCheckLanguages.pcss index afd506d49d0..42b247b747f 100644 --- a/res/css/views/settings/_SpellCheckLanguages.pcss +++ b/res/css/views/settings/_SpellCheckLanguages.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_ThemeChoicePanel.pcss b/res/css/views/settings/_ThemeChoicePanel.pcss index 33a4b0d17fa..e61671f4f5a 100644 --- a/res/css/views/settings/_ThemeChoicePanel.pcss +++ b/res/css/views/settings/_ThemeChoicePanel.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_UpdateCheckButton.pcss b/res/css/views/settings/_UpdateCheckButton.pcss index 6b81efec8a7..e0cab2ad5a9 100644 --- a/res/css/views/settings/_UpdateCheckButton.pcss +++ b/res/css/views/settings/_UpdateCheckButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/_UserProfileSettings.pcss b/res/css/views/settings/_UserProfileSettings.pcss index a46972e582d..9f05851e294 100644 --- a/res/css/views/settings/_UserProfileSettings.pcss +++ b/res/css/views/settings/_UserProfileSettings.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 , 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/_SettingsBanner.pcss b/res/css/views/settings/tabs/_SettingsBanner.pcss index d1adf2889fc..70a19da146e 100644 --- a/res/css/views/settings/tabs/_SettingsBanner.pcss +++ b/res/css/views/settings/tabs/_SettingsBanner.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/_SettingsIndent.pcss b/res/css/views/settings/tabs/_SettingsIndent.pcss index 65dd95bee8e..96e8245a863 100644 --- a/res/css/views/settings/tabs/_SettingsIndent.pcss +++ b/res/css/views/settings/tabs/_SettingsIndent.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/_SettingsSection.pcss b/res/css/views/settings/tabs/_SettingsSection.pcss index a00350c082c..1dd11661380 100644 --- a/res/css/views/settings/tabs/_SettingsSection.pcss +++ b/res/css/views/settings/tabs/_SettingsSection.pcss @@ -1,7 +1,7 @@ /* Copyright 2023, 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/_SettingsTab.pcss b/res/css/views/settings/tabs/_SettingsTab.pcss index 43a5a8fd104..6055c289fcb 100644 --- a/res/css/views/settings/tabs/_SettingsTab.pcss +++ b/res/css/views/settings/tabs/_SettingsTab.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/room/_NotificationSettingsTab.pcss b/res/css/views/settings/tabs/room/_NotificationSettingsTab.pcss index a36cc92fbab..38609c7fd49 100644 --- a/res/css/views/settings/tabs/room/_NotificationSettingsTab.pcss +++ b/res/css/views/settings/tabs/room/_NotificationSettingsTab.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/room/_PeopleRoomSettingsTab.pcss b/res/css/views/settings/tabs/room/_PeopleRoomSettingsTab.pcss index 5a2700e71aa..5d649fe2d4d 100644 --- a/res/css/views/settings/tabs/room/_PeopleRoomSettingsTab.pcss +++ b/res/css/views/settings/tabs/room/_PeopleRoomSettingsTab.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Nordeck IT + Consulting GmbH -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/room/_RolesRoomSettingsTab.pcss b/res/css/views/settings/tabs/room/_RolesRoomSettingsTab.pcss index 018beed3519..390efb48cd8 100644 --- a/res/css/views/settings/tabs/room/_RolesRoomSettingsTab.pcss +++ b/res/css/views/settings/tabs/room/_RolesRoomSettingsTab.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/room/_SecurityRoomSettingsTab.pcss b/res/css/views/settings/tabs/room/_SecurityRoomSettingsTab.pcss index dfd3817be1f..5ae0d5854cb 100644 --- a/res/css/views/settings/tabs/room/_SecurityRoomSettingsTab.pcss +++ b/res/css/views/settings/tabs/room/_SecurityRoomSettingsTab.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_AppearanceUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_AppearanceUserSettingsTab.pcss index 614bfa00986..dd899389ef0 100644 --- a/res/css/views/settings/tabs/user/_AppearanceUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_AppearanceUserSettingsTab.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_HelpUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_HelpUserSettingsTab.pcss index e3b4c1cf61b..972d0d7ede8 100644 --- a/res/css/views/settings/tabs/user/_HelpUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_HelpUserSettingsTab.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_KeyboardUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_KeyboardUserSettingsTab.pcss index b9eda93b2e0..b3251f3e3c1 100644 --- a/res/css/views/settings/tabs/user/_KeyboardUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_KeyboardUserSettingsTab.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_MjolnirUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_MjolnirUserSettingsTab.pcss index 83e2b45c7ff..3caec3d08f3 100644 --- a/res/css/views/settings/tabs/user/_MjolnirUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_MjolnirUserSettingsTab.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_PreferencesUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_PreferencesUserSettingsTab.pcss index 3dadcb56255..f5b580a14ea 100644 --- a/res/css/views/settings/tabs/user/_PreferencesUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_PreferencesUserSettingsTab.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_SecurityUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_SecurityUserSettingsTab.pcss index 55052144cf0..cb5d1fbc94b 100644 --- a/res/css/views/settings/tabs/user/_SecurityUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_SecurityUserSettingsTab.pcss @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/settings/tabs/user/_SidebarUserSettingsTab.pcss b/res/css/views/settings/tabs/user/_SidebarUserSettingsTab.pcss index 445af105226..cb360cc898f 100644 --- a/res/css/views/settings/tabs/user/_SidebarUserSettingsTab.pcss +++ b/res/css/views/settings/tabs/user/_SidebarUserSettingsTab.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/spaces/_SpaceBasicSettings.pcss b/res/css/views/spaces/_SpaceBasicSettings.pcss index 786b041e501..76c58e1f5c2 100644 --- a/res/css/views/spaces/_SpaceBasicSettings.pcss +++ b/res/css/views/spaces/_SpaceBasicSettings.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/spaces/_SpaceChildrenPicker.pcss b/res/css/views/spaces/_SpaceChildrenPicker.pcss index 2deeadf5f26..abc51e5dddc 100644 --- a/res/css/views/spaces/_SpaceChildrenPicker.pcss +++ b/res/css/views/spaces/_SpaceChildrenPicker.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/spaces/_SpaceCreateMenu.pcss b/res/css/views/spaces/_SpaceCreateMenu.pcss index 7ab0fdd234f..ca2a2c8fc1e 100644 --- a/res/css/views/spaces/_SpaceCreateMenu.pcss +++ b/res/css/views/spaces/_SpaceCreateMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/spaces/_SpacePublicShare.pcss b/res/css/views/spaces/_SpacePublicShare.pcss index ddda97b4931..b55c0e685ca 100644 --- a/res/css/views/spaces/_SpacePublicShare.pcss +++ b/res/css/views/spaces/_SpacePublicShare.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/terms/_InlineTermsAgreement.pcss b/res/css/views/terms/_InlineTermsAgreement.pcss index bd738ca7c5f..d2895010912 100644 --- a/res/css/views/terms/_InlineTermsAgreement.pcss +++ b/res/css/views/terms/_InlineTermsAgreement.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/toasts/_AnalyticsToast.pcss b/res/css/views/toasts/_AnalyticsToast.pcss index 2ffaf257a1c..4b6225f06e4 100644 --- a/res/css/views/toasts/_AnalyticsToast.pcss +++ b/res/css/views/toasts/_AnalyticsToast.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/toasts/_IncomingCallToast.pcss b/res/css/views/toasts/_IncomingCallToast.pcss index 3f11cf12f48..2aafff6b04e 100644 --- a/res/css/views/toasts/_IncomingCallToast.pcss +++ b/res/css/views/toasts/_IncomingCallToast.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/toasts/_IncomingLegacyCallToast.pcss b/res/css/views/toasts/_IncomingLegacyCallToast.pcss index 8fe94e9ba36..257cfbe370e 100644 --- a/res/css/views/toasts/_IncomingLegacyCallToast.pcss +++ b/res/css/views/toasts/_IncomingLegacyCallToast.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/toasts/_NonUrgentEchoFailureToast.pcss b/res/css/views/toasts/_NonUrgentEchoFailureToast.pcss index e1fc0b80c4d..a4044302049 100644 --- a/res/css/views/toasts/_NonUrgentEchoFailureToast.pcss +++ b/res/css/views/toasts/_NonUrgentEchoFailureToast.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/typography/_Heading.pcss b/res/css/views/typography/_Heading.pcss index 6082c60614f..a6204e869da 100644 --- a/res/css/views/typography/_Heading.pcss +++ b/res/css/views/typography/_Heading.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 x The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/user-onboarding/_UserOnboardingButton.pcss b/res/css/views/user-onboarding/_UserOnboardingButton.pcss index 01e27aa1430..75b1b1eb68d 100644 --- a/res/css/views/user-onboarding/_UserOnboardingButton.pcss +++ b/res/css/views/user-onboarding/_UserOnboardingButton.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/user-onboarding/_UserOnboardingHeader.pcss b/res/css/views/user-onboarding/_UserOnboardingHeader.pcss index 5a659ec173c..6402e8c859e 100644 --- a/res/css/views/user-onboarding/_UserOnboardingHeader.pcss +++ b/res/css/views/user-onboarding/_UserOnboardingHeader.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/user-onboarding/_UserOnboardingList.pcss b/res/css/views/user-onboarding/_UserOnboardingList.pcss index 689048793cd..bd198de2fee 100644 --- a/res/css/views/user-onboarding/_UserOnboardingList.pcss +++ b/res/css/views/user-onboarding/_UserOnboardingList.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/user-onboarding/_UserOnboardingPage.pcss b/res/css/views/user-onboarding/_UserOnboardingPage.pcss index 638bc4b3578..285a1b34d48 100644 --- a/res/css/views/user-onboarding/_UserOnboardingPage.pcss +++ b/res/css/views/user-onboarding/_UserOnboardingPage.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/user-onboarding/_UserOnboardingTask.pcss b/res/css/views/user-onboarding/_UserOnboardingTask.pcss index 4056d45d02e..756a9d36043 100644 --- a/res/css/views/user-onboarding/_UserOnboardingTask.pcss +++ b/res/css/views/user-onboarding/_UserOnboardingTask.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/verification/_VerificationShowSas.pcss b/res/css/views/verification/_VerificationShowSas.pcss index 74cb4d439b5..5e007ed2343 100644 --- a/res/css/views/verification/_VerificationShowSas.pcss +++ b/res/css/views/verification/_VerificationShowSas.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/LegacyCallView/_LegacyCallViewButtons.pcss b/res/css/views/voip/LegacyCallView/_LegacyCallViewButtons.pcss index a96fe20ec26..9849e9c560d 100644 --- a/res/css/views/voip/LegacyCallView/_LegacyCallViewButtons.pcss +++ b/res/css/views/voip/LegacyCallView/_LegacyCallViewButtons.pcss @@ -4,7 +4,7 @@ Copyright 2021, 2022 Šimon Brandner Copyright 2020, 2021 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_CallDuration.pcss b/res/css/views/voip/_CallDuration.pcss index e38f90a0c2b..f991f897fd8 100644 --- a/res/css/views/voip/_CallDuration.pcss +++ b/res/css/views/voip/_CallDuration.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_CallView.pcss b/res/css/views/voip/_CallView.pcss index 6a6f9757106..1acccda595b 100644 --- a/res/css/views/voip/_CallView.pcss +++ b/res/css/views/voip/_CallView.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_DialPad.pcss b/res/css/views/voip/_DialPad.pcss index 18867c3862e..e39620fd64a 100644 --- a/res/css/views/voip/_DialPad.pcss +++ b/res/css/views/voip/_DialPad.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_DialPadContextMenu.pcss b/res/css/views/voip/_DialPadContextMenu.pcss index feee0a5fb77..76311836bb6 100644 --- a/res/css/views/voip/_DialPadContextMenu.pcss +++ b/res/css/views/voip/_DialPadContextMenu.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_DialPadModal.pcss b/res/css/views/voip/_DialPadModal.pcss index 46b68fed756..7b979f18f96 100644 --- a/res/css/views/voip/_DialPadModal.pcss +++ b/res/css/views/voip/_DialPadModal.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_LegacyCallPreview.pcss b/res/css/views/voip/_LegacyCallPreview.pcss index 526fb59823e..3a8bf5af9f6 100644 --- a/res/css/views/voip/_LegacyCallPreview.pcss +++ b/res/css/views/voip/_LegacyCallPreview.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_LegacyCallView.pcss b/res/css/views/voip/_LegacyCallView.pcss index 45873face1e..007e8b50005 100644 --- a/res/css/views/voip/_LegacyCallView.pcss +++ b/res/css/views/voip/_LegacyCallView.pcss @@ -4,7 +4,7 @@ Copyright 2021, 2022 Šimon Brandner Copyright 2020, 2021 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_LegacyCallViewForRoom.pcss b/res/css/views/voip/_LegacyCallViewForRoom.pcss index 53b08648f80..18cba049511 100644 --- a/res/css/views/voip/_LegacyCallViewForRoom.pcss +++ b/res/css/views/voip/_LegacyCallViewForRoom.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_LegacyCallViewHeader.pcss b/res/css/views/voip/_LegacyCallViewHeader.pcss index 361c505acfb..c69add3ba0d 100644 --- a/res/css/views/voip/_LegacyCallViewHeader.pcss +++ b/res/css/views/voip/_LegacyCallViewHeader.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 Šimon Brandner Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_LegacyCallViewSidebar.pcss b/res/css/views/voip/_LegacyCallViewSidebar.pcss index fa8c552eff3..efc06cb9d22 100644 --- a/res/css/views/voip/_LegacyCallViewSidebar.pcss +++ b/res/css/views/voip/_LegacyCallViewSidebar.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/css/views/voip/_VideoFeed.pcss b/res/css/views/voip/_VideoFeed.pcss index c0f13c3e780..6abe3901268 100644 --- a/res/css/views/voip/_VideoFeed.pcss +++ b/res/css/views/voip/_VideoFeed.pcss @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 Šimon Brandner Copyright 2015, 2016 , 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/res/themes/light-custom/css/_custom.pcss b/res/themes/light-custom/css/_custom.pcss index 0dfb38da98b..043de30191a 100644 --- a/res/themes/light-custom/css/_custom.pcss +++ b/res/themes/light-custom/css/_custom.pcss @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/scripts/analyse_unused_exports.ts b/scripts/analyse_unused_exports.ts index 46e594d2b74..fd0e762d943 100755 --- a/scripts/analyse_unused_exports.ts +++ b/scripts/analyse_unused_exports.ts @@ -19,6 +19,11 @@ ignore.push("/OpenSpotlightPayload.ts"); ignore.push("/PinnedMessageBadge.tsx"); ignore.push("/editor/mock.ts"); ignore.push("DeviceIsolationModeController.ts"); +ignore.push("urls.ts"); +ignore.push("/json.ts"); +ignore.push("/ReleaseAnnouncementStore.ts"); +ignore.push("/WidgetLayoutStore.ts"); +ignore.push("/common.ts"); // We ignore js-sdk by default as it may export for other non element-web projects if (!includeJSSDK) ignore.push("matrix-js-sdk"); diff --git a/scripts/gen-workflow-mermaid.ts b/scripts/gen-workflow-mermaid.ts index 1376323e84d..c33398268f4 100755 --- a/scripts/gen-workflow-mermaid.ts +++ b/scripts/gen-workflow-mermaid.ts @@ -573,7 +573,10 @@ components.forEach((graph) => { let variations = cartesianProduct( Object.keys(job.strategy.matrix) - .filter((key) => key !== "include" && key !== "exclude") + .filter( + (key) => + key !== "include" && key !== "exclude" && Array.isArray(job.strategy!.matrix[key]), + ) .map((matrixKey) => { return job.strategy!.matrix[matrixKey].map((value) => ({ [matrixKey]: value })); }), diff --git a/src/@types/common.ts b/src/@types/common.ts index f80b66a6322..cdf969a698a 100644 --- a/src/@types/common.ts +++ b/src/@types/common.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -44,3 +44,11 @@ type DeepReadonlyObject = { }; export type AtLeastOne }> = Partial & U[keyof U]; + +/** + * Returns a union type of the keys of the input Object type whose values are assignable to the given Item type. + * Based on https://stackoverflow.com/a/57862073 + */ +export type Assignable = { + [Key in keyof Object]: Object[Key] extends Item ? Key : never; +}[keyof Object]; diff --git a/src/@types/commonmark.ts b/src/@types/commonmark.ts index d773b736a19..2d3be1b2438 100644 --- a/src/@types/commonmark.ts +++ b/src/@types/commonmark.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/diff-dom.d.ts b/src/@types/diff-dom.d.ts index 0ee966ad24c..986a84dc0b1 100644 --- a/src/@types/diff-dom.d.ts +++ b/src/@types/diff-dom.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/electron-to-chromium.d.ts b/src/@types/electron-to-chromium.d.ts index b8dea3f83d7..7f723ffad51 100644 --- a/src/@types/electron-to-chromium.d.ts +++ b/src/@types/electron-to-chromium.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/global.d.ts b/src/@types/global.d.ts index be36c5b689f..c76c43f8298 100644 --- a/src/@types/global.d.ts +++ b/src/@types/global.d.ts @@ -2,7 +2,7 @@ Copyright 2020-2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -44,6 +44,7 @@ import { IConfigOptions } from "../IConfigOptions"; import { MatrixDispatcher } from "../dispatcher/dispatcher"; import { DeepReadonly } from "./common"; import MatrixChat from "../components/structures/MatrixChat"; +import { InitialCryptoSetupStore } from "../stores/InitialCryptoSetupStore"; /* eslint-disable @typescript-eslint/naming-convention */ @@ -117,6 +118,7 @@ declare global { mxPerformanceEntryNames: any; mxUIStore: UIStore; mxSetupEncryptionStore?: SetupEncryptionStore; + mxInitialCryptoStore?: InitialCryptoSetupStore; mxRoomScrollStateStore?: RoomScrollStateStore; mxActiveWidgetStore?: ActiveWidgetStore; mxOnRecaptchaLoaded?: () => void; diff --git a/src/@types/jitsi-meet.d.ts b/src/@types/jitsi-meet.d.ts index f2fac3ee5dc..a5dfe8230b4 100644 --- a/src/@types/jitsi-meet.d.ts +++ b/src/@types/jitsi-meet.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/json.ts b/src/@types/json.ts new file mode 100644 index 00000000000..33af49a19ff --- /dev/null +++ b/src/@types/json.ts @@ -0,0 +1,13 @@ +/* +Copyright 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. +*/ + +export type JsonValue = null | string | number | boolean; +export type JsonArray = Array; +export interface JsonObject { + [key: string]: JsonObject | JsonArray | JsonValue; +} +export type Json = JsonArray | JsonObject; diff --git a/src/@types/matrix-js-sdk.d.ts b/src/@types/matrix-js-sdk.d.ts index 41ccfcbb3b2..6ffa09dd4f8 100644 --- a/src/@types/matrix-js-sdk.d.ts +++ b/src/@types/matrix-js-sdk.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,6 +11,8 @@ import type { BLURHASH_FIELD } from "../utils/image-media"; import type { JitsiCallMemberEventType, JitsiCallMemberContent } from "../call-types"; import type { ILayoutStateEvent, WIDGET_LAYOUT_EVENT_TYPE } from "../stores/widgets/types"; import type { EncryptedFile } from "matrix-js-sdk/src/types"; +import type { DeviceClientInformation } from "../utils/device/types.ts"; +import type { UserWidget } from "../utils/WidgetUtils-types.ts"; // Extend Matrix JS SDK types via Typescript declaration merging to support unspecced event fields and types declare module "matrix-js-sdk/src/types" { @@ -57,6 +59,35 @@ declare module "matrix-js-sdk/src/types" { }; } + export interface AccountDataEvents { + // Analytics account data event + "im.vector.analytics": { + id: string; + pseudonymousAnalyticsOptIn?: boolean; + }; + // Device client information account data event + [key: `io.element.matrix_client_information.${string}`]: DeviceClientInformation; + // Element settings account data events + "im.vector.setting.breadcrumbs": { recent_rooms: string[] }; + "io.element.recent_emoji": { recent_emoji: string[] }; + "im.vector.setting.integration_provisioning": { enabled: boolean }; + "im.vector.riot.breadcrumb_rooms": { recent_rooms: string[] }; + "im.vector.web.settings": Record; + + // URL preview account data event + "org.matrix.preview_urls": { disable: boolean }; + + // This is not yet in the Matrix spec yet is being used as if it was + "m.widgets": { + [widgetId: string]: UserWidget; + }; + + // This is not in the Matrix spec yet seems to use an `m.` prefix + "m.accepted_terms": { + accepted: string[]; + }; + } + export interface AudioContent { // MSC1767 + Ideals of MSC2516 as MSC3245 // https://github.com/matrix-org/matrix-doc/pull/3245 diff --git a/src/@types/opus-recorder.d.ts b/src/@types/opus-recorder.d.ts index 8b4605a24a2..8d103bedfd9 100644 --- a/src/@types/opus-recorder.d.ts +++ b/src/@types/opus-recorder.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/png-chunks-extract.d.ts b/src/@types/png-chunks-extract.d.ts deleted file mode 100644 index c767b40655b..00000000000 --- a/src/@types/png-chunks-extract.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. -Copyright 2021 The Matrix.org Foundation C.I.C. - -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -Please see LICENSE files in the repository root for full details. -*/ - -declare module "png-chunks-extract" { - interface IChunk { - name: string; - data: Uint8Array; - } - - function extractPngChunks(data: Uint8Array): IChunk[]; - - export default extractPngChunks; -} diff --git a/src/@types/polyfill.ts b/src/@types/polyfill.ts index 1e10b173035..5e08725889f 100644 --- a/src/@types/polyfill.ts +++ b/src/@types/polyfill.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/raw-loader.d.ts b/src/@types/raw-loader.d.ts index 902a257a124..b9ab4445a41 100644 --- a/src/@types/raw-loader.d.ts +++ b/src/@types/raw-loader.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/react.d.ts b/src/@types/react.d.ts index ba97b2bba6f..2573bc0ab94 100644 --- a/src/@types/react.d.ts +++ b/src/@types/react.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/sanitize-html.d.ts b/src/@types/sanitize-html.d.ts deleted file mode 100644 index 34474fc655a..00000000000 --- a/src/@types/sanitize-html.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. -Copyright 2020 The Matrix.org Foundation C.I.C. - -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -Please see LICENSE files in the repository root for full details. -*/ - -import sanitizeHtml from "sanitize-html"; - -export interface IExtendedSanitizeOptions extends sanitizeHtml.IOptions { - // This option only exists in 2.x RCs so far, so not yet present in the - // separate type definition module. - nestingLimit?: number; -} diff --git a/src/@types/svg.d.ts b/src/@types/svg.d.ts index f0491a594ec..8a8990645b6 100644 --- a/src/@types/svg.d.ts +++ b/src/@types/svg.d.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/@types/worker-loader.d.ts b/src/@types/worker-loader.d.ts index 39734725e6e..7bc6436367e 100644 --- a/src/@types/worker-loader.d.ts +++ b/src/@types/worker-loader.d.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/AddThreepid.ts b/src/AddThreepid.ts index 5232132535c..757ea181805 100644 --- a/src/AddThreepid.ts +++ b/src/AddThreepid.ts @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/AsyncWrapper.tsx b/src/AsyncWrapper.tsx index 2a04d804b77..e1b80c9d5a2 100644 --- a/src/AsyncWrapper.tsx +++ b/src/AsyncWrapper.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Avatar.ts b/src/Avatar.ts index a78aa4d03b3..a6725710d1d 100644 --- a/src/Avatar.ts +++ b/src/Avatar.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/BasePlatform.ts b/src/BasePlatform.ts index 0017d00dacb..db4802d4bba 100644 --- a/src/BasePlatform.ts +++ b/src/BasePlatform.ts @@ -5,7 +5,7 @@ Copyright 2018 New Vector Ltd Copyright 2016 Aviral Dasgupta Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/BlurhashEncoder.ts b/src/BlurhashEncoder.ts index 9cd386894f6..aef0746dbe0 100644 --- a/src/BlurhashEncoder.ts +++ b/src/BlurhashEncoder.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/ContentMessages.ts b/src/ContentMessages.ts index 344a2f112c3..060c8ab994d 100644 --- a/src/ContentMessages.ts +++ b/src/ContentMessages.ts @@ -4,7 +4,7 @@ Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/CreateCrossSigning.ts b/src/CreateCrossSigning.ts index e67e030f60e..0c043d9d2bb 100644 --- a/src/CreateCrossSigning.ts +++ b/src/CreateCrossSigning.ts @@ -3,63 +3,29 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { logger } from "matrix-js-sdk/src/logger"; -import { AuthDict, CrossSigningKeys, MatrixClient, MatrixError, UIAFlow, UIAResponse } from "matrix-js-sdk/src/matrix"; +import { AuthDict, MatrixClient, MatrixError, UIAResponse } from "matrix-js-sdk/src/matrix"; import { SSOAuthEntry } from "./components/views/auth/InteractiveAuthEntryComponents"; import Modal from "./Modal"; import { _t } from "./languageHandler"; import InteractiveAuthDialog from "./components/views/dialogs/InteractiveAuthDialog"; -/** - * Determine if the homeserver allows uploading device keys with only password auth. - * @param cli The Matrix Client to use - * @returns True if the homeserver allows uploading device keys with only password auth, otherwise false - */ -async function canUploadKeysWithPasswordOnly(cli: MatrixClient): Promise { - try { - await cli.uploadDeviceSigningKeys(undefined, {} as CrossSigningKeys); - // We should never get here: the server should always require - // UI auth to upload device signing keys. If we do, we upload - // no keys which would be a no-op. - logger.log("uploadDeviceSigningKeys unexpectedly succeeded without UI auth!"); - return false; - } catch (error) { - if (!(error instanceof MatrixError) || !error.data || !error.data.flows) { - logger.log("uploadDeviceSigningKeys advertised no flows!"); - return false; - } - const canUploadKeysWithPasswordOnly = error.data.flows.some((f: UIAFlow) => { - return f.stages.length === 1 && f.stages[0] === "m.login.password"; - }); - return canUploadKeysWithPasswordOnly; - } -} - /** * Ensures that cross signing keys are created and uploaded for the user. * The homeserver may require user-interactive auth to upload the keys, in - * which case the user will be prompted to authenticate. If the homeserver - * allows uploading keys with just an account password and one is provided, - * the keys will be uploaded without user interaction. + * which case the user will be prompted to authenticate. * * This function does not set up backups of the created cross-signing keys * (or message keys): the cross-signing keys are stored locally and will be * lost requiring a crypto reset, if the user logs out or loses their session. * * @param cli The Matrix Client to use - * @param isTokenLogin True if the user logged in via a token login, otherwise false - * @param accountPassword The password that the user logged in with */ -export async function createCrossSigning( - cli: MatrixClient, - isTokenLogin: boolean, - accountPassword?: string, -): Promise { +export async function createCrossSigning(cli: MatrixClient): Promise { const cryptoApi = cli.getCrypto(); if (!cryptoApi) { throw new Error("No crypto API found!"); @@ -68,19 +34,14 @@ export async function createCrossSigning( const doBootstrapUIAuth = async ( makeRequest: (authData: AuthDict) => Promise>, ): Promise => { - if (accountPassword && (await canUploadKeysWithPasswordOnly(cli))) { - await makeRequest({ - type: "m.login.password", - identifier: { - type: "m.id.user", - user: cli.getUserId(), - }, - password: accountPassword, - }); - } else if (isTokenLogin) { - // We are hoping the grace period is active + try { await makeRequest({}); - } else { + } catch (error) { + if (!(error instanceof MatrixError) || !error.data || !error.data.flows) { + // Not a UIA response + throw error; + } + const dialogAesthetics = { [SSOAuthEntry.PHASE_PREAUTH]: { title: _t("auth|uia|sso_title"), diff --git a/src/DateUtils.ts b/src/DateUtils.ts index 0710e0b8679..7c7b7dd7e6c 100644 --- a/src/DateUtils.ts +++ b/src/DateUtils.ts @@ -4,7 +4,7 @@ Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/DecryptionFailureTracker.ts b/src/DecryptionFailureTracker.ts index bfcd126eeaa..6a226ad3fe6 100644 --- a/src/DecryptionFailureTracker.ts +++ b/src/DecryptionFailureTracker.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/DeviceListener.ts b/src/DeviceListener.ts index 84d83827da5..28bb5f655e0 100644 --- a/src/DeviceListener.ts +++ b/src/DeviceListener.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -295,21 +295,29 @@ export default class DeviceListener { await crypto.getUserDeviceInfo([cli.getSafeUserId()]); // cross signing isn't enabled - nag to enable it - // There are 2 different toasts for: + // There are 3 different toasts for: if (!(await crypto.getCrossSigningKeyId()) && (await crypto.userHasCrossSigningKeys())) { - // Cross-signing on account but this device doesn't trust the master key (verify this session) + // Toast 1. Cross-signing on account but this device doesn't trust the master key (verify this session) showSetupEncryptionToast(SetupKind.VERIFY_THIS_SESSION); this.checkKeyBackupStatus(); } else { - // No cross-signing or key backup on account (set up encryption) - await cli.waitForClientWellKnown(); - if (isSecureBackupRequired(cli) && isLoggedIn()) { - // If we're meant to set up, and Secure Backup is required, - // trigger the flow directly without a toast once logged in. - hideSetupEncryptionToast(); - accessSecretStorage(); + const backupInfo = await this.getKeyBackupInfo(); + if (backupInfo) { + // Toast 2: Key backup is enabled but recovery (4S) is not set up: prompt user to set up recovery. + // Since we now enable key backup at registration time, this will be the common case for + // new users. + showSetupEncryptionToast(SetupKind.SET_UP_RECOVERY); } else { - showSetupEncryptionToast(SetupKind.SET_UP_ENCRYPTION); + // Toast 3: No cross-signing or key backup on account (set up encryption) + await cli.waitForClientWellKnown(); + if (isSecureBackupRequired(cli) && isLoggedIn()) { + // If we're meant to set up, and Secure Backup is required, + // trigger the flow directly without a toast once logged in. + hideSetupEncryptionToast(); + accessSecretStorage(); + } else { + showSetupEncryptionToast(SetupKind.SET_UP_ENCRYPTION); + } } } } diff --git a/src/DraftCleaner.ts b/src/DraftCleaner.ts index 48a3523f616..6adae6b8f45 100644 --- a/src/DraftCleaner.ts +++ b/src/DraftCleaner.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Editing.ts b/src/Editing.ts index 1d0cd26ab7e..3b8d2d393aa 100644 --- a/src/Editing.ts +++ b/src/Editing.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/HtmlUtils.tsx b/src/HtmlUtils.tsx index 3146a9eb078..d635b23221f 100644 --- a/src/HtmlUtils.tsx +++ b/src/HtmlUtils.tsx @@ -5,12 +5,12 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2017, 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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, { LegacyRef, ReactNode } from "react"; -import sanitizeHtml from "sanitize-html"; +import sanitizeHtml, { IOptions } from "sanitize-html"; import classNames from "classnames"; import katex from "katex"; import { decode } from "html-entities"; @@ -19,7 +19,6 @@ import { Optional } from "matrix-events-sdk"; import escapeHtml from "escape-html"; import { getEmojiFromUnicode } from "@matrix-org/emojibase-bindings"; -import { IExtendedSanitizeOptions } from "./@types/sanitize-html"; import SettingsStore from "./settings/SettingsStore"; import { stripHTMLReply, stripPlainReply } from "./utils/Reply"; import { PERMITTED_URL_SCHEMES } from "./utils/UrlUtils"; @@ -126,7 +125,7 @@ export function isUrlPermitted(inputUrl: string): boolean { } // this is the same as the above except with less rewriting -const composerSanitizeHtmlParams: IExtendedSanitizeOptions = { +const composerSanitizeHtmlParams: IOptions = { ...sanitizeHtmlParams, transformTags: { "code": transformTags["code"], @@ -135,7 +134,7 @@ const composerSanitizeHtmlParams: IExtendedSanitizeOptions = { }; // reduced set of allowed tags to avoid turning topics into Myspace -const topicSanitizeHtmlParams: IExtendedSanitizeOptions = { +const topicSanitizeHtmlParams: IOptions = { ...sanitizeHtmlParams, allowedTags: [ "font", // custom to matrix for IRC-style font coloring diff --git a/src/IConfigOptions.ts b/src/IConfigOptions.ts index 5dd500402d4..bbb377e07b7 100644 --- a/src/IConfigOptions.ts +++ b/src/IConfigOptions.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/IdentityAuthClient.tsx b/src/IdentityAuthClient.tsx index 8963b6bcf25..ce20bc92edb 100644 --- a/src/IdentityAuthClient.tsx +++ b/src/IdentityAuthClient.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/ImageUtils.ts b/src/ImageUtils.ts index 0b5ed28d21d..94715f4f7c1 100644 --- a/src/ImageUtils.ts +++ b/src/ImageUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 , 2020 Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/KeyBindingsDefaults.ts b/src/KeyBindingsDefaults.ts index 10d89ecfda3..3a4412c5dbb 100644 --- a/src/KeyBindingsDefaults.ts +++ b/src/KeyBindingsDefaults.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner Copyright 2021 Clemens Zeidler -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/KeyBindingsManager.ts b/src/KeyBindingsManager.ts index 007b6abf17f..5c8bccbfd06 100644 --- a/src/KeyBindingsManager.ts +++ b/src/KeyBindingsManager.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner Copyright 2021 Clemens Zeidler -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Keyboard.ts b/src/Keyboard.ts index 5688ac2a20b..59c6bf77cf3 100644 --- a/src/Keyboard.ts +++ b/src/Keyboard.ts @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2017 New Vector Ltd Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/LegacyCallHandler.tsx b/src/LegacyCallHandler.tsx index b804ca0084d..c2df066fa23 100644 --- a/src/LegacyCallHandler.tsx +++ b/src/LegacyCallHandler.tsx @@ -5,7 +5,7 @@ Copyright 2021 Šimon Brandner Copyright 2017, 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Lifecycle.ts b/src/Lifecycle.ts index 89faa9e0e9a..2f6c460afed 100644 --- a/src/Lifecycle.ts +++ b/src/Lifecycle.ts @@ -5,7 +5,7 @@ Copyright 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Linkify.tsx b/src/Linkify.tsx index d980c496c4f..db4c70228a1 100644 --- a/src/Linkify.tsx +++ b/src/Linkify.tsx @@ -2,12 +2,12 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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, { ReactElement } from "react"; -import sanitizeHtml from "sanitize-html"; +import sanitizeHtml, { IOptions } from "sanitize-html"; import { merge } from "lodash"; import _Linkify from "linkify-react"; @@ -17,7 +17,6 @@ import { ELEMENT_URL_PATTERN, options as linkifyMatrixOptions, } from "./linkify-matrix"; -import { IExtendedSanitizeOptions } from "./@types/sanitize-html"; import SettingsStore from "./settings/SettingsStore"; import { tryTransformPermalinkToLocalHref } from "./utils/permalinks/Permalinks"; import { mediaFromMxc } from "./customisations/Media"; @@ -26,7 +25,7 @@ import { PERMITTED_URL_SCHEMES } from "./utils/UrlUtils"; const COLOR_REGEX = /^#[0-9a-fA-F]{6}$/; const MEDIA_API_MXC_REGEX = /\/_matrix\/media\/r0\/(?:download|thumbnail)\/(.+?)\/(.+?)(?:[?/]|$)/; -export const transformTags: NonNullable = { +export const transformTags: NonNullable = { // custom to matrix // add blank targets to all hyperlinks except vector URLs "a": function (tagName: string, attribs: sanitizeHtml.Attributes) { @@ -137,7 +136,7 @@ export const transformTags: NonNullable -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Markdown.ts b/src/Markdown.ts index 9a346bf2f6d..6f0e3e0c5e0 100644 --- a/src/Markdown.ts +++ b/src/Markdown.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/MatrixClientPeg.ts b/src/MatrixClientPeg.ts index ce879531185..ab952c56334 100644 --- a/src/MatrixClientPeg.ts +++ b/src/MatrixClientPeg.ts @@ -5,7 +5,7 @@ Copyright 2017, 2018 , 2019 New Vector Ltd Copyright 2017 Vector Creations Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/MediaDeviceHandler.ts b/src/MediaDeviceHandler.ts index 147cabb7c5b..7a50024d1aa 100644 --- a/src/MediaDeviceHandler.ts +++ b/src/MediaDeviceHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Modal.tsx b/src/Modal.tsx index 2aefdccb462..31ad6b9bfcf 100644 --- a/src/Modal.tsx +++ b/src/Modal.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/NodeAnimator.tsx b/src/NodeAnimator.tsx index 3ca098311fc..16c5a716ff7 100644 --- a/src/NodeAnimator.tsx +++ b/src/NodeAnimator.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Notifier.ts b/src/Notifier.ts index c724c4780cd..377559a6fc7 100644 --- a/src/Notifier.ts +++ b/src/Notifier.ts @@ -5,7 +5,7 @@ Copyright 2017 Vector Creations Ltd Copyright 2017 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -176,7 +176,7 @@ class NotifierClass extends TypedEventEmitter Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/SlidingSyncManager.ts b/src/SlidingSyncManager.ts index 11872d059ee..b9922e2290f 100644 --- a/src/SlidingSyncManager.ts +++ b/src/SlidingSyncManager.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/SupportedBrowser.ts b/src/SupportedBrowser.ts index 099648a936c..0527ed829f0 100644 --- a/src/SupportedBrowser.ts +++ b/src/SupportedBrowser.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Terms.ts b/src/Terms.ts index 868e2428c67..02b67545da1 100644 --- a/src/Terms.ts +++ b/src/Terms.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/TextForEvent.tsx b/src/TextForEvent.tsx index 49d8b739b73..bdb7e8cbe0e 100644 --- a/src/TextForEvent.tsx +++ b/src/TextForEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/TimezoneHandler.ts b/src/TimezoneHandler.ts index c7c603b5fe2..eb1bacef5f4 100644 --- a/src/TimezoneHandler.ts +++ b/src/TimezoneHandler.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Typeguards.ts b/src/Typeguards.ts index 4d39847dcb3..138accbb95c 100644 --- a/src/Typeguards.ts +++ b/src/Typeguards.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Unread.ts b/src/Unread.ts index 06d2344938b..e79a9cb75f9 100644 --- a/src/Unread.ts +++ b/src/Unread.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/UserActivity.ts b/src/UserActivity.ts index a1a090ca0e1..c63b595b418 100644 --- a/src/UserActivity.ts +++ b/src/UserActivity.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/UserAddress.ts b/src/UserAddress.ts index 4f576d0762c..1ba84a5ab38 100644 --- a/src/UserAddress.ts +++ b/src/UserAddress.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/Views.ts b/src/Views.ts index 68e1feb2303..90480b26695 100644 --- a/src/Views.ts +++ b/src/Views.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/VoipUserMapper.ts b/src/VoipUserMapper.ts index 41e0ab3df4a..a0290a3eb18 100644 --- a/src/VoipUserMapper.ts +++ b/src/VoipUserMapper.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/WhoIsTyping.ts b/src/WhoIsTyping.ts index 9a0b279c32f..c209253206a 100644 --- a/src/WhoIsTyping.ts +++ b/src/WhoIsTyping.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/WorkerManager.ts b/src/WorkerManager.ts index 1878769c248..089463dc915 100644 --- a/src/WorkerManager.ts +++ b/src/WorkerManager.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/KeyboardShortcutUtils.ts b/src/accessibility/KeyboardShortcutUtils.ts index 6b049ab41cc..4eafb80f36a 100644 --- a/src/accessibility/KeyboardShortcutUtils.ts +++ b/src/accessibility/KeyboardShortcutUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/KeyboardShortcuts.ts b/src/accessibility/KeyboardShortcuts.ts index bdc0123ee7d..1e8febb0bbc 100644 --- a/src/accessibility/KeyboardShortcuts.ts +++ b/src/accessibility/KeyboardShortcuts.ts @@ -4,7 +4,7 @@ Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2021, 2022 Šimon Brandner Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/LandmarkNavigation.ts b/src/accessibility/LandmarkNavigation.ts index 68c9e0b118b..1c6fe543450 100644 --- a/src/accessibility/LandmarkNavigation.ts +++ b/src/accessibility/LandmarkNavigation.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/accessibility/RovingTabIndex.tsx b/src/accessibility/RovingTabIndex.tsx index d35a0291c3e..dada99b3e7f 100644 --- a/src/accessibility/RovingTabIndex.tsx +++ b/src/accessibility/RovingTabIndex.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/Toolbar.tsx b/src/accessibility/Toolbar.tsx index 7d4b1f936d4..317ff8b9363 100644 --- a/src/accessibility/Toolbar.tsx +++ b/src/accessibility/Toolbar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/ContextMenuButton.tsx b/src/accessibility/context_menu/ContextMenuButton.tsx index 9d8b5585e3b..e326e087b97 100644 --- a/src/accessibility/context_menu/ContextMenuButton.tsx +++ b/src/accessibility/context_menu/ContextMenuButton.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/ContextMenuTooltipButton.tsx b/src/accessibility/context_menu/ContextMenuTooltipButton.tsx index 80023680838..7a4230ddf78 100644 --- a/src/accessibility/context_menu/ContextMenuTooltipButton.tsx +++ b/src/accessibility/context_menu/ContextMenuTooltipButton.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/MenuItem.tsx b/src/accessibility/context_menu/MenuItem.tsx index f30fd64f72b..6aef5498706 100644 --- a/src/accessibility/context_menu/MenuItem.tsx +++ b/src/accessibility/context_menu/MenuItem.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/MenuItemCheckbox.tsx b/src/accessibility/context_menu/MenuItemCheckbox.tsx index 2e383393e4a..7ee62875139 100644 --- a/src/accessibility/context_menu/MenuItemCheckbox.tsx +++ b/src/accessibility/context_menu/MenuItemCheckbox.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/MenuItemRadio.tsx b/src/accessibility/context_menu/MenuItemRadio.tsx index 69e690f83f4..8094e984e7d 100644 --- a/src/accessibility/context_menu/MenuItemRadio.tsx +++ b/src/accessibility/context_menu/MenuItemRadio.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/StyledMenuItemCheckbox.tsx b/src/accessibility/context_menu/StyledMenuItemCheckbox.tsx index af49288d0ff..472e7bcae2a 100644 --- a/src/accessibility/context_menu/StyledMenuItemCheckbox.tsx +++ b/src/accessibility/context_menu/StyledMenuItemCheckbox.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/context_menu/StyledMenuItemRadio.tsx b/src/accessibility/context_menu/StyledMenuItemRadio.tsx index a6a6993e77c..5bf6d4706c0 100644 --- a/src/accessibility/context_menu/StyledMenuItemRadio.tsx +++ b/src/accessibility/context_menu/StyledMenuItemRadio.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/roving/RovingAccessibleButton.tsx b/src/accessibility/roving/RovingAccessibleButton.tsx index b53221e1c99..70e569e3351 100644 --- a/src/accessibility/roving/RovingAccessibleButton.tsx +++ b/src/accessibility/roving/RovingAccessibleButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/roving/RovingTabIndexWrapper.tsx b/src/accessibility/roving/RovingTabIndexWrapper.tsx index b44f44b92f1..a47c1cb3efc 100644 --- a/src/accessibility/roving/RovingTabIndexWrapper.tsx +++ b/src/accessibility/roving/RovingTabIndexWrapper.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/accessibility/roving/types.ts b/src/accessibility/roving/types.ts index 98b498844b3..3cf8cdf6c0c 100644 --- a/src/accessibility/roving/types.ts +++ b/src/accessibility/roving/types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/actions/MatrixActionCreators.ts b/src/actions/MatrixActionCreators.ts index 6f32220ee33..ccda4853f6d 100644 --- a/src/actions/MatrixActionCreators.ts +++ b/src/actions/MatrixActionCreators.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/actions/RoomListActions.ts b/src/actions/RoomListActions.ts index 578226986d7..7418ec2cdd1 100644 --- a/src/actions/RoomListActions.ts +++ b/src/actions/RoomListActions.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/actions/actionCreators.ts b/src/actions/actionCreators.ts index 55a6ec729ce..f3a097d06f0 100644 --- a/src/actions/actionCreators.ts +++ b/src/actions/actionCreators.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2017 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/actions/handlers/viewUserDeviceSettings.ts b/src/actions/handlers/viewUserDeviceSettings.ts index 56083dd4e88..d7cfe73d86c 100644 --- a/src/actions/handlers/viewUserDeviceSettings.ts +++ b/src/actions/handlers/viewUserDeviceSettings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/structures/ErrorView.tsx b/src/async-components/structures/ErrorView.tsx index 5e60b8e67cb..cee6c6345bd 100644 --- a/src/async-components/structures/ErrorView.tsx +++ b/src/async-components/structures/ErrorView.tsx @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/eventindex/DisableEventIndexDialog.tsx b/src/async-components/views/dialogs/eventindex/DisableEventIndexDialog.tsx index 90b0ee29914..f84d6827843 100644 --- a/src/async-components/views/dialogs/eventindex/DisableEventIndexDialog.tsx +++ b/src/async-components/views/dialogs/eventindex/DisableEventIndexDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/eventindex/ManageEventIndexDialog.tsx b/src/async-components/views/dialogs/eventindex/ManageEventIndexDialog.tsx index 01b7e8227c9..a7405235490 100644 --- a/src/async-components/views/dialogs/eventindex/ManageEventIndexDialog.tsx +++ b/src/async-components/views/dialogs/eventindex/ManageEventIndexDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/security/CreateKeyBackupDialog.tsx b/src/async-components/views/dialogs/security/CreateKeyBackupDialog.tsx index 9608abc4bcd..30d04baec1d 100644 --- a/src/async-components/views/dialogs/security/CreateKeyBackupDialog.tsx +++ b/src/async-components/views/dialogs/security/CreateKeyBackupDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx b/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx index 932f6d7fcf8..235f73fc8e6 100644 --- a/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx +++ b/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 , 2023 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/security/ExportE2eKeysDialog.tsx b/src/async-components/views/dialogs/security/ExportE2eKeysDialog.tsx index 673ff5e3990..18dd507b5a5 100644 --- a/src/async-components/views/dialogs/security/ExportE2eKeysDialog.tsx +++ b/src/async-components/views/dialogs/security/ExportE2eKeysDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/security/ImportE2eKeysDialog.tsx b/src/async-components/views/dialogs/security/ImportE2eKeysDialog.tsx index d08259f2cb5..16d50640f56 100644 --- a/src/async-components/views/dialogs/security/ImportE2eKeysDialog.tsx +++ b/src/async-components/views/dialogs/security/ImportE2eKeysDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/security/NewRecoveryMethodDialog.tsx b/src/async-components/views/dialogs/security/NewRecoveryMethodDialog.tsx index 69fc4b4814b..bec708e6645 100644 --- a/src/async-components/views/dialogs/security/NewRecoveryMethodDialog.tsx +++ b/src/async-components/views/dialogs/security/NewRecoveryMethodDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx b/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx index b1a6ebafc79..7e82ff722b9 100644 --- a/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx +++ b/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/BackgroundAudio.ts b/src/audio/BackgroundAudio.ts index 7bb6ebb5082..c90016eef91 100644 --- a/src/audio/BackgroundAudio.ts +++ b/src/audio/BackgroundAudio.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/ManagedPlayback.ts b/src/audio/ManagedPlayback.ts index cab2142c28f..0f0b420d1ed 100644 --- a/src/audio/ManagedPlayback.ts +++ b/src/audio/ManagedPlayback.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/Playback.ts b/src/audio/Playback.ts index f0155574cad..af777a8c011 100644 --- a/src/audio/Playback.ts +++ b/src/audio/Playback.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/PlaybackClock.ts b/src/audio/PlaybackClock.ts index a0f1b3b5bbf..ceb06987c88 100644 --- a/src/audio/PlaybackClock.ts +++ b/src/audio/PlaybackClock.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/PlaybackManager.ts b/src/audio/PlaybackManager.ts index d33b31ea7a9..80d28f11960 100644 --- a/src/audio/PlaybackManager.ts +++ b/src/audio/PlaybackManager.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/PlaybackQueue.ts b/src/audio/PlaybackQueue.ts index bc3b3c692d6..f84f6add3cc 100644 --- a/src/audio/PlaybackQueue.ts +++ b/src/audio/PlaybackQueue.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/RecorderWorklet.ts b/src/audio/RecorderWorklet.ts index 509dac09cb4..acf23f4dcd0 100644 --- a/src/audio/RecorderWorklet.ts +++ b/src/audio/RecorderWorklet.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/VoiceMessageRecording.ts b/src/audio/VoiceMessageRecording.ts index 8824206b850..2dac4ac9c3c 100644 --- a/src/audio/VoiceMessageRecording.ts +++ b/src/audio/VoiceMessageRecording.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/VoiceRecording.ts b/src/audio/VoiceRecording.ts index 692f731c2d7..0a48c27e06a 100644 --- a/src/audio/VoiceRecording.ts +++ b/src/audio/VoiceRecording.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/compat.ts b/src/audio/compat.ts index bce98874aac..7af6ef68b23 100644 --- a/src/audio/compat.ts +++ b/src/audio/compat.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/consts.ts b/src/audio/consts.ts index bf6405a035a..e8910fa8ed3 100644 --- a/src/audio/consts.ts +++ b/src/audio/consts.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/audio/recorderWorkletFactory.ts b/src/audio/recorderWorkletFactory.ts index 460f325957f..3290e118a4d 100644 --- a/src/audio/recorderWorkletFactory.ts +++ b/src/audio/recorderWorkletFactory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/AutocompleteProvider.tsx b/src/autocomplete/AutocompleteProvider.tsx index 8c755cc950c..0161a64dce4 100644 --- a/src/autocomplete/AutocompleteProvider.tsx +++ b/src/autocomplete/AutocompleteProvider.tsx @@ -3,7 +3,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/Autocompleter.ts b/src/autocomplete/Autocompleter.ts index b2a2b1e13e3..7ac11e95390 100644 --- a/src/autocomplete/Autocompleter.ts +++ b/src/autocomplete/Autocompleter.ts @@ -2,7 +2,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/CommandProvider.tsx b/src/autocomplete/CommandProvider.tsx index e5737751867..d2b9f18f152 100644 --- a/src/autocomplete/CommandProvider.tsx +++ b/src/autocomplete/CommandProvider.tsx @@ -5,7 +5,7 @@ Copyright 2017 Vector Creations Ltd Copyright 2017 New Vector Ltd Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/Components.tsx b/src/autocomplete/Components.tsx index 0dcfd467e26..ebbc1732e2f 100644 --- a/src/autocomplete/Components.tsx +++ b/src/autocomplete/Components.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/EmojiProvider.tsx b/src/autocomplete/EmojiProvider.tsx index f25b94f9981..f976fd37db2 100644 --- a/src/autocomplete/EmojiProvider.tsx +++ b/src/autocomplete/EmojiProvider.tsx @@ -6,7 +6,7 @@ Copyright 2017, 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/NotifProvider.tsx b/src/autocomplete/NotifProvider.tsx index 0d9741276f9..49190455789 100644 --- a/src/autocomplete/NotifProvider.tsx +++ b/src/autocomplete/NotifProvider.tsx @@ -1,7 +1,7 @@ /* Copyright 2017-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/QueryMatcher.ts b/src/autocomplete/QueryMatcher.ts index 24266214231..985ca3a516d 100644 --- a/src/autocomplete/QueryMatcher.ts +++ b/src/autocomplete/QueryMatcher.ts @@ -4,7 +4,7 @@ Copyright 2018 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2017 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/RoomProvider.tsx b/src/autocomplete/RoomProvider.tsx index 94763486e85..84a4a8a0234 100644 --- a/src/autocomplete/RoomProvider.tsx +++ b/src/autocomplete/RoomProvider.tsx @@ -4,7 +4,7 @@ Copyright 2017-2023 The Matrix.org Foundation C.I.C. Copyright 2018 Michael Telatynski <7t3chguy@gmail.com> Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/SpaceProvider.tsx b/src/autocomplete/SpaceProvider.tsx index 88bc9f3d123..273d9ace000 100644 --- a/src/autocomplete/SpaceProvider.tsx +++ b/src/autocomplete/SpaceProvider.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/autocomplete/UserProvider.tsx b/src/autocomplete/UserProvider.tsx index a8f50ceccbe..673bee7bf21 100644 --- a/src/autocomplete/UserProvider.tsx +++ b/src/autocomplete/UserProvider.tsx @@ -5,7 +5,7 @@ Copyright 2017, 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/boundThreepids.ts b/src/boundThreepids.ts index 4417f3daafc..b7c749a0207 100644 --- a/src/boundThreepids.ts +++ b/src/boundThreepids.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/call-types.ts b/src/call-types.ts index 2384c85e5ec..2a263174efb 100644 --- a/src/call-types.ts +++ b/src/call-types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/AutoHideScrollbar.tsx b/src/components/structures/AutoHideScrollbar.tsx index 549fbf4592b..764a712d442 100644 --- a/src/components/structures/AutoHideScrollbar.tsx +++ b/src/components/structures/AutoHideScrollbar.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/AutocompleteInput.tsx b/src/components/structures/AutocompleteInput.tsx index 5e930d5f1b0..b25e93bc75d 100644 --- a/src/components/structures/AutocompleteInput.tsx +++ b/src/components/structures/AutocompleteInput.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/BackdropPanel.tsx b/src/components/structures/BackdropPanel.tsx index 32c75a936e3..64b2ab0fce8 100644 --- a/src/components/structures/BackdropPanel.tsx +++ b/src/components/structures/BackdropPanel.tsx @@ -1,7 +1,7 @@ /* Copyright 2021-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ContextMenu.tsx b/src/components/structures/ContextMenu.tsx index 2c7a864db5d..3d0c1692670 100644 --- a/src/components/structures/ContextMenu.tsx +++ b/src/components/structures/ContextMenu.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/EmbeddedPage.tsx b/src/components/structures/EmbeddedPage.tsx index c471565d912..2833f796265 100644 --- a/src/components/structures/EmbeddedPage.tsx +++ b/src/components/structures/EmbeddedPage.tsx @@ -3,7 +3,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ErrorMessage.tsx b/src/components/structures/ErrorMessage.tsx index 58c523272b1..ce4788c0fa2 100644 --- a/src/components/structures/ErrorMessage.tsx +++ b/src/components/structures/ErrorMessage.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/FileDropTarget.tsx b/src/components/structures/FileDropTarget.tsx index 5bc16e2ee42..dcf4a2fdb11 100644 --- a/src/components/structures/FileDropTarget.tsx +++ b/src/components/structures/FileDropTarget.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/FilePanel.tsx b/src/components/structures/FilePanel.tsx index 4c580cb9fe3..32e5bbc5194 100644 --- a/src/components/structures/FilePanel.tsx +++ b/src/components/structures/FilePanel.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/GenericDropdownMenu.tsx b/src/components/structures/GenericDropdownMenu.tsx index b323d9b8ade..5c617e8015a 100644 --- a/src/components/structures/GenericDropdownMenu.tsx +++ b/src/components/structures/GenericDropdownMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/HomePage.tsx b/src/components/structures/HomePage.tsx index 31deb381ddd..f8dcc7b70d8 100644 --- a/src/components/structures/HomePage.tsx +++ b/src/components/structures/HomePage.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/IndicatorScrollbar.tsx b/src/components/structures/IndicatorScrollbar.tsx index 2c1db504b1c..1d0a90a14e1 100644 --- a/src/components/structures/IndicatorScrollbar.tsx +++ b/src/components/structures/IndicatorScrollbar.tsx @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/InteractiveAuth.tsx b/src/components/structures/InteractiveAuth.tsx index 4b0f0609524..08aa4eeafa8 100644 --- a/src/components/structures/InteractiveAuth.tsx +++ b/src/components/structures/InteractiveAuth.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/LargeLoader.tsx b/src/components/structures/LargeLoader.tsx index 4a83d58cac5..57f0f949e93 100644 --- a/src/components/structures/LargeLoader.tsx +++ b/src/components/structures/LargeLoader.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/LeftPanel.tsx b/src/components/structures/LeftPanel.tsx index 49d0f570a5c..e4964dd9725 100644 --- a/src/components/structures/LeftPanel.tsx +++ b/src/components/structures/LeftPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/LegacyCallEventGrouper.ts b/src/components/structures/LegacyCallEventGrouper.ts index 3eefbdbb871..96471589213 100644 --- a/src/components/structures/LegacyCallEventGrouper.ts +++ b/src/components/structures/LegacyCallEventGrouper.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/LoggedInView.tsx b/src/components/structures/LoggedInView.tsx index 5b86d097518..15c4770f6ff 100644 --- a/src/components/structures/LoggedInView.tsx +++ b/src/components/structures/LoggedInView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -16,6 +16,7 @@ import { IUsageLimit, SyncStateData, SyncState, + EventType, } from "matrix-js-sdk/src/matrix"; import { MatrixCall } from "matrix-js-sdk/src/webrtc/call"; import classNames from "classnames"; @@ -161,7 +162,7 @@ class LoggedInView extends React.Component { this._matrixClient.on(ClientEvent.AccountData, this.onAccountData); // check push rules on start up as well - monitorSyncedPushRules(this._matrixClient.getAccountData("m.push_rules"), this._matrixClient); + monitorSyncedPushRules(this._matrixClient.getAccountData(EventType.PushRules), this._matrixClient); this._matrixClient.on(ClientEvent.Sync, this.onSync); // Call `onSync` with the current state as well this.onSync(this._matrixClient.getSyncState(), null, this._matrixClient.getSyncStateData() ?? undefined); @@ -245,7 +246,7 @@ class LoggedInView extends React.Component { } else { backgroundImage = OwnProfileStore.instance.getHttpAvatarUrl(); } - this.setState({ backgroundImage }); + this.setState({ backgroundImage: backgroundImage ?? undefined }); }; public canResetTimelineInRoom = (roomId: string): boolean => { diff --git a/src/components/structures/MainSplit.tsx b/src/components/structures/MainSplit.tsx index 54aa2203549..79ba7ab7dbf 100644 --- a/src/components/structures/MainSplit.tsx +++ b/src/components/structures/MainSplit.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/MatrixChat.tsx b/src/components/structures/MatrixChat.tsx index 548dbff983c..f417bd6045a 100644 --- a/src/components/structures/MatrixChat.tsx +++ b/src/components/structures/MatrixChat.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -132,6 +132,7 @@ import { SessionLockStolenView } from "./auth/SessionLockStolenView"; import { ConfirmSessionLockTheftView } from "./auth/ConfirmSessionLockTheftView"; import { LoginSplashView } from "./auth/LoginSplashView"; import { cleanUpDraftsIfRequired } from "../../DraftCleaner"; +import { InitialCryptoSetupStore } from "../../stores/InitialCryptoSetupStore"; // legacy export export { default as Views } from "../../Views"; @@ -428,6 +429,10 @@ export default class MatrixChat extends React.PureComponent { !(await shouldSkipSetupEncryption(cli)) ) { // if cross-signing is not yet set up, do so now if possible. + InitialCryptoSetupStore.sharedInstance().startInitialCryptoSetup( + cli, + this.onCompleteSecurityE2eSetupFinished, + ); this.setStateForNewView({ view: Views.E2E_SETUP }); } else { this.onLoggedIn(); @@ -497,8 +502,6 @@ export default class MatrixChat extends React.PureComponent { UIStore.destroy(); this.state.resizeNotifier.removeListener("middlePanelResized", this.dispatchTimelineResize); window.removeEventListener("resize", this.onWindowResized); - - this.stores.accountPasswordStore.clearPassword(); } private onWindowResized = (): void => { @@ -1928,8 +1931,8 @@ export default class MatrixChat extends React.PureComponent { this.showScreen("forgot_password"); }; - private onRegisterFlowComplete = (credentials: IMatrixClientCreds, password: string): Promise => { - return this.onUserCompletedLoginFlow(credentials, password); + private onRegisterFlowComplete = (credentials: IMatrixClientCreds): Promise => { + return this.onUserCompletedLoginFlow(credentials); }; // returns a promise which resolves to the new MatrixClient @@ -1996,9 +1999,7 @@ export default class MatrixChat extends React.PureComponent { * Note: SSO users (and any others using token login) currently do not pass through * this, as they instead jump straight into the app after `attemptTokenLogin`. */ - private onUserCompletedLoginFlow = async (credentials: IMatrixClientCreds, password: string): Promise => { - this.stores.accountPasswordStore.setPassword(password); - + private onUserCompletedLoginFlow = async (credentials: IMatrixClientCreds): Promise => { // Create and start the client await Lifecycle.setLoggedIn(credentials); await this.postLoginSetup(); @@ -2073,14 +2074,7 @@ export default class MatrixChat extends React.PureComponent { } else if (this.state.view === Views.COMPLETE_SECURITY) { view = ; } else if (this.state.view === Views.E2E_SETUP) { - view = ( - - ); + view = ; } else if (this.state.view === Views.LOGGED_IN) { // `ready` and `view==LOGGED_IN` may be set before `page_type` (because the // latter is set via the dispatcher). If we don't yet have a `page_type`, diff --git a/src/components/structures/MatrixClientContextProvider.tsx b/src/components/structures/MatrixClientContextProvider.tsx index 384a8fa8ac1..edd0daaaba8 100644 --- a/src/components/structures/MatrixClientContextProvider.tsx +++ b/src/components/structures/MatrixClientContextProvider.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/MessagePanel.tsx b/src/components/structures/MessagePanel.tsx index d2133f4f130..67c1b98d68b 100644 --- a/src/components/structures/MessagePanel.tsx +++ b/src/components/structures/MessagePanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/NonUrgentToastContainer.tsx b/src/components/structures/NonUrgentToastContainer.tsx index d01bf789590..aa445a54982 100644 --- a/src/components/structures/NonUrgentToastContainer.tsx +++ b/src/components/structures/NonUrgentToastContainer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/NotificationPanel.tsx b/src/components/structures/NotificationPanel.tsx index 236da25409b..af772f7ce28 100644 --- a/src/components/structures/NotificationPanel.tsx +++ b/src/components/structures/NotificationPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/PictureInPictureDragger.tsx b/src/components/structures/PictureInPictureDragger.tsx index fe8badd99d2..ffdf1fd7c88 100644 --- a/src/components/structures/PictureInPictureDragger.tsx +++ b/src/components/structures/PictureInPictureDragger.tsx @@ -1,7 +1,7 @@ /* Copyright 2021-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/PipContainer.tsx b/src/components/structures/PipContainer.tsx index c9fabfe0c9e..c68aa561d83 100644 --- a/src/components/structures/PipContainer.tsx +++ b/src/components/structures/PipContainer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ReleaseAnnouncement.tsx b/src/components/structures/ReleaseAnnouncement.tsx index b8fc42d9158..cc21407c605 100644 --- a/src/components/structures/ReleaseAnnouncement.tsx +++ b/src/components/structures/ReleaseAnnouncement.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/components/structures/RightPanel.tsx b/src/components/structures/RightPanel.tsx index a1f20162430..06e019f4a91 100644 --- a/src/components/structures/RightPanel.tsx +++ b/src/components/structures/RightPanel.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/RoomSearch.tsx b/src/components/structures/RoomSearch.tsx index 35751ef35f1..1e36dc84dba 100644 --- a/src/components/structures/RoomSearch.tsx +++ b/src/components/structures/RoomSearch.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/RoomSearchView.tsx b/src/components/structures/RoomSearchView.tsx index 82146bcc5e0..ca67ca6bbf4 100644 --- a/src/components/structures/RoomSearchView.tsx +++ b/src/components/structures/RoomSearchView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/RoomStatusBar.tsx b/src/components/structures/RoomStatusBar.tsx index 3bd69148aee..095c359566e 100644 --- a/src/components/structures/RoomStatusBar.tsx +++ b/src/components/structures/RoomStatusBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/RoomStatusBarUnsentMessages.tsx b/src/components/structures/RoomStatusBarUnsentMessages.tsx index ab356405b25..8cb80c894c0 100644 --- a/src/components/structures/RoomStatusBarUnsentMessages.tsx +++ b/src/components/structures/RoomStatusBarUnsentMessages.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/RoomView.tsx b/src/components/structures/RoomView.tsx index 772d5698a30..78d14d39dfb 100644 --- a/src/components/structures/RoomView.tsx +++ b/src/components/structures/RoomView.tsx @@ -5,7 +5,7 @@ Copyright 2018, 2019 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ScrollPanel.tsx b/src/components/structures/ScrollPanel.tsx index b354f6b0055..413d081746c 100644 --- a/src/components/structures/ScrollPanel.tsx +++ b/src/components/structures/ScrollPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/SearchBox.tsx b/src/components/structures/SearchBox.tsx index 323d3c855d0..a5bbb7865ea 100644 --- a/src/components/structures/SearchBox.tsx +++ b/src/components/structures/SearchBox.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/SpaceHierarchy.tsx b/src/components/structures/SpaceHierarchy.tsx index 80193fd3383..362fe82dce1 100644 --- a/src/components/structures/SpaceHierarchy.tsx +++ b/src/components/structures/SpaceHierarchy.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/SpaceRoomView.tsx b/src/components/structures/SpaceRoomView.tsx index bf0ddb1fe2a..1424df2c98a 100644 --- a/src/components/structures/SpaceRoomView.tsx +++ b/src/components/structures/SpaceRoomView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/SplashPage.tsx b/src/components/structures/SplashPage.tsx index 6ca20fdb3cb..1ce0724dabe 100644 --- a/src/components/structures/SplashPage.tsx +++ b/src/components/structures/SplashPage.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/TabbedView.tsx b/src/components/structures/TabbedView.tsx index 7678dbf7845..71161fec525 100644 --- a/src/components/structures/TabbedView.tsx +++ b/src/components/structures/TabbedView.tsx @@ -4,7 +4,7 @@ Copyright 2019, 2020 , 2024 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ThreadPanel.tsx b/src/components/structures/ThreadPanel.tsx index 0e82baa28b8..7aee8554b1d 100644 --- a/src/components/structures/ThreadPanel.tsx +++ b/src/components/structures/ThreadPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ThreadView.tsx b/src/components/structures/ThreadView.tsx index bc1e26d087a..0fa9b9fed68 100644 --- a/src/components/structures/ThreadView.tsx +++ b/src/components/structures/ThreadView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/TimelinePanel.tsx b/src/components/structures/TimelinePanel.tsx index a28089c9895..31ce65cfa76 100644 --- a/src/components/structures/TimelinePanel.tsx +++ b/src/components/structures/TimelinePanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ToastContainer.tsx b/src/components/structures/ToastContainer.tsx index 3e5b4a4474b..02db99a0e05 100644 --- a/src/components/structures/ToastContainer.tsx +++ b/src/components/structures/ToastContainer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/UploadBar.tsx b/src/components/structures/UploadBar.tsx index 01ecae96dce..76188627984 100644 --- a/src/components/structures/UploadBar.tsx +++ b/src/components/structures/UploadBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 , 2019, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/UserMenu.tsx b/src/components/structures/UserMenu.tsx index c5f8ef841d3..e2663523935 100644 --- a/src/components/structures/UserMenu.tsx +++ b/src/components/structures/UserMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/UserView.tsx b/src/components/structures/UserView.tsx index ba905099ba5..f71a6331d9e 100644 --- a/src/components/structures/UserView.tsx +++ b/src/components/structures/UserView.tsx @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/ViewSource.tsx b/src/components/structures/ViewSource.tsx index 3aba3be472f..eca37842d7f 100644 --- a/src/components/structures/ViewSource.tsx +++ b/src/components/structures/ViewSource.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2015, 2016 , 2019, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/WaitingForThirdPartyRoomView.tsx b/src/components/structures/WaitingForThirdPartyRoomView.tsx index cabe92a53d3..7787a03bf26 100644 --- a/src/components/structures/WaitingForThirdPartyRoomView.tsx +++ b/src/components/structures/WaitingForThirdPartyRoomView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/CompleteSecurity.tsx b/src/components/structures/auth/CompleteSecurity.tsx index ec65a62cefa..a0f2be88367 100644 --- a/src/components/structures/auth/CompleteSecurity.tsx +++ b/src/components/structures/auth/CompleteSecurity.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/ConfirmSessionLockTheftView.tsx b/src/components/structures/auth/ConfirmSessionLockTheftView.tsx index 38d0d4efcc5..b71b627a5a6 100644 --- a/src/components/structures/auth/ConfirmSessionLockTheftView.tsx +++ b/src/components/structures/auth/ConfirmSessionLockTheftView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/E2eSetup.tsx b/src/components/structures/auth/E2eSetup.tsx index 265905db107..0fcacca66ac 100644 --- a/src/components/structures/auth/E2eSetup.tsx +++ b/src/components/structures/auth/E2eSetup.tsx @@ -2,22 +2,18 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { MatrixClient } from "matrix-js-sdk/src/matrix"; import AuthPage from "../../views/auth/AuthPage"; import CompleteSecurityBody from "../../views/auth/CompleteSecurityBody"; import { InitialCryptoSetupDialog } from "../../views/dialogs/security/InitialCryptoSetupDialog"; interface IProps { - matrixClient: MatrixClient; onFinished: () => void; - accountPassword?: string; - tokenLogin: boolean; } export default class E2eSetup extends React.Component { @@ -25,12 +21,7 @@ export default class E2eSetup extends React.Component { return ( - + ); diff --git a/src/components/structures/auth/ForgotPassword.tsx b/src/components/structures/auth/ForgotPassword.tsx index 0cc6fbd04d0..ecf888f6e9d 100644 --- a/src/components/structures/auth/ForgotPassword.tsx +++ b/src/components/structures/auth/ForgotPassword.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2017, 2018 , 2019 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/Login.tsx b/src/components/structures/auth/Login.tsx index 0a14450e63a..b4b41f0515f 100644 --- a/src/components/structures/auth/Login.tsx +++ b/src/components/structures/auth/Login.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -30,7 +30,6 @@ import AuthHeader from "../../views/auth/AuthHeader"; import AccessibleButton, { ButtonEvent } from "../../views/elements/AccessibleButton"; import { ValidatedServerConfig } from "../../../utils/ValidatedServerConfig"; import { filterBoolean } from "../../../utils/arrays"; -import { Features } from "../../../settings/Settings"; import { startOidcLogin } from "../../../utils/oidc/authorize"; interface IProps { @@ -48,10 +47,7 @@ interface IProps { // Called when the user has logged in. Params: // - The object returned by the login API - // - The user's password, if applicable, (may be cached in memory for a - // short time so the user is not required to re-enter their password - // for operations like uploading cross-signing keys). - onLoggedIn(data: IMatrixClientCreds, password: string): void; + onLoggedIn(data: IMatrixClientCreds): void; // login shouldn't know or care how registration, password recovery, etc is done. onRegisterClick(): void; @@ -93,7 +89,6 @@ type OnPasswordLogin = { */ export default class LoginComponent extends React.PureComponent { private unmounted = false; - private oidcNativeFlowEnabled = false; private loginLogic!: Login; private readonly stepRendererMap: Record ReactNode>; @@ -101,9 +96,6 @@ export default class LoginComponent extends React.PureComponent public constructor(props: IProps) { super(props); - // only set on a config level, so we don't need to watch - this.oidcNativeFlowEnabled = SettingsStore.getValue(Features.OidcNativeFlow); - this.state = { busy: false, errorText: null, @@ -199,7 +191,7 @@ export default class LoginComponent extends React.PureComponent this.loginLogic.loginViaPassword(username, phoneCountry, phoneNumber, password).then( (data) => { this.setState({ serverIsAlive: true }); // it must be, we logged in. - this.props.onLoggedIn(data, password); + this.props.onLoggedIn(data); }, (error) => { if (this.unmounted) return; @@ -361,10 +353,7 @@ export default class LoginComponent extends React.PureComponent const loginLogic = new Login(hsUrl, isUrl, fallbackHsUrl, { defaultDeviceDisplayName: this.props.defaultDeviceDisplayName, - // if native OIDC is enabled in the client pass the server's delegated auth settings - delegatedAuthentication: this.oidcNativeFlowEnabled - ? this.props.serverConfig.delegatedAuthentication - : undefined, + delegatedAuthentication: this.props.serverConfig.delegatedAuthentication, }); this.loginLogic = loginLogic; diff --git a/src/components/structures/auth/LoginSplashView.tsx b/src/components/structures/auth/LoginSplashView.tsx index cdf6d6b8fa8..2cd58821a64 100644 --- a/src/components/structures/auth/LoginSplashView.tsx +++ b/src/components/structures/auth/LoginSplashView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/Registration.tsx b/src/components/structures/auth/Registration.tsx index 0ae5c933460..1dc6f57bc71 100644 --- a/src/components/structures/auth/Registration.tsx +++ b/src/components/structures/auth/Registration.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -44,7 +44,6 @@ import { AuthHeaderDisplay } from "./header/AuthHeaderDisplay"; import { AuthHeaderProvider } from "./header/AuthHeaderProvider"; import SettingsStore from "../../../settings/SettingsStore"; import { ValidatedServerConfig } from "../../../utils/ValidatedServerConfig"; -import { Features } from "../../../settings/Settings"; import { startOidcLogin } from "../../../utils/oidc/authorize"; const debuglog = (...args: any[]): void => { @@ -72,10 +71,7 @@ interface IProps { mobileRegister?: boolean; // Called when the user has logged in. Params: // - object with userId, deviceId, homeserverUrl, identityServerUrl, accessToken - // - The user's password, if available and applicable (may be cached in memory - // for a short time so the user is not required to re-enter their password - // for operations like uploading cross-signing keys). - onLoggedIn(params: IMatrixClientCreds, password: string): Promise; + onLoggedIn(params: IMatrixClientCreds): Promise; // registration shouldn't know or care how login is done. onLoginClick(): void; onServerConfigChange(config: ValidatedServerConfig): void; @@ -133,8 +129,6 @@ export default class Registration extends React.Component { private readonly loginLogic: Login; // `replaceClient` tracks latest serverConfig to spot when it changes under the async method which fetches flows private latestServerConfig?: ValidatedServerConfig; - // cache value from settings store - private oidcNativeFlowEnabled = false; public constructor(props: IProps) { super(props); @@ -153,14 +147,10 @@ export default class Registration extends React.Component { serverDeadError: "", }; - // only set on a config level, so we don't need to watch - this.oidcNativeFlowEnabled = SettingsStore.getValue(Features.OidcNativeFlow); - const { hsUrl, isUrl, delegatedAuthentication } = this.props.serverConfig; this.loginLogic = new Login(hsUrl, isUrl, null, { defaultDeviceDisplayName: "Element login check", // We shouldn't ever be used - // if native OIDC is enabled in the client pass the server's delegated auth settings - delegatedAuthentication: this.oidcNativeFlowEnabled ? delegatedAuthentication : undefined, + delegatedAuthentication, }); } @@ -230,10 +220,7 @@ export default class Registration extends React.Component { this.loginLogic.setHomeserverUrl(hsUrl); this.loginLogic.setIdentityServerUrl(isUrl); - // if native OIDC is enabled in the client pass the server's delegated auth settings - const delegatedAuthentication = this.oidcNativeFlowEnabled ? serverConfig.delegatedAuthentication : undefined; - - this.loginLogic.setDelegatedAuthentication(delegatedAuthentication); + this.loginLogic.setDelegatedAuthentication(serverConfig.delegatedAuthentication); let ssoFlow: SSOFlow | undefined; let oidcNativeFlow: OidcNativeFlow | undefined; @@ -431,16 +418,13 @@ export default class Registration extends React.Component { newState.busy = false; newState.completedNoSignin = true; } else { - await this.props.onLoggedIn( - { - userId, - deviceId: (response as RegisterResponse).device_id!, - homeserverUrl: this.state.matrixClient.getHomeserverUrl(), - identityServerUrl: this.state.matrixClient.getIdentityServerUrl(), - accessToken, - }, - this.state.formVals.password!, - ); + await this.props.onLoggedIn({ + userId, + deviceId: (response as RegisterResponse).device_id!, + homeserverUrl: this.state.matrixClient.getHomeserverUrl(), + identityServerUrl: this.state.matrixClient.getIdentityServerUrl(), + accessToken, + }); this.setupPushers(); } diff --git a/src/components/structures/auth/SessionLockStolenView.tsx b/src/components/structures/auth/SessionLockStolenView.tsx index edb20188a61..01193440fc0 100644 --- a/src/components/structures/auth/SessionLockStolenView.tsx +++ b/src/components/structures/auth/SessionLockStolenView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/SetupEncryptionBody.tsx b/src/components/structures/auth/SetupEncryptionBody.tsx index 32528fc7e39..1ff0ad41207 100644 --- a/src/components/structures/auth/SetupEncryptionBody.tsx +++ b/src/components/structures/auth/SetupEncryptionBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/SoftLogout.tsx b/src/components/structures/auth/SoftLogout.tsx index 9c7a900643e..696edc0ad2e 100644 --- a/src/components/structures/auth/SoftLogout.tsx +++ b/src/components/structures/auth/SoftLogout.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/forgot-password/CheckEmail.tsx b/src/components/structures/auth/forgot-password/CheckEmail.tsx index dbc667c07ee..428bc170269 100644 --- a/src/components/structures/auth/forgot-password/CheckEmail.tsx +++ b/src/components/structures/auth/forgot-password/CheckEmail.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/forgot-password/EnterEmail.tsx b/src/components/structures/auth/forgot-password/EnterEmail.tsx index 98af5aef47a..d50040552da 100644 --- a/src/components/structures/auth/forgot-password/EnterEmail.tsx +++ b/src/components/structures/auth/forgot-password/EnterEmail.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/forgot-password/VerifyEmailModal.tsx b/src/components/structures/auth/forgot-password/VerifyEmailModal.tsx index 24caa2b13dc..cb2c5b3b850 100644 --- a/src/components/structures/auth/forgot-password/VerifyEmailModal.tsx +++ b/src/components/structures/auth/forgot-password/VerifyEmailModal.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/header/AuthHeaderContext.tsx b/src/components/structures/auth/header/AuthHeaderContext.tsx index 97d587f40bd..4c9d436f0c2 100644 --- a/src/components/structures/auth/header/AuthHeaderContext.tsx +++ b/src/components/structures/auth/header/AuthHeaderContext.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/header/AuthHeaderDisplay.tsx b/src/components/structures/auth/header/AuthHeaderDisplay.tsx index 479e982c9b8..f1289a1c999 100644 --- a/src/components/structures/auth/header/AuthHeaderDisplay.tsx +++ b/src/components/structures/auth/header/AuthHeaderDisplay.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/header/AuthHeaderModifier.tsx b/src/components/structures/auth/header/AuthHeaderModifier.tsx index 05313cda3c8..d3b3d648e7f 100644 --- a/src/components/structures/auth/header/AuthHeaderModifier.tsx +++ b/src/components/structures/auth/header/AuthHeaderModifier.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/auth/header/AuthHeaderProvider.tsx b/src/components/structures/auth/header/AuthHeaderProvider.tsx index 0bf50282748..0189b692124 100644 --- a/src/components/structures/auth/header/AuthHeaderProvider.tsx +++ b/src/components/structures/auth/header/AuthHeaderProvider.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/grouper/BaseGrouper.ts b/src/components/structures/grouper/BaseGrouper.ts index fd8e3a59e2b..a685582a2c7 100644 --- a/src/components/structures/grouper/BaseGrouper.ts +++ b/src/components/structures/grouper/BaseGrouper.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/grouper/CreationGrouper.tsx b/src/components/structures/grouper/CreationGrouper.tsx index 84982066c36..5009b14baff 100644 --- a/src/components/structures/grouper/CreationGrouper.tsx +++ b/src/components/structures/grouper/CreationGrouper.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/grouper/LateEventGrouper.ts b/src/components/structures/grouper/LateEventGrouper.ts index a248d13143f..87cf6549b2e 100644 --- a/src/components/structures/grouper/LateEventGrouper.ts +++ b/src/components/structures/grouper/LateEventGrouper.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/grouper/MainGrouper.tsx b/src/components/structures/grouper/MainGrouper.tsx index 72fd3fcdf04..84d0be26742 100644 --- a/src/components/structures/grouper/MainGrouper.tsx +++ b/src/components/structures/grouper/MainGrouper.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/structures/static-page-vars.ts b/src/components/structures/static-page-vars.ts index aaabfafa6dd..e27a449546f 100644 --- a/src/components/structures/static-page-vars.ts +++ b/src/components/structures/static-page-vars.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/utils/Box.tsx b/src/components/utils/Box.tsx index b48b13aa0fb..c81c9bafed2 100644 --- a/src/components/utils/Box.tsx +++ b/src/components/utils/Box.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/utils/Flex.tsx b/src/components/utils/Flex.tsx index 852ebb7e40b..ae5704d2479 100644 --- a/src/components/utils/Flex.tsx +++ b/src/components/utils/Flex.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/AudioPlayer.tsx b/src/components/views/audio_messages/AudioPlayer.tsx index 885b1ecb805..63c77108e37 100644 --- a/src/components/views/audio_messages/AudioPlayer.tsx +++ b/src/components/views/audio_messages/AudioPlayer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/AudioPlayerBase.tsx b/src/components/views/audio_messages/AudioPlayerBase.tsx index 601611e4223..97cbad0fc2e 100644 --- a/src/components/views/audio_messages/AudioPlayerBase.tsx +++ b/src/components/views/audio_messages/AudioPlayerBase.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/Clock.tsx b/src/components/views/audio_messages/Clock.tsx index ca72d29a057..c8f27c3f9ca 100644 --- a/src/components/views/audio_messages/Clock.tsx +++ b/src/components/views/audio_messages/Clock.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/DurationClock.tsx b/src/components/views/audio_messages/DurationClock.tsx index 3794ab9a4f0..1a84a159553 100644 --- a/src/components/views/audio_messages/DurationClock.tsx +++ b/src/components/views/audio_messages/DurationClock.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/LiveRecordingClock.tsx b/src/components/views/audio_messages/LiveRecordingClock.tsx index 9569e9c11a7..bd8b8d5d235 100644 --- a/src/components/views/audio_messages/LiveRecordingClock.tsx +++ b/src/components/views/audio_messages/LiveRecordingClock.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/LiveRecordingWaveform.tsx b/src/components/views/audio_messages/LiveRecordingWaveform.tsx index 6fdb7230158..18c1ca1aa25 100644 --- a/src/components/views/audio_messages/LiveRecordingWaveform.tsx +++ b/src/components/views/audio_messages/LiveRecordingWaveform.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/PlayPauseButton.tsx b/src/components/views/audio_messages/PlayPauseButton.tsx index 1cd2d168b4a..1b197c6bad7 100644 --- a/src/components/views/audio_messages/PlayPauseButton.tsx +++ b/src/components/views/audio_messages/PlayPauseButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/PlaybackClock.tsx b/src/components/views/audio_messages/PlaybackClock.tsx index b3d736758be..999b5398b15 100644 --- a/src/components/views/audio_messages/PlaybackClock.tsx +++ b/src/components/views/audio_messages/PlaybackClock.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/PlaybackWaveform.tsx b/src/components/views/audio_messages/PlaybackWaveform.tsx index 0f95f7084bf..a5113dd042d 100644 --- a/src/components/views/audio_messages/PlaybackWaveform.tsx +++ b/src/components/views/audio_messages/PlaybackWaveform.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/RecordingPlayback.tsx b/src/components/views/audio_messages/RecordingPlayback.tsx index 7b00c59a1c5..4c030f81efc 100644 --- a/src/components/views/audio_messages/RecordingPlayback.tsx +++ b/src/components/views/audio_messages/RecordingPlayback.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/SeekBar.tsx b/src/components/views/audio_messages/SeekBar.tsx index f56bfee9afb..1a79f5be069 100644 --- a/src/components/views/audio_messages/SeekBar.tsx +++ b/src/components/views/audio_messages/SeekBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/audio_messages/Waveform.tsx b/src/components/views/audio_messages/Waveform.tsx index e0a440f5051..83d02b81fd0 100644 --- a/src/components/views/audio_messages/Waveform.tsx +++ b/src/components/views/audio_messages/Waveform.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/AuthBody.tsx b/src/components/views/auth/AuthBody.tsx index ea4deb4f127..b83955fcd99 100644 --- a/src/components/views/auth/AuthBody.tsx +++ b/src/components/views/auth/AuthBody.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/AuthFooter.tsx b/src/components/views/auth/AuthFooter.tsx index 785cb685393..7f530d1122d 100644 --- a/src/components/views/auth/AuthFooter.tsx +++ b/src/components/views/auth/AuthFooter.tsx @@ -3,7 +3,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/AuthHeader.tsx b/src/components/views/auth/AuthHeader.tsx index a3a34d8e5f5..de16e11defa 100644 --- a/src/components/views/auth/AuthHeader.tsx +++ b/src/components/views/auth/AuthHeader.tsx @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/AuthHeaderLogo.tsx b/src/components/views/auth/AuthHeaderLogo.tsx index 07cc2f978a1..35d35bc3a59 100644 --- a/src/components/views/auth/AuthHeaderLogo.tsx +++ b/src/components/views/auth/AuthHeaderLogo.tsx @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/AuthPage.tsx b/src/components/views/auth/AuthPage.tsx index 2782d0a641b..dd3facaa79a 100644 --- a/src/components/views/auth/AuthPage.tsx +++ b/src/components/views/auth/AuthPage.tsx @@ -3,7 +3,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/CaptchaForm.tsx b/src/components/views/auth/CaptchaForm.tsx index f216f004fd4..d019ba234cf 100644 --- a/src/components/views/auth/CaptchaForm.tsx +++ b/src/components/views/auth/CaptchaForm.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/CompleteSecurityBody.tsx b/src/components/views/auth/CompleteSecurityBody.tsx index 8c6d77a0498..77808ec71c7 100644 --- a/src/components/views/auth/CompleteSecurityBody.tsx +++ b/src/components/views/auth/CompleteSecurityBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/CountryDropdown.tsx b/src/components/views/auth/CountryDropdown.tsx index a4bf6592bf1..7e8d669d15d 100644 --- a/src/components/views/auth/CountryDropdown.tsx +++ b/src/components/views/auth/CountryDropdown.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/EmailField.tsx b/src/components/views/auth/EmailField.tsx index 1a72872b953..ddc20c0bd1d 100644 --- a/src/components/views/auth/EmailField.tsx +++ b/src/components/views/auth/EmailField.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/InteractiveAuthEntryComponents.tsx b/src/components/views/auth/InteractiveAuthEntryComponents.tsx index ae5c07e3483..d493e5c3cac 100644 --- a/src/components/views/auth/InteractiveAuthEntryComponents.tsx +++ b/src/components/views/auth/InteractiveAuthEntryComponents.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/LanguageSelector.tsx b/src/components/views/auth/LanguageSelector.tsx index c15189b88d7..a3be10eeecc 100644 --- a/src/components/views/auth/LanguageSelector.tsx +++ b/src/components/views/auth/LanguageSelector.tsx @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/LoginWithQR-types.ts b/src/components/views/auth/LoginWithQR-types.ts index 2f041a7ced4..8e1d58515d3 100644 --- a/src/components/views/auth/LoginWithQR-types.ts +++ b/src/components/views/auth/LoginWithQR-types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/LoginWithQR.tsx b/src/components/views/auth/LoginWithQR.tsx index 76475e1dd35..ecf107cfbd3 100644 --- a/src/components/views/auth/LoginWithQR.tsx +++ b/src/components/views/auth/LoginWithQR.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/LoginWithQRFlow.tsx b/src/components/views/auth/LoginWithQRFlow.tsx index 33d51f6952a..663dc1acfff 100644 --- a/src/components/views/auth/LoginWithQRFlow.tsx +++ b/src/components/views/auth/LoginWithQRFlow.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/PassphraseConfirmField.tsx b/src/components/views/auth/PassphraseConfirmField.tsx index 2b27d3ecaf9..0337c803593 100644 --- a/src/components/views/auth/PassphraseConfirmField.tsx +++ b/src/components/views/auth/PassphraseConfirmField.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/PassphraseField.tsx b/src/components/views/auth/PassphraseField.tsx index 90201d1ec13..8fc56cc68cf 100644 --- a/src/components/views/auth/PassphraseField.tsx +++ b/src/components/views/auth/PassphraseField.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/PasswordLogin.tsx b/src/components/views/auth/PasswordLogin.tsx index c2c1e9382df..e13af99f6f0 100644 --- a/src/components/views/auth/PasswordLogin.tsx +++ b/src/components/views/auth/PasswordLogin.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 , 2017, 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/RegistrationForm.tsx b/src/components/views/auth/RegistrationForm.tsx index 540e5905a35..ef2c83d3bef 100644 --- a/src/components/views/auth/RegistrationForm.tsx +++ b/src/components/views/auth/RegistrationForm.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2015, 2016 , 2017, 2018, 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/auth/Welcome.tsx b/src/components/views/auth/Welcome.tsx index 13755f6ca1b..39d5f95a8d1 100644 --- a/src/components/views/auth/Welcome.tsx +++ b/src/components/views/auth/Welcome.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/BaseAvatar.tsx b/src/components/views/avatars/BaseAvatar.tsx index 766eb561ec8..942650c65a9 100644 --- a/src/components/views/avatars/BaseAvatar.tsx +++ b/src/components/views/avatars/BaseAvatar.tsx @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/DecoratedRoomAvatar.tsx b/src/components/views/avatars/DecoratedRoomAvatar.tsx index df8a6c00d80..5a11e0f6b27 100644 --- a/src/components/views/avatars/DecoratedRoomAvatar.tsx +++ b/src/components/views/avatars/DecoratedRoomAvatar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/MemberAvatar.tsx b/src/components/views/avatars/MemberAvatar.tsx index 19df06a249d..641fe4a7838 100644 --- a/src/components/views/avatars/MemberAvatar.tsx +++ b/src/components/views/avatars/MemberAvatar.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/RoomAvatar.tsx b/src/components/views/avatars/RoomAvatar.tsx index c839761fee4..e1d71ac1aa7 100644 --- a/src/components/views/avatars/RoomAvatar.tsx +++ b/src/components/views/avatars/RoomAvatar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/SearchResultAvatar.tsx b/src/components/views/avatars/SearchResultAvatar.tsx index ad2b3dd6681..c50c4d81b2a 100644 --- a/src/components/views/avatars/SearchResultAvatar.tsx +++ b/src/components/views/avatars/SearchResultAvatar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/WidgetAvatar.tsx b/src/components/views/avatars/WidgetAvatar.tsx index bbb673a2955..f6d73e7d1cb 100644 --- a/src/components/views/avatars/WidgetAvatar.tsx +++ b/src/components/views/avatars/WidgetAvatar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/avatars/WithPresenceIndicator.tsx b/src/components/views/avatars/WithPresenceIndicator.tsx index 519575d0d5b..9d10f8dce6e 100644 --- a/src/components/views/avatars/WithPresenceIndicator.tsx +++ b/src/components/views/avatars/WithPresenceIndicator.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/BeaconListItem.tsx b/src/components/views/beacon/BeaconListItem.tsx index 972a91c392e..01a7f9364aa 100644 --- a/src/components/views/beacon/BeaconListItem.tsx +++ b/src/components/views/beacon/BeaconListItem.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/BeaconMarker.tsx b/src/components/views/beacon/BeaconMarker.tsx index 5f8f76ecfeb..01d74e72b13 100644 --- a/src/components/views/beacon/BeaconMarker.tsx +++ b/src/components/views/beacon/BeaconMarker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/BeaconStatus.tsx b/src/components/views/beacon/BeaconStatus.tsx index 08c3797d32d..1415dc229cd 100644 --- a/src/components/views/beacon/BeaconStatus.tsx +++ b/src/components/views/beacon/BeaconStatus.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/BeaconStatusTooltip.tsx b/src/components/views/beacon/BeaconStatusTooltip.tsx index e69e1c6b85c..1dc1b05e611 100644 --- a/src/components/views/beacon/BeaconStatusTooltip.tsx +++ b/src/components/views/beacon/BeaconStatusTooltip.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/BeaconViewDialog.tsx b/src/components/views/beacon/BeaconViewDialog.tsx index ec737baffb4..27f9f2e520e 100644 --- a/src/components/views/beacon/BeaconViewDialog.tsx +++ b/src/components/views/beacon/BeaconViewDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/DialogOwnBeaconStatus.tsx b/src/components/views/beacon/DialogOwnBeaconStatus.tsx index 56ffb5a1a65..e6b35d92477 100644 --- a/src/components/views/beacon/DialogOwnBeaconStatus.tsx +++ b/src/components/views/beacon/DialogOwnBeaconStatus.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/DialogSidebar.tsx b/src/components/views/beacon/DialogSidebar.tsx index 824d772bce7..9fcca26dde4 100644 --- a/src/components/views/beacon/DialogSidebar.tsx +++ b/src/components/views/beacon/DialogSidebar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/LeftPanelLiveShareWarning.tsx b/src/components/views/beacon/LeftPanelLiveShareWarning.tsx index ac80067fad6..0c3f26f91ef 100644 --- a/src/components/views/beacon/LeftPanelLiveShareWarning.tsx +++ b/src/components/views/beacon/LeftPanelLiveShareWarning.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/LiveTimeRemaining.tsx b/src/components/views/beacon/LiveTimeRemaining.tsx index 89052b5df2b..c0730938ee9 100644 --- a/src/components/views/beacon/LiveTimeRemaining.tsx +++ b/src/components/views/beacon/LiveTimeRemaining.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/OwnBeaconStatus.tsx b/src/components/views/beacon/OwnBeaconStatus.tsx index e84fa6d0b97..7d0f277786d 100644 --- a/src/components/views/beacon/OwnBeaconStatus.tsx +++ b/src/components/views/beacon/OwnBeaconStatus.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/RoomCallBanner.tsx b/src/components/views/beacon/RoomCallBanner.tsx index b5626da95be..a9f25e7e6c4 100644 --- a/src/components/views/beacon/RoomCallBanner.tsx +++ b/src/components/views/beacon/RoomCallBanner.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/ShareLatestLocation.tsx b/src/components/views/beacon/ShareLatestLocation.tsx index 74e253a0bbe..5300a819000 100644 --- a/src/components/views/beacon/ShareLatestLocation.tsx +++ b/src/components/views/beacon/ShareLatestLocation.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/StyledLiveBeaconIcon.tsx b/src/components/views/beacon/StyledLiveBeaconIcon.tsx index b60d9c60702..c73931918fa 100644 --- a/src/components/views/beacon/StyledLiveBeaconIcon.tsx +++ b/src/components/views/beacon/StyledLiveBeaconIcon.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/displayStatus.ts b/src/components/views/beacon/displayStatus.ts index ad92e0f0fb9..e11b0018ba0 100644 --- a/src/components/views/beacon/displayStatus.ts +++ b/src/components/views/beacon/displayStatus.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beacon/index.tsx b/src/components/views/beacon/index.tsx index 782a69f98eb..871e7cb07e4 100644 --- a/src/components/views/beacon/index.tsx +++ b/src/components/views/beacon/index.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/beta/BetaCard.tsx b/src/components/views/beta/BetaCard.tsx index 8cd9122e909..93d69dffce5 100644 --- a/src/components/views/beta/BetaCard.tsx +++ b/src/components/views/beta/BetaCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -20,12 +20,13 @@ import SettingsFlag from "../elements/SettingsFlag"; import { useFeatureEnabled } from "../../../hooks/useSettings"; import InlineSpinner from "../elements/InlineSpinner"; import { shouldShowFeedback } from "../../../utils/Feedback"; +import { FeatureSettingKey } from "../../../settings/Settings.tsx"; // XXX: Keep this around for re-use in future Betas interface IProps { title?: string; - featureId: string; + featureId: FeatureSettingKey; } interface IBetaPillProps { diff --git a/src/components/views/context_menus/DeveloperToolsOption.tsx b/src/components/views/context_menus/DeveloperToolsOption.tsx index ce673f52857..fc77a2e284e 100644 --- a/src/components/views/context_menus/DeveloperToolsOption.tsx +++ b/src/components/views/context_menus/DeveloperToolsOption.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/DeviceContextMenu.tsx b/src/components/views/context_menus/DeviceContextMenu.tsx index efe1b33e47c..5d71049fb40 100644 --- a/src/components/views/context_menus/DeviceContextMenu.tsx +++ b/src/components/views/context_menus/DeviceContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/DialpadContextMenu.tsx b/src/components/views/context_menus/DialpadContextMenu.tsx index 72e7e048175..c4d0d737866 100644 --- a/src/components/views/context_menus/DialpadContextMenu.tsx +++ b/src/components/views/context_menus/DialpadContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/GenericElementContextMenu.tsx b/src/components/views/context_menus/GenericElementContextMenu.tsx index afb39d6ebe2..b6d3304c428 100644 --- a/src/components/views/context_menus/GenericElementContextMenu.tsx +++ b/src/components/views/context_menus/GenericElementContextMenu.tsx @@ -1,7 +1,7 @@ /* Copyright 2017-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/IconizedContextMenu.tsx b/src/components/views/context_menus/IconizedContextMenu.tsx index f621d8af87f..17a38055132 100644 --- a/src/components/views/context_menus/IconizedContextMenu.tsx +++ b/src/components/views/context_menus/IconizedContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/KebabContextMenu.tsx b/src/components/views/context_menus/KebabContextMenu.tsx index 7e2077473ce..e65f0389ffe 100644 --- a/src/components/views/context_menus/KebabContextMenu.tsx +++ b/src/components/views/context_menus/KebabContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/LegacyCallContextMenu.tsx b/src/components/views/context_menus/LegacyCallContextMenu.tsx index e6bb191df8c..bc3deab7a1d 100644 --- a/src/components/views/context_menus/LegacyCallContextMenu.tsx +++ b/src/components/views/context_menus/LegacyCallContextMenu.tsx @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/MessageContextMenu.tsx b/src/components/views/context_menus/MessageContextMenu.tsx index 711ffbe70f9..0af3604fcae 100644 --- a/src/components/views/context_menus/MessageContextMenu.tsx +++ b/src/components/views/context_menus/MessageContextMenu.tsx @@ -4,7 +4,7 @@ Copyright 2015-2023 The Matrix.org Foundation C.I.C. Copyright 2021, 2022 Šimon Brandner Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/RoomGeneralContextMenu.tsx b/src/components/views/context_menus/RoomGeneralContextMenu.tsx index 714f97ed988..c54aa1e4652 100644 --- a/src/components/views/context_menus/RoomGeneralContextMenu.tsx +++ b/src/components/views/context_menus/RoomGeneralContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -282,7 +282,7 @@ export const RoomGeneralContextMenu: React.FC = ({ } })(); - const developerModeEnabled = useSettingValue("developerMode"); + const developerModeEnabled = useSettingValue("developerMode"); const developerToolsOption = developerModeEnabled ? ( ) : null; diff --git a/src/components/views/context_menus/RoomNotificationContextMenu.tsx b/src/components/views/context_menus/RoomNotificationContextMenu.tsx index b43f4e41121..ea638807625 100644 --- a/src/components/views/context_menus/RoomNotificationContextMenu.tsx +++ b/src/components/views/context_menus/RoomNotificationContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/SpaceContextMenu.tsx b/src/components/views/context_menus/SpaceContextMenu.tsx index 2d407214daf..11a1364d6d3 100644 --- a/src/components/views/context_menus/SpaceContextMenu.tsx +++ b/src/components/views/context_menus/SpaceContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/ThreadListContextMenu.tsx b/src/components/views/context_menus/ThreadListContextMenu.tsx index 0d30e7174ad..eea98159546 100644 --- a/src/components/views/context_menus/ThreadListContextMenu.tsx +++ b/src/components/views/context_menus/ThreadListContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/context_menus/WidgetContextMenu.tsx b/src/components/views/context_menus/WidgetContextMenu.tsx index 46052de9ff2..894e8f8c7d4 100644 --- a/src/components/views/context_menus/WidgetContextMenu.tsx +++ b/src/components/views/context_menus/WidgetContextMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -71,7 +71,7 @@ const showDeleteButton = (canModify: boolean, onDeleteClick: undefined | (() => const showSnapshotButton = (widgetMessaging: ClientWidgetApi | undefined): boolean => { return ( - SettingsStore.getValue("enableWidgetScreenshots") && + SettingsStore.getValue("enableWidgetScreenshots") && !!widgetMessaging?.hasCapability(MatrixCapabilities.Screenshots) ); }; diff --git a/src/components/views/dialogs/AddExistingSubspaceDialog.tsx b/src/components/views/dialogs/AddExistingSubspaceDialog.tsx index e76c42c2bd0..d7311244b7f 100644 --- a/src/components/views/dialogs/AddExistingSubspaceDialog.tsx +++ b/src/components/views/dialogs/AddExistingSubspaceDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/AddExistingToSpaceDialog.tsx b/src/components/views/dialogs/AddExistingToSpaceDialog.tsx index 31162b45f41..3cc62f41554 100644 --- a/src/components/views/dialogs/AddExistingToSpaceDialog.tsx +++ b/src/components/views/dialogs/AddExistingToSpaceDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -131,7 +131,7 @@ export const AddExistingToSpace: React.FC = ({ onFinished, }) => { const cli = useContext(MatrixClientContext); - const msc3946ProcessDynamicPredecessor = useSettingValue("feature_dynamic_room_predecessors"); + const msc3946ProcessDynamicPredecessor = useSettingValue("feature_dynamic_room_predecessors"); const visibleRooms = useMemo( () => cli diff --git a/src/components/views/dialogs/AnalyticsLearnMoreDialog.tsx b/src/components/views/dialogs/AnalyticsLearnMoreDialog.tsx index 98e2921a604..5396d1e9a78 100644 --- a/src/components/views/dialogs/AnalyticsLearnMoreDialog.tsx +++ b/src/components/views/dialogs/AnalyticsLearnMoreDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/AppDownloadDialog.tsx b/src/components/views/dialogs/AppDownloadDialog.tsx index 4faeb083876..a934b5825a6 100644 --- a/src/components/views/dialogs/AppDownloadDialog.tsx +++ b/src/components/views/dialogs/AppDownloadDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/AskInviteAnywayDialog.tsx b/src/components/views/dialogs/AskInviteAnywayDialog.tsx index de8fc5eb3c2..b18d70df112 100644 --- a/src/components/views/dialogs/AskInviteAnywayDialog.tsx +++ b/src/components/views/dialogs/AskInviteAnywayDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/BaseDialog.tsx b/src/components/views/dialogs/BaseDialog.tsx index ccb162e1cba..39afb2e6213 100644 --- a/src/components/views/dialogs/BaseDialog.tsx +++ b/src/components/views/dialogs/BaseDialog.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/BetaFeedbackDialog.tsx b/src/components/views/dialogs/BetaFeedbackDialog.tsx index 9f4852cf2ac..2c13ae00060 100644 --- a/src/components/views/dialogs/BetaFeedbackDialog.tsx +++ b/src/components/views/dialogs/BetaFeedbackDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -15,11 +15,12 @@ import defaultDispatcher from "../../../dispatcher/dispatcher"; import { Action } from "../../../dispatcher/actions"; import { UserTab } from "./UserTab"; import GenericFeatureFeedbackDialog from "./GenericFeatureFeedbackDialog"; +import { SettingKey } from "../../../settings/Settings.tsx"; // XXX: Keep this around for re-use in future Betas interface IProps { - featureId: string; + featureId: SettingKey; onFinished(sendFeedback?: boolean): void; } @@ -35,7 +36,7 @@ const BetaFeedbackDialog: React.FC = ({ featureId, onFinished }) => { rageshakeLabel={info.feedbackLabel} rageshakeData={Object.fromEntries( (SettingsStore.getBetaInfo(featureId)?.extraSettings || []).map((k) => { - return SettingsStore.getValue(k); + return [k, SettingsStore.getValue(k)]; }), )} > diff --git a/src/components/views/dialogs/BugReportDialog.tsx b/src/components/views/dialogs/BugReportDialog.tsx index 373f30d3aeb..013f9ecb061 100644 --- a/src/components/views/dialogs/BugReportDialog.tsx +++ b/src/components/views/dialogs/BugReportDialog.tsx @@ -5,7 +5,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2017 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/BulkRedactDialog.tsx b/src/components/views/dialogs/BulkRedactDialog.tsx index 33fa8250918..d766c6c9732 100644 --- a/src/components/views/dialogs/BulkRedactDialog.tsx +++ b/src/components/views/dialogs/BulkRedactDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ChangelogDialog.tsx b/src/components/views/dialogs/ChangelogDialog.tsx index e15299fc0fe..c653c18b3d7 100644 --- a/src/components/views/dialogs/ChangelogDialog.tsx +++ b/src/components/views/dialogs/ChangelogDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ConfirmAndWaitRedactDialog.tsx b/src/components/views/dialogs/ConfirmAndWaitRedactDialog.tsx index 5771181951c..2d7500e72c5 100644 --- a/src/components/views/dialogs/ConfirmAndWaitRedactDialog.tsx +++ b/src/components/views/dialogs/ConfirmAndWaitRedactDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ConfirmRedactDialog.tsx b/src/components/views/dialogs/ConfirmRedactDialog.tsx index f4258c9d6d4..7733d83585b 100644 --- a/src/components/views/dialogs/ConfirmRedactDialog.tsx +++ b/src/components/views/dialogs/ConfirmRedactDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ConfirmSpaceUserActionDialog.tsx b/src/components/views/dialogs/ConfirmSpaceUserActionDialog.tsx index cb79f27a2f3..9c21b469e4a 100644 --- a/src/components/views/dialogs/ConfirmSpaceUserActionDialog.tsx +++ b/src/components/views/dialogs/ConfirmSpaceUserActionDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ConfirmUserActionDialog.tsx b/src/components/views/dialogs/ConfirmUserActionDialog.tsx index ffe8c778f4d..f79601f855e 100644 --- a/src/components/views/dialogs/ConfirmUserActionDialog.tsx +++ b/src/components/views/dialogs/ConfirmUserActionDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ConfirmWipeDeviceDialog.tsx b/src/components/views/dialogs/ConfirmWipeDeviceDialog.tsx index 1fa8f4f0c54..695219a54bd 100644 --- a/src/components/views/dialogs/ConfirmWipeDeviceDialog.tsx +++ b/src/components/views/dialogs/ConfirmWipeDeviceDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/CreateRoomDialog.tsx b/src/components/views/dialogs/CreateRoomDialog.tsx index 4d36d016235..d77ec145787 100644 --- a/src/components/views/dialogs/CreateRoomDialog.tsx +++ b/src/components/views/dialogs/CreateRoomDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/CreateSubspaceDialog.tsx b/src/components/views/dialogs/CreateSubspaceDialog.tsx index 6add8127931..6af128ef646 100644 --- a/src/components/views/dialogs/CreateSubspaceDialog.tsx +++ b/src/components/views/dialogs/CreateSubspaceDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/DeactivateAccountDialog.tsx b/src/components/views/dialogs/DeactivateAccountDialog.tsx index d68c931cc16..52140b2967b 100644 --- a/src/components/views/dialogs/DeactivateAccountDialog.tsx +++ b/src/components/views/dialogs/DeactivateAccountDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/DevtoolsDialog.tsx b/src/components/views/dialogs/DevtoolsDialog.tsx index 7dc683469a8..e9e2c9a3344 100644 --- a/src/components/views/dialogs/DevtoolsDialog.tsx +++ b/src/components/views/dialogs/DevtoolsDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/EndPollDialog.tsx b/src/components/views/dialogs/EndPollDialog.tsx index 92c98190fed..03d9c7f7f5e 100644 --- a/src/components/views/dialogs/EndPollDialog.tsx +++ b/src/components/views/dialogs/EndPollDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ErrorDialog.tsx b/src/components/views/dialogs/ErrorDialog.tsx index 2e7cd753fcf..5f800e53df1 100644 --- a/src/components/views/dialogs/ErrorDialog.tsx +++ b/src/components/views/dialogs/ErrorDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ExportDialog.tsx b/src/components/views/dialogs/ExportDialog.tsx index 54c58fe2e4a..bd7ad24bca3 100644 --- a/src/components/views/dialogs/ExportDialog.tsx +++ b/src/components/views/dialogs/ExportDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/FeedbackDialog.tsx b/src/components/views/dialogs/FeedbackDialog.tsx index 1e391d80026..27de6259209 100644 --- a/src/components/views/dialogs/FeedbackDialog.tsx +++ b/src/components/views/dialogs/FeedbackDialog.tsx @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ForwardDialog.tsx b/src/components/views/dialogs/ForwardDialog.tsx index 0a0a70d1b5b..dc6186a868c 100644 --- a/src/components/views/dialogs/ForwardDialog.tsx +++ b/src/components/views/dialogs/ForwardDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Robin Townsend -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -253,8 +253,8 @@ const ForwardDialog: React.FC = ({ matrixClient: cli, event, permalinkCr const [query, setQuery] = useState(""); const lcQuery = query.toLowerCase(); - const previewLayout = useSettingValue("layout"); - const msc3946DynamicRoomPredecessors = useSettingValue("feature_dynamic_room_predecessors"); + const previewLayout = useSettingValue("layout"); + const msc3946DynamicRoomPredecessors = useSettingValue("feature_dynamic_room_predecessors"); let rooms = useMemo( () => diff --git a/src/components/views/dialogs/GenericFeatureFeedbackDialog.tsx b/src/components/views/dialogs/GenericFeatureFeedbackDialog.tsx index 489e4c7bce5..1ea187361eb 100644 --- a/src/components/views/dialogs/GenericFeatureFeedbackDialog.tsx +++ b/src/components/views/dialogs/GenericFeatureFeedbackDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/IncomingSasDialog.tsx b/src/components/views/dialogs/IncomingSasDialog.tsx index 4e273f62f72..e5df3a35b1f 100644 --- a/src/components/views/dialogs/IncomingSasDialog.tsx +++ b/src/components/views/dialogs/IncomingSasDialog.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/InfoDialog.tsx b/src/components/views/dialogs/InfoDialog.tsx index 1f5449a3277..20fb51a7d09 100644 --- a/src/components/views/dialogs/InfoDialog.tsx +++ b/src/components/views/dialogs/InfoDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. Copyright 2019 Bastian Masanek, Noxware IT -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/IntegrationsDisabledDialog.tsx b/src/components/views/dialogs/IntegrationsDisabledDialog.tsx index 44fea65d53d..ad0f7654136 100644 --- a/src/components/views/dialogs/IntegrationsDisabledDialog.tsx +++ b/src/components/views/dialogs/IntegrationsDisabledDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/IntegrationsImpossibleDialog.tsx b/src/components/views/dialogs/IntegrationsImpossibleDialog.tsx index a17b25bf231..625854a36a9 100644 --- a/src/components/views/dialogs/IntegrationsImpossibleDialog.tsx +++ b/src/components/views/dialogs/IntegrationsImpossibleDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/InteractiveAuthDialog.tsx b/src/components/views/dialogs/InteractiveAuthDialog.tsx index 305534e6db8..beb27573c6b 100644 --- a/src/components/views/dialogs/InteractiveAuthDialog.tsx +++ b/src/components/views/dialogs/InteractiveAuthDialog.tsx @@ -4,7 +4,7 @@ Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/InviteDialog.tsx b/src/components/views/dialogs/InviteDialog.tsx index 35e04fb12e2..d72baae5235 100644 --- a/src/components/views/dialogs/InviteDialog.tsx +++ b/src/components/views/dialogs/InviteDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/InviteDialogTypes.ts b/src/components/views/dialogs/InviteDialogTypes.ts index 97a71408f31..535693faaed 100644 --- a/src/components/views/dialogs/InviteDialogTypes.ts +++ b/src/components/views/dialogs/InviteDialogTypes.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/LeaveSpaceDialog.tsx b/src/components/views/dialogs/LeaveSpaceDialog.tsx index 50821694db0..72ad5f478ff 100644 --- a/src/components/views/dialogs/LeaveSpaceDialog.tsx +++ b/src/components/views/dialogs/LeaveSpaceDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/LogoutDialog.tsx b/src/components/views/dialogs/LogoutDialog.tsx index 4731c593bc3..460871fb367 100644 --- a/src/components/views/dialogs/LogoutDialog.tsx +++ b/src/components/views/dialogs/LogoutDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -38,6 +38,9 @@ enum BackupStatus { /** there is a backup on the server but we are not backing up to it */ SERVER_BACKUP_BUT_DISABLED, + /** Key backup is set up but recovery (4s) is not */ + BACKUP_NO_RECOVERY, + /** backup is not set up locally and there is no backup on the server */ NO_BACKUP, @@ -104,7 +107,11 @@ export default class LogoutDialog extends React.Component { } if ((await crypto.getActiveSessionBackupVersion()) !== null) { - this.setState({ backupStatus: BackupStatus.BACKUP_ACTIVE }); + if (await crypto.isSecretStorageReady()) { + this.setState({ backupStatus: BackupStatus.BACKUP_ACTIVE }); + } else { + this.setState({ backupStatus: BackupStatus.BACKUP_NO_RECOVERY }); + } return; } @@ -164,13 +171,17 @@ export default class LogoutDialog extends React.Component { }; /** - * Show a dialog prompting the user to set up key backup. + * Show a dialog prompting the user to set up their recovery method. + * + * Either: + * * There is no backup at all ({@link BackupStatus.NO_BACKUP}) + * * There is a backup set up but recovery (4s) is not ({@link BackupStatus.BACKUP_NO_RECOVERY}) + * * There is a backup on the server but we are not connected to it ({@link BackupStatus.SERVER_BACKUP_BUT_DISABLED}) + * * We were unable to pull the backup data ({@link BackupStatus.ERROR}). * - * Either there is no backup at all ({@link BackupStatus.NO_BACKUP}), there is a backup on the server but - * we are not connected to it ({@link BackupStatus.SERVER_BACKUP_BUT_DISABLED}), or we were unable to pull the - * backup data ({@link BackupStatus.ERROR}). In all three cases, we should prompt the user to set up key backup. + * In all four cases, we should prompt the user to set up a method of recovery. */ - private renderSetupBackupDialog(): React.ReactNode { + private renderSetupRecoveryMethod(): React.ReactNode { const description = (

{_t("auth|logout_dialog|setup_secure_backup_description_1")}

@@ -254,7 +265,8 @@ export default class LogoutDialog extends React.Component { case BackupStatus.NO_BACKUP: case BackupStatus.SERVER_BACKUP_BUT_DISABLED: case BackupStatus.ERROR: - return this.renderSetupBackupDialog(); + case BackupStatus.BACKUP_NO_RECOVERY: + return this.renderSetupRecoveryMethod(); } } } diff --git a/src/components/views/dialogs/ManageRestrictedJoinRuleDialog.tsx b/src/components/views/dialogs/ManageRestrictedJoinRuleDialog.tsx index d124d97456c..7a2e3b35ef0 100644 --- a/src/components/views/dialogs/ManageRestrictedJoinRuleDialog.tsx +++ b/src/components/views/dialogs/ManageRestrictedJoinRuleDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/MessageEditHistoryDialog.tsx b/src/components/views/dialogs/MessageEditHistoryDialog.tsx index 48564e2411a..3008e2d16cb 100644 --- a/src/components/views/dialogs/MessageEditHistoryDialog.tsx +++ b/src/components/views/dialogs/MessageEditHistoryDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ModalWidgetDialog.tsx b/src/components/views/dialogs/ModalWidgetDialog.tsx index 7df9130a7aa..58c6c92a5e0 100644 --- a/src/components/views/dialogs/ModalWidgetDialog.tsx +++ b/src/components/views/dialogs/ModalWidgetDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ModuleUiDialog.tsx b/src/components/views/dialogs/ModuleUiDialog.tsx index 7cdb0190d0c..89ef4ad0ea7 100644 --- a/src/components/views/dialogs/ModuleUiDialog.tsx +++ b/src/components/views/dialogs/ModuleUiDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/PollHistoryDialog.tsx b/src/components/views/dialogs/PollHistoryDialog.tsx index 50774425ccd..528b44f3322 100644 --- a/src/components/views/dialogs/PollHistoryDialog.tsx +++ b/src/components/views/dialogs/PollHistoryDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/QuestionDialog.tsx b/src/components/views/dialogs/QuestionDialog.tsx index 109599ee084..1539bbe365f 100644 --- a/src/components/views/dialogs/QuestionDialog.tsx +++ b/src/components/views/dialogs/QuestionDialog.tsx @@ -2,7 +2,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/RegistrationEmailPromptDialog.tsx b/src/components/views/dialogs/RegistrationEmailPromptDialog.tsx index a02098d3ed6..a7748e3d69c 100644 --- a/src/components/views/dialogs/RegistrationEmailPromptDialog.tsx +++ b/src/components/views/dialogs/RegistrationEmailPromptDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ReportEventDialog.tsx b/src/components/views/dialogs/ReportEventDialog.tsx index 3234c2be35b..5c1e409ca5a 100644 --- a/src/components/views/dialogs/ReportEventDialog.tsx +++ b/src/components/views/dialogs/ReportEventDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/RoomSettingsDialog.tsx b/src/components/views/dialogs/RoomSettingsDialog.tsx index cb804b8e004..a4c8dd91b2e 100644 --- a/src/components/views/dialogs/RoomSettingsDialog.tsx +++ b/src/components/views/dialogs/RoomSettingsDialog.tsx @@ -4,7 +4,7 @@ Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/RoomUpgradeDialog.tsx b/src/components/views/dialogs/RoomUpgradeDialog.tsx index 337c1a334ca..fdb0a9f0a67 100644 --- a/src/components/views/dialogs/RoomUpgradeDialog.tsx +++ b/src/components/views/dialogs/RoomUpgradeDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx b/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx index 48d0bef28cf..c15db4a5df1 100644 --- a/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx +++ b/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ScrollableBaseModal.tsx b/src/components/views/dialogs/ScrollableBaseModal.tsx index 564c773975d..2f9c94f66fb 100644 --- a/src/components/views/dialogs/ScrollableBaseModal.tsx +++ b/src/components/views/dialogs/ScrollableBaseModal.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ServerOfflineDialog.tsx b/src/components/views/dialogs/ServerOfflineDialog.tsx index d48097b0604..b4d03c4c126 100644 --- a/src/components/views/dialogs/ServerOfflineDialog.tsx +++ b/src/components/views/dialogs/ServerOfflineDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ServerPickerDialog.tsx b/src/components/views/dialogs/ServerPickerDialog.tsx index 3fc74ec80a5..9fd5002138c 100644 --- a/src/components/views/dialogs/ServerPickerDialog.tsx +++ b/src/components/views/dialogs/ServerPickerDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/SeshatResetDialog.tsx b/src/components/views/dialogs/SeshatResetDialog.tsx index 3e257fd94fd..247d6f9b04c 100644 --- a/src/components/views/dialogs/SeshatResetDialog.tsx +++ b/src/components/views/dialogs/SeshatResetDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/SessionRestoreErrorDialog.tsx b/src/components/views/dialogs/SessionRestoreErrorDialog.tsx index 84832cb1f22..26baef9f2a7 100644 --- a/src/components/views/dialogs/SessionRestoreErrorDialog.tsx +++ b/src/components/views/dialogs/SessionRestoreErrorDialog.tsx @@ -4,7 +4,7 @@ Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/SetEmailDialog.tsx b/src/components/views/dialogs/SetEmailDialog.tsx index 2b1798e3879..57d8ed12d44 100644 --- a/src/components/views/dialogs/SetEmailDialog.tsx +++ b/src/components/views/dialogs/SetEmailDialog.tsx @@ -2,7 +2,7 @@ Copyright 2018-2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/ShareDialog.tsx b/src/components/views/dialogs/ShareDialog.tsx index 1796b79239e..3feff26f8f7 100644 --- a/src/components/views/dialogs/ShareDialog.tsx +++ b/src/components/views/dialogs/ShareDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -100,8 +100,8 @@ type ShareDialogProps = XOR; * A dialog to share a link to a room, user, room member or a matrix event. */ export function ShareDialog({ target, customTitle, onFinished, permalinkCreator }: ShareDialogProps): JSX.Element { - const showQrCode = useSettingValue(UIFeature.ShareQRCode); - const showSocials = useSettingValue(UIFeature.ShareSocial); + const showQrCode = useSettingValue(UIFeature.ShareQRCode); + const showSocials = useSettingValue(UIFeature.ShareSocial); const timeoutIdRef = useRef(); const [isCopied, setIsCopied] = useState(false); diff --git a/src/components/views/dialogs/SlashCommandHelpDialog.tsx b/src/components/views/dialogs/SlashCommandHelpDialog.tsx index b5e01bf41ee..1c087567c36 100644 --- a/src/components/views/dialogs/SlashCommandHelpDialog.tsx +++ b/src/components/views/dialogs/SlashCommandHelpDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/SpacePreferencesDialog.tsx b/src/components/views/dialogs/SpacePreferencesDialog.tsx index 1361b2728fe..a5f30f0d641 100644 --- a/src/components/views/dialogs/SpacePreferencesDialog.tsx +++ b/src/components/views/dialogs/SpacePreferencesDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/SpaceSettingsDialog.tsx b/src/components/views/dialogs/SpaceSettingsDialog.tsx index fd415c78973..5ea4ea3418e 100644 --- a/src/components/views/dialogs/SpaceSettingsDialog.tsx +++ b/src/components/views/dialogs/SpaceSettingsDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/StorageEvictedDialog.tsx b/src/components/views/dialogs/StorageEvictedDialog.tsx index 3e62d85a9a8..bdacbcbb514 100644 --- a/src/components/views/dialogs/StorageEvictedDialog.tsx +++ b/src/components/views/dialogs/StorageEvictedDialog.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/TermsDialog.tsx b/src/components/views/dialogs/TermsDialog.tsx index 4d66e41b5a6..c71a77c85b1 100644 --- a/src/components/views/dialogs/TermsDialog.tsx +++ b/src/components/views/dialogs/TermsDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/TextInputDialog.tsx b/src/components/views/dialogs/TextInputDialog.tsx index 811b79100ff..9d68668413f 100644 --- a/src/components/views/dialogs/TextInputDialog.tsx +++ b/src/components/views/dialogs/TextInputDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/UnpinAllDialog.tsx b/src/components/views/dialogs/UnpinAllDialog.tsx index 4d66a339ce9..f2390a978cc 100644 --- a/src/components/views/dialogs/UnpinAllDialog.tsx +++ b/src/components/views/dialogs/UnpinAllDialog.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/components/views/dialogs/UntrustedDeviceDialog.tsx b/src/components/views/dialogs/UntrustedDeviceDialog.tsx index 4b37032207b..668a3f52b3d 100644 --- a/src/components/views/dialogs/UntrustedDeviceDialog.tsx +++ b/src/components/views/dialogs/UntrustedDeviceDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/UploadConfirmDialog.tsx b/src/components/views/dialogs/UploadConfirmDialog.tsx index 7fdb601c44b..83459c7ed73 100644 --- a/src/components/views/dialogs/UploadConfirmDialog.tsx +++ b/src/components/views/dialogs/UploadConfirmDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/UploadFailureDialog.tsx b/src/components/views/dialogs/UploadFailureDialog.tsx index ca7b1c14fdc..7e98fb24b32 100644 --- a/src/components/views/dialogs/UploadFailureDialog.tsx +++ b/src/components/views/dialogs/UploadFailureDialog.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/UserSettingsDialog.tsx b/src/components/views/dialogs/UserSettingsDialog.tsx index 8ae7a302ac4..2c1c87d19fe 100644 --- a/src/components/views/dialogs/UserSettingsDialog.tsx +++ b/src/components/views/dialogs/UserSettingsDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2024 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -85,8 +85,8 @@ function titleForTabID(tabId: UserTab): React.ReactNode { } export default function UserSettingsDialog(props: IProps): JSX.Element { - const voipEnabled = useSettingValue(UIFeature.Voip); - const mjolnirEnabled = useSettingValue("feature_mjolnir"); + const voipEnabled = useSettingValue(UIFeature.Voip); + const mjolnirEnabled = useSettingValue("feature_mjolnir"); // store this prop in state as changing tabs back and forth should clear it const [showMsc4108QrCode, setShowMsc4108QrCode] = useState(props.showMsc4108QrCode); diff --git a/src/components/views/dialogs/UserTab.ts b/src/components/views/dialogs/UserTab.ts index 467a67cd9f6..1984f99604e 100644 --- a/src/components/views/dialogs/UserTab.ts +++ b/src/components/views/dialogs/UserTab.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/VerificationRequestDialog.tsx b/src/components/views/dialogs/VerificationRequestDialog.tsx index d2ea83f2af8..bb49abbf15a 100644 --- a/src/components/views/dialogs/VerificationRequestDialog.tsx +++ b/src/components/views/dialogs/VerificationRequestDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/WidgetCapabilitiesPromptDialog.tsx b/src/components/views/dialogs/WidgetCapabilitiesPromptDialog.tsx index 1a94f0a9fd9..7e57d957086 100644 --- a/src/components/views/dialogs/WidgetCapabilitiesPromptDialog.tsx +++ b/src/components/views/dialogs/WidgetCapabilitiesPromptDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/WidgetOpenIDPermissionsDialog.tsx b/src/components/views/dialogs/WidgetOpenIDPermissionsDialog.tsx index 263f5127b7d..4c1e8a9d326 100644 --- a/src/components/views/dialogs/WidgetOpenIDPermissionsDialog.tsx +++ b/src/components/views/dialogs/WidgetOpenIDPermissionsDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. Copyright 2019 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/AccountData.tsx b/src/components/views/dialogs/devtools/AccountData.tsx index f1fc081b009..402aa396d15 100644 --- a/src/components/views/dialogs/devtools/AccountData.tsx +++ b/src/components/views/dialogs/devtools/AccountData.tsx @@ -3,12 +3,12 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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, { useContext, useMemo, useState } from "react"; -import { IContent, MatrixEvent } from "matrix-js-sdk/src/matrix"; +import { AccountDataEvents, IContent, MatrixEvent } from "matrix-js-sdk/src/matrix"; import BaseTool, { DevtoolsContext, IDevtoolsProps } from "./BaseTool"; import MatrixClientContext from "../../../../contexts/MatrixClientContext"; @@ -21,7 +21,7 @@ export const AccountDataEventEditor: React.FC = ({ mxEvent, onBack const fields = useMemo(() => [eventTypeField(mxEvent?.getType())], [mxEvent]); - const onSend = async ([eventType]: string[], content?: IContent): Promise => { + const onSend = async ([eventType]: Array, content?: IContent): Promise => { await cli.setAccountData(eventType, content || {}); }; diff --git a/src/components/views/dialogs/devtools/BaseTool.tsx b/src/components/views/dialogs/devtools/BaseTool.tsx index 88dd2ea1785..adc13d2eab8 100644 --- a/src/components/views/dialogs/devtools/BaseTool.tsx +++ b/src/components/views/dialogs/devtools/BaseTool.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/Event.tsx b/src/components/views/dialogs/devtools/Event.tsx index f9fc68da221..a0f7bfece54 100644 --- a/src/components/views/dialogs/devtools/Event.tsx +++ b/src/components/views/dialogs/devtools/Event.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/FilteredList.tsx b/src/components/views/dialogs/devtools/FilteredList.tsx index 400c646958c..0f0c52df94f 100644 --- a/src/components/views/dialogs/devtools/FilteredList.tsx +++ b/src/components/views/dialogs/devtools/FilteredList.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/RoomNotifications.tsx b/src/components/views/dialogs/devtools/RoomNotifications.tsx index 1bcff784879..a7c8bb7dde8 100644 --- a/src/components/views/dialogs/devtools/RoomNotifications.tsx +++ b/src/components/views/dialogs/devtools/RoomNotifications.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/RoomState.tsx b/src/components/views/dialogs/devtools/RoomState.tsx index a331a19147e..8831ccc8056 100644 --- a/src/components/views/dialogs/devtools/RoomState.tsx +++ b/src/components/views/dialogs/devtools/RoomState.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/ServerInfo.tsx b/src/components/views/dialogs/devtools/ServerInfo.tsx index 337ed421770..85780b8fd93 100644 --- a/src/components/views/dialogs/devtools/ServerInfo.tsx +++ b/src/components/views/dialogs/devtools/ServerInfo.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/ServersInRoom.tsx b/src/components/views/dialogs/devtools/ServersInRoom.tsx index fdb4a2f0702..e7b90c97944 100644 --- a/src/components/views/dialogs/devtools/ServersInRoom.tsx +++ b/src/components/views/dialogs/devtools/ServersInRoom.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/devtools/SettingExplorer.tsx b/src/components/views/dialogs/devtools/SettingExplorer.tsx index ae37fa3e1c9..b9919973ebf 100644 --- a/src/components/views/dialogs/devtools/SettingExplorer.tsx +++ b/src/components/views/dialogs/devtools/SettingExplorer.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -15,11 +15,11 @@ import BaseTool, { DevtoolsContext, IDevtoolsProps } from "./BaseTool"; import AccessibleButton from "../../elements/AccessibleButton"; import SettingsStore, { LEVEL_ORDER } from "../../../../settings/SettingsStore"; import { SettingLevel } from "../../../../settings/SettingLevel"; -import { SETTINGS } from "../../../../settings/Settings"; +import { SettingKey, SETTINGS, SettingValueType } from "../../../../settings/Settings"; import Field from "../../elements/Field"; const SettingExplorer: React.FC = ({ onBack }) => { - const [setting, setSetting] = useState(null); + const [setting, setSetting] = useState(null); const [editing, setEditing] = useState(false); if (setting && editing) { @@ -36,10 +36,10 @@ const SettingExplorer: React.FC = ({ onBack }) => { }; return ; } else { - const onView = (setting: string): void => { + const onView = (setting: SettingKey): void => { setSetting(setting); }; - const onEdit = (setting: string): void => { + const onEdit = (setting: SettingKey): void => { setSetting(setting); setEditing(true); }; @@ -50,7 +50,7 @@ const SettingExplorer: React.FC = ({ onBack }) => { export default SettingExplorer; interface ICanEditLevelFieldProps { - setting: string; + setting: SettingKey; level: SettingLevel; roomId?: string; } @@ -65,8 +65,8 @@ const CanEditLevelField: React.FC = ({ setting, roomId, ); }; -function renderExplicitSettingValues(setting: string, roomId?: string): string { - const vals: Record = {}; +function renderExplicitSettingValues(setting: SettingKey, roomId?: string): string { + const vals: Record = {}; for (const level of LEVEL_ORDER) { try { vals[level] = SettingsStore.getValueAt(level, setting, roomId, true, true); @@ -81,7 +81,7 @@ function renderExplicitSettingValues(setting: string, roomId?: string): string { } interface IEditSettingProps extends Pick { - setting: string; + setting: SettingKey; } const EditSetting: React.FC = ({ setting, onBack }) => { @@ -191,7 +191,7 @@ const EditSetting: React.FC = ({ setting, onBack }) => { }; interface IViewSettingProps extends Pick { - setting: string; + setting: SettingKey; onEdit(): Promise; } @@ -258,7 +258,7 @@ const SettingsList: React.FC = ({ onBack, onView, onEdit }) const [query, setQuery] = useState(""); const allSettings = useMemo(() => { - let allSettings = Object.keys(SETTINGS); + let allSettings = Object.keys(SETTINGS) as SettingKey[]; if (query) { const lcQuery = query.toLowerCase(); allSettings = allSettings.filter((setting) => setting.toLowerCase().includes(lcQuery)); diff --git a/src/components/views/dialogs/devtools/WidgetExplorer.tsx b/src/components/views/dialogs/devtools/WidgetExplorer.tsx index 6fad8980317..5bcae191417 100644 --- a/src/components/views/dialogs/devtools/WidgetExplorer.tsx +++ b/src/components/views/dialogs/devtools/WidgetExplorer.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2022 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/oidc/OidcLogoutDialog.tsx b/src/components/views/dialogs/oidc/OidcLogoutDialog.tsx deleted file mode 100644 index 83bcd8736f8..00000000000 --- a/src/components/views/dialogs/oidc/OidcLogoutDialog.tsx +++ /dev/null @@ -1,66 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. -Copyright 2023 The Matrix.org Foundation C.I.C. - -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -Please see LICENSE files in the repository root for full details. -*/ - -import React, { useState } from "react"; - -import { _t } from "../../../../languageHandler"; -import BaseDialog from "../BaseDialog"; -import { getOidcLogoutUrl } from "../../../../utils/oidc/getOidcLogoutUrl"; -import AccessibleButton from "../../elements/AccessibleButton"; - -export interface OidcLogoutDialogProps { - delegatedAuthAccountUrl: string; - deviceId: string; - onFinished(ok?: boolean): void; -} - -/** - * Handle logout of OIDC sessions other than the current session - * - ask for user confirmation to open the delegated auth provider - * - open the auth provider in a new tab - * - wait for the user to return and close the modal, we assume the user has completed sign out of the session in auth provider UI - * and trigger a refresh of the session list - */ -export const OidcLogoutDialog: React.FC = ({ - delegatedAuthAccountUrl, - deviceId, - onFinished, -}) => { - const [hasOpenedLogoutLink, setHasOpenedLogoutLink] = useState(false); - const logoutUrl = getOidcLogoutUrl(delegatedAuthAccountUrl, deviceId); - - return ( - -
- {_t("auth|oidc|logout_redirect_warning")} -
-
- {hasOpenedLogoutLink ? ( - onFinished(true)}> - {_t("action|close")} - - ) : ( - <> - onFinished(false)}> - {_t("action|cancel")} - - setHasOpenedLogoutLink(true)} - kind="primary" - href={logoutUrl} - target="_blank" - > - {_t("action|continue")} - - - )} -
-
- ); -}; diff --git a/src/components/views/dialogs/security/AccessSecretStorageDialog.tsx b/src/components/views/dialogs/security/AccessSecretStorageDialog.tsx index d9c97261dd3..a6d81ae2cef 100644 --- a/src/components/views/dialogs/security/AccessSecretStorageDialog.tsx +++ b/src/components/views/dialogs/security/AccessSecretStorageDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/security/ConfirmDestroyCrossSigningDialog.tsx b/src/components/views/dialogs/security/ConfirmDestroyCrossSigningDialog.tsx index fbcc2bef115..5e3136c5ad6 100644 --- a/src/components/views/dialogs/security/ConfirmDestroyCrossSigningDialog.tsx +++ b/src/components/views/dialogs/security/ConfirmDestroyCrossSigningDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/security/InitialCryptoSetupDialog.tsx b/src/components/views/dialogs/security/InitialCryptoSetupDialog.tsx index 4ee69f17a48..bda09f02a61 100644 --- a/src/components/views/dialogs/security/InitialCryptoSetupDialog.tsx +++ b/src/components/views/dialogs/security/InitialCryptoSetupDialog.tsx @@ -3,24 +3,19 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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, { useCallback, useEffect, useState } from "react"; -import { logger } from "matrix-js-sdk/src/logger"; -import { MatrixClient } from "matrix-js-sdk/src/matrix"; +import React, { useCallback } from "react"; import { _t } from "../../../../languageHandler"; import DialogButtons from "../../elements/DialogButtons"; import BaseDialog from "../BaseDialog"; import Spinner from "../../elements/Spinner"; -import { createCrossSigning } from "../../../../CreateCrossSigning"; +import { InitialCryptoSetupStore, useInitialCryptoSetupStatus } from "../../../../stores/InitialCryptoSetupStore"; interface Props { - matrixClient: MatrixClient; - accountPassword?: string; - tokenLogin: boolean; onFinished: (success?: boolean) => void; } @@ -29,54 +24,27 @@ interface Props { * In most cases, only a spinner is shown, but for more * complex auth like SSO, the user may need to complete some steps to proceed. */ -export const InitialCryptoSetupDialog: React.FC = ({ - matrixClient, - accountPassword, - tokenLogin, - onFinished, -}) => { - const [error, setError] = useState(false); +export const InitialCryptoSetupDialog: React.FC = ({ onFinished }) => { + const onRetryClick = useCallback(() => { + InitialCryptoSetupStore.sharedInstance().retry(); + }, []); - const doSetup = useCallback(async () => { - const cryptoApi = matrixClient.getCrypto(); - if (!cryptoApi) return; - - setError(false); - - try { - await createCrossSigning(matrixClient, tokenLogin, accountPassword); - - onFinished(true); - } catch (e) { - if (tokenLogin) { - // ignore any failures, we are relying on grace period here - onFinished(false); - return; - } - - setError(true); - logger.error("Error bootstrapping cross-signing", e); - } - }, [matrixClient, tokenLogin, accountPassword, onFinished]); - - const onCancel = useCallback(() => { + const onCancelClick = useCallback(() => { onFinished(false); }, [onFinished]); - useEffect(() => { - doSetup(); - }, [doSetup]); + const status = useInitialCryptoSetupStatus(InitialCryptoSetupStore.sharedInstance()); let content; - if (error) { + if (status === "error") { content = (

{_t("encryption|unable_to_setup_keys_error")}

diff --git a/src/components/views/dialogs/security/RestoreKeyBackupDialog.tsx b/src/components/views/dialogs/security/RestoreKeyBackupDialog.tsx index fddba10948b..ca0a5e877e9 100644 --- a/src/components/views/dialogs/security/RestoreKeyBackupDialog.tsx +++ b/src/components/views/dialogs/security/RestoreKeyBackupDialog.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/security/SetupEncryptionDialog.tsx b/src/components/views/dialogs/security/SetupEncryptionDialog.tsx index c0dc8b4915e..2f845b627a9 100644 --- a/src/components/views/dialogs/security/SetupEncryptionDialog.tsx +++ b/src/components/views/dialogs/security/SetupEncryptionDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/spotlight/Filter.ts b/src/components/views/dialogs/spotlight/Filter.ts index fa4359db479..944b55a1fe5 100644 --- a/src/components/views/dialogs/spotlight/Filter.ts +++ b/src/components/views/dialogs/spotlight/Filter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/spotlight/Option.tsx b/src/components/views/dialogs/spotlight/Option.tsx index 6de93d05125..ac568afe26c 100644 --- a/src/components/views/dialogs/spotlight/Option.tsx +++ b/src/components/views/dialogs/spotlight/Option.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/spotlight/PublicRoomResultDetails.tsx b/src/components/views/dialogs/spotlight/PublicRoomResultDetails.tsx index d2003473b9f..3e1025a81f8 100644 --- a/src/components/views/dialogs/spotlight/PublicRoomResultDetails.tsx +++ b/src/components/views/dialogs/spotlight/PublicRoomResultDetails.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/spotlight/RoomResultContextMenus.tsx b/src/components/views/dialogs/spotlight/RoomResultContextMenus.tsx index 667cc7980a7..f7b8311f983 100644 --- a/src/components/views/dialogs/spotlight/RoomResultContextMenus.tsx +++ b/src/components/views/dialogs/spotlight/RoomResultContextMenus.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/spotlight/SpotlightDialog.tsx b/src/components/views/dialogs/spotlight/SpotlightDialog.tsx index a87b7341e7d..e4f9b11e676 100644 --- a/src/components/views/dialogs/spotlight/SpotlightDialog.tsx +++ b/src/components/views/dialogs/spotlight/SpotlightDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/dialogs/spotlight/TooltipOption.tsx b/src/components/views/dialogs/spotlight/TooltipOption.tsx index ebb0b4cf06e..26d0dcada84 100644 --- a/src/components/views/dialogs/spotlight/TooltipOption.tsx +++ b/src/components/views/dialogs/spotlight/TooltipOption.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/directory/NetworkDropdown.tsx b/src/components/views/directory/NetworkDropdown.tsx index a1b1986f471..c2a7a11b98b 100644 --- a/src/components/views/directory/NetworkDropdown.tsx +++ b/src/components/views/directory/NetworkDropdown.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -26,6 +26,7 @@ import { import TextInputDialog from "../dialogs/TextInputDialog"; import AccessibleButton from "../elements/AccessibleButton"; import withValidation from "../elements/Validation"; +import { SettingKey, Settings } from "../../../settings/Settings.tsx"; const SETTING_NAME = "room_directory_servers"; @@ -67,15 +68,32 @@ const validServer = withValidation({ memoize: true, }); -function useSettingsValueWithSetter( - settingName: string, +function useSettingsValueWithSetter( + settingName: S, + level: SettingLevel, + roomId: string | null, + excludeDefault: true, +): [Settings[S]["default"] | undefined, (value: Settings[S]["default"]) => Promise]; +function useSettingsValueWithSetter( + settingName: S, + level: SettingLevel, + roomId?: string | null, + excludeDefault?: false, +): [Settings[S]["default"], (value: Settings[S]["default"]) => Promise]; +function useSettingsValueWithSetter( + settingName: S, level: SettingLevel, roomId: string | null = null, excludeDefault = false, -): [T, (value: T) => Promise] { - const [value, setValue] = useState(SettingsStore.getValue(settingName, roomId ?? undefined, excludeDefault)); +): [Settings[S]["default"] | undefined, (value: Settings[S]["default"]) => Promise] { + const [value, setValue] = useState( + // XXX: This seems naff but is needed to convince TypeScript that the overload is fine + excludeDefault + ? SettingsStore.getValue(settingName, roomId, excludeDefault) + : SettingsStore.getValue(settingName, roomId, excludeDefault), + ); const setter = useCallback( - async (value: T): Promise => { + async (value: Settings[S]["default"]): Promise => { setValue(value); SettingsStore.setValue(settingName, roomId, level, value); }, @@ -84,7 +102,12 @@ function useSettingsValueWithSetter( useEffect(() => { const ref = SettingsStore.watchSetting(settingName, roomId, () => { - setValue(SettingsStore.getValue(settingName, roomId, excludeDefault)); + setValue( + // XXX: This seems naff but is needed to convince TypeScript that the overload is fine + excludeDefault + ? SettingsStore.getValue(settingName, roomId, excludeDefault) + : SettingsStore.getValue(settingName, roomId, excludeDefault), + ); }); // clean-up return () => { @@ -109,10 +132,7 @@ function removeAll(target: Set, ...toRemove: T[]): void { } function useServers(): ServerList { - const [userDefinedServers, setUserDefinedServers] = useSettingsValueWithSetter( - SETTING_NAME, - SettingLevel.ACCOUNT, - ); + const [userDefinedServers, setUserDefinedServers] = useSettingsValueWithSetter(SETTING_NAME, SettingLevel.ACCOUNT); const homeServer = MatrixClientPeg.safeGet().getDomain()!; const configServers = new Set(SdkConfig.getObject("room_directory")?.get("servers") ?? []); diff --git a/src/components/views/elements/AccessibleButton.tsx b/src/components/views/elements/AccessibleButton.tsx index 8b58f251c36..f12b36359b6 100644 --- a/src/components/views/elements/AccessibleButton.tsx +++ b/src/components/views/elements/AccessibleButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016 Jani Mustonen -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/AppPermission.tsx b/src/components/views/elements/AppPermission.tsx index 846cc2625a7..c6ac9d2f50c 100644 --- a/src/components/views/elements/AppPermission.tsx +++ b/src/components/views/elements/AppPermission.tsx @@ -4,7 +4,7 @@ Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/AppTile.tsx b/src/components/views/elements/AppTile.tsx index 56754f14a6b..8af4a95f93a 100644 --- a/src/components/views/elements/AppTile.tsx +++ b/src/components/views/elements/AppTile.tsx @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/AppWarning.tsx b/src/components/views/elements/AppWarning.tsx index 4e43ca9c1ac..9f8a26e6cd8 100644 --- a/src/components/views/elements/AppWarning.tsx +++ b/src/components/views/elements/AppWarning.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/CopyableText.tsx b/src/components/views/elements/CopyableText.tsx index c7b0df06793..02c1b145637 100644 --- a/src/components/views/elements/CopyableText.tsx +++ b/src/components/views/elements/CopyableText.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/DesktopCapturerSourcePicker.tsx b/src/components/views/elements/DesktopCapturerSourcePicker.tsx index e1f1def8360..2e100e767c0 100644 --- a/src/components/views/elements/DesktopCapturerSourcePicker.tsx +++ b/src/components/views/elements/DesktopCapturerSourcePicker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/DialPadBackspaceButton.tsx b/src/components/views/elements/DialPadBackspaceButton.tsx index 4165b9077d6..7ebf9694b39 100644 --- a/src/components/views/elements/DialPadBackspaceButton.tsx +++ b/src/components/views/elements/DialPadBackspaceButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/DialogButtons.tsx b/src/components/views/elements/DialogButtons.tsx index 7b49c9af5ab..defee130bc7 100644 --- a/src/components/views/elements/DialogButtons.tsx +++ b/src/components/views/elements/DialogButtons.tsx @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd. Copyright 2017 Aidan Gauland -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Draggable.tsx b/src/components/views/elements/Draggable.tsx index 69209f383ee..959ed8ff983 100644 --- a/src/components/views/elements/Draggable.tsx +++ b/src/components/views/elements/Draggable.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Dropdown.tsx b/src/components/views/elements/Dropdown.tsx index a7ce84163c7..b4d0df69dfb 100644 --- a/src/components/views/elements/Dropdown.tsx +++ b/src/components/views/elements/Dropdown.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/EditableItemList.tsx b/src/components/views/elements/EditableItemList.tsx index ad2d9aceee7..134c6151947 100644 --- a/src/components/views/elements/EditableItemList.tsx +++ b/src/components/views/elements/EditableItemList.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/EditableText.tsx b/src/components/views/elements/EditableText.tsx index f31660854e8..1e1d00d14c2 100644 --- a/src/components/views/elements/EditableText.tsx +++ b/src/components/views/elements/EditableText.tsx @@ -2,7 +2,7 @@ Copyright 2018-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/EffectsOverlay.tsx b/src/components/views/elements/EffectsOverlay.tsx index 3e5a5ead60a..68733b4ceb1 100644 --- a/src/components/views/elements/EffectsOverlay.tsx +++ b/src/components/views/elements/EffectsOverlay.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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, { FunctionComponent, useEffect, useRef } from "react"; diff --git a/src/components/views/elements/ErrorBoundary.tsx b/src/components/views/elements/ErrorBoundary.tsx index 98e38350fdf..6ea625cec0e 100644 --- a/src/components/views/elements/ErrorBoundary.tsx +++ b/src/components/views/elements/ErrorBoundary.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/EventListSummary.tsx b/src/components/views/elements/EventListSummary.tsx index 776908375a1..c052a83f661 100644 --- a/src/components/views/elements/EventListSummary.tsx +++ b/src/components/views/elements/EventListSummary.tsx @@ -4,7 +4,7 @@ Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/EventTilePreview.tsx b/src/components/views/elements/EventTilePreview.tsx index bc9a16283c9..dc276858bd9 100644 --- a/src/components/views/elements/EventTilePreview.tsx +++ b/src/components/views/elements/EventTilePreview.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ExternalLink.tsx b/src/components/views/elements/ExternalLink.tsx index 4b56841eb18..8c30f6e2bd2 100644 --- a/src/components/views/elements/ExternalLink.tsx +++ b/src/components/views/elements/ExternalLink.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/FacePile.tsx b/src/components/views/elements/FacePile.tsx index 74a857953ce..49416a8d381 100644 --- a/src/components/views/elements/FacePile.tsx +++ b/src/components/views/elements/FacePile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Field.tsx b/src/components/views/elements/Field.tsx index 26e76bb0145..ea41582d620 100644 --- a/src/components/views/elements/Field.tsx +++ b/src/components/views/elements/Field.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/FilterDropdown.tsx b/src/components/views/elements/FilterDropdown.tsx index 9a66ffcea14..63e0fca2432 100644 --- a/src/components/views/elements/FilterDropdown.tsx +++ b/src/components/views/elements/FilterDropdown.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/FilterTabGroup.tsx b/src/components/views/elements/FilterTabGroup.tsx index 6129cd12195..b63d96bdd33 100644 --- a/src/components/views/elements/FilterTabGroup.tsx +++ b/src/components/views/elements/FilterTabGroup.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/GenericEventListSummary.tsx b/src/components/views/elements/GenericEventListSummary.tsx index ae20d186ba1..11da97f76bb 100644 --- a/src/components/views/elements/GenericEventListSummary.tsx +++ b/src/components/views/elements/GenericEventListSummary.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/IRCTimelineProfileResizer.tsx b/src/components/views/elements/IRCTimelineProfileResizer.tsx index d653361e3e1..625ea2cb530 100644 --- a/src/components/views/elements/IRCTimelineProfileResizer.tsx +++ b/src/components/views/elements/IRCTimelineProfileResizer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ImageView.tsx b/src/components/views/elements/ImageView.tsx index 711a221994f..3a3006edc57 100644 --- a/src/components/views/elements/ImageView.tsx +++ b/src/components/views/elements/ImageView.tsx @@ -4,7 +4,7 @@ Copyright 2020, 2021 Šimon Brandner Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/InfoTooltip.tsx b/src/components/views/elements/InfoTooltip.tsx index e840100f21d..7d62b81cb38 100644 --- a/src/components/views/elements/InfoTooltip.tsx +++ b/src/components/views/elements/InfoTooltip.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/InlineSpinner.tsx b/src/components/views/elements/InlineSpinner.tsx index 868bdb5d6a6..7c1bde36b48 100644 --- a/src/components/views/elements/InlineSpinner.tsx +++ b/src/components/views/elements/InlineSpinner.tsx @@ -1,7 +1,7 @@ /* Copyright 2017-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/InviteReason.tsx b/src/components/views/elements/InviteReason.tsx index ea79f33e5d7..fd44b5a4185 100644 --- a/src/components/views/elements/InviteReason.tsx +++ b/src/components/views/elements/InviteReason.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/JoinRuleDropdown.tsx b/src/components/views/elements/JoinRuleDropdown.tsx index 19afdc828c9..7e678b02e67 100644 --- a/src/components/views/elements/JoinRuleDropdown.tsx +++ b/src/components/views/elements/JoinRuleDropdown.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/LabelledCheckbox.tsx b/src/components/views/elements/LabelledCheckbox.tsx index f46de7f1629..ea7b5d2b04d 100644 --- a/src/components/views/elements/LabelledCheckbox.tsx +++ b/src/components/views/elements/LabelledCheckbox.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/LabelledToggleSwitch.tsx b/src/components/views/elements/LabelledToggleSwitch.tsx index 34c08c252fe..bbc1344efd4 100644 --- a/src/components/views/elements/LabelledToggleSwitch.tsx +++ b/src/components/views/elements/LabelledToggleSwitch.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/LanguageDropdown.tsx b/src/components/views/elements/LanguageDropdown.tsx index 27b4b2b31ce..743e0df1f70 100644 --- a/src/components/views/elements/LanguageDropdown.tsx +++ b/src/components/views/elements/LanguageDropdown.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Marcel Radzio (MTRNord) Copyright 2017 Vector Creations Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -105,7 +105,7 @@ export default class LanguageDropdown extends React.Component { // default value here too, otherwise we need to handle null / undefined // values between mounting and the initial value propagating - let language = SettingsStore.getValue("language", null, /*excludeDefault:*/ true); + let language = SettingsStore.getValue("language", null, /*excludeDefault:*/ true); let value: string | undefined; if (language) { value = this.props.value || language; diff --git a/src/components/views/elements/LazyRenderList.tsx b/src/components/views/elements/LazyRenderList.tsx index 996a3981cec..c4a928ef666 100644 --- a/src/components/views/elements/LazyRenderList.tsx +++ b/src/components/views/elements/LazyRenderList.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/LearnMore.tsx b/src/components/views/elements/LearnMore.tsx index 02e685de382..ac7ec099542 100644 --- a/src/components/views/elements/LearnMore.tsx +++ b/src/components/views/elements/LearnMore.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/LinkWithTooltip.tsx b/src/components/views/elements/LinkWithTooltip.tsx index 016297d9f1c..6265910bd8e 100644 --- a/src/components/views/elements/LinkWithTooltip.tsx +++ b/src/components/views/elements/LinkWithTooltip.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Measured.tsx b/src/components/views/elements/Measured.tsx index e2f9d14ddee..6a4abae2de0 100644 --- a/src/components/views/elements/Measured.tsx +++ b/src/components/views/elements/Measured.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/MiniAvatarUploader.tsx b/src/components/views/elements/MiniAvatarUploader.tsx index 452b206bef3..f5e22ecfab0 100644 --- a/src/components/views/elements/MiniAvatarUploader.tsx +++ b/src/components/views/elements/MiniAvatarUploader.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/PersistedElement.tsx b/src/components/views/elements/PersistedElement.tsx index 3feb8561453..410b96d037d 100644 --- a/src/components/views/elements/PersistedElement.tsx +++ b/src/components/views/elements/PersistedElement.tsx @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/PersistentApp.tsx b/src/components/views/elements/PersistentApp.tsx index 5f720dc85e8..bd49b32dff0 100644 --- a/src/components/views/elements/PersistentApp.tsx +++ b/src/components/views/elements/PersistentApp.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Pill.tsx b/src/components/views/elements/Pill.tsx index 14093587ad3..266312124a1 100644 --- a/src/components/views/elements/Pill.tsx +++ b/src/components/views/elements/Pill.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2019 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/PollCreateDialog.tsx b/src/components/views/elements/PollCreateDialog.tsx index eb6a762bf39..37139ec0d0c 100644 --- a/src/components/views/elements/PollCreateDialog.tsx +++ b/src/components/views/elements/PollCreateDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/PowerSelector.tsx b/src/components/views/elements/PowerSelector.tsx index 385d932b870..6c7c1889d42 100644 --- a/src/components/views/elements/PowerSelector.tsx +++ b/src/components/views/elements/PowerSelector.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ProgressBar.tsx b/src/components/views/elements/ProgressBar.tsx index b0f4ccd9c57..eb16724d3ec 100644 --- a/src/components/views/elements/ProgressBar.tsx +++ b/src/components/views/elements/ProgressBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/QRCode.tsx b/src/components/views/elements/QRCode.tsx index 4eea8dc55e8..a60d5e66259 100644 --- a/src/components/views/elements/QRCode.tsx +++ b/src/components/views/elements/QRCode.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ReplyChain.tsx b/src/components/views/elements/ReplyChain.tsx index 8e10ca3af90..d2b9cf079f5 100644 --- a/src/components/views/elements/ReplyChain.tsx +++ b/src/components/views/elements/ReplyChain.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2023 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ResizeHandle.tsx b/src/components/views/elements/ResizeHandle.tsx index 48909216636..a04f223e036 100644 --- a/src/components/views/elements/ResizeHandle.tsx +++ b/src/components/views/elements/ResizeHandle.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/RoomAliasField.tsx b/src/components/views/elements/RoomAliasField.tsx index faa0ccf1a64..e87d26a340b 100644 --- a/src/components/views/elements/RoomAliasField.tsx +++ b/src/components/views/elements/RoomAliasField.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/RoomFacePile.tsx b/src/components/views/elements/RoomFacePile.tsx index 642af48c070..9b65fb98ae8 100644 --- a/src/components/views/elements/RoomFacePile.tsx +++ b/src/components/views/elements/RoomFacePile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/RoomName.tsx b/src/components/views/elements/RoomName.tsx index 169671f0571..9228a71cf06 100644 --- a/src/components/views/elements/RoomName.tsx +++ b/src/components/views/elements/RoomName.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/RoomTopic.tsx b/src/components/views/elements/RoomTopic.tsx index a23f396be51..4e71a65c4d6 100644 --- a/src/components/views/elements/RoomTopic.tsx +++ b/src/components/views/elements/RoomTopic.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/SSOButtons.tsx b/src/components/views/elements/SSOButtons.tsx index e2fd92e97bd..39355b18894 100644 --- a/src/components/views/elements/SSOButtons.tsx +++ b/src/components/views/elements/SSOButtons.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/SearchWarning.tsx b/src/components/views/elements/SearchWarning.tsx index e7c651c8020..6c6c4d82b1f 100644 --- a/src/components/views/elements/SearchWarning.tsx +++ b/src/components/views/elements/SearchWarning.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ServerPicker.tsx b/src/components/views/elements/ServerPicker.tsx index e6d899dff52..b433aa5150b 100644 --- a/src/components/views/elements/ServerPicker.tsx +++ b/src/components/views/elements/ServerPicker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/SettingsFlag.tsx b/src/components/views/elements/SettingsFlag.tsx index 07fa3fd7fd2..f3472f38893 100644 --- a/src/components/views/elements/SettingsFlag.tsx +++ b/src/components/views/elements/SettingsFlag.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -15,11 +15,11 @@ import { _t } from "../../../languageHandler"; import ToggleSwitch from "./ToggleSwitch"; import StyledCheckbox from "./StyledCheckbox"; import { SettingLevel } from "../../../settings/SettingLevel"; -import { defaultWatchManager } from "../../../settings/Settings"; +import { BooleanSettingKey, defaultWatchManager } from "../../../settings/Settings"; interface IProps { // The setting must be a boolean - name: string; + name: BooleanSettingKey; level: SettingLevel; roomId?: string; // for per-room settings label?: string; diff --git a/src/components/views/elements/SpellCheckLanguagesDropdown.tsx b/src/components/views/elements/SpellCheckLanguagesDropdown.tsx index ce521c959a1..9d250831ff0 100644 --- a/src/components/views/elements/SpellCheckLanguagesDropdown.tsx +++ b/src/components/views/elements/SpellCheckLanguagesDropdown.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -107,7 +107,7 @@ export default class SpellCheckLanguagesDropdown extends React.Component< // default value here too, otherwise we need to handle null / undefined; // values between mounting and the initial value propagating - let language = SettingsStore.getValue("language", null, /*excludeDefault:*/ true); + let language = SettingsStore.getValue("language", null, /*excludeDefault:*/ true); let value: string | undefined; if (language) { value = this.props.value || language; diff --git a/src/components/views/elements/Spinner.tsx b/src/components/views/elements/Spinner.tsx index 0a080693e2b..ab23135a883 100644 --- a/src/components/views/elements/Spinner.tsx +++ b/src/components/views/elements/Spinner.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Spoiler.tsx b/src/components/views/elements/Spoiler.tsx index 031700948d9..588da46c6f9 100644 --- a/src/components/views/elements/Spoiler.tsx +++ b/src/components/views/elements/Spoiler.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Sorunome -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/StyledCheckbox.tsx b/src/components/views/elements/StyledCheckbox.tsx index 83409b8f680..49d173cd7c5 100644 --- a/src/components/views/elements/StyledCheckbox.tsx +++ b/src/components/views/elements/StyledCheckbox.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/StyledRadioButton.tsx b/src/components/views/elements/StyledRadioButton.tsx index 01c30c837b9..01e4de1dad8 100644 --- a/src/components/views/elements/StyledRadioButton.tsx +++ b/src/components/views/elements/StyledRadioButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/StyledRadioGroup.tsx b/src/components/views/elements/StyledRadioGroup.tsx index 7e527aade57..b93a697bfb1 100644 --- a/src/components/views/elements/StyledRadioGroup.tsx +++ b/src/components/views/elements/StyledRadioGroup.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/SyntaxHighlight.tsx b/src/components/views/elements/SyntaxHighlight.tsx index 7570ea22ed4..d8c50e5789b 100644 --- a/src/components/views/elements/SyntaxHighlight.tsx +++ b/src/components/views/elements/SyntaxHighlight.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Tag.tsx b/src/components/views/elements/Tag.tsx index b9f87806281..0c1676794eb 100644 --- a/src/components/views/elements/Tag.tsx +++ b/src/components/views/elements/Tag.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/TagComposer.tsx b/src/components/views/elements/TagComposer.tsx index 39dd85f814a..55071964bcd 100644 --- a/src/components/views/elements/TagComposer.tsx +++ b/src/components/views/elements/TagComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/TextWithTooltip.tsx b/src/components/views/elements/TextWithTooltip.tsx index b589ce3635c..42d436ced41 100644 --- a/src/components/views/elements/TextWithTooltip.tsx +++ b/src/components/views/elements/TextWithTooltip.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/ToggleSwitch.tsx b/src/components/views/elements/ToggleSwitch.tsx index a6ed4fb4f1c..3ef4981d55b 100644 --- a/src/components/views/elements/ToggleSwitch.tsx +++ b/src/components/views/elements/ToggleSwitch.tsx @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/TruncatedList.tsx b/src/components/views/elements/TruncatedList.tsx index 073d5a91e43..8e7abc11047 100644 --- a/src/components/views/elements/TruncatedList.tsx +++ b/src/components/views/elements/TruncatedList.tsx @@ -2,7 +2,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/UseCaseSelection.tsx b/src/components/views/elements/UseCaseSelection.tsx index 2c64c2903af..7d2019e0896 100644 --- a/src/components/views/elements/UseCaseSelection.tsx +++ b/src/components/views/elements/UseCaseSelection.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/UseCaseSelectionButton.tsx b/src/components/views/elements/UseCaseSelectionButton.tsx index 2899a1ee502..c1b33a63b68 100644 --- a/src/components/views/elements/UseCaseSelectionButton.tsx +++ b/src/components/views/elements/UseCaseSelectionButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/Validation.tsx b/src/components/views/elements/Validation.tsx index f859c00bebf..2420945c6eb 100644 --- a/src/components/views/elements/Validation.tsx +++ b/src/components/views/elements/Validation.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/elements/crypto/VerificationQRCode.tsx b/src/components/views/elements/crypto/VerificationQRCode.tsx index 021457bc006..22acd41a747 100644 --- a/src/components/views/elements/crypto/VerificationQRCode.tsx +++ b/src/components/views/elements/crypto/VerificationQRCode.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/Category.tsx b/src/components/views/emojipicker/Category.tsx index 4c9fbc2d89e..397778e0afc 100644 --- a/src/components/views/emojipicker/Category.tsx +++ b/src/components/views/emojipicker/Category.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/Emoji.tsx b/src/components/views/emojipicker/Emoji.tsx index a852122b750..3b74947f04d 100644 --- a/src/components/views/emojipicker/Emoji.tsx +++ b/src/components/views/emojipicker/Emoji.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/EmojiPicker.tsx b/src/components/views/emojipicker/EmojiPicker.tsx index e2470d188d3..0c10d778a60 100644 --- a/src/components/views/emojipicker/EmojiPicker.tsx +++ b/src/components/views/emojipicker/EmojiPicker.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/Header.tsx b/src/components/views/emojipicker/Header.tsx index b66f0dbaa90..53607e28618 100644 --- a/src/components/views/emojipicker/Header.tsx +++ b/src/components/views/emojipicker/Header.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/Preview.tsx b/src/components/views/emojipicker/Preview.tsx index 8856a9f56e6..a5112510280 100644 --- a/src/components/views/emojipicker/Preview.tsx +++ b/src/components/views/emojipicker/Preview.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/QuickReactions.tsx b/src/components/views/emojipicker/QuickReactions.tsx index d261171867d..7a8511f997d 100644 --- a/src/components/views/emojipicker/QuickReactions.tsx +++ b/src/components/views/emojipicker/QuickReactions.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/ReactionPicker.tsx b/src/components/views/emojipicker/ReactionPicker.tsx index bd166344904..ea1a502942d 100644 --- a/src/components/views/emojipicker/ReactionPicker.tsx +++ b/src/components/views/emojipicker/ReactionPicker.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/emojipicker/Search.tsx b/src/components/views/emojipicker/Search.tsx index bce045cb8c6..bc560c46431 100644 --- a/src/components/views/emojipicker/Search.tsx +++ b/src/components/views/emojipicker/Search.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/EnableLiveShare.tsx b/src/components/views/location/EnableLiveShare.tsx index 1daeef044fd..18fc6025d30 100644 --- a/src/components/views/location/EnableLiveShare.tsx +++ b/src/components/views/location/EnableLiveShare.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/LiveDurationDropdown.tsx b/src/components/views/location/LiveDurationDropdown.tsx index f0a85b842a7..1bdf93a8e68 100644 --- a/src/components/views/location/LiveDurationDropdown.tsx +++ b/src/components/views/location/LiveDurationDropdown.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/LocationButton.tsx b/src/components/views/location/LocationButton.tsx index 654a3b69f5f..3a4460bec47 100644 --- a/src/components/views/location/LocationButton.tsx +++ b/src/components/views/location/LocationButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/LocationPicker.tsx b/src/components/views/location/LocationPicker.tsx index e812f1c6bd9..fe0838c166a 100644 --- a/src/components/views/location/LocationPicker.tsx +++ b/src/components/views/location/LocationPicker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/LocationShareMenu.tsx b/src/components/views/location/LocationShareMenu.tsx index 4f64a116cc0..546ab4f3735 100644 --- a/src/components/views/location/LocationShareMenu.tsx +++ b/src/components/views/location/LocationShareMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/LocationViewDialog.tsx b/src/components/views/location/LocationViewDialog.tsx index 93016bb9a42..d35f0b75e2b 100644 --- a/src/components/views/location/LocationViewDialog.tsx +++ b/src/components/views/location/LocationViewDialog.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/Map.tsx b/src/components/views/location/Map.tsx index 6ba25662e81..3af8b795792 100644 --- a/src/components/views/location/Map.tsx +++ b/src/components/views/location/Map.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/MapError.tsx b/src/components/views/location/MapError.tsx index 319223d3f93..93c7dab4066 100644 --- a/src/components/views/location/MapError.tsx +++ b/src/components/views/location/MapError.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/MapFallback.tsx b/src/components/views/location/MapFallback.tsx index 101a5d80663..94829d3bc00 100644 --- a/src/components/views/location/MapFallback.tsx +++ b/src/components/views/location/MapFallback.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/Marker.tsx b/src/components/views/location/Marker.tsx index 58e1ce30fb0..13239240f16 100644 --- a/src/components/views/location/Marker.tsx +++ b/src/components/views/location/Marker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/ShareDialogButtons.tsx b/src/components/views/location/ShareDialogButtons.tsx index 867309f8f2a..8b9bf011997 100644 --- a/src/components/views/location/ShareDialogButtons.tsx +++ b/src/components/views/location/ShareDialogButtons.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/ShareType.tsx b/src/components/views/location/ShareType.tsx index 0aa31b7bd4b..923cd265724 100644 --- a/src/components/views/location/ShareType.tsx +++ b/src/components/views/location/ShareType.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/SmartMarker.tsx b/src/components/views/location/SmartMarker.tsx index 50e927b96db..4ec42468a61 100644 --- a/src/components/views/location/SmartMarker.tsx +++ b/src/components/views/location/SmartMarker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/ZoomButtons.tsx b/src/components/views/location/ZoomButtons.tsx index 1b370744ded..8926fa20c78 100644 --- a/src/components/views/location/ZoomButtons.tsx +++ b/src/components/views/location/ZoomButtons.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/index.tsx b/src/components/views/location/index.tsx index d51d6c58f36..3f308f38124 100644 --- a/src/components/views/location/index.tsx +++ b/src/components/views/location/index.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/location/shareLocation.ts b/src/components/views/location/shareLocation.ts index 8d4349735e9..5aed9ec37e9 100644 --- a/src/components/views/location/shareLocation.ts +++ b/src/components/views/location/shareLocation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/CallEvent.tsx b/src/components/views/messages/CallEvent.tsx index fa8d14f5f6d..5d2e56c4e8a 100644 --- a/src/components/views/messages/CallEvent.tsx +++ b/src/components/views/messages/CallEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/CodeBlock.tsx b/src/components/views/messages/CodeBlock.tsx index 80619914058..fd623eea018 100644 --- a/src/components/views/messages/CodeBlock.tsx +++ b/src/components/views/messages/CodeBlock.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -36,9 +36,9 @@ const ExpandCollapseButton: React.FC<{ }; const CodeBlock: React.FC = ({ children, onHeightChanged }) => { - const enableSyntaxHighlightLanguageDetection = useSettingValue("enableSyntaxHighlightLanguageDetection"); - const showCodeLineNumbers = useSettingValue("showCodeLineNumbers"); - const expandCodeByDefault = useSettingValue("expandCodeByDefault"); + const enableSyntaxHighlightLanguageDetection = useSettingValue("enableSyntaxHighlightLanguageDetection"); + const showCodeLineNumbers = useSettingValue("showCodeLineNumbers"); + const expandCodeByDefault = useSettingValue("expandCodeByDefault"); const [expanded, setExpanded] = useState(expandCodeByDefault); let expandCollapseButton: JSX.Element | undefined; diff --git a/src/components/views/messages/DateSeparator.tsx b/src/components/views/messages/DateSeparator.tsx index 98f397eb459..e8515b9347b 100644 --- a/src/components/views/messages/DateSeparator.tsx +++ b/src/components/views/messages/DateSeparator.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. Copyright 2018 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/DecryptionFailureBody.tsx b/src/components/views/messages/DecryptionFailureBody.tsx index 108ec45b03e..f3c02d4c0c1 100644 --- a/src/components/views/messages/DecryptionFailureBody.tsx +++ b/src/components/views/messages/DecryptionFailureBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/DisambiguatedProfile.tsx b/src/components/views/messages/DisambiguatedProfile.tsx index 0e7d2e046eb..4357ac73e0a 100644 --- a/src/components/views/messages/DisambiguatedProfile.tsx +++ b/src/components/views/messages/DisambiguatedProfile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/DownloadActionButton.tsx b/src/components/views/messages/DownloadActionButton.tsx index 2940dab2922..e85389f2e79 100644 --- a/src/components/views/messages/DownloadActionButton.tsx +++ b/src/components/views/messages/DownloadActionButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/EditHistoryMessage.tsx b/src/components/views/messages/EditHistoryMessage.tsx index fb6f04c08f0..1e6333807dc 100644 --- a/src/components/views/messages/EditHistoryMessage.tsx +++ b/src/components/views/messages/EditHistoryMessage.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/EncryptionEvent.tsx b/src/components/views/messages/EncryptionEvent.tsx index bc6680d3000..090881aa02e 100644 --- a/src/components/views/messages/EncryptionEvent.tsx +++ b/src/components/views/messages/EncryptionEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/EventTileBubble.tsx b/src/components/views/messages/EventTileBubble.tsx index 05c8a66f995..4ba159089f9 100644 --- a/src/components/views/messages/EventTileBubble.tsx +++ b/src/components/views/messages/EventTileBubble.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/HiddenBody.tsx b/src/components/views/messages/HiddenBody.tsx index 9bde6adefc5..5485d2fd6ec 100644 --- a/src/components/views/messages/HiddenBody.tsx +++ b/src/components/views/messages/HiddenBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/IBodyProps.ts b/src/components/views/messages/IBodyProps.ts index e48ba96b56f..c8f6820e23b 100644 --- a/src/components/views/messages/IBodyProps.ts +++ b/src/components/views/messages/IBodyProps.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/IMediaBody.ts b/src/components/views/messages/IMediaBody.ts index c8f7f5b95db..4025f4e6316 100644 --- a/src/components/views/messages/IMediaBody.ts +++ b/src/components/views/messages/IMediaBody.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/JumpToDatePicker.tsx b/src/components/views/messages/JumpToDatePicker.tsx index 4f4f0a6e050..28814d1f77b 100644 --- a/src/components/views/messages/JumpToDatePicker.tsx +++ b/src/components/views/messages/JumpToDatePicker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/LegacyCallEvent.tsx b/src/components/views/messages/LegacyCallEvent.tsx index 3f24459b5b6..fe52a83fb77 100644 --- a/src/components/views/messages/LegacyCallEvent.tsx +++ b/src/components/views/messages/LegacyCallEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MAudioBody.tsx b/src/components/views/messages/MAudioBody.tsx index bf0cc9ee541..9c2bc9583b6 100644 --- a/src/components/views/messages/MAudioBody.tsx +++ b/src/components/views/messages/MAudioBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MBeaconBody.tsx b/src/components/views/messages/MBeaconBody.tsx index 8b250fa0d50..43f7bbd7d34 100644 --- a/src/components/views/messages/MBeaconBody.tsx +++ b/src/components/views/messages/MBeaconBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MFileBody.tsx b/src/components/views/messages/MFileBody.tsx index 1235b73b4bd..20a27b9744e 100644 --- a/src/components/views/messages/MFileBody.tsx +++ b/src/components/views/messages/MFileBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MImageBody.tsx b/src/components/views/messages/MImageBody.tsx index c3aeee1a54a..86bc59fdbd1 100644 --- a/src/components/views/messages/MImageBody.tsx +++ b/src/components/views/messages/MImageBody.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MImageReplyBody.tsx b/src/components/views/messages/MImageReplyBody.tsx index c1ba78fbf75..4ba5fc23f26 100644 --- a/src/components/views/messages/MImageReplyBody.tsx +++ b/src/components/views/messages/MImageReplyBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MJitsiWidgetEvent.tsx b/src/components/views/messages/MJitsiWidgetEvent.tsx index bec4f56164b..2b785b60b44 100644 --- a/src/components/views/messages/MJitsiWidgetEvent.tsx +++ b/src/components/views/messages/MJitsiWidgetEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MKeyVerificationRequest.tsx b/src/components/views/messages/MKeyVerificationRequest.tsx index 56e7b1c39c4..fb929f79a2e 100644 --- a/src/components/views/messages/MKeyVerificationRequest.tsx +++ b/src/components/views/messages/MKeyVerificationRequest.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 , 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MLocationBody.tsx b/src/components/views/messages/MLocationBody.tsx index 7735e64b031..006b35bb9b5 100644 --- a/src/components/views/messages/MLocationBody.tsx +++ b/src/components/views/messages/MLocationBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MPollBody.tsx b/src/components/views/messages/MPollBody.tsx index ba3962779f3..17c7a577df2 100644 --- a/src/components/views/messages/MPollBody.tsx +++ b/src/components/views/messages/MPollBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MPollEndBody.tsx b/src/components/views/messages/MPollEndBody.tsx index 1129b3538ed..7df0e8ad581 100644 --- a/src/components/views/messages/MPollEndBody.tsx +++ b/src/components/views/messages/MPollEndBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MStickerBody.tsx b/src/components/views/messages/MStickerBody.tsx index b1638d5b314..0864ecfcfeb 100644 --- a/src/components/views/messages/MStickerBody.tsx +++ b/src/components/views/messages/MStickerBody.tsx @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MVideoBody.tsx b/src/components/views/messages/MVideoBody.tsx index 822d2c3f593..c513925acd8 100644 --- a/src/components/views/messages/MVideoBody.tsx +++ b/src/components/views/messages/MVideoBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MVoiceMessageBody.tsx b/src/components/views/messages/MVoiceMessageBody.tsx index 690537b2e1e..cc0e030c786 100644 --- a/src/components/views/messages/MVoiceMessageBody.tsx +++ b/src/components/views/messages/MVoiceMessageBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MVoiceOrAudioBody.tsx b/src/components/views/messages/MVoiceOrAudioBody.tsx index cfbeaa820bb..af7eb6f84a4 100644 --- a/src/components/views/messages/MVoiceOrAudioBody.tsx +++ b/src/components/views/messages/MVoiceOrAudioBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MessageActionBar.tsx b/src/components/views/messages/MessageActionBar.tsx index 579db054e9e..1476249c2b2 100644 --- a/src/components/views/messages/MessageActionBar.tsx +++ b/src/components/views/messages/MessageActionBar.tsx @@ -4,7 +4,7 @@ Copyright 2019-2023 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MessageEvent.tsx b/src/components/views/messages/MessageEvent.tsx index d1a1c59141d..6fb239069f8 100644 --- a/src/components/views/messages/MessageEvent.tsx +++ b/src/components/views/messages/MessageEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MessageTimestamp.tsx b/src/components/views/messages/MessageTimestamp.tsx index 2e0535be5ce..34c25303ed9 100644 --- a/src/components/views/messages/MessageTimestamp.tsx +++ b/src/components/views/messages/MessageTimestamp.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018 Michael Telatynski <7t3chguy@gmail.com> Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/MjolnirBody.tsx b/src/components/views/messages/MjolnirBody.tsx index 678671d42ed..20587f879e0 100644 --- a/src/components/views/messages/MjolnirBody.tsx +++ b/src/components/views/messages/MjolnirBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/PinnedMessageBadge.tsx b/src/components/views/messages/PinnedMessageBadge.tsx index cdf22390c0e..7f4c132087f 100644 --- a/src/components/views/messages/PinnedMessageBadge.tsx +++ b/src/components/views/messages/PinnedMessageBadge.tsx @@ -1,9 +1,8 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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, { JSX } from "react"; diff --git a/src/components/views/messages/ReactionsRow.tsx b/src/components/views/messages/ReactionsRow.tsx index 605e6a7dfe0..504bf1b244d 100644 --- a/src/components/views/messages/ReactionsRow.tsx +++ b/src/components/views/messages/ReactionsRow.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/ReactionsRowButton.tsx b/src/components/views/messages/ReactionsRowButton.tsx index 709edeffd82..9e3763e4390 100644 --- a/src/components/views/messages/ReactionsRowButton.tsx +++ b/src/components/views/messages/ReactionsRowButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/ReactionsRowButtonTooltip.tsx b/src/components/views/messages/ReactionsRowButtonTooltip.tsx index 5f407e2e208..84fb95f210e 100644 --- a/src/components/views/messages/ReactionsRowButtonTooltip.tsx +++ b/src/components/views/messages/ReactionsRowButtonTooltip.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/RedactedBody.tsx b/src/components/views/messages/RedactedBody.tsx index 7da9eef03d2..dd311c8f5e9 100644 --- a/src/components/views/messages/RedactedBody.tsx +++ b/src/components/views/messages/RedactedBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/RoomAvatarEvent.tsx b/src/components/views/messages/RoomAvatarEvent.tsx index 295d2b06806..1d3f9172cab 100644 --- a/src/components/views/messages/RoomAvatarEvent.tsx +++ b/src/components/views/messages/RoomAvatarEvent.tsx @@ -4,7 +4,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/RoomPredecessorTile.tsx b/src/components/views/messages/RoomPredecessorTile.tsx index afc81422345..3b2de5d67dd 100644 --- a/src/components/views/messages/RoomPredecessorTile.tsx +++ b/src/components/views/messages/RoomPredecessorTile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/SenderProfile.tsx b/src/components/views/messages/SenderProfile.tsx index 7c239d0500a..8e99e45e756 100644 --- a/src/components/views/messages/SenderProfile.tsx +++ b/src/components/views/messages/SenderProfile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/TextualBody.tsx b/src/components/views/messages/TextualBody.tsx index 242feff6d4b..5aa8581f507 100644 --- a/src/components/views/messages/TextualBody.tsx +++ b/src/components/views/messages/TextualBody.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -426,7 +426,7 @@ export default class TextualBody extends React.Component { const stripReply = !mxEvent.replacingEvent() && !!getParentEventId(mxEvent); const htmlOpts = { - disableBigEmoji: isEmote || !SettingsStore.getValue("TextualBody.enableBigEmoji"), + disableBigEmoji: isEmote || !SettingsStore.getValue("TextualBody.enableBigEmoji"), // Part of Replies fallback support stripReplyFallback: stripReply, }; diff --git a/src/components/views/messages/TextualEvent.tsx b/src/components/views/messages/TextualEvent.tsx index 1c54963f76f..8549fc5cab5 100644 --- a/src/components/views/messages/TextualEvent.tsx +++ b/src/components/views/messages/TextualEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/TileErrorBoundary.tsx b/src/components/views/messages/TileErrorBoundary.tsx index b1cc53f2671..33d82e538af 100644 --- a/src/components/views/messages/TileErrorBoundary.tsx +++ b/src/components/views/messages/TileErrorBoundary.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/TimelineSeparator.tsx b/src/components/views/messages/TimelineSeparator.tsx index 5657ca7e6a7..f89ba642925 100644 --- a/src/components/views/messages/TimelineSeparator.tsx +++ b/src/components/views/messages/TimelineSeparator.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/UnknownBody.tsx b/src/components/views/messages/UnknownBody.tsx index ce9355b4b4b..2e804a221c6 100644 --- a/src/components/views/messages/UnknownBody.tsx +++ b/src/components/views/messages/UnknownBody.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/ViewSourceEvent.tsx b/src/components/views/messages/ViewSourceEvent.tsx index 8352f0f7e2b..3489921729f 100644 --- a/src/components/views/messages/ViewSourceEvent.tsx +++ b/src/components/views/messages/ViewSourceEvent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/messages/shared/MediaProcessingError.tsx b/src/components/views/messages/shared/MediaProcessingError.tsx index 39c0017f571..95a65b4538c 100644 --- a/src/components/views/messages/shared/MediaProcessingError.tsx +++ b/src/components/views/messages/shared/MediaProcessingError.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/pips/WidgetPip.tsx b/src/components/views/pips/WidgetPip.tsx index a556d3b93ce..13df6dbfadf 100644 --- a/src/components/views/pips/WidgetPip.tsx +++ b/src/components/views/pips/WidgetPip.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/PollOption.tsx b/src/components/views/polls/PollOption.tsx index c84653c2a12..07c6d141bb8 100644 --- a/src/components/views/polls/PollOption.tsx +++ b/src/components/views/polls/PollOption.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/PollDetail.tsx b/src/components/views/polls/pollHistory/PollDetail.tsx index fbc09ffcedd..67da1526cc4 100644 --- a/src/components/views/polls/pollHistory/PollDetail.tsx +++ b/src/components/views/polls/pollHistory/PollDetail.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/PollDetailHeader.tsx b/src/components/views/polls/pollHistory/PollDetailHeader.tsx index 0b175629aee..429f1740a75 100644 --- a/src/components/views/polls/pollHistory/PollDetailHeader.tsx +++ b/src/components/views/polls/pollHistory/PollDetailHeader.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/PollHistory.tsx b/src/components/views/polls/pollHistory/PollHistory.tsx index 4d145f3054b..01fcedd8eec 100644 --- a/src/components/views/polls/pollHistory/PollHistory.tsx +++ b/src/components/views/polls/pollHistory/PollHistory.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/PollHistoryList.tsx b/src/components/views/polls/pollHistory/PollHistoryList.tsx index 466ad2d58f5..ed0b935050e 100644 --- a/src/components/views/polls/pollHistory/PollHistoryList.tsx +++ b/src/components/views/polls/pollHistory/PollHistoryList.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/PollListItem.tsx b/src/components/views/polls/pollHistory/PollListItem.tsx index 544af0a6820..3a631c4242d 100644 --- a/src/components/views/polls/pollHistory/PollListItem.tsx +++ b/src/components/views/polls/pollHistory/PollListItem.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/PollListItemEnded.tsx b/src/components/views/polls/pollHistory/PollListItemEnded.tsx index e2f80e8eba5..17a9f9ae3ec 100644 --- a/src/components/views/polls/pollHistory/PollListItemEnded.tsx +++ b/src/components/views/polls/pollHistory/PollListItemEnded.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/fetchPastPolls.ts b/src/components/views/polls/pollHistory/fetchPastPolls.ts index d4d58948c3e..2e6c7075940 100644 --- a/src/components/views/polls/pollHistory/fetchPastPolls.ts +++ b/src/components/views/polls/pollHistory/fetchPastPolls.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/types.ts b/src/components/views/polls/pollHistory/types.ts index 75b02f0fcaa..0b9b98900ec 100644 --- a/src/components/views/polls/pollHistory/types.ts +++ b/src/components/views/polls/pollHistory/types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/polls/pollHistory/usePollHistory.ts b/src/components/views/polls/pollHistory/usePollHistory.ts index 6594cfbb41a..fbc57158427 100644 --- a/src/components/views/polls/pollHistory/usePollHistory.ts +++ b/src/components/views/polls/pollHistory/usePollHistory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/BaseCard.tsx b/src/components/views/right_panel/BaseCard.tsx index 30ec02a247a..d7d6129960d 100644 --- a/src/components/views/right_panel/BaseCard.tsx +++ b/src/components/views/right_panel/BaseCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/EmptyState.tsx b/src/components/views/right_panel/EmptyState.tsx index 3d7c9a89a6b..1c7713a5d8a 100644 --- a/src/components/views/right_panel/EmptyState.tsx +++ b/src/components/views/right_panel/EmptyState.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/EncryptionInfo.tsx b/src/components/views/right_panel/EncryptionInfo.tsx index 588d2d910ed..a2fb6e8f243 100644 --- a/src/components/views/right_panel/EncryptionInfo.tsx +++ b/src/components/views/right_panel/EncryptionInfo.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/EncryptionPanel.tsx b/src/components/views/right_panel/EncryptionPanel.tsx index 47fb995c20c..3ccd07cfc2c 100644 --- a/src/components/views/right_panel/EncryptionPanel.tsx +++ b/src/components/views/right_panel/EncryptionPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/ExtensionsCard.tsx b/src/components/views/right_panel/ExtensionsCard.tsx index 0c6b3ecde09..0e0ca12d67b 100644 --- a/src/components/views/right_panel/ExtensionsCard.tsx +++ b/src/components/views/right_panel/ExtensionsCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/PinnedMessagesCard.tsx b/src/components/views/right_panel/PinnedMessagesCard.tsx index d6161e9434d..2ce514c97ae 100644 --- a/src/components/views/right_panel/PinnedMessagesCard.tsx +++ b/src/components/views/right_panel/PinnedMessagesCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/RoomSummaryCard.tsx b/src/components/views/right_panel/RoomSummaryCard.tsx index c8dd0b97387..0abdba5276e 100644 --- a/src/components/views/right_panel/RoomSummaryCard.tsx +++ b/src/components/views/right_panel/RoomSummaryCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/TimelineCard.tsx b/src/components/views/right_panel/TimelineCard.tsx index f62319f3cda..49b313ca445 100644 --- a/src/components/views/right_panel/TimelineCard.tsx +++ b/src/components/views/right_panel/TimelineCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/UserInfo.tsx b/src/components/views/right_panel/UserInfo.tsx index 591e2327ae4..4e8968afaa9 100644 --- a/src/components/views/right_panel/UserInfo.tsx +++ b/src/components/views/right_panel/UserInfo.tsx @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2017, 2018 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/VerificationPanel.tsx b/src/components/views/right_panel/VerificationPanel.tsx index 6f8295dece2..ba419afa984 100644 --- a/src/components/views/right_panel/VerificationPanel.tsx +++ b/src/components/views/right_panel/VerificationPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/WidgetCard.tsx b/src/components/views/right_panel/WidgetCard.tsx index 887ecb61908..b1488aefb43 100644 --- a/src/components/views/right_panel/WidgetCard.tsx +++ b/src/components/views/right_panel/WidgetCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/context.ts b/src/components/views/right_panel/context.ts index b0d979ea03e..ba289c87f7d 100644 --- a/src/components/views/right_panel/context.ts +++ b/src/components/views/right_panel/context.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/right_panel/types.ts b/src/components/views/right_panel/types.ts index f390dfcb7de..09965a2a101 100644 --- a/src/components/views/right_panel/types.ts +++ b/src/components/views/right_panel/types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/room_settings/AliasSettings.tsx b/src/components/views/room_settings/AliasSettings.tsx index 0bb29b7f895..e76c8a2cd55 100644 --- a/src/components/views/room_settings/AliasSettings.tsx +++ b/src/components/views/room_settings/AliasSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/room_settings/RoomProfileSettings.tsx b/src/components/views/room_settings/RoomProfileSettings.tsx index 73d345847e7..8789ea48fc7 100644 --- a/src/components/views/room_settings/RoomProfileSettings.tsx +++ b/src/components/views/room_settings/RoomProfileSettings.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/room_settings/RoomPublishSetting.tsx b/src/components/views/room_settings/RoomPublishSetting.tsx index 9690e9c0ebb..5147945c364 100644 --- a/src/components/views/room_settings/RoomPublishSetting.tsx +++ b/src/components/views/room_settings/RoomPublishSetting.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/room_settings/UrlPreviewSettings.tsx b/src/components/views/room_settings/UrlPreviewSettings.tsx index 4ca63fd4a0d..9c7dcabbc64 100644 --- a/src/components/views/room_settings/UrlPreviewSettings.tsx +++ b/src/components/views/room_settings/UrlPreviewSettings.tsx @@ -5,7 +5,7 @@ Copyright 2018, 2019 New Vector Ltd Copyright 2017 Travis Ralston Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/AppsDrawer.tsx b/src/components/views/rooms/AppsDrawer.tsx index c02bfe8cf28..36df51f4cbb 100644 --- a/src/components/views/rooms/AppsDrawer.tsx +++ b/src/components/views/rooms/AppsDrawer.tsx @@ -2,7 +2,7 @@ Copyright 2018-2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/Autocomplete.tsx b/src/components/views/rooms/Autocomplete.tsx index 3ffd6648ea8..f77f394d8cc 100644 --- a/src/components/views/rooms/Autocomplete.tsx +++ b/src/components/views/rooms/Autocomplete.tsx @@ -2,7 +2,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2016 Aviral Dasgupta -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/AuxPanel.tsx b/src/components/views/rooms/AuxPanel.tsx index 5763a281547..67a25d433db 100644 --- a/src/components/views/rooms/AuxPanel.tsx +++ b/src/components/views/rooms/AuxPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/BasicMessageComposer.tsx b/src/components/views/rooms/BasicMessageComposer.tsx index 5f033de2380..ffa5e99f927 100644 --- a/src/components/views/rooms/BasicMessageComposer.tsx +++ b/src/components/views/rooms/BasicMessageComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/CollapsibleButton.tsx b/src/components/views/rooms/CollapsibleButton.tsx index 27589ec58c1..f1387a7a1ba 100644 --- a/src/components/views/rooms/CollapsibleButton.tsx +++ b/src/components/views/rooms/CollapsibleButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/E2EIcon.tsx b/src/components/views/rooms/E2EIcon.tsx index 29899e85ba9..3eb789914ba 100644 --- a/src/components/views/rooms/E2EIcon.tsx +++ b/src/components/views/rooms/E2EIcon.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/EditMessageComposer.tsx b/src/components/views/rooms/EditMessageComposer.tsx index f4b5c3698eb..dcae2153528 100644 --- a/src/components/views/rooms/EditMessageComposer.tsx +++ b/src/components/views/rooms/EditMessageComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/EmojiButton.tsx b/src/components/views/rooms/EmojiButton.tsx index de64b3d42c7..79184486b14 100644 --- a/src/components/views/rooms/EmojiButton.tsx +++ b/src/components/views/rooms/EmojiButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/EntityTile.tsx b/src/components/views/rooms/EntityTile.tsx index 946a5cd46b4..af4a265b72f 100644 --- a/src/components/views/rooms/EntityTile.tsx +++ b/src/components/views/rooms/EntityTile.tsx @@ -4,7 +4,7 @@ Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/EventPreview.tsx b/src/components/views/rooms/EventPreview.tsx index e02c2f152fe..8e7f53a3301 100644 --- a/src/components/views/rooms/EventPreview.tsx +++ b/src/components/views/rooms/EventPreview.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/components/views/rooms/EventTile.tsx b/src/components/views/rooms/EventTile.tsx index 8c755f00bda..1d2983dd030 100644 --- a/src/components/views/rooms/EventTile.tsx +++ b/src/components/views/rooms/EventTile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2023 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/EventTile/EventTileThreadToolbar.tsx b/src/components/views/rooms/EventTile/EventTileThreadToolbar.tsx index ad1a6ce9a61..29f3a43633e 100644 --- a/src/components/views/rooms/EventTile/EventTileThreadToolbar.tsx +++ b/src/components/views/rooms/EventTile/EventTileThreadToolbar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ExtraTile.tsx b/src/components/views/rooms/ExtraTile.tsx index 8f94264623c..d33db33e16d 100644 --- a/src/components/views/rooms/ExtraTile.tsx +++ b/src/components/views/rooms/ExtraTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/HistoryTile.tsx b/src/components/views/rooms/HistoryTile.tsx index 3aa74b8b0c7..a004aaeab97 100644 --- a/src/components/views/rooms/HistoryTile.tsx +++ b/src/components/views/rooms/HistoryTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Robin Townsend -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/JumpToBottomButton.tsx b/src/components/views/rooms/JumpToBottomButton.tsx index 7111a14e76d..a33fa7857ba 100644 --- a/src/components/views/rooms/JumpToBottomButton.tsx +++ b/src/components/views/rooms/JumpToBottomButton.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/LinkPreviewGroup.tsx b/src/components/views/rooms/LinkPreviewGroup.tsx index cbbd2a3d7bf..4ba64cee8c8 100644 --- a/src/components/views/rooms/LinkPreviewGroup.tsx +++ b/src/components/views/rooms/LinkPreviewGroup.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/LinkPreviewWidget.tsx b/src/components/views/rooms/LinkPreviewWidget.tsx index 91fb0608aaf..07d41ea534f 100644 --- a/src/components/views/rooms/LinkPreviewWidget.tsx +++ b/src/components/views/rooms/LinkPreviewWidget.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/LiveContentSummary.tsx b/src/components/views/rooms/LiveContentSummary.tsx index 0d921194119..3ffcc6c0ec0 100644 --- a/src/components/views/rooms/LiveContentSummary.tsx +++ b/src/components/views/rooms/LiveContentSummary.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/MemberList.tsx b/src/components/views/rooms/MemberList.tsx index 5587b56bf82..b7a241c0eba 100644 --- a/src/components/views/rooms/MemberList.tsx +++ b/src/components/views/rooms/MemberList.tsx @@ -5,7 +5,7 @@ Copyright 2017, 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/MemberTile.tsx b/src/components/views/rooms/MemberTile.tsx index acb2e5153ba..04006dc70e1 100644 --- a/src/components/views/rooms/MemberTile.tsx +++ b/src/components/views/rooms/MemberTile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/MessageComposer.tsx b/src/components/views/rooms/MessageComposer.tsx index f5716d728b6..3cab66201a0 100644 --- a/src/components/views/rooms/MessageComposer.tsx +++ b/src/components/views/rooms/MessageComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -128,7 +128,7 @@ export class MessageComposer extends React.Component { super(props, context); this.context = context; // otherwise React will only set it prior to render due to type def above - const isWysiwygLabEnabled = SettingsStore.getValue("feature_wysiwyg_composer"); + const isWysiwygLabEnabled = SettingsStore.getValue("feature_wysiwyg_composer"); let isRichTextEnabled = true; let initialComposerContent = ""; if (isWysiwygLabEnabled) { diff --git a/src/components/views/rooms/MessageComposerButtons.tsx b/src/components/views/rooms/MessageComposerButtons.tsx index 19b86834dd7..b70c39fb024 100644 --- a/src/components/views/rooms/MessageComposerButtons.tsx +++ b/src/components/views/rooms/MessageComposerButtons.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -54,7 +54,7 @@ const MessageComposerButtons: React.FC = (props: IProps) => { const matrixClient = useContext(MatrixClientContext); const { room, narrow } = useScopedRoomContext("room", "narrow"); - const isWysiwygLabEnabled = useSettingValue("feature_wysiwyg_composer"); + const isWysiwygLabEnabled = useSettingValue("feature_wysiwyg_composer"); if (!matrixClient || !room || props.haveRecording) { return null; diff --git a/src/components/views/rooms/MessageComposerFormatBar.tsx b/src/components/views/rooms/MessageComposerFormatBar.tsx index 0ab359d9ddd..855c7c1d40c 100644 --- a/src/components/views/rooms/MessageComposerFormatBar.tsx +++ b/src/components/views/rooms/MessageComposerFormatBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/NewRoomIntro.tsx b/src/components/views/rooms/NewRoomIntro.tsx index a5577ee372f..cb15917e37f 100644 --- a/src/components/views/rooms/NewRoomIntro.tsx +++ b/src/components/views/rooms/NewRoomIntro.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/NotificationBadge.tsx b/src/components/views/rooms/NotificationBadge.tsx index 6825ea8e43f..f2fe9b08868 100644 --- a/src/components/views/rooms/NotificationBadge.tsx +++ b/src/components/views/rooms/NotificationBadge.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/NotificationBadge/StatelessNotificationBadge.tsx b/src/components/views/rooms/NotificationBadge/StatelessNotificationBadge.tsx index 597f6d599bb..7031814607f 100644 --- a/src/components/views/rooms/NotificationBadge/StatelessNotificationBadge.tsx +++ b/src/components/views/rooms/NotificationBadge/StatelessNotificationBadge.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/NotificationBadge/UnreadNotificationBadge.tsx b/src/components/views/rooms/NotificationBadge/UnreadNotificationBadge.tsx index dee861f11c2..1c75b34704b 100644 --- a/src/components/views/rooms/NotificationBadge/UnreadNotificationBadge.tsx +++ b/src/components/views/rooms/NotificationBadge/UnreadNotificationBadge.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/PinnedEventTile.tsx b/src/components/views/rooms/PinnedEventTile.tsx index 217571df95f..42cc21026f5 100644 --- a/src/components/views/rooms/PinnedEventTile.tsx +++ b/src/components/views/rooms/PinnedEventTile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/PinnedMessageBanner.tsx b/src/components/views/rooms/PinnedMessageBanner.tsx index 32000d57925..4ba9e0a40c6 100644 --- a/src/components/views/rooms/PinnedMessageBanner.tsx +++ b/src/components/views/rooms/PinnedMessageBanner.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/components/views/rooms/PresenceLabel.tsx b/src/components/views/rooms/PresenceLabel.tsx index de7a46c6666..17197abce3a 100644 --- a/src/components/views/rooms/PresenceLabel.tsx +++ b/src/components/views/rooms/PresenceLabel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ReadReceiptGroup.tsx b/src/components/views/rooms/ReadReceiptGroup.tsx index ea60518f4b2..e97171493dd 100644 --- a/src/components/views/rooms/ReadReceiptGroup.tsx +++ b/src/components/views/rooms/ReadReceiptGroup.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ReadReceiptMarker.tsx b/src/components/views/rooms/ReadReceiptMarker.tsx index edfad13fc27..9d4feb10c40 100644 --- a/src/components/views/rooms/ReadReceiptMarker.tsx +++ b/src/components/views/rooms/ReadReceiptMarker.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ReplyPreview.tsx b/src/components/views/rooms/ReplyPreview.tsx index 7851f7914d6..f426a924b87 100644 --- a/src/components/views/rooms/ReplyPreview.tsx +++ b/src/components/views/rooms/ReplyPreview.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ReplyTile.tsx b/src/components/views/rooms/ReplyTile.tsx index 6841d984dea..73352a806e5 100644 --- a/src/components/views/rooms/ReplyTile.tsx +++ b/src/components/views/rooms/ReplyTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/RoomBreadcrumbs.tsx b/src/components/views/rooms/RoomBreadcrumbs.tsx index bb787d509a9..40290358f54 100644 --- a/src/components/views/rooms/RoomBreadcrumbs.tsx +++ b/src/components/views/rooms/RoomBreadcrumbs.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/RoomContextDetails.tsx b/src/components/views/rooms/RoomContextDetails.tsx index d341c6fbbf0..cd6ca327c06 100644 --- a/src/components/views/rooms/RoomContextDetails.tsx +++ b/src/components/views/rooms/RoomContextDetails.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/RoomHeader.tsx b/src/components/views/rooms/RoomHeader.tsx index d133587fc92..afe68ee5bec 100644 --- a/src/components/views/rooms/RoomHeader.tsx +++ b/src/components/views/rooms/RoomHeader.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -310,78 +310,78 @@ export default function RoomHeader({ - - {additionalButtons?.map((props) => { - const label = props.label(); - return ( - - { - event.stopPropagation(); - props.onClick(); - }} - > - {typeof props.icon === "function" ? props.icon() : props.icon} - - - ); - })} + {additionalButtons?.map((props) => { + const label = props.label(); - {isViewingCall && } - - {hasActiveCallSession && !isConnectedToCall && !isViewingCall ? ( - joinCallButton - ) : ( - <> - {!isVideoRoom && videoCallButton} - {!useElementCallExclusively && !isVideoRoom && voiceCallButton} - - )} + return ( + + { + event.stopPropagation(); + props.onClick(); + }} + > + {typeof props.icon === "function" ? props.icon() : props.icon} + + + ); + })} + + {isViewingCall && } + + {hasActiveCallSession && !isConnectedToCall && !isViewingCall ? ( + joinCallButton + ) : ( + <> + {!isVideoRoom && videoCallButton} + {!useElementCallExclusively && !isVideoRoom && voiceCallButton} + + )} - + {showChatButton && } + + + { + evt.stopPropagation(); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.ThreadPanel); + PosthogTrackers.trackInteraction("WebRoomHeaderButtonsThreadsButton", evt); + }} + aria-label={_t("common|threads")} + > + + + + {notificationsEnabled && ( + { evt.stopPropagation(); - RightPanelStore.instance.showOrHidePhase(RightPanelPhases.RoomSummary); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.NotificationPanel); }} - aria-label={_t("right_panel|room_summary_card|title")} + aria-label={_t("notifications|enable_prompt_toast_title")} > - + + )} - {showChatButton && } + + { + evt.stopPropagation(); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.RoomSummary); + }} + aria-label={_t("right_panel|room_summary_card|title")} + > + + + - - { - evt.stopPropagation(); - RightPanelStore.instance.showOrHidePhase(RightPanelPhases.ThreadPanel); - PosthogTrackers.trackInteraction("WebRoomHeaderButtonsThreadsButton", evt); - }} - aria-label={_t("common|threads")} - > - - - - {notificationsEnabled && ( - - { - evt.stopPropagation(); - RightPanelStore.instance.showOrHidePhase(RightPanelPhases.NotificationPanel); - }} - aria-label={_t("notifications|enable_prompt_toast_title")} - > - - - - )} - {!isDirectMessage && ( Copyright 2015-2017 , 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/RoomTileCallSummary.tsx b/src/components/views/rooms/RoomTileCallSummary.tsx index d97ae1b71e8..8c1db5f34ba 100644 --- a/src/components/views/rooms/RoomTileCallSummary.tsx +++ b/src/components/views/rooms/RoomTileCallSummary.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/RoomTileSubtitle.tsx b/src/components/views/rooms/RoomTileSubtitle.tsx index 479b9c4f717..883dc5db0d2 100644 --- a/src/components/views/rooms/RoomTileSubtitle.tsx +++ b/src/components/views/rooms/RoomTileSubtitle.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/RoomUpgradeWarningBar.tsx b/src/components/views/rooms/RoomUpgradeWarningBar.tsx index e92be96cb20..3b5685c2299 100644 --- a/src/components/views/rooms/RoomUpgradeWarningBar.tsx +++ b/src/components/views/rooms/RoomUpgradeWarningBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/SearchResultTile.tsx b/src/components/views/rooms/SearchResultTile.tsx index 94f5e6da9db..825a5d235f9 100644 --- a/src/components/views/rooms/SearchResultTile.tsx +++ b/src/components/views/rooms/SearchResultTile.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. Copyright 2015 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/SendMessageComposer.tsx b/src/components/views/rooms/SendMessageComposer.tsx index b3767cbd2a0..d12a84e0c27 100644 --- a/src/components/views/rooms/SendMessageComposer.tsx +++ b/src/components/views/rooms/SendMessageComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/Stickerpicker.tsx b/src/components/views/rooms/Stickerpicker.tsx index ad1b11f3688..448e05ac551 100644 --- a/src/components/views/rooms/Stickerpicker.tsx +++ b/src/components/views/rooms/Stickerpicker.tsx @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ThirdPartyMemberInfo.tsx b/src/components/views/rooms/ThirdPartyMemberInfo.tsx index df008199cdf..cee38fc078a 100644 --- a/src/components/views/rooms/ThirdPartyMemberInfo.tsx +++ b/src/components/views/rooms/ThirdPartyMemberInfo.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/ThreadSummary.tsx b/src/components/views/rooms/ThreadSummary.tsx index ac23331f66d..1ec6a56e78f 100644 --- a/src/components/views/rooms/ThreadSummary.tsx +++ b/src/components/views/rooms/ThreadSummary.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/TopUnreadMessagesBar.tsx b/src/components/views/rooms/TopUnreadMessagesBar.tsx index b90c69f8573..f9053cc31a2 100644 --- a/src/components/views/rooms/TopUnreadMessagesBar.tsx +++ b/src/components/views/rooms/TopUnreadMessagesBar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/UserIdentityWarning.tsx b/src/components/views/rooms/UserIdentityWarning.tsx index 564ab719875..cb2f1e792d6 100644 --- a/src/components/views/rooms/UserIdentityWarning.tsx +++ b/src/components/views/rooms/UserIdentityWarning.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -103,12 +103,17 @@ export const UserIdentityWarning: React.FC = ({ room } if (currentPrompt && membersNeedingApproval.has(currentPrompt.userId)) return currentPrompt; if (membersNeedingApproval.size === 0) { + if (currentPrompt) { + // If we were previously showing a warning, log that we've stopped doing so. + logger.debug("UserIdentityWarning: no users left that need approval"); + } return undefined; } // We pick the user with the smallest user ID. const keys = Array.from(membersNeedingApproval.keys()).sort((a, b) => a.localeCompare(b)); const selection = membersNeedingApproval.get(keys[0]!); + logger.debug(`UserIdentityWarning: now warning about user ${selection?.userId}`); return selection; }); }, []); @@ -132,6 +137,9 @@ export const UserIdentityWarning: React.FC = ({ room } // initialising, and we want to start by displaying a warning // for the user with the smallest ID. if (initialisedRef.current === InitialisationStatus.Completed) { + logger.debug( + `UserIdentityWarning: user ${userId} now needs approval; approval-pending list now [${Array.from(membersNeedingApprovalRef.current.keys())}]`, + ); updateCurrentPrompt(); } }, @@ -173,6 +181,9 @@ export const UserIdentityWarning: React.FC = ({ room } const removeMemberNeedingApproval = useCallback( (userId: string): void => { membersNeedingApprovalRef.current.delete(userId); + logger.debug( + `UserIdentityWarning: user ${userId} no longer needs approval; approval-pending list now [${Array.from(membersNeedingApprovalRef.current.keys())}]`, + ); updateCurrentPrompt(); }, [updateCurrentPrompt], @@ -195,6 +206,9 @@ export const UserIdentityWarning: React.FC = ({ room } const members = await room.getEncryptionTargetMembers(); await addMembersWhoNeedApproval(members); + logger.info( + `Initialised UserIdentityWarning component for room ${room.roomId} with approval-pending list [${Array.from(membersNeedingApprovalRef.current.keys())}]`, + ); updateCurrentPrompt(); initialisedRef.current = InitialisationStatus.Completed; }, [crypto, room, addMembersWhoNeedApproval, updateCurrentPrompt]); diff --git a/src/components/views/rooms/VoiceRecordComposerTile.tsx b/src/components/views/rooms/VoiceRecordComposerTile.tsx index a8335a9902b..486c9475bc2 100644 --- a/src/components/views/rooms/VoiceRecordComposerTile.tsx +++ b/src/components/views/rooms/VoiceRecordComposerTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/WhoIsTypingTile.tsx b/src/components/views/rooms/WhoIsTypingTile.tsx index 85cf4f6dd67..7c0c53c7a2e 100644 --- a/src/components/views/rooms/WhoIsTypingTile.tsx +++ b/src/components/views/rooms/WhoIsTypingTile.tsx @@ -2,7 +2,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/ComposerContext.ts b/src/components/views/rooms/wysiwyg_composer/ComposerContext.ts index 3babdfb9378..cfd8e6fa802 100644 --- a/src/components/views/rooms/wysiwyg_composer/ComposerContext.ts +++ b/src/components/views/rooms/wysiwyg_composer/ComposerContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/DynamicImportWysiwygComposer.tsx b/src/components/views/rooms/wysiwyg_composer/DynamicImportWysiwygComposer.tsx index 46210949f5c..2cde64a33df 100644 --- a/src/components/views/rooms/wysiwyg_composer/DynamicImportWysiwygComposer.tsx +++ b/src/components/views/rooms/wysiwyg_composer/DynamicImportWysiwygComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/EditWysiwygComposer.tsx b/src/components/views/rooms/wysiwyg_composer/EditWysiwygComposer.tsx index 98597c73609..25822b91766 100644 --- a/src/components/views/rooms/wysiwyg_composer/EditWysiwygComposer.tsx +++ b/src/components/views/rooms/wysiwyg_composer/EditWysiwygComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/SendWysiwygComposer.tsx b/src/components/views/rooms/wysiwyg_composer/SendWysiwygComposer.tsx index 7f790978f63..64785669695 100644 --- a/src/components/views/rooms/wysiwyg_composer/SendWysiwygComposer.tsx +++ b/src/components/views/rooms/wysiwyg_composer/SendWysiwygComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/EditionButtons.tsx b/src/components/views/rooms/wysiwyg_composer/components/EditionButtons.tsx index fccd4b7f242..0a6a78210c3 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/EditionButtons.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/EditionButtons.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/Editor.tsx b/src/components/views/rooms/wysiwyg_composer/components/Editor.tsx index 7e3d0f4d65a..79bc19445ca 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/Editor.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/Editor.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/Emoji.tsx b/src/components/views/rooms/wysiwyg_composer/components/Emoji.tsx index 9ab3d210abc..94d7603c6b4 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/Emoji.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/Emoji.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx b/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx index f02f1a4c6b1..e541d17e0dd 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx b/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx index 3b5bfb7ad4e..31f153dbec8 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/PlainTextComposer.tsx b/src/components/views/rooms/wysiwyg_composer/components/PlainTextComposer.tsx index 787f0dd889d..c826bbc98b5 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/PlainTextComposer.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/PlainTextComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -45,7 +45,7 @@ export function PlainTextComposer({ rightComponent, eventRelation, }: PlainTextComposerProps): JSX.Element { - const isAutoReplaceEmojiEnabled = useSettingValue("MessageComposerInput.autoReplaceEmoji"); + const isAutoReplaceEmojiEnabled = useSettingValue("MessageComposerInput.autoReplaceEmoji"); const { ref: editorRef, autocompleteRef, diff --git a/src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete.tsx b/src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete.tsx index 4d06adcd4e7..b006ec2d352 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/components/WysiwygComposer.tsx b/src/components/views/rooms/wysiwyg_composer/components/WysiwygComposer.tsx index f1e42ce091f..e7dd0213a4c 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/WysiwygComposer.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/WysiwygComposer.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -61,7 +61,7 @@ export const WysiwygComposer = memo(function WysiwygComposer({ const inputEventProcessor = useInputEventProcessor(onSend, autocompleteRef, initialContent, eventRelation); - const isAutoReplaceEmojiEnabled = useSettingValue("MessageComposerInput.autoReplaceEmoji"); + const isAutoReplaceEmojiEnabled = useSettingValue("MessageComposerInput.autoReplaceEmoji"); const emojiSuggestions = useMemo(() => getEmojiSuggestions(isAutoReplaceEmojiEnabled), [isAutoReplaceEmojiEnabled]); const { ref, isWysiwygReady, content, actionStates, wysiwyg, suggestion, messageContent } = useWysiwyg({ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useComposerFunctions.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useComposerFunctions.ts index aa7c672af3a..f5219c6543d 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useComposerFunctions.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useComposerFunctions.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useEditing.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useEditing.ts index 20f394e8a3e..8fbd856200a 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useEditing.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useEditing.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useInitialContent.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useInitialContent.ts index 3a3799496b8..25afcd431f1 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useInitialContent.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useInitialContent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useInputEventProcessor.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useInputEventProcessor.ts index cab3bdefb85..26a72f4b96f 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useInputEventProcessor.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useInputEventProcessor.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -36,7 +36,7 @@ export function useInputEventProcessor( const roomContext = useScopedRoomContext("liveTimeline", "room", "replyToEvent", "timelineRenderingType"); const composerContext = useComposerContext(); const mxClient = useMatrixClientContext(); - const isCtrlEnterToSend = useSettingValue("MessageComposerInput.ctrlEnterToSend"); + const isCtrlEnterToSend = useSettingValue("MessageComposerInput.ctrlEnterToSend"); return useCallback( (event: WysiwygEvent, composer: Wysiwyg, editor: HTMLElement) => { diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useIsExpanded.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useIsExpanded.ts index 09e47d7b0c1..9941dda7bb7 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useIsExpanded.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useIsExpanded.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useIsFocused.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useIsFocused.ts index de9f758dc66..13919397131 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useIsFocused.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useIsFocused.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextInitialization.ts b/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextInitialization.ts index 6adf43d9a42..52613b6b2ae 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextInitialization.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextInitialization.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners.ts b/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners.ts index 1dc23cc274a..6dfae53efed 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -128,7 +128,7 @@ export function usePlainTextListeners( [eventRelation, mxClient, onInput, roomContext], ); - const enterShouldSend = !useSettingValue("MessageComposerInput.ctrlEnterToSend"); + const enterShouldSend = !useSettingValue("MessageComposerInput.ctrlEnterToSend"); const onKeyDown = useCallback( (event: KeyboardEvent) => { // we need autocomplete to take priority when it is open for using enter to select diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useSelection.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useSelection.ts index aa541afa568..0689c466f65 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useSelection.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useSelection.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useSetCursorPosition.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useSetCursorPosition.ts index 01d42378a8a..8fd39111ff6 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useSetCursorPosition.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useSetCursorPosition.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useSuggestion.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useSuggestion.ts index 5b4957a9c58..6e4473f4545 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useSuggestion.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useSuggestion.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygEditActionHandler.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygEditActionHandler.ts index eb76d77af5d..8761b8addb5 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygEditActionHandler.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygEditActionHandler.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygSendActionHandler.ts b/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygSendActionHandler.ts index d11f3498fd7..cef635ef5b2 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygSendActionHandler.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/useWysiwygSendActionHandler.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/hooks/utils.ts b/src/components/views/rooms/wysiwyg_composer/hooks/utils.ts index 3345c9f474a..52a61ac0e3d 100644 --- a/src/components/views/rooms/wysiwyg_composer/hooks/utils.ts +++ b/src/components/views/rooms/wysiwyg_composer/hooks/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/index.ts b/src/components/views/rooms/wysiwyg_composer/index.ts index 82d7d2a9046..281ea634f80 100644 --- a/src/components/views/rooms/wysiwyg_composer/index.ts +++ b/src/components/views/rooms/wysiwyg_composer/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/types.ts b/src/components/views/rooms/wysiwyg_composer/types.ts index d38704f3460..f6ce2619094 100644 --- a/src/components/views/rooms/wysiwyg_composer/types.ts +++ b/src/components/views/rooms/wysiwyg_composer/types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/utils/autocomplete.ts b/src/components/views/rooms/wysiwyg_composer/utils/autocomplete.ts index d97b07adee7..529f15cff39 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/autocomplete.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/autocomplete.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/utils/createMessageContent.ts b/src/components/views/rooms/wysiwyg_composer/utils/createMessageContent.ts index 58d09b3d128..5778faa61a4 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/createMessageContent.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/createMessageContent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -66,7 +66,7 @@ export async function createMessageContent( // TODO markdown support - const isMarkdownEnabled = SettingsStore.getValue("MessageComposerInput.useMarkdown"); + const isMarkdownEnabled = SettingsStore.getValue("MessageComposerInput.useMarkdown"); const formattedBody = isHTML ? message : isMarkdownEnabled ? await plainToRich(message, true) : null; if (formattedBody) { diff --git a/src/components/views/rooms/wysiwyg_composer/utils/editing.ts b/src/components/views/rooms/wysiwyg_composer/utils/editing.ts index 462763b8f46..fd5c7d1997b 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/editing.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/editing.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/utils/event.ts b/src/components/views/rooms/wysiwyg_composer/utils/event.ts index 45c6b1cac34..5860ae9ec6b 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/event.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/event.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/utils/isContentModified.ts b/src/components/views/rooms/wysiwyg_composer/utils/isContentModified.ts index 6ffbb9b69a3..3821ca3512f 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/isContentModified.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/isContentModified.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/utils/message.ts b/src/components/views/rooms/wysiwyg_composer/utils/message.ts index b7fca8ecb4a..8f95bf8da14 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/message.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/message.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/rooms/wysiwyg_composer/utils/selection.ts b/src/components/views/rooms/wysiwyg_composer/utils/selection.ts index f526675213a..95da5ef66bf 100644 --- a/src/components/views/rooms/wysiwyg_composer/utils/selection.ts +++ b/src/components/views/rooms/wysiwyg_composer/utils/selection.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/AddPrivilegedUsers.tsx b/src/components/views/settings/AddPrivilegedUsers.tsx index c19c8fdddc8..5276e825fd7 100644 --- a/src/components/views/settings/AddPrivilegedUsers.tsx +++ b/src/components/views/settings/AddPrivilegedUsers.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/AddRemoveThreepids.tsx b/src/components/views/settings/AddRemoveThreepids.tsx index 8b2b61bb9ac..704f2a12927 100644 --- a/src/components/views/settings/AddRemoveThreepids.tsx +++ b/src/components/views/settings/AddRemoveThreepids.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/AvatarSetting.tsx b/src/components/views/settings/AvatarSetting.tsx index ee47094cf93..2ed4d065687 100644 --- a/src/components/views/settings/AvatarSetting.tsx +++ b/src/components/views/settings/AvatarSetting.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/BridgeTile.tsx b/src/components/views/settings/BridgeTile.tsx index 6ae860aa0aa..ad9088116cc 100644 --- a/src/components/views/settings/BridgeTile.tsx +++ b/src/components/views/settings/BridgeTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/ChangePassword.tsx b/src/components/views/settings/ChangePassword.tsx index 9461f20d8a0..07a13cd3476 100644 --- a/src/components/views/settings/ChangePassword.tsx +++ b/src/components/views/settings/ChangePassword.tsx @@ -2,7 +2,7 @@ Copyright 2018-2024 New Vector Ltd. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/CrossSigningPanel.tsx b/src/components/views/settings/CrossSigningPanel.tsx index a91238848e9..9ec9e9f6c18 100644 --- a/src/components/views/settings/CrossSigningPanel.tsx +++ b/src/components/views/settings/CrossSigningPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/CryptographyPanel.tsx b/src/components/views/settings/CryptographyPanel.tsx index fbd696f243f..beb08ab1e92 100644 --- a/src/components/views/settings/CryptographyPanel.tsx +++ b/src/components/views/settings/CryptographyPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/EventIndexPanel.tsx b/src/components/views/settings/EventIndexPanel.tsx index 0051c4dc3a0..41845eb94ea 100644 --- a/src/components/views/settings/EventIndexPanel.tsx +++ b/src/components/views/settings/EventIndexPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -214,7 +214,7 @@ export default class EventIndexPanel extends React.Component<{}, IState> { {this.state.enabling ? : _t("settings|security|message_search_failed")} - {EventIndexPeg.error && ( + {EventIndexPeg.error ? (
{_t("common|advanced")} @@ -230,7 +230,7 @@ export default class EventIndexPanel extends React.Component<{}, IState> {

- )} + ) : undefined} ); } diff --git a/src/components/views/settings/FontScalingPanel.tsx b/src/components/views/settings/FontScalingPanel.tsx index edc6c66645e..e1a7f4902fe 100644 --- a/src/components/views/settings/FontScalingPanel.tsx +++ b/src/components/views/settings/FontScalingPanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -47,7 +47,7 @@ export default class FontScalingPanel extends React.Component { super(props); this.state = { - fontSizeDelta: SettingsStore.getValue("fontSizeDelta", null), + fontSizeDelta: SettingsStore.getValue("fontSizeDelta", null), browserFontSize: FontWatcher.getBrowserDefaultFontSize(), useCustomFontSize: SettingsStore.getValue("useCustomFontSize"), layout: SettingsStore.getValue("layout"), diff --git a/src/components/views/settings/ImageSizePanel.tsx b/src/components/views/settings/ImageSizePanel.tsx index dca21d89e2f..8079ea16543 100644 --- a/src/components/views/settings/ImageSizePanel.tsx +++ b/src/components/views/settings/ImageSizePanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/IntegrationManager.tsx b/src/components/views/settings/IntegrationManager.tsx index 3a31a9e9c85..28a5130b25b 100644 --- a/src/components/views/settings/IntegrationManager.tsx +++ b/src/components/views/settings/IntegrationManager.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/JoinRuleSettings.tsx b/src/components/views/settings/JoinRuleSettings.tsx index a6c1e91241c..023b68c282c 100644 --- a/src/components/views/settings/JoinRuleSettings.tsx +++ b/src/components/views/settings/JoinRuleSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/KeyboardShortcut.tsx b/src/components/views/settings/KeyboardShortcut.tsx index 4f0973b1027..f84c89208ae 100644 --- a/src/components/views/settings/KeyboardShortcut.tsx +++ b/src/components/views/settings/KeyboardShortcut.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/LayoutSwitcher.tsx b/src/components/views/settings/LayoutSwitcher.tsx index bbf090aa383..075c92fce77 100644 --- a/src/components/views/settings/LayoutSwitcher.tsx +++ b/src/components/views/settings/LayoutSwitcher.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -70,7 +70,7 @@ interface LayoutRadioProps { * @param label */ function LayoutRadio({ layout, label }: LayoutRadioProps): JSX.Element { - const currentLayout = useSettingValue("layout"); + const currentLayout = useSettingValue("layout"); const eventTileInfo = useEventTileInfo(); return ( @@ -134,8 +134,8 @@ function useEventTileInfo(): EventTileInfo { * A toggleable setting to enable or disable the compact layout. */ function ToggleCompactLayout(): JSX.Element { - const compactLayoutEnabled = useSettingValue("useCompactLayout"); - const layout = useSettingValue("layout"); + const compactLayoutEnabled = useSettingValue("useCompactLayout"); + const layout = useSettingValue("layout"); return ( -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/ThemeChoicePanel.tsx b/src/components/views/settings/ThemeChoicePanel.tsx index 83f17a2f7be..0e3926d7e8e 100644 --- a/src/components/views/settings/ThemeChoicePanel.tsx +++ b/src/components/views/settings/ThemeChoicePanel.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -40,7 +40,7 @@ import { useSettingValue } from "../../../hooks/useSettings"; export function ThemeChoicePanel(): JSX.Element { const themeState = useTheme(); const themeWatcher = useRef(new ThemeWatcher()); - const customThemeEnabled = useSettingValue("feature_custom_themes"); + const customThemeEnabled = useSettingValue("feature_custom_themes"); return ( @@ -159,7 +159,7 @@ function ThemeSelectors({ theme, disabled }: ThemeSelectorProps): JSX.Element { * Return all the available themes */ function useThemes(): Array { - const customThemes = useSettingValue("custom_themes"); + const customThemes = useSettingValue("custom_themes"); return useMemo(() => { // Put the custom theme into a map // To easily find the theme by name when going through the themes list @@ -239,8 +239,7 @@ function CustomTheme({ theme }: CustomThemeProps): JSX.Element { // Get the custom themes and do a cheap clone // To avoid to mutate the original array in the settings - const currentThemes = - SettingsStore.getValue("custom_themes").map((t) => t) || []; + const currentThemes = SettingsStore.getValue("custom_themes").map((t) => t) || []; try { const r = await fetch(customTheme); @@ -294,7 +293,7 @@ interface CustomThemeListProps { * List of the custom themes */ function CustomThemeList({ theme: currentTheme }: CustomThemeListProps): JSX.Element { - const customThemes = useSettingValue("custom_themes") || []; + const customThemes = useSettingValue("custom_themes") || []; return (
    @@ -309,8 +308,7 @@ function CustomThemeList({ theme: currentTheme }: CustomThemeListProps): JSX.Ele onClick={async () => { // Get the custom themes and do a cheap clone // To avoid to mutate the original array in the settings - const currentThemes = - SettingsStore.getValue("custom_themes").map((t) => t) || []; + const currentThemes = SettingsStore.getValue("custom_themes").map((t) => t) || []; // Remove the theme from the list const newThemes = currentThemes.filter((t) => t.name !== theme.name); diff --git a/src/components/views/settings/UpdateCheckButton.tsx b/src/components/views/settings/UpdateCheckButton.tsx index 3b2c9bfa681..e283373eb99 100644 --- a/src/components/views/settings/UpdateCheckButton.tsx +++ b/src/components/views/settings/UpdateCheckButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/UserPersonalInfoSettings.tsx b/src/components/views/settings/UserPersonalInfoSettings.tsx index e33aa87781d..c08c0f636fe 100644 --- a/src/components/views/settings/UserPersonalInfoSettings.tsx +++ b/src/components/views/settings/UserPersonalInfoSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/UserProfileSettings.tsx b/src/components/views/settings/UserProfileSettings.tsx index 83a00c122d4..5fba36ad015 100644 --- a/src/components/views/settings/UserProfileSettings.tsx +++ b/src/components/views/settings/UserProfileSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/CurrentDeviceSection.tsx b/src/components/views/settings/devices/CurrentDeviceSection.tsx index 153a9c5d4bd..245c244c90f 100644 --- a/src/components/views/settings/devices/CurrentDeviceSection.tsx +++ b/src/components/views/settings/devices/CurrentDeviceSection.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -34,6 +34,7 @@ interface Props { onSignOutCurrentDevice: () => void; signOutAllOtherSessions?: () => void; saveDeviceName: (deviceName: string) => Promise; + delegatedAuthAccountUrl?: string; } type CurrentDeviceSectionHeadingProps = Pick< @@ -90,6 +91,7 @@ const CurrentDeviceSection: React.FC = ({ onSignOutCurrentDevice, signOutAllOtherSessions, saveDeviceName, + delegatedAuthAccountUrl, }) => { const [isExpanded, setIsExpanded] = useState(false); @@ -126,6 +128,8 @@ const CurrentDeviceSection: React.FC = ({ onSignOutDevice={onSignOutCurrentDevice} saveDeviceName={saveDeviceName} className="mx_CurrentDeviceSection_deviceDetails" + delegatedAuthAccountUrl={delegatedAuthAccountUrl} + isCurrentDevice /> ) : ( <> diff --git a/src/components/views/settings/devices/DeviceDetailHeading.tsx b/src/components/views/settings/devices/DeviceDetailHeading.tsx index 86c9b929cf9..945f5f204af 100644 --- a/src/components/views/settings/devices/DeviceDetailHeading.tsx +++ b/src/components/views/settings/devices/DeviceDetailHeading.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceDetails.tsx b/src/components/views/settings/devices/DeviceDetails.tsx index 1a418f5dd52..a97a1b1bfe8 100644 --- a/src/components/views/settings/devices/DeviceDetails.tsx +++ b/src/components/views/settings/devices/DeviceDetails.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -18,6 +18,7 @@ import ToggleSwitch from "../../elements/ToggleSwitch"; import { DeviceDetailHeading } from "./DeviceDetailHeading"; import { DeviceVerificationStatusCard } from "./DeviceVerificationStatusCard"; import { ExtendedDevice } from "./types"; +import { getManageDeviceUrl } from "../../../../utils/oidc/urls.ts"; interface Props { device: ExtendedDevice; @@ -31,6 +32,7 @@ interface Props { supportsMSC3881?: boolean; className?: string; isCurrentDevice?: boolean; + delegatedAuthAccountUrl?: string; } interface MetadataTable { @@ -39,6 +41,22 @@ interface MetadataTable { values: { label: string; value?: string | React.ReactNode }[]; } +function isPushNotificationsEnabled(pusher?: IPusher, notificationSettings?: LocalNotificationSettings): boolean { + if (pusher) return !!pusher[PUSHER_ENABLED.name]; + if (notificationSettings) return !notificationSettings.is_silenced; + return true; +} + +function isCheckboxDisabled( + pusher?: IPusher, + notificationSettings?: LocalNotificationSettings, + supportsMSC3881?: boolean, +): boolean { + if (notificationSettings) return false; + if (pusher && !supportsMSC3881) return true; + return false; +} + const DeviceDetails: React.FC = ({ device, pusher, @@ -51,6 +69,7 @@ const DeviceDetails: React.FC = ({ supportsMSC3881, className, isCurrentDevice, + delegatedAuthAccountUrl, }) => { const metadata: MetadataTable[] = [ { @@ -95,18 +114,6 @@ const DeviceDetails: React.FC = ({ const showPushNotificationSection = !!pusher || !!localNotificationSettings; - function isPushNotificationsEnabled(pusher?: IPusher, notificationSettings?: LocalNotificationSettings): boolean { - if (pusher) return !!pusher[PUSHER_ENABLED.name]; - if (localNotificationSettings) return !localNotificationSettings.is_silenced; - return true; - } - - function isCheckboxDisabled(pusher?: IPusher, notificationSettings?: LocalNotificationSettings): boolean { - if (localNotificationSettings) return false; - if (pusher && !supportsMSC3881) return true; - return false; - } - return (
    @@ -117,32 +124,34 @@ const DeviceDetails: React.FC = ({ isCurrentDevice={isCurrentDevice} />
    -
    -

    {_t("settings|sessions|details_heading")}

    - {metadata.map(({ heading, values, id }, index) => ( - - {heading && ( - - - - - - )} - - {values.map(({ label, value }) => ( - - - - - ))} - -
    {heading}
    {label}{value}
    - ))} -
    + {!delegatedAuthAccountUrl && ( +
    +

    {_t("settings|sessions|details_heading")}

    + {metadata.map(({ heading, values, id }, index) => ( + + {heading && ( + + + + + + )} + + {values.map(({ label, value }) => ( + + + + + ))} + +
    {heading}
    {label}{value}
    + ))} +
    + )} {showPushNotificationSection && (
    = ({ // For backwards compatibility, if `enabled` is missing // default to `true` checked={isPushNotificationsEnabled(pusher, localNotificationSettings)} - disabled={isCheckboxDisabled(pusher, localNotificationSettings)} + disabled={isCheckboxDisabled(pusher, localNotificationSettings, supportsMSC3881)} onChange={(checked) => setPushNotifications?.(device.device_id, checked)} title={_t("settings|sessions|push_toggle")} data-testid="device-detail-push-notification-checkbox" @@ -166,17 +175,30 @@ const DeviceDetails: React.FC = ({
    )}
    - - - {_t("settings|sessions|sign_out")} - {isSigningOut && } - - + {delegatedAuthAccountUrl && !isCurrentDevice ? ( + + {_t("settings|sessions|manage")} + + ) : ( + + + {_t("settings|sessions|sign_out")} + {isSigningOut && } + + + )}
    ); diff --git a/src/components/views/settings/devices/DeviceExpandDetailsButton.tsx b/src/components/views/settings/devices/DeviceExpandDetailsButton.tsx index a04430a0c23..b227ea38143 100644 --- a/src/components/views/settings/devices/DeviceExpandDetailsButton.tsx +++ b/src/components/views/settings/devices/DeviceExpandDetailsButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceMetaData.tsx b/src/components/views/settings/devices/DeviceMetaData.tsx index 08d22968f0f..be7bd119963 100644 --- a/src/components/views/settings/devices/DeviceMetaData.tsx +++ b/src/components/views/settings/devices/DeviceMetaData.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceSecurityCard.tsx b/src/components/views/settings/devices/DeviceSecurityCard.tsx index 1f47135b00a..2de343d51be 100644 --- a/src/components/views/settings/devices/DeviceSecurityCard.tsx +++ b/src/components/views/settings/devices/DeviceSecurityCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceSecurityLearnMore.tsx b/src/components/views/settings/devices/DeviceSecurityLearnMore.tsx index bc2e0be43e2..6a2ca55d430 100644 --- a/src/components/views/settings/devices/DeviceSecurityLearnMore.tsx +++ b/src/components/views/settings/devices/DeviceSecurityLearnMore.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceTile.tsx b/src/components/views/settings/devices/DeviceTile.tsx index 6463af48ce1..79d0c720df3 100644 --- a/src/components/views/settings/devices/DeviceTile.tsx +++ b/src/components/views/settings/devices/DeviceTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceTypeIcon.tsx b/src/components/views/settings/devices/DeviceTypeIcon.tsx index b9ab535e27d..c685c4c8956 100644 --- a/src/components/views/settings/devices/DeviceTypeIcon.tsx +++ b/src/components/views/settings/devices/DeviceTypeIcon.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/DeviceVerificationStatusCard.tsx b/src/components/views/settings/devices/DeviceVerificationStatusCard.tsx index 8989400e711..d57231076b3 100644 --- a/src/components/views/settings/devices/DeviceVerificationStatusCard.tsx +++ b/src/components/views/settings/devices/DeviceVerificationStatusCard.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/FilteredDeviceList.tsx b/src/components/views/settings/devices/FilteredDeviceList.tsx index e5f1a6a9a3b..bf37b095486 100644 --- a/src/components/views/settings/devices/FilteredDeviceList.tsx +++ b/src/components/views/settings/devices/FilteredDeviceList.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -41,10 +41,12 @@ interface Props { setSelectedDeviceIds: (deviceIds: ExtendedDevice["device_id"][]) => void; supportsMSC3881?: boolean | undefined; /** - * Only allow sessions to be signed out individually + * If the user's account is managed externally then sessions must be signed out individually * Removes checkboxes and multi selection header + * Removes session info as that can be seen in the account management + * Changes sign out button to be a manage button */ - disableMultipleSignout?: boolean; + delegatedAuthAccountUrl?: string; } const isDeviceSelected = ( @@ -172,6 +174,7 @@ const DeviceListItem: React.FC<{ setPushNotifications: (deviceId: string, enabled: boolean) => Promise; supportsMSC3881?: boolean | undefined; isSelectDisabled?: boolean; + delegatedAuthAccountUrl?: string; }> = ({ device, pusher, @@ -187,6 +190,7 @@ const DeviceListItem: React.FC<{ toggleSelected, supportsMSC3881, isSelectDisabled, + delegatedAuthAccountUrl, }) => { const tileContent = ( <> @@ -222,6 +226,7 @@ const DeviceListItem: React.FC<{ setPushNotifications={setPushNotifications} supportsMSC3881={supportsMSC3881} className="mx_FilteredDeviceList_deviceDetails" + delegatedAuthAccountUrl={delegatedAuthAccountUrl} /> )} @@ -250,7 +255,7 @@ export const FilteredDeviceList = forwardRef( setPushNotifications, setSelectedDeviceIds, supportsMSC3881, - disableMultipleSignout, + delegatedAuthAccountUrl, }: Props, ref: ForwardedRef, ) => { @@ -311,7 +316,7 @@ export const FilteredDeviceList = forwardRef( selectedDeviceCount={selectedDeviceIds.length} isAllSelected={isAllSelected} toggleSelectAll={toggleSelectAll} - isSelectDisabled={disableMultipleSignout} + isSelectDisabled={!!delegatedAuthAccountUrl} > {selectedDeviceIds.length ? ( <> @@ -361,7 +366,7 @@ export const FilteredDeviceList = forwardRef( isExpanded={expandedDeviceIds.includes(device.device_id)} isSigningOut={signingOutDeviceIds.includes(device.device_id)} isSelected={isDeviceSelected(device.device_id, selectedDeviceIds)} - isSelectDisabled={disableMultipleSignout} + isSelectDisabled={!!delegatedAuthAccountUrl} onDeviceExpandToggle={() => onDeviceExpandToggle(device.device_id)} onSignOutDevice={() => onSignOutDevices([device.device_id])} saveDeviceName={(deviceName: string) => saveDeviceName(device.device_id, deviceName)} @@ -373,6 +378,7 @@ export const FilteredDeviceList = forwardRef( setPushNotifications={setPushNotifications} toggleSelected={() => toggleSelection(device.device_id)} supportsMSC3881={supportsMSC3881} + delegatedAuthAccountUrl={delegatedAuthAccountUrl} /> ))} diff --git a/src/components/views/settings/devices/FilteredDeviceListHeader.tsx b/src/components/views/settings/devices/FilteredDeviceListHeader.tsx index 9cd5a285d5a..28fcec67158 100644 --- a/src/components/views/settings/devices/FilteredDeviceListHeader.tsx +++ b/src/components/views/settings/devices/FilteredDeviceListHeader.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/LoginWithQRSection.tsx b/src/components/views/settings/devices/LoginWithQRSection.tsx index 033aa8e32ab..4043d28c805 100644 --- a/src/components/views/settings/devices/LoginWithQRSection.tsx +++ b/src/components/views/settings/devices/LoginWithQRSection.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/OtherSessionsSectionHeading.tsx b/src/components/views/settings/devices/OtherSessionsSectionHeading.tsx index b5ba0cb4c47..4615c39daf2 100644 --- a/src/components/views/settings/devices/OtherSessionsSectionHeading.tsx +++ b/src/components/views/settings/devices/OtherSessionsSectionHeading.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/SecurityRecommendations.tsx b/src/components/views/settings/devices/SecurityRecommendations.tsx index c0fc8e26b80..599c3bd5b3e 100644 --- a/src/components/views/settings/devices/SecurityRecommendations.tsx +++ b/src/components/views/settings/devices/SecurityRecommendations.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/SelectableDeviceTile.tsx b/src/components/views/settings/devices/SelectableDeviceTile.tsx index 4c8747a634d..b83b2c58705 100644 --- a/src/components/views/settings/devices/SelectableDeviceTile.tsx +++ b/src/components/views/settings/devices/SelectableDeviceTile.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/deleteDevices.tsx b/src/components/views/settings/devices/deleteDevices.tsx index 4b8bc19d763..16fdca9219c 100644 --- a/src/components/views/settings/devices/deleteDevices.tsx +++ b/src/components/views/settings/devices/deleteDevices.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/filter.ts b/src/components/views/settings/devices/filter.ts index 0b252e7cde0..ba7f6f5c216 100644 --- a/src/components/views/settings/devices/filter.ts +++ b/src/components/views/settings/devices/filter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/types.ts b/src/components/views/settings/devices/types.ts index e46e43ab039..3891f6be32b 100644 --- a/src/components/views/settings/devices/types.ts +++ b/src/components/views/settings/devices/types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/devices/useOwnDevices.ts b/src/components/views/settings/devices/useOwnDevices.ts index 51a05f6242d..8cb3f9dbc18 100644 --- a/src/components/views/settings/devices/useOwnDevices.ts +++ b/src/components/views/settings/devices/useOwnDevices.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -116,7 +116,7 @@ export const useOwnDevices = (): DevicesState => { const notificationSettings = new Map(); Object.keys(devices).forEach((deviceId) => { - const eventType = `${LOCAL_NOTIFICATION_SETTINGS_PREFIX.name}.${deviceId}`; + const eventType = `${LOCAL_NOTIFICATION_SETTINGS_PREFIX.name}.${deviceId}` as const; const event = matrixClient.getAccountData(eventType); if (event) { notificationSettings.set(deviceId, event.getContent()); diff --git a/src/components/views/settings/discovery/DiscoverySettings.tsx b/src/components/views/settings/discovery/DiscoverySettings.tsx index f96b79fe8dc..28913f289d1 100644 --- a/src/components/views/settings/discovery/DiscoverySettings.tsx +++ b/src/components/views/settings/discovery/DiscoverySettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/notifications/NotificationPusherSettings.tsx b/src/components/views/settings/notifications/NotificationPusherSettings.tsx index 9e17e7b829d..d5506f7b957 100644 --- a/src/components/views/settings/notifications/NotificationPusherSettings.tsx +++ b/src/components/views/settings/notifications/NotificationPusherSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/notifications/NotificationSettings2.tsx b/src/components/views/settings/notifications/NotificationSettings2.tsx index 5f91c3874c7..babc4c8bd56 100644 --- a/src/components/views/settings/notifications/NotificationSettings2.tsx +++ b/src/components/views/settings/notifications/NotificationSettings2.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -70,9 +70,9 @@ function useHasUnreadNotifications(): boolean { export default function NotificationSettings2(): JSX.Element { const cli = useMatrixClientContext(); - const desktopNotifications = useSettingValue("notificationsEnabled"); - const desktopShowBody = useSettingValue("notificationBodyEnabled"); - const audioNotifications = useSettingValue("audioNotificationsEnabled"); + const desktopNotifications = useSettingValue("notificationsEnabled"); + const desktopShowBody = useSettingValue("notificationBodyEnabled"); + const audioNotifications = useSettingValue("audioNotificationsEnabled"); const { model, hasPendingChanges, reconcile } = useNotificationSettings(cli); diff --git a/src/components/views/settings/shared/SettingsBanner.tsx b/src/components/views/settings/shared/SettingsBanner.tsx index c35703bf16a..a5b0ac2a36a 100644 --- a/src/components/views/settings/shared/SettingsBanner.tsx +++ b/src/components/views/settings/shared/SettingsBanner.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/shared/SettingsIndent.tsx b/src/components/views/settings/shared/SettingsIndent.tsx index ee7e570d1a0..7c280311c26 100644 --- a/src/components/views/settings/shared/SettingsIndent.tsx +++ b/src/components/views/settings/shared/SettingsIndent.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/shared/SettingsSection.tsx b/src/components/views/settings/shared/SettingsSection.tsx index a42a2a9b788..fbc502e7332 100644 --- a/src/components/views/settings/shared/SettingsSection.tsx +++ b/src/components/views/settings/shared/SettingsSection.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/shared/SettingsSubsection.tsx b/src/components/views/settings/shared/SettingsSubsection.tsx index ba8d9aba6d4..cbb20f771b5 100644 --- a/src/components/views/settings/shared/SettingsSubsection.tsx +++ b/src/components/views/settings/shared/SettingsSubsection.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/shared/SettingsSubsectionHeading.tsx b/src/components/views/settings/shared/SettingsSubsectionHeading.tsx index 8c51eac0c27..61c29642a9c 100644 --- a/src/components/views/settings/shared/SettingsSubsectionHeading.tsx +++ b/src/components/views/settings/shared/SettingsSubsectionHeading.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/SettingsTab.tsx b/src/components/views/settings/tabs/SettingsTab.tsx index 7472da22e78..169a373db74 100644 --- a/src/components/views/settings/tabs/SettingsTab.tsx +++ b/src/components/views/settings/tabs/SettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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, { HTMLAttributes } from "react"; diff --git a/src/components/views/settings/tabs/room/AdvancedRoomSettingsTab.tsx b/src/components/views/settings/tabs/room/AdvancedRoomSettingsTab.tsx index 5798771e678..dbd2a635056 100644 --- a/src/components/views/settings/tabs/room/AdvancedRoomSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/AdvancedRoomSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx b/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx index 0da257607ee..ed80cc31e83 100644 --- a/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/GeneralRoomSettingsTab.tsx b/src/components/views/settings/tabs/room/GeneralRoomSettingsTab.tsx index 31c361de1bd..590b54218f7 100644 --- a/src/components/views/settings/tabs/room/GeneralRoomSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/GeneralRoomSettingsTab.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx b/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx index 9aabf1edb0d..17e2498ae71 100644 --- a/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/PeopleRoomSettingsTab.tsx b/src/components/views/settings/tabs/room/PeopleRoomSettingsTab.tsx index 768d35890a2..b374f36de1b 100644 --- a/src/components/views/settings/tabs/room/PeopleRoomSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/PeopleRoomSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Nordeck IT + Consulting GmbH -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/PollHistoryTab.tsx b/src/components/views/settings/tabs/room/PollHistoryTab.tsx index 830da280aa5..a33e132e135 100644 --- a/src/components/views/settings/tabs/room/PollHistoryTab.tsx +++ b/src/components/views/settings/tabs/room/PollHistoryTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/RolesRoomSettingsTab.tsx b/src/components/views/settings/tabs/room/RolesRoomSettingsTab.tsx index baf4b412539..e2de5c3e698 100644 --- a/src/components/views/settings/tabs/room/RolesRoomSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/RolesRoomSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/SecurityRoomSettingsTab.tsx b/src/components/views/settings/tabs/room/SecurityRoomSettingsTab.tsx index ece6a7deafc..f90dd9821d0 100644 --- a/src/components/views/settings/tabs/room/SecurityRoomSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/SecurityRoomSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/room/VoipRoomSettingsTab.tsx b/src/components/views/settings/tabs/room/VoipRoomSettingsTab.tsx index 783ea1bce3b..2a8425823b0 100644 --- a/src/components/views/settings/tabs/room/VoipRoomSettingsTab.tsx +++ b/src/components/views/settings/tabs/room/VoipRoomSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/user/AccountUserSettingsTab.tsx b/src/components/views/settings/tabs/user/AccountUserSettingsTab.tsx index cd52b2a76b2..c94eef6d2c6 100644 --- a/src/components/views/settings/tabs/user/AccountUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/AccountUserSettingsTab.tsx @@ -3,7 +3,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -186,7 +186,9 @@ const AccountUserSettingsTab: React.FC = ({ closeSettingsFn }) => { canSetDisplayName={canSetDisplayName} canSetAvatar={canSetAvatar} /> - + {(!isAccountManagedExternally || canMake3pidChanges) && ( + + )} Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/user/LabsUserSettingsTab.tsx b/src/components/views/settings/tabs/user/LabsUserSettingsTab.tsx index 54995415e2e..5cee63b48e4 100644 --- a/src/components/views/settings/tabs/user/LabsUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/LabsUserSettingsTab.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -14,7 +14,7 @@ import { SettingLevel } from "../../../../../settings/SettingLevel"; import SdkConfig from "../../../../../SdkConfig"; import BetaCard from "../../../beta/BetaCard"; import SettingsFlag from "../../../elements/SettingsFlag"; -import { LabGroup, labGroupNames } from "../../../../../settings/Settings"; +import { FeatureSettingKey, LabGroup, labGroupNames } from "../../../../../settings/Settings"; import { EnhancedMap } from "../../../../../utils/maps"; import { SettingsSection } from "../../shared/SettingsSection"; import { SettingsSubsection, SettingsSubsectionText } from "../../shared/SettingsSubsection"; @@ -25,8 +25,8 @@ export const showLabsFlags = (): boolean => { }; export default class LabsUserSettingsTab extends React.Component<{}> { - private readonly labs: string[]; - private readonly betas: string[]; + private readonly labs: FeatureSettingKey[]; + private readonly betas: FeatureSettingKey[]; public constructor(props: {}) { super(props); @@ -34,10 +34,10 @@ export default class LabsUserSettingsTab extends React.Component<{}> { const features = SettingsStore.getFeatureSettingNames(); const [labs, betas] = features.reduce( (arr, f) => { - arr[SettingsStore.getBetaInfo(f) ? 1 : 0].push(f); + arr[SettingsStore.getBetaInfo(f) ? 1 : 0].push(f as FeatureSettingKey); return arr; }, - [[], []] as [string[], string[]], + [[], []] as [FeatureSettingKey[], FeatureSettingKey[]], ); this.labs = labs; diff --git a/src/components/views/settings/tabs/user/MjolnirUserSettingsTab.tsx b/src/components/views/settings/tabs/user/MjolnirUserSettingsTab.tsx index 3e86d779ff3..9b71244e554 100644 --- a/src/components/views/settings/tabs/user/MjolnirUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/MjolnirUserSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/user/NotificationUserSettingsTab.tsx b/src/components/views/settings/tabs/user/NotificationUserSettingsTab.tsx index 5b70d908cce..b63e7907365 100644 --- a/src/components/views/settings/tabs/user/NotificationUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/NotificationUserSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx b/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx index 8cb662a9f02..5fc8fba7e3d 100644 --- a/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,7 +11,6 @@ import React, { ReactElement, useCallback, useEffect, useState } from "react"; import { NonEmptyArray } from "../../../../../@types/common"; import { _t, getCurrentLanguage } from "../../../../../languageHandler"; -import { UseCase } from "../../../../../settings/enums/UseCase"; import SettingsStore from "../../../../../settings/SettingsStore"; import Field from "../../../elements/Field"; import Dropdown from "../../../elements/Dropdown"; @@ -33,6 +32,7 @@ import { IS_MAC } from "../../../../../Keyboard"; import SpellCheckSettings from "../../SpellCheckSettings"; import LabelledToggleSwitch from "../../../elements/LabelledToggleSwitch"; import * as TimezoneHandler from "../../../../../TimezoneHandler"; +import { BooleanSettingKey } from "../../../../../settings/Settings.tsx"; interface IProps { closeSettingsFn(success: boolean): void; @@ -117,15 +117,15 @@ const SpellCheckSection: React.FC = () => { }; export default class PreferencesUserSettingsTab extends React.Component { - private static ROOM_LIST_SETTINGS = ["breadcrumbs", "FTUE.userOnboardingButton"]; + private static ROOM_LIST_SETTINGS: BooleanSettingKey[] = ["breadcrumbs", "FTUE.userOnboardingButton"]; - private static SPACES_SETTINGS = ["Spaces.allRoomsInHome"]; + private static SPACES_SETTINGS: BooleanSettingKey[] = ["Spaces.allRoomsInHome"]; - private static KEYBINDINGS_SETTINGS = ["ctrlFForSearch"]; + private static KEYBINDINGS_SETTINGS: BooleanSettingKey[] = ["ctrlFForSearch"]; - private static PRESENCE_SETTINGS = ["sendReadReceipts", "sendTypingNotifications"]; + private static PRESENCE_SETTINGS: BooleanSettingKey[] = ["sendReadReceipts", "sendTypingNotifications"]; - private static COMPOSER_SETTINGS = [ + private static COMPOSER_SETTINGS: BooleanSettingKey[] = [ "MessageComposerInput.autoReplaceEmoji", "MessageComposerInput.useMarkdown", "MessageComposerInput.suggestEmoji", @@ -135,17 +135,22 @@ export default class PreferencesUserSettingsTab extends React.Component ); } @@ -232,7 +237,7 @@ export default class PreferencesUserSettingsTab extends React.Component("FTUE.useCaseSelection"); + const useCase = SettingsStore.getValue("FTUE.useCaseSelection"); const roomListSettings = PreferencesUserSettingsTab.ROOM_LIST_SETTINGS // Only show the user onboarding setting if the user should see the user onboarding page .filter((it) => it !== "FTUE.userOnboardingButton" || showUserOnboardingPage(useCase)); diff --git a/src/components/views/settings/tabs/user/SecurityUserSettingsTab.tsx b/src/components/views/settings/tabs/user/SecurityUserSettingsTab.tsx index 7d5e27580cc..13fc695c3a7 100644 --- a/src/components/views/settings/tabs/user/SecurityUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/SecurityUserSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/settings/tabs/user/SessionManagerTab.tsx b/src/components/views/settings/tabs/user/SessionManagerTab.tsx index 5e9445bb995..bc4355652b6 100644 --- a/src/components/views/settings/tabs/user/SessionManagerTab.tsx +++ b/src/components/views/settings/tabs/user/SessionManagerTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -31,7 +31,7 @@ import QuestionDialog from "../../../dialogs/QuestionDialog"; import { FilterVariation } from "../../devices/filter"; import { OtherSessionsSectionHeading } from "../../devices/OtherSessionsSectionHeading"; import { SettingsSection } from "../../shared/SettingsSection"; -import { OidcLogoutDialog } from "../../../dialogs/oidc/OidcLogoutDialog"; +import { getManageDeviceUrl } from "../../../../../utils/oidc/urls.ts"; import { SDKContext } from "../../../../../contexts/SDKContext"; import Spinner from "../../../elements/Spinner"; @@ -58,16 +58,6 @@ const confirmSignOut = async (sessionsToSignOutCount: number): Promise return !!confirmed; }; -const confirmDelegatedAuthSignOut = async (delegatedAuthAccountUrl: string, deviceId: string): Promise => { - const { finished } = Modal.createDialog(OidcLogoutDialog, { - deviceId, - delegatedAuthAccountUrl, - }); - const [confirmed] = await finished; - - return !!confirmed; -}; - const useSignOut = ( matrixClient: MatrixClient, onSignoutResolvedCallback: () => Promise, @@ -93,20 +83,10 @@ const useSignOut = ( if (!deviceIds.length) { return; } - // we can only sign out exactly one OIDC-aware device at a time - // we should not encounter this - if (delegatedAuthAccountUrl && deviceIds.length !== 1) { - logger.warn("Unexpectedly tried to sign out multiple OIDC-aware devices."); - return; - } - // delegated auth logout flow confirms and signs out together - // so only confirm if we are NOT doing a delegated auth sign out - if (!delegatedAuthAccountUrl) { - const userConfirmedSignout = await confirmSignOut(deviceIds.length); - if (!userConfirmedSignout) { - return; - } + const userConfirmedSignout = await confirmSignOut(deviceIds.length); + if (!userConfirmedSignout) { + return; } let success = false; @@ -115,11 +95,8 @@ const useSignOut = ( if (delegatedAuthAccountUrl) { const [deviceId] = deviceIds; - try { - success = await confirmDelegatedAuthSignOut(delegatedAuthAccountUrl, deviceId); - } catch (error) { - logger.error("Error deleting OIDC-aware sessions", error); - } + const url = getManageDeviceUrl(delegatedAuthAccountUrl, deviceId); + window.open(url, "_blank"); } else { const deferredSuccess = defer(); await deleteDevicesWithInteractiveAuth(matrixClient, deviceIds, async (success) => { @@ -323,6 +300,7 @@ const SessionManagerTab: React.FC<{ onSignOutCurrentDevice={onSignOutCurrentDevice} signOutAllOtherSessions={signOutAllOtherSessions} otherSessionsCount={otherSessionsCount} + delegatedAuthAccountUrl={delegatedAuthAccountUrl} /> {shouldShowOtherSessions && ( )} diff --git a/src/components/views/settings/tabs/user/SidebarUserSettingsTab.tsx b/src/components/views/settings/tabs/user/SidebarUserSettingsTab.tsx index 0971ece699f..d7b6283aa45 100644 --- a/src/components/views/settings/tabs/user/SidebarUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/SidebarUserSettingsTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -58,8 +58,8 @@ const SidebarUserSettingsTab: React.FC = () => { [MetaSpace.People]: peopleEnabled, [MetaSpace.Orphans]: orphansEnabled, [MetaSpace.VideoRooms]: videoRoomsEnabled, - } = useSettingValue>("Spaces.enabledMetaSpaces"); - const allRoomsInHome = useSettingValue("Spaces.allRoomsInHome"); + } = useSettingValue("Spaces.enabledMetaSpaces"); + const allRoomsInHome = useSettingValue("Spaces.allRoomsInHome"); const guestSpaUrl = useMemo(() => { return SdkConfig.get("element_call").guest_spa_url; }, []); diff --git a/src/components/views/settings/tabs/user/VoiceUserSettingsTab.tsx b/src/components/views/settings/tabs/user/VoiceUserSettingsTab.tsx index 9711159a10e..a52a232cd5f 100644 --- a/src/components/views/settings/tabs/user/VoiceUserSettingsTab.tsx +++ b/src/components/views/settings/tabs/user/VoiceUserSettingsTab.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/QuickSettingsButton.tsx b/src/components/views/spaces/QuickSettingsButton.tsx index 161290fca88..21e2fda3013 100644 --- a/src/components/views/spaces/QuickSettingsButton.tsx +++ b/src/components/views/spaces/QuickSettingsButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -36,10 +36,10 @@ const QuickSettingsButton: React.FC<{ const [menuDisplayed, handle, openMenu, closeMenu] = useContextMenu(); const { [MetaSpace.Favourites]: favouritesEnabled, [MetaSpace.People]: peopleEnabled } = - useSettingValue>("Spaces.enabledMetaSpaces"); + useSettingValue("Spaces.enabledMetaSpaces"); const currentRoomId = SdkContextClass.instance.roomViewStore.getRoomId(); - const developerModeEnabled = useSettingValue("developerMode"); + const developerModeEnabled = useSettingValue("developerMode"); let contextMenu: JSX.Element | undefined; if (menuDisplayed && handle.current) { diff --git a/src/components/views/spaces/QuickThemeSwitcher.tsx b/src/components/views/spaces/QuickThemeSwitcher.tsx index 195fcb98991..1eff342ac39 100644 --- a/src/components/views/spaces/QuickThemeSwitcher.tsx +++ b/src/components/views/spaces/QuickThemeSwitcher.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpaceBasicSettings.tsx b/src/components/views/spaces/SpaceBasicSettings.tsx index 63a70a97cd4..4832da50b3a 100644 --- a/src/components/views/spaces/SpaceBasicSettings.tsx +++ b/src/components/views/spaces/SpaceBasicSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpaceChildrenPicker.tsx b/src/components/views/spaces/SpaceChildrenPicker.tsx index f6bbe969474..49f873fcf5f 100644 --- a/src/components/views/spaces/SpaceChildrenPicker.tsx +++ b/src/components/views/spaces/SpaceChildrenPicker.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpaceCreateMenu.tsx b/src/components/views/spaces/SpaceCreateMenu.tsx index 764417e0b2c..e964894502c 100644 --- a/src/components/views/spaces/SpaceCreateMenu.tsx +++ b/src/components/views/spaces/SpaceCreateMenu.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpacePanel.tsx b/src/components/views/spaces/SpacePanel.tsx index 73bb66af380..3dd46abb8d4 100644 --- a/src/components/views/spaces/SpacePanel.tsx +++ b/src/components/views/spaces/SpacePanel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -88,7 +88,7 @@ export const HomeButtonContextMenu: React.FC { - const allRoomsInHome = useSettingValue("Spaces.allRoomsInHome"); + const allRoomsInHome = useSettingValue("Spaces.allRoomsInHome"); return ( diff --git a/src/components/views/spaces/SpacePublicShare.tsx b/src/components/views/spaces/SpacePublicShare.tsx index 8b649e0b32e..8e148567ac7 100644 --- a/src/components/views/spaces/SpacePublicShare.tsx +++ b/src/components/views/spaces/SpacePublicShare.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpaceSettingsGeneralTab.tsx b/src/components/views/spaces/SpaceSettingsGeneralTab.tsx index 8d80f85c581..09f14ec2e13 100644 --- a/src/components/views/spaces/SpaceSettingsGeneralTab.tsx +++ b/src/components/views/spaces/SpaceSettingsGeneralTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpaceSettingsVisibilityTab.tsx b/src/components/views/spaces/SpaceSettingsVisibilityTab.tsx index 47f4fe8ce9f..3612f668c9c 100644 --- a/src/components/views/spaces/SpaceSettingsVisibilityTab.tsx +++ b/src/components/views/spaces/SpaceSettingsVisibilityTab.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/SpaceTreeLevel.tsx b/src/components/views/spaces/SpaceTreeLevel.tsx index 38329c39b73..d85e5ff2a91 100644 --- a/src/components/views/spaces/SpaceTreeLevel.tsx +++ b/src/components/views/spaces/SpaceTreeLevel.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentre.tsx b/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentre.tsx index c8e5ef1424b..562019a33f8 100644 --- a/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentre.tsx +++ b/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentre.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -44,7 +44,7 @@ export function ThreadsActivityCentre({ displayButtonLabel }: ThreadsActivityCen const [open, setOpen] = useState(false); const roomsAndNotifications = useUnreadThreadRooms(open); const isReleaseAnnouncementOpen = useIsReleaseAnnouncementOpen("threadsActivityCentre"); - const settingTACOnlyNotifs = useSettingValue("Notifications.tac_only_notifications"); + const settingTACOnlyNotifs = useSettingValue("Notifications.tac_only_notifications"); const emptyCaption = settingTACOnlyNotifs ? _t("threads_activity_centre|no_rooms_with_threads_notifs") diff --git a/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx b/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx index 801a6050c34..123b8a072eb 100644 --- a/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx +++ b/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/components/views/spaces/threads-activity-centre/index.ts b/src/components/views/spaces/threads-activity-centre/index.ts index 98aa767866d..f900a805708 100644 --- a/src/components/views/spaces/threads-activity-centre/index.ts +++ b/src/components/views/spaces/threads-activity-centre/index.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/components/views/spaces/threads-activity-centre/useUnreadThreadRooms.ts b/src/components/views/spaces/threads-activity-centre/useUnreadThreadRooms.ts index 110c9d51f83..94486fdf76e 100644 --- a/src/components/views/spaces/threads-activity-centre/useUnreadThreadRooms.ts +++ b/src/components/views/spaces/threads-activity-centre/useUnreadThreadRooms.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -32,8 +32,8 @@ type Result = { * @returns {Result} */ export function useUnreadThreadRooms(forceComputation: boolean): Result { - const msc3946ProcessDynamicPredecessor = useSettingValue("feature_dynamic_room_predecessors"); - const settingTACOnlyNotifs = useSettingValue("Notifications.tac_only_notifications"); + const msc3946ProcessDynamicPredecessor = useSettingValue("feature_dynamic_room_predecessors"); + const settingTACOnlyNotifs = useSettingValue("Notifications.tac_only_notifications"); const mxClient = useMatrixClientContext(); const [result, setResult] = useState({ greatestNotificationLevel: NotificationLevel.None, rooms: [] }); diff --git a/src/components/views/terms/InlineTermsAgreement.tsx b/src/components/views/terms/InlineTermsAgreement.tsx index 350c408d750..2e4f48712ff 100644 --- a/src/components/views/terms/InlineTermsAgreement.tsx +++ b/src/components/views/terms/InlineTermsAgreement.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/toasts/GenericExpiringToast.tsx b/src/components/views/toasts/GenericExpiringToast.tsx index 0809eae92c2..b019babaf23 100644 --- a/src/components/views/toasts/GenericExpiringToast.tsx +++ b/src/components/views/toasts/GenericExpiringToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/toasts/GenericToast.tsx b/src/components/views/toasts/GenericToast.tsx index 76c74993c03..0e249cecdcb 100644 --- a/src/components/views/toasts/GenericToast.tsx +++ b/src/components/views/toasts/GenericToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/toasts/NonUrgentEchoFailureToast.tsx b/src/components/views/toasts/NonUrgentEchoFailureToast.tsx index 069d5ee88c0..490b251adec 100644 --- a/src/components/views/toasts/NonUrgentEchoFailureToast.tsx +++ b/src/components/views/toasts/NonUrgentEchoFailureToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/toasts/VerificationRequestToast.tsx b/src/components/views/toasts/VerificationRequestToast.tsx index 7d31aa67640..f235b8f488b 100644 --- a/src/components/views/toasts/VerificationRequestToast.tsx +++ b/src/components/views/toasts/VerificationRequestToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/typography/Caption.tsx b/src/components/views/typography/Caption.tsx index 3bf57476883..0ce9fbb65c1 100644 --- a/src/components/views/typography/Caption.tsx +++ b/src/components/views/typography/Caption.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/typography/Heading.tsx b/src/components/views/typography/Heading.tsx index 70ade1a516a..c367c5d4457 100644 --- a/src/components/views/typography/Heading.tsx +++ b/src/components/views/typography/Heading.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/user-onboarding/UserOnboardingButton.tsx b/src/components/views/user-onboarding/UserOnboardingButton.tsx index d1e420d4ac7..6d009f378b5 100644 --- a/src/components/views/user-onboarding/UserOnboardingButton.tsx +++ b/src/components/views/user-onboarding/UserOnboardingButton.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -14,7 +14,6 @@ import defaultDispatcher from "../../../dispatcher/dispatcher"; import { useSettingValue } from "../../../hooks/useSettings"; import { _t } from "../../../languageHandler"; import PosthogTrackers from "../../../PosthogTrackers"; -import { UseCase } from "../../../settings/enums/UseCase"; import { SettingLevel } from "../../../settings/SettingLevel"; import SettingsStore from "../../../settings/SettingsStore"; import AccessibleButton, { ButtonEvent } from "../../views/elements/AccessibleButton"; @@ -27,8 +26,8 @@ interface Props { } export function UserOnboardingButton({ selected, minimized }: Props): JSX.Element { - const useCase = useSettingValue("FTUE.useCaseSelection"); - const visible = useSettingValue("FTUE.userOnboardingButton"); + const useCase = useSettingValue("FTUE.useCaseSelection"); + const visible = useSettingValue("FTUE.userOnboardingButton"); if (!visible || minimized || !showUserOnboardingPage(useCase)) { return <>; diff --git a/src/components/views/user-onboarding/UserOnboardingHeader.tsx b/src/components/views/user-onboarding/UserOnboardingHeader.tsx index 1f6edbff1da..d4702ed372e 100644 --- a/src/components/views/user-onboarding/UserOnboardingHeader.tsx +++ b/src/components/views/user-onboarding/UserOnboardingHeader.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/user-onboarding/UserOnboardingList.tsx b/src/components/views/user-onboarding/UserOnboardingList.tsx index c6c03527cb5..0f0298eb654 100644 --- a/src/components/views/user-onboarding/UserOnboardingList.tsx +++ b/src/components/views/user-onboarding/UserOnboardingList.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/user-onboarding/UserOnboardingPage.tsx b/src/components/views/user-onboarding/UserOnboardingPage.tsx index ebb9b9565e3..3f7a1e80dd8 100644 --- a/src/components/views/user-onboarding/UserOnboardingPage.tsx +++ b/src/components/views/user-onboarding/UserOnboardingPage.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -41,7 +41,7 @@ export function UserOnboardingPage({ justRegistered = false }: Props): JSX.Eleme const config = SdkConfig.get(); const pageUrl = getHomePageUrl(config, cli); - const useCase = useSettingValue("FTUE.useCaseSelection"); + const useCase = useSettingValue("FTUE.useCaseSelection"); const context = useUserOnboardingContext(); const tasks = useUserOnboardingTasks(context); diff --git a/src/components/views/user-onboarding/UserOnboardingTask.tsx b/src/components/views/user-onboarding/UserOnboardingTask.tsx index add9db1b35e..c379cbc3d11 100644 --- a/src/components/views/user-onboarding/UserOnboardingTask.tsx +++ b/src/components/views/user-onboarding/UserOnboardingTask.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/verification/VerificationCancelled.tsx b/src/components/views/verification/VerificationCancelled.tsx index d1a84742b19..41fae925f62 100644 --- a/src/components/views/verification/VerificationCancelled.tsx +++ b/src/components/views/verification/VerificationCancelled.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/verification/VerificationComplete.tsx b/src/components/views/verification/VerificationComplete.tsx index 3760b2df703..0bbb2d39de3 100644 --- a/src/components/views/verification/VerificationComplete.tsx +++ b/src/components/views/verification/VerificationComplete.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/verification/VerificationShowSas.tsx b/src/components/views/verification/VerificationShowSas.tsx index 1e053a7e99e..df9ddba8921 100644 --- a/src/components/views/verification/VerificationShowSas.tsx +++ b/src/components/views/verification/VerificationShowSas.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/AudioFeed.tsx b/src/components/views/voip/AudioFeed.tsx index 88f1463bb5b..36a02c21cd7 100644 --- a/src/components/views/voip/AudioFeed.tsx +++ b/src/components/views/voip/AudioFeed.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/AudioFeedArrayForLegacyCall.tsx b/src/components/views/voip/AudioFeedArrayForLegacyCall.tsx index b135bb02798..5b2a0d0c87f 100644 --- a/src/components/views/voip/AudioFeedArrayForLegacyCall.tsx +++ b/src/components/views/voip/AudioFeedArrayForLegacyCall.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/CallDuration.tsx b/src/components/views/voip/CallDuration.tsx index 3dba4bfc17b..34f5d0ba608 100644 --- a/src/components/views/voip/CallDuration.tsx +++ b/src/components/views/voip/CallDuration.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/CallView.tsx b/src/components/views/voip/CallView.tsx index e51d1c0253b..b7b15c2f715 100644 --- a/src/components/views/voip/CallView.tsx +++ b/src/components/views/voip/CallView.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/DialPad.tsx b/src/components/views/voip/DialPad.tsx index 9dda9468d84..a23c89fdef8 100644 --- a/src/components/views/voip/DialPad.tsx +++ b/src/components/views/voip/DialPad.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/DialPadModal.tsx b/src/components/views/voip/DialPadModal.tsx index b4b7cdf6472..172a9cbaa57 100644 --- a/src/components/views/voip/DialPadModal.tsx +++ b/src/components/views/voip/DialPadModal.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/LegacyCallView.tsx b/src/components/views/voip/LegacyCallView.tsx index aba3d60743d..9c5246b912f 100644 --- a/src/components/views/voip/LegacyCallView.tsx +++ b/src/components/views/voip/LegacyCallView.tsx @@ -4,7 +4,7 @@ Copyright 2021, 2022 Šimon Brandner Copyright 2019-2021 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/LegacyCallView/LegacyCallViewButtons.tsx b/src/components/views/voip/LegacyCallView/LegacyCallViewButtons.tsx index 105736d04e2..7788cb0e78e 100644 --- a/src/components/views/voip/LegacyCallView/LegacyCallViewButtons.tsx +++ b/src/components/views/voip/LegacyCallView/LegacyCallViewButtons.tsx @@ -4,7 +4,7 @@ Copyright 2021 Šimon Brandner Copyright 2019-2021 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/LegacyCallView/LegacyCallViewHeader.tsx b/src/components/views/voip/LegacyCallView/LegacyCallViewHeader.tsx index bb81527ef0f..b443636d85a 100644 --- a/src/components/views/voip/LegacyCallView/LegacyCallViewHeader.tsx +++ b/src/components/views/voip/LegacyCallView/LegacyCallViewHeader.tsx @@ -1,7 +1,7 @@ /* Copyright 2021-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/LegacyCallViewForRoom.tsx b/src/components/views/voip/LegacyCallViewForRoom.tsx index defee6b97c9..ed55f908be2 100644 --- a/src/components/views/voip/LegacyCallViewForRoom.tsx +++ b/src/components/views/voip/LegacyCallViewForRoom.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/LegacyCallViewSidebar.tsx b/src/components/views/voip/LegacyCallViewSidebar.tsx index d0c328f8bec..3dcf3c644d5 100644 --- a/src/components/views/voip/LegacyCallViewSidebar.tsx +++ b/src/components/views/voip/LegacyCallViewSidebar.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/components/views/voip/VideoFeed.tsx b/src/components/views/voip/VideoFeed.tsx index 6931027ddf4..80ea27223c7 100644 --- a/src/components/views/voip/VideoFeed.tsx +++ b/src/components/views/voip/VideoFeed.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 Šimon Brandner Copyright 2015, 2016 , 2019, 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/contexts/LocalDeviceVerificationStateContext.ts b/src/contexts/LocalDeviceVerificationStateContext.ts index 43527e100be..df5af672529 100644 --- a/src/contexts/LocalDeviceVerificationStateContext.ts +++ b/src/contexts/LocalDeviceVerificationStateContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/contexts/MatrixClientContext.tsx b/src/contexts/MatrixClientContext.tsx index ec804f881bc..79ce5e50094 100644 --- a/src/contexts/MatrixClientContext.tsx +++ b/src/contexts/MatrixClientContext.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/contexts/RoomContext.ts b/src/contexts/RoomContext.ts index 4303c46a34e..19f87d9471c 100644 --- a/src/contexts/RoomContext.ts +++ b/src/contexts/RoomContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/contexts/SDKContext.ts b/src/contexts/SDKContext.ts index fe736615545..184bea4cfaa 100644 --- a/src/contexts/SDKContext.ts +++ b/src/contexts/SDKContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -13,7 +13,6 @@ import defaultDispatcher from "../dispatcher/dispatcher"; import LegacyCallHandler from "../LegacyCallHandler"; import { PosthogAnalytics } from "../PosthogAnalytics"; import { SlidingSyncManager } from "../SlidingSyncManager"; -import { AccountPasswordStore } from "../stores/AccountPasswordStore"; import { MemberListStore } from "../stores/MemberListStore"; import { RoomNotificationStateStore } from "../stores/notifications/RoomNotificationStateStore"; import RightPanelStore from "../stores/right-panel/RightPanelStore"; @@ -63,7 +62,6 @@ export class SdkContextClass { protected _SpaceStore?: SpaceStoreClass; protected _LegacyCallHandler?: LegacyCallHandler; protected _TypingStore?: TypingStore; - protected _AccountPasswordStore?: AccountPasswordStore; protected _UserProfilesStore?: UserProfilesStore; protected _OidcClientStore?: OidcClientStore; @@ -149,13 +147,6 @@ export class SdkContextClass { return this._TypingStore; } - public get accountPasswordStore(): AccountPasswordStore { - if (!this._AccountPasswordStore) { - this._AccountPasswordStore = new AccountPasswordStore(); - } - return this._AccountPasswordStore; - } - public get userProfilesStore(): UserProfilesStore { if (!this.client) { throw new Error("Unable to create UserProfilesStore without a client"); diff --git a/src/contexts/ScopedRoomContext.tsx b/src/contexts/ScopedRoomContext.tsx index 1222443d290..2b1827952d8 100644 --- a/src/contexts/ScopedRoomContext.tsx +++ b/src/contexts/ScopedRoomContext.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/contexts/ToastContext.tsx b/src/contexts/ToastContext.tsx index 4ae4875c96b..100eb6add09 100644 --- a/src/contexts/ToastContext.tsx +++ b/src/contexts/ToastContext.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/createRoom.ts b/src/createRoom.ts index 1a09eecfe9b..45f071aac7d 100644 --- a/src/createRoom.ts +++ b/src/createRoom.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/Alias.ts b/src/customisations/Alias.ts index 58be28ced8a..6e5c60be586 100644 --- a/src/customisations/Alias.ts +++ b/src/customisations/Alias.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/ChatExport.ts b/src/customisations/ChatExport.ts index a4c6c70b33c..ae979d4273c 100644 --- a/src/customisations/ChatExport.ts +++ b/src/customisations/ChatExport.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/ComponentVisibility.ts b/src/customisations/ComponentVisibility.ts index 44464169f5d..c69b6ee185b 100644 --- a/src/customisations/ComponentVisibility.ts +++ b/src/customisations/ComponentVisibility.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/Directory.ts b/src/customisations/Directory.ts index 445863eaece..c5536801258 100644 --- a/src/customisations/Directory.ts +++ b/src/customisations/Directory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/Lifecycle.ts b/src/customisations/Lifecycle.ts index d76275e23ab..2873093414e 100644 --- a/src/customisations/Lifecycle.ts +++ b/src/customisations/Lifecycle.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/Media.ts b/src/customisations/Media.ts index f9e7766b00b..d7b367c5843 100644 --- a/src/customisations/Media.ts +++ b/src/customisations/Media.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2021 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/customisations/RoomList.ts b/src/customisations/RoomList.ts index e2c2088dad8..a62e1bf6fca 100644 --- a/src/customisations/RoomList.ts +++ b/src/customisations/RoomList.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/customisations/UserIdentifier.ts b/src/customisations/UserIdentifier.ts index 7e291bdad86..cc36a1d8c7f 100644 --- a/src/customisations/UserIdentifier.ts +++ b/src/customisations/UserIdentifier.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/WidgetPermissions.ts b/src/customisations/WidgetPermissions.ts index fa46e032dc0..9734fee9d01 100644 --- a/src/customisations/WidgetPermissions.ts +++ b/src/customisations/WidgetPermissions.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/customisations/WidgetVariables.ts b/src/customisations/WidgetVariables.ts index a6235b721be..6a6651dd102 100644 --- a/src/customisations/WidgetVariables.ts +++ b/src/customisations/WidgetVariables.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2021 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/customisations/helpers/UIComponents.ts b/src/customisations/helpers/UIComponents.ts index 4cbc9a88a98..1c710f112dc 100644 --- a/src/customisations/helpers/UIComponents.ts +++ b/src/customisations/helpers/UIComponents.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/customisations/models/IMediaEventContent.ts b/src/customisations/models/IMediaEventContent.ts index 15dae2eb677..607fc012ad5 100644 --- a/src/customisations/models/IMediaEventContent.ts +++ b/src/customisations/models/IMediaEventContent.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2021 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/dispatcher/actions.ts b/src/dispatcher/actions.ts index 718f592e6a2..5205e5badf3 100644 --- a/src/dispatcher/actions.ts +++ b/src/dispatcher/actions.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/dispatcher.ts b/src/dispatcher/dispatcher.ts index f50e2bfe007..8b093e2e4a8 100644 --- a/src/dispatcher/dispatcher.ts +++ b/src/dispatcher/dispatcher.ts @@ -4,7 +4,7 @@ Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2017 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads.ts b/src/dispatcher/payloads.ts index eb177e8b569..114f1e55150 100644 --- a/src/dispatcher/payloads.ts +++ b/src/dispatcher/payloads.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ActiveRoomChangedPayload.ts b/src/dispatcher/payloads/ActiveRoomChangedPayload.ts index e24a523e8cb..bb1c0e4afb4 100644 --- a/src/dispatcher/payloads/ActiveRoomChangedPayload.ts +++ b/src/dispatcher/payloads/ActiveRoomChangedPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/AfterLeaveRoomPayload.ts b/src/dispatcher/payloads/AfterLeaveRoomPayload.ts index bb2cd0825cb..5a74dce7bee 100644 --- a/src/dispatcher/payloads/AfterLeaveRoomPayload.ts +++ b/src/dispatcher/payloads/AfterLeaveRoomPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/CancelAskToJoinPayload.ts b/src/dispatcher/payloads/CancelAskToJoinPayload.ts index a35d76d1e80..d9ca8d291e9 100644 --- a/src/dispatcher/payloads/CancelAskToJoinPayload.ts +++ b/src/dispatcher/payloads/CancelAskToJoinPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Nordeck IT + Consulting GmbH -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/CheckUpdatesPayload.ts b/src/dispatcher/payloads/CheckUpdatesPayload.ts index e1f8c948a50..b588193b4ff 100644 --- a/src/dispatcher/payloads/CheckUpdatesPayload.ts +++ b/src/dispatcher/payloads/CheckUpdatesPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ComposerInsertPayload.ts b/src/dispatcher/payloads/ComposerInsertPayload.ts index d0652f431a9..941f8c135ce 100644 --- a/src/dispatcher/payloads/ComposerInsertPayload.ts +++ b/src/dispatcher/payloads/ComposerInsertPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/DoAfterSyncPreparedPayload.ts b/src/dispatcher/payloads/DoAfterSyncPreparedPayload.ts index c55b62bbc8c..2f2ed06f661 100644 --- a/src/dispatcher/payloads/DoAfterSyncPreparedPayload.ts +++ b/src/dispatcher/payloads/DoAfterSyncPreparedPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/FocusComposerPayload.ts b/src/dispatcher/payloads/FocusComposerPayload.ts index 9db1ba9b1cb..6ec62e47589 100644 --- a/src/dispatcher/payloads/FocusComposerPayload.ts +++ b/src/dispatcher/payloads/FocusComposerPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/JoinRoomErrorPayload.ts b/src/dispatcher/payloads/JoinRoomErrorPayload.ts index 7db3102fd60..1112674f21d 100644 --- a/src/dispatcher/payloads/JoinRoomErrorPayload.ts +++ b/src/dispatcher/payloads/JoinRoomErrorPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/JoinRoomPayload.ts b/src/dispatcher/payloads/JoinRoomPayload.ts index c7fccaebc19..d4d0f5ca99c 100644 --- a/src/dispatcher/payloads/JoinRoomPayload.ts +++ b/src/dispatcher/payloads/JoinRoomPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/JoinRoomReadyPayload.ts b/src/dispatcher/payloads/JoinRoomReadyPayload.ts index bd47e13f4ad..5eaa9e3c8d7 100644 --- a/src/dispatcher/payloads/JoinRoomReadyPayload.ts +++ b/src/dispatcher/payloads/JoinRoomReadyPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenAddExistingToSpaceDialogPayload.ts b/src/dispatcher/payloads/OpenAddExistingToSpaceDialogPayload.ts index 33b3000ed47..ebcddb36c8c 100644 --- a/src/dispatcher/payloads/OpenAddExistingToSpaceDialogPayload.ts +++ b/src/dispatcher/payloads/OpenAddExistingToSpaceDialogPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenForwardDialogPayload.ts b/src/dispatcher/payloads/OpenForwardDialogPayload.ts index d6688575a00..cc1bffa21ec 100644 --- a/src/dispatcher/payloads/OpenForwardDialogPayload.ts +++ b/src/dispatcher/payloads/OpenForwardDialogPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenInviteDialogPayload.ts b/src/dispatcher/payloads/OpenInviteDialogPayload.ts index c8a3522f16a..1d275078217 100644 --- a/src/dispatcher/payloads/OpenInviteDialogPayload.ts +++ b/src/dispatcher/payloads/OpenInviteDialogPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenReportEventDialogPayload.ts b/src/dispatcher/payloads/OpenReportEventDialogPayload.ts index 238adeaeb52..a4b355e9849 100644 --- a/src/dispatcher/payloads/OpenReportEventDialogPayload.ts +++ b/src/dispatcher/payloads/OpenReportEventDialogPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenSpacePreferencesPayload.ts b/src/dispatcher/payloads/OpenSpacePreferencesPayload.ts index 5bc1abb5577..ea068054db2 100644 --- a/src/dispatcher/payloads/OpenSpacePreferencesPayload.ts +++ b/src/dispatcher/payloads/OpenSpacePreferencesPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenSpaceSettingsPayload.ts b/src/dispatcher/payloads/OpenSpaceSettingsPayload.ts index b7691d44f8f..9a1feae34d8 100644 --- a/src/dispatcher/payloads/OpenSpaceSettingsPayload.ts +++ b/src/dispatcher/payloads/OpenSpaceSettingsPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenSpotlightPayload.ts b/src/dispatcher/payloads/OpenSpotlightPayload.ts index bad5ab0f7d2..ec2a630d073 100644 --- a/src/dispatcher/payloads/OpenSpotlightPayload.ts +++ b/src/dispatcher/payloads/OpenSpotlightPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OpenToTabPayload.ts b/src/dispatcher/payloads/OpenToTabPayload.ts index dfe10f65a5f..872ae626656 100644 --- a/src/dispatcher/payloads/OpenToTabPayload.ts +++ b/src/dispatcher/payloads/OpenToTabPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/OverwriteLoginPayload.ts b/src/dispatcher/payloads/OverwriteLoginPayload.ts index 6ba5d33ecf8..dd53b0b7f9b 100644 --- a/src/dispatcher/payloads/OverwriteLoginPayload.ts +++ b/src/dispatcher/payloads/OverwriteLoginPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/PlatformSetPayload.ts b/src/dispatcher/payloads/PlatformSetPayload.ts index 9b844b6d190..69dc79121c1 100644 --- a/src/dispatcher/payloads/PlatformSetPayload.ts +++ b/src/dispatcher/payloads/PlatformSetPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/RecheckThemePayload.ts b/src/dispatcher/payloads/RecheckThemePayload.ts index 9281a56eb6a..87419465ae1 100644 --- a/src/dispatcher/payloads/RecheckThemePayload.ts +++ b/src/dispatcher/payloads/RecheckThemePayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/SettingUpdatedPayload.ts b/src/dispatcher/payloads/SettingUpdatedPayload.ts index 17cad170420..16c8d505909 100644 --- a/src/dispatcher/payloads/SettingUpdatedPayload.ts +++ b/src/dispatcher/payloads/SettingUpdatedPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ShowThreadPayload.ts b/src/dispatcher/payloads/ShowThreadPayload.ts index 5dbc575e3c4..700758af94b 100644 --- a/src/dispatcher/payloads/ShowThreadPayload.ts +++ b/src/dispatcher/payloads/ShowThreadPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/SubmitAskToJoinPayload.ts b/src/dispatcher/payloads/SubmitAskToJoinPayload.ts index ec1414c22a1..40334fab8d8 100644 --- a/src/dispatcher/payloads/SubmitAskToJoinPayload.ts +++ b/src/dispatcher/payloads/SubmitAskToJoinPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Nordeck IT + Consulting GmbH -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/SwitchSpacePayload.ts b/src/dispatcher/payloads/SwitchSpacePayload.ts index 63677af658c..7ad22a7b2d0 100644 --- a/src/dispatcher/payloads/SwitchSpacePayload.ts +++ b/src/dispatcher/payloads/SwitchSpacePayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ThreadPayload.ts b/src/dispatcher/payloads/ThreadPayload.ts index c09519e2e7c..2f21576c334 100644 --- a/src/dispatcher/payloads/ThreadPayload.ts +++ b/src/dispatcher/payloads/ThreadPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/UpdateFontSizeDeltaPayload.ts b/src/dispatcher/payloads/UpdateFontSizeDeltaPayload.ts index b4ef6823a57..40495615b52 100644 --- a/src/dispatcher/payloads/UpdateFontSizeDeltaPayload.ts +++ b/src/dispatcher/payloads/UpdateFontSizeDeltaPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/UpdateSystemFontPayload.ts b/src/dispatcher/payloads/UpdateSystemFontPayload.ts index 0061f20e2c1..91951244a9f 100644 --- a/src/dispatcher/payloads/UpdateSystemFontPayload.ts +++ b/src/dispatcher/payloads/UpdateSystemFontPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/UploadPayload.ts b/src/dispatcher/payloads/UploadPayload.ts index afc4ca6c24e..6d26a4dd2be 100644 --- a/src/dispatcher/payloads/UploadPayload.ts +++ b/src/dispatcher/payloads/UploadPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ViewHomePagePayload.ts b/src/dispatcher/payloads/ViewHomePagePayload.ts index 923635e3a8d..8743569bdf6 100644 --- a/src/dispatcher/payloads/ViewHomePagePayload.ts +++ b/src/dispatcher/payloads/ViewHomePagePayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ViewRoomDeltaPayload.ts b/src/dispatcher/payloads/ViewRoomDeltaPayload.ts index e28f26f2e11..fefe5ec5446 100644 --- a/src/dispatcher/payloads/ViewRoomDeltaPayload.ts +++ b/src/dispatcher/payloads/ViewRoomDeltaPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ViewRoomErrorPayload.ts b/src/dispatcher/payloads/ViewRoomErrorPayload.ts index 4657a3581ed..fd85b9af09b 100644 --- a/src/dispatcher/payloads/ViewRoomErrorPayload.ts +++ b/src/dispatcher/payloads/ViewRoomErrorPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ViewRoomPayload.ts b/src/dispatcher/payloads/ViewRoomPayload.ts index 549e8d2c97a..95affe573e6 100644 --- a/src/dispatcher/payloads/ViewRoomPayload.ts +++ b/src/dispatcher/payloads/ViewRoomPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ViewStartChatOrReusePayload.ts b/src/dispatcher/payloads/ViewStartChatOrReusePayload.ts index 619d96c67ae..0c988d917a7 100644 --- a/src/dispatcher/payloads/ViewStartChatOrReusePayload.ts +++ b/src/dispatcher/payloads/ViewStartChatOrReusePayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/dispatcher/payloads/ViewUserPayload.ts b/src/dispatcher/payloads/ViewUserPayload.ts index 405820b8c81..497ebf5671e 100644 --- a/src/dispatcher/payloads/ViewUserPayload.ts +++ b/src/dispatcher/payloads/ViewUserPayload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/autocomplete.ts b/src/editor/autocomplete.ts index 542a2bbea51..ff1e89b1f16 100644 --- a/src/editor/autocomplete.ts +++ b/src/editor/autocomplete.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/caret.ts b/src/editor/caret.ts index 316c3a052fd..7db2c59b770 100644 --- a/src/editor/caret.ts +++ b/src/editor/caret.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/commands.tsx b/src/editor/commands.tsx index 2930efe86fe..cb38f88d0de 100644 --- a/src/editor/commands.tsx +++ b/src/editor/commands.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/deserialize.ts b/src/editor/deserialize.ts index 91afe4bd340..77ca729febd 100644 --- a/src/editor/deserialize.ts +++ b/src/editor/deserialize.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/diff.ts b/src/editor/diff.ts index 90429018f8d..dfc654996e6 100644 --- a/src/editor/diff.ts +++ b/src/editor/diff.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/dom.ts b/src/editor/dom.ts index bb8372a0976..b0fd9b47e9c 100644 --- a/src/editor/dom.ts +++ b/src/editor/dom.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/history.ts b/src/editor/history.ts index 2485b3ceee3..ca5a39bb77d 100644 --- a/src/editor/history.ts +++ b/src/editor/history.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/model.ts b/src/editor/model.ts index efe294cd214..c583c93972f 100644 --- a/src/editor/model.ts +++ b/src/editor/model.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/offset.ts b/src/editor/offset.ts index 7216dac2953..143fcdd0f05 100644 --- a/src/editor/offset.ts +++ b/src/editor/offset.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/operations.ts b/src/editor/operations.ts index 3a2b7d8fb36..6ee663968d4 100644 --- a/src/editor/operations.ts +++ b/src/editor/operations.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/parts.ts b/src/editor/parts.ts index bfdc3d29fb2..907758e39ad 100644 --- a/src/editor/parts.ts +++ b/src/editor/parts.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/position.ts b/src/editor/position.ts index 439b991887b..2b728b22b4e 100644 --- a/src/editor/position.ts +++ b/src/editor/position.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/range.ts b/src/editor/range.ts index c3ec67e674d..6441e92d049 100644 --- a/src/editor/range.ts +++ b/src/editor/range.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/render.ts b/src/editor/render.ts index 22ad40beb57..4ac2fc54b31 100644 --- a/src/editor/render.ts +++ b/src/editor/render.ts @@ -2,7 +2,7 @@ Copyright 2019-2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/editor/serialize.ts b/src/editor/serialize.ts index 36e2b97b094..8b05063b4ec 100644 --- a/src/editor/serialize.ts +++ b/src/editor/serialize.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/effects/ICanvasEffect.ts b/src/effects/ICanvasEffect.ts index ef36b862bf4..6fe8be9dc0f 100644 --- a/src/effects/ICanvasEffect.ts +++ b/src/effects/ICanvasEffect.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/effects/confetti/index.ts b/src/effects/confetti/index.ts index 28f37a53203..4c9046f8df0 100644 --- a/src/effects/confetti/index.ts +++ b/src/effects/confetti/index.ts @@ -4,7 +4,7 @@ Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 ICanvasEffect from "../ICanvasEffect"; diff --git a/src/effects/effect.ts b/src/effects/effect.ts index 2f1ad651b80..6a8ae5d8ba5 100644 --- a/src/effects/effect.ts +++ b/src/effects/effect.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/effects/fireworks/index.ts b/src/effects/fireworks/index.ts index 00b77582865..13f6e6408b4 100644 --- a/src/effects/fireworks/index.ts +++ b/src/effects/fireworks/index.ts @@ -4,7 +4,7 @@ Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/effects/hearts/index.ts b/src/effects/hearts/index.ts index 608ceaa783b..00082049ebf 100644 --- a/src/effects/hearts/index.ts +++ b/src/effects/hearts/index.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. Copyright 2022 Arseny Uskov -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 ICanvasEffect from "../ICanvasEffect"; diff --git a/src/effects/index.ts b/src/effects/index.ts index 42f8aea7855..1ed7d2c3a3d 100644 --- a/src/effects/index.ts +++ b/src/effects/index.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { _t, _td } from "../languageHandler"; diff --git a/src/effects/rainfall/index.ts b/src/effects/rainfall/index.ts index 8fe3ea54ebd..9fac36d6158 100644 --- a/src/effects/rainfall/index.ts +++ b/src/effects/rainfall/index.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. Copyright 2021 Josias Allestad -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 ICanvasEffect from "../ICanvasEffect"; diff --git a/src/effects/snowfall/index.ts b/src/effects/snowfall/index.ts index b25aebf598c..bfc690d1a40 100644 --- a/src/effects/snowfall/index.ts +++ b/src/effects/snowfall/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 ICanvasEffect from "../ICanvasEffect"; diff --git a/src/effects/spaceinvaders/index.ts b/src/effects/spaceinvaders/index.ts index ca90c921e4c..49aeb26e8d6 100644 --- a/src/effects/spaceinvaders/index.ts +++ b/src/effects/spaceinvaders/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 ICanvasEffect from "../ICanvasEffect"; diff --git a/src/effects/utils.ts b/src/effects/utils.ts index 62d3046fde1..1479b6f5cd5 100644 --- a/src/effects/utils.ts +++ b/src/effects/utils.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 Nurjin Jafar Copyright 2020 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/email.ts b/src/email.ts index dfdd3250026..ca606a0dc7f 100644 --- a/src/email.ts +++ b/src/email.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/emojipicker/recent.ts b/src/emojipicker/recent.ts index f95e440cc7c..05c1321716b 100644 --- a/src/emojipicker/recent.ts +++ b/src/emojipicker/recent.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Tulir Asokan -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -17,7 +17,7 @@ interface ILegacyFormat { } // New format tries to be more space efficient for synchronization. Ordered by Date descending. -type Format = [string, number][]; // [emoji, count] +export type RecentEmojiData = [emoji: string, count: number][]; const SETTING_NAME = "recent_emoji"; @@ -33,7 +33,7 @@ function migrate(): void { SettingsStore.setValue(SETTING_NAME, null, SettingLevel.ACCOUNT, newFormat.slice(0, STORAGE_LIMIT)); } -function getRecentEmoji(): Format { +function getRecentEmoji(): RecentEmojiData { return SettingsStore.getValue(SETTING_NAME) || []; } diff --git a/src/events/EventTileFactory.tsx b/src/events/EventTileFactory.tsx index ec1651872af..3079e45abf2 100644 --- a/src/events/EventTileFactory.tsx +++ b/src/events/EventTileFactory.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/events/RelationsHelper.ts b/src/events/RelationsHelper.ts index 79b4ee77702..e063395c9a6 100644 --- a/src/events/RelationsHelper.ts +++ b/src/events/RelationsHelper.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/events/forward/getForwardableEvent.ts b/src/events/forward/getForwardableEvent.ts index 2d37ebf6e97..151da1e8af2 100644 --- a/src/events/forward/getForwardableEvent.ts +++ b/src/events/forward/getForwardableEvent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/events/index.ts b/src/events/index.ts index 7e1651927df..2fbbc1c600c 100644 --- a/src/events/index.ts +++ b/src/events/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/events/location/getShareableLocationEvent.ts b/src/events/location/getShareableLocationEvent.ts index ef57464935d..e5c9a0f3a11 100644 --- a/src/events/location/getShareableLocationEvent.ts +++ b/src/events/location/getShareableLocationEvent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/favicon.ts b/src/favicon.ts index 112bfca7bf6..e109c734602 100644 --- a/src/favicon.ts +++ b/src/favicon.ts @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/room/useGuestAccessInformation.ts b/src/hooks/room/useGuestAccessInformation.ts index 6f53e0d554f..bf49d434ef3 100644 --- a/src/hooks/room/useGuestAccessInformation.ts +++ b/src/hooks/room/useGuestAccessInformation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/room/useRoomCall.tsx b/src/hooks/room/useRoomCall.tsx index e1db9f92489..74a518b2170 100644 --- a/src/hooks/room/useRoomCall.tsx +++ b/src/hooks/room/useRoomCall.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/room/useRoomMemberProfile.ts b/src/hooks/room/useRoomMemberProfile.ts index b8bb44c50de..123e6f09917 100644 --- a/src/hooks/room/useRoomMemberProfile.ts +++ b/src/hooks/room/useRoomMemberProfile.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/room/useRoomThreadNotifications.ts b/src/hooks/room/useRoomThreadNotifications.ts index 356af140fb2..2740a016f76 100644 --- a/src/hooks/room/useRoomThreadNotifications.ts +++ b/src/hooks/room/useRoomThreadNotifications.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/room/useTopic.ts b/src/hooks/room/useTopic.ts index e9d98da972f..3f8de87e39a 100644 --- a/src/hooks/room/useTopic.ts +++ b/src/hooks/room/useTopic.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/spotlight/useDebouncedCallback.ts b/src/hooks/spotlight/useDebouncedCallback.ts index dbb6a3d2098..26edb3c68c8 100644 --- a/src/hooks/spotlight/useDebouncedCallback.ts +++ b/src/hooks/spotlight/useDebouncedCallback.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/spotlight/useRecentSearches.ts b/src/hooks/spotlight/useRecentSearches.ts index 1ce092a45de..7f7ec89c194 100644 --- a/src/hooks/spotlight/useRecentSearches.ts +++ b/src/hooks/spotlight/useRecentSearches.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -17,7 +17,7 @@ import { filterBoolean } from "../../utils/arrays"; export const useRecentSearches = (): [Room[], () => void] => { const [rooms, setRooms] = useState(() => { const cli = MatrixClientPeg.safeGet(); - const recents = SettingsStore.getValue("SpotlightSearch.recentSearches", null); + const recents = SettingsStore.getValue("SpotlightSearch.recentSearches", null); return filterBoolean(recents.map((r) => cli.getRoom(r))); }); diff --git a/src/hooks/useAccountData.ts b/src/hooks/useAccountData.ts index 0f55969e29a..7cbc77d525f 100644 --- a/src/hooks/useAccountData.ts +++ b/src/hooks/useAccountData.ts @@ -2,19 +2,19 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { useCallback, useState } from "react"; -import { ClientEvent, MatrixClient, MatrixEvent } from "matrix-js-sdk/src/matrix"; +import { AccountDataEvents, ClientEvent, MatrixClient, MatrixEvent } from "matrix-js-sdk/src/matrix"; import { useTypedEventEmitter } from "./useEventEmitter"; const tryGetContent = (ev?: MatrixEvent): T | undefined => ev?.getContent(); // Hook to simplify listening to Matrix account data -export const useAccountData = (cli: MatrixClient, eventType: string): T => { +export const useAccountData = (cli: MatrixClient, eventType: keyof AccountDataEvents): T => { const [value, setValue] = useState(() => tryGetContent(cli.getAccountData(eventType))); const handler = useCallback( diff --git a/src/hooks/useAnimation.ts b/src/hooks/useAnimation.ts index a02bed70832..f5da36123e9 100644 --- a/src/hooks/useAnimation.ts +++ b/src/hooks/useAnimation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useAsyncMemo.ts b/src/hooks/useAsyncMemo.ts index ee3eb7bf6e0..49925d0c747 100644 --- a/src/hooks/useAsyncMemo.ts +++ b/src/hooks/useAsyncMemo.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useAsyncRefreshMemo.ts b/src/hooks/useAsyncRefreshMemo.ts index 122b7cdb20d..646217bb63a 100644 --- a/src/hooks/useAsyncRefreshMemo.ts +++ b/src/hooks/useAsyncRefreshMemo.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useCall.ts b/src/hooks/useCall.ts index 5a913f84ad9..63f5cd87ada 100644 --- a/src/hooks/useCall.ts +++ b/src/hooks/useCall.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useDispatcher.ts b/src/hooks/useDispatcher.ts index b9b22c41377..2072e318240 100644 --- a/src/hooks/useDispatcher.ts +++ b/src/hooks/useDispatcher.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useEncryptionStatus.ts b/src/hooks/useEncryptionStatus.ts index ed8cceb9f81..32238aa4421 100644 --- a/src/hooks/useEncryptionStatus.ts +++ b/src/hooks/useEncryptionStatus.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useEventEmitter.ts b/src/hooks/useEventEmitter.ts index e3020384e91..b7c35081cd5 100644 --- a/src/hooks/useEventEmitter.ts +++ b/src/hooks/useEventEmitter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useFocus.ts b/src/hooks/useFocus.ts index b03ed479990..cbbea28d07b 100644 --- a/src/hooks/useFocus.ts +++ b/src/hooks/useFocus.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useGlobalNotificationState.ts b/src/hooks/useGlobalNotificationState.ts index 755ffbf06db..fd2f0b70637 100644 --- a/src/hooks/useGlobalNotificationState.ts +++ b/src/hooks/useGlobalNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useHover.ts b/src/hooks/useHover.ts index bbba5549dd8..1a8aecd942f 100644 --- a/src/hooks/useHover.ts +++ b/src/hooks/useHover.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useIsEncrypted.ts b/src/hooks/useIsEncrypted.ts index c9d3ed3bc80..7cdfcc68a13 100644 --- a/src/hooks/useIsEncrypted.ts +++ b/src/hooks/useIsEncrypted.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useIsInitialSyncComplete.ts b/src/hooks/useIsInitialSyncComplete.ts index b0131213a7d..25cd8f52bd5 100644 --- a/src/hooks/useIsInitialSyncComplete.ts +++ b/src/hooks/useIsInitialSyncComplete.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useIsReleaseAnnouncementOpen.ts b/src/hooks/useIsReleaseAnnouncementOpen.ts index b4a46568e27..68ab65f97a4 100644 --- a/src/hooks/useIsReleaseAnnouncementOpen.ts +++ b/src/hooks/useIsReleaseAnnouncementOpen.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/hooks/useLatestResult.ts b/src/hooks/useLatestResult.ts index 9776103ab33..632a0f7714e 100644 --- a/src/hooks/useLatestResult.ts +++ b/src/hooks/useLatestResult.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useLocalEcho.ts b/src/hooks/useLocalEcho.ts index bbb978e5d4b..baa967031f7 100644 --- a/src/hooks/useLocalEcho.ts +++ b/src/hooks/useLocalEcho.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useLocalStorageState.ts b/src/hooks/useLocalStorageState.ts index b926033e475..5efec21035f 100644 --- a/src/hooks/useLocalStorageState.ts +++ b/src/hooks/useLocalStorageState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useNotificationSettings.tsx b/src/hooks/useNotificationSettings.tsx index bf4290a0683..3036a8122c2 100644 --- a/src/hooks/useNotificationSettings.tsx +++ b/src/hooks/useNotificationSettings.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/usePermalink.ts b/src/hooks/usePermalink.ts index 18c5ed6b980..f9174654fce 100644 --- a/src/hooks/usePermalink.ts +++ b/src/hooks/usePermalink.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/usePermalinkEvent.ts b/src/hooks/usePermalinkEvent.ts index ff77f15238c..12844d73bb4 100644 --- a/src/hooks/usePermalinkEvent.ts +++ b/src/hooks/usePermalinkEvent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/usePermalinkMember.ts b/src/hooks/usePermalinkMember.ts index 1fc144c9f67..787062ca3a5 100644 --- a/src/hooks/usePermalinkMember.ts +++ b/src/hooks/usePermalinkMember.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/usePermalinkTargetRoom.ts b/src/hooks/usePermalinkTargetRoom.ts index e5f46cc496a..7a3a40ae521 100644 --- a/src/hooks/usePermalinkTargetRoom.ts +++ b/src/hooks/usePermalinkTargetRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/usePinnedEvents.ts b/src/hooks/usePinnedEvents.ts index a29c65625c5..bdda4a77013 100644 --- a/src/hooks/usePinnedEvents.ts +++ b/src/hooks/usePinnedEvents.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/hooks/useProfileInfo.ts b/src/hooks/useProfileInfo.ts index bc57f271603..45500fac692 100644 --- a/src/hooks/useProfileInfo.ts +++ b/src/hooks/useProfileInfo.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/usePublicRoomDirectory.ts b/src/hooks/usePublicRoomDirectory.ts index 339ee9ad6dc..2e8cfb21b62 100644 --- a/src/hooks/usePublicRoomDirectory.ts +++ b/src/hooks/usePublicRoomDirectory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -55,7 +55,7 @@ export const usePublicRoomDirectory = (): { const [updateQuery, updateResult] = useLatestResult(setPublicRooms); - const showNsfwPublicRooms = useSettingValue("SpotlightSearch.showNsfwPublicRooms"); + const showNsfwPublicRooms = useSettingValue("SpotlightSearch.showNsfwPublicRooms"); async function initProtocols(): Promise { if (!MatrixClientPeg.get()) { diff --git a/src/hooks/usePushers.ts b/src/hooks/usePushers.ts index 38c36ebc888..8dc62832913 100644 --- a/src/hooks/usePushers.ts +++ b/src/hooks/usePushers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useRoomMembers.ts b/src/hooks/useRoomMembers.ts index 51aa7b46406..7a37d693dfb 100644 --- a/src/hooks/useRoomMembers.ts +++ b/src/hooks/useRoomMembers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useRoomName.ts b/src/hooks/useRoomName.ts index b1f25b7ca29..201cc088de6 100644 --- a/src/hooks/useRoomName.ts +++ b/src/hooks/useRoomName.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useRoomNotificationState.ts b/src/hooks/useRoomNotificationState.ts index 46dd4e5524e..c964501aa9f 100644 --- a/src/hooks/useRoomNotificationState.ts +++ b/src/hooks/useRoomNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useRoomState.ts b/src/hooks/useRoomState.ts index 8c0c5596100..24c4609b12a 100644 --- a/src/hooks/useRoomState.ts +++ b/src/hooks/useRoomState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useSettings.ts b/src/hooks/useSettings.ts index 169fccb7c0e..7fbf5231fa1 100644 --- a/src/hooks/useSettings.ts +++ b/src/hooks/useSettings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,14 +10,39 @@ import { useEffect, useState } from "react"; import SettingsStore from "../settings/SettingsStore"; import { SettingLevel } from "../settings/SettingLevel"; +import { FeatureSettingKey, SettingKey, Settings } from "../settings/Settings.tsx"; // Hook to fetch the value of a setting and dynamically update when it changes -export const useSettingValue = (settingName: string, roomId: string | null = null, excludeDefault = false): T => { - const [value, setValue] = useState(SettingsStore.getValue(settingName, roomId, excludeDefault)); +export function useSettingValue( + settingName: S, + roomId: string | null, + excludeDefault: true, +): Settings[S]["default"] | undefined; +export function useSettingValue( + settingName: S, + roomId?: string | null, + excludeDefault?: false, +): Settings[S]["default"]; +export function useSettingValue( + settingName: S, + roomId: string | null = null, + excludeDefault = false, +): Settings[S]["default"] | undefined { + const [value, setValue] = useState( + // XXX: This seems naff but is needed to convince TypeScript that the overload is fine + excludeDefault + ? SettingsStore.getValue(settingName, roomId, excludeDefault) + : SettingsStore.getValue(settingName, roomId, excludeDefault), + ); useEffect(() => { const ref = SettingsStore.watchSetting(settingName, roomId, () => { - setValue(SettingsStore.getValue(settingName, roomId, excludeDefault)); + setValue( + // XXX: This seems naff but is needed to convince TypeScript that the overload is fine + excludeDefault + ? SettingsStore.getValue(settingName, roomId, excludeDefault) + : SettingsStore.getValue(settingName, roomId, excludeDefault), + ); }); // clean-up return () => { @@ -26,7 +51,7 @@ export const useSettingValue = (settingName: string, roomId: string | null = }, [settingName, roomId, excludeDefault]); return value; -}; +} /** * Hook to fetch the value of a setting at a specific level and dynamically update when it changes @@ -37,20 +62,18 @@ export const useSettingValue = (settingName: string, roomId: string | null = * @param explicit * @param excludeDefault */ -export const useSettingValueAt = ( +export const useSettingValueAt = ( level: SettingLevel, - settingName: string, + settingName: S, roomId: string | null = null, explicit = false, excludeDefault = false, -): T => { - const [value, setValue] = useState( - SettingsStore.getValueAt(level, settingName, roomId, explicit, excludeDefault), - ); +): Settings[S]["default"] => { + const [value, setValue] = useState(SettingsStore.getValueAt(level, settingName, roomId, explicit, excludeDefault)); useEffect(() => { const ref = SettingsStore.watchSetting(settingName, roomId, () => { - setValue(SettingsStore.getValueAt(level, settingName, roomId, explicit, excludeDefault)); + setValue(SettingsStore.getValueAt(level, settingName, roomId, explicit, excludeDefault)); }); // clean-up return () => { @@ -62,8 +85,8 @@ export const useSettingValueAt = ( }; // Hook to fetch whether a feature is enabled and dynamically update when that changes -export const useFeatureEnabled = (featureName: string, roomId: string | null = null): boolean => { - const [enabled, setEnabled] = useState(SettingsStore.getValue(featureName, roomId)); +export const useFeatureEnabled = (featureName: FeatureSettingKey, roomId: string | null = null): boolean => { + const [enabled, setEnabled] = useState(SettingsStore.getValue(featureName, roomId)); useEffect(() => { const ref = SettingsStore.watchSetting(featureName, roomId, () => { diff --git a/src/hooks/useSlidingSyncRoomSearch.ts b/src/hooks/useSlidingSyncRoomSearch.ts index bd8529bfd97..079d11d7e7a 100644 --- a/src/hooks/useSlidingSyncRoomSearch.ts +++ b/src/hooks/useSlidingSyncRoomSearch.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useSmoothAnimation.ts b/src/hooks/useSmoothAnimation.ts index df62a4d3d5e..dd157911b3f 100644 --- a/src/hooks/useSmoothAnimation.ts +++ b/src/hooks/useSmoothAnimation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useSpaceResults.ts b/src/hooks/useSpaceResults.ts index 75a0a119a97..3c4698cb667 100644 --- a/src/hooks/useSpaceResults.ts +++ b/src/hooks/useSpaceResults.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useStateArray.ts b/src/hooks/useStateArray.ts index 3db3f5fe7fe..1b57a29652b 100644 --- a/src/hooks/useStateArray.ts +++ b/src/hooks/useStateArray.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useStateCallback.ts b/src/hooks/useStateCallback.ts index 661898c9f64..ec46d0151f5 100644 --- a/src/hooks/useStateCallback.ts +++ b/src/hooks/useStateCallback.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useStateToggle.ts b/src/hooks/useStateToggle.ts index c5f24c5db67..d808d9b133e 100644 --- a/src/hooks/useStateToggle.ts +++ b/src/hooks/useStateToggle.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useTheme.ts b/src/hooks/useTheme.ts index e459e68011a..31b01dc2e3b 100644 --- a/src/hooks/useTheme.ts +++ b/src/hooks/useTheme.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -16,10 +16,10 @@ export function useTheme(): { theme: string; systemThemeActivated: boolean } { // We have to mirror the logic from ThemeWatcher.getEffectiveTheme so we // show the right values for things. - const themeChoice = useSettingValue("theme"); - const systemThemeExplicit = useSettingValueAt(SettingLevel.DEVICE, "use_system_theme", null, false, true); - const themeExplicit = useSettingValueAt(SettingLevel.DEVICE, "theme", null, false, true); - const systemThemeActivated = useSettingValue("use_system_theme"); + const themeChoice = useSettingValue("theme"); + const systemThemeExplicit = useSettingValueAt(SettingLevel.DEVICE, "use_system_theme", null, false, true); + const themeExplicit = useSettingValueAt(SettingLevel.DEVICE, "theme", null, false, true); + const systemThemeActivated = useSettingValue("use_system_theme"); // If the user has enabled system theme matching, use that. if (systemThemeExplicit) { diff --git a/src/hooks/useThreepids.ts b/src/hooks/useThreepids.ts index 7e9f2cc52b0..32884bc7cc1 100644 --- a/src/hooks/useThreepids.ts +++ b/src/hooks/useThreepids.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useTimeout.ts b/src/hooks/useTimeout.ts index c88de82c0f0..64343cbfadb 100644 --- a/src/hooks/useTimeout.ts +++ b/src/hooks/useTimeout.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useTimeoutToggle.ts b/src/hooks/useTimeoutToggle.ts index 83f1bc333bb..c67af845dbc 100644 --- a/src/hooks/useTimeoutToggle.ts +++ b/src/hooks/useTimeoutToggle.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useTransition.ts b/src/hooks/useTransition.ts index 853354e1001..e583ba85573 100644 --- a/src/hooks/useTransition.ts +++ b/src/hooks/useTransition.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useUnreadNotifications.ts b/src/hooks/useUnreadNotifications.ts index 47e4e6b8110..7697524da50 100644 --- a/src/hooks/useUnreadNotifications.ts +++ b/src/hooks/useUnreadNotifications.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useUserDirectory.ts b/src/hooks/useUserDirectory.ts index 09b55f21afe..8599b2488ab 100644 --- a/src/hooks/useUserDirectory.ts +++ b/src/hooks/useUserDirectory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useUserOnboardingContext.ts b/src/hooks/useUserOnboardingContext.ts index 8bd93603d44..48517bd1924 100644 --- a/src/hooks/useUserOnboardingContext.ts +++ b/src/hooks/useUserOnboardingContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/hooks/useUserOnboardingTasks.ts b/src/hooks/useUserOnboardingTasks.ts index 2ede7076cbd..87fec0d78d1 100644 --- a/src/hooks/useUserOnboardingTasks.ts +++ b/src/hooks/useUserOnboardingTasks.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -145,7 +145,7 @@ const tasks: UserOnboardingTask[] = [ ]; export function useUserOnboardingTasks(context: UserOnboardingContext): UserOnboardingTaskWithResolvedCompletion[] { - const useCase = useSettingValue("FTUE.useCaseSelection") ?? UseCase.Skip; + const useCase = useSettingValue("FTUE.useCaseSelection") ?? UseCase.Skip; return useMemo(() => { return tasks diff --git a/src/hooks/useUserTimezone.ts b/src/hooks/useUserTimezone.ts index 686679bb90f..c6c98483ddf 100644 --- a/src/hooks/useUserTimezone.ts +++ b/src/hooks/useUserTimezone.ts @@ -1,17 +1,8 @@ /* -Copyright 2024 New Vector Ltd +Copyright 2024 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. +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 { useEffect, useState } from "react"; import { MatrixClient, MatrixError } from "matrix-js-sdk/src/matrix"; diff --git a/src/hooks/useWindowWidth.ts b/src/hooks/useWindowWidth.ts index 0b952ffce84..ddf64bbd9b4 100644 --- a/src/hooks/useWindowWidth.ts +++ b/src/hooks/useWindowWidth.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/i18n/strings/cs.json b/src/i18n/strings/cs.json index df8a243c730..6ab0ad17c42 100644 --- a/src/i18n/strings/cs.json +++ b/src/i18n/strings/cs.json @@ -235,7 +235,6 @@ "oidc": { "error_title": "Nemohli jsme vás přihlásit", "generic_auth_error": "Během autentizace se něco pokazilo. Přejděte na přihlašovací stránku a zkuste to znovu.", - "logout_redirect_warning": "Budete přesměrováni na poskytovatele ověřování vašeho serveru, kde dokončíte odhlášení.", "missing_or_invalid_stored_state": "Požádali jsme prohlížeč, aby si zapamatoval, který domovský server používáte k přihlášení, ale váš prohlížeč to bohužel zapomněl. Přejděte na přihlašovací stránku a zkuste to znovu." }, "password_field_keep_going_prompt": "Pokračujte…", @@ -1391,8 +1390,6 @@ "notification_settings_beta_caption": "Představujeme jednodušší způsob, jak změnit nastavení oznámení. Přizpůsobte svůj %(brand)s přesně tak, jak se vám líbí.", "notification_settings_beta_title": "Nastavení oznámení", "notifications": "Zapnout panel oznámení v záhlaví místnosti", - "oidc_native_flow": "Nativní autentizace OIDC", - "oidc_native_flow_description": "⚠ VAROVÁNÍ: Experimentální. Použijte nativní ověřování OIDC, pokud je serverem podporováno.", "render_reaction_images": "Vykreslování vlastních obrázků v reakcích", "render_reaction_images_description": "Někdy se označují jako \"vlastní emoji\".", "report_to_moderators": "Nahlásit moderátorům", diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 5a4a6043fbc..efe3a4e75a6 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -129,7 +129,7 @@ "try_again": "Erneut versuchen", "unban": "Verbannung aufheben", "unignore": "Freigeben", - "unpin": "Nicht mehr anheften", + "unpin": "Loslösen", "unsubscribe": "Deabonnieren", "update": "Aktualisieren", "upgrade": "Aktualisieren", @@ -238,7 +238,6 @@ "oidc": { "error_title": "Wir konnten dich nicht anmelden", "generic_auth_error": "Etwas ist während der Authentifizierung schiefgelaufen. Geh zurück zur Anmeldeseite und probiere es erneut.", - "logout_redirect_warning": "Sie werden zum Server Authentifizierungsanbieter weitergeleitet, um die Abmeldung abzuschließen.", "missing_or_invalid_stored_state": "Wir haben deinen Browser gebeten, sich zu merken, bei welchem Heim-Server du dich anmeldest, aber dein Browser hat dies leider vergessen. Gehe zur Anmeldeseite und versuche es erneut." }, "password_field_keep_going_prompt": "Fortfahren …", @@ -567,7 +566,7 @@ "system_alerts": "Systembenachrichtigung", "theme": "Design", "thread": "Thema", - "threads": "Themen", + "threads": "Threads", "timeline": "Verlauf", "trusted": "Vertrauenswürdig", "unavailable": "Nicht verfügbar", @@ -914,6 +913,9 @@ "warning": "Wenn du die Wiederherstellungsmethode nicht gelöscht hast, kann ein Angreifer versuchen, Zugang zu deinem Konto zu bekommen. Ändere dein Passwort und richte sofort eine neue Wiederherstellungsmethode in den Einstellungen ein." }, "reset_all_button": "Hast du alle Wiederherstellungsmethoden vergessen? Setze sie hier zurück", + "set_up_recovery": "Wiederherstellung einrichten", + "set_up_recovery_later": "Nicht jetzt", + "set_up_recovery_toast_description": "Generieren Sie einen Wiederherstellungsschlüssel, damit Sie Ihren verschlüsselten Nachrichtenverlauf wiederherstellen können, falls Sie den Zugriff auf Ihre Geräte verlieren.", "set_up_toast_description": "Schütze dich vor dem Verlust verschlüsselter Nachrichten und Daten", "set_up_toast_title": "Schlüsselsicherung einrichten", "setup_secure_backup": { @@ -1391,7 +1393,7 @@ "space": "Leertaste", "switch_to_space": "Mit Nummer zu Leerzeichen springen", "toggle_hidden_events": "Sichtbarkeit versteckter Ereignisse umschalten", - "toggle_microphone_mute": "Mikrofon an-/ausschalten", + "toggle_microphone_mute": "Mikrofon ein-/ausschalten", "toggle_right_panel": "Rechtes Panel ein-/ausblenden", "toggle_space_panel": "Space-Panel ein/aus", "toggle_top_left_menu": "Menü oben links ein-/ausblenden", @@ -1458,8 +1460,6 @@ "notification_settings_beta_caption": "Einen einfacheren Weg um die Einstellungen für Benachrichtigungen zu ändern vorstellen. Passe Deine %(brand)s so an wie Du willst.", "notification_settings_beta_title": "Benachrichtigungseinstellungen", "notifications": "Benachrichtigungen in der Kopfleiste des Raums anschalten", - "oidc_native_flow": "Native OIDC Authentifizierung", - "oidc_native_flow_description": "⚠ Warnung: Experimentell. Nutze OIDC native Authentifizierung wenn dies vom Server unterstützt wird.", "release_announcement": "Release Ankündigung", "render_reaction_images": "Benutzerdefinierte Bilder in Reaktionen anzeigen", "render_reaction_images_description": "Werden manchmal auch als „benutzerdefinierte Emojis“ bezeichnet.", @@ -1846,9 +1846,9 @@ }, "reply_thread": "Auf Nachricht im Thread antworten", "unpin_all": { - "button": "Alle Nachrichten lösen", + "button": "Alle Nachrichten loslösen", "content": "Stellen Sie sicher, dass Sie wirklich alle angehefteten Nachrichten entfernen möchten. Diese Aktion kann nicht rückgängig gemacht werden.", - "title": "Alle Nachrichten lösen?" + "title": "Alle Nachrichten loslösen?" }, "view": "Im Nachrichtenverlauf ansehen" }, @@ -2032,7 +2032,7 @@ "button_view_all": "Alle anzeigen", "description": "In diesem Raum sind Nachrichten angeheftet. Klicken Sie hier, um sie anzusehen.", "go_to_message": "Fixierte Nachrichten im Nachrichtenverlauf anzeigen.", - "title": "%(index)s of %(length)s Angeheftete Nachrichten" + "title": "%(index)s of %(length)s Fixierte Nachrichten" }, "read_topic": "Klicke, um das Thema zu lesen", "rejecting": "Lehne Einladung ab …", @@ -2417,7 +2417,7 @@ }, "settings": { "account": { - "dialog_title": "Einstellunge: Konto", + "dialog_title": "Einstellungen: Konto", "title": "Konto" }, "all_rooms_home": "Alle Räume auf Startseite anzeigen", @@ -2603,7 +2603,7 @@ "title": "Tastatur" }, "labs": { - "dialog_title": "Einstellungen: Labore" + "dialog_title": "Einstellungen: Labor" }, "labs_mjolnir": { "dialog_title": "Einstellungen: Blockierte Benutzer" @@ -2819,6 +2819,7 @@ "inactive_sessions_list_description": "Erwäge, dich aus alten (%(inactiveAgeDays)s Tage oder mehr), nicht mehr verwendeten Sitzungen abzumelden.", "ip": "IP-Adresse", "last_activity": "Neueste Aktivität", + "manage": "Diese Sitzung verwalten", "mobile_session": "Mobil-Sitzung", "n_sessions_selected": { "one": "%(count)s Sitzung ausgewählt", @@ -3014,7 +3015,7 @@ "topic_room_error": "Thema des Raums konnte nicht ermittelt werden: Raum kann nicht gefunden werden (%(roomId)s", "tovirtual": "Zum virtuellen Raum dieses Raums wechseln, sofern vorhanden", "tovirtual_not_found": "Kein virtueller Raum für diesen Raum", - "unban": "Entbannt den Benutzer mit der angegebenen ID", + "unban": "Entsperrt den Benutzer mit der angegebenen ID", "unflip": "Stellt ┬──┬ ノ( ゜-゜ノ) einer Klartextnachricht voran", "unholdcall": "Beendet das Halten des Anrufs", "unignore": "Benutzer freigeben und ihre neuen Nachrichten wieder anzeigen", @@ -3413,7 +3414,7 @@ "remove_name": "%(senderName)s hat den alten Anzeigenamen %(oldDisplayName)s entfernt", "set_avatar": "%(senderName)s hat das Profilbild gesetzt", "set_name": "%(senderName)s hat den Anzeigenamen zu %(displayName)s geändert", - "unban": "%(senderName)s hat %(targetName)s entbannt", + "unban": "%(senderName)s hat die Verbannung von %(targetName)s aufgehoben", "withdrew_invite": "%(senderName)s hat die Einladung für %(targetName)s zurückgezogen", "withdrew_invite_reason": "%(senderName)s hat die Einladung für %(targetName)s zurückgezogen: %(reason)s" }, diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index c72ba7de314..8740cfe3a62 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -238,7 +238,6 @@ "oidc": { "error_title": "We couldn't log you in", "generic_auth_error": "Something went wrong during authentication. Go to the sign in page and try again.", - "logout_redirect_warning": "You will be redirected to your server's authentication provider to complete sign out.", "missing_or_invalid_stored_state": "We asked the browser to remember which homeserver you use to let you sign in, but unfortunately your browser has forgotten it. Go to the sign in page and try again." }, "password_field_keep_going_prompt": "Keep going…", @@ -916,6 +915,9 @@ "warning": "If you didn't remove the recovery method, an attacker may be trying to access your account. Change your account password and set a new recovery method immediately in Settings." }, "reset_all_button": "Forgotten or lost all recovery methods? Reset all", + "set_up_recovery": "Set up recovery", + "set_up_recovery_later": "Not now", + "set_up_recovery_toast_description": "Generate a recovery key that can be used to restore your encrypted message history in case you lose access to your devices.", "set_up_toast_description": "Safeguard against losing access to encrypted messages & data", "set_up_toast_title": "Set up Secure Backup", "setup_secure_backup": { @@ -1460,8 +1462,6 @@ "notification_settings_beta_caption": "Introducing a simpler way to change your notification settings. Customize your %(brand)s, just the way you like.", "notification_settings_beta_title": "Notification Settings", "notifications": "Enable the notifications panel in the room header", - "oidc_native_flow": "OIDC native authentication", - "oidc_native_flow_description": "⚠ WARNING: Experimental. Use OIDC native authentication when supported by the server.", "release_announcement": "Release announcement", "render_reaction_images": "Render custom images in reactions", "render_reaction_images_description": "Sometimes referred to as \"custom emojis\".", @@ -2822,6 +2822,7 @@ "inactive_sessions_list_description": "Consider signing out from old sessions (%(inactiveAgeDays)s days or older) you don't use anymore.", "ip": "IP address", "last_activity": "Last activity", + "manage": "Manage this session", "mobile_session": "Mobile session", "n_sessions_selected": { "one": "%(count)s session selected", diff --git a/src/i18n/strings/es.json b/src/i18n/strings/es.json index 0f54ccca700..c201421a316 100644 --- a/src/i18n/strings/es.json +++ b/src/i18n/strings/es.json @@ -21,6 +21,7 @@ "add_people": "Añadir gente", "apply": "Aplicar", "approve": "Aprobar", + "ask_to_join": "Pedir acceso", "back": "Volver", "call": "Llamar", "cancel": "Cancelar", @@ -40,6 +41,7 @@ "create_account": "Crear cuenta", "decline": "Rechazar", "delete": "Borrar", + "deny": "Denegar", "disable": "Desactivar", "disconnect": "Desconectarse", "dismiss": "Omitir", @@ -76,10 +78,13 @@ "new_room": "Nueva sala", "new_video_room": "Nueva sala de vídeo", "next": "Siguiente", + "no": "No", "ok": "Vale", "open": "Abrir", "pause": "Pausar", + "pin": "Fijar", "play": "Reproducir", + "proceed": "Continuar", "quote": "Citar", "react": "Reaccionar", "refresh": "Refrescar", @@ -389,12 +394,14 @@ "other": "y %(count)s más…", "one": "y otro más…" }, + "android": "Android", "appearance": "Apariencia", "application": "Aplicación", "are_you_sure": "¿Estás seguro?", "attachment": "Adjunto", "authentication": "Autenticación", "avatar": "Imagen de perfil", + "beta": "Beta", "camera": "Cámara", "cameras": "Cámaras", "capabilities": "Funcionalidades", @@ -409,6 +416,7 @@ "email_address": "Dirección de correo electrónico", "encrypted": "Cifrado", "encryption_enabled": "El cifrado está activado", + "error": "Error", "faq": "Preguntas frecuentes", "favourites": "Favoritos", "feedback": "Danos tu opinión", @@ -423,12 +431,14 @@ "identity_server": "Servidor de identidad", "image": "Imagen", "integration_manager": "Gestor de integración", + "ios": "iOS", "joined": "Te has unido", "labs": "Experimentos", "light": "Claro", "loading": "Cargando…", "location": "Ubicación", "low_priority": "Prioridad baja", + "matrix": "Matrix", "message": "Mensaje", "message_layout": "Diseño del mensaje", "microphone": "Micrófono", @@ -1012,7 +1022,10 @@ "format": "Formato", "from_the_beginning": "Desde el principio", "generating_zip": "Generar un archivo ZIP", + "html": "HTML", + "html_title": "Datos exportados", "include_attachments": "Incluir archivos adjuntos", + "json": "JSON", "media_omitted": "Archivo omitido", "media_omitted_file_size": "Archivo omitido - supera el límite de tamaño", "messages": "Mensajes", @@ -1171,6 +1184,7 @@ }, "keyboard": { "activate_button": "Activar botón seleccionado", + "alt": "Alt", "autocomplete_cancel": "Cancelar autocompletar", "autocomplete_force": "Forzar a que termine", "autocomplete_navigate_next": "Sugerencia siguiente", @@ -1194,8 +1208,11 @@ "composer_toggle_link": "Alternar enlace", "composer_toggle_quote": "Alternar cita", "composer_undo": "Deshacer edición", + "control": "Ctrl", "dismiss_read_marker_and_jump_bottom": "Descartar el marcador de lectura y saltar al final", "end": "Fin", + "enter": "Intro", + "escape": "Esc", "go_home_view": "Ir a la vista de inicio", "home": "Inicio", "jump_first_message": "Ir al primer mensaje", @@ -1224,6 +1241,7 @@ "scroll_up_timeline": "Subir en la línea de tiempo", "search": "Buscar (si está activado)", "send_sticker": "Enviar una pegatina", + "shift": "Mayús", "space": "Espacio", "switch_to_space": "Ir a un espacio por número", "toggle_hidden_events": "Alternar visibilidad del evento oculto", @@ -1281,7 +1299,6 @@ "location_share_live_description": "Implementación temporal. Las ubicaciones persisten en el historial de la sala.", "mjolnir": "Nuevas maneras de ignorar a otras personas", "msc3531_hide_messages_pending_moderation": "Permitir a los moderadores ocultar mensajes a la espera de revisión.", - "oidc_native_flow": "Activar flujos de OIDC nativos (en desarrollo)", "report_to_moderators": "Denunciar ante los moderadores", "report_to_moderators_description": "En las salas que sean compatible con la moderación, el botón de «Denunciar» avisará a los moderadores de la sala.", "sliding_sync": "Modo de sincronización progresiva", @@ -2780,8 +2797,11 @@ "n_minutes_ago": "hace %(num)s minutos", "seconds_left": "%(seconds)ss restantes", "short_days": "%(value)s d", + "short_days_hours_minutes_seconds": "%(days)sd %(hours)sh %(minutes)sm %(seconds)ss", "short_hours": "%(value)s h", + "short_hours_minutes_seconds": "%(hours)sh %(minutes)sm %(seconds)ss", "short_minutes": "%(value)s min", + "short_minutes_seconds": "%(minutes)sm %(seconds)ss", "short_seconds": "%(value)s s" }, "timeline": { diff --git a/src/i18n/strings/et.json b/src/i18n/strings/et.json index 093dcf861ef..8fa4fbb5020 100644 --- a/src/i18n/strings/et.json +++ b/src/i18n/strings/et.json @@ -235,7 +235,6 @@ "oidc": { "error_title": "Meil ei õnnestunud sind sisse logida", "generic_auth_error": "Autentimisel läks midagi valesti. Mine sisselogimise lehele ja proovi uuesti.", - "logout_redirect_warning": "Sind suunatakse välja logimise lõpuleviimiseks ümber oma serveri autentimise teenusepakkujale.", "missing_or_invalid_stored_state": "Me sättisime nii, et sinu veebibrauser jätaks järgmiseks sisselogimiseks meelde sinu koduserveri, kuid kahjuks on ta selle unustanud. Palun mine sisselogimise lehele ja proovi uuesti." }, "password_field_keep_going_prompt": "Jätka…", @@ -1387,8 +1386,6 @@ "notification_settings": "Uued teavituste seadistused", "notification_settings_beta_title": "Teavituste seadistused", "notifications": "Kasuta jututoa päises teavituste riba", - "oidc_native_flow": "OIDC-põhine autentimine", - "oidc_native_flow_description": "⚠ HOIATUS: Kasuta OIDC liidestust, kui server seda võimaldab (aktiivselt arendamisel).", "report_to_moderators": "Teata moderaatoritele", "report_to_moderators_description": "Kui jututoas on modereerimine kasutusel, siis nupust „Teata sisust“ avaneva vormi abil saad jututoa reegleid rikkuvast sisust teatada moderaatoritele.", "sliding_sync": "Järkjärgulise sünkroniseerimise režiim", diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index 08348ba29d6..986a0283310 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -238,7 +238,6 @@ "oidc": { "error_title": "Nous n’avons pas pu vous connecter", "generic_auth_error": "Une erreur s’est produite lors de l’authentification. Allez à la page de connexion et réessayez.", - "logout_redirect_warning": "Vous allez être redirigé vers le fournisseur d’authentification de votre serveur pour terminer la déconnexion.", "missing_or_invalid_stored_state": "Nous avons demandé à votre navigateur de mémoriser votre serveur d’accueil, mais il semble l’avoir oublié. Rendez-vous à la page de connexion et réessayez." }, "password_field_keep_going_prompt": "En cours…", @@ -1458,8 +1457,6 @@ "notification_settings_beta_caption": "Introduit une manière plus simple de changer vos préférences de notifications. Customisez %(brand)s, comme ça vous convient.", "notification_settings_beta_title": "Paramètres de notification", "notifications": "Active le panneau de notifications dans l’en-tête du salon", - "oidc_native_flow": "Authentification native OIDC", - "oidc_native_flow_description": "⚠ ATTENTION : Expérimental. Utilise l’authentification OIDC native lorsqu’elle est prise en charge par le serveur.", "release_announcement": "Annonce de sortie", "render_reaction_images": "Afficher les images personnalisées des réactions", "render_reaction_images_description": "Parfois appelés « émojis personnalisés ».", diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index 349c4a39cdb..c33d548b425 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -229,7 +229,6 @@ "no_hs_url_provided": "Nincs megadva a Matrix-kiszolgáló webcíme", "oidc": { "error_title": "Sajnos nem tudtuk bejelentkeztetni", - "logout_redirect_warning": "Át lesz irányítva a kiszolgáló hitelesítésszolgáltatójához a kijelentkezés befejezéséhez.", "missing_or_invalid_stored_state": "A böngészőt arra kértük, hogy jegyezze meg, melyik Matrix-kiszolgálót használta a bejelentkezéshez, de sajnos a böngészője elfelejtette. Navigáljon a bejelentkezési oldalra, és próbálja újra." }, "password_field_keep_going_prompt": "Így tovább…", diff --git a/src/i18n/strings/id.json b/src/i18n/strings/id.json index 9eade90bc21..325b59a2885 100644 --- a/src/i18n/strings/id.json +++ b/src/i18n/strings/id.json @@ -229,7 +229,6 @@ "no_hs_url_provided": "Tidak ada URL homeserver yang disediakan", "oidc": { "error_title": "Kami tidak dapat memasukkan Anda", - "logout_redirect_warning": "Anda akan diarahkan ke penyedia autentikasi server Anda untuk menyelesaikan proses keluar.", "missing_or_invalid_stored_state": "Kami menanyakan browser ini untuk mengingat homeserver apa yang Anda gunakan untuk membantu Anda masuk, tetapi sayangnya browser ini melupakannya. Pergi ke halaman masuk dan coba lagi." }, "password_field_keep_going_prompt": "Lanjutkan…", @@ -1368,7 +1367,6 @@ "notification_settings_beta_caption": "Perkenalkan cara yang lebih sederhana untuk mengubah pengaturan notifikasi Anda. Sesuaikan %(brand)s Anda, sesuai keinginan Anda.", "notification_settings_beta_title": "Pengaturan Notifikasi", "notifications": "Aktifkan panel notifikasi di tajuk ruangan", - "oidc_native_flow": "Autentikasi asli OIDC", "render_reaction_images": "Render gambar khusus dalam reaksi", "render_reaction_images_description": "Terkadang disebut sebagai \"emoji khusus\".", "report_to_moderators": "Laporkan ke moderator", diff --git a/src/i18n/strings/it.json b/src/i18n/strings/it.json index 1ddf88e8327..a4976241d47 100644 --- a/src/i18n/strings/it.json +++ b/src/i18n/strings/it.json @@ -235,7 +235,6 @@ "oidc": { "error_title": "Non abbiamo potuto farti accedere", "generic_auth_error": "Qualcosa è andato storto durante l'autenticazione. Vai alla pagina di accesso e riprova.", - "logout_redirect_warning": "Verrai reindirizzato al fornitore di autenticazione del tuo server per completare la disconnessione.", "missing_or_invalid_stored_state": "Abbiamo chiesto al browser di ricordare quale homeserver usi per farti accedere, ma sfortunatamente l'ha dimenticato. Vai alla pagina di accesso e riprova." }, "password_field_keep_going_prompt": "Continua…", @@ -1390,8 +1389,6 @@ "notification_settings_beta_caption": "Ti presentiamo un modo più semplice per modificare le impostazioni delle notifiche. Personalizza il tuo %(brand)s, proprio come piace a te.", "notification_settings_beta_title": "Impostazioni di notifica", "notifications": "Attiva il pannello delle notifiche nell'intestazione della stanza", - "oidc_native_flow": "Autenticazione nativa OIDC", - "oidc_native_flow_description": "⚠ ATTENZIONE: sperimentale. Usa l'autenticazione nativa OIDC se supportata dal server.", "render_reaction_images": "Mostra immagini personalizzate nelle reazioni", "render_reaction_images_description": "A volte chiamati \"emoji personalizzati\".", "report_to_moderators": "Segnala ai moderatori", diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 66ac8070804..75f6a258371 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -238,7 +238,6 @@ "oidc": { "error_title": "Nie mogliśmy Cię zalogować", "generic_auth_error": "Coś poszło nie tak podczas uwierzytelniania. Przejdź do strony logowania i spróbuj ponownie.", - "logout_redirect_warning": "Zostaniesz przekierowany do dostawcy uwierzytelniania Twojego serwera w celu zakończenia wylogowania.", "missing_or_invalid_stored_state": "Poprosiliśmy przeglądarkę, aby zapamiętała za pomocą jakiego serwera domowego się logujesz, lecz niestety go zapomniała. Przejdź do strony logowania i spróbuj ponownie." }, "password_field_keep_going_prompt": "Kontynuuj…", @@ -918,6 +917,9 @@ "warning": "Jeśli nie usunąłeś metody odzyskiwania, atakujący może próbować dostać się na Twoje konto. Zmień hasło konta i natychmiast ustaw nową metodę odzyskiwania w Ustawieniach." }, "reset_all_button": "Zapomniałeś lub straciłeś wszystkie opcje odzyskiwania? Resetuj wszystko", + "set_up_recovery": "Skonfiguruj przywracanie", + "set_up_recovery_later": "Nie teraz", + "set_up_recovery_toast_description": "Wygeneruj klucz przywracania, którego można użyć do przywrócenia zaszyfrowanej historii wiadomości w przypadku utraty dostępu do swoich urządzeń.", "set_up_toast_description": "Zabezpiecz się przed utratą dostępu do szyfrowanych wiadomości i danych", "set_up_toast_title": "Skonfiguruj bezpieczną kopię zapasową", "setup_secure_backup": { @@ -1468,8 +1470,6 @@ "notification_settings_beta_caption": "Przedstawiamy prostszy sposób zmiany ustawień powiadomień. Dostosuj %(brand)s wedle swojego upodobania.", "notification_settings_beta_title": "Ustawienia powiadomień", "notifications": "Włącz panel powiadomień w nagłówku pokoju.", - "oidc_native_flow": "Uwierzytelnianie natywne OIDC", - "oidc_native_flow_description": "⚠ OSTRZEŻENIE: Funkcja eksperymentalna. Użyj uwierzytelniania natywnego OIDC, gdy jest wspierane przez serwer.", "release_announcement": "Ogłoszenie o wydaniu", "render_reaction_images": "Renderuj niestandardowe obrazy w reakcjach", "render_reaction_images_description": "Czasami określane jako \"emoji niestandardowe\".", @@ -2115,7 +2115,8 @@ "show_less": "Pokaż mniej", "show_n_more": { "one": "Pokaż %(count)s więcej", - "other": "Pokaż %(count)s więcej" + "few": "Pokaż %(count)s więcej", + "many": "Pokaż %(count)s więcej" }, "show_previews": "Pokazuj podgląd wiadomości", "sort_by": "Sortuj według", @@ -2512,8 +2513,8 @@ "discovery_email_empty": "Opcje odkrywania pojawią się, gdy dodasz adres e-mail.", "discovery_email_verification_instructions": "Zweryfikuj link w swojej skrzynce odbiorczej", "discovery_msisdn_empty": "Opcje odkrywania pojawią się, gdy dodasz numer telefonu.", - "discovery_needs_terms": "Wyrażasz zgodę na warunki użytkowania serwera%(serverName)s aby pozwolić na odkrywanie Ciebie za pomocą adresu e-mail oraz numeru telefonu.", - "discovery_needs_terms_title": "Pozwól ludziom Cię znaleźć", + "discovery_needs_terms": "Musisz wyrazić zgodę na warunki świadczenia usług serwera (%(serverName)s), aby umożliwić odkrywanie Cię za pomocą adresu e-mail oraz numeru telefonu.", + "discovery_needs_terms_title": "Zezwól ludziom na znalezienie Cię", "display_name": "Wyświetlana nazwa", "display_name_error": "Nie można ustawić wyświetlanej nazwy", "email_address_in_use": "Podany adres e-mail jest już w użyciu", @@ -3175,7 +3176,7 @@ "identity_server_no_terms_description_1": "Ta czynność wymaga dostępu do domyślnego serwera tożsamości do walidacji adresu e-mail, czy numeru telefonu, ale serwer nie określa warunków korzystania z usługi.", "identity_server_no_terms_description_2": "Kontynuj tylko wtedy, gdy ufasz właścicielowi serwera.", "identity_server_no_terms_title": "Serwer tożsamości nie posiada warunków użytkowania", - "inline_intro_text": "Zaakceptuj aby kontynuować:", + "inline_intro_text": "Zaakceptuj , aby kontynuować:", "integration_manager": "Używaj botów, mostków, widżetów i zestawów naklejek", "intro": "Aby kontynuować, musisz zaakceptować zasady użytkowania.", "summary_identity_server_1": "Odnajdź innych z użyciem numeru telefonu lub adresu e-mail", @@ -3689,7 +3690,8 @@ "close": "Zamknij podgląd", "show_n_more": { "one": "Pokaż %(count)s inny podgląd", - "other": "Pokaż %(count)s innych podglądów" + "few": "Pokaż %(count)s inne podglądy", + "many": "Pokaż %(count)s innych podglądów" } } }, diff --git a/src/i18n/strings/pt.json b/src/i18n/strings/pt.json new file mode 100644 index 00000000000..444977baf72 --- /dev/null +++ b/src/i18n/strings/pt.json @@ -0,0 +1,3993 @@ +{ + "a11y": { + "emoji_picker": "Selecionador de emojis", + "jump_first_invite": "Salta para o primeiro convite.", + "message_composer": "Compositor de mensagens", + "n_unread_messages": { + "one": "1 mensagem não lida.", + "other": "%(count)s mensagens não lidas." + }, + "n_unread_messages_mentions": { + "one": "1 menção não lida.", + "other": "%(count)s mensagens não lidas, incluindo menções." + }, + "recent_rooms": "Salas recentes", + "room_name": "Sala %(name)s", + "room_status_bar": "Barra de estado da sala", + "seek_bar_label": "Barra de procura de áudio", + "unread_messages": "Mensagens não lidas", + "user_menu": "Menu do utilizador" + }, + "a11y_jump_first_unread_room": "Salta para a primeira sala não lida.", + "action": { + "accept": "Aceitar", + "add": "Adicionar", + "add_existing_room": "Adicionar sala existente", + "add_people": "Adicionar pessoas", + "apply": "Aplicar", + "approve": "Aprovar", + "ask_to_join": "Pedir para participar", + "back": "Voltar", + "call": "Ligar", + "cancel": "Cancelar", + "change": "Alterar", + "clear": "Limpar", + "click": "Clica", + "click_to_copy": "Clica para copiar", + "close": "Fechar", + "collapse": "Colapsar", + "complete": "Completo", + "confirm": "Confirmar", + "continue": "Continuar", + "copy": "Copiar", + "copy_link": "Copiar Link", + "create": "Criar", + "create_a_room": "Criar uma sala", + "decline": "Recusar", + "delete": "Apagar", + "deny": "Negar", + "disable": "Desativar", + "disconnect": "Desconectar", + "dismiss": "Descartar", + "done": "Concluído", + "download": "Descarregar", + "edit": "Editar", + "enable": "Ativar", + "enter_fullscreen": "Entra no ecrã completo", + "exit_fullscreeen": "Sai do ecrã completo", + "expand": "Expandir", + "explore_public_rooms": "Explorar salas públicas", + "explore_rooms": "Explorar rooms", + "export": "Exportar", + "forward": "Encaminhar", + "go": "Ir", + "go_back": "Voltar", + "got_it": "Entendi", + "hide_advanced": "Ocultar avançado", + "hold": "Espera", + "ignore": "Ignorar", + "import": "Importar", + "invite": "Convidar", + "invite_to_space": "Convida para o espaço", + "invites_list": "Convidar", + "join": "Participar", + "learn_more": "Saiba mais", + "leave": "Sair", + "leave_room": "Sair da sala", + "logout": "Sair", + "manage": "Gerir", + "maximise": "Maximizar", + "mention": "Mencionar", + "minimise": "Minimizar", + "new_room": "Nova sala", + "new_video_room": "Nova sala de vídeo", + "next": "Próximo", + "no": "Não", + "ok": "OK", + "pause": "Pausar", + "pin": "Fixar", + "play": "Reproduzir", + "proceed": "Prosseguir", + "quote": "Citar", + "react": "Reagir", + "refresh": "Atualizar", + "register": "Registar", + "reject": "Rejeitar", + "reload": "Recarregar", + "remove": "Remover", + "rename": "Renomear", + "reply": "Responder", + "reply_in_thread": "Responder no tópico", + "report_content": "Denunciar conteúdo", + "resend": "Reenviar", + "reset": "Redefinir", + "resume": "Retoma", + "retry": "Tentar novamente", + "review": "Rever", + "revoke": "Revogar", + "save": "Salvar", + "search": "Pesquisar", + "send_report": "Enviar relatório", + "set_avatar": "Definir foto de perfil", + "share": "Partilhar", + "show": "Mostrar", + "show_advanced": "Mostrar avançado", + "show_all": "Mostrar tudo", + "sign_in": "Entrar", + "sign_out": "Sair", + "skip": "Saltar", + "start": "Iniciar", + "start_chat": "Iniciar conversa", + "start_new_chat": "Inicia um novo chat", + "stop": "Parar", + "submit": "Enviar", + "subscribe": "Subscrever", + "transfer": "Transfere", + "trust": "Confiar", + "try_again": "Tente novamente", + "unban": "Desfazer banimento", + "unignore": "Deixar de ignorar", + "unpin": "Desafixar", + "unsubscribe": "Cancelar subscrição", + "update": "Atualizar", + "upgrade": "Atualizar", + "upload": "Carregar", + "upload_file": "Carregar ficheiro", + "verify": "Verificar", + "view": "Ver", + "view_all": "Ver tudo", + "view_list": "Ver lista", + "view_message": "Ver mensagem", + "view_source": "Ver a fonte", + "yes": "Sim", + "zoom_in": "Ampliar", + "zoom_out": "Reduzir" + }, + "analytics": { + "accept_button": "Não faz mal", + "bullet_1": "Nós não registamos nem traçamos o perfil de quaisquer dados da conta", + "bullet_2": "Nós não partilhamos informações com terceiros", + "consent_migration": "Anteriormente, tinhas consentido em partilhar connosco dados de utilização anónimos. Estamos a atualizar a forma como isso funciona.", + "disable_prompt": "Podes desativar esta opção em qualquer altura nas definições", + "enable_prompt": "Ajuda a melhorar %(analyticsOwner)s", + "learn_more": "Partilha dados anónimos para nos ajudar a identificar problemas. Nada de pessoal. Não há terceiros. Aprende mais", + "privacy_policy": "Podes ler todos os nossos termos aqui", + "pseudonymous_usage_data": "Ajuda-nos a identificar problemas e a melhorar o %(analyticsOwner)s, partilhando dados de utilização anónimos. Para compreender como as pessoas utilizam vários dispositivos, geraremos um identificador aleatório, partilhado pelos teus dispositivos.", + "shared_data_heading": "Pode ser partilhado qualquer um dos seguintes dados:" + }, + "auth": { + "3pid_in_use": "Esse endereço de e-mail ou número de telefone já está a ser utilizado.", + "account_clash": "A tua nova conta (%(newAccountId)s) está registada, mas já estás ligado a uma conta diferente (%(loggedInUserId)s).", + "account_clash_previous_account": "Continua com a conta anterior", + "account_deactivated": "Esta conta foi desativada.", + "autodiscovery_generic_failure": "Falha ao obter a configuração de descoberta automática do servidor", + "autodiscovery_hs_incompatible": "O teu servidor doméstico é demasiado antigo e não suporta a versão mínima da API necessária. Contata o proprietário do teu servidor ou atualiza o teu servidor.", + "autodiscovery_invalid": "Resposta de descoberta de servidor doméstico inválida", + "autodiscovery_invalid_hs": "O URL do servidor doméstico não parece ser um servidor doméstico Matrix válido", + "autodiscovery_invalid_hs_base_url": "Base_url inválida para m.homeserver", + "autodiscovery_invalid_is": "O URL do servidor de identidade não parece ser um servidor de identidade válido", + "autodiscovery_invalid_is_base_url": "Base_url inválido para m.identity_server", + "autodiscovery_invalid_is_response": "Resposta de descoberta de servidor de identidade inválida", + "autodiscovery_invalid_json": "JSON inválido", + "autodiscovery_no_well_known": "Não foi encontrado nenhum ficheiro JSON .well-known", + "autodiscovery_unexpected_error_hs": "Erro inesperado ao resolver a configuração do servidor doméstico", + "autodiscovery_unexpected_error_is": "Erro inesperado ao resolver a configuração do servidor de identidade", + "captcha_description": "Este servidor doméstico gostaria de ter a certeza de que não és um robô.", + "change_password_action": "Alterar Palavra-Passe", + "change_password_confirm_invalid": "As palavras-passe não coincidem", + "change_password_confirm_label": "Confirmar palavra-passe", + "change_password_current_label": "Palavra-passe atual", + "change_password_empty": "As palavras-passe não podem estar vazias", + "change_password_error": "Erro ao alterar a palavra-passe: %(error)s", + "change_password_mismatch": "As novas palavras-passe não coincidem", + "change_password_new_label": "Nova Palavra-Passe", + "check_email_explainer": "Segue as instruções enviadas para %(email)s", + "check_email_resend_prompt": "Não recebeste?", + "check_email_resend_tooltip": "E-mail com link de verificação reenviado!", + "check_email_wrong_email_button": "Volta a introduzir o endereço de e-mail", + "check_email_wrong_email_prompt": "Endereço de e-mail errado?", + "continue_with_idp": "Continuar com %(provider)s", + "continue_with_sso": "Continua com %(ssoButtons)s", + "country_dropdown": "Lista suspensa de países", + "create_account_prompt": "Novo aqui? Crie uma conta", + "create_account_title": "Criar conta", + "email_discovery_text": "Use email para, opcionalmente, ser detectável por contactos existentes.", + "email_field_label": "E-mail", + "email_field_label_invalid": "Não parece ser um endereço de correio eletrónico válido", + "email_field_label_required": "Insere o endereço de e-mail", + "email_help_text": "Adicione um email para poder repôr a palavra-passe.", + "email_phone_discovery_text": "Use email ou telefone para, opcionalmente, ser detectável por contactos existentes.", + "enter_email_explainer": "%(homeserver)s enviar-te-á uma link de verificação para que possas redefinir a tua palavra-passe.", + "enter_email_heading": "Introduz o teu e-mail para redefinir a palavra-passe", + "failed_connect_identity_server": "Não é possível aceder o servidor de identidade", + "failed_connect_identity_server_other": "Podes iniciar sessão, mas algumas funcionalidades estarão indisponíveis até o servidor de identidade estar novamente online. Se continuares a ver este aviso, verifica a tua configuração ou contacta um administrador do servidor.", + "failed_connect_identity_server_register": "Podes registar-te, mas algumas funcionalidades não estarão disponíveis até que o servidor de identidade esteja novamente online. Se continuares a ver este aviso, verifica a tua configuração ou contacta um administrador do servidor.", + "failed_connect_identity_server_reset_password": "Podes repor a tua palavra-passe, mas algumas funcionalidades ficarão indisponíveis até o servidor de identidade estar novamente online. Se continuares a ver este aviso, verifica a tua configuração ou contacta um administrador do servidor.", + "failed_homeserver_discovery": "Falha na descoberta do servidor doméstico", + "failed_query_registration_methods": "Não é possível consultar os métodos de registo suportados.", + "failed_soft_logout_auth": "Falha ao autenticar novamente", + "failed_soft_logout_homeserver": "Falha ao autenticar novamente devido a um problema no servidor doméstico", + "forgot_password_email_invalid": "O endereço de e-mail não parece ser válido.", + "forgot_password_email_required": "O endereço de email relacionado a sua conta precisa ser informado.", + "forgot_password_prompt": "Esqueceste-te da tua palavra-passe?", + "forgot_password_send_email": "Enviar e-mail", + "identifier_label": "Quero entrar", + "incorrect_credentials": "Nome de utilizador e/ou palavra-passe incorreta.", + "incorrect_credentials_detail": "Tem em atenção que estás a iniciar sessão no servidor %(hs)s e não em matrix.org.", + "incorrect_password": "Palavra-passe incorreta", + "log_in_new_account": "Inicia sessão em na tua nova conta.", + "logout_dialog": { + "description": "Tens a certeza que queres encerrar a sessão?", + "megolm_export": "Exportação manual de chaves", + "setup_key_backup_title": "Perderás o acesso às tuas mensagens encriptadas", + "setup_secure_backup_description_1": "As mensagens encriptadas são protegidas com encriptação de ponta a ponta. Só tu e o(s) destinatário(s) têm as chaves para ler estas mensagens.", + "setup_secure_backup_description_2": "Quando terminares a sessão, estas chaves serão eliminadas deste dispositivo, o que significa que não poderás ler mensagens encriptadas, a menos que tenhas as chaves para elas nos teus outros dispositivos ou tenhas feito uma cópia de segurança das mesmas no servidor.", + "skip_key_backup": "Não quero as minhas mensagens encriptadas", + "use_key_backup": "Começa a utilizar a Cópia de Segurança das Chaves" + }, + "misconfigured_body": "Pede ao teu administrador %(brand)s para verificar a tua configuração para ver se há entradas incorretas ou duplicadas.", + "misconfigured_title": "O teu %(brand)s está mal configurado", + "msisdn_field_description": "Outros utilizadores podem convidar-te para salas utilizando os teus dados de contacto", + "msisdn_field_label": "Telefone", + "msisdn_field_number_invalid": "Este número de telefone não parece estar correto, por favor verifica e tenta novamente", + "msisdn_field_required_invalid": "Introduz o número de telefone", + "no_hs_url_provided": "Nenhum URL de servidor doméstico fornecido", + "oidc": { + "error_title": "Não foi possível fazer login", + "generic_auth_error": "Algo correu mal durante a autenticação. Vai à página de início de sessão e tenta novamente.", + "missing_or_invalid_stored_state": "Pedimos ao navegador que se lembrasse do homeserver que usa para permitir o início de sessão, mas infelizmente o seu navegador esqueceu. Aceda à página de início de sessão e tente novamente." + }, + "password_field_keep_going_prompt": "Continua...", + "password_field_label": "Introduz a palavra-passe", + "password_field_strong_label": "Uma palavra-passe boa e forte!", + "password_field_weak_label": "A palavra-passe é permitida, mas não é segura", + "phone_label": "Telefone", + "phone_optional_label": "Telefone (opcional)", + "qr_code_login": { + "check_code_explainer": "Isto irá verificar se a ligação ao teu outro dispositivo é segura.", + "check_code_heading": "Introduz o número que aparece no teu outro dispositivo", + "check_code_input_label": "Código de 2 dígitos", + "check_code_mismatch": "Os números não correspondem", + "completing_setup": "A concluir a configuração do teu novo dispositivo", + "error_etag_missing": "Ocorreu um erro inesperado. Isso pode ser devido a uma extensão do navegador, servidor proxy ou configuração incorreta do servidor.", + "error_expired": "O teu login expirou. Por favor, tenta novamente.", + "error_expired_title": "O início de sessão não foi concluído a tempo", + "error_insecure_channel_detected": "Não foi possível estabelecer uma ligação segura com o novo dispositivo. Os teus dispositivos existentes continuam seguros e não precisas de te preocupar com eles.", + "error_insecure_channel_detected_instructions": "E agora?", + "error_insecure_channel_detected_instructions_1": "Tenta iniciar sessão no outro dispositivo novamente com um código QR, caso se trate de um problema de rede", + "error_insecure_channel_detected_instructions_2": "Se tiveres o mesmo problema, experimenta uma rede Wi-Fi diferente ou utiliza os teus dados móveis em vez da rede Wi-Fi", + "error_insecure_channel_detected_instructions_3": "Se isso não funcionar, inicia sessão manualmente", + "error_insecure_channel_detected_title": "Ligação não segura", + "error_other_device_already_signed_in": "Não precisas de fazer mais nada.", + "error_other_device_already_signed_in_title": "O teu outro dispositivo já tem sessão iniciada", + "error_rate_limited": "Demasiadas tentativas num curto espaço de tempo. Espera algum tempo antes de tentares novamente.", + "error_unexpected": "Ocorreu um erro inesperado.", + "error_unsupported_protocol": "Este dispositivo não suporta o início de sessão no outro dispositivo com um código QR.", + "error_unsupported_protocol_title": "Outro dispositivo não compatível", + "error_user_cancelled": "O início de sessão foi cancelado no outro dispositivo.", + "error_user_cancelled_title": "Pedido de início de sessão cancelado", + "error_user_declined": "Tu ou o fornecedor da conta recusaram o pedido de início de sessão.", + "error_user_declined_title": "Inicio de sessão recusado", + "follow_remaining_instructions": "Segue as restantes instruções para verificar o teu outro dispositivo", + "open_element_other_device": "Abre a %(brand)s no teu outro dispositivo", + "point_the_camera": "Aponta a câmara para o código QR mostrado aqui", + "scan_code_instruction": "Lê o código QR com outro dispositivo", + "scan_qr_code": "Ler código QR", + "security_code": "Código de segurança", + "security_code_prompt": "Se solicitado, insira o código abaixo no seu outro dispositivo.", + "select_qr_code": "Seleciona \"%(scanQRCode)s\"", + "waiting_for_device": "A aguardar que o dispositivo inicie sessão" + }, + "register_action": "Criar conta", + "registration": { + "continue_without_email_description": "Apenas um aviso, se não adicionar um email e depois esquecer a sua palavra-passe, poderá perder permanentemente o acesso à sua conta.", + "continue_without_email_field_label": "E-mail (opcional)", + "continue_without_email_title": "Continuando sem e-mail" + }, + "registration_disabled": "O registo foi desativado neste servidor doméstico.", + "registration_msisdn_field_required_invalid": "Introduz o número de telefone (obrigatório neste servidor doméstico)", + "registration_successful": "Registo efetuado com êxito!", + "registration_username_in_use": "Alguém já tem esse nome de utilizador. Tente outro ou, se fores tu, inicia sessão em baixo.", + "registration_username_unable_check": "Não foi possível verificar se o nome de utilizador já foi usado. Tente novamente mais tarde.", + "registration_username_validation": "Utiliza apenas letras minúsculas, números, travessões e sublinhados", + "reset_password": { + "confirm_new_password": "Confirmar nova palavra-passe", + "devices_logout_success": "Saíste de todos os dispositivos e já não receberás notificações push. Para voltar a ativar as notificações, inicia sessão novamente em cada dispositivo.", + "other_devices_logout_warning_1": "Terminares a sessão dos teus dispositivos, elimina as chaves de encriptação de mensagens armazenadas nos mesmos, tornando ilegível o histórico de conversações encriptadas.", + "other_devices_logout_warning_2": "Se quiseres manter o acesso ao teu histórico de conversação em salas encriptadas, configura a Cópia de segurança das chaves ou exporta as chaves das mensagens de um dos teus outros dispositivos antes de prosseguires.", + "password_not_entered": "Deve ser introduzida uma nova palavra-passe.", + "passwords_mismatch": "Novas palavras-passe devem coincidir.", + "rate_limit_error": "Demasiadas tentativas num curto espaço de tempo. Espera algum tempo antes de tentares novamente.", + "rate_limit_error_with_time": "Demasiadas tentativas num curto espaço de tempo. Volta a tentar depois de %(timeout)s.", + "reset_successful": "A tua palavra-passe foi redefinida.", + "return_to_login": "Retornar à tela de login", + "sign_out_other_devices": "Termina a sessão em todos os dispositivos" + }, + "reset_password_action": "Repor a palavra-passe", + "reset_password_button": "Esqueceste-te da palavra-passe?", + "reset_password_email_field_description": "Usar um endereço de email para recuperar a sua conta", + "reset_password_email_field_required_invalid": "Insere o endereço de e-mail (obrigatório neste servidor doméstico)", + "reset_password_email_not_associated": "O seu endereço de email não parece estar associado a um Matrix ID neste homeserver.", + "reset_password_email_not_found_title": "Este endereço de email não foi encontrado", + "reset_password_title": "Redefine a tua palavra-passe", + "server_picker_custom": "Outro servidor doméstico", + "server_picker_description": "Podes utilizar as opções personalizadas do servidor para iniciar sessão noutros servidores Matrix, especificando um URL de servidor doméstico diferente. Isto permite-te usar %(brand)s com uma conta Matrix existente num servidor doméstico diferente.", + "server_picker_description_matrix.org": "Junte-se a milhões gratuitamente no maior servidor público", + "server_picker_dialog_title": "Decide onde a tua conta está alojada", + "server_picker_explainer": "Usa o teu servidor doméstico Matrix preferido, se tiveres um, ou aloja o teu próprio servidor.", + "server_picker_failed_validate_homeserver": "Não foi possível validar o servidor doméstico", + "server_picker_intro": "Chamamos aos locais onde podes alojar a tua conta 'servidores domésticos'.", + "server_picker_invalid_url": "URL inválido", + "server_picker_learn_more": "Sobre servidores domésticos", + "server_picker_matrix.org": "Matrix.org é o maior servidor doméstico público do mundo, por isso é um bom lugar para muitos.", + "server_picker_required": "Especifica um servidor doméstico", + "server_picker_title": "Hospedar conta em", + "server_picker_title_default": "Opções de servidor", + "server_picker_title_registration": "Hospedar conta em", + "session_logged_out_description": "Por questões de segurança, esta sessão foi encerrada. Por gentileza conecte-se novamente.", + "session_logged_out_title": "Deslogar", + "set_email": { + "description": "Isto irá permitir-lhe redefinir a sua palavra-passe e receber notificações.", + "verification_pending_description": "Por favor verifique seu email e clique no link enviado. Quando finalizar este processo, clique para continuar.", + "verification_pending_title": "Verificação pendente" + }, + "set_email_prompt": "Deseja definir um endereço de e-mail?", + "sign_in_description": "Use a sua conta para continuar.", + "sign_in_instead": "Já tem uma conta? Entre aqui", + "sign_in_instead_prompt": "Já tem uma conta? Entre aqui", + "sign_in_or_register": "Iniciar Sessão ou Criar Conta", + "sign_in_or_register_description": "Use a sua conta ou crie uma nova conta para continuar.", + "sign_in_prompt": "Tens uma conta? Inicia sessão", + "sign_in_with_sso": "Inicia sessão com o início de sessão único", + "signing_in": "A iniciar sessão...", + "soft_logout": { + "clear_data_button": "Limpa todos os dados", + "clear_data_description": "Limpa todos os dados desta sessão de forma permanente. As mensagens encriptadas perder-se-ão, a não ser que tenhas feito uma cópia de segurança das suas chaves.", + "clear_data_title": "Limpar todos os dados nesta sessão?" + }, + "soft_logout_heading": "Estás desconectado", + "soft_logout_intro_password": "Introduz a tua palavra-passe para iniciar sessão e recuperar o acesso à tua conta.", + "soft_logout_intro_sso": "Inicia sessão e recupera o acesso à tua conta.", + "soft_logout_intro_unsupported_auth": "Não é possível iniciar sessão na tua conta. Contacta o administrador do teu servidor doméstico para obteres mais informações.", + "soft_logout_subheading": "Limpar dados pessoais", + "soft_logout_warning": "Aviso: os teus dados pessoais (incluindo chaves de encriptação) ainda estão armazenados nesta sessão. Limpa-a se já tiveres terminado de utilizar esta sessão ou se quiseres iniciar sessão noutra conta.", + "sso": "Registo único", + "sso_failed_missing_storage": "Pedimos ao navegador que se lembrasse do homeserver que usa para permitir o início de sessão, mas infelizmente o seu navegador esqueceu. Aceda à página de início de sessão e tente novamente.", + "sso_or_username_password": "%(ssoButtons)s Ou %(usernamePassword)s", + "sync_footer_subtitle": "Se já te juntaste a muitas salas, isto pode demorar um pouco", + "syncing": "A sincronizar...", + "uia": { + "code": "Código", + "email": "Para criar a sua conta, abra a ligação no email que acabámos de enviar para %(emailAddress)s.", + "email_auth_header": "Verifica o teu e-mail para continuar", + "email_resend_prompt": "Não o recebeste? Reenvia-o", + "email_resent": "Reenviado!", + "fallback_button": "Iniciar autenticação", + "msisdn": "Foi enviada uma mensagem de texto para %(msisdn)s", + "msisdn_token_incorrect": "Token incorreto", + "msisdn_token_prompt": "Por favor, entre com o código que está na mensagem:", + "password_prompt": "Confirma a tua identidade introduzindo a palavra-passe da tua conta abaixo.", + "recaptcha_missing_params": "Falta a chave pública do captcha na configuração do servidor doméstico. Por favor, informa o administrador do teu servidor doméstico.", + "registration_token_label": "Ficha de registo", + "registration_token_prompt": "Introduz um token de registo fornecido pelo administrador do servidor doméstico.", + "sso_body": "Confirme adicionar este endereço de email usando Single Sign On para provar a sua identidade.", + "sso_failed": "Algo correu mal ao confirmar a tua identidade. Cancela e tenta novamente.", + "sso_postauth_body": "Clica no botão abaixo para confirmar a tua identidade.", + "sso_postauth_title": "Confirma para continuar", + "sso_preauth_body": "Para continuar, utiliza o início de sessão único para provar a tua identidade.", + "sso_title": "Use Single Sign On para continuar", + "terms": "Por favor, revê e aceita as políticas deste servidor doméstico:", + "terms_invalid": "Revê e aceita todas as políticas do servidor doméstico" + }, + "unsupported_auth": "Este servidor doméstico não oferece nenhum fluxo de início de sessão que seja suportado por este cliente.", + "unsupported_auth_email": "Este servidor doméstico não suporta o início de sessão utilizando endereço de e-mail.", + "unsupported_auth_msisdn": "Este servidor não permite a autenticação através de números de telefone.", + "username_field_required_invalid": "Introduza um nome de utilizador", + "username_in_use": "Alguém já tem esse nome de utilizador, tente outro por favor.", + "verify_email_explainer": "Precisamos de saber se és tu antes de redefinir a tua palavra-passe. Clica no link do e-mail que acabámos de enviar para %(email)s", + "verify_email_heading": "Verifica o teu e-mail para continuar" + }, + "bug_reporting": { + "additional_context": "Se houver algum contexto adicional que possa ajudar a analisar o problema, como o que estavas a fazer na altura, IDs de salas, IDs de utilizadores, etc., inclui-o aqui.", + "before_submitting": "Antes de enviar os registos, deves criar um problema no GitHub para descrever o teu problema.", + "collecting_information": "A recolher informação da versão da app", + "collecting_logs": "A recolher logs", + "create_new_issue": "Por favor cria um novo problema no GitHub para que possamos investigar este erro.", + "description": "Os registos de depuração contêm dados de utilização da aplicação, incluindo o seu nome de utilizador, os IDs ou pseudónimos das salas que visitou, os últimos elementos da IU com que interagiu e os nomes de utilizador de outros utilizadores. No entanto não contêm mensagens.", + "download_logs": "Descarrega os registos", + "downloading_logs": "Descarregando registos", + "error_empty": "Diz-nos o que correu mal ou, melhor ainda, cria uma questão no GitHub que descreva o problema.", + "failed_send_logs": "Falha ao enviar registos: ", + "github_issue": "Problema no GitHub", + "introduction": "Se submeteste um erro através do GitHub, os registos de depuração podem ajudar-nos a localizar o problema. ", + "log_request": "Para nos ajudar a evitar esta situação no futuro, envia-nos os registos para .", + "logs_sent": "Registos enviados", + "matrix_security_issue": "Para comunicar um problema de segurança relacionado com o Matrix, lê a Política de Divulgação de Segurança do Matrix.org .", + "preparing_download": "Preparar para descarregar registos", + "preparing_logs": "Prepara o envio de registos", + "send_logs": "Enviar relatórios de erro", + "submit_debug_logs": "Envia registos de depuração", + "textarea_label": "Notas", + "thank_you": "Obrigado!", + "title": "Relatório de erros", + "unsupported_browser": "Lembrete: O teu browser não é suportado, pelo que a tua experiência pode ser imprevisível.", + "uploading_logs": "Carregando registos", + "waiting_for_server": "À espera de resposta do servidor" + }, + "cannot_invite_without_identity_server": "Não é possível convidar um utilizador por email sem um servidor de identidade. Pode ligar-se a um em \"Definições\".", + "cannot_reach_homeserver": "Não é possível acessar o servidor doméstico", + "cannot_reach_homeserver_detail": "Certifica-te de que tens uma ligação estável à Internet ou entra em contacto com o administrador do servidor", + "cant_load_page": "Não foi possível carregar a página", + "chat_card_back_action_label": "Volta ao chat", + "chat_effects": { + "confetti_description": "Envia a mensagem dada com confetes", + "confetti_message": "envia confetes", + "fireworks_description": "Envia a mensagem dada com fogo de artifício", + "fireworks_message": "envia fogo de artifício", + "hearts_description": "Envia a mensagem dada com corações", + "hearts_message": "envia corações", + "rainfall_description": "Envia a mensagem dada com chuva", + "rainfall_message": "envia chuva", + "snowfall_description": "Envia a mensagem dada com queda de neve", + "snowfall_message": "envia queda de neve", + "spaceinvaders_description": "Envia a mensagem dada com um efeito temático espacial", + "spaceinvaders_message": "envia invasores do espaço" + }, + "common": { + "access_token": "Token de acesso", + "accessibility": "Acessibilidade", + "advanced": "Avançado", + "all_rooms": "Todas as salas", + "analytics": "Análise", + "and_n_others": { + "other": "e %(count)s outros...", + "one": "e um outro..." + }, + "android": "Android", + "appearance": "Aparência", + "application": "Aplicação", + "are_you_sure": "Você tem certeza?", + "attachment": "Anexo", + "authentication": "Autenticação", + "avatar": "Avatar", + "beta": "Beta", + "camera": "Câmera de vídeo", + "cameras": "Câmaras", + "cancel": "Cancelar", + "capabilities": "Capacidades", + "copied": "Copiado!", + "credits": "Créditos", + "cross_signing": "Assinatura cruzada", + "dark": "Escuro", + "description": "Descrição", + "deselect_all": "Desmarcar todos", + "device": "Dispositivo", + "edited": "editado", + "email_address": "Endereço de email", + "emoji": "Emoji", + "encrypted": "Encriptado", + "encryption_enabled": "Encriptação ativada", + "error": "Erro", + "faq": "Perguntas frequentes", + "favourites": "Favoritos", + "feedback": "Comentários", + "filter_results": "Filtrar resultados", + "forward_message": "Encaminhar mensagem", + "general": "Geral", + "go_to_settings": "Ir para as definições", + "guest": "Convidado", + "help": "Ajuda", + "historical": "Histórico", + "home": "Início", + "homeserver": "Servidor doméstico", + "identity_server": "Servidor de identidade", + "image": "Imagem", + "integration_manager": "Gestor de integração", + "ios": "iOS", + "joined": "Aderiu", + "labs": "Laboratório", + "legal": "Legal", + "light": "Claro", + "loading": "A carregar…", + "lobby": "Átrio", + "location": "Localização", + "low_priority": "Baixa prioridade", + "matrix": "Matrix", + "message": "Mensagem", + "message_layout": "Disposição da mensagem", + "microphone": "Microfone", + "model": "Modelo", + "modern": "Moderno", + "mute": "Silenciar", + "n_members": { + "one": "%(count)smembro", + "other": "%(count)smembros" + }, + "n_rooms": { + "one": "%(count)s sala", + "other": "%(count)s salas" + }, + "name": "Nome", + "no_results": "Sem resultados", + "no_results_found": "Nenhum resultado encontrado", + "not_trusted": "Não confiável", + "off": "Desativado", + "offline": "Offline", + "on": "Ativado", + "options": "Opções", + "orphan_rooms": "Outras salas", + "password": "Palavra-Passe", + "people": "Pessoas", + "preferences": "Preferências", + "presence": "Presença", + "preview_message": "Olá para ti. És o melhor!", + "privacy": "Privacidade", + "private": "Privado", + "private_room": "Sala privada", + "private_space": "Espaço privado", + "profile": "Perfil", + "public": "Público", + "public_room": "Sala pública", + "public_space": "Espaço público", + "qr_code": "Código QR", + "random": "Aleatório", + "reactions": "Reações", + "report_a_bug": "Comunicar falha", + "room": "Sala", + "room_name": "Nome da sala", + "rooms": "Salas", + "save": "Gravar", + "saved": "Guardado", + "saving": "A guardar…", + "secure_backup": "Cópia de segurança segura", + "security": "Segurança", + "select_all": "Selecionar tudo", + "server": "Servidor", + "settings": "Configurações", + "setup_secure_messages": "Configurar mensagens seguras", + "show_more": "Mostrar mais", + "someone": "Alguém", + "space": "Espaço", + "spaces": "Espaços", + "sticker": "Autocolante", + "stickerpack": "Pacote de autocolantes", + "success": "Sucesso", + "suggestions": "Sugestões", + "support": "Suporte", + "system_alerts": "Alertas do sistema", + "theme": "Tema", + "thread": "Tópico", + "threads": "Tópicos", + "timeline": "Cronologia", + "trusted": "Confiável", + "unavailable": "indisponível", + "unencrypted": "Não encriptado", + "unmute": "Tirar do mudo", + "unnamed_room": "Sala sem nome", + "unnamed_space": "Espaço sem nome", + "unverified": "Não verificado", + "updating": "Atualizando...", + "user": "Utilizador", + "user_avatar": "Foto do perfil", + "username": "Nome de utilizador", + "verification_cancelled": "Verificação cancelada", + "verified": "Verificado", + "version": "Versão", + "video": "Vídeo", + "video_room": "Sala de vídeo", + "view_message": "Ver mensagem", + "warning": "Aviso", + "welcome": "Bem-vindo" + }, + "composer": { + "autocomplete": { + "@room_description": "Notifica toda a sala", + "command_a11y": "Preenchimento automático de comando", + "command_description": "Comandos", + "emoji_a11y": "Preenchimento automático de emojis", + "notification_a11y": "Preenchimento automático de notificações", + "notification_description": "Notificação de sala", + "room_a11y": "Preenchimento automático da sala", + "space_a11y": "Preenchimento automático de espaço", + "user_a11y": "Preenchimento automático do utilizador", + "user_description": "Usuários" + }, + "close_sticker_picker": "Esconde os autocolantes", + "edit_composer_label": "Editar mensagem", + "format_bold": "Negrito", + "format_code_block": "Bloco de Código", + "format_decrease_indent": "Diminuição do recuo", + "format_increase_indent": "Aumento do recuo", + "format_inline_code": "Código", + "format_insert_link": "Inserir link", + "format_italic": "Itálico", + "format_italics": "Itálico", + "format_link": "Ligação", + "format_ordered_list": "Lista numerada", + "format_strikethrough": "Rasurado", + "format_underline": "Sublinhado", + "format_unordered_list": "Lista com marcadores", + "formatting_toolbar_label": "Formatação", + "link_modal": { + "link_field_label": "Ligação", + "text_field_label": "Texto", + "title_create": "Crie um link", + "title_edit": "Editar link" + }, + "mode_plain": "Ocultar formatação", + "mode_rich_text": "Mostrar formatação", + "no_perms_notice": "Você não tem permissão de postar nesta sala", + "placeholder": "Envia uma mensagem...", + "placeholder_encrypted": "Envia uma mensagem encriptada...", + "placeholder_reply": "Envia uma resposta...", + "placeholder_reply_encrypted": "Envia uma resposta encriptada...", + "placeholder_thread": "Responde ao tópico...", + "placeholder_thread_encrypted": "Responde a tópico encriptado...", + "poll_button": "Sondagem", + "poll_button_no_perms_description": "Não tens autorização para iniciar sondagens nesta sala.", + "poll_button_no_perms_title": "Permissão Requerida", + "replying_title": "A responder", + "room_upgraded_link": "A conversa continua aqui.", + "room_upgraded_notice": "Esta sala foi substituída e já não está ativa.", + "send_button_title": "Enviar mensagem", + "send_button_voice_message": "Enviar mensagem de voz", + "send_voice_message": "Envia mensagem de voz", + "stop_voice_message": "Pára a gravação", + "voice_message_button": "Mensagem de voz" + }, + "console_dev_note": "Se sabes o que estás a fazer, a Element é de código aberto, não te esqueças de consultar o nosso GitHub (https://github.com/vector-im/element-web/) e contribuir!", + "console_scam_warning": "Se alguém te disse para copiar/colar algo aqui, há uma grande probabilidade de estares a ser enganado!", + "console_wait": "Espera!", + "create_room": { + "action_create_room": "Criar uma sala", + "action_create_video_room": "Cria uma sala de vídeo", + "encrypted_video_room_warning": "Não podes desativar isto mais tarde. A sala será encriptada, mas a chamada incorporada não.", + "encrypted_warning": "Não podes desativar isto mais tarde. As pontes e a maioria dos bots ainda não funcionarão.", + "encryption_forced": "O teu servidor requer que a encriptação seja activada em salas privadas.", + "encryption_label": "Ativar a encriptação de ponta a ponta", + "error_title": "Não foi possível criar a sala", + "generic_error": "O servidor pode estar indisponível ou sobrecarregado, ou então você encontrou uma falha no sistema.", + "join_rule_change_notice": "Podes alterar isto em qualquer altura a partir das definições da sala.", + "join_rule_invite": "Sala privada (só para convidados)", + "join_rule_invite_label": "Apenas as pessoas convidadas poderão encontrar e entrar nesta sala.", + "join_rule_knock_label": "Qualquer pessoa pode pedir para entrar, mas os administradores ou moderadores têm de conceder acesso. Podes alterar isto mais tarde.", + "join_rule_public_label": "Qualquer pessoa pode encontrar e entrar nesta sala.", + "join_rule_public_parent_space_label": "Qualquer pessoa poderá encontrar e juntar-se a esta sala, não apenas os membros de .", + "join_rule_restricted": "Visível para os membros do espaço", + "join_rule_restricted_label": "Todos em poderão encontrar e juntar-se a esta sala.", + "name_validation_required": "Introduz um nome para a sala", + "room_visibility_label": "Visibilidade da sala", + "title_private_room": "Cria uma sala privada", + "title_public_room": "Cria uma sala pública", + "title_video_room": "Cria uma sala de vídeo", + "topic_label": "Tópico (opcional)", + "unfederated": "Bloqueia qualquer pessoa que não faça parte de %(serverName)s de entrar nesta sala.", + "unfederated_label_default_off": "Podes ativar esta opção se a sala for usada apenas para colaborar com equipas internas no teu servidor doméstico. Isto não pode ser alterado mais tarde.", + "unfederated_label_default_on": "Podes desativar esta opção se a sala for utilizada para colaborar com equipas externas que tenham o seu próprio servidor doméstico. Isto não pode ser alterado mais tarde.", + "unsupported_version": "O servidor não suporta a versão especificada da sala." + }, + "create_space": { + "add_details_prompt": "Acrescenta alguns pormenores para que as pessoas o reconheçam.", + "add_details_prompt_2": "Podes alterar isto em qualquer altura.", + "add_existing_rooms_description": "Escolhe salas ou conversas para adicionar. Este é apenas um espaço para ti, ninguém será informado. Podes adicionar mais depois.", + "add_existing_rooms_heading": "O que queres organizar?", + "address_label": "Endereço", + "address_placeholder": "por exemplo, meu-espaço", + "creating": "A criar...", + "creating_rooms": "A criar salas...", + "done_action": "Vai ao meu espaço", + "done_action_first_room": "Vai para a minha primeira sala", + "explainer": "Os espaços são uma nova forma de agrupar divisões e pessoas. Que tipo de Espaço queres criar? Podes alterar isto mais tarde.", + "failed_create_initial_rooms": "Falha na criação de salas de espaço iniciais", + "failed_invite_users": "Falha ao convidar os seguintes utilizadores para o teu espaço: %(csvUsers)s", + "invite_teammates_by_username": "Convidar por nome de utilizador", + "invite_teammates_description": "Certifica-te de que as pessoas certas têm acesso. Podes convidar mais pessoas mais tarde.", + "invite_teammates_heading": "Convida os teus colegas de equipa", + "inviting_users": "A convidar...", + "label": "Cria um espaço", + "name_required": "Introduz um nome para o espaço", + "personal_space": "Apenas eu", + "personal_space_description": "Um espaço privado para organizares as tuas salas", + "private_description": "Só para convidados, melhor para ti ou para equipas", + "private_heading": "O teu espaço privado", + "private_personal_description": "Certifica-te de que as pessoas certas têm acesso a %(name)s", + "private_personal_heading": "Com quem estás a trabalhar?", + "private_space": "Eu e os meus colegas de equipa", + "private_space_description": "Um espaço privado para ti e para os teus colegas de equipa", + "public_description": "Espaço aberto para todos, melhor para as comunidades", + "public_heading": "O teu espaço público", + "search_public_button": "Procura espaços públicos", + "setup_rooms_community_description": "Vamos criar uma sala para cada um deles.", + "setup_rooms_community_heading": "Quais são algumas das coisas que queres discutir em %(spaceName)s?", + "setup_rooms_description": "Também podes acrescentar mais tarde, incluindo os já existentes.", + "setup_rooms_private_description": "Criaremos salas para cada um deles.", + "setup_rooms_private_heading": "Em que projectos está a tua equipa a trabalhar?", + "share_description": "Neste momento és só tu, mas será ainda melhor com outros.", + "share_heading": "Partilha %(name)s", + "skip_action": "Pular por agora", + "subspace_adding": "A adicionar...", + "subspace_beta_notice": "Adiciona um espaço a um espaço que geres.", + "subspace_dropdown_title": "Cria um espaço", + "subspace_existing_space_prompt": "Queres acrescentar um espaço existente?", + "subspace_join_rule_invite_description": "Apenas as pessoas convidadas poderão encontrar e juntar-se a este espaço.", + "subspace_join_rule_invite_only": "Espaço privado (só para convidados)", + "subspace_join_rule_label": "Visibilidade do espaço", + "subspace_join_rule_public_description": "Qualquer pessoa poderá encontrar e aderir a este espaço, não apenas os membros de .", + "subspace_join_rule_restricted_description": "Qualquer pessoa em poderá encontrar e aderir." + }, + "credits": { + "default_cover_photo": "A fotografia de capa predefinida é © Jesús Roncero utilizada nos termos de CC-BY-SA 4.0.", + "twemoji": "A arte do emoji Twemoji é © Twitter, Inc e outros colaboradores utilizada ao abrigo dos termos de CC-BY 4.0.", + "twemoji_colr": "O tipo de letra twemoji-colr é © Mozilla Foundation utilizado nos termos de Apache 2.0." + }, + "devtools": { + "active_widgets": "Widgets ativos", + "category_other": "Outros", + "category_room": "Sala", + "caution_colon": "Atenção:", + "client_versions": "Versões de cliente", + "developer_mode": "Modo de desenvolvedor", + "developer_tools": "Ferramentas de desenvolvedor", + "edit_setting": "Editar configuração", + "edit_values": "Editar valores", + "empty_string": "", + "event_content": "Conteúdo do evento", + "event_id": "ID do evento: %(eventId)s", + "event_sent": "Evento enviado!", + "event_type": "Tipo de evento", + "explore_account_data": "Explora os dados da conta", + "explore_room_account_data": "Explora os dados da conta da sala", + "explore_room_state": "Explora o estado da sala", + "failed_to_find_widget": "Houve um erro ao encontrar este widget.", + "failed_to_load": "Falhou ao carregar.", + "failed_to_save": "Falhou ao salvar as configurações.", + "failed_to_send": "Falha ao enviar evento!", + "id": "ID: ", + "invalid_json": "Não parece ser um JSON válido.", + "level": "Nível", + "low_bandwidth_mode": "Modo de baixa largura de banda", + "low_bandwidth_mode_description": "Requer um servidor doméstico compatível.", + "main_timeline": "Linha cronológica principal", + "no_receipt_found": "Nenhum recibo encontrado", + "notification_state": "O estado da notificação é %(notificationState)s", + "notifications_debug": "Depuração de notificações", + "number_of_users": "Número de utilizadores", + "original_event_source": "Fonte original do evento", + "room_encrypted": "A sala está encriptada ✅", + "room_id": "ID da sala:%(roomId)s", + "room_not_encrypted": "A sala não está encriptada🚨", + "room_notifications_dot": "Ponto: ", + "room_notifications_highlight": "Destaque: ", + "room_notifications_last_event": "Último evento:", + "room_notifications_sender": "Remetente: ", + "room_notifications_thread_id": "ID do tópico: ", + "room_notifications_total": "Total: ", + "room_notifications_type": "Escreve:", + "room_status": "Estado da sala", + "room_unread_status_count": { + "one": "Estado não lido da sala: %(status)s, contagem: %(count)s", + "other": "Estado não lido da sala: %(status)s, contagem: %(count)s" + }, + "save_setting_values": "Guarda os valores de configuração", + "see_history": "Ver histórico", + "send_custom_account_data_event": "Enviar evento de dados de conta personalizado", + "send_custom_room_account_data_event": "Envia um evento personalizado de dados de conta de sala", + "send_custom_state_event": "Envia um evento de estado personalizado", + "send_custom_timeline_event": "Envia evento de cronograma personalizado", + "server_info": "Informação do servidor", + "server_versions": "Versões de servidor", + "settable_global": "Configurável em global", + "settable_room": "Configurável na sala", + "setting_colon": "Configuração:", + "setting_definition": "Definição de configuração:", + "setting_id": "ID de configuração", + "settings_explorer": "Explorador de definições", + "show_hidden_events": "Mostra eventos ocultos na linha do tempo", + "spaces": { + "one": "", + "other": "<%(count)s spaces>" + }, + "state_key": "Chave de estado", + "thread_root_id": "ID da raiz do tópico: %(threadRootId)s", + "threads_timeline": "Cronograma de tópicos", + "title": "Ferramentas de desenvolvedor", + "toggle_event": "alternar evento", + "toolbox": "Caixa de ferramentas", + "use_at_own_risk": "Esta interface de utilizador NÃO verifica os tipos dos valores. Utiliza-a por tua conta e risco.", + "user_read_up_to": "O utilizador leu até: ", + "user_read_up_to_ignore_synthetic": "O utilizador leu até (ignoreSynthetic): ", + "user_read_up_to_private": "O utilizador leu até (m.read.private): ", + "user_read_up_to_private_ignore_synthetic": "O utilizador lê até (m.read.private;ignoreSynthetic): ", + "value": "Valor", + "value_colon": "Valor:", + "value_in_this_room": "Valor nesta sala", + "value_this_room_colon": "Valor nesta sala:", + "values_explicit": "Valores a níveis explícitos", + "values_explicit_colon": "Valores a níveis explícitos:", + "values_explicit_room": "Valores em níveis explícitos nesta sala", + "values_explicit_this_room_colon": "Valores a níveis explícitos nesta sala:", + "view_servers_in_room": "Vê os servidores na sala", + "view_source_decrypted_event_source": "Fonte do evento desencriptado", + "view_source_decrypted_event_source_unavailable": "Fonte desencriptada indisponível", + "widget_screenshots": "Ativar capturas de ecrã de widgets em widgets suportados" + }, + "dialog_close_label": "Fechar diálogo", + "emoji": { + "categories": "Categorias", + "category_activities": "Atividades", + "category_animals_nature": "Animais e Natureza", + "category_flags": "Bandeiras", + "category_food_drink": "Comida e Bebida", + "category_frequently_used": "Frequentemente utilizado", + "category_objects": "Objetos", + "category_smileys_people": "Carinhas Sorridentes e Pessoas", + "category_symbols": "Símbolos", + "category_travel_places": "Viagens e Locais", + "quick_reactions": "Reações rápidas" + }, + "emoji_picker": { + "cancel_search_label": "Cancelar pesquisa" + }, + "empty_room": "Sala vazia", + "empty_room_was_name": "Sala vazia (era %(oldName)s)", + "encryption": { + "access_secret_storage_dialog": { + "enter_phrase_or_key_prompt": "Introduz a tua frase de segurança ou para continuar.", + "key_validation_text": { + "invalid_security_key": "Chave de segurança inválida", + "recovery_key_is_correct": "Parece bom!", + "wrong_file_type": "Tipo de ficheiro errado", + "wrong_security_key": "Chave de segurança errada" + }, + "reset_title": "Repor tudo", + "reset_warning_1": "Faz isto apenas se não tiveres outro dispositivo para completar a verificação.", + "reset_warning_2": "Se reiniciares tudo, irás reiniciar sem sessões de confiança, sem utilizadores de confiança e poderás não conseguir ver mensagens anteriores.", + "restoring": "Restaurar chaves a partir de uma cópia de segurança", + "security_key_title": "Chave de segurança", + "security_phrase_incorrect_error": "Não é possível aceder ao armazenamento secreto. Verifica se introduziste a frase de segurança correcta.", + "security_phrase_title": "Frase de segurança", + "separator": "%(securityKey)s ou %(recoveryFile)s", + "use_security_key_prompt": "Utiliza a tua chave de segurança para continuar." + }, + "bootstrap_title": "A configurar chaves", + "cancel_entering_passphrase_description": "Tem a certeza que quer cancelar a introdução da frase-passe?", + "cancel_entering_passphrase_title": "Cancelar a introdução da frase-passe?", + "confirm_encryption_setup_body": "Clica no botão abaixo para confirmar a configuração da encriptação.", + "confirm_encryption_setup_title": "Confirma a configuração da encriptação", + "cross_signing_not_ready": "A assinatura cruzada não está configurada.", + "cross_signing_ready": "A assinatura cruzada está pronta a ser utilizada.", + "cross_signing_ready_no_backup": "A assinatura cruzada está pronta, mas as chaves não têm cópia de segurança.", + "cross_signing_room_normal": "Esta sala é encriptada de ponta a ponta", + "cross_signing_room_verified": "Toda a gente nesta sala é verificada", + "cross_signing_room_warning": "Alguém está a utilizar uma sessão desconhecida", + "cross_signing_unsupported": "O teu servidor doméstico não suporta assinatura cruzada.", + "cross_signing_untrusted": "A tua conta tem uma identidade de assinatura cruzada no armazenamento secreto, mas ainda não é de confiança para esta sessão.", + "cross_signing_user_normal": "Não verificaste este utilizador.", + "cross_signing_user_verified": "Verificaste este utilizador. Este utilizador verificou todas as suas sessões.", + "cross_signing_user_warning": "Este utilizador não verificou todas as suas sessões.", + "destroy_cross_signing_dialog": { + "primary_button_text": "Chaves de assinatura cruzada claras", + "title": "Destrói as chaves de assinatura cruzada?", + "warning": "A eliminação das chaves de assinatura cruzada é permanente. Qualquer pessoa com quem tenhas feito a verificação verá alertas de segurança. É quase certo que não vais querer fazer isto, a menos que tenhas perdido todos os dispositivos a partir dos quais podes fazer a assinatura cruzada." + }, + "event_shield_reason_authenticity_not_guaranteed": "A autenticidade desta mensagem encriptada não pode ser garantida neste dispositivo.", + "event_shield_reason_mismatched_sender_key": "Encriptado por uma sessão não verificada", + "event_shield_reason_unknown_device": "Encriptado por um dispositivo desconhecido ou apagado.", + "event_shield_reason_unsigned_device": "Encriptado por um dispositivo não verificado pelo seu proprietário.", + "event_shield_reason_unverified_identity": "Encriptado por um utilizador não verificado.", + "export_unsupported": "O seu navegador não suporta as extensões de criptografia necessárias", + "import_invalid_keyfile": "Não é um ficheiro de chaves %(brand)s válido", + "import_invalid_passphrase": "Erro de autenticação: palavra-passe incorreta?", + "messages_not_secure": { + "cause_1": "O teu servidor doméstico", + "cause_2": "O servidor doméstico ao qual o utilizador que estás a verificar está ligado", + "cause_3": "A tua ligação à Internet ou a dos outros utilizadores", + "cause_4": "A tua sessão, ou a dos outros utilizadores", + "heading": "Um dos seguintes elementos pode estar comprometido:", + "title": "As tuas mensagens não são seguras" + }, + "new_recovery_method_detected": { + "description_1": "Foi detectada uma nova frase de segurança e uma nova chave para as mensagens seguras.", + "description_2": "Esta sessão está a encriptar o histórico utilizando o novo método de recuperação.", + "title": "Novo método de recuperação", + "warning": "Se não tiveres definido o novo método de recuperação, um atacante pode estar a tentar aceder à tua conta. Altera a palavra-passe da tua conta e define imediatamente um novo método de recuperação nas Definições." + }, + "not_supported": "", + "recovery_method_removed": { + "description_1": "Esta sessão detectou que a tua frase de segurança e a chave para as mensagens seguras foram removidas.", + "description_2": "Se o fizeste acidentalmente, podes configurar as Mensagens seguras nesta sessão, o que criptografará novamente o histórico de mensagens desta sessão com um novo método de recuperação.", + "title": "Método de recuperação Removido", + "warning": "Se não tiveres removido o método de recuperação, um atacante pode estar a tentar aceder à tua conta. Altera a palavra-passe da tua conta e define imediatamente um novo método de recuperação nas Definições." + }, + "reset_all_button": "Esqueceste-te ou perdeste todos os métodos de recuperação? Repor tudo", + "set_up_toast_description": "Protege-te contra a perda de acesso a mensagens e dados encriptados", + "set_up_toast_title": "Configura uma cópia de segurança segura", + "setup_secure_backup": { + "explainer": "Guarda as tuas chaves antes de saíres para evitar perdê-las.", + "title": "Configurar" + }, + "udd": { + "interactive_verification_button": "Verifica interactivamente por emoji", + "other_ask_verify_text": "Pede a este utilizador para verificar a sua sessão ou verifica-a manualmente abaixo.", + "other_new_session_text": "%(name)s(%(userId)s ) entrou numa nova sessão sem verificá-la:", + "own_ask_verify_text": "Verifica a tua outra sessão utilizando uma das opções abaixo.", + "own_new_session_text": "Entraste numa nova sessão sem a verificar:", + "title": "Não é confiável" + }, + "unable_to_setup_keys_error": "Não é possível configurar as chaves", + "unsupported": "Este cliente não suporta encriptação de ponta a ponta.", + "verification": { + "accepting": "Aceitando...", + "after_new_login": { + "device_verified": "Dispositivo verificado", + "reset_confirmation": "Repõe mesmo as chaves de verificação?", + "skip_verification": "Ignora a verificação por enquanto", + "unable_to_verify": "Não é possível verificar este dispositivo", + "verify_this_device": "Verifica este dispositivo" + }, + "cancelled": "Cancelaste a verificação.", + "cancelled_self": "Cancelaste a verificação no teu outro dispositivo.", + "cancelled_user": "%(displayName)sverificação cancelada.", + "cancelling": "A cancelar…", + "complete_action": "Entendi", + "complete_description": "Verificaste este utilizador com sucesso.", + "complete_title": "Verificado!", + "error_starting_description": "Não foi possível iniciar uma conversa com o outro utilizador.", + "error_starting_title": "Erro ao iniciar a verificação", + "explainer": "As mensagens seguras com este utilizador são encriptadas de ponta a ponta e não podem ser lidas por terceiros.", + "in_person": "Para teres segurança, fá-lo pessoalmente ou utiliza um meio de comunicação de confiança.", + "incoming_sas_device_dialog_text_1": "Verifica este dispositivo para o marcar como fiável. Confiar neste dispositivo dá-te a ti e a outros utilizadores uma tranquilidade extra ao utilizarem mensagens encriptadas de ponta a ponta.", + "incoming_sas_device_dialog_text_2": "A verificação deste dispositivo irá marcá-lo como fiável e os utilizadores que tiverem verificado contigo irão confiar neste dispositivo.", + "incoming_sas_dialog_title": "Pedido de verificação recebido", + "incoming_sas_dialog_waiting": "Aguarda a confirmação do parceiro...", + "incoming_sas_user_dialog_text_1": "Verifica este utilizador para o marcar como fiável. A confiança nos utilizadores dá-te uma tranquilidade extra quando utilizas mensagens encriptadas de ponta a ponta.", + "incoming_sas_user_dialog_text_2": "A verificação deste utilizador marcará a sua sessão como sendo de confiança e também marcará a tua sessão como sendo de confiança para ele.", + "no_key_or_device": "Parece que não tens uma chave de segurança ou quaisquer outros dispositivos que possam ser verificados. Este dispositivo não poderá aceder a mensagens encriptadas antigas. Para verificares a tua identidade neste dispositivo, terás de repor as tuas chaves de verificação.", + "no_support_qr_emoji": "O dispositivo que estás a tentar verificar não suporta a leitura de um código QR nem a verificação de emoji, os dois métodos suportados pela %(brand)s. Tenta com um cliente diferente.", + "other_party_cancelled": "A outra parte cancelou a verificação.", + "prompt_encrypted": "Verifica todos os utilizadores de uma sala para garantir a sua segurança.", + "prompt_self": "Inicia novamente a verificação a partir da notificação.", + "prompt_unencrypted": "Em salas encriptadas, verifica todos os utilizadores para garantir a segurança.", + "prompt_user": "Recomeça a verificação a partir do perfil.", + "qr_or_sas": "%(qrCode)s ou %(emojiCompare)s", + "qr_or_sas_header": "Verifica este dispositivo completando uma das seguintes opções:", + "qr_prompt": "Lê este código único", + "qr_reciprocate_same_shield_device": "Estás quase lá! O teu outro dispositivo está a mostrar o mesmo escudo?", + "qr_reciprocate_same_shield_user": "Estás quase lá! O %(displayName)s tem o mesmo escudo?", + "request_toast_accept": "Verifica a sessão", + "request_toast_accept_user": "Verificar utilizador", + "request_toast_decline_counter": "Ignora (%(counter)s)", + "request_toast_detail": "%(deviceId)s de %(ip)s", + "reset_proceed_prompt": "Procede à reposição", + "sas_caption_self": "Verifica este dispositivo, confirmando que o número seguinte aparece no ecrã.", + "sas_caption_user": "Verifica este utilizador, confirmando que o seguinte número aparece no ecrã deles.", + "sas_description": "Compara um conjunto único de emojis se não tiveres uma câmara em nenhum dos dispositivos", + "sas_emoji_caption_self": "Confirma se os emojis abaixo são apresentados em ambos os dispositivos, pela mesma ordem:", + "sas_emoji_caption_user": "Verifica este utilizador confirmando que o seguinte emoji aparece no seu ecrã.", + "sas_match": "Correspondem", + "sas_no_match": "Não correspondem", + "sas_prompt": "Compara emojis únicos", + "scan_qr": "Verifica através da leitura de um código", + "scan_qr_explainer": "Pede a %(displayName)s para ler o teu código:", + "self_verification_hint": "Para continuar, aceita o pedido de verificação no teu outro dispositivo.", + "start_button": "Iniciar Verificação", + "successful_device": "Verificaste com sucesso %(deviceName)s (%(deviceId)s)!", + "successful_own_device": "Verificaste o teu dispositivo com sucesso!", + "successful_user": "Verificaste com sucesso %(displayName)s!", + "timed_out": "A verificação expirou.", + "unsupported_method": "Não foi possível encontrar um método de verificação compatível.", + "unverified_session_toast_accept": "Sim, fui eu", + "unverified_session_toast_title": "Novo login. Foste tu?", + "unverified_sessions_toast_description": "Revê para garantir que a tua conta está segura", + "unverified_sessions_toast_reject": "Mais tarde", + "unverified_sessions_toast_title": "Tens sessões não verificadas", + "verification_description": "Verifica a tua identidade para acederes a mensagens encriptadas e provares a tua identidade a outros.", + "verification_dialog_title_device": "Verifica o outro dispositivo", + "verification_dialog_title_user": "Pedido de verificação", + "verification_skip_warning": "Sem a verificação, não terás acesso a todas as tuas mensagens e poderás parecer pouco fiável aos olhos dos outros.", + "verification_success_with_backup": "O teu novo dispositivo está agora verificado. Tem acesso às tuas mensagens encriptadas e os outros utilizadores vão considerá-lo de confiança.", + "verification_success_without_backup": "O teu novo dispositivo está agora verificado. Outros utilizadores irão vê-lo como sendo de confiança.", + "verify_emoji": "Verifica por emoji", + "verify_emoji_prompt": "Verifica comparando o emoji único.", + "verify_emoji_prompt_qr": "Se não conseguires ler o código acima, verifica-o comparando emojis.", + "verify_later": "Verificarei mais tarde", + "verify_reset_warning_1": "A reposição das tuas chaves de verificação não pode ser anulada. Após a reposição, não terás acesso a mensagens encriptadas antigas e todos os amigos que te tenham verificado anteriormente verão avisos de segurança até voltares a verificar com eles.", + "verify_reset_warning_2": "Só avances se tiveres a certeza de que perdeste todos os teus outros dispositivos e a tua chave de segurança.", + "verify_using_device": "Verifica com outro dispositivo", + "verify_using_key": "Verifica com a chave de segurança", + "verify_using_key_or_phrase": "Verifica com a chave ou frase de segurança", + "waiting_for_user_accept": "À espera de %(displayName)s para aceitar...", + "waiting_other_device": "À espera que verifiques no teu outro dispositivo...", + "waiting_other_device_details": "À espera que verifiques no teu outro dispositivo, %(deviceName)s (%(deviceId)s)...", + "waiting_other_user": "À espera de %(displayName)s para verificar..." + }, + "verification_requested_toast_title": "Verificação solicitada", + "verify_toast_description": "Outros utilizadores podem não confiar nisto", + "verify_toast_title": "Verifica esta sessão" + }, + "error": { + "admin_contact": "Por favor, contacta o teu administrador de serviços para continuares a utilizar este serviço.", + "admin_contact_short": "Contacta o teu administrador do servidor .", + "connection": "Houve um problema de comunicação com o servidor doméstico, por favor tenta novamente mais tarde.", + "dialog_description_default": "Ocorreu um erro.", + "download_media": "Falha ao transferir o media de origem, não foi encontrado nenhum url de origem", + "edit_history_unsupported": "O teu servidor doméstico não parece suportar esta funcionalidade.", + "failed_copy": "Falha ao copiar", + "hs_blocked": "Este servidor doméstico foi bloqueado pelo seu administrador.", + "mau": "Este servidor doméstico atingiu o seu limite mensal de utilizadores activos.", + "mixed_content": "Não consigo conectar ao servidor padrão através de HTTP quando uma URL HTTPS está na barra de endereços do seu navegador. Use HTTPS ou então habilite scripts não seguros no seu navegador.", + "non_urgent_echo_failure_toast": "O teu servidor não está a responder a alguns pedidos .", + "resource_limits": "Este servidor doméstico excedeu um dos seus limites de recursos.", + "session_restore": { + "clear_storage_button": "Limpa o armazenamento e encerra a sessão", + "clear_storage_description": "Termina a sessão e remove as chaves de encriptação?", + "description_1": "Encontrámos um erro ao tentar restaurar a tua sessão anterior.", + "description_2": "Se você já usou antes uma versão mais recente do %(brand)s, a sua sessão pode ser incompatível com esta versão. Feche esta janela e tente abrir com a versão mais recente.", + "description_3": "Limpar o armazenamento do teu browser pode resolver o problema, mas irá desconectar-te e fazer com que qualquer histórico de conversação encriptado se torne ilegível.", + "title": "Não foi possível restaurar a sessão" + }, + "something_went_wrong": "Algo deu errado!", + "storage_evicted_description_1": "Alguns dados da sessão, incluindo chaves de mensagens encriptadas, estão em falta. Termina a sessão e inicia sessão para corrigir esta situação, restaurando as chaves a partir da cópia de segurança.", + "storage_evicted_description_2": "É provável que o teu browser tenha removido estes dados quando ficou com pouco espaço em disco.", + "storage_evicted_title": "Dados da sessão em falta", + "sync": "Não é possível ligar ao servidor doméstico. Tenta novamente...", + "tls": "Não foi possível conectar ao Servidor de Base. Por favor, confira sua conectividade à internet, garanta que o certificado SSL do Servidor de Base é confiável, e que uma extensão do navegador não esteja bloqueando as requisições de rede.", + "unknown": "Erro desconhecido", + "unknown_error_code": "código de erro desconhecido", + "update_power_level": "Não foi possível mudar o nível de permissões" + }, + "error_app_open_in_another_tab": "Muda para o outro separador para te ligares a %(brand)s. Este separador pode agora ser fechado.", + "error_app_open_in_another_tab_title": "%(brand)s está ligado noutro separador", + "error_app_opened_in_another_window": "%(brand)s está aberto noutra janela. Clica em \"%(label)s\" para utilizares %(brand)s aqui e desligares a outra janela.", + "error_database_closed_description": { + "for_desktop": "O teu disco pode estar cheio. Limpa algum espaço e volta a carregar.", + "for_web": "Se limpaste os dados de navegação, esta mensagem é esperada. %(brand)s também pode estar aberto noutro separador ou o teu disco está cheio. Limpa algum espaço e volta a carregar" + }, + "error_database_closed_title": "Base de dados fechada inesperadamente", + "error_dialog": { + "copy_room_link_failed": { + "description": "Não é possível copiar uma ligação à sala para a área de transferência.", + "title": "Não é possível copiar o link da sala" + }, + "error_loading_user_profile": "Não foi possível carregar o perfil do utilizador", + "forget_room_failed": "Falha ao esquecer a sala %(errCode)s", + "search_failed": { + "server_unavailable": "O servidor pode estar indisponível, sobrecarregado, ou a busca ultrapassou o tempo limite :(", + "title": "Busca falhou" + } + }, + "error_user_not_logged_in": "Utilizador não tem sessão iniciada", + "event_preview": { + "m.call.answer": { + "dm": "Chamada em curso", + "user": "%(senderName)s entrou na chamada", + "you": "Entraste na chamada" + }, + "m.call.hangup": { + "user": "%(senderName)s terminou a chamada", + "you": "Terminaste a chamada" + }, + "m.call.invite": { + "dm_receive": "%(senderName)s está a chamar", + "dm_send": "Aguarda a resposta", + "user": "%(senderName)s iniciou uma chamada", + "you": "Começaste uma chamada" + }, + "m.emote": "* %(senderName)s %(emote)s", + "m.reaction": { + "user": "%(sender)s reagiu %(reaction)s a %(message)s", + "you": "Reagiste %(reaction)s a %(message)s" + }, + "m.sticker": "%(senderName)s: %(stickerName)s", + "m.text": "%(senderName)s: %(message)s" + }, + "export_chat": { + "cancelled": "Exportação cancelada", + "cancelled_detail": "A exportação foi cancelada com sucesso", + "confirm_stop": "Tens a certeza de que queres deixar de exportar os teus dados? Se tiveres, terás de começar de novo.", + "creating_html": "Gerando HTML…", + "creating_output": "Criando resultados...", + "creator_summary": "%(creatorName)s criou esta sala.", + "current_timeline": "Cronologia Atual", + "enter_number_between_min_max": "Introduz um número entre %(min)s e %(max)s", + "error_fetching_file": "Erro ao obter ficheiro", + "export_info": "Este é o início da exportação de . Exportado por a %(exportDate)s.", + "export_successful": "Exportação bem sucedida!", + "exported_n_events_in_time": { + "one": "%(count)s evento exportado em %(seconds)s segundos", + "other": "%(count)s eventos exportados em %(seconds)s segundos" + }, + "exporting_your_data": "Exportar os teus dados", + "fetched_n_events": { + "one": "Obteve %(count)s evento até agora", + "other": "Obteve %(count)s eventos até agora" + }, + "fetched_n_events_in_time": { + "one": "%(count)s evento obtido em %(seconds)ss", + "other": "%(count)s eventos obtidos em %(seconds)ss" + }, + "fetched_n_events_with_total": { + "one": "Obteve %(count)s evento de %(total)s", + "other": "Obteve %(count)s eventos de %(total)s" + }, + "fetching_events": "Obtendo eventos...", + "file_attached": "Ficheiro anexo", + "format": "Formato", + "from_the_beginning": "Desde o início", + "generating_zip": "A gerar um ZIP", + "html": "HTML", + "html_title": "Dados Exportados", + "include_attachments": "Incluir anexos", + "json": "JSON", + "media_omitted": "Meios de comunicação omitidos", + "media_omitted_file_size": "Meios de comunicação omitidos - limite do tamanho do ficheiro excedido", + "messages": "Mensagens", + "next_page": "Próximo grupo de mensagens", + "num_messages": "Número de mensagens", + "num_messages_min_max": "O número de mensagens só pode ser um número entre %(min)s e %(max)s", + "number_of_messages": "Especifique um número de mensagens", + "previous_page": "Mensagens anteriores do grupo", + "processing": "Processando…", + "processing_event_n": "Evento de processamento %(number)s de %(total)s", + "select_option": "Selecciona uma das opções abaixo para exportar conversas da tua linha de tempo", + "size_limit": "Limite de tamanho", + "size_limit_min_max": "O tamanho só pode ser um número entre %(min)s MB e %(max)s MB", + "size_limit_postfix": "MB", + "starting_export": "Iniciando exportação...", + "successful": "Exportação bem-sucedida", + "successful_detail": "A tua exportação foi bem sucedida. Encontra-o na tua pasta de Transferências.", + "text": "Texto Simples", + "title": "Exportar Chat", + "topic": "Tópico: %(topic)s", + "unload_confirm": "Tem a certeza de que pretende sair durante esta exportação?" + }, + "failed_load_async_component": "Impossível carregar! Verifique a sua ligação de rede e tente novamente.", + "feedback": { + "can_contact_label": "Podes contactar-me se tiveres alguma questão complementar", + "comment_label": "Comente", + "existing_issue_link": "Por favor, vê primeiro bugs existentes no Github. Não encontras nada? Inicia um novo.", + "may_contact_label": "Podes contactar-me se quiseres fazer um seguimento ou para me deixares testar ideias futuras", + "platform_username": "A sua plataforma e o seu nome de utilizador serão anotados para nos ajudar a utilizar o seu feedback da melhor forma possível.", + "pro_type": "DICA PRO: Se iniciares um bug, envia debug logs para nos ajudar a localizar o problema.", + "send_feedback_action": "Enviar comentários", + "sent": "Enviaste o teu feedback! Obrigado, agradecemos-te!" + }, + "file_panel": { + "empty_description": "Anexa ficheiros a partir do chat ou arrasta-os e larga-os em qualquer parte da sala.", + "empty_heading": "Não há ficheiros visíveis nesta sala", + "guest_note": "Você deve se registrar para poder usar esta funcionalidade", + "peek_note": "Você precisa ingressar na sala para ver seus arquivos" + }, + "forward": { + "filter_placeholder": "Procura salas ou pessoas", + "message_preview_heading": "Pré-visualização da mensagem", + "no_perms_title": "Não tens autorização para fazer isto", + "open_room": "Sala aberta", + "send_label": "Enviar", + "sending": "A enviar…", + "sent": "Enviado" + }, + "identity_server": { + "change": "Altera o servidor de identidade", + "change_prompt": "Desligar do servidor de identidade e ligar a em vez disso?", + "change_server_prompt": "Se não pretenderes utilizar para descobrir e ser descoberto pelos contactos existentes que conheces, introduz outro servidor de identidade abaixo.", + "checking": "A verificar o servidor", + "description_connected": "Atualmente, estás a utilizar para descobrires e seres descoberto pelos contactos existentes que conheces. Podes alterar o teu servidor de identidade abaixo.", + "description_disconnected": "Atualmente, não estás a utilizar um servidor de identidade. Para descobrires e seres descoberto pelos contactos existentes que conheces, adiciona um abaixo.", + "description_optional": "A utilização de um servidor de identidade é opcional. Se optares por não utilizar um servidor de identidade, não poderás ser descoberto por outros utilizadores e não poderás convidar outras pessoas por correio eletrónico ou telefone.", + "disconnect": "Desliga o servidor de identidade", + "disconnect_anyway": "Desliga de qualquer maneira", + "disconnect_offline_warning": "Deves remover os teus dados pessoais do servidor de identidade antes de te desconectares. Infelizmente, o servidor de identidade está atualmente offline ou não pode ser contactado.", + "disconnect_personal_data_warning_1": "Continuas a partilhar os teus dados pessoais no servidor de identidade .", + "disconnect_personal_data_warning_2": "Recomendamos que remova seus endereços de email e números de telefone do servidor de identidade antes de se desconectar.", + "disconnect_server": "Desliga do servidor de identidade ?", + "disconnect_warning": "Se te desligares do teu servidor de identidade, não poderás ser descoberto por outros utilizadores e não poderás convidar outras pessoas por e-mail ou telefone.", + "do_not_use": "Não utilizes um servidor de identidade", + "error_connection": "Não foi possível ligar ao servidor de identidade", + "error_invalid": "Servidor de Identidade inválido (código de status %(code)s)", + "error_invalid_or_terms": "Os termos de serviço não foram aceites ou o servidor de identidade é inválido.", + "no_terms": "O servidor de identidade que escolheste não tem quaisquer termos de serviço.", + "suggestions": "Tu deves:", + "suggestions_1": "verifica se os plug-ins do teu browser não têm nada que possa bloquear o servidor de identidade (como o Privacy Badger)", + "suggestions_2": "contacta os administradores do servidor de identidade ", + "suggestions_3": "espera e tenta novamente mais tarde", + "url": "Servidor de identidade (%(server)s)", + "url_field_label": "Introduz um novo servidor de identidade", + "url_not_https": "O link do servidor de identidade deve começar com HTTPS" + }, + "in_space": "Em %(spaceName)s.", + "in_space1_and_space2": "Nos espaços %(space1Name)s e %(space2Name)s.", + "in_space_and_n_other_spaces": { + "one": "Em %(spaceName)s e noutro espaço.", + "other": "Em %(spaceName)s e %(count)s outros espaços." + }, + "info_tooltip_title": "Informação", + "integration_manager": { + "connecting": "Conectando ao gerenciador de integração…", + "error_connecting": "O gestor de integração está offline ou não consegue aceder ao teu servidor doméstico.", + "error_connecting_heading": "Não é possível conectar-se ao gerenciador de integração", + "explainer": "Os gestores de integração recebem dados de configuração e podem modificar widgets, enviar convites para salas e definir níveis de potência em teu nome.", + "manage_title": "Gere as integrações", + "use_im": "Utiliza um gestor de integração para gerir bots, widgets e pacotes de autocolantes.", + "use_im_default": "Utiliza um gestor de integração (%(serverName)s) para gerir bots, widgets e pacotes de autocolantes." + }, + "integrations": { + "disabled_dialog_description": "Para isso, ativa '%(manageIntegrations)s' nas Definições.", + "disabled_dialog_title": "As integrações estão desativadas", + "impossible_dialog_description": "O teu %(brand)s não te permite utilizar um gestor de integração para o fazer. Contacta um administrador.", + "impossible_dialog_title": "Integrações não permitidas" + }, + "invite": { + "ask_anyway_description": "Não foi possível encontrar perfis para os IDs de Matrix listados abaixo - gostarias de iniciar uma MD na mesma?", + "ask_anyway_label": "Começa a MD na mesma", + "ask_anyway_never_warn_label": "Começa a MD na mesma e não me avises mais", + "email_caption": "Convida por e-mail", + "email_limit_one": "Os convites por e-mail só podem ser enviados um de cada vez", + "email_use_default_is": "Utiliza um servidor de identidade para convidar por e-mail. Utiliza a predefinição (%(defaultIdentityServerName)s) ou gere em Definições.", + "email_use_is": "Utiliza um servidor de identidade para convidar por e-mail. Gere em Definições.", + "error_already_invited_room": "O utilizador já foi convidado para a sala", + "error_already_invited_space": "O utilizador já está convidado para o espaço", + "error_already_joined_room": "O utilizador já está na sala", + "error_already_joined_space": "O utilizador já se encontra no espaço", + "error_bad_state": "O utilizador tem de deixar de ser banido antes de poder ser convidado.", + "error_dm": "Não foi possível criar a tua DM.", + "error_find_room": "Algo correu mal ao tentar convidar os utilizadores.", + "error_find_user_description": "Os seguintes utilizadores podem não existir ou são inválidos e não podem ser convidados: %(csvNames)s", + "error_find_user_title": "Falha ao encontrar os seguintes utilizadores", + "error_invite": "Não foi possível convidar esses utilizadores. Verifica os utilizadores que pretendes convidar e tenta novamente.", + "error_permissions_room": "Não tens permissão para convidar pessoas para esta sala.", + "error_permissions_space": "Não tens permissão para convidar pessoas para este espaço.", + "error_profile_undisclosed": "O utilizador pode ou não existir", + "error_transfer_multiple_target": "Uma chamada só pode ser transferida para um único utilizador.", + "error_unfederated_room": "Esta sala não é federada. Não podes convidar pessoas de servidores externos.", + "error_unfederated_space": "Este espaço não está federado. Não podes convidar pessoas de servidores externos.", + "error_unknown": "Erro de servidor desconhecido", + "error_user_not_found": "O utilizador não existe", + "error_version_unsupported_room": "O servidor doméstico do utilizador não suporta a versão da sala.", + "error_version_unsupported_space": "O servidor doméstico do utilizador não suporta a versão do espaço.", + "failed_generic": "A operação falhou", + "failed_title": "Falha ao enviar o convite", + "invalid_address": "Endereço não reconhecido", + "name_email_mxid_share_room": "Convide alguém a partir do nome, email ou nome de utilizador (como ) ou partilhe esta sala.", + "name_email_mxid_share_space": "Convide alguém a partir do nome, endereço de email, nome de utilizador (como ) ou partilhe este espaço.", + "name_mxid_share_room": "Convida alguém utilizando o seu nome, nome de utilizador (como ) ou partilha esta sala.", + "name_mxid_share_space": "Convide alguém a partir do nome, nome de utilizador (como ) ou partilhe este espaço.", + "recents_section": "Conversas recentes", + "room_failed_partial": "Enviámos os outros, mas as pessoas abaixo não puderam ser convidadas para ", + "room_failed_partial_title": "Alguns convites não puderam ser enviados", + "room_failed_title": "Falha ao convidar utilizadores para %(roomName)s", + "send_link_prompt": "Ou envia o link de convite", + "start_conversation_name_email_mxid_prompt": "Comece uma conversa com alguém a partir do nome, endereço de email ou nome de utilizador (por exemplo: ).", + "start_conversation_name_mxid_prompt": "Comece uma conversa com alguém a partir do nome ou nome de utilizador (por exemplo: ).", + "suggestions_disclaimer": "Algumas sugestões podem estar ocultas por motivos de privacidade.", + "suggestions_disclaimer_prompt": "Se não conseguires ver quem procuras, envia-lhe o teu convite através do link abaixo.", + "suggestions_section": "Mensagens directas recentes", + "to_room": "Convida para %(roomName)s", + "to_space": "Convida para %(spaceName)s", + "transfer_dial_pad_tab": "Teclado numérico", + "transfer_user_directory_tab": "Diretório de utilizadores", + "unable_find_profiles_description_default": "Não foi possível encontrar perfis para os IDs de Matrix listados abaixo - gostarias de os convidar na mesma?", + "unable_find_profiles_invite_label_default": "Convida na mesma", + "unable_find_profiles_invite_never_warn_label_default": "Convida na mesma e nunca mais me avises", + "unable_find_profiles_title": "Os seguintes utilizadores podem não existir", + "unban_first_title": "O utilizador não pode ser convidado enquanto não for desbanido" + }, + "inviting_user1_and_user2": "Convidando %(user1)s e %(user2)s", + "inviting_user_and_n_others": { + "other": "Convidando %(user)s e %(count)s outros", + "one": "Convidando %(user)s e 1 outro" + }, + "items_and_n_others": { + "one": "e um outro", + "other": "e %(count)s outros" + }, + "keyboard": { + "activate_button": "Ativar o botão selecionado", + "alt": "Alt", + "autocomplete_cancel": "Cancelar preenchimento automático", + "autocomplete_force": "Forçar a conclusão", + "autocomplete_navigate_next": "Próxima sugestão de preenchimento automático", + "autocomplete_navigate_prev": "Sugestão anterior de preenchimento automático", + "backspace": "Retrocesso", + "cancel_reply": "Cancelar a resposta a uma mensagem", + "category_autocomplete": "Preenchimento automático", + "category_calls": "Chamadas", + "category_navigation": "Navegação", + "category_room_list": "Lista de salas", + "close_dialog_menu": "Fecha a caixa de diálogo ou o menu de contexto", + "composer_jump_end": "Salta para o fim do compositor", + "composer_jump_start": "Salta para o início do compositor", + "composer_navigate_next_history": "Navega para a mensagem seguinte no histórico do compositor", + "composer_navigate_prev_history": "Navega para a mensagem anterior no histórico do compositor", + "composer_new_line": "Nova linha", + "composer_redo": "Refazer edição", + "composer_toggle_bold": "Alternar negrito", + "composer_toggle_code_block": "Alternar bloco de código", + "composer_toggle_italics": "Alternar itálico", + "composer_toggle_link": "Alternar link", + "composer_toggle_quote": "Alternar cotação", + "composer_undo": "Desfazer edição", + "control": "Ctrl", + "dismiss_read_marker_and_jump_bottom": "Ignora o marcador de leitura e salta para o fundo", + "end": "Fim", + "enter": "Entrar", + "escape": "Esc", + "go_home_view": "Vai para a Vista Inicial", + "home": "Início", + "jump_first_message": "Salta para a primeira mensagem", + "jump_last_message": "Salta para a última mensagem", + "jump_room_search": "Ir para a pesquisa de salas", + "jump_to_read_marker": "Salta para a mensagem mais antiga não lida", + "keyboard_shortcuts_tab": "Abre este separador de definições", + "navigate_next_history": "Próxima sala ou espaço visitado recentemente", + "navigate_next_message_edit": "Navega até à próxima mensagem para editar", + "navigate_prev_history": "Sala ou espaço anteriormente visitado recentemente", + "navigate_prev_message_edit": "Navega até à mensagem anterior para editar", + "next_landmark": "Vai para o próximo ponto de referência", + "next_room": "Próxima sala ou DM", + "next_unread_room": "Próxima sala não lida ou DM", + "number": "[número]", + "open_user_settings": "Abre as definições do utilizador", + "page_down": "Página para baixo", + "page_up": "Página para cima", + "prev_landmark": "Vai para o ponto de referência anterior", + "prev_room": "Sala anterior ou DM", + "prev_unread_room": "Sala anterior não lida ou DM", + "room_list_collapse_section": "Colapsar a secção da lista de salas", + "room_list_expand_section": "Expande a secção da lista de salas", + "room_list_navigate_down": "Navega para baixo na lista de salas", + "room_list_navigate_up": "Navega para cima na lista de salas", + "room_list_select_room": "Seleciona a sala na lista de salas", + "scroll_down_timeline": "Desloca-te para baixo na linha de tempo", + "scroll_up_timeline": "Desloca-te para cima na linha de tempo", + "search": "Pesquisa (deve estar ativada)", + "send_sticker": "Envia um autocolante", + "shift": "Muda", + "space": "Espaço", + "switch_to_space": "Passa para o espaço por número", + "toggle_hidden_events": "Alternar visibilidade de eventos ocultos", + "toggle_microphone_mute": "Alternar microfone mudo", + "toggle_right_panel": "Alternar painel direito", + "toggle_space_panel": "Alternar painel de espaço", + "toggle_top_left_menu": "Alternar o menu superior esquerdo", + "toggle_webcam_mute": "Ativar/desativar a webcam", + "upload_file": "Carrega um ficheiro" + }, + "labs": { + "allow_screen_share_only_mode": "Permitir o modo de partilha de ecrã apenas", + "ask_to_join": "Permitir pedir para participar", + "automatic_debug_logs": "Envia automaticamente registos de depuração em qualquer erro", + "automatic_debug_logs_decryption": "Envia automaticamente registos de depuração em caso de erros de desencriptação", + "automatic_debug_logs_key_backup": "Envia automaticamente registos de depuração quando a cópia de segurança das chaves não está a funcionar", + "beta_description": "O que vais fazer a seguir em %(brand)s? Os laboratórios são a melhor forma de obteres informações antecipadas, testares novas funcionalidades e ajudares a moldá-las antes do seu lançamento efetivo.", + "beta_feature": "Esta é uma funcionalidade beta", + "beta_feedback_leave_button": "Para sair da versão beta, visita as tuas definições.", + "beta_feedback_title": "%(featureName)s Comentários sobre a versão beta", + "beta_section": "Próximas funcionalidades", + "bridge_state": "Mostrar informações sobre pontes nas definições da sala", + "bridge_state_channel": "Canal: ", + "bridge_state_creator": "Esta ponte foi fornecida por .", + "bridge_state_manager": "Esta ponte é gerida por .", + "bridge_state_workspace": "Espaço de trabalho: ", + "click_for_info": "Clica para mais informações", + "currently_experimental": "Atualmente experimental.", + "custom_themes": "Suporte a adicionar temas personalizados", + "dynamic_room_predecessors": "Antecessores de sala dinâmica", + "dynamic_room_predecessors_description": "Ativar MSC3946 (para suportar arquivos de salas que chegam tarde)", + "element_call_video_rooms": "Salas de Chamada de vídeo Element", + "experimental_description": "Estás a sentir-te experimental? Experimenta as nossas ideias mais recentes em desenvolvimento. Estas funcionalidades não estão finalizadas; podem ser instáveis, podem ser alteradas ou podem ser completamente abandonadas. Sabe mais em.", + "experimental_section": "Pré-visualizações antecipadas", + "feature_disable_call_per_sender_encryption": "Desativar a cifragem por remetente na Element Call", + "feature_wysiwyg_composer_description": "Utiliza texto rico em vez de Markdown no compositor de mensagens.", + "group_calls": "Nova experiência de chamada de grupo", + "group_developer": "Desenvolvedor", + "group_encryption": "Encriptação", + "group_experimental": "Experimental", + "group_messaging": "Mensagens", + "group_moderation": "Moderação", + "group_profile": "Perfil", + "group_rooms": "Salas", + "group_spaces": "Espaços", + "group_themes": "Temas", + "group_threads": "Tópicos", + "group_ui": "Interface do utilizador", + "group_voip": "Voz e vídeo", + "group_widgets": "Widgets", + "hidebold": "Ocultar o ponto de notificação (mostrar apenas os emblemas dos contadores)", + "html_topic": "Mostrar a representação HTML dos tópicos da sala", + "join_beta": "Junta-te à versão beta", + "join_beta_reload": "Se entrares na versão beta, recarregas o site %(brand)s.", + "jump_to_date": "Saltar para a data (adiciona cabeçalhos /jumptodate e saltar para a data)", + "jump_to_date_msc_support": "Requer que o seu servidor suporte o MSC3030", + "latex_maths": "Renderiza matemática LaTeX em mensagens", + "leave_beta": "Deixa a versão beta", + "leave_beta_reload": "Ao saíres da versão beta, recarregas o site %(brand)s.", + "location_share_live": "Partilha de localização em tempo real", + "location_share_live_description": "Implementação temporária. As localizações permanecem no histórico da sala.", + "mjolnir": "Novas formas de ignorar pessoas", + "msc3531_hide_messages_pending_moderation": "Permitir que os moderadores ocultem mensagens pendentes de moderação.", + "notification_settings": "Novas Definições de Notificação", + "notification_settings_beta_caption": "Apresentamos uma forma mais simples de alterar as tuas definições de notificação. Personaliza o teu %(brand)s, tal como gostas.", + "notification_settings_beta_title": "Definições de Notificação", + "notifications": "Ativar o painel de notificações no cabeçalho da sala", + "release_announcement": "Anúncio de lançamento", + "render_reaction_images": "Renderizar imagens personalizadas em reações", + "render_reaction_images_description": "Por vezes designados por \"emojis personalizados\".", + "report_to_moderators": "Denunciar aos moderadores", + "report_to_moderators_description": "Nas salas que suportam moderação, o botão \"Denunciar\" permite-te denunciar abusos aos moderadores da sala.", + "sliding_sync": "Modo Sliding Sync", + "sliding_sync_description": "Em desenvolvimento ativo, não pode ser desativado.", + "sliding_sync_disabled_notice": "Termina a sessão e volta a entrar para desativar", + "sliding_sync_server_no_support": "O teu servidor não tem suporte nativo", + "under_active_development": "Em desenvolvimento ativo.", + "unrealiable_e2e": "Não é fiável em salas encriptadas", + "video_rooms": "Salas de vídeo", + "video_rooms_a_new_way_to_chat": "Uma nova forma de conversar por voz e vídeo em %(brand)s.", + "video_rooms_always_on_voip_channels": "As salas de vídeo são canais VoIP sempre ativos incorporados numa sala em %(brand)s.", + "video_rooms_beta": "As salas de vídeo são uma funcionalidade beta", + "video_rooms_faq1_answer": "Utilize o botão \"+\" na secção da sala do painel esquerdo.", + "video_rooms_faq1_question": "Como posso criar uma sala de vídeo?", + "video_rooms_faq2_answer": "Sim, a linha de tempo da conversa é exibida ao lado do vídeo.", + "video_rooms_faq2_question": "Posso usar a conversa por texto juntamente com a videochamada?", + "video_rooms_feedbackSubheading": "Obrigado por experimentares a versão beta. Por favor, dá-nos o máximo de detalhes possível para podermos melhorá-la.", + "wysiwyg_composer": "Editor de texto rico" + }, + "labs_mjolnir": { + "advanced_warning": "⚠ Estas definições destinam-se a utilizadores avançados.", + "ban_reason": "Ignorado/Bloqueado", + "error_adding_ignore": "Erro ao adicionar utilizador/servidor ignorado", + "error_adding_list_description": "Verifica a ID ou o endereço da sala e tenta novamente.", + "error_adding_list_title": "Erro ao subscrever a lista", + "error_removing_ignore": "Erro ao remover utilizador/servidor ignorado", + "error_removing_list_description": "Tenta novamente ou vê a tua consola para obteres sugestões.", + "error_removing_list_title": "Erro ao cancelar a subscrição da lista", + "explainer_1": "Adiciona aqui utilizadores e servidores que pretendes ignorar. Utiliza asteriscos para que %(brand)s corresponda a quaisquer caracteres. Por exemplo, @bot:* ignoraria todos os utilizadores que têm o nome 'bot' em qualquer servidor.", + "explainer_2": "Ignorar pessoas é feito através de listas de banimento que contêm regras para quem deve ser banido. A subscrição de uma lista de proibições significa que os utilizadores/servidores bloqueados por essa lista serão ocultados de ti.", + "lists": "Estás atualmente inscrito em:", + "lists_description_1": "Ao subscreveres uma lista de proibições, vais juntar-te a ela!", + "lists_description_2": "Se não é isto que pretendes, utiliza uma ferramenta diferente para ignorar utilizadores.", + "lists_heading": "Listas subscritas", + "lists_new_label": "ID da sala ou endereço da lista de proibições", + "no_lists": "Não estás inscrito em nenhuma lista", + "personal_description": "A tua lista pessoal de banimento contém todos os utilizadores/servidores dos quais tu pessoalmente não queres ver mensagens. Depois de ignorares o teu primeiro utilizador/servidor, uma nova sala aparecerá na tua lista de salas com o nome '%(myBanList)s' - fica nesta sala para manteres a lista de banimentos em efeito.", + "personal_empty": "Não ignoraste ninguém.", + "personal_heading": "Lista de proibições pessoais", + "personal_new_label": "ID do servidor ou do utilizador a ignorar", + "personal_new_placeholder": "Ex: @bot:* ou exemplo.org", + "personal_section": "Atualmente estás a ignorar:", + "room_name": "A minha lista de proibições", + "room_topic": "Esta é a tua lista de utilizadores/servidores que bloqueaste - não saias da sala!", + "rules_empty": "Nenhum", + "rules_server": "Regras do servidor", + "rules_title": "Regras da lista de proibições - %(roomName)s", + "rules_user": "Regras de utilização", + "something_went_wrong": "Algo correu mal. Tenta novamente ou vê a tua consola para obteres sugestões.", + "title": "Utilizadores ignorados", + "view_rules": "Ver regras" + }, + "language_dropdown_label": "Lista suspensa de idiomas", + "leave_room_dialog": { + "last_person_warning": "Tu és a única pessoa aqui. Se te fores embora, ninguém poderá juntar-se a nós no futuro, incluindo tu.", + "leave_room_question": "Você tem certeza que deseja sair da sala '%(roomName)s'?", + "leave_space_question": "Tens a certeza de que queres deixar o espaço '%(spaceName)s'?", + "room_leave_admin_warning": "És o único administrador nesta sala. Se saíres, ninguém poderá alterar as definições da sala ou realizar outras ações importantes.", + "room_leave_mod_warning": "És o único moderador nesta sala. Se saíres, ninguém poderá alterar as definições da sala ou realizar outras ações importantes.", + "room_rejoin_warning": "Esta sala não é pública. Não poderás voltar a entrar sem um convite.", + "space_rejoin_warning": "Este espaço não é público. Não poderás voltar a entrar sem um convite." + }, + "left_panel": { + "open_dial_pad": "Abre o teclado de marcação" + }, + "lightbox": { + "rotate_left": "Rodar à esquerda", + "rotate_right": "Rodar à direita", + "title": "Visualização da imagem" + }, + "location_sharing": { + "MapStyleUrlNotConfigured": "Este servidor doméstico não está configurado para mostrar mapas.", + "MapStyleUrlNotReachable": "Este servidor doméstico não está configurado corretamente para apresentar mapas, ou o servidor de mapas configurado pode não estar acessível.", + "WebGLNotEnabled": "É necessário WebGL para visualizar os mapas, por isso ativa-o nas definições do teu browser.", + "click_drop_pin": "Clica para deixar cair um alfinete", + "click_move_pin": "Clica para mover o pino", + "close_sidebar": "Fechar barra lateral", + "error_fetch_location": "Não foi possível obter a localização", + "error_no_perms_description": "Tens de ter as permissões correctas para partilhar locais nesta sala.", + "error_no_perms_title": "Não tens autorização para partilhar localizações", + "error_send_description": "%(brand)s não foi possível enviar a tua localização. Por favor, tenta novamente mais tarde.", + "error_send_title": "Não foi possível enviar a tua localização", + "error_sharing_live_location": "Ocorreu um erro ao partilhar a tua localização ao vivo", + "error_stopping_live_location": "Ocorreu um erro ao parar a tua localização em direto", + "expand_map": "Expande o mapa", + "failed_generic": "Não foi possível obter a tua localização. Por favor, tenta novamente mais tarde.", + "failed_load_map": "Não é possível carregar o mapa", + "failed_permission": "%(brand)s foi negada a permissão para obter a tua localização. Permite o acesso à localização nas definições do teu browser.", + "failed_timeout": "O tempo esgotou-se ao tentar obter a tua localização. Por favor, tenta novamente mais tarde.", + "failed_unknown": "Erro desconhecido ao procurar a localização. Tenta novamente mais tarde.", + "find_my_location": "Encontra a minha localização", + "live_description": "localização ao vivo de %(displayName)s", + "live_enable_description": "Tem em atenção: esta é uma funcionalidade de laboratório com uma implementação temporária. Isto significa que não poderás apagar o teu histórico de localização e que os utilizadores avançados poderão ver o teu histórico de localização mesmo depois de deixares de partilhar a tua localização em direto com esta sala.", + "live_enable_heading": "Partilha de localização em direto", + "live_location_active": "Estás a partilhar a tua localização ao vivo", + "live_location_enabled": "Localização em direto activada", + "live_location_ended": "A localização em direto terminou", + "live_location_error": "Erro de localização ao vivo", + "live_locations_empty": "Não há locais ao vivo", + "live_share_button": "Partilhar por %(duration)s", + "live_toggle_label": "Ativar a partilha de localização em direto", + "live_until": "Ao vivo até %(expiryTime)s", + "live_update_time": "Atualizado %(humanizedUpdateTime)s", + "loading_live_location": "Carregando localização ao vivo...", + "location_not_available": "Localização não disponível", + "map_feedback": "Feedback do mapa", + "mapbox_logo": "Logótipo da Mapbox", + "reset_bearing": "Reposiciona o rumo para norte", + "share_button": "Partilhar localização", + "share_type_live": "A minha localização ao vivo", + "share_type_own": "A minha localização atual", + "share_type_pin": "Larga um alfinete", + "share_type_prompt": "Que tipo de localização pretendes partilhar?", + "toggle_attribution": "Alterna a atribuição" + }, + "member_list": { + "filter_placeholder": "Filtrar integrantes da sala", + "invite_button_no_perms_tooltip": "Não tens permissão para convidar utilizadores", + "invited_list_heading": "Convidada(o)", + "power_label": "%(userName)s (nível de permissão %(powerLevelNumber)s)" + }, + "member_list_back_action_label": "Membros da sala", + "message_edit_dialog_title": "Edições de mensagens", + "migrating_crypto": "Aguenta firme. Estamos a atualizar o Element para tornar a encriptação mais rápida e mais fiável.", + "mobile_guide": { + "toast_accept": "Utiliza a aplicação", + "toast_description": "%(brand)s é experimental num navegador da Web móvel. Para obteres uma melhor experiência e as funcionalidades mais recentes, utiliza a nossa aplicação nativa gratuita.", + "toast_title": "Utiliza a aplicação para uma melhor experiência" + }, + "name_and_id": "%(name)s (%(userId)s)", + "no_more_results": "Não há mais resultados", + "notif_panel": { + "empty_description": "Não tens notificações visíveis.", + "empty_heading": "Já estás a par de tudo" + }, + "notifications": { + "all_messages": "Todas as mensagens", + "all_messages_description": "Recebe notificações de todas as mensagens", + "class_global": "Global", + "class_other": "Outros", + "default": "Padrão", + "email_pusher_app_display_name": "Notificações de e-mail", + "enable_prompt_toast_description": "Ativar as notificações do ambiente de trabalho", + "enable_prompt_toast_title": "Notificações", + "enable_prompt_toast_title_from_message_send": "Não percas uma resposta", + "error_change_title": "Altera as definições de notificação", + "keyword": "Palavra-chave", + "keyword_new": "Nova palavra-chave", + "level_activity": "Atividade", + "level_highlight": "Destaque", + "level_muted": "Silenciado", + "level_none": "Nenhum", + "level_notification": "Notificação", + "level_unsent": "Não enviado", + "mark_all_read": "Marcar todas como lidas", + "mentions_and_keywords": "@menções e palavras-chave", + "mentions_and_keywords_description": "Recebe notificações apenas com menções e palavras-chave, conforme definido nas tuas definições de ", + "mentions_keywords": "Menções e palavras-chave", + "message_didnt_send": "A mensagem não foi enviada. Clica para obteres informações.", + "mute_description": "Não receberás quaisquer notificações" + }, + "notifier": { + "m.key.verification.request": "%(name)s está a pedir verificação" + }, + "onboarding": { + "apple_trademarks": "App Store® e o logótipo da Apple® são marcas comerciais da Apple Inc.", + "community_messaging_action": "Encontra as tuas pessoas", + "community_messaging_description": "Mantém a propriedade e o controlo da discussão da comunidade.\nAmplia a escala para suportar milhões, com moderação e interoperabilidade poderosas.", + "community_messaging_title": "Propriedade da comunidade", + "complete_these": "Completa-os para tirares o máximo partido de %(brand)s", + "create_room": "Cria um chat de grupo", + "download_app": "Descarrega %(brand)s", + "download_app_action": "Descarregar aplicações", + "download_app_description": "Não percas nada ao levar %(brand)s contigo", + "download_app_store": "Descarregar na App Store", + "download_brand": "Descarrega %(brand)s", + "download_brand_desktop": "Descarrega %(brand)s Área de Trabalho", + "download_f_droid": "Obtém-no no F-Droid", + "download_google_play": "Obtém-no no Google Play", + "enable_notifications": "Ativar notificações", + "enable_notifications_action": "Permitir Notificações", + "enable_notifications_description": "Não percas uma resposta ou uma mensagem importante", + "explore_rooms": "Explora as salas públicas", + "find_community_members": "Encontra e convida os membros da tua comunidade", + "find_coworkers": "Encontra e convida os teus colegas de trabalho", + "find_friends": "Encontra e convida os teus amigos", + "find_friends_action": "Encontra amigos", + "find_friends_description": "É para isso que estás aqui, por isso vamos a isso", + "find_people": "Encontra pessoas", + "free_e2ee_messaging_unlimited_voip": "Com mensagens encriptadas gratuitas de ponta a ponta e chamadas de voz e vídeo ilimitadas, %(brand)s é uma excelente forma de te manteres em contacto.", + "get_stuff_done": "Faz as coisas encontrando os teus colegas de equipa", + "google_trademarks": "Google Play e o logótipo Google Play são marcas comerciais da Google LLC.", + "has_avatar_label": "Ótimo, isso vai ajudar as pessoas a saberem que és tu", + "intro_byline": "Torna-te dono das tuas conversas.", + "intro_welcome": "Bem-vindo(a) a(ao) %(appName)s", + "no_avatar_label": "Adiciona uma fotografia para que as pessoas saibam que és tu.", + "only_n_steps_to_go": { + "one": "Apenas %(count)s passo para seguir", + "other": "Apenas %(count)s passos para seguir" + }, + "personal_messaging_action": "Inicia a tua primeira conversa", + "personal_messaging_title": "Mensagens seguras para amigos e familiares", + "qr_or_app_links": "%(qrCode)s ou %(appLinks)s", + "send_dm": "Envia uma mensagem direta", + "set_up_profile": "Configura o teu perfil", + "set_up_profile_action": "O teu perfil", + "set_up_profile_description": "Certifica-te de que as pessoas sabem que és mesmo tu", + "use_case_community_messaging": "Membros da comunidade online", + "use_case_heading1": "Estás dentro", + "use_case_heading2": "Com quem vais falar mais?", + "use_case_heading3": "Nós ajudamos-te a estabelecer uma ligação.", + "use_case_personal_messaging": "Amigos e família", + "use_case_work_messaging": "Colegas de trabalho e equipas", + "welcome_detail": "Agora, vamos ajudar-te a começar", + "welcome_to_brand": "Bem-vindo ao %(brand)s", + "welcome_user": "Bem-vindo(a) %(name)s", + "work_messaging_action": "Encontra os teus colegas de trabalho", + "work_messaging_title": "Mensagens seguras para o trabalho", + "you_did_it": "Conseguiste!", + "you_made_it": "Conseguiste!" + }, + "pill": { + "permalink_other_room": "Mensagem em %(room)s", + "permalink_this_room": "Mensagem de %(user)s" + }, + "poll": { + "create_poll_action": "Criar sondagem", + "create_poll_title": "Criar sondagem", + "disclosed_notes": "Os eleitores vêem os resultados assim que votam", + "edit_poll_title": "Editar sondagem", + "end_description": "Tens a certeza de que queres acabar com esta sondagem? Isto irá mostrar os resultados finais da sondagem e impedir que as pessoas possam votar.", + "end_message": "A sondagem terminou. Resposta principal: %(topAnswer)s", + "end_message_no_votes": "A sondagem terminou. Não houve votos.", + "end_title": "Fim da sondagem", + "error_ending_description": "Desculpa, a sondagem não terminou. Por favor, tenta novamente.", + "error_ending_title": "Falha ao encerrar a sondagem", + "error_voting_description": "Desculpa, o teu voto não foi registado. Por favor, tenta novamente.", + "error_voting_title": "Voto não registado", + "failed_send_poll_description": "Desculpa, mas a sondagem que tentaste criar não foi publicada.", + "failed_send_poll_title": "Não conseguiste publicar a sondagem", + "notes": "Os resultados só são revelados quando terminas a sondagem", + "options_add_button": "Adiciona opção", + "options_heading": "Cria opções", + "options_label": "Opção %(number)s", + "options_placeholder": "Escreve uma opção", + "topic_heading": "Qual é a pergunta ou o tema da tua sondagem?", + "topic_label": "Pergunta ou tópico", + "topic_placeholder": "Escreve qualquer coisa...", + "total_decryption_errors": "Devido a erros de descodificação, alguns votos podem não ser contados", + "total_n_votes": { + "one": "%(count)s voto lançado. Vota para ver os resultados", + "other": "%(count)s votos lançados. Vota para ver os resultados" + }, + "total_n_votes_voted": { + "one": "Baseado em %(count)s voto", + "other": "Baseado em %(count)s votos" + }, + "total_no_votes": "Nenhum voto lançado", + "total_not_ended": "Os resultados serão visíveis quando a sondagem terminar", + "type_closed": "Sondagem fechada", + "type_heading": "Tipo de sondagem", + "type_open": "Abrir sondagem", + "unable_edit_description": "Desculpa, mas não podes editar uma sondagem depois de os votos terem sido expressos.", + "unable_edit_title": "Não é possível editar a sondagem" + }, + "power_level": { + "admin": "Administrador", + "custom": "Personalizado (%(level)s)", + "custom_level": "Nível personalizado", + "default": "Padrão", + "label": "Nível de potência", + "mod": "Moderador", + "moderator": "Moderador/a", + "restricted": "Restrito" + }, + "presence": { + "away": "Ausente", + "busy": "Ocupado", + "idle": "Ocioso", + "idle_for": "Inativo por%(duration)s", + "offline": "Ausente", + "offline_for": "Ausente por %(duration)s", + "online": "Disponível", + "online_for": "Online por %(duration)s", + "unknown": "Desconhecido", + "unknown_for": "Desconhecido por %(duration)s", + "unreachable": "O servidor do utilizador não pode ser alcançado" + }, + "quick_settings": { + "all_settings": "Todas as definições", + "metaspace_section": "Fixar na barra lateral", + "sidebar_settings": "Mais opções", + "title": "Definições rápidas" + }, + "quit_warning": { + "call_in_progress": "Parece que você está em uma chamada. Tem certeza que quer sair?", + "file_upload_in_progress": "Parece que você está enviando arquivos. Tem certeza que quer sair?" + }, + "redact": { + "confirm_button": "Confirmar Remoção", + "confirm_description": "Tens a certeza de que pretendes remover (apagar) este evento?", + "confirm_description_state": "Tem em atenção que a remoção de alterações de sala como esta pode anular a alteração.", + "error": "Não pode apagar esta mensagem. (%(code)s)", + "ongoing": "A remover...", + "reason_label": "Motivo (opcional)" + }, + "reject_invitation_dialog": { + "confirmation": "Você tem certeza que deseja rejeitar este convite?", + "failed": "Falha ao tentar rejeitar convite", + "title": "Rejeitar convite" + }, + "report_content": { + "description": "Ao reportar esta mensagem, envias o seu \"ID de evento\" único para o administrador do teu servidor. Se as mensagens nesta sala estiverem cifradas, o administrador não poderá ler o texto ou ver quaisquer ficheiros ou imagens.", + "disagree": "Não concordo", + "error_create_room_moderation_bot": "Não é possível criar uma sala com o bot de moderação", + "hide_messages_from_user": "Verifica se pretendes ocultar todas as mensagens actuais e futuras deste utilizador.", + "ignore_user": "Ignora o utilizador", + "illegal_content": "Conteúdo ilegal", + "missing_reason": "Por favor, indica o motivo da tua denúncia.", + "nature": "Escolhe uma natureza e descreve o que torna esta mensagem abusiva.", + "nature_disagreement": "O que este utilizador está a escrever está errado.\nIsto será reportado aos moderadores da sala.", + "nature_illegal": "Este utilizador está a demonstrar um comportamento ilegal, por exemplo, ao fazer \"doxing\" a pessoas ou ao ameaçar com violência.\nEsta situação será comunicada aos moderadores da sala, que podem encaminhar o caso para as autoridades legais.", + "nature_nonstandard_admin": "Esta sala é dedicada a conteúdos ilegais ou tóxicos, ou os moderadores não conseguem moderar conteúdos ilegais ou tóxicos.\nIsto será comunicado aos administradores da %(homeserver)s.", + "nature_nonstandard_admin_encrypted": "Esta sala é dedicada a conteúdos ilegais ou tóxicos ou os moderadores não conseguem moderar conteúdos ilegais ou tóxicos.\nIsto será comunicado aos administradores da %(homeserver)s. Os administradores NÃO poderão ler o conteúdo cifrado desta sala.", + "nature_other": "Qualquer outro motivo. Descreve o problema.\nEste problema será comunicado aos moderadores da sala.", + "nature_spam": "Este utilizador está a enviar spam para a sala através de anúncios, ligações para anúncios ou propaganda.\nIsto será comunicado aos moderadores da sala.", + "nature_toxic": "Este utilizador está a demonstrar um comportamento tóxico, por exemplo, insultando outros utilizadores ou partilhando conteúdos só para adultos numa sala familiar ou violando as regras desta sala.\nEste comportamento será comunicado aos moderadores da sala.", + "other_label": "Outros", + "report_content_to_homeserver": "Denuncia conteúdo ao administrador do teu servidor doméstico", + "report_entire_room": "Denuncia a sala inteira", + "spam_or_propaganda": "Spam ou propaganda", + "toxic_behaviour": "Comportamento tóxico" + }, + "restore_key_backup_dialog": { + "count_of_decryption_failures": "Falha ao descriptografar%(failedCount)s sessões!", + "count_of_successfully_restored_keys": "%(sessionCount)s Chaves restauradas com sucesso", + "enter_key_description": "Acede ao teu histórico de mensagens seguras e configura o envio seguro de mensagens introduzindo a tua chave de segurança.", + "enter_key_title": "Introduzir chave de segurança", + "enter_phrase_description": "Acede ao teu histórico de mensagens seguras e configura o envio de mensagens seguras introduzindo a tua frase de segurança.", + "enter_phrase_title": "Introduzir frase de segurança", + "incorrect_security_phrase_dialog": "Não foi possível desencriptar a cópia de segurança com esta frase de segurança: verifica se introduziste a frase de segurança correcta.", + "incorrect_security_phrase_title": "Frase de segurança incorreta", + "key_backup_warning": "Aviso: só deves configurar a cópia de segurança das chaves a partir de um computador de confiança.", + "key_fetch_in_progress": "A obter chaves do servidor…", + "key_forgotten_text": "Se te esqueceste da tua chave de segurança, podes ", + "key_is_invalid": "Não é uma chave de segurança válida", + "key_is_valid": "Isto parece ser uma chave de segurança válida!", + "keys_restored_title": "Chaves restauradas", + "load_error_content": "Não foi possível carregar o estado da cópia de segurança", + "load_keys_progress": "%(completed)s de %(total)s chaves restauradas", + "no_backup_error": "Nenhuma cópia de segurança encontrada!", + "phrase_forgotten_text": "Se te esqueceste da tua Frase de Segurança, podes utilizar a tua Chave de Segurança ou definir novas opções de recuperação", + "recovery_key_mismatch_description": "A cópia de segurança não pôde ser desencriptada com esta chave de segurança: verifica se introduziste a chave de segurança correcta.", + "recovery_key_mismatch_title": "Incompatibilidade da chave de segurança", + "restore_failed_error": "Não foi possível restaurar a cópia de segurança" + }, + "right_panel": { + "add_integrations": "Adiciona widgets, pontes e bots", + "add_topic": "Adicionar descrição", + "extensions_empty_description": "Seleciona \"%(addIntegrations)s\" para procurar e adicionar extensões a esta sala", + "extensions_empty_title": "Aumenta a produtividade com mais ferramentas, widgets e bots", + "files_button": "Ficheiros", + "pinned_messages": { + "empty_description": "Selecione uma mensagem e escolha \"%(pinAction)s\" para incluir aqui.", + "empty_title": "Fixa mensagens importantes para que possam ser facilmente descobertas", + "header": { + "one": "1 mensagem fixada", + "other": "%(count)s Mensagens fixadas" + }, + "limits": { + "one": "", + "other": "Só podes fixar até %(count)s widgets" + }, + "menu": "Abrir o menu", + "unpin_all": { + "button": "Desafixa todas as mensagens" + } + }, + "pinned_messages_button": "Fixado", + "poll": { + "active_heading": "Sondagens ativas", + "empty_active": "Não há sondagens ativas nesta sala", + "empty_active_load_more": "Não existem sondagens ativas. Carrega mais sondagens para ver as sondagens dos meses anteriores", + "empty_active_load_more_n_days": { + "one": "Não há sondagens ativas para o dia anterior. Carrega mais sondagens para ver as sondagens dos meses anteriores", + "other": "Não existem sondagens ativas para os últimos %(count)s dias. Carrega mais sondagens para veres as sondagens dos meses anteriores" + }, + "empty_past": "Não há sondagens anteriores nesta sala", + "empty_past_load_more": "Não existem sondagens anteriores. Carrega mais sondagens para ver as sondagens dos meses anteriores", + "empty_past_load_more_n_days": { + "one": "Não existem sondagens anteriores para o dia anterior. Carrega mais sondagens para ver as sondagens dos meses anteriores", + "other": "Não existem sondagens anteriores para os últimos %(count)s dias. Carrega mais sondagens para ver as sondagens dos meses anteriores" + }, + "final_result": { + "one": "Resultado final baseado em %(count)s voto", + "other": "Resultado final baseado em %(count)s votos" + }, + "load_more": "Carrega mais sondagens", + "loading": "Carregando sondagens", + "past_heading": "Sondagens anteriores", + "view_in_timeline": "Ver sondagem na linha do tempo", + "view_poll": "Ver sondagem" + }, + "polls_button": "História da sondagem", + "room_summary_card": { + "title": "Informação da sala" + }, + "thread_list": { + "context_menu_label": "Opções de tópico" + }, + "video_room_chat": { + "title": "Conversa" + } + }, + "room": { + "3pid_invite_email_not_found_account": "Este convite foi enviado para %(email)s que não está associado à tua conta", + "3pid_invite_email_not_found_account_room": "Este convite para %(roomName)s foi enviado para %(email)s que não está associado à tua conta", + "3pid_invite_error_description": "Ocorreu um erro (%(errcode)s) ao tentar validar o teu convite. Podes tentar transmitir esta informação à pessoa que te convidou.", + "3pid_invite_error_invite_action": "Tenta entrar na mesma", + "3pid_invite_error_invite_subtitle": "Só te podes juntar com um convite válido.", + "3pid_invite_error_public_subtitle": "Ainda podes aderir aqui.", + "3pid_invite_error_title": "Algo correu mal com o teu convite.", + "3pid_invite_error_title_room": "Algo correu mal com o teu convite para %(roomName)s", + "3pid_invite_no_is_subtitle": "Utiliza um servidor de identidade nas Definições para receber convites diretamente em %(brand)s.", + "banned_by": "Foste banido por %(memberName)s", + "banned_from_room_by": "Foste banido de %(roomName)s por %(memberName)s", + "context_menu": { + "copy_link": "Copiar link da sala", + "favourite": "Favorito", + "forget": "Esquecer a sala", + "low_priority": "Baixa prioridade", + "mark_read": "Marcar como lido", + "mark_unread": "Marcar como não lido", + "notifications_default": "Corresponde à predefinição", + "notifications_mute": "Silenciar sala", + "title": "Opções de sala", + "unfavourite": "Favorito" + }, + "creating_room_text": "Estamos a criar uma sala com %(names)s", + "dm_invite_action": "Começar a conversar", + "dm_invite_subtitle": " quer falar", + "dm_invite_title": "Queres conversar com %(user)s?", + "drop_file_prompt": "Arraste um arquivo aqui para enviar", + "edit_topic": "Editar tópico", + "error_3pid_invite_email_lookup": "Não é possível encontrar o utilizador por e-mail", + "error_cancel_knock_title": "Falha ao cancelar", + "error_join_403": "Precisas de um convite para aceder a esta sala.", + "error_join_404_1": "Tentaste juntar-te usando um ID de sala sem fornecer uma lista de servidores através dos quais te podes juntar. Os IDs de sala são identificadores internos e não podem ser utilizados para aceder a uma sala sem informações adicionais.", + "error_join_404_2": "Se souberes o endereço de uma sala, tenta juntar-te a ela através desse endereço.", + "error_join_404_invite": "A pessoa que te convidou já se foi embora ou o seu servidor está offline.", + "error_join_404_invite_same_hs": "A pessoa que te convidou já se foi embora.", + "error_join_connection": "Houve um erro ao juntares-te.", + "error_join_incompatible_version_1": "Desculpa, o teu servidor doméstico é demasiado antigo para participar aqui.", + "error_join_incompatible_version_2": "Contacta o administrador do teu servidor doméstico.", + "error_join_title": "Não conseguiste aderir", + "error_jump_to_date": "O servidor devolveu %(statusCode)s com o código de erro %(errorCode)s", + "error_jump_to_date_connection": "Ocorreu um erro de rede ao tentares encontrar e saltar para a data indicada. O teu servidor doméstico pode estar em baixo ou houve apenas um problema temporário com a tua ligação à Internet. Tenta novamente. Se o problema persistir, contacta o administrador do teu servidor doméstico.", + "error_jump_to_date_details": "Detalhes do erro", + "error_jump_to_date_not_found": "Não foi possível encontrar um evento com vista para o futuro em %(dateString)s. Tenta escolher uma data anterior.", + "error_jump_to_date_send_logs_prompt": "Envia debug logs para nos ajudar a localizar o problema.", + "error_jump_to_date_title": "Não foi possível encontrar o evento nessa data", + "face_pile_summary": { + "one": "%(count)s uma pessoa que conheces já aderiu", + "other": "%(count)s pessoas que sabes que já aderiram" + }, + "face_pile_tooltip_label": { + "one": "Ver 1 membro", + "other": "Vê todos os membros de %(count)s " + }, + "face_pile_tooltip_shortcut": "Incluindo %(commaSeparatedMembers)s", + "face_pile_tooltip_shortcut_joined": "Incluindo tu, %(commaSeparatedMembers)s", + "failed_reject_invite": "Não foi possível rejeitar o convite", + "forget_room": "Esquece esta sala", + "forget_space": "Esquece este espaço", + "header": { + "n_people_asking_to_join": { + "one": "Pedir para aderir", + "other": "%(count)s pessoas a pedir para aderir" + }, + "room_is_public": "Esta sala é pública" + }, + "header_face_pile_tooltip": "Alternar lista de membros", + "header_untrusted_label": "Não confiável", + "inaccessible": "De momento, esta sala ou espaço não está acessível.", + "inaccessible_name": "%(roomName)s não está acessível neste momento.", + "inaccessible_subtitle_1": "Tenta novamente mais tarde ou pede a um administrador de sala ou espaço para verificar se tens acesso.", + "inaccessible_subtitle_2": "%(errcode)s foi devolvido ao tentares aceder à sala ou ao espaço. Se achas que estás a ver esta mensagem por engano, por favor envia um relatório de erro.", + "intro": { + "dm_caption": "Só vocês os dois estão nesta conversa, a não ser que um de vocês convide alguém para participar.", + "enable_encryption_prompt": "Ativa a encriptação nas definições.", + "encrypted_3pid_dm_pending_join": "Quando todos tiverem aderido, poderás conversar", + "no_avatar_label": "Adiciona uma fotografia para que as pessoas possam identificar facilmente o teu quarto.", + "no_topic": "Adiciona um tópico para ajudar as pessoas a saberem do que se trata.", + "private_unencrypted_warning": "As tuas mensagens privadas são normalmente encriptadas, mas esta sala não o é. Normalmente, isto deve-se à utilização de um dispositivo ou método não suportado, como convites por correio eletrónico.", + "room_invite": "Convida apenas para esta sala", + "send_message_start_dm": "Envia a tua primeira mensagem para convidar para conversar", + "start_of_dm_history": "Este é o início do teu histórico de mensagens directas com .", + "start_of_room": "Este é o início de .", + "topic": "Tópico: %(topic)s", + "topic_edit": "Tópico: %(topic)s (edita)", + "unencrypted_warning": "A encriptação de ponta a ponta não está ativada", + "user_created": "%(displayName)s criou esta sala.", + "you_created": "Tu criaste esta sala." + }, + "invite_email_mismatch_suggestion": "Partilha este e-mail nas Definições para receberes convites diretamente em %(brand)s.", + "invite_reject_ignore": "Rejeitar e ignorar o utilizador", + "invite_sent_to_email": "Este convite foi enviado para %(email)s", + "invite_sent_to_email_room": "Este convite para %(roomName)s foi enviado para %(email)s", + "invite_subtitle": " convidou-o", + "invite_this_room": "Convidar para esta sala", + "invite_title": "Queres juntar-te a %(roomName)s?", + "inviter_unknown": "Desconhecido", + "invites_you_text": " convida-te", + "join_button_account": "Inscrição", + "join_failed_needs_invite": "Para veres %(roomName)s, precisas de um convite", + "join_the_discussion": "Participa no debate", + "join_title": "Junta-te à sala para participares", + "join_title_account": "Junta-te à conversa com uma conta", + "joining": "Entrando...", + "joining_room": "Entrando na sala…", + "joining_space": "Junta-te ao espaço...", + "jump_read_marker": "Ir diretamente para a primeira das mensagens não lidas.", + "jump_to_bottom_button": "Percorre as mensagens mais recentes", + "jump_to_date": "Salta para a data", + "jump_to_date_beginning": "O início da sala", + "jump_to_date_prompt": "Escolhe uma data para onde saltar", + "kick_reason": "Motivo: %(reason)s", + "kicked_by": "Foste removido por %(memberName)s", + "kicked_from_room_by": "Foste retirado de %(roomName)s por %(memberName)s", + "knock_cancel_action": "Cancelar pedido", + "knock_denied_subtitle": "Como te foi negado o acesso, não podes voltar a entrar a não ser que sejas convidado pelo administrador ou moderador do grupo.", + "knock_denied_title": "Foi-te negado o acesso", + "knock_message_field_placeholder": "Mensagem (opcional)", + "knock_prompt": "Pedir para participar?", + "knock_prompt_name": "Pedir para participar%(roomName)s?", + "knock_send_action": "Solicitar acesso", + "knock_sent": "Pedido de adesão enviado", + "knock_sent_subtitle": "O teu pedido de adesão está pendente.", + "knock_subtitle": "Tens de ter acesso a esta sala para veres ou participares na conversa. Podes enviar um pedido de participação abaixo.", + "leave_error_title": "Erro ao sair da sala", + "leave_server_notices_description": "Esta sala é usada para mensagens importantes do Servidor Doméstico, por isso não podes sair dela.", + "leave_server_notices_title": "Não podes sair da sala de avisos do servidor", + "leave_unexpected_error": "Erro inesperado do servidor ao tentares sair da sala", + "link_email_to_receive_3pid_invite": "Associa este e-mail à tua conta nas Definições para receberes convites diretamente em %(brand)s.", + "loading_preview": "A carregar a pré-visualização...", + "no_peek_join_prompt": "%(roomName)s não pode ser pré-visualizado. Queres juntar-te?", + "no_peek_no_name_join_prompt": "Não há pré-visualização, gostarias de te juntar?", + "not_found_subtitle": "Tens a certeza que estás no sítio certo?", + "not_found_title": "Esta sala ou espaço não existe.", + "not_found_title_name": "%(roomName)s não existe.", + "peek_join_prompt": "Estás a visualizar %(roomName)s. Queres juntar-te a ele?", + "read_topic": "Clica para ler o tópico", + "rejecting": "Rejeitando o convite...", + "rejoin_button": "Junta-te novamente", + "search": { + "all_rooms_button": "Pesquisar todas as salas", + "placeholder": "Pesquisar mensagens...", + "summary": { + "one": "1 resultado encontrado para \"\"", + "other": "%(count)s resultados encontrados para \"\"" + }, + "this_room_button": "Pesquisar esta sala" + }, + "status_bar": { + "delete_all": "Eliminar tudo", + "exceeded_resource_limit": "A tua mensagem não foi enviada porque este servidor doméstico excedeu um limite de recursos. Por favor, contacta o teu administrador de serviço para continuares a utilizar o serviço.", + "homeserver_blocked": "A tua mensagem não foi enviada porque este servidor doméstico foi bloqueado pelo seu administrador. Por favor, contacta o teu administrador de serviço para continuares a usar o serviço.", + "monthly_user_limit_reached": "A tua mensagem não foi enviada porque este servidor atingiu o limite mensal de utilizadores activos. Por favor contacta o teu administrador de serviço para continuares a usar o serviço.", + "requires_consent_agreement": "Não podes enviar quaisquer mensagens até reveres e concordares com os nossos termos e condições.", + "retry_all": "Tentar tudo de novo", + "select_messages_to_retry": "Podes selecionar todas as mensagens ou mensagens individuais para repetir ou apagar", + "server_connectivity_lost_description": "Imagens enviadas ficarão armazenadas até que sua conexão seja reestabelecida.", + "server_connectivity_lost_title": "A conexão com o servidor foi perdida. Verifique sua conexão de internet.", + "some_messages_not_sent": "Algumas das tuas mensagens não foram enviadas" + }, + "unknown_status_code_for_timeline_jump": "código de estado desconhecido", + "unread_notifications_predecessor": { + "one": "Tens %(count)s uma notificação não lida numa versão anterior desta sala.", + "other": "Tens %(count)s notificações não lidas numa versão anterior desta sala." + }, + "upgrade_error_description": "Verifica se o teu servidor suporta a versão da sala escolhida e tenta novamente.", + "upgrade_error_title": "Erro ao atualizar o quarto", + "upgrade_warning_bar": "Ao atualizar este quarto, encerra a instância atual do quarto e cria um quarto atualizado com o mesmo nome.", + "upgrade_warning_bar_admins": "Apenas os administradores da sala verão este aviso", + "upgrade_warning_bar_unstable": "Esta sala está executando a versão da sala , que este servidor doméstico marcou como instável .", + "upgrade_warning_bar_upgraded": "Este quarto já foi atualizado.", + "upload": { + "uploading_multiple_file": { + "one": "Enviando o arquivo %(filename)s e %(count)s outros arquivos", + "other": "Enviando o arquivo %(filename)s e %(count)s outros arquivos" + }, + "uploading_single_file": "Enviando o arquivo %(filename)s" + }, + "waiting_for_join_subtitle": "Quando os utilizadores convidados tiverem aderido a %(brand)s, poderás conversar e a sala será encriptada de ponta a ponta", + "waiting_for_join_title": "Aguarda a adesão dos utilizadores %(brand)s" + }, + "room_list": { + "add_room_label": "Adicionar sala", + "add_space_label": "Adiciona espaço", + "breadcrumbs_empty": "Nenhuma sala visitada recentemente", + "breadcrumbs_label": "Salas visitadas recentemente", + "failed_add_tag": "Falha ao adicionar %(tagName)s à sala", + "failed_remove_tag": "Não foi possível remover a marcação %(tagName)s desta sala", + "failed_set_dm_tag": "Falha ao definir a etiqueta de mensagem direta", + "home_menu_label": "Opções de casa", + "join_public_room_label": "Participa na sala pública", + "joining_rooms_status": { + "one": "Atualmente ingressando%(count)s sala", + "other": "Atualmente ingressando%(count)s salas" + }, + "notification_options": "Opções de notificação", + "redacting_messages_status": { + "one": "Atualmente removendo mensagens na %(count)s sala", + "other": "Atualmente removendo mensagens em %(count)s salas" + }, + "show_less": "Mostrar menos", + "show_n_more": { + "one": "Mostrar %(count)s mais", + "other": "Mostrar %(count)s mais" + }, + "show_previews": "Mostra pré-visualizações de mensagens", + "sort_by": "Ordenar por", + "sort_by_activity": "Atividade", + "sort_by_alphabet": "A-Z", + "sort_unread_first": "Mostra primeiro as salas com mensagens não lidas", + "space_menu_label": "%(spaceName)s menu", + "sublist_options": "Lista de opções", + "suggested_rooms_heading": "Salas sugeridas" + }, + "room_settings": { + "access": { + "description_space": "Decide quem pode ver e participar em %(spaceName)s.", + "title": "Acesso" + }, + "advanced": { + "error_upgrade_description": "A atualização da sala não pôde ser concluída", + "error_upgrade_title": "Falha ao atualizar a sala", + "information_section_room": "Informações sobre a sala", + "information_section_space": "Informações sobre o espaço", + "room_id": "ID interno da sala", + "room_predecessor": "Vê as mensagens mais antigas em %(roomName)s.", + "room_upgrade_button": "Atualiza este quarto para a versão de quarto recomendada", + "room_upgrade_warning": "Aviso: a atualização de uma sala não irá migrar automaticamente os membros da sala para a nova versão da sala. Colocaremos um link para a nova sala na versão antiga da sala - os membros da sala terão de clicar nesse link para se juntarem à nova sala.", + "room_version": "Versão da sala:", + "room_version_section": "Versão de sala", + "space_predecessor": "Vê a versão anterior de %(spaceName)s.", + "space_upgrade_button": "Atualiza este espaço para a versão de quarto recomendada", + "unfederated": "Esta sala não é acessível para servidores Matrix remotos", + "upgrade_button": "Atualize esta sala para a versão %(version)s", + "upgrade_dialog_description": "Para atualizar esta sala, é necessário encerrar a instância atual da sala e criar uma nova sala no seu lugar. Para dar aos membros da sala a melhor experiência possível, nós iremos:", + "upgrade_dialog_description_1": "Cria uma nova sala com o mesmo nome, descrição e avatar", + "upgrade_dialog_description_2": "Atualiza todos os nomes locais para apontarem para a nova sala", + "upgrade_dialog_description_3": "Impede os utilizadores de falarem na versão antiga da sala e publica uma mensagem a aconselhar os utilizadores a mudarem-se para a nova sala", + "upgrade_dialog_description_4": "Coloca um link para a sala antiga no início da nova sala para que as pessoas possam ver as mensagens antigas", + "upgrade_dialog_title": "Atualizar a versão da sala", + "upgrade_dwarning_ialog_title_public": "Atualizar sala pública", + "upgrade_warning_dialog_description": "A atualização de uma divisão é uma ação avançada e é normalmente recomendada quando uma divisão está instável devido a erros, funcionalidades em falta ou vulnerabilidades de segurança.", + "upgrade_warning_dialog_explainer": "Tem em atenção que a atualização fará uma nova versão da sala. Todas as mensagens actuais permanecerão nesta sala arquivada.", + "upgrade_warning_dialog_footer": "Actualizarás este quarto de para .", + "upgrade_warning_dialog_invite_label": "Convida automaticamente os membros desta sala para a nova sala", + "upgrade_warning_dialog_report_bug_prompt": "Normalmente, isto só afecta a forma como a sala é processada no servidor. Se estiveres a ter problemas com o teu %(brand)s, por favor reporta um erro.", + "upgrade_warning_dialog_report_bug_prompt_link": "Normalmente, isto apenas afecta a forma como a sala é processada no servidor. Se estiveres a ter problemas com o teu %(brand)s, por favor reporta um bug.", + "upgrade_warning_dialog_title": "Atualizar sala", + "upgrade_warning_dialog_title_private": "Atualiza a sala privada" + }, + "alias_not_specified": "não especificado", + "bridges": { + "description": "Esta sala está a transmitir mensagens para as seguintes plataformas. Aprende mais.", + "empty": "Esta sala não está a transmitir mensagens para nenhuma plataforma. Sabe mais.", + "title": "Pontes" + }, + "delete_avatar_label": "Apagar avatar", + "general": { + "alias_field_has_domain_invalid": "Separador de domínio ausente, por exemplo (:domain .org)", + "alias_field_has_localpart_invalid": "Falta o nome da sala ou o separador, por exemplo, (minha-sala:domain.org)", + "alias_field_matches_invalid": "Este endereço não aponta para esta sala", + "alias_field_placeholder_default": "por exemplo, minha-sala", + "alias_field_required_invalid": "Fornece um endereço", + "alias_field_safe_localpart_invalid": "Alguns caracteres não são permitidos", + "alias_field_taken_invalid": "Este endereço tem um servidor inválido ou já está a ser utilizado", + "alias_field_taken_invalid_domain": "Este endereço já está a ser utilizado", + "alias_field_taken_valid": "Este endereço está disponível para utilização", + "alias_heading": "Endereço da sala", + "aliases_items_label": "Outros endereços publicados:", + "aliases_no_items_label": "Ainda não existem outros endereços publicados, adiciona um abaixo", + "aliases_section": "Endereços de salas", + "avatar_field_label": "Avatar da sala", + "canonical_alias_field_label": "Endereço principal", + "default_url_previews_off": "As pré-visualizações de URL estão desactivadas por predefinição para os participantes nesta sala.", + "default_url_previews_on": "As pré-visualizações de URL estão activadas por predefinição para os participantes nesta sala.", + "description_space": "Edita as definições relativas ao teu espaço.", + "error_creating_alias_description": "Ocorreu um erro ao criares esse endereço. Pode não ser permitido pelo servidor ou ocorreu uma falha temporária.", + "error_creating_alias_title": "Erro ao criar o endereço", + "error_deleting_alias_description": "Ocorreu um erro ao removeres esse endereço. Pode já não existir ou ocorreu um erro temporário.", + "error_deleting_alias_description_forbidden": "Não tens autorização para apagar o endereço.", + "error_deleting_alias_title": "Erro ao remover o endereço", + "error_save_space_settings": "Não conseguiste guardar as definições de espaço.", + "error_updating_alias_description": "Ocorreu um erro ao atualizar os endereços alternativos da sala. Pode não ser permitido pelo servidor ou ocorreu uma falha temporária.", + "error_updating_canonical_alias_description": "Ocorreu um erro ao atualizar o endereço principal da sala. Pode não ser permitido pelo servidor ou ocorreu uma falha temporária.", + "error_updating_canonical_alias_title": "Erro ao atualizar o endereço principal", + "leave_space": "Deixe espaço", + "local_alias_field_label": "Endereço local", + "local_aliases_explainer_room": "Define endereços para esta sala para que os utilizadores possam encontrar esta sala através do teu servidor doméstico (%(localDomain)s)", + "local_aliases_explainer_space": "Define endereços para este espaço para que os utilizadores possam encontrar este espaço através do teu servidor doméstico (%(localDomain)s)", + "local_aliases_section": "Endereços locais", + "name_field_label": "Nome da sala", + "new_alias_placeholder": "Novo endereço publicado (por exemplo, #alias:server)", + "no_aliases_room": "Esta sala não tem endereços locais", + "no_aliases_space": "Este espaço não tem endereços locais", + "other_section": "Outros", + "publish_toggle": "Publicar esta sala ao público no diretório de salas de %(domain)s's?", + "published_aliases_description": "Para publicares um endereço, este tem de ser primeiro definido como um endereço local.", + "published_aliases_explainer_room": "Os endereços publicados podem ser usados por qualquer pessoa em qualquer servidor para entrar na tua sala.", + "published_aliases_explainer_space": "Os endereços publicados podem ser usados por qualquer pessoa em qualquer servidor para se juntar ao teu espaço.", + "published_aliases_section": "Endereços publicados", + "save": "Salvar Alterações", + "topic_field_label": "Tópico da sala", + "url_preview_encryption_warning": "Em salas encriptadas, como esta, as pré-visualizações de URL são desactivadas por predefinição para garantir que o teu servidor doméstico (onde as pré-visualizações são geradas) não pode recolher informações sobre as ligações que vês nesta sala.", + "url_preview_explainer": "Quando alguém coloca um URL na sua mensagem, pode ser mostrada uma pré-visualização do URL para dar mais informações sobre essa ligação, como o título, a descrição e uma imagem do sítio Web.", + "url_previews_section": "Pré-visualização de links", + "user_url_previews_default_off": "Você desabilitou pré-visualizações de links por padrão.", + "user_url_previews_default_on": "Você habilitou pré-visualizações de links por padrão." + }, + "notifications": { + "browse_button": "Navegar", + "custom_sound_prompt": "Define um novo som personalizado", + "notification_sound": "Som de notificação", + "settings_link": "Recebe notificações conforme definido nas tuas definições de ", + "sounds_section": "Sons", + "upload_sound_label": "Carrega um som personalizado", + "uploaded_sound": "Som carregado" + }, + "people": { + "knock_empty": "Nenhum pedido", + "knock_section": "Pedir para aderir", + "see_less": "Ver menos", + "see_more": "Ver mais" + }, + "permissions": { + "add_privileged_user_description": "Concede mais privilégios a um ou vários utilizadores desta sala", + "add_privileged_user_filter_placeholder": "Procura utilizadores nesta sala...", + "add_privileged_user_heading": "Adiciona utilizadores privilegiados", + "ban": "Banir utilizadores", + "ban_reason": "Razão", + "banned_by": "Banido por %(displayName)s", + "banned_users_section": "Usuárias/os banidas/os", + "error_changing_pl_description": "Ocorreu um erro ao alterar o nível de potência do utilizador. Certifica-te de que tens permissões suficientes e tenta novamente.", + "error_changing_pl_reqs_description": "Ocorreu um erro ao alterares os requisitos de nível de potência da sala. Certifica-te de que tens permissões suficientes e tenta novamente.", + "error_changing_pl_reqs_title": "Erro ao alterar o requisito do nível de potência", + "error_changing_pl_title": "Erro ao alterar o nível de potência", + "error_unbanning": "Não foi possível desfazer o banimento", + "events_default": "Envia mensagens", + "invite": "Convidar utilizadores", + "kick": "Remover utilizadores", + "m.call": "Inicia chamadas %(brand)s", + "m.call.member": "Participa em chamadas %(brand)s", + "m.reaction": "Envia reações", + "m.room.avatar": "Altera o avatar da sala", + "m.room.avatar_space": "Altera o avatar espacial", + "m.room.canonical_alias": "Altera o endereço principal para a sala", + "m.room.canonical_alias_space": "Altera o endereço principal do espaço", + "m.room.encryption": "Ativar a encriptação da sala", + "m.room.history_visibility": "Altera a visibilidade do histórico", + "m.room.name": "Altera o nome da sala", + "m.room.name_space": "Altera o nome do espaço", + "m.room.pinned_events": "Gerir eventos fixados", + "m.room.power_levels": "Altera as permissões", + "m.room.redaction": "Remove mensagens enviadas por mim", + "m.room.server_acl": "Altera as ACLs do servidor", + "m.room.tombstone": "Atualiza a sala", + "m.room.topic": "Altera o tópico", + "m.room.topic_space": "Altera a descrição", + "m.space.child": "Gere as salas neste espaço", + "m.widget": "Modifica os widgets", + "muted_users_section": "Utilizadores silenciados", + "no_privileged_users": "Nenhum/a usuário/a possui privilégios específicos nesta sala", + "notifications.room": "Notifica todos", + "permissions_section": "Permissões", + "permissions_section_description_room": "Selecione as funções necessárias para alterar várias partes da sala", + "permissions_section_description_space": "Selecciona as funções necessárias para alterar as várias partes do espaço", + "privileged_users_section": "Usuárias/os privilegiadas/os", + "redact": "Remove mensagens enviadas por outros", + "send_event_type": "Envia eventos %(eventType)s ", + "state_default": "Alterar definições", + "title": "Funções e permissões", + "users_default": "Papel predefinido" + }, + "security": { + "enable_encryption_confirm_description": "Uma vez activada, a encriptação de uma sala não pode ser desactivada. As mensagens enviadas numa sala encriptada não podem ser vistas pelo servidor, apenas pelos participantes da sala. A ativação da encriptação pode impedir que muitos bots e pontes funcionem corretamente. Sabe mais sobre a encriptação.", + "enable_encryption_confirm_title": "Ativar a encriptação?", + "enable_encryption_public_room_confirm_description_1": "Não é recomendável adicionar encriptação a salas públicas. Qualquer pessoa pode encontrar e entrar em salas públicas, pelo que qualquer pessoa pode ler as mensagens nelas contidas. Não obterás nenhum dos benefícios da encriptação e não poderás desactivá-la mais tarde. A encriptação de mensagens numa sala pública tornará a receção e o envio de mensagens mais lento.", + "enable_encryption_public_room_confirm_description_2": "Para evitar estes problemas, cria uma nova sala encriptada para a conversa que pretendes ter.", + "enable_encryption_public_room_confirm_title": "Tens a certeza de que queres adicionar encriptação a esta sala pública?", + "encrypted_room_public_confirm_description_1": "Não é recomendável tornar públicas as salas encriptadas. Isso significa que qualquer pessoa pode encontrar e entrar na sala, pelo que qualquer pessoa pode ler as mensagens. Não terás nenhum dos benefícios da encriptação. Encriptar mensagens numa sala pública tornará a receção e o envio de mensagens mais lento.", + "encrypted_room_public_confirm_description_2": "Para evitar estes problemas, cria uma nova sala pública para a conversa que pretendes ter.", + "encrypted_room_public_confirm_title": "Tens a certeza de que queres tornar pública esta sala encriptada?", + "encryption_forced": "O teu servidor requer que a encriptação seja desactivada.", + "encryption_permanent": "Uma vez activada, a encriptação não pode ser desactivada.", + "error_join_rule_change_title": "Falha ao atualizar as regras de adesão", + "error_join_rule_change_unknown": "Falha desconhecida", + "guest_access_warning": "As pessoas com clientes apoiados poderão juntar-se à sala sem terem uma conta registada.", + "history_visibility_invited": "Apenas membros (desde que tenham sido convidados)", + "history_visibility_joined": "Apenas membros (desde que aderiram)", + "history_visibility_legend": "Quem pode ler o histórico da sala?", + "history_visibility_shared": "Apenas membros (desde o momento em que seleccionas esta opção)", + "history_visibility_warning": "As alterações a quem pode ler o histórico só se aplicam a mensagens futuras nesta sala. A visibilidade do histórico existente permanecerá inalterada.", + "history_visibility_world_readable": "Qualquer pessoa", + "join_rule_description": "Decide quem pode aderir a %(roomName)s.", + "join_rule_invite": "Privado (só por convite)", + "join_rule_invite_description": "Apenas pessoas convidadas podem participar.", + "join_rule_knock": "Pede para aderir", + "join_rule_knock_description": "As pessoas só podem aderir se o acesso for concedido.", + "join_rule_public_description": "Qualquer pessoa pode encontrar e aderir.", + "join_rule_restricted": "Membros do espaço", + "join_rule_restricted_description": "Qualquer pessoa num espaço pode encontrar e aderir. Edita quais os espaços que podem aceder aqui.", + "join_rule_restricted_description_active_space": "Qualquer pessoa em pode encontrar e aderir. Também podes selecionar outros espaços.", + "join_rule_restricted_description_prompt": "Qualquer pessoa num espaço pode encontrar e aderir. Podes selecionar vários espaços.", + "join_rule_restricted_description_spaces": "Espaços com acesso", + "join_rule_restricted_dialog_description": "Decide quais os espaços que podem aceder a esta sala. Se um espaço for selecionado, os seus membros podem encontrar e juntar-se a .", + "join_rule_restricted_dialog_empty_warning": "Estás a remover todos os espaços. O acesso será por defeito apenas para convidados", + "join_rule_restricted_dialog_filter_placeholder": "Procura espaços", + "join_rule_restricted_dialog_heading_known": "Outros espaços que conheces", + "join_rule_restricted_dialog_heading_other": "Outros espaços ou salas que talvez não conheças", + "join_rule_restricted_dialog_heading_room": "Espaços que conheces e que contêm esta sala", + "join_rule_restricted_dialog_heading_space": "Espaços que conheces que contêm este espaço", + "join_rule_restricted_dialog_heading_unknown": "É provável que outros administradores de salas façam parte delas.", + "join_rule_restricted_dialog_title": "Selecionar espaços", + "join_rule_restricted_n_more": { + "one": "e %(count)s mais", + "other": "e %(count)s mais" + }, + "join_rule_restricted_summary": { + "one": "Atualmente, um espaço tem acesso", + "other": "Atualmente,%(count)s espaços têm acesso" + }, + "join_rule_restricted_upgrade_description": "Esta atualização permitirá aos membros de espaços seleccionados aceder a esta sala sem convite.", + "join_rule_restricted_upgrade_warning": "Esta sala está em alguns espaços dos quais não és administrador. Nesses espaços, a sala antiga continuará a ser mostrada, mas as pessoas serão convidadas a juntar-se à nova.", + "join_rule_upgrade_awaiting_room": "Carregando nova sala", + "join_rule_upgrade_required": "Atualização necessária", + "join_rule_upgrade_sending_invites": { + "one": "Enviando convite...", + "other": "Enviando convites... (%(progress)sfora de%(count)s)" + }, + "join_rule_upgrade_updating_spaces": { + "one": "Atualizando espaço...", + "other": "Atualizando espaços... (%(progress)sfora de%(count)s)" + }, + "join_rule_upgrade_upgrading_room": "Atualização da sala", + "public_without_alias_warning": "Para estabelecer uma ligação a esta sala, adiciona um endereço.", + "publish_room": "Torna esta sala visível no diretório público de salas.", + "publish_space": "Torna este espaço visível no diretório de salas públicas.", + "strict_encryption": "Nunca envia mensagens encriptadas para sessões não verificadas nesta sala a partir desta sessão", + "title": "Segurança e privacidade" + }, + "title": "Configurações da sala -%(roomName)s", + "upload_avatar_label": "Enviar icone de perfil de usuário", + "visibility": { + "alias_section": "Endereço", + "error_failed_save": "Falha ao atualizar a visibilidade deste espaço", + "error_update_guest_access": "Falha ao atualizar o acesso de convidado deste espaço", + "error_update_history_visibility": "Falha ao atualizar a visibilidade do histórico deste espaço", + "guest_access_explainer": "Os convidados podem juntar-se a um espaço sem terem uma conta.", + "guest_access_explainer_public_space": "Isto pode ser útil para espaços públicos.", + "guest_access_label": "Ativar o acesso de convidados", + "history_visibility_anyone_space": "Espaço de pré-visualização", + "history_visibility_anyone_space_description": "Permite que as pessoas visualizem o teu espaço antes de aderirem.", + "history_visibility_anyone_space_recommendation": "Recomendado para espaços públicos.", + "title": "Visibilidade" + }, + "voip": { + "call_type_section": "Tipo de chamada", + "enable_element_call_caption": "%(brand)s é encriptado de ponta a ponta, mas está atualmente limitado a um pequeno número de utilizadores.", + "enable_element_call_label": "Ativa %(brand)s como uma opção de chamada adicional nesta sala", + "enable_element_call_no_permissions_tooltip": "Não tens permissões suficientes para alterar isto." + } + }, + "room_summary_card_back_action_label": "Informações da sala", + "scalar": { + "error_create": "Não foi possível criar o widget.", + "error_membership": "Não se encontra nesta sala.", + "error_missing_room_id": "Falta ID de Sala.", + "error_missing_room_id_request": "Faltou o id da sala na requisição", + "error_missing_user_id_request": "Faltou o id de usuário na requisição", + "error_permission": "Não tem permissão para fazer isso nesta sala.", + "error_power_level_invalid": "O nível de permissões tem que ser um número inteiro e positivo.", + "error_room_not_visible": "A sala %(roomId)s não está visível", + "error_room_unknown": "Esta sala não é reconhecida.", + "error_send_request": "Não foi possível mandar requisição.", + "failed_read_event": "Falha ao ler eventos", + "failed_send_event": "Falha no envio do evento" + }, + "server_offline": { + "description": "O teu servidor não está a responder a alguns dos teus pedidos. Abaixo estão algumas das razões mais prováveis.", + "description_1": "O servidor (%(serverName)s) demorou muito tempo a responder.", + "description_2": "A tua firewall ou antivírus está a bloquear o pedido.", + "description_3": "Uma extensão do browser está a impedir o pedido.", + "description_4": "O servidor está offline.", + "description_5": "O servidor recusou o teu pedido.", + "description_6": "A tua área está a ter dificuldades em ligar-se à Internet.", + "description_7": "Ocorreu um erro de ligação ao tentar contactar o servidor.", + "description_8": "O servidor não está configurado para indicar qual é o problema (CORS).", + "empty_timeline": "Já estás a par de tudo.", + "recent_changes_heading": "Alterações recentes que ainda não foram recebidas", + "title": "O servidor não está a responder" + }, + "seshat": { + "error_initialising": "A inicialização da pesquisa de mensagens falhou, consulta as tuas definições para mais informações", + "reset_button": "Reinicia o armazenamento de eventos", + "reset_description": "O mais provável é que não queiras repor o teu armazenamento de índices de eventos", + "reset_explainer": "Se o fizeres, tem em atenção que nenhuma das tuas mensagens será eliminada, mas a experiência de pesquisa poderá ser prejudicada durante alguns momentos enquanto o índice é recriado", + "reset_title": "Reiniciar o armazenamento de eventos?", + "warning_kind_files": "Esta versão de %(brand)s não suporta a visualização de alguns ficheiros encriptados", + "warning_kind_files_app": "Utiliza a aplicação Desktop para ver todos os ficheiros encriptados", + "warning_kind_search": "Esta versão de %(brand)s não suporta a pesquisa de mensagens encriptadas", + "warning_kind_search_app": "Utiliza a aplicação Desktop para pesquisar mensagens encriptadas" + }, + "setting": { + "help_about": { + "access_token_detail": "O teu token de acesso dá acesso total à tua conta. Não o partilhes com ninguém.", + "brand_version": "versão do %(brand)s:", + "clear_cache_reload": "Limpa a cache e volta a carregar", + "crypto_version": "Versão criptográfica:", + "dialog_title": "Definições: Ajuda e Acerca", + "help_link": "Para obter ajuda sobre como utilizar %(brand)s, clica em aqui.", + "homeserver": "O servidor doméstico é %(homeserverUrl)s", + "identity_server": "O servidor de identidade é %(identityServerUrl)s", + "title": "Ajuda e sobre", + "versions": "Versões" + } + }, + "settings": { + "account": { + "dialog_title": "Configurações: Conta", + "title": "Conta" + }, + "all_rooms_home": "Mostrar todas as salas na Página Inicial", + "all_rooms_home_description": "Todas as salas em que te encontras aparecerão em Casa.", + "always_show_message_timestamps": "Sempre mostrar as datas das mensagens", + "appearance": { + "bundled_emoji_font": "Utiliza o tipo de letra de emoji incluído", + "compact_layout": "Mostrar texto e mensagens compactas", + "compact_layout_description": "O layout moderno deve ser selecionado para usar esse recurso.", + "custom_font": "Utiliza um tipo de letra do sistema", + "custom_font_description": "Define o nome de um tipo de letra instalado no teu sistema e o %(brand)s tentará utilizá-lo.", + "custom_font_name": "Nome do tipo de letra do sistema", + "custom_font_size": "Utiliza tamanho personalizado", + "custom_theme_add": "Adicionar tema personalizado", + "custom_theme_downloading": "A transferir tema personalizado...", + "custom_theme_error_downloading": "Erro ao descarregar informações do tema.", + "custom_theme_help": "Introduz o URL de um tema personalizado que pretendes aplicar.", + "custom_theme_invalid": "Esquema de tema inválido.", + "dialog_title": "Configurações: Aparência", + "font_size": "Tamanho de letra", + "font_size_default": "%(fontSize)s (padrão)", + "high_contrast": "Alto contraste", + "image_size_default": "Padrão", + "image_size_large": "Grande", + "layout_bubbles": "Bolhas de mensagem", + "layout_irc": "IRC (Experimental)", + "match_system_theme": "Corresponde ao tema do sistema", + "timeline_image_size": "Tamanho da imagem na cronologia" + }, + "automatic_language_detection_syntax_highlight": "Ativar deteção automática da linguagem para realce da sintaxe", + "autoplay_gifs": "GIFs de reprodução automática", + "autoplay_videos": "Vídeos de reprodução automática", + "big_emoji": "Permitir o emoji grande no chat", + "code_block_expand_default": "Expandir blocos de código por defeito", + "code_block_line_numbers": "Mostrar números de linha em blocos de código", + "disable_historical_profile": "Mostrar a imagem e o nome atuais do perfil dos utilizadores no histórico de mensagens", + "discovery": { + "title": "Como te encontrar" + }, + "emoji_autocomplete": "Permitir sugestões de Emoji durante a escrita", + "enable_markdown": "Ativar Markdown", + "enable_markdown_description": "Inicia as mensagens com /plain para enviar sem marcação.", + "general": { + "account_management_section": "Gestão de conta", + "account_section": "Conta", + "add_email_dialog_title": "Adicione adresso de e-mail", + "add_email_failed_verification": "Não foi possível verificar o endereço de email: verifique se você realmente clicou no link que está no seu email", + "add_email_instructions": "Enviámos-lhe um email para confirmar o seu endereço. Por favor siga as instruções no email e depois clique no botão abaixo.", + "add_msisdn_confirm_body": "Pressione o botão abaixo para confirmar a adição este número de telefone.", + "add_msisdn_confirm_button": "Confirme que quer adicionar o número de telefone", + "add_msisdn_confirm_sso_button": "Confirme que quer adicionar este número de telefone usando Single Sign On para provar a sua identidade.", + "add_msisdn_dialog_title": "Adicione número de telefone", + "add_msisdn_instructions": "Foi enviada uma mensagem de texto para +%(msisdn)s. Introduz o código de verificação que contém.", + "add_msisdn_misconfigured": "A junção / vinculo com o fluxo MSISDN está mal configurado", + "allow_spellcheck": "Permitir verificação ortográfica", + "application_language": "Língua de aplicação", + "application_language_reload_hint": "O aplicativo será recarregado depois de selecionar outro idioma", + "avatar_remove_progress": "Removendo a imagem...", + "avatar_save_progress": "A carregar imagem...", + "avatar_upload_error_text": "O formato de arquivo não é suportado ou a imagem é maior que %(size)s.", + "avatar_upload_error_text_generic": "O formato de ficheiro poderá não ser suportado.", + "avatar_upload_error_title": "Não foi possível carregar a imagem do avatar", + "confirm_adding_email_body": "Pressione o botão abaixo para confirmar se quer adicionar este endereço de email.", + "confirm_adding_email_title": "Confirmar adição de email", + "deactivate_confirm_body": "Tens a certeza de que queres desativar a tua conta? Isto é irreversível.", + "deactivate_confirm_body_sso": "Confirma a desativação da tua conta utilizando o início de sessão único para provar a tua identidade.", + "deactivate_confirm_content": "Confirma que pretendes desativar a tua conta. Se prosseguires:", + "deactivate_confirm_content_1": "Não poderás reativar a tua conta", + "deactivate_confirm_content_2": "Já não poderás iniciar sessão", + "deactivate_confirm_content_3": "Ninguém poderá reutilizar o seu nome de utilizador (MXID), incluindo o próprio: este nome de utilizador permanecerá indisponível", + "deactivate_confirm_content_4": "Abandonarás todas as salas e mensagens diretas em que te encontras", + "deactivate_confirm_content_5": "Serás removido do servidor de identidade: os teus amigos deixarão de poder encontrar-te com o teu e-mail ou número de telefone", + "deactivate_confirm_content_6": "As tuas mensagens antigas continuarão a ser visíveis para as pessoas que as receberam, tal como os e-mails que enviaste no passado. Queres ocultar as tuas mensagens enviadas das pessoas que se juntarem às salas no futuro?", + "deactivate_confirm_continue": "Confirma a desativação da conta", + "deactivate_confirm_erase_label": "Esconde as minhas mensagens dos novos aderentes", + "deactivate_section": "Desativar conta", + "deactivate_warning": "A desativação da tua conta é uma ação permanente - tem cuidado!", + "discovery_email_empty": "As opções de descoberta vão aparecer assim que adicione um e-mail acima.", + "discovery_email_verification_instructions": "Verifica o link na tua caixa de entrada", + "discovery_msisdn_empty": "As opções de descoberta aparecerão quando tiveres adicionado um número de telefone acima.", + "discovery_needs_terms": "Concorda com os Termos de Serviço do servidor de identidade (%(serverName)s) para que possas ser descoberto através do teu endereço de e-mail ou número de telefone.", + "discovery_needs_terms_title": "Deixa que as pessoas te encontrem", + "display_name": "Nome de exibição", + "display_name_error": "Não é possível definir o nome para exibição", + "email_address_in_use": "Este endereço de email já está sendo usado", + "email_address_label": "Endereço de e-mail", + "email_not_verified": "O teu endereço de e-mail ainda não foi verificado", + "email_verification_instructions": "Clica no link do e-mail que recebeste para verificar e, de seguida, clica novamente em continuar.", + "emails_heading": "Endereços de e-mail", + "error_add_email": "Não foi possível adicionar endereço de email", + "error_deactivate_communication": "Houve um problema de comunicação com o servidor. Por favor, tenta novamente.", + "error_deactivate_invalid_auth": "O servidor não devolveu informações de autenticação válidas.", + "error_deactivate_no_auth": "O servidor não exigiu qualquer autenticação", + "error_email_verification": "Não foi possível verificar o endereço de email.", + "error_invalid_email": "Endereço de email inválido", + "error_invalid_email_detail": "Este não aparenta ser um endereço de email válido", + "error_msisdn_verification": "Não foi possível verificar o número de telefone.", + "error_password_change_403": "Falha ao alterar a palavra-passe. A sua palavra-passe está correta?", + "error_password_change_http": "%(errorMessage)s (Estado HTTP %(httpStatus)s)", + "error_password_change_title": "Erro ao alterar a palavra-passe", + "error_password_change_unknown": "Erro de alteração de senha desconhecido (%(stringifiedError)s)", + "error_remove_3pid": "Não foi possível remover informação de contato", + "error_revoke_email_discovery": "Não é possível revogar a partilha do endereço de e-mail", + "error_revoke_msisdn_discovery": "Não é possível revogar a partilha do número de telefone", + "error_share_email_discovery": "Não é possível partilhar o endereço de e-mail", + "error_share_msisdn_discovery": "Não é possível partilhar o número de telefone", + "identity_server_no_token": "Nenhum token de identidade de acesso encontrado", + "identity_server_not_set": "Servidor de identidade não definido", + "language_section": "Idioma e região", + "msisdn_in_use": "Este número de telefone já está sendo usado", + "msisdn_label": "Número de Telefone", + "msisdn_verification_field_label": "Código de verificação", + "msisdn_verification_instructions": "Introduz o código de verificação enviado por mensagem de texto.", + "msisdns_heading": "Números de telefone", + "oidc_manage_button": "Gerir conta", + "password_change_section": "Define uma nova palavra-passe para a conta...", + "password_change_success": "A tua palavra-passe foi alterada com sucesso.", + "personal_info": "Informação pessoal", + "profile_subtitle": "É assim que você aparece para outras pessoas no aplicativo.", + "profile_subtitle_oidc": "A tua conta é gerida separadamente por um fornecedor de identidade, pelo que algumas das tuas informações pessoais não podem ser alteradas aqui.", + "remove_email_prompt": "Remove %(email)s?", + "remove_msisdn_prompt": "Remove %(phone)s?", + "spell_check_locale_placeholder": "Escolhe um local", + "unable_to_load_emails": "Não é possível carregar endereços de e-mail", + "unable_to_load_msisdns": "Não é possível carregar números de telefone", + "username": "Nome de utilizador" + }, + "image_thumbnails": "Mostrar pré-visualizações/miniaturas de imagens", + "inline_url_previews_default": "Ativar pré-visualizações de URL embutidas por predefinição", + "inline_url_previews_room": "Ativar pré-visualizações de URL por defeito para os participantes nesta sala", + "inline_url_previews_room_account": "Ativar pré-visualizações URL para esta sala (só te afeta a ti)", + "insert_trailing_colon_mentions": "Insere dois pontos após as menções do utilizador no início de uma mensagem", + "jump_to_bottom_on_send": "Salta para o fundo da linha de tempo quando enviar uma mensagem", + "key_backup": { + "backup_in_progress": "Está a ser feita uma cópia de segurança das tuas chaves (a primeira cópia de segurança pode demorar alguns minutos).", + "backup_starting": "Iniciar cópia de segurança...", + "backup_success": "Sucesso!", + "cannot_create_backup": "Não é possível criar uma cópia de segurança da chave", + "create_title": "Cria uma cópia de segurança da chave", + "setup_secure_backup": { + "backup_setup_success_description": "As tuas chaves estão agora a ser copiadas a partir deste dispositivo.", + "backup_setup_success_title": "Backup seguro bem-sucedido", + "cancel_warning": "Se cancelares agora, podes perder mensagens e dados encriptados se perderes o acesso aos teus logins.", + "confirm_security_phrase": "Confirma a tua frase de segurança", + "description": "Protege-te contra a perda de acesso a mensagens e dados encriptados fazendo uma cópia de segurança das chaves de encriptação no teu servidor.", + "download_or_copy": "%(downloadButton)s ou %(copyButton)s", + "enter_phrase_description": "Introduz uma frase de segurança que só tu conheças, pois é utilizada para proteger os teus dados. Para estares seguro, não deves reutilizar a palavra-passe da tua conta.", + "enter_phrase_title": "Introduzir uma frase de segurança", + "enter_phrase_to_confirm": "Introduz a tua frase de segurança uma segunda vez para a confirmar.", + "generate_security_key_description": "Iremos gerar uma chave de segurança para guardares num local seguro, como um gestor de palavras-passe ou um cofre.", + "generate_security_key_title": "Gera uma chave de segurança", + "pass_phrase_match_failed": "Isso não combina.", + "pass_phrase_match_success": "Isso combina!", + "phrase_strong_enough": "Ótimo! Esta frase de segurança parece suficientemente forte.", + "secret_storage_query_failure": "Não é possível consultar o estado do armazenamento secreto", + "security_key_safety_reminder": "Guarda a tua chave de segurança num local seguro, como um gestor de palavras-passe ou um cofre, uma vez que é utilizada para proteger os teus dados encriptados.", + "set_phrase_again": "Volta atrás para o definir novamente.", + "settings_reminder": "Também podes configurar a Cópia de segurança segura e gerir as tuas chaves nas Definições.", + "title_confirm_phrase": "Confirma a frase de segurança", + "title_save_key": "Guarda a tua chave de segurança", + "title_set_phrase": "Define uma frase de segurança", + "unable_to_setup": "Não é possível configurar o armazenamento secreto", + "use_different_passphrase": "Utiliza uma frase-chave diferente?", + "use_phrase_only_you_know": "Utiliza uma frase secreta que só tu sabes e, opcionalmente, guarda uma chave de segurança para utilizar como cópia de segurança." + } + }, + "key_export_import": { + "confirm_passphrase": "Confirmar frase-passe", + "enter_passphrase": "Introduza a frase-passe", + "export_description_1": "Este processo permite que você exporte as chaves para mensagens que você recebeu em salas criptografadas para um arquivo local. Você poderá então importar o arquivo para outro cliente Matrix no futuro, de modo que este cliente também poderá descriptografar suas mensagens.", + "export_description_2": "O ficheiro exportado permitirá a qualquer pessoa que o possa ler desencriptar quaisquer mensagens encriptadas que possas ver, por isso deves ter o cuidado de o manter seguro. Para isso, deves introduzir uma frase-chave única abaixo, que só será utilizada para encriptar os dados exportados. Só poderás importar os dados se utilizares a mesma frase-chave.", + "export_title": "Exportar chaves de sala", + "file_to_import": "Arquivo para importar", + "import_description_1": "Este processo faz com que você possa importar as chaves de criptografia que tinha previamente exportado de outro cliente Matrix. Você poderá então descriptografar todas as mensagens que o outro cliente pôde criptografar.", + "import_description_2": "O ficheiro de exportação será protegido com uma frase-passe. Deve introduzir a frase-passe aqui, para desencriptar o ficheiro.", + "import_title": "Importar chaves de sala", + "phrase_cannot_be_empty": "A frase-passe não pode estar vazia", + "phrase_must_match": "As frases-passe devem coincidir", + "phrase_strong_enough": "Ótimo! Esta frase-passe parece suficientemente forte" + }, + "keyboard": { + "dialog_title": "Configurações: Teclado", + "title": "Teclado" + }, + "labs": { + "dialog_title": "Configurações: Laboratórios" + }, + "labs_mjolnir": { + "dialog_title": "Configurações: Utilizadores ignorados" + }, + "notifications": { + "default_setting_description": "Esta definição será aplicada por defeito a todas as tuas salas.", + "default_setting_section": "Quero ser notificado de (Predefinição)", + "desktop_notification_message_preview": "Mostra a pré-visualização da mensagem na notificação do ambiente de trabalho", + "dialog_title": "Definições: Notificações", + "email_description": "Recebe um resumo por e-mail das notificações perdidas", + "email_section": "Resumo do e-mail", + "email_select": "Selecciona os e-mails para os quais pretendes enviar resumos. Gere os teus e-mails em .", + "enable_audible_notifications_session": "Ativar as notificações sonoras para esta sessão", + "enable_desktop_notifications_session": "Ativar as notificações de ambiente de trabalho para esta sessão", + "enable_email_notifications": "Ativar notificações de e-mail para %(email)s", + "enable_notifications_account": "Ativar as notificações para esta conta", + "enable_notifications_account_detail": "Desliga para desativar as notificações em todos os teus dispositivos e sessões", + "enable_notifications_device": "Ativa as notificações para este dispositivo", + "error_loading": "Ocorreu um erro ao carregar as tuas definições de notificação.", + "error_permissions_denied": "%(brand)s não tem permissões para enviar notificações a você - por favor, verifique as configurações do seu navegador", + "error_permissions_missing": "%(brand)s não tem permissões para enviar notificações a você - por favor, tente novamente", + "error_saving": "Erro ao guardar as preferências de notificação", + "error_saving_detail": "Ocorreu um erro ao guardar as tuas preferências de notificação.", + "error_title": "Não foi possível ativar as notificações", + "error_updating": "Ocorreu um erro ao atualizar as tuas preferências de notificação. Tenta alternar a tua opção novamente.", + "invites": "Convidado para uma sala", + "keywords": "Mostra um crachá quando são utilizadas palavras-chave numa sala.", + "keywords_prompt": "Introduz aqui palavras-chave ou utiliza variações ortográficas ou alcunhas", + "labs_notice_prompt": "Atualização:Simplificámos as Definições de Notificações para tornar as opções mais fáceis de encontrar. Algumas definições personalizadas que escolheste no passado não são mostradas aqui, mas continuam ativas. Se prosseguires, algumas das tuas definições poderão ser alteradas. Saber mais", + "mentions_keywords": "Menções e Palavras-chave", + "mentions_keywords_only": "Apenas menções e palavras-chave", + "messages_containing_keywords": "Mensagens que contêm palavras-chave", + "noisy": "Barulhento", + "notices": "Mensagens enviadas por bots", + "notify_at_room": "Notifica quando alguém menciona a utilização de @sala", + "notify_keyword": "Notifica quando alguém utiliza uma palavra-chave", + "notify_mention": "Notifica quando alguém faz uma menção utilizando @nome_de_apresentação ou %(mxid)s", + "other_section": "Outras coisas que pensamos que te podem interessar:", + "people_mentions_keywords": "Pessoas, menções e palavras-chave", + "play_sound_for_description": "Aplicado por defeito a todas as salas em todos os dispositivos.", + "play_sound_for_section": "Toca um som para", + "push_targets": "Alvos de notificação", + "quick_actions_mark_all_read": "Marca todas as mensagens como lidas", + "quick_actions_reset": "Repor as predefinições", + "quick_actions_section": "Ações Rápidas", + "room_activity": "Ocorrem mensagens de nova atividade na sala, actualizações e estado", + "rule_call": "Convite para chamada", + "rule_contains_display_name": "Mensagens contendo o meu nome público", + "rule_contains_user_name": "Mensagens contendo o meu nome de utilizador", + "rule_encrypted": "Mensagens encriptadas em conversas de grupo", + "rule_encrypted_room_one_to_one": "Mensagens encriptadas em conversas de um para um", + "rule_invite_for_me": "Quando sou convidado para uma sala", + "rule_message": "Mensagens em salas", + "rule_room_one_to_one": "Mensagens em conversas pessoais", + "rule_roomnotif": "Mensagens contendo @sala", + "rule_suppress_notices": "Mensagens enviadas por bots", + "rule_tombstone": "Quando as salas são atualizadas", + "show_message_desktop_notification": "Mostra a mensagem na notificação do ambiente de trabalho", + "voip": "Chamadas de áudio e vídeo" + }, + "preferences": { + "Electron.enableHardwareAcceleration": "Ativa a aceleração por hardware (reinicia %(appName)s para surtir efeito)", + "always_show_menu_bar": "Mostra sempre a barra de menu da janela", + "autocomplete_delay": "Atraso do preenchimento automático (ms)", + "code_blocks_heading": "Blocos de código", + "compact_modern": "Utiliza um layout \"moderno\" mais compacto", + "composer_heading": "Compositor", + "dialog_title": "Definições: Preferências", + "enable_hardware_acceleration": "Ativar a aceleração de hardware", + "enable_tray_icon": "Mostra o ícone do tabuleiro e minimiza a janela ao fechar", + "keyboard_heading": "Atalhos do teclado", + "keyboard_view_shortcuts_button": "Para ver todos os atalhos de teclado, clica aqui.", + "media_heading": "Imagens, GIFs e vídeos", + "presence_description": "Partilha a tua atividade e o teu estado com outros.", + "rm_lifetime": "Vida útil do marcador de leitura (ms)", + "rm_lifetime_offscreen": "Vida útil do marcador de leitura fora do ecrã (ms)", + "room_directory_heading": "Diretório de salas", + "room_list_heading": "Lista de salas", + "show_avatars_pills": "Mostra os avatares nas menções de utilizadores, salas e eventos", + "show_checklist_shortcuts": "Mostra o atalho para a lista de boas-vindas acima da lista de salas", + "show_polls_button": "Mostrar botão de sondagens", + "surround_text": "Rodeia o texto selecionado ao escrever caracteres especiais", + "time_heading": "Mostra a hora" + }, + "prompt_invite": "Avisa antes de enviar convites para IDs de matrix potencialmente inválidos", + "replace_plain_emoji": "Substituir Emoji de texto automaticamente", + "security": { + "4s_public_key_in_account_data": "nos dados da conta", + "4s_public_key_status": "Chave pública de armazenamento secreto:", + "analytics_description": "Partilha dados anónimos para nos ajudar a identificar problemas. Nada de pessoal. Sem terceiros.", + "backup_key_cached_status": "Chave de backup armazenada em cache:", + "backup_key_stored_status": "Chave de backup armazenada:", + "backup_key_unexpected_type": "tipo inesperado", + "backup_key_well_formed": "bem formado", + "backup_keys_description": "Faz uma cópia de segurança das tuas chaves de encriptação com os dados da tua conta para o caso de perderes o acesso às tuas sessões. As tuas chaves serão protegidas com uma chave de segurança única.", + "bulk_options_accept_all_invites": "Aceita todos os convites de %(invitedRooms)s ", + "bulk_options_reject_all_invites": "Rejeitar todos os %(invitedRooms)s convites", + "bulk_options_section": "Opções em massa", + "cross_signing_cached": "armazenado em cache localmente", + "cross_signing_homeserver_support": "Suporte a recursos de servidor doméstico:", + "cross_signing_homeserver_support_exists": "existe", + "cross_signing_in_4s": "em armazenamento secreto", + "cross_signing_in_memory": "na memória", + "cross_signing_master_private_Key": "Chave mestra privada:", + "cross_signing_not_cached": "não encontrado localmente", + "cross_signing_not_found": "não encontrado", + "cross_signing_not_in_4s": "não encontrado no armazenamento", + "cross_signing_not_stored": "não armazenado", + "cross_signing_private_keys": "Assinatura cruzada de chaves privadas:", + "cross_signing_public_keys": "Assinatura cruzada de chaves públicas:", + "cross_signing_self_signing_private_key": "Chave privada com assinatura automática:", + "cross_signing_user_signing_private_key": "Chave privada de assinatura do utilizador:", + "cryptography_section": "Criptografia", + "dehydrated_device_description": "A funcionalidade de dispositivo offline permite-te receber mensagens encriptadas mesmo quando não tens sessão iniciada em nenhum dispositivo", + "dehydrated_device_enabled": "Dispositivo offline ativado", + "delete_backup": "Eliminar cópia de segurança", + "delete_backup_confirm_description": "Tens a certeza? Perderás as tuas mensagens encriptadas se as tuas chaves não forem guardadas corretamente.", + "dialog_title": "Definições: Segurança e privacidade", + "e2ee_default_disabled_warning": "O administrador do teu servidor desactivou a encriptação de ponta a ponta por defeito nas salas privadas e nas Mensagens directas.", + "enable_message_search": "Ativar a pesquisa de mensagens em salas encriptadas", + "encryption_section": "Encriptação", + "error_loading_key_backup_status": "Não é possível carregar o estado da cópia de segurança da chave", + "export_megolm_keys": "Exportar chaves ponta-a-ponta da sala", + "ignore_users_empty": "Não tens utilizadores ignorados.", + "ignore_users_section": "Utilizadores ignorados", + "import_megolm_keys": "Importar chave de criptografia ponta-a-ponta (E2E) da sala", + "key_backup_active": "Esta sessão está a realizar as cópias de segurança das tuas chaves.", + "key_backup_active_version": "Versão de cópia de segurança ativa:", + "key_backup_active_version_none": "Nenhum", + "key_backup_algorithm": "Algoritmo:", + "key_backup_can_be_restored": "Esta cópia de segurança pode ser restaurada nesta sessão", + "key_backup_complete": "Cópia de segurança de todas as chaves realizada", + "key_backup_connect": "Liga esta sessão à cópia de segurança das chaves", + "key_backup_connect_prompt": "Liga esta sessão à cópia de segurança de chaves antes de terminares a sessão para evitar perderes quaisquer chaves que possam estar apenas nesta sessão.", + "key_backup_in_progress": "Fazendo backup das chaves de %(sessionsRemaining)s...", + "key_backup_inactive": "Esta sessão não está a realizar as cópias de segurança das tuas chaves, mas tens uma cópia de segurança existente a partir da qual podes restaurar e adicionar mais.", + "key_backup_inactive_warning": "As tuas chaves não estão a ser copiadas em segurança a partir desta sessão.", + "key_backup_latest_version": "Versão mais recente da cópia de segurança no servidor:", + "message_search_disable_warning": "Se estiver desactivada, as mensagens de salas encriptadas não aparecerão nos resultados da pesquisa.", + "message_search_disabled": "Armazena em cache de forma segura as mensagens encriptadas localmente para que apareçam nos resultados de pesquisa.", + "message_search_enabled": { + "one": "Coloca em cache de forma segura mensagens encriptadas localmente para que apareçam nos resultados de pesquisa, utilizando %(size)s para armazenar mensagens da sala %(rooms)s.", + "other": "Coloca em cache de forma segura mensagens encriptadas localmente para que apareçam nos resultados de pesquisa, utilizando %(size)s para armazenar mensagens de salas %(rooms)s." + }, + "message_search_failed": "Falha na inicialização da pesquisa de mensagens", + "message_search_indexed_messages": "Mensagens indexadas:", + "message_search_indexed_rooms": "Salas indexadas:", + "message_search_indexing": "Atualmente a indexar: %(currentRoom)s", + "message_search_indexing_idle": "No momento, não estamos indexando mensagens de nenhuma sala.", + "message_search_intro": "%(brand)s está a armazenar em segurança mensagens encriptadas localmente para que apareçam nos resultados da pesquisa:", + "message_search_room_progress": "%(doneRooms)s fora de %(totalRooms)s", + "message_search_section": "Pesquisa de mensagens", + "message_search_sleep_time": "A que velocidade as mensagens devem ser descarregadas.", + "message_search_space_used": "Espaço utilizado:", + "message_search_unsupported": "%(brand)s não tem alguns componentes necessários para guardar mensagens encriptadas localmente de forma segura. Se quiseres experimentar esta funcionalidade, constrói um ambiente de trabalho %(brand)s personalizado com componentes de pesquisa adicionados.", + "message_search_unsupported_web": "%(brand)s não é possível armazenar mensagens encriptadas em cache com segurança localmente durante a execução num navegador da Web. Usa %(brand)s Desktop para que as mensagens encriptadas apareçam nos resultados da pesquisa.", + "record_session_details": "Grava o nome do cliente, a versão e o URL para reconhecer mais facilmente as sessões no gestor de sessões", + "restore_key_backup": "Restaurar a partir da cópia de segurança", + "secret_storage_not_ready": "não está pronto", + "secret_storage_ready": "pronto", + "secret_storage_status": "Armazenamento secreto:", + "send_analytics": "Envia dados analíticos", + "session_id": "Identificação de sessão:", + "session_key": "Chave da sessão:", + "strict_encryption": "Nunca envies mensagens encriptadas para sessões não verificadas a partir desta sessão" + }, + "send_read_receipts": "Enviar recibos lidos", + "send_read_receipts_unsupported": "O teu servidor não suporta a desativação do envio de recibos de leitura.", + "send_typing_notifications": "Enviar notificações de digitação", + "sessions": { + "best_security_note": "Para maior segurança, verifica as tuas sessões e termina a sessão de qualquer sessão que já não reconheças ou utilizes.", + "browser": "Navegador", + "confirm_sign_out": { + "one": "Confirma a saída deste dispositivo", + "other": "Confirma a saída destes dispositivos" + }, + "confirm_sign_out_body": { + "one": "Clica no botão abaixo para confirmar a saída deste dispositivo.", + "other": "Clica no botão abaixo para confirmar a saída destes dispositivos." + }, + "confirm_sign_out_continue": { + "one": "Dispositivo de desconexão", + "other": "Dispositivos de desconexão" + }, + "confirm_sign_out_sso": { + "one": "Confirma a saída deste dispositivo utilizando o o início de sessão único para provar a tua identidade.", + "other": "Confirma a saída destes dispositivos utilizando o início de sessão único para provar a tua identidade." + }, + "current_session": "Sessão atual", + "desktop_session": "Sessão de ambiente de trabalho", + "details_heading": "Detalhes da sessão", + "device_unverified_description": "Verifica ou termina a sessão para maior segurança e fiabilidade.", + "device_unverified_description_current": "Verifica a tua sessão atual para mensagens seguras melhoradas.", + "device_verified_description": "Esta sessão está pronta para o envio de mensagens seguras.", + "device_verified_description_current": "A tua sessão atual está pronta para o envio seguro de mensagens.", + "dialog_title": "Configurações: Sessões", + "error_pusher_state": "Falha ao definir o estado do empurrador", + "error_set_name": "Falha ao definir o nome da sessão", + "filter_all": "Tudo", + "filter_inactive": "Inativo", + "filter_inactive_description": "Inativo por %(inactiveAgeDays)s dias ou mais", + "filter_label": "Dispositivos de filtragem", + "filter_unverified_description": "Não está pronto para mensagens seguras", + "filter_verified_description": "Pronto para mensagens seguras", + "hide_details": "Ocultar detalhes", + "inactive_days": "Inativo por mais de %(inactiveAgeDays)s dias", + "inactive_sessions": "Sessões inativas", + "inactive_sessions_explainer_1": "As sessões inativas são sessões que não utilizas há algum tempo, mas que continuam a receber chaves de encriptação.", + "inactive_sessions_explainer_2": "A remoção de sessões inativas melhora a segurança e o desempenho e facilita a identificação de uma nova sessão suspeita.", + "inactive_sessions_list_description": "Considera a possibilidade de sair de sessões antigas (%(inactiveAgeDays)s dias ou mais) que já não utilizas.", + "ip": "Endereço IP", + "last_activity": "Última atividade", + "mobile_session": "Sessão móvel", + "n_sessions_selected": { + "one": "%(count)s sessão selecionada", + "other": "%(count)s sessões seleccionadas" + }, + "no_inactive_sessions": "Nenhuma sessão inativa foi encontrada.", + "no_sessions": "Nenhuma sessão encontrada", + "no_unverified_sessions": "Nenhuma sessão não verificada foi encontrada.", + "no_verified_sessions": "Nenhuma sessão verificada foi encontrada.", + "os": "Sistema operativo", + "other_sessions_heading": "Outras sessões", + "push_heading": "Notificações push", + "push_subheading": "Recebe notificações push sobre esta sessão.", + "push_toggle": "Alterna as notificações push nesta sessão.", + "rename_form_caption": "Tem em atenção que os nomes das sessões também são visíveis para as pessoas com quem comunicas.", + "rename_form_heading": "Mudar o nome da sessão", + "rename_form_learn_more": "Renomear sessões", + "rename_form_learn_more_description_1": "Outros utilizadores nas mensagens diretas e nas salas em que participas podem ver uma lista completa das tuas sessões.", + "rename_form_learn_more_description_2": "Isto dá-lhes a certeza de que estão realmente a falar contigo, mas também significa que podem ver o nome da sessão que introduzires aqui.", + "security_recommendations": "Recomendações de segurança", + "security_recommendations_description": "Melhora a segurança da tua conta seguindo estas recomendações.", + "session_id": "Identificador de sessão", + "show_details": "Mostrar detalhes", + "sign_in_with_qr": "Ligar novo dispositivo", + "sign_in_with_qr_button": "Mostrar código QR", + "sign_in_with_qr_description": "Utiliza um código QR para iniciar sessão noutro dispositivo e configurar as mensagens seguras.", + "sign_out": "Sair desta sessão", + "sign_out_all_other_sessions": "Sair de todas as outras sessões (%(otherSessionsCount)s)", + "sign_out_confirm_description": { + "one": "Tens a certeza de que queres sair da sessão %(count)s?", + "other": "Tens a certeza de que queres sair das sessões de %(count)s?" + }, + "sign_out_n_sessions": { + "one": "Sai da sessão %(count)s ", + "other": "Sai das sessões %(count)s " + }, + "title": "Sessões", + "unknown_session": "Tipo de sessão desconhecido", + "unverified_session": "Sessão não verificada", + "unverified_session_explainer_1": "Esta sessão não suporta encriptação e, por isso, não pode ser verificada.", + "unverified_session_explainer_2": "Não poderás participar em salas onde a encriptação está activada quando utilizares esta sessão.", + "unverified_session_explainer_3": "Para maior segurança e privacidade, recomenda-se a utilização de clientes Matrix que suportem encriptação.", + "unverified_sessions": "Sessões não verificadas", + "unverified_sessions_explainer_1": "As sessões não verificadas são aquelas em que iniciaram sessão com as tuas credenciais, mas que não foram objeto de verificação cruzada.", + "unverified_sessions_explainer_2": "Deves certificar-te de que reconheces estas sessões, pois podem representar uma utilização não autorizada da tua conta.", + "unverified_sessions_list_description": "Verifica as tuas sessões para obteres mensagens seguras melhoradas ou termina a sessão das que já não reconheces ou utilizas.", + "url": "URL", + "verified_session": "Sessão verificada", + "verified_sessions": "Sessões verificadas", + "verified_sessions_explainer_1": "As sessões verificadas são qualquer lugar onde estejas a utilizar esta conta depois de introduzires a tua frase-chave ou confirmares a tua identidade com outra sessão verificada.", + "verified_sessions_explainer_2": "Isto significa que tens todas as chaves necessárias para desbloquear as tuas mensagens encriptadas e confirmar aos outros utilizadores que confias nesta sessão.", + "verified_sessions_list_description": "Para maior segurança, termina a sessão de qualquer sessão que já não reconheças ou utilizes.", + "verify_session": "Verificar sessão", + "web_session": "Sessão Web" + }, + "show_avatar_changes": "Mostrar alterações de imagem de perfil", + "show_breadcrumbs": "Mostrar atalhos para salas recentemente visualizadas acima da lista de salas", + "show_chat_effects": "Mostrar efeitos de conversação (animações ao receber, por exemplo, confetes)", + "show_displayname_changes": "Mostrar alterações no nome de exibição", + "show_join_leave": "Mostra as mensagens de entrada/saída (convites/remoções/proibições não afetados)", + "show_nsfw_content": "Mostrar conteúdo NSFW", + "show_read_receipts": "Mostrar recibos de leitura enviados por outros usuários", + "show_redaction_placeholder": "Mostrar um marcador de posição para mensagens removidas", + "show_stickers_button": "Mostrar botão de stickers", + "show_typing_notifications": "Mostrar notificações de digitação", + "showbold": "Mostra toda a atividade na lista de salas (pontos ou número de mensagens não lidas)", + "sidebar": { + "dialog_title": "Configurações: Barra lateral", + "metaspaces_favourites_description": "Agrupa todas as tuas salas e pessoas favoritas num único local.", + "metaspaces_home_all_rooms": "Mostra todas as salas", + "metaspaces_home_all_rooms_description": "Mostra todos as tuas salas na Página Inicial, mesmo que estejam num espaço.", + "metaspaces_home_description": "A página inicial é útil para obter uma visão geral de tudo.", + "metaspaces_orphans": "Salas fora de um espaço", + "metaspaces_orphans_description": "Agrupa todas as tuas salas que não fazem parte de um espaço num único local.", + "metaspaces_people_description": "Agrupa todas as tuas pessoas num único local.", + "metaspaces_subsection": "Espaços para mostrar", + "metaspaces_video_rooms": "Salas de vídeo e conferências", + "metaspaces_video_rooms_description": "Agrupa todas as salas de vídeo privadas e conferências.", + "metaspaces_video_rooms_description_invite_extension": "Nas conferências, podes convidar pessoas fora do Matrix", + "spaces_explainer": "Os espaços são formas de agrupar divisões e pessoas. Para além dos espaços em que te encontras, também podes utilizar alguns espaços pré-construídos.", + "title": "Barra lateral" + }, + "start_automatically": "Iniciar automaticamente ao iniciar o sistema", + "tac_only_notifications": "Mostra apenas as notificações no centro de actividades do tópico", + "use_12_hour_format": "Mostrar os horários em formato de 12h (p.ex: 2:30pm)", + "use_command_enter_send_message": "Utiliza Command + Enter para enviar uma mensagem", + "use_command_f_search": "Utiliza Command + F para pesquisar a cronologia", + "use_control_enter_send_message": "Utiliza Ctrl + Enter para enviar uma mensagem", + "use_control_f_search": "Usa Ctrl + F para pesquisar a cronologia", + "voip": { + "allow_p2p": "Permitir chamadas ponto a ponto para chamadas individuais", + "allow_p2p_description": "Quando ativado, a outra parte poderá ver o teu endereço IP", + "audio_input_empty": "Não foi detetado nenhum microfone", + "audio_output": "Saída de áudio", + "audio_output_empty": "Não foram detectadas saídas de áudio", + "auto_gain_control": "Controlo automático de ganho", + "connection_section": "Ligação", + "dialog_title": "Definições: Voz e vídeo", + "echo_cancellation": "Cancelamento de eco", + "enable_fallback_ice_server": "Permite o servidor de assistência a chamadas de recurso (%(server)s)", + "enable_fallback_ice_server_description": "Só se aplica se o teu servidor doméstico não oferecer um. O teu endereço IP será partilhado durante uma chamada.", + "mirror_local_feed": "Espelha o feed de vídeo local", + "missing_permissions_prompt": "Se faltarem permissões para os meios de comunicação, clica no botão abaixo para as solicitar.", + "noise_suppression": "Supressão de ruído", + "request_permissions": "Pedir permissões para os meios de comunicação social", + "title": "Voz e vídeo", + "video_input_empty": "Não foi detetada nenhuma Webcam", + "video_section": "Definições de vídeo", + "voice_agc": "Ajusta automaticamente o volume do microfone", + "voice_processing": "Processamento de voz", + "voice_section": "Definições de voz" + }, + "warn_quit": "Avisa antes de desistir", + "warning": "AVISO:" + }, + "share": { + "permalink_message": "Link para a mensagem selecionada", + "permalink_most_recent": "Link para a mensagem mais recente", + "share_call": "Link de convite para conferência", + "share_call_subtitle": "Link para usuários externos ingressarem na chamada sem uma conta matrix:", + "title_link": "Partilhar ligação", + "title_message": "Partilhar mensagem da sala", + "title_room": "Partilhar sala", + "title_user": "Partilhar utilizador" + }, + "slash_command": { + "addwidget": "Adiciona um widget personalizado por URL à sala", + "addwidget_iframe_missing_src": "o iframe não tem atributo src", + "addwidget_invalid_protocol": "Fornece um URL do widget https:// ou http://", + "addwidget_missing_url": "Fornece um URL de widget ou código de incorporação", + "addwidget_no_permissions": "Não podes modificar widgets nesta sala.", + "ban": "Banir usuários com o identificador informado", + "category_actions": "Ações", + "category_admin": "Administrador", + "category_advanced": "Avançado", + "category_effects": "Ações", + "category_messages": "Mensagens", + "category_other": "Outros", + "command_error": "Erro de comando", + "converttodm": "Converte a sala numa DM", + "converttoroom": "Converte a DM numa sala", + "could_not_find_room": "Não foi possível encontrar a sala", + "deop": "Retirar função de moderador do usuário com o identificador informado", + "devtools": "Abre o diálogo das Ferramentas do desenvolvedor", + "discardsession": "Força a rejeição da atual sessão de grupo de saída numa sala encriptada", + "error_invalid_rendering_type": "Erro de comando: Não foi possível encontrar o tipo de renderização(%(renderingType)s)", + "error_invalid_room": "Falha no comando: Não foi possível encontrar a sala (%(roomId)s)", + "error_invalid_runfn": "Erro de comando: Não foi possível lidar com o comando de barra.", + "error_invalid_user_in_room": "Não foi possível encontrar o utilizador na sala", + "help": "Apresenta uma lista de comandos com utilizações e descrições", + "help_dialog_title": "Ajuda do comando", + "holdcall": "Coloca a chamada na sala atual em espera", + "html": "Envia uma mensagem como html, sem a interpretar como markdown", + "ignore": "Ignora um utilizador, deixando de mostrar as mensagens dele", + "ignore_dialog_description": "Está agora a ignorar %(userId)s", + "ignore_dialog_title": "Utilizador ignorado", + "invite": "Convidar usuários com um dado identificador para esta sala", + "invite_3pid_needs_is_error": "Utiliza um servidor de identidade para convidar por e-mail. Faz a gestão nas Definições.", + "invite_3pid_use_default_is_title": "Utiliza um servidor de identidade", + "invite_3pid_use_default_is_title_description": "Utiliza um servidor de identidade para convidar por e-mail. Clica em continuar para utilizar o servidor de identidades predefinido (%(defaultIdentityServerName)s) ou em gerir nas Definições.", + "invite_failed": "O utilizador (%(user)s) não acabou por ser convidado para %(roomId)s mas o utilitário de convite não deu qualquer erro", + "join": "Entra na sala com o endereço indicado", + "jumptodate": "Salta para a data indicada na linha de tempo", + "jumptodate_invalid_input": "Não foi possível compreender a data indicada (%(inputDate)s). Tenta utilizar o formato AAAA-MM-DD.", + "lenny": "Pré-anexa ( ͡° ͜ʖ ͡°) a uma mensagem de texto simples", + "me": "Visualizar atividades", + "msg": "Envia uma mensagem para o utilizador indicado", + "myavatar": "Muda a sua foto de perfil em todas as salas", + "myroomavatar": "Altera a tua imagem de perfil apenas nesta sala atual", + "myroomnick": "Altera a tua alcunha de apresentação apenas na sala atual", + "nick": "Troca o seu apelido", + "no_active_call": "Não há nenhuma chamada ativa nesta sala", + "op": "Definir o nível de privilégios de um utilizador", + "part_unknown_alias": "Endereço de sala não reconhecido: %(roomAlias)s", + "plain": "Envia uma mensagem como texto simples, sem a interpretar como markdown", + "query": "Abre o chat com o utilizador indicado", + "query_not_found_phone_number": "Não é possível encontrar o ID de Matrix para o número de telefone", + "rageshake": "Envia um relatório de erro com registos", + "rainbow": "Envia a mensagem colorida como o arco-íris", + "rainbowme": "Envia a emote colorida como o arco-íris", + "remove": "Remove o utilizador com o id indicado desta sala", + "roomavatar": "Altera o avatar da sala atual", + "roomname": "Define o nome da sala", + "server_error": "Erro no servidor", + "server_error_detail": "O servidor pode estar indisponível, sobrecarregado, ou alguma outra coisa não funcionou.", + "shrug": "Pré-anexa ¯ \\ _ (ツ) _ / ¯ a uma mensagem de texto simples", + "spoiler": "Envia a mensagem como um spoiler", + "tableflip": "Pré-anexa (╯°□°)╯︵ ┻━┻ a uma mensagem de texto simples", + "topic": "Obtém ou define o tópico da sala", + "topic_none": "Esta sala não tem tópico.", + "topic_room_error": "Falha ao obter o tópico da sala: Não foi possível encontrar a sala (%(roomId)s", + "tovirtual": "Muda para a sala virtual desta sala, se houver uma", + "tovirtual_not_found": "Não há sala virtual para esta sala", + "unban": "Cancela o utilizador com um determinado ID", + "unflip": "Pré-anexa ┬──┬ ノ( ゜-゜ノ) a uma mensagem de texto simples", + "unholdcall": "Tira a chamada da sala atual da espera", + "unignore": "Deixa de ignorar um utilizador, mostrando as suas mensagens daqui para a frente", + "unignore_dialog_description": "%(userId)s já não é ignorado", + "unignore_dialog_title": "Utilizador não ignorado", + "unknown_command": "Comando desconhecido", + "unknown_command_button": "Enviar como mensagem", + "unknown_command_detail": "Comando não reconhecido: %(commandText)s", + "unknown_command_help": "Podes utilizar /help para listar os comandos disponíveis. Querias enviar isto como uma mensagem?", + "unknown_command_hint": "Dica: Começa a tua mensagem com // para a iniciares com uma barra.", + "upgraderoom": "Atualiza uma sala para uma nova versão", + "upgraderoom_permission_error": "Não tens as permissões necessárias para utilizar este comando.", + "usage": "Uso", + "view": "Visualiza a sala com o endereço indicado", + "whois": "Apresenta informações sobre um utilizador" + }, + "space": { + "add_existing_room_space": { + "create": "Queres acrescentar uma nova sala em vez disso?", + "create_prompt": "Crie uma nova sala", + "dm_heading": "Mensagens diretas", + "error_heading": "Nem todos os seleccionados foram adicionados", + "progress_text": { + "one": "Adicionando sala...", + "other": "Adicionando salas... (%(progress)s fora de%(count)s )" + }, + "space_dropdown_label": "Seleção de espaço", + "space_dropdown_title": "Adicionar salas existentes", + "subspace_moved_note": "A adição de espaços foi movida." + }, + "add_existing_subspace": { + "create_button": "Cria um novo espaço", + "create_prompt": "Queres acrescentar um novo espaço em vez disso?", + "filter_placeholder": "Procura espaços", + "space_dropdown_title": "Acrescenta um espaço existente" + }, + "context_menu": { + "devtools_open_timeline": "Vê a cronologia da sala (devtools)", + "explore": "Explorar rooms", + "home": "Espaço em casa", + "manage_and_explore": "Gere e explora as salas", + "options": "Opções de espaço" + }, + "failed_load_rooms": "Falha ao carregar a lista de salas.", + "failed_remove_rooms": "Falha ao remover algumas salas. Tenta novamente mais tarde", + "incompatible_server_hierarchy": "O teu servidor não suporta a apresentação de hierarquias espaciais.", + "invite": "Convida pessoas", + "invite_description": "Convidar com email ou nome de utilizador", + "invite_link": "Partilhar a ligação de convite", + "invite_this_space": "Convida para este espaço", + "joining_space": "Entrando...", + "landing_welcome": "Bem-vindo(a) a(ao) ", + "leave_dialog_action": "Deixa espaço", + "leave_dialog_description": "Estás prestes a sair de .", + "leave_dialog_only_admin_room_warning": "És o único administrador de algumas das salas ou espaços que desejas abandonar. Se os deixares, ficarão sem administradores.", + "leave_dialog_only_admin_warning": "És o único administrador deste espaço. Se o deixares, ninguém terá controlo sobre ele.", + "leave_dialog_option_all": "Sai de todos os quartos", + "leave_dialog_option_intro": "Gostarias de deixar as salas neste espaço?", + "leave_dialog_option_none": "Não deixes nenhum quarto", + "leave_dialog_option_specific": "Deixa alguns quartos", + "leave_dialog_public_rejoin_warning": "Só poderás voltar a participar se fores convidado novamente.", + "leave_dialog_title": "Sair %(spaceName)s", + "mark_suggested": "Marca como sugerido", + "no_search_result_hint": "Talvez queiras tentar uma pesquisa diferente ou verificar se há erros de digitação.", + "preferences": { + "sections_section": "Secções para mostrar", + "show_people_in_space": "Isto agrupa as tuas conversas com membros deste espaço. Se desactivares esta opção, ocultas essas conversas da tua vista de %(spaceName)s." + }, + "room_filter_placeholder": "Pesquisar por salas", + "search_children": "Pesquisar %(spaceName)s", + "search_placeholder": "Pesquisar nomes e descrições", + "select_room_below": "Seleciona primeiro uma das salas abaixo", + "share_public": "Partilha o teu espaço público", + "suggested": "Sugerido", + "suggested_tooltip": "Esta sala é sugerida como uma boa sala para te juntares", + "title_when_query_available": "Resultados", + "title_when_query_unavailable": "Salas e espaços", + "unmark_suggested": "Marca como não sugerido", + "user_lacks_permission": "Não tens permissão" + }, + "space_settings": { + "title": "Configurações - %(spaceName)s" + }, + "spaces": { + "error_no_permission_add_room": "Não tens permissões para adicionar salas a este espaço", + "error_no_permission_add_space": "Não tens permissões para adicionar espaços a este espaço", + "error_no_permission_create_room": "Não tens permissões para criar novas salas neste espaço", + "error_no_permission_invite": "Não tens permissões para convidar pessoas para este espaço" + }, + "spotlight": { + "public_rooms": { + "network_dropdown_add_dialog_description": "Introduz o nome de um novo servidor que pretendes explorar.", + "network_dropdown_add_dialog_placeholder": "Nome do servidor", + "network_dropdown_add_dialog_title": "Adiciona um novo servidor", + "network_dropdown_add_server_option": "Adiciona um novo servidor...", + "network_dropdown_available_invalid": "Não foi possível encontrar este servidor ou a sua lista de salas", + "network_dropdown_available_invalid_forbidden": "Não tens permissão para ver a lista de salas deste servidor", + "network_dropdown_available_valid": "Parece-me bem!", + "network_dropdown_remove_server_adornment": "Remove o servidor \"%(roomServer)s\"", + "network_dropdown_required_invalid": "Introduz um nome de servidor", + "network_dropdown_selected_label": "Mostrar: Salas Matrix", + "network_dropdown_selected_label_instance": "Mostrar: %(instance)s salas (%(server)s)", + "network_dropdown_your_server_description": "O teu servidor" + } + }, + "spotlight_dialog": { + "cant_find_person_helpful_hint": "Se não conseguires ver quem procuras, envia-lhe o teu link de convite.", + "cant_find_room_helpful_hint": "Se não encontrares a sala que procuras, pede um convite ou cria uma nova sala.", + "copy_link_text": "Copiar link de convite", + "count_of_members": { + "one": "%(count)s membro", + "other": "%(count)s membros" + }, + "create_new_room_button": "Criar nova sala", + "failed_querying_public_rooms": "Falha ao consultar as salas públicas", + "failed_querying_public_spaces": "Falha na consulta de espaços públicos", + "group_chat_section_title": "Outras opções", + "heading_with_query": "Utiliza \"%(query)s\" para pesquisar", + "heading_without_query": "Pesquisar por", + "join_button_text": "Aderir %(roomAddress)s", + "keyboard_scroll_hint": "Utiliza para te deslocares", + "message_search_section_title": "Outras pesquisas", + "other_rooms_in_space": "Outras salas em %(spaceName)s", + "public_rooms_label": "Salas públicas", + "public_spaces_label": "Espaços públicos", + "recent_searches_section_title": "Pesquisas recentes", + "recently_viewed_section_title": "Visto recentemente", + "remove_filter": "Remove o filtro de pesquisa para %(filter)s", + "result_may_be_hidden_privacy_warning": "Alguns resultados podem estar ocultos por motivos de privacidade", + "result_may_be_hidden_warning": "Alguns resultados podem estar ocultos", + "search_dialog": "Diálogo de pesquisa", + "search_messages_hint": "Para procurar mensagens, procura este ícone na parte superior de uma sala ", + "spaces_title": "Espaços em que te encontras", + "start_group_chat_button": "Inicia uma conversa de grupo" + }, + "stickers": { + "empty": "Atualmente não tens nenhum pacote de autocolantes ativado", + "empty_add_prompt": "Adiciona alguns agora" + }, + "terms": { + "column_document": "Documento", + "column_service": "Serviço", + "column_summary": "Resumo", + "identity_server_no_terms_description_1": "Esta acção requer acesso ao servidor de identidade padrão para validar um endereço de email ou número de telefone, mas o servidor não tem quaisquer termos de serviço.", + "identity_server_no_terms_description_2": "Continue apenas se confia no dono do servidor.", + "identity_server_no_terms_title": "O servidor de identidade não tem termos de serviço", + "inline_intro_text": "Aceita para continuar:", + "integration_manager": "Utiliza bots, pontes, widgets e pacotes de autocolantes", + "intro": "Para continuar, tens de aceitar as condições deste serviço.", + "summary_identity_server_1": "Encontra outras pessoas por telefone ou e-mail", + "summary_identity_server_2": "Ser encontrado por telefone ou e-mail", + "tac_button": "Revê os termos e condições", + "tac_description": "Para continuar a usar o servidor doméstico %(homeserverDomain)s tens de rever e concordar com os nossos termos e condições.", + "tac_title": "Termos e Condições", + "tos": "Termos do serviço" + }, + "theme": { + "light_high_contrast": "Alto contraste claro", + "match_system": "Sistema de correspondência" + }, + "thread_view_back_action_label": "Volta ao tópico", + "threads": { + "all_threads": "Todos os tópicos", + "all_threads_description": "Mostra todos os tópicos da sala atual", + "count_of_reply": { + "one": "%(count)s resposta", + "other": "%(count)s respostas" + }, + "empty_description": "Utiliza \"%(replyInThread)s\" quando passares o cursor sobre uma mensagem.", + "empty_title": "Os tópicos ajudam a manter as tuas conversas dentro do tópico e são fáceis de seguir.", + "error_start_thread_existing_relation": "Não é possível criar um tópico a partir de um evento com uma relação existente", + "mark_all_read": "Marcar tudo como lido", + "my_threads": "Os meus tópicos", + "my_threads_description": "Mostra todos os tópicos em que participaste", + "open_thread": "Abrir tópico", + "show_thread_filter": "Mostrar:" + }, + "threads_activity_centre": { + "header": "Atividade de tópicos", + "no_rooms_with_threads_notifs": "Ainda não tens salas com notificações de tópicos.", + "no_rooms_with_unread_threads": "Ainda não tens salas com tópicos não lidos.", + "release_announcement_description": "As notificações de tópicos foram movidas, encontre-as aqui a partir de agora.", + "release_announcement_header": "Centro de Actividades Tópicos" + }, + "time": { + "about_day_ago": "há cerca de um dia", + "about_hour_ago": "há cerca de uma hora", + "about_minute_ago": "há cerca de um minuto", + "date_at_time": "%(date)s às %(time)s", + "few_seconds_ago": "há alguns segundos atrás", + "hours_minutes_seconds_left": "%(hours)sh %(minutes)sm %(seconds)ss restantes", + "in_about_day": "daqui a um dia", + "in_about_hour": "daqui a uma hora", + "in_about_minute": "daqui a um minuto", + "in_few_seconds": "daqui a alguns segundos", + "in_n_days": "daqui a %(num)s dias", + "in_n_hours": "daqui a %(num)s horas", + "in_n_minutes": "daqui a %(num)s minutos", + "left": "%(timeRemaining)s ainda", + "minutes_seconds_left": "%(minutes)sm %(seconds)ss restantes", + "n_days_ago": "%(num)s dias atrás", + "n_hours_ago": "%(num)s horas atrás", + "n_minutes_ago": "%(num)s minutos atrás", + "seconds_left": "%(seconds)ss restantes", + "short_days": "%(value)sd", + "short_days_hours_minutes_seconds": "%(days)sd %(hours)sh %(minutes)sm %(seconds)ss", + "short_hours": "%(value)sh", + "short_hours_minutes_seconds": "%(hours)sh %(minutes)sm %(seconds)ss", + "short_minutes": "%(value)sm", + "short_minutes_seconds": "%(minutes)sm %(seconds)ss", + "short_seconds": "%(value)ss" + }, + "timeline": { + "context_menu": { + "collapse_reply_thread": "Recolher tópico de resposta", + "external_url": "URL fonte", + "open_in_osm": "Abre no OpenStreetMap", + "report": "Relatório", + "resent_unsent_reactions": "Reenvia %(unsentCount)s reação(ões)", + "show_url_preview": "Mostrar pré-visualização", + "view_related_event": "Ver evento relacionado", + "view_source": "Ver fonte" + }, + "creation_summary_dm": "%(creator)s criou esta DM.", + "creation_summary_room": "%(creator)s criou e configurou a sala.", + "decryption_failure": { + "blocked": "O remetente impediu-te de receber esta mensagem porque o teu dispositivo não foi verificado", + "historical_event_no_key_backup": "As mensagens históricas não estão disponíveis neste dispositivo", + "historical_event_unverified_device": "Tens de verificar este dispositivo para acederes às mensagens históricas", + "historical_event_user_not_joined": "Não tens acesso a esta mensagem", + "unable_to_decrypt": "Não é possível desencriptar a mensagem" + }, + "disambiguated_profile": "%(displayName)s (%(matrixId)s)", + "download_action_decrypting": "Descriptografando", + "download_action_downloading": "A transferir…", + "download_failed": "A transferência falhou", + "download_failed_description": "Ocorreu um erro ao transferir este ficheiro", + "edits": { + "tooltip_label": "Editado em %(date)s. Clica para ver as edições.", + "tooltip_sub": "Clica para ver as edições", + "tooltip_title": "Editado em %(date)s" + }, + "error_no_renderer": "Este evento não pôde ser exibido", + "error_rendering_message": "Não é possível carregar esta mensagem", + "historical_messages_unavailable": "Não consegues ver as mensagens anteriores", + "in_room_name": " em %(room)s", + "io.element.widgets.layout": "%(senderName)s atualizou a disposição da sala", + "late_event_separator": "Enviado originalmente %(dateTime)s", + "load_error": { + "no_permission": "Tentei carregar um ponto específico na linha do tempo desta sala, mas parece que você não tem permissões para ver a mensagem em questão.", + "title": "Não foi possível carregar a posição na linha do tempo", + "unable_to_find": "Tentei carregar um ponto específico na linha do tempo desta sala, mas não o encontrei." + }, + "m.audio": { + "error_downloading_audio": "Erro ao descarregar áudio", + "error_processing_audio": "Erro no processamento da mensagem de áudio", + "error_processing_voice_message": "Erro no processamento da mensagem de voz", + "unnamed_audio": "Áudio sem nome" + }, + "m.beacon_info": { + "view_live_location": "Vê a localização ao vivo" + }, + "m.call": { + "video_call_ended": "Chamada de vídeo terminada", + "video_call_started": "A videochamada começou em %(roomName)s.", + "video_call_started_text": "%(name)s iniciou uma videochamada", + "video_call_started_unsupported": "A videochamada começou em%(roomName)s . (não suportada por este navegador)" + }, + "m.call.hangup": { + "dm": "Chamada terminada" + }, + "m.call.invite": { + "answered_elsewhere": "Respondido noutro local", + "call_back_prompt": "Retornar a chamada", + "declined": "Chamada recusada", + "failed_connect_media": "Não foi possível conectar a mídia", + "failed_connection": "Falha na conexão", + "failed_opponent_media": "O teu dispositivo não conseguia ligar a câmara ou o microfone", + "missed_call": "Chamada perdida", + "no_answer": "Não Atende", + "unknown_error": "Ocorreu um erro desconhecido", + "unknown_failure": "Falha desconhecida: %(reason)s", + "unknown_state": "A chamada está num estado desconhecido!", + "video_call": "%(senderName)s faz uma chamada de vídeo.", + "video_call_unsupported": "%(senderName)s fez uma videochamada. (não suportada por este navegador)", + "voice_call": "%(senderName)s faz uma chamada de voz.", + "voice_call_unsupported": "%(senderName)s fez uma chamada de voz. (não suportada por este navegador)" + }, + "m.file": { + "error_decrypting": "Erro ao descriptografar o anexo", + "error_invalid": "Arquivo inválido %(extra)s" + }, + "m.image": { + "error": "Não é possível mostrar a imagem devido a um erro", + "error_decrypting": "Erro ao descriptografar a imagem", + "error_downloading": "Erro ao descarregar a imagem", + "sent": "%(senderDisplayName)s enviou uma imagem.", + "show_image": "Mostra a imagem" + }, + "m.key.verification.request": { + "user_wants_to_verify": "%(name)s quer verificar", + "you_started": "Enviaste um pedido de verificação" + }, + "m.location": { + "full": "%(senderName)s partilhou a sua localização", + "location": "Partilhou um local: ", + "self_location": "Partilhou a sua localização: " + }, + "m.poll": { + "count_of_votes": { + "one": "%(count)svoto", + "other": "%(count)svotos" + } + }, + "m.poll.end": { + "ended": "Terminou uma sondagem", + "sender_ended": "%(senderName)s encerrou uma sondagem" + }, + "m.poll.start": "%(senderName)s iniciou uma sondagem - %(pollQuestion)s", + "m.room.avatar": { + "changed": "%(senderDisplayName)s mudaste o avatar da sala.", + "changed_img": "%(senderDisplayName)s alterou a imagem da sala para ", + "lightbox_title": "%(senderDisplayName)s alterou a imagem da sala %(roomName)s", + "removed": "%(senderDisplayName)s removeu a imagem da sala." + }, + "m.room.canonical_alias": { + "alt_added": { + "one": "%(senderName)s Adiciona um endereço alternativo %(addresses)s para esta sala.", + "other": "%(senderName)s adicionou os endereços alternativos %(addresses)s para esta sala." + }, + "alt_removed": { + "one": "%(senderName)s Removeu o endereço alternativo %(addresses)s para esta sala.", + "other": "%(senderName)s Removeu os endereços alternativos %(addresses)s para esta sala." + }, + "changed": "%(senderName)s alterou os endereços desta sala.", + "changed_alternative": "%(senderName)s alterou o endereço alternativo desta sala.", + "changed_main_and_alternative": "%(senderName)s alterou o endereço principal e alternativo desta sala.", + "removed": "%(senderName)s removeu o endereço principal desta sala.", + "set": "%(senderName)s definiu o endereço principal desta sala como %(address)s." + }, + "m.room.create": { + "continuation": "Esta sala é a continuação de outra conversa.", + "see_older_messages": "Clica aqui para veres mensagens mais antigas.", + "unknown_predecessor": "Não é possível encontrar a versão antiga desta sala (ID da sala: %(roomId)s), e não nos foi fornecido o 'via_servers' para a procurar.", + "unknown_predecessor_guess_server": "Não consegues encontrar a versão antiga desta sala (ID da sala: %(roomId)s), e não nos foi fornecido o 'via_servers' para a procurar. É possível que adivinhes o servidor a partir do ID da sala. Se quiseres tentar, clica neste link:" + }, + "m.room.encryption": { + "disable_attempt": "Tentativa ignorada de desativar a encriptação", + "disabled": "Encriptação não ativada", + "enabled": "As mensagens nesta sala são encriptadas de ponta a ponta. Quando as pessoas se juntam a nós, podes verificá-las no seu perfil, basta tocares na fotografia de perfil.", + "enabled_dm": "As mensagens aqui são encriptadas de ponta a ponta. Verifica %(displayName)s no seu perfil - toca na fotografia de perfil.", + "enabled_local": "As mensagens neste chat serão encriptadas de ponta a ponta.", + "parameters_changed": "Alguns parâmetros de encriptação foram alterados.", + "unsupported": "A encriptação utilizada por esta sala não é suportada." + }, + "m.room.guest_access": { + "can_join": "%(senderDisplayName)s permitiu que convidados entram na sala.", + "forbidden": "%(senderDisplayName)s bloqueou que convidados entrem na sala.", + "unknown": "%(senderDisplayName)s alterou o acesso de convidados para %(rule)s" + }, + "m.room.history_visibility": { + "invited": "%(senderName)s deixou o histórico futuro da sala visível para todos os membros da sala, a partir de quando foram convidados.", + "joined": "%(senderName)s deixou o histórico futuro da sala visível para todos os membros da sala, a partir de quando entraram.", + "shared": "%(senderName)s deixou o histórico futuro da sala visível para todas as pessoas da sala.", + "unknown": "%(senderName)s deixou o histórico futuro da sala visível para desconhecido (%(visibility)s).", + "world_readable": "%(senderName)s deixou o histórico futuro da sala visível para qualquer pessoa." + }, + "m.room.join_rules": { + "invite": "%(senderDisplayName)s fechou a sala para apenas utilizadores com convites.", + "knock": "%(senderDisplayName)s alterou a regra de entrada para \"pedir para entrar\".", + "public": "%(senderDisplayName)s tornou a sala pública para quem tiver o link.", + "restricted": "%(senderDisplayName)s mudou quem pode entrar na sala.", + "restricted_settings": "%(senderDisplayName)s mudou quem pode entrar na sala. Ver definições.", + "unknown": "%(senderDisplayName)s alterou a regra de entrada para %(rule)s" + }, + "m.room.member": { + "accepted_3pid_invite": "%(targetName)s aceitou o convite para %(displayName)s", + "accepted_invite": "%(targetName)saceitou um convite", + "ban": "%(senderName)s baniu %(targetName)s", + "ban_reason": "%(senderName)s baniu %(targetName)s: %(reason)s", + "change_avatar": "%(senderName)s mudou a sua foto de perfil", + "change_name": "%(oldDisplayName)s mudou o seu nome de apresentação para %(displayName)s", + "change_name_avatar": "%(oldDisplayName)s alterou o seu nome de apresentação e a sua fotografia de perfil", + "invite": "%(senderName)s convidou %(targetName)s", + "join": "%(targetName)s entrou na sala", + "kick": "%(senderName)s removeu %(targetName)s", + "kick_reason": "%(senderName)s removeu %(targetName)s: %(reason)s", + "left": "%(targetName)s saiu da sala", + "left_reason": "%(targetName)s saiu da sala:%(reason)s", + "no_change": "%(senderName)s não fez nenhuma alteração", + "reject_invite": "%(targetName)s rejeitou o convite", + "remove_avatar": "%(senderName)s removeu a sua fotografia de perfil", + "remove_name": "%(senderName)s removeu o seu nome de apresentação (%(oldDisplayName)s)", + "set_avatar": "%(senderName)s colocou uma foto de perfil", + "set_name": "%(senderName)s colocou o seu nome como %(displayName)s", + "unban": "%(senderName)s desbaniu %(targetName)s", + "withdrew_invite": "%(senderName)s revogou o convite de %(targetName)s", + "withdrew_invite_reason": "%(senderName)s revogou o convite de %(targetName)s: %(reason)s" + }, + "m.room.name": { + "change": "%(senderDisplayName)s mudou o nome da sala de %(oldRoomName)s para %(newRoomName)s.", + "remove": "%(senderDisplayName)s apagou o nome da sala.", + "set": "%(senderDisplayName)s alterou o nome da sala para %(roomName)s." + }, + "m.room.pinned_events": { + "changed": "%(senderName)s alterou as mensagens fixadas para a sala.", + "changed_link": "%(senderName)s alterou as mensagens fixadas para a sala.", + "pinned": "%(senderName)s fixou uma mensagem nesta sala. Ver todas as mensagens fixadas.", + "pinned_link": "%(senderName)s fixou uma mensagem nesta sala. Ver todas as mensagens fixadas.", + "unpinned": "%(senderName)s desafixou uma mensagem desta sala. Ver todas as mensagens fixadas.", + "unpinned_link": "%(senderName)s desafixou uma messagem desta sala. Ver todas as mensagens fixadas." + }, + "m.room.power_levels": { + "changed": "%(senderName)s alterou o nível de permissões de %(powerLevelDiffText)s.", + "user_from_to": "%(userId)s de %(fromPowerLevel)s para %(toPowerLevel)s" + }, + "m.room.server_acl": { + "all_servers_banned": "🎉 Todos os servidores foram banidos de participar! Esta sala ficou inutilizável.", + "changed": "%(senderDisplayName)s mudou a lista de controlo de acessos de servidores desta sala.", + "set": "%(senderDisplayName)s definir a lista de controlo de acessos de servidores para esta sala." + }, + "m.room.third_party_invite": { + "revoked": "%(senderName)s revocou o convite a %(targetDisplayName)s para se juntar à sala.", + "sent": "%(senderName)s enviou um convite para %(targetDisplayName)s entrar na sala." + }, + "m.room.tombstone": "%(senderDisplayName)s atualizou a sala.", + "m.room.topic": "%(senderDisplayName)s mudou o tópico para \"%(topic)s\".", + "m.sticker": "%(senderDisplayName)s enviou um sticker.", + "m.video": { + "error_decrypting": "Erro ao descriptografar o vídeo" + }, + "m.widget": { + "added": "Widget %(widgetName)s adicionado por %(senderName)s", + "jitsi_ended": "A videoconferência terminada por %(senderName)s", + "jitsi_join_right_prompt": "Participa na conferência a partir do cartão de informação da sala à direita", + "jitsi_join_top_prompt": "Junta-te à conferência no topo desta sala", + "jitsi_started": "Videoconferência iniciada por %(senderName)s", + "jitsi_updated": "Videoconferência atualizada por %(senderName)s", + "modified": "Widget %(widgetName)s modificado por %(senderName)s", + "removed": "Widget %(widgetName)s removido por %(senderName)s" + }, + "mab": { + "collapse_reply_chain": "Recolher citações", + "copy_link_thread": "Copia o link para o tópico", + "expand_reply_chain": "Expandir cotações", + "label": "Acções de mensagens", + "view_in_room": "Vista na sala" + }, + "message_timestamp_received_at": "Recebido em: %(dateTime)s", + "message_timestamp_sent_at": "Enviado em:%(dateTime)s", + "mjolnir": { + "changed_rule_glob": "%(senderName)s atualizou uma regra de banimento que correspondia a %(oldGlob)s à correspondência %(newGlob)s devido a %(reason)s", + "changed_rule_rooms": "%(senderName)s alterou uma regra que proibia salas correspondentes a %(oldGlob)s para correspondência %(newGlob)s devido a %(reason)s", + "changed_rule_servers": "%(senderName)s alterou uma regra que proibia servidores correspondentes a %(oldGlob)s para correspondência %(newGlob)s devido a %(reason)s", + "changed_rule_users": "%(senderName)s alterou uma regra que proibia usuários que correspondessem %(oldGlob)s para corresponder a %(newGlob)s devido a %(reason)s", + "created_rule": "%(senderName)s criou uma regra de banimento correspondente a %(glob)s devido a %(reason)s", + "created_rule_rooms": "%(senderName)s criou uma regra que bane salas que correspondam a %(glob)s porque %(reason)s", + "created_rule_servers": "%(senderName)s criou uma regra proibindo servidores correspondentes a %(glob)s para %(reason)s", + "created_rule_users": "%(senderName)s criou uma regra que bane os utilizadores que correspondam a %(glob)s porque %(reason)s", + "message_hidden": "Ignoraste este utilizador, por isso a sua mensagem está oculta. Mostra de qualquer forma.", + "removed_rule": "%(senderName)sremoveu uma regra de proibição correspondente %(glob)s", + "removed_rule_rooms": "%(senderName)s eliminou a regra que proibia a correspondência de salas %(glob)s", + "removed_rule_servers": "%(senderName)s eliminou a regra que bania os servidores que correspondessem a %(glob)s", + "removed_rule_users": "%(senderName)s eliminou a regra que bania os utilizadores que correspondessem a %(glob)s", + "updated_invalid_rule": "%(senderName)satualizou uma regra de proibição inválida", + "updated_rule": "%(senderName)s atualizou uma regra de proibição que corresponde a %(glob)s por %(reason)s", + "updated_rule_rooms": "%(senderName)satualizou a regra que proíbe salas correspondentes %(glob)s por %(reason)s", + "updated_rule_servers": "%(senderName)s actualizou a regra que proíbe os servidores que correspondem a %(glob)s por %(reason)s", + "updated_rule_users": "%(senderName)s atualizou a regra que proíbe os utilizadores que correspondam a %(glob)s para %(reason)s" + }, + "no_permission_messages_before_invite": "Não tens permissão para ver mensagens anteriores ao convite.", + "no_permission_messages_before_join": "Não tens permissão para ver mensagens anteriores à tua adesão.", + "pending_moderation": "Mensagem pendente de moderação", + "pending_moderation_reason": "Mensagem pendente de moderação: %(reason)s", + "reactions": { + "add_reaction_prompt": "Adicionar reação", + "custom_reaction_fallback_label": "Reação personalizada", + "label": "%(reactors)s reagiu com %(content)s", + "tooltip_caption": "reagiu com %(shortName)s" + }, + "read_receipt_title": { + "one": "Visto por %(count)s pessoa", + "other": "Visto por %(count)s pessoas" + }, + "read_receipts_label": "Recibos de leitura", + "redacted": { + "tooltip": "Mensagem apagada em %(date)s" + }, + "redaction": "Mensagem apagada por %(name)s", + "reply": { + "error_loading": "Não foi possível carregar o evento ao qual se respondeu, ou ele não existe ou não tens permissão para o ver.", + "in_reply_to": "Em resposta a ", + "in_reply_to_for_export": "Em resposta a esta mensagem" + }, + "scalar_starter_link": { + "dialog_description": "Você será levado agora a um site de terceiros para poder autenticar a sua conta para uso com o serviço %(integrationsUrl)s. Você quer continuar?", + "dialog_title": "Adicionar uma integração" + }, + "self_redaction": "Mensagem apagada", + "send_state_encrypting": "A encriptar a tua mensagem...", + "send_state_failed": "Falha ao enviar", + "send_state_sending": "A enviar a tua mensagem...", + "send_state_sent": "A tua mensagem foi enviada", + "summary": { + "banned": { + "one": "foi banido", + "other": "foi banido %(count)s vezes" + }, + "banned_multiple": { + "one": "foram banidos", + "other": "foram banidos %(count)s vezes" + }, + "changed_avatar": { + "one": "%(oneUser)s mudou a sua foto de perfil", + "other": "%(oneUser)s mudou a sua foto de perfil %(count)s vezes" + }, + "changed_avatar_multiple": { + "one": "%(severalUsers)s mudou a sua foto de perfil", + "other": "%(severalUsers)s mudou a sua foto de perfil %(count)s vezes" + }, + "changed_name": { + "one": "%(oneUser)s mudou de nome", + "other": "%(oneUser)s mudou de nome %(count)s vezes" + }, + "changed_name_multiple": { + "one": "%(severalUsers)s mudou de nome", + "other": "%(severalUsers)s mudou de nome %(count)s vezes" + }, + "format": "%(nameList)s %(transitionList)s", + "hidden_event": { + "one": "%(oneUser)s enviou uma mensagem oculta", + "other": "%(oneUser)s enviou %(count)s mensagens ocultas" + }, + "hidden_event_multiple": { + "one": "%(severalUsers)s enviaram uma mensagem oculta", + "other": "%(severalUsers)s enviaram %(count)s mensagens ocultas" + }, + "invite_withdrawn": { + "one": "%(oneUser)s teve o seu convite retirado", + "other": "%(oneUser)s teve o seu convite retirado %(count)s vezes" + }, + "invite_withdrawn_multiple": { + "one": "%(severalUsers)s tiveram os seus convites retirados", + "other": "%(severalUsers)s tiveram os seus convites retirados %(count)s vezes" + }, + "invited": { + "one": "foi convidado", + "other": "foi convidado %(count)s vezes" + }, + "invited_multiple": { + "one": "foram convidados", + "other": "foram convidados %(count)s vezes" + }, + "joined": { + "one": "%(oneUser)s aderiu", + "other": "%(oneUser)s aderiu %(count)s vezes" + }, + "joined_and_left": { + "one": "%(oneUser)s entrou e saiu", + "other": "%(oneUser)s entrou e saiu %(count)s vezes" + }, + "joined_and_left_multiple": { + "one": "%(severalUsers)s aderiu e saiu", + "other": "%(severalUsers)s aderiu e saiu %(count)s vezes" + }, + "joined_multiple": { + "one": "%(severalUsers)s aderiu", + "other": "%(severalUsers)s aderiu %(count)s vezes" + }, + "kicked": { + "one": "foi removido", + "other": "foi removido %(count)s vezes" + }, + "kicked_multiple": { + "one": "foram removidos", + "other": "foram removidos %(count)s vezes" + }, + "left": { + "one": "%(oneUser)s saiu", + "other": "%(oneUser)s saiu %(count)s vezes" + }, + "left_multiple": { + "one": "%(severalUsers)s saiu", + "other": "%(severalUsers)s saiu %(count)s vezes" + }, + "no_change": { + "one": "%(oneUser)snão fez alterações", + "other": "%(oneUser)s não fez alterações %(count)s vezes" + }, + "no_change_multiple": { + "one": "%(severalUsers)s não fizeram alterações", + "other": "%(severalUsers)s não fizeram alterações %(count)s vezes" + }, + "pinned_events": { + "one": "%(oneUser)s alterou as mensagens fixadas para a sala", + "other": "%(oneUser)s alterou as mensagens fixadas para a sala %(count)s vezes" + }, + "pinned_events_multiple": { + "one": "%(severalUsers)s alteraram as mensagens fixadas para a sala", + "other": "%(severalUsers)s alteraram as mensagens fixadas para a sala %(count)s vezes" + }, + "redacted": { + "one": "%(oneUser)s removeu uma mensagem", + "other": "%(oneUser)s removeu %(count)s mensagens" + }, + "redacted_multiple": { + "one": "%(severalUsers)s removeram uma mensagem", + "other": "%(severalUsers)s removeram %(count)s mensagens" + }, + "rejected_invite": { + "one": "%(oneUser)s rejeitou o convite deles", + "other": "%(oneUser)s rejeitou o convite deles %(count)s vezes" + }, + "rejected_invite_multiple": { + "one": "%(severalUsers)s rejeitaram os convites deles", + "other": "%(severalUsers)s rejeitaram os convites deles %(count)s vezes" + }, + "rejoined": { + "one": "%(oneUser)s saiu e voltou", + "other": "%(oneUser)s saiu e voltou %(count)s vezes" + }, + "rejoined_multiple": { + "one": "%(severalUsers)s aderiram e saíram", + "other": "%(severalUsers)s aderiram e saíram %(count)s vezes" + }, + "server_acls": { + "one": "%(oneUser)salterou as ACLs do servidor", + "other": "%(oneUser)salterou as ACLs do servidor %(count)s vezes" + }, + "server_acls_multiple": { + "one": "%(severalUsers)salterou as ACLs do servidor", + "other": "%(severalUsers)salterou as ACLs do servidor %(count)s vezes" + }, + "unbanned": { + "one": "foi não banido", + "other": "foi não banido %(count)s vezes" + }, + "unbanned_multiple": { + "one": "foram não banidos", + "other": "foram não banidos %(count)s vezes" + } + }, + "thread_info_basic": "De um tópico", + "typing_indicator": { + "more_users": { + "one": "%(names)s e um outro está a escrever...", + "other": "%(names)s e %(count)s outros estão a escrever" + }, + "one_user": "%(displayName)s está a escrever ...", + "two_users": "%(names)s e %(lastPerson)s estão a escrever …" + }, + "undecryptable_tooltip": "Esta mensagem não pôde ser desencriptada", + "url_preview": { + "close": "Fechar pré-visualização", + "show_n_more": { + "one": "Mostra %(count)s outra pré-visualização", + "other": "Mostra %(count)s outras pré-visualizações" + } + } + }, + "truncated_list_n_more": { + "one": "", + "other": "E %(count)s mais..." + }, + "unsupported_browser": { + "description": "Se continuares, algumas funcionalidades podem deixar de funcionar e existe o risco de perderes dados no futuro. Actualiza o teu browser para continuares a utilizar %(brand)s.", + "title": "%(brand)s não suporta este browser" + }, + "unsupported_server_description": "Este servidor está a utilizar uma versão mais antiga do Matrix. Atualiza para Matrix %(version)s para utilizares %(brand)s sem erros.", + "unsupported_server_title": "O teu servidor não é suportado", + "update": { + "changelog": "Histórico de alterações", + "check_action": "Procurar atualizações", + "checking": "A procurar atualizações…", + "downloading": "A descarregar a atualização...", + "error_encountered": "Erro encontrado (%(errorDetail)s).", + "error_unable_load_commit": "Não é possível carregar os detalhes do commit: %(msg)s", + "new_version_available": "Nova versão disponível. Atualiza agora.", + "no_update": "Nenhuma atualização disponível.", + "release_notes_toast_title": "Novidades", + "see_changes_button": "O que há de novo?", + "toast_description": "Nova versão de%(brand)s está disponível", + "toast_title": "Atualizar%(brand)s", + "unavailable": "Indisponível" + }, + "update_room_access_modal": { + "description": "Para criar uma ligação de partilha, tens de permitir que os convidados entrem nesta sala. Isto pode tornar a sala menos segura. Quando terminares a chamada, podes tornar a sala privada novamente.", + "dont_change_description": "Em alternativa, podes manter a chamada numa sala separada.", + "no_change": "Não quero alterar o nível de acesso.", + "title": "Alterar o nível de acesso à sala" + }, + "upload_failed_generic": "O carregamento do ficheiro '%(fileName)s' falhou.", + "upload_failed_size": "O ficheiro '%(fileName)s' excede o tamanho limite deste homeserver para carregamentos", + "upload_failed_title": "O envio falhou", + "upload_file": { + "cancel_all_button": "Cancelar tudo", + "error_file_too_large": "Este ficheiro é demasiado grande para carregar. O limite de tamanho do ficheiro é %(limit)s mas este ficheiro é %(sizeOfThisFile)s.", + "error_files_too_large": "Estes ficheiros são demasiado grandes para serem carregados. O limite de tamanho do ficheiro é %(limit)s.", + "error_some_files_too_large": "Alguns ficheiros são demasiado grandes para serem carregados. O limite de tamanho dos ficheiros é %(limit)s.", + "error_title": "Erro de carregamento", + "title": "Carregar ficheiros", + "title_progress": "Carrega ficheiros (%(current)s de %(total)s)", + "upload_all_button": "Carregar tudo", + "upload_n_others_button": { + "one": "Carrega %(count)s outro ficheiro", + "other": "Carrega %(count)s outros ficheiros" + } + }, + "user_info": { + "admin_tools_section": "Ferramentas de Administração", + "ban_button_room": "Banir da sala", + "ban_button_space": "Banir do espaço", + "ban_room_confirm_title": "Banir de %(roomName)s", + "ban_space_everything": "Baní-los de tudo que eu estiver autorizado", + "ban_space_specific": "Bani-los de coisas específicas que estou autorizado", + "count_of_sessions": { + "one": "%(count)s sessão", + "other": "%(count)s sessões" + }, + "count_of_verified_sessions": { + "one": "1 sessão verificada", + "other": "%(count)s sessões verificadas" + }, + "deactivate_confirm_action": "Desativar utilizador", + "deactivate_confirm_description": "Se desactivares este utilizador, ele sairá da tua conta e não poderá voltar a entrar. Além disso, sai de todas as salas em que se encontra. Esta ação não pode ser revertida. Tens a certeza de que queres desativar este utilizador?", + "deactivate_confirm_title": "Desativar utilizador?", + "dehydrated_device_enabled": "Dispositivo offline ativado", + "demote_button": "Despromove", + "demote_self_confirm_description_space": "Não poderás desfazer esta alteração, uma vez que te estás a despromover. Se fores o último utilizador privilegiado no espaço, será impossível recuperar os privilégios.", + "demote_self_confirm_room": "Não poderás desfazer esta alteração, uma vez que te estás a despromover. Se fores o último utilizador privilegiado na sala, será impossível recuperar os privilégios.", + "demote_self_confirm_title": "Despromover-se a si próprio ?", + "disinvite_button_room": "Desconvidar da sala", + "disinvite_button_room_name": "Desconvidar de %(roomName)s", + "disinvite_button_space": "Desconvidar do espaço", + "edit_own_devices": "Editar dispositivos", + "error_ban_user": "Não foi possível banir o/a usuário/a", + "error_deactivate": "Falha ao desativar o utilizador", + "error_kicking_user": "Falha ao remover o utilizador", + "error_mute_user": "Não foi possível remover notificações da/do usuária/o", + "error_revoke_3pid_invite_description": "Não foi possível revogar o convite. O servidor pode estar com um problema temporário ou não tens permissões suficientes para revogar o convite.", + "error_revoke_3pid_invite_title": "Falha ao revogar o convite", + "hide_sessions": "Ocultar sessões", + "hide_verified_sessions": "Ocultar sessões verificadas", + "ignore_button": "Ignorar", + "ignore_confirm_description": "Todas as mensagens e convites deste utilizador serão ocultados. Tens a certeza de que queres ignorá-los?", + "ignore_confirm_title": "Ignora %(user)s", + "invited_by": "Convidado por %(sender)s", + "jump_to_rr_button": "Salta para ler o recibo", + "kick_button_room": "Remover da sala", + "kick_button_room_name": "Remover de %(roomName)s", + "kick_button_space": "Remover do espaço", + "kick_button_space_everything": "Retira-os de tudo o que eu puder", + "kick_space_specific": "Retira-os de coisas específicas que eu sou capaz de fazer", + "kick_space_warning": "Continuam a poder aceder a tudo o que não és administrador.", + "promote_warning": "Você não poderá desfazer esta mudança, pois estará dando a este(a) usuário(a) o mesmo nível de permissões que você.", + "redact": { + "confirm_button": { + "one": "Remover 1 mensagem", + "other": "Remove %(count)s mensagens" + }, + "confirm_description_1": { + "one": "Estás prestes a remover a mensagem %(count)s por %(user)s. Isto irá removê-las permanentemente para todos os participantes na conversa. Queres continuar?", + "other": "Estás prestes a remover as mensagens %(count)s por %(user)s. Isto irá removê-las permanentemente para todos os participantes na conversa. Queres continuar?" + }, + "confirm_description_2": "Para uma grande quantidade de mensagens, isto pode demorar algum tempo. Entretanto, não actualizes o teu cliente.", + "confirm_keep_state_explainer": "Desmarca se também quiseres remover mensagens do sistema sobre este utilizador (por exemplo, mudança de membro, mudança de perfil...)", + "confirm_keep_state_label": "Preserva as mensagens do sistema", + "confirm_title": "Remove as mensagens recentes de %(user)s", + "no_recent_messages_description": "Tenta deslocar-te para cima na linha do tempo para ver se há alguma anterior.", + "no_recent_messages_title": "Não foram encontradas mensagens recentes de %(user)s " + }, + "redact_button": "Remover mensagens recentes", + "revoke_invite": "Revogar convite", + "room_encrypted": "As mensagens nesta sala são encriptadas de ponta a ponta.", + "room_encrypted_detail": "As tuas mensagens estão protegidas e só tu e o destinatário têm as chaves únicas para as desbloquear.", + "room_unencrypted": "As mensagens nesta sala não são encriptadas de ponta a ponta.", + "room_unencrypted_detail": "Nas salas encriptadas, as tuas mensagens estão seguras e só tu e o destinatário têm as chaves únicas para as desbloquear.", + "send_message": "Enviar mensagem", + "share_button": "Partilhar ligação com o utilizador", + "unban_button_room": "Desbanimento da sala", + "unban_button_space": "Desbanir do espaço", + "unban_room_confirm_title": "Desbanir de %(roomName)s", + "unban_space_everything": "Desbani-los de tudo que eu estiver autorizado", + "unban_space_specific": "Desbani-los de coisas específicas que estou autorizado", + "unban_space_warning": "Não poderão aceder a nada que não seja administrado por ti.", + "unignore_button": "Designorar", + "verify_button": "Verificar utilizador", + "verify_explainer": "Para maior segurança, verifica este utilizador através de um código de utilização única em ambos os dispositivos." + }, + "user_menu": { + "link_new_device": "Vincular novo dispositivo", + "settings": "Todas as definições", + "switch_theme_dark": "Mudar para o modo escuro", + "switch_theme_light": "Mudar para o modo claro" + }, + "voip": { + "already_in_call": "Já em chamada", + "already_in_call_person": "Já está em chamada com esta pessoa.", + "answered_elsewhere": "Atendida noutro lado", + "answered_elsewhere_description": "A chamada foi atendida noutro dispositivo.", + "call_failed": "A chamada falhou", + "call_failed_description": "Não foi possível estabelecer a chamada", + "call_failed_media": "A chamada falhou porque não foi possível aceder à câmera ou microfone. Verifique se:", + "call_failed_media_applications": "Nenhuma outra aplicação está a utilizar a câmera", + "call_failed_media_connected": "Um microfone e uma câmera estão conectados e configurados corretamente", + "call_failed_media_permissions": "É concedida autorização para utilizar a câmera", + "call_failed_microphone": "A chamada falhou porque o microfone não está acessível. Verifique que tem um microfone ligado e correctamente configurado.", + "call_held": "%(peerName)s reteve a chamada", + "call_held_resume": "Aguentaste a chamada Resume", + "call_held_switch": "Mantiveste a chamada Switch", + "call_toast_unknown_room": "Sala desconhecida", + "camera_disabled": "A tua câmara está desligada", + "camera_enabled": "A tua câmara ainda está ativada", + "cannot_call_yourself_description": "Você não pode iniciar uma chamada.", + "close_lobby": "Fechar lobby", + "connecting": "A conectar", + "connection_lost": "A conexão ao servidor foi perdida", + "connection_lost_description": "Não pode fazer chamadas sem uma conexão ao servidor.", + "consulting": "Consultando com %(transferTarget)s. Transferir para %(transferee)s ", + "default_device": "Dispositivo padrão", + "dial": "Discar", + "dialpad": "Teclado de discagem", + "disable_camera": "Desliga a câmara", + "disable_microphone": "Silenciar Microfone", + "disabled_no_one_here": "Não há ninguém aqui para ligar", + "disabled_no_perms_start_video_call": "Não tens autorização para iniciar chamadas de vídeo", + "disabled_no_perms_start_voice_call": "Não tens autorização para iniciar chamadas de voz", + "disabled_ongoing_call": "Chamada em curso", + "element_call": "Element Call", + "enable_camera": "Liga a câmara", + "enable_microphone": "Ativar Som do Microfone", + "expand": "Volta à chamada", + "get_call_link": "Partilhar a ligação de chamada", + "hangup": "Desligar", + "hide_sidebar_button": "Ocultar barra lateral", + "input_devices": "Dispositivos de entrada", + "jitsi_call": "Conferência Jitsi", + "join_button_tooltip_call_full": "Desculpa, neste momento, esta chamada está cheia", + "join_button_tooltip_connecting": "A conectar...", + "legacy_call": "Chamada Legacy", + "maximise": "Preenche o ecrã", + "maximise_call": "Maximiza a chamada", + "metaspace_video_rooms": { + "conference_room_section": "Conferências" + }, + "minimise_call": "Minimiza a chamada", + "misconfigured_server": "Chamada falhada devido a um erro de configuração do servidor", + "misconfigured_server_description": "Peça ao administrador do seu servidor inicial (%(homeserverDomain)s) de configurar um servidor TURN para que as chamadas funcionem fiavelmente.", + "misconfigured_server_fallback": "Em alternativa, pode tentar utilizar o servidor público em , mas não será tão fiável e irá partilhar o seu endereço IP com esse servidor. Também pode gerir isto nas Definições.", + "misconfigured_server_fallback_accept": "Tente usar %(server)s", + "more_button": "Mais", + "msisdn_lookup_failed": "Não foi possível procurar o número de telefone", + "msisdn_lookup_failed_description": "Ocorreu um erro ao procurar o número de telefone", + "msisdn_transfer_failed": "Não foi possível transferir a chamada", + "n_people_joined": { + "one": "%(count)spessoa aderiu", + "other": "%(count)spessoas aderiram" + }, + "no_audio_input_description": "Não encontrámos um microfone no teu dispositivo. Verifica as tuas definições e tenta novamente.", + "no_audio_input_title": "Nenhum microfone encontrado", + "no_media_perms_description": "Você talvez precise autorizar manualmente que o %(brand)s acesse seu microfone e webcam", + "no_media_perms_title": "Não há permissões para o uso de vídeo/áudio no seu navegador", + "no_permission_conference": "Permissão Requerida", + "no_permission_conference_description": "Não tem autorização para iniciar uma chamada de conferência nesta sala", + "on_hold": "%(name)s em espera", + "output_devices": "Dispositivos de saída", + "screenshare_monitor": "Partilha todo o ecrã", + "screenshare_title": "Partilhar conteúdo", + "screenshare_window": "Janela da aplicação", + "show_sidebar_button": "Mostrar barra lateral", + "silence": "Chamada de silêncio", + "silenced": "Notificações silenciadas", + "start_screenshare": "Começa a partilhar o teu ecrã", + "stop_screenshare": "Pára de partilhar o teu ecrã", + "too_many_calls": "Demasiadas Chamadas", + "too_many_calls_description": "Atingiu o número máximo de chamadas em simultâneo.", + "transfer_consult_first_label": "Consulta primeiro", + "transfer_failed": "A Transferência Falhou", + "transfer_failed_description": "Falha ao transferir chamada", + "unable_to_access_audio_input_description": "Não foi possível aceder ao teu microfone. Verifica as definições do teu browser e tenta novamente.", + "unable_to_access_audio_input_title": "Não é possível aceder ao teu microfone", + "unable_to_access_media": "Não é possível aceder à câmera / microfone", + "unable_to_access_microphone": "Não é possível aceder ao microfone", + "unknown_caller": "Chamada não identificada", + "unknown_person": "pessoa desconhecida", + "unsilence": "Som ligado", + "unsupported": "Chamadas não são suportadas", + "unsupported_browser": "Não pode fazer chamadas neste navegador.", + "user_busy": "Utilizador ocupado", + "user_busy_description": "O utilizador para o qual tentou ligar está ocupado.", + "user_is_presenting": "%(sharerName)s está apresentando", + "video_call": "Chamada de vídeo", + "video_call_started": "Chamada de vídeo iniciada", + "video_call_using": "Video-chamada usando:", + "voice_call": "Chamada de voz", + "you_are_presenting": "Estás a apresentar" + }, + "widget": { + "added_by": "Widget adicionado por", + "capabilities_dialog": { + "content_starting_text": "Este widget gostaria de:", + "decline_all_permission": "Recusar Todos", + "remember_Selection": "Lembra-te da minha seleção para este widget", + "title": "Aprova as permissões do widget" + }, + "capability": { + "always_on_screen_generic": "Permanece no teu ecrã durante a execução", + "always_on_screen_viewing_another_room": "Permanece no teu ecrã quando estás a ver outra sala, ao executar", + "any_room": "O acima, mas em qualquer sala onde te juntes ou sejas convidado", + "byline_empty_state_key": "com uma chave de estado vazia", + "byline_state_key": "com a chave de estado %(stateKey)s", + "capability": "A capacidade do %(capability)s ", + "change_avatar_active_room": "Altera o avatar da tua sala ativa", + "change_avatar_this_room": "Altera o avatar desta sala", + "change_name_active_room": "Altera o nome da tua sala ativa", + "change_name_this_room": "Altera o nome desta sala", + "change_topic_active_room": "Altera o tópico da tua sala ativa", + "change_topic_this_room": "Altera o tópico desta sala", + "receive_membership_active_room": "Vê quando as pessoas entram, saem ou são convidadas para a tua sala ativa", + "receive_membership_this_room": "Vê quando as pessoas entram, saem ou são convidadas para esta sala", + "remove_ban_invite_leave_active_room": "Remover, banir ou convidar pessoas para a tua sala ativa e obrigar-te a sair", + "remove_ban_invite_leave_this_room": "Remover, banir ou convidar pessoas para esta sala e obrigar-te a sair", + "see_avatar_change_active_room": "Vê quando o avatar muda na tua sala ativa", + "see_avatar_change_this_room": "Vê quando o avatar muda nesta sala", + "see_event_type_sent_active_room": "Vê eventos %(eventType)s publicados na tua sala ativa", + "see_event_type_sent_this_room": "Vê os eventos %(eventType)s publicados nesta sala", + "see_images_sent_active_room": "Vê imagens publicadas na tua sala ativa", + "see_images_sent_this_room": "Vê as imagens publicadas nesta sala", + "see_messages_sent_active_room": "Vê mensagens publicadas na tua sala ativa", + "see_messages_sent_this_room": "Vê mensagens enviadas para esta sala", + "see_msgtype_sent_active_room": "Vê mensagens %(msgtype)s publicadas na tua sala ativa", + "see_msgtype_sent_this_room": "Vê mensagens %(msgtype)s publicadas nesta sala", + "see_name_change_active_room": "Vê quando o nome muda na tua sala ativa", + "see_name_change_this_room": "Vê quando o nome muda nesta sala", + "see_sent_emotes_active_room": "Vê os gestos publicados na tua sala ativa", + "see_sent_emotes_this_room": "Vê os emotes publicados nesta sala", + "see_sent_files_active_room": "Vê ficheiros gerais publicados na tua sala ativa", + "see_sent_files_this_room": "Vê ficheiros gerais colocados nesta sala", + "see_sticker_posted_active_room": "Vê quando alguém coloca um autocolante na tua sala ativa", + "see_sticker_posted_this_room": "Vê quando um autocolante é publicado nesta sala", + "see_text_messages_sent_active_room": "Vê mensagens de texto publicadas na tua sala ativa", + "see_text_messages_sent_this_room": "Vê as mensagens de texto publicadas nesta sala", + "see_topic_change_active_room": "Vê quando o tópico muda na tua sala ativa", + "see_topic_change_this_room": "Vê quando o tópico muda nesta sala", + "see_videos_sent_active_room": "Vê vídeos publicados na tua sala ativa", + "see_videos_sent_this_room": "Vê os vídeos publicados nesta sala", + "send_emotes_active_room": "Envia gestos como tu na tua sala ativa", + "send_emotes_this_room": "Envia gestos como tu nesta sala", + "send_event_type_active_room": "Envia eventos %(eventType)s como tu na tua sala ativa", + "send_event_type_this_room": "Envia %(eventType)s eventos como tu nesta sala", + "send_files_active_room": "Envia ficheiros gerais como tu na tua sala ativa", + "send_files_this_room": "Envia ficheiros gerais como tu nesta sala", + "send_images_active_room": "Envia imagens como tu na tua sala ativa", + "send_images_this_room": "Envia imagens como tu nesta sala", + "send_messages_active_room": "Envia mensagens como tu na tua sala ativa", + "send_messages_this_room": "Envia mensagens como tu nesta sala", + "send_msgtype_active_room": "Envia mensagens %(msgtype)s como tu na tua sala ativa", + "send_msgtype_this_room": "Envia %(msgtype)s mensagens como tu nesta sala", + "send_stickers_active_room": "Envia autocolantes para a tua sala ativa", + "send_stickers_active_room_as_you": "Envia autocolantes para a tua sala ativa enquanto tu próprio", + "send_stickers_this_room": "Envia autocolantes para esta sala", + "send_stickers_this_room_as_you": "Envia autocolantes para esta sala enquanto tu próprio", + "send_text_messages_active_room": "Envia mensagens de texto como tu na tua sala ativa", + "send_text_messages_this_room": "Envia mensagens de texto como tu nesta sala", + "send_videos_active_room": "Envia vídeos como tu na tua sala ativa", + "send_videos_this_room": "Envia vídeos como tu nesta sala", + "specific_room": "O acima referido, mas também em ", + "switch_room": "Altera a sala que estás a ver", + "switch_room_message_user": "Altera a sala, a mensagem ou o utilizador que estás a ver" + }, + "close_to_view_right_panel": "Fecha este widget para o veres neste painel", + "context_menu": { + "delete": "Apagar widget", + "delete_warning": "A eliminação de um widget remove-o para todos os utilizadores desta sala. Tens a certeza de que queres apagar este widget?", + "move_left": "Mover para a esquerda", + "move_right": "Mover para a direita", + "remove": "Remover para todos", + "revoke": "Revogar permissões", + "screenshot": "Tira uma fotografia", + "start_audio_stream": "Iniciar transmissão de áudio" + }, + "cookie_warning": "Este widget pode utilizar cookies.", + "error_hangup_description": "Foste desligado da chamada. (Erro: %(message)s)", + "error_hangup_title": "Conexão perdida", + "error_loading": "Erro ao carregar o Widget", + "error_mixed_content": "Erro - Conteúdo misto", + "error_need_invite_permission": "Para fazer isso, você tem que ter permissão para convidar outras pessoas.", + "error_need_kick_permission": "Precisa ter permissão de expulsar utilizadores para fazer isso.", + "error_need_to_be_logged_in": "Você tem que estar logado.", + "error_unable_start_audio_stream_description": "Não é possível iniciar a transmissão de áudio.", + "error_unable_start_audio_stream_title": "Falha ao iniciar a transmissão ao vivo", + "modal_data_warning": "Os dados neste ecrã são partilhados com %(widgetDomain)s", + "modal_title_default": "Widget Modal", + "no_name": "Aplicação desconhecida", + "open_id_permissions_dialog": { + "remember_selection": "Lembra-te disto", + "starting_text": "O widget verificará o teu ID de utilizador, mas não poderá executar ações por ti:", + "title": "Permite que este widget verifique a tua identidade" + }, + "popout": "Widget de popout", + "set_room_layout": "Define a disposição do meu quarto para todos", + "shared_data_avatar": "URL da tua imagem de perfil", + "shared_data_device_id": "O teu ID de dispositivo", + "shared_data_lang": "A tua língua", + "shared_data_mxid": "O teu ID de utilizador", + "shared_data_name": "O teu nome de exibição", + "shared_data_room_id": "ID da sala", + "shared_data_theme": "O teu tema", + "shared_data_url": "%(brand)s URL", + "shared_data_warning": "A utilização deste widget pode partilhar dados com %(widgetDomain)s.", + "shared_data_warning_im": "A utilização deste widget pode partilhar dados com %(widgetDomain)s e o teu gestor de integração.", + "shared_data_widget_id": "ID do widget", + "unencrypted_warning": "Os widgets não utilizam encriptação de mensagens.", + "unmaximise": "Não maximizar", + "unpin_to_view_right_panel": "Desfixa este widget para o veres neste painel" + }, + "zxcvbn": { + "suggestions": { + "allUppercase": "As maiúsculas são quase tão fáceis de adivinhar como as minúsculas", + "anotherWord": "Acrescentar mais uma ou duas palavras. Palavras invulgares são melhores.", + "associatedYears": "Evita os anos que estão associados a ti", + "capitalization": "A capitalização não ajuda muito", + "dates": "Evita datas e anos que estejam associados a ti", + "l33t": "As substituições previsíveis como \"@\" em vez de \"a\" não ajudam muito", + "longerKeyboardPattern": "Utiliza um padrão de teclado mais longo com mais voltas", + "noNeed": "Não precisas de símbolos, dígitos ou letras maiúsculas", + "pwned": "Se utilizares esta palavra-passe noutro local, deves alterá-la.", + "recentYears": "Evita anos recentes", + "repeated": "Evita palavras e caracteres repetidos", + "reverseWords": "As palavras invertidas não são muito mais difíceis de adivinhar", + "sequences": "Evita as sequências", + "useWords": "Usa poucas palavras, evita frases comuns" + }, + "warnings": { + "common": "Esta é uma palavra-passe muito comum", + "commonNames": "Os nomes comuns e os apelidos são fáceis de adivinhar", + "dates": "As datas são muitas vezes fáceis de adivinhar", + "extendedRepeat": "Repetições como \"abcabcabc\" são apenas ligeiramente mais difíceis de adivinhar do que \"abc\"", + "keyPattern": "Os padrões curtos do teclado são fáceis de adivinhar", + "namesByThemselves": "Os nomes e apelidos por si só são fáceis de adivinhar", + "pwned": "A tua palavra-passe foi exposta por uma violação de dados na Internet.", + "recentYears": "Anos recentes são fáceis de adivinhar.", + "sequences": "Sequências como abc ou 6543 são fáceis de adivinhar", + "similarToCommon": "Isto é semelhante a uma palavra-passe comummente utilizada", + "simpleRepeat": "Repetições como \"aaa\" são fáceis de adivinhar", + "straightRow": "As linhas rectas de teclas são fáceis de adivinhar", + "topHundred": "Esta é uma das 100 palavras-passe mais comuns", + "topTen": "Esta é uma das 10 palavras-passe mais comuns", + "userInputs": "Não deve haver quaisquer dados pessoais ou relacionados com a página.", + "wordByItself": "Uma palavra por si só é fácil de adivinhar" + } + } +} diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json index 555cb3d1f9b..87a6271abd2 100644 --- a/src/i18n/strings/ru.json +++ b/src/i18n/strings/ru.json @@ -230,7 +230,6 @@ "oidc": { "error_title": "Нам не удалось войти в систему", "generic_auth_error": "Во время аутентификации что-то пошло не так. Перейдите на страницу входа и попробуйте еще раз.", - "logout_redirect_warning": "Вы будете перенаправлены к поставщику аутентификации вашего сервера для завершения выхода из системы.", "missing_or_invalid_stored_state": "Мы попросили браузер запомнить, какой домашний сервер вы используете для входа в систему, но, к сожалению, ваш браузер забыл об этом. Перейдите на страницу входа и попробуйте ещё раз." }, "password_field_keep_going_prompt": "Продолжить", @@ -1380,8 +1379,6 @@ "notification_settings_beta_caption": "Представляем вам более простой способ изменения настроек уведомлений. Настройте свои настройки так %(brand)s, как вам удобно.", "notification_settings_beta_title": "Настройки уведомлений", "notifications": "Включить панель уведомлений в заголовке комнаты", - "oidc_native_flow": "Встроенная аутентификация OIDC", - "oidc_native_flow_description": "⚠ ВНИМАНИЕ: Экспериментально. Используйте встроенную аутентификацию OIDC, если она поддерживается сервером.", "render_reaction_images": "Обработка пользовательских изображений в реакциях", "render_reaction_images_description": "Иногда их называют \"пользовательскими эмодзи\".", "report_to_moderators": "Пожаловаться модераторам", diff --git a/src/i18n/strings/sk.json b/src/i18n/strings/sk.json index eab25be92bb..0d6adfb0186 100644 --- a/src/i18n/strings/sk.json +++ b/src/i18n/strings/sk.json @@ -230,7 +230,6 @@ "oidc": { "error_title": "Nemohli sme vás prihlásiť", "generic_auth_error": "Počas overenia sa niečo pokazilo. Prejdite na stránku prihlásenia a skúste to znova.", - "logout_redirect_warning": "Na dokončenie odhlásenia budete presmerovaní na vášho poskytovateľa autentifikácie servera.", "missing_or_invalid_stored_state": "Požiadali sme prehliadač, aby si zapamätal, ktorý domovský server používate na prihlásenie, ale bohužiaľ váš prehliadač to zabudol. Prejdite na stránku prihlásenia a skúste to znova." }, "password_field_keep_going_prompt": "Pokračujte…", @@ -1385,8 +1384,6 @@ "notification_settings_beta_caption": "Predstavujeme jednoduchší spôsob zmeny nastavení oznámení. Prispôsobte si svoju aplikáciu %(brand)s, presne podľa svojich predstáv.", "notification_settings_beta_title": "Nastavenia oznámení", "notifications": "Povolenie panelu oznámení v záhlaví miestnosti", - "oidc_native_flow": "Povoliť nové natívne toky OIDC (v štádiu aktívneho vývoja)", - "oidc_native_flow_description": "⚠ VAROVANIE: Experimentálne. Použite natívne overenie OIDC, ak je podporované serverom.", "render_reaction_images": "Vykresľovať vlastné obrázky v reakciách", "render_reaction_images_description": "Niekedy sa označujú ako „vlastné emotikony“.", "report_to_moderators": "Nahlásiť moderátorom", diff --git a/src/i18n/strings/sv.json b/src/i18n/strings/sv.json index e24878b5316..e94ac8a2bce 100644 --- a/src/i18n/strings/sv.json +++ b/src/i18n/strings/sv.json @@ -110,6 +110,7 @@ "save": "Spara", "search": "Sök", "send_report": "Skicka rapport", + "set_avatar": "Ställ in profilbild", "share": "Dela", "show": "Visa", "show_advanced": "Visa avancerat", @@ -133,6 +134,7 @@ "update": "Uppdatera", "upgrade": "Uppgradera", "upload": "Ladda upp", + "upload_file": "Ladda upp fil", "verify": "Verifiera", "view": "Visa", "view_all": "Visa alla", @@ -227,6 +229,7 @@ }, "misconfigured_body": "Be din %(brand)s-administratör att kolla din konfiguration efter felaktiga eller duplicerade poster.", "misconfigured_title": "Din %(brand)s är felkonfigurerad", + "mobile_create_account_title": "Du håller på att skapa ett konto på%(hsName)s", "msisdn_field_description": "Andra användare kan bjuda in dig till rum med dina kontaktuppgifter", "msisdn_field_label": "Telefon", "msisdn_field_number_invalid": "Det telefonnumret ser inte korrekt ut, vänligen kolla det och försök igen", @@ -235,7 +238,6 @@ "oidc": { "error_title": "Vi kunde inte logga in dig", "generic_auth_error": "Något gick fel under autentiseringen. Gå till inloggningssidan och försök igen.", - "logout_redirect_warning": "Du kommer att omdirigeras till din servers autentiseringsleverantör för att slutföra utloggningen.", "missing_or_invalid_stored_state": "Vi bad webbläsaren att komma ihåg vilken hemserver du använder för att logga in, men tyvärr har din webbläsare glömt det. Gå till inloggningssidan och försök igen." }, "password_field_keep_going_prompt": "Fortsätter …", @@ -245,12 +247,40 @@ "phone_label": "Telefon", "phone_optional_label": "Telefon (valfritt)", "qr_code_login": { + "check_code_explainer": "Detta kommer att verifiera att anslutningen till din andra enhet är säker.", + "check_code_heading": "Ange numret som visas på din andra enhet", + "check_code_input_label": "2-siffrig kod", + "check_code_mismatch": "Siffrorna stämmer inte överens", "completing_setup": "Slutför inställning av din nya enhet", + "error_etag_missing": "Ett oväntat fel inträffade. Detta kan bero på felkonfiguration av webbläsartillägg, proxyserver eller server.", + "error_expired": "Inloggningen har upphört att gälla. Försök igen.", + "error_expired_title": "Inloggningen slutfördes inte i tid", + "error_insecure_channel_detected": "En säker anslutning kunde inte göras till den nya enheten. Dina befintliga enheter är fortfarande säkra och du behöver inte oroa dig för dem.", + "error_insecure_channel_detected_instructions": "Vad händer nu?", + "error_insecure_channel_detected_instructions_1": "Försök logga in på den andra enheten igen med en QR-kod om detta var ett nätverksproblem", + "error_insecure_channel_detected_instructions_2": "Om du stöter på samma problem, prova ett annat wifi-nätverk eller använd din mobildata istället för wifi", + "error_insecure_channel_detected_instructions_3": "Om det inte fungerar loggar du in manuellt", + "error_insecure_channel_detected_title": "Anslutningen är inte säker", + "error_other_device_already_signed_in": "Du behöver inte göra något mer.", + "error_other_device_already_signed_in_title": "Din andra enhet är redan inloggad", "error_rate_limited": "För många försök under för kort tid. Vänta ett tag innan du försöker igen.", - "error_unexpected": "Ett oväntade fel inträffade.", - "scan_code_instruction": "Skanna QR-koden nedan med din andra enhet som är utloggad.", - "scan_qr_code": "Skanna QR-kod", - "select_qr_code": "Välj '%(scanQRCode)s'", + "error_unexpected": "Ett oväntat fel inträffade. Begäran om att ansluta din andra enhet har avbrutits.", + "error_unsupported_protocol": "Den här enheten stöder inte inloggning på den andra enheten med en QR-kod.", + "error_unsupported_protocol_title": "Annan enhet är inte kompatibel", + "error_user_cancelled": "Inloggningen avbröts på den andra enheten.", + "error_user_cancelled_title": "Inloggningsbegäran avbröts", + "error_user_declined": "Du eller kontoleverantören har avvisat inloggningsbegäran.", + "error_user_declined_title": "Inloggningen nekades", + "follow_remaining_instructions": "Följ de återstående instruktionerna", + "open_element_other_device": "Öppna %(brand)s på din andra enhet", + "point_the_camera": "Skanna QR-koden som visas här", + "scan_code_instruction": "Skanna QR-koden med en annan enhet", + "scan_qr_code": "Logga in med QR-kod", + "security_code": "Säkerhetskod", + "security_code_prompt": "Om du blir ombedd anger du koden nedan på din andra enhet.", + "select_qr_code": "Välj \"%(scanQRCode)s”", + "unsupported_explainer": "Din kontoleverantör stöder inte inloggning på en ny enhet med en QR-kod.", + "unsupported_heading": "QR-kod stöds inte", "waiting_for_device": "Väntar på att enheter loggar in" }, "register_action": "Skapa konto", @@ -339,6 +369,8 @@ "email_resend_prompt": "Fick du inte den? Skicka igen", "email_resent": "Skickade igen!", "fallback_button": "Starta autentisering", + "mas_cross_signing_reset_cta": "Gå till ditt konto", + "mas_cross_signing_reset_description": "Återställ din identitet via din kontoleverantör och kom sedan tillbaka och klicka på ”Försök igen”.", "msisdn": "Ett SMS har skickats till %(msisdn)s", "msisdn_token_incorrect": "Felaktig token", "msisdn_token_prompt": "Vänligen ange koden det innehåller:", @@ -429,6 +461,7 @@ "beta": "Beta", "camera": "Kamera", "cameras": "Kameror", + "cancel": "Avbryt", "capabilities": "Förmågor", "copied": "Kopierat!", "credits": "Medverkande", @@ -470,6 +503,7 @@ "matrix": "Matrix", "message": "Meddelande", "message_layout": "Meddelandearrangemang", + "message_timestamp_invalid": "Ogiltig tidsstämpel", "microphone": "Mikrofon", "model": "Modell", "modern": "Modernt", @@ -511,6 +545,8 @@ "room": "Rum", "room_name": "Rumsnamn", "rooms": "Rum", + "save": "Spara", + "saved": "Sparat", "saving": "Sparar …", "secure_backup": "Säker säkerhetskopiering", "security": "Säkerhet", @@ -539,6 +575,7 @@ "unnamed_room": "Namnlöst rum", "unnamed_space": "Namnlöst utrymme", "unverified": "Overifierad", + "updating": "Uppdaterar...", "user": "Användare", "user_avatar": "Profilbild", "username": "Användarnamn", @@ -867,6 +904,8 @@ "warning": "Om du inte har ställt in den nya återställningsmetoden kan en angripare försöka komma åt ditt konto. Byt ditt kontolösenord och ställ in en ny återställningsmetod omedelbart i inställningarna." }, "not_supported": "", + "pinned_identity_changed": "%(displayName)ss (%(userId)s ) identitet verkar ha ändrats. Läs mer", + "pinned_identity_changed_no_displayname": "%(userId)s:s identitet verkar ha ändrats. Läs mer", "recovery_method_removed": { "description_1": "Den här sessionen har detekterat att din säkerhetsfras och -nyckel för säkra meddelanden har tagits bort.", "description_2": "Om du gjorde det av misstag kan du ställa in säkra meddelanden på den här sessionen som krypterar sessionens meddelandehistorik igen med en ny återställningsmetod.", @@ -929,6 +968,7 @@ "qr_reciprocate_same_shield_device": "Nästan klar! Visar din andra enhet samma sköld?", "qr_reciprocate_same_shield_user": "Nästan klar! Visar %(displayName)s samma sköld?", "request_toast_accept": "Verifiera session", + "request_toast_accept_user": "Verifiera användare", "request_toast_decline_counter": "Ignorera (%(counter)s)", "request_toast_detail": "%(deviceId)s från %(ip)s", "reset_proceed_prompt": "Fortsätt återställning", @@ -1060,7 +1100,15 @@ "you": "Du reagerade med %(reaction)s till %(message)s" }, "m.sticker": "%(senderName)s: %(stickerName)s", - "m.text": "%(senderName)s: %(message)s" + "m.text": "%(senderName)s: %(message)s", + "prefix": { + "audio": "Ljud", + "file": "Fil", + "image": "Bild", + "poll": "Omröstning", + "video": "Video" + }, + "preview": "%(prefix)s: %(preview)s" }, "export_chat": { "cancelled": "Exportering avbruten", @@ -1183,7 +1231,19 @@ "other": "I %(spaceName)s och %(count)s andra utrymmen." }, "incompatible_browser": { - "title": "Webbläsaren stöds ej" + "continue": "Fortsätt ändå", + "description": "%(brand)sanvänder vissa webbläsarfunktioner som inte är tillgängliga i din nuvarande webbläsare. %(detail)s", + "detail_can_continue": "Om du fortsätter kan vissa funktioner sluta fungera och det finns en risk att du kan förlora data i framtiden.", + "detail_no_continue": "Försök uppdatera den här webbläsaren om du inte använder den senaste versionen och försök igen.", + "learn_more": "Läs mer", + "linux": "Linux", + "macos": "Mac", + "supported_browsers": "För bästa upplevelse, använd Chrome, Firefox, Edge, eller Safari.", + "title": "Webbläsaren stöds ej", + "use_desktop_heading": "Använd %(brand)s skrivbord istället", + "use_mobile_heading": "Använd %(brand)s på mobilen istället", + "use_mobile_heading_after_desktop": "Eller använd vår mobilapp", + "windows": "Windows (%(bits)s -bit)" }, "info_tooltip_title": "Information", "integration_manager": { @@ -1307,12 +1367,14 @@ "navigate_next_message_edit": "Navigera till nästa meddelande att redigera", "navigate_prev_history": "Föregående nyligen besökta rum eller utrymme", "navigate_prev_message_edit": "Navigera till förra meddelandet att redigera", + "next_landmark": "Gå till nästa landmärke", "next_room": "Nästa rum eller DM", "next_unread_room": "Nästa olästa rum eller DM", "number": "[nummer]", "open_user_settings": "Öppna användarinställningar", "page_down": "Page Down", "page_up": "Page Up", + "prev_landmark": "Gå till föregående landmärke", "prev_room": "Förra rummet eller DM:en", "prev_unread_room": "Förra olästa rummet eller DM:en", "room_list_collapse_section": "Kollapsa rumslistsektionen", @@ -1357,8 +1419,11 @@ "dynamic_room_predecessors": "Dynamiska rumsföregångare", "dynamic_room_predecessors_description": "Aktivera MSC3946 (för att stöda sen-ankomna rumsarkiv)", "element_call_video_rooms": "Element Call videorum", + "exclude_insecure_devices": "Uteslut osäkra enheter när du skickar/tar emot meddelanden", + "exclude_insecure_devices_description": "När det här läget är aktiverat delas inte krypterade meddelanden med obekräftade enheter, och meddelanden från obekräftade enheter visas som ett fel. Observera att om du aktiverar det här läget kanske du inte kan kommunicera med användare som inte har verifierat sina enheter.", "experimental_description": "Känner du dig äventyrlig? Pröva våra senaste idéer under utveckling. Dessa funktioner är inte slutförda; de kan vara instabila, kan ändras, eller kan tas bort helt. Läs mer.", "experimental_section": "Tidiga förhandstittar", + "extended_profiles_msc_support": "Kräver att din server har stöd för MSC4133", "feature_disable_call_per_sender_encryption": "Inaktivera kryptering per avsändare för Element Call", "feature_wysiwyg_composer_description": "Använd rik text istället för Markdown i meddelanderedigeraren.", "group_calls": "Ny gruppsamtalsupplevelse", @@ -1372,6 +1437,7 @@ "group_spaces": "Utrymmen", "group_themes": "Teman", "group_threads": "Trådar", + "group_ui": "Användargränssnitt", "group_voip": "Röst & video", "group_widgets": "Widgets", "hidebold": "Dölj aviseringspunkt (visa bara räknarmärken)", @@ -1391,8 +1457,7 @@ "notification_settings_beta_caption": "Vi introducerar ett enklare sätt att ändra dina aviseringsinställningar. Anpassa din %(brand)s precis som du vill ha den.", "notification_settings_beta_title": "Aviseringsinställningar", "notifications": "Aktivera aviseringspanelen i rumshuvudet", - "oidc_native_flow": "Inbyggd OIDC-autentisering", - "oidc_native_flow_description": "⚠ VARNING: Experimentellt. Använd inbyggd OIDC-autentisering när den stöds av servern.", + "release_announcement": "Releasemeddelande", "render_reaction_images": "Återge anpassade bilder i reaktioner", "render_reaction_images_description": "Ibland kallat för ”anpassade emojis”.", "report_to_moderators": "Rapportera till moderatorer", @@ -1400,7 +1465,7 @@ "sliding_sync": "Sliding sync-läge", "sliding_sync_description": "Under aktiv utveckling, kan inte inaktiveras.", "sliding_sync_disabled_notice": "Logga ut och in igen för att inaktivera", - "sliding_sync_server_no_support": "Din server saknar nativt stöd", + "sliding_sync_server_no_support": "Din server saknar support", "under_active_development": "Under aktiv utveckling.", "unrealiable_e2e": "Otillförlitlig i krypterade rum", "video_rooms": "Videorum", @@ -1452,6 +1517,8 @@ "last_person_warning": "Du är den enda personen här. Om du lämnar så kommer ingen kunna gå med igen, inklusive du.", "leave_room_question": "Vill du lämna rummet '%(roomName)s'?", "leave_space_question": "Är du säker på att du vill lämna utrymmet '%(spaceName)s'?", + "room_leave_admin_warning": "Du är den enda administratören i det här rummet. Om du lämnar kommer ingen att kunna ändra rumsinställningar eller vidta andra viktiga åtgärder.", + "room_leave_mod_warning": "Du är den enda moderatorn i det här rummet. Om du lämnar kommer ingen att kunna ändra rumsinställningar eller vidta andra viktiga åtgärder.", "room_rejoin_warning": "Det här rummet är inte offentligt. Du kommer inte kunna gå med igen utan en inbjudan.", "space_rejoin_warning": "Det här utrymmet är inte offentligt. Du kommer inte kunna gå med igen utan en inbjudan." }, @@ -1516,7 +1583,7 @@ }, "member_list_back_action_label": "Rumsmedlemmar", "message_edit_dialog_title": "Meddelanderedigeringar", - "migrating_crypto": "Häng kvar. Vi uppdaterar Element för att göra kryptering snabbare och mer tillförlitlig.", + "migrating_crypto": "Häng kvar. Vi håller på att uppdatera%(brand)s för att göra kryptering snabbare och mer tillförlitlig.", "mobile_guide": { "toast_accept": "Använd app", "toast_description": "%(brand)s är experimentell i mobila webbläsare. För en bättre upplevelse och de senaste funktionerna använd våran nativa app.", @@ -1572,8 +1639,8 @@ "download_brand_desktop": "Ladda ner %(brand)s skrivbord", "download_f_droid": "Hämta den på F-Droid", "download_google_play": "Hämta den på Google Play", - "enable_notifications": "Sätt på aviseringar", - "enable_notifications_action": "Aktivera aviseringar", + "enable_notifications": "Aktivera skrivbordsaviseringar", + "enable_notifications_action": "Öppna inställningar", "enable_notifications_description": "Missa inget svar eller viktigt meddelande", "explore_rooms": "Utforska offentliga rum", "find_community_members": "Hitta och bjud in dina gemenskapsmedlemmar", @@ -1752,14 +1819,37 @@ "restore_failed_error": "Kunde inte återställa säkerhetskopia" }, "right_panel": { - "add_integrations": "Lägg till widgets, bryggor och bottar", + "add_integrations": "Lägg till tillägg", + "add_topic": "Lägg till ämne", + "extensions_button": "Tillägg", + "extensions_empty_description": "Välj "%(addIntegrations)s ” för att bläddra och lägga till tillägg till det här rummet", + "extensions_empty_title": "Öka produktiviteten med fler verktyg, widgets och botar", "files_button": "Filer", "pinned_messages": { + "empty_description": "Välj ett meddelande och välj ”%(pinAction)s” för att inkludera det här.", + "empty_title": "Fäst viktiga meddelanden så att de lätt kan upptäckas", + "header": { + "one": "1 Fäst meddelande", + "other": "%(count)sFästa meddelanden" + }, "limits": { "other": "Du kan bara fästa upp till %(count)s widgets" - } + }, + "menu": "Öppna menyn", + "release_announcement": { + "close": "OK", + "description": "Du hittar alla fästa meddelanden här. För muspekaren över ett meddelande och välj \"Fäst\" för att lägga till det.", + "title": "Alla nya fästa meddelanden" + }, + "reply_thread": "Svara på ett trådmeddelande ", + "unpin_all": { + "button": "Lossa alla meddelanden", + "content": "Se till att du verkligen vill ta bort alla fästa meddelanden. Den här åtgärden kan inte ångras.", + "title": "Lossa alla meddelanden?" + }, + "view": "Visa i tidslinjen" }, - "pinned_messages_button": "Fäst", + "pinned_messages_button": "Fästa meddelanden", "poll": { "active_heading": "Aktiva omröstningar", "empty_active": "Det finns inga aktiva omröstningar i det här rummet", @@ -1784,7 +1874,7 @@ "view_in_timeline": "Se omröstningen i tidslinjen", "view_poll": "Visa omröstning" }, - "polls_button": "Omröstningshistorik", + "polls_button": "Omröstningar", "room_summary_card": { "title": "Rumsinfo" }, @@ -1813,6 +1903,7 @@ "forget": "Glöm rum", "low_priority": "Låg prioritet", "mark_read": "Markera som läst", + "mark_unread": "Markera som oläst", "notifications_default": "Matcha förvalsinställning", "notifications_mute": "Tysta rum", "title": "Rumsinställningar", @@ -1861,7 +1952,8 @@ }, "room_is_public": "Det här rummet är offentligt" }, - "header_face_pile_tooltip": "Växla medlemslista", + "header_avatar_open_settings_label": "Öppna rumsinställningar", + "header_face_pile_tooltip": "Människor", "header_untrusted_label": "Ej betrodd", "inaccessible": "Det är rummet eller utrymmet är inte åtkomligt för tillfället.", "inaccessible_name": "%(roomName)s är inte tillgängligt för tillfället.", @@ -1888,7 +1980,7 @@ "invite_reject_ignore": "Avvisa och ignorera användare", "invite_sent_to_email": "Denna inbjudan skickades till %(email)s", "invite_sent_to_email_room": "Denna inbjudan till %(roomName)s skickades till %(email)s", - "invite_subtitle": " bjöd in dig", + "invite_subtitle": "Inbjuden av ", "invite_this_room": "Bjud in till rummet", "invite_title": "Vill du gå med i %(roomName)s?", "inviter_unknown": "Okänt", @@ -1931,11 +2023,24 @@ "not_found_title": "Det här rummet eller utrymmet finns inte.", "not_found_title_name": "%(roomName)s finns inte.", "peek_join_prompt": "Du förhandsgranskar %(roomName)s. Vill du gå med i det?", + "pinned_message_badge": "Fäst meddelande", + "pinned_message_banner": { + "button_close_list": "Stäng listan", + "button_view_all": "Visa alla", + "description": "Det här rummet har fästa meddelanden. Klicka för att se dem.", + "go_to_message": "Visa det fästa meddelandet på tidslinjen.", + "title": "%(index)s av %(length)s fästa meddelanden" + }, "read_topic": "Klicka för att läsa ämne", "rejecting": "Nekar inbjudan …", "rejoin_button": "Gå med igen", "search": { "all_rooms_button": "Sök i alla rum", + "placeholder": "Sök meddelanden...", + "summary": { + "one": "1 resultat hittades för ””", + "other": "%(count)sResultat hittades för ””" + }, "this_room_button": "Sök i det här rummet" }, "status_bar": { @@ -2071,6 +2176,8 @@ "error_deleting_alias_description": "Ett fel inträffade vid borttagning av adressen. Den kanske inte längre existerar, eller så inträffade ett tillfälligt fel.", "error_deleting_alias_description_forbidden": "Du har inte behörighet att radera den där adressen.", "error_deleting_alias_title": "Fel vi borttagning av adress", + "error_publishing": "Det gick inte att publicera rummet", + "error_publishing_detail": "Det uppstod ett fel när det här rummet skulle publiceras", "error_save_space_settings": "Misslyckades att spara utrymmesinställningar.", "error_updating_alias_description": "Ett fel inträffade vid uppdatering av rummets alternativa adresser. Det kanske inte tillåts av servern, eller så inträffade ett tillfälligt fel.", "error_updating_canonical_alias_description": "Ett fel inträffade vid uppdatering av rummets huvudadress. Det kanske inte tillåts av servern, eller så inträffade ett tillfälligt fel.", @@ -2297,6 +2404,7 @@ "brand_version": "%(brand)s-version:", "clear_cache_reload": "Rensa cache och ladda om", "crypto_version": "Kryptoversion:", + "dialog_title": "Inställningar: Hjälp & Om", "help_link": "För hjälp med att använda %(brand)s, klicka här.", "homeserver": "Hemservern är %(homeserverUrl)s", "identity_server": "Identitetsservern är %(identityServerUrl)s", @@ -2305,18 +2413,30 @@ } }, "settings": { + "account": { + "dialog_title": "Inställningar: Konto", + "title": "Konto" + }, "all_rooms_home": "Visa alla rum i Hem", "all_rooms_home_description": "Alla rum du är in kommer att visas i Hem.", "always_show_message_timestamps": "Visa alltid tidsstämplar för meddelanden", "appearance": { "bundled_emoji_font": "Använd medföljande emoji-teckensnitt", + "compact_layout": "Visa kompakta texter och meddelanden", + "compact_layout_description": "Modern layout måste väljas för att använda den här funktionen.", "custom_font": "Använd systemets teckensnitt", "custom_font_description": "Sätt namnet för ett teckensnitt installerat på ditt system så kommer %(brand)s att försöka använda det.", "custom_font_name": "Namn på systemets teckensnitt", "custom_font_size": "Använd anpassad storlek", - "custom_theme_error_downloading": "Fel vid nedladdning av temainformation.", + "custom_theme_add": "Lägg till anpassat tema", + "custom_theme_downloading": "Laddar ned anpassat tema...", + "custom_theme_error_downloading": "Fel vid nedladdning av tema", + "custom_theme_help": "Ange webbadressen till ett anpassat tema som du vill använda.", "custom_theme_invalid": "Ogiltigt temaschema.", + "dialog_title": "Inställningar: Utseende", "font_size": "Teckenstorlek", + "font_size_default": "%(fontSize)s(standard)", + "high_contrast": "Hög kontrast", "image_size_default": "Standard", "image_size_large": "Stor", "layout_bubbles": "Meddelandebubblor", @@ -2331,6 +2451,9 @@ "code_block_expand_default": "Expandera kodblock för förval", "code_block_line_numbers": "Visa radnummer i kodblock", "disable_historical_profile": "Visa nuvarande profilbild och namn för användare i meddelandehistoriken", + "discovery": { + "title": "Hur man hittar dig" + }, "emoji_autocomplete": "Aktivera emojiförslag medan du skriver", "enable_markdown": "Aktivera Markdown", "enable_markdown_description": "Börja meddelanden med /plain för att skicka utan markdown.", @@ -2346,6 +2469,14 @@ "add_msisdn_dialog_title": "Lägg till telefonnummer", "add_msisdn_instructions": "Ett SMS har skickats till +%(msisdn)s. Ange verifieringskoden som det innehåller.", "add_msisdn_misconfigured": "Flöde för tilläggning/bindning med MSISDN är felkonfigurerat", + "allow_spellcheck": "Tillåt stavningskontroll", + "application_language": "Språk för ansökan", + "application_language_reload_hint": "Appen laddas om efter att ha valt ett annat språk", + "avatar_remove_progress": "Tar bort bild...", + "avatar_save_progress": "Laddar upp bild...", + "avatar_upload_error_text": "Filformatet stöds inte eller bilden är större än%(size)s.", + "avatar_upload_error_text_generic": "Filformatet kanske inte stöds.", + "avatar_upload_error_title": "Det gick inte att ladda upp avatarbilden", "confirm_adding_email_body": "Klicka på knappen nedan för att bekräfta tilläggning av e-postadressen.", "confirm_adding_email_title": "Bekräfta tilläggning av e-postadressen", "deactivate_confirm_body": "Är du säker på att du vill inaktivera ditt konto? Detta är oåterkalleligt.", @@ -2361,10 +2492,13 @@ "deactivate_confirm_erase_label": "Dölj mina meddelanden för nya som går med", "deactivate_section": "Inaktivera konto", "deactivate_warning": "Avaktivering av ditt konto är en permanent handling — var försiktig!", - "discovery_email_empty": "Upptäcktsalternativ kommer att visas när du har lagt till en e-postadress ovan.", + "discovery_email_empty": "När du har lagt till en e-postadress visas alternativ för att upptäcka den.", "discovery_email_verification_instructions": "Verifiera länken i din inkorg", - "discovery_msisdn_empty": "Upptäcktsalternativ kommer att visas när du har lagt till ett telefonnummer ovan.", + "discovery_msisdn_empty": "När du har lagt till ett telefonnummer visas alternativ för att upptäcka det.", "discovery_needs_terms": "Samtyck till identitetsserverns (%(serverName)s) användarvillkor för att låta dig själv vara upptäckbar med e-postadress eller telefonnummer.", + "discovery_needs_terms_title": "Låt andra hitta dig", + "display_name": "Visningsnamn", + "display_name_error": "Det gick inte att ställa in visningsnamn", "email_address_in_use": "Den här e-postadressen används redan", "email_address_label": "E-postadress", "email_not_verified": "Din e-postadress har inte verifierats än", @@ -2389,7 +2523,7 @@ "error_share_msisdn_discovery": "Kunde inte dela telefonnummer", "identity_server_no_token": "Ingen identitetsåtkomsttoken hittades", "identity_server_not_set": "Identitetsserver inte inställd", - "language_section": "Språk och region", + "language_section": "Språk", "msisdn_in_use": "Detta telefonnummer används redan", "msisdn_label": "Telefonnummer", "msisdn_verification_field_label": "Verifieringskod", @@ -2398,9 +2532,15 @@ "oidc_manage_button": "Hantera konto", "password_change_section": "Sätt ett nytt kontolösenord …", "password_change_success": "Ditt lösenord byttes framgångsrikt.", + "personal_info": "Personlig information", + "profile_subtitle": "Så här visas du för andra i appen.", + "profile_subtitle_oidc": "Ditt konto hanteras separat av en identitetsleverantör och därför kan vissa av dina personuppgifter inte ändras här.", "remove_email_prompt": "Ta bort %(email)s?", "remove_msisdn_prompt": "Ta bort %(phone)s?", - "spell_check_locale_placeholder": "Välj en lokalisering" + "spell_check_locale_placeholder": "Välj en lokalisering", + "unable_to_load_emails": "Det gick inte att ladda e-postadresser", + "unable_to_load_msisdns": "Det går inte att läsa in telefonnummer", + "username": "Användarnamn" }, "image_thumbnails": "Visa förhandsgranskning/miniatyr för bilder", "inline_url_previews_default": "Aktivera inbäddad URL-förhandsgranskning som standard", @@ -2456,12 +2596,20 @@ "phrase_strong_enough": "Bra! Den här lösenfrasen ser tillräckligt stark ut" }, "keyboard": { + "dialog_title": "Inställningar: Tangentbord", "title": "Tangentbord" }, + "labs": { + "dialog_title": "Inställningar: Labs" + }, + "labs_mjolnir": { + "dialog_title": "Inställningar: Ignorerade användare" + }, "notifications": { "default_setting_description": "Denna inställning kommer att tillämpas som standard för alla dina rum.", "default_setting_section": "Jag vill bli meddelad för (Standardinställning)", "desktop_notification_message_preview": "Visa förhandsgranskning av meddelanden i skrivbordsmeddelanden", + "dialog_title": "Inställningar: Aviseringar", "email_description": "Få en sammanfattning av missade aviseringar via e-post", "email_section": "E-postsammanfattning", "email_select": "Välj vilka e-postadresser du vill skicka sammanfattningar till. Hantera dina e-postadresser i .", @@ -2520,12 +2668,15 @@ "code_blocks_heading": "Kodblock", "compact_modern": "Använd ett mer kompakt 'modernt' arrangemang", "composer_heading": "Meddelandefält", + "default_timezone": "Webbläsarens standard (%(timezone)s)", + "dialog_title": "Inställningar: Alternativ", "enable_hardware_acceleration": "Aktivera hårdvaruaccelerering", "enable_tray_icon": "Visa ikon i systembrickan och minimera programmet till den när fönstret stängs", "keyboard_heading": "Tangentbordsgenvägar", "keyboard_view_shortcuts_button": "För att se alla tangentbordsgenvägar, klicka här.", "media_heading": "Bilder, GIF:ar och videor", "presence_description": "Dela din aktivitet och status med andra.", + "publish_timezone": "Publicera tidszon på offentlig profil", "rm_lifetime": "Läsmarkörens livstid (ms)", "rm_lifetime_offscreen": "Läsmarkörens livstid utanför skärmen (ms)", "room_directory_heading": "Rumskatalog", @@ -2534,7 +2685,8 @@ "show_checklist_shortcuts": "Visa genväg till välkomstchecklistan ovanför rumslistan", "show_polls_button": "Visa omröstningsknapp", "surround_text": "Inneslut valt text vid skrivning av specialtecken", - "time_heading": "Tidvisning" + "time_heading": "Tidvisning", + "user_timezone": "Ange tidszon" }, "prompt_invite": "Fråga innan inbjudningar skickas till potentiellt ogiltiga Matrix-ID:n", "replace_plain_emoji": "Ersätt automatiskt textemotikoner med emojier", @@ -2565,8 +2717,11 @@ "cross_signing_self_signing_private_key": "Privat nyckel för självsignering:", "cross_signing_user_signing_private_key": "Privat nyckel för användarsignering:", "cryptography_section": "Kryptografi", + "dehydrated_device_description": "Funktionen offlineenhet låter dig ta emot krypterade meddelanden även när du inte är inloggad på någon enhet", + "dehydrated_device_enabled": "Offlineenhet aktiverad", "delete_backup": "Radera säkerhetskopia", "delete_backup_confirm_description": "Är du säker? Du kommer att förlora dina krypterade meddelanden om dina nycklar inte säkerhetskopieras ordentligt.", + "dialog_title": "Inställningar: Säkerhet och integritet", "e2ee_default_disabled_warning": "Din serveradministratör har inaktiverat totalsträckskryptering som förval för privata rum och direktmeddelanden.", "enable_message_search": "Aktivera meddelandesökning i krypterade rum", "encryption_section": "Kryptering", @@ -2644,6 +2799,7 @@ "device_unverified_description_current": "Verifiera din nuvarande session för förbättrade säkra meddelanden.", "device_verified_description": "Den här sessionen är redo för säkra meddelanden.", "device_verified_description_current": "Din nuvarande session är redo för säkra meddelanden.", + "dialog_title": "Inställningar: Sessioner", "error_pusher_state": "Misslyckades att sätta pusharläge", "error_set_name": "Misslyckades att ange sessionsnamn", "filter_all": "Alla", @@ -2683,9 +2839,10 @@ "security_recommendations_description": "Förbättra din kontosäkerhet genom att följa dessa rekommendationer.", "session_id": "Sessions-ID", "show_details": "Visa detaljer", - "sign_in_with_qr": "Logga in med QR-kod", + "sign_in_with_qr": "Länka ny enhet", "sign_in_with_qr_button": "Visa QR-kod", - "sign_in_with_qr_description": "Du kan använda den här enheten för att logga in en ny enhet med en QR-kod. Du kommer behöva skanna QR-koden som visas på den här enheten med din enhet som är utloggad.", + "sign_in_with_qr_description": "Använd en QR-kod för att logga in på en annan enhet och konfigurera säkra meddelanden.", + "sign_in_with_qr_unsupported": "Stöds inte av din kontoleverantör", "sign_out": "Logga ut den här sessionen", "sign_out_all_other_sessions": "Logga ut ur alla andra sessioner (%(otherSessionsCount)s)", "sign_out_confirm_description": { @@ -2725,7 +2882,9 @@ "show_redaction_placeholder": "Visa en platshållare för borttagna meddelanden", "show_stickers_button": "Visa dekalknapp", "show_typing_notifications": "Visa \"skriver\"-statusar", + "showbold": "Visa all aktivitet i rumslistan (prickar eller antal olästa meddelanden)", "sidebar": { + "dialog_title": "Inställningar: Sidofält", "metaspaces_favourites_description": "Gruppera alla dina favoritrum och -personer på ett ställe.", "metaspaces_home_all_rooms": "Visa alla rum", "metaspaces_home_all_rooms_description": "Visa alla dina rum i Hem, även om de är i ett utrymme.", @@ -2734,10 +2893,14 @@ "metaspaces_orphans_description": "Gruppera alla dina rum som inte är en del av ett utrymme på ett ställe.", "metaspaces_people_description": "Gruppera alla dina personer på ett ställe.", "metaspaces_subsection": "Utrymmen att visa", + "metaspaces_video_rooms": "Videorum och konferenser", + "metaspaces_video_rooms_description": "Gruppera alla privata videorum och konferenser.", + "metaspaces_video_rooms_description_invite_extension": "I konferenser kan du bjuda in personer utanför Matrix.", "spaces_explainer": "Utrymmen är sätt att gruppera rum och personer. Vid sidan av de utrymmen du befinner dig i kan du också använda några förbyggda.", "title": "Sidofält" }, "start_automatically": "Starta automatiskt vid systeminloggning", + "tac_only_notifications": "Visa endast notiser i aktivitetscentret för trådar", "use_12_hour_format": "Visa tidsstämplar i 12-timmarsformat (t.ex. 2:30em)", "use_command_enter_send_message": "Använd Kommando + Enter för att skicka ett meddelande", "use_command_f_search": "Använd Kommando + F för att söka på tidslinjen", @@ -2751,6 +2914,7 @@ "audio_output_empty": "Inga ljudutgångar hittades", "auto_gain_control": "Automatisk förstärkningskontroll", "connection_section": "Anslutning", + "dialog_title": "Inställningar: Röst och video", "echo_cancellation": "Ekoreducering", "enable_fallback_ice_server": "Tillåt reservserver för samtalsassistans (%(server)s)", "enable_fallback_ice_server_description": "Gäller endast om din hemserver inte erbjuder en. Din IP-adress delas under samtal.", @@ -2769,8 +2933,12 @@ "warning": "VARNING: " }, "share": { + "link_copied": "Länken kopierad", "permalink_message": "Länk till valt meddelande", "permalink_most_recent": "Länk till senaste meddelandet", + "share_call": "Länk till konferensinbjudan", + "share_call_subtitle": "Länk för externa användare att gå med i samtalet utan ett Matrixkonto:", + "title_link": "Dela länk", "title_message": "Dela rumsmeddelande", "title_room": "Dela rum", "title_user": "Dela användare" @@ -3012,14 +3180,21 @@ "one": "%(count)s svar", "other": "%(count)s svar" }, + "empty_description": "Använd ”%(replyInThread)s” när du håller muspekaren över ett meddelande.", + "empty_title": "Trådar underlättar för att hålla konversationer till ämnet och gör dem lättare att följa.", "error_start_thread_existing_relation": "Kan inte skapa tråd från en händelse med en existerande relation", + "mark_all_read": "Markera allt som läst", "my_threads": "Mina trådar", "my_threads_description": "Visar alla trådar du har medverkat i", "open_thread": "Öppna tråd", "show_thread_filter": "Visa:" }, "threads_activity_centre": { - "header": "Aktivitet för trådar" + "header": "Aktivitet för trådar", + "no_rooms_with_threads_notifs": "Du har inga rum med trådaviseringar ännu.", + "no_rooms_with_unread_threads": "Du har inga rum med olästa trådar än.", + "release_announcement_description": "Meddelanden om trådar har flyttats, du hittar dem här från och med nu.", + "release_announcement_header": "Aktivitetscenter för Trådar" }, "time": { "about_day_ago": "cirka en dag sedan", @@ -3062,9 +3237,21 @@ }, "creation_summary_dm": "%(creator)s skapade den här DM:en.", "creation_summary_room": "%(creator)s skapade och konfigurerade rummet.", + "decryption_failure": { + "blocked": "Avsändaren har blockerat dig från att ta emot det här meddelandet eftersom din enhet inte är verifierad", + "historical_event_no_key_backup": "Historiska meddelanden är inte tillgängliga på den här enheten", + "historical_event_unverified_device": "Du måste verifiera den här enheten för att få åtkomst till historiska meddelanden", + "historical_event_user_not_joined": "Du har inte tillgång till det här meddelandet", + "sender_identity_previously_verified": "Avsändarens verifierade identitet har ändrats", + "sender_unsigned_device": "Skickat från en osäker enhet.", + "unable_to_decrypt": "Det gick inte att dekryptera meddelandet" + }, "disambiguated_profile": "%(displayName)s (%(matrixId)s)", "download_action_decrypting": "Avkrypterar", "download_action_downloading": "Laddar ner", + "download_failed": "Nedladdning misslyckades", + "download_failed_description": "Ett fel uppstod när den här filen laddades ned", + "e2e_state": "Tillståndet för end-to-end-krypteringen", "edits": { "tooltip_label": "Redigerat vid %(date)s. Klicka för att visa redigeringar.", "tooltip_sub": "Klicka för att visa redigeringar", @@ -3118,7 +3305,7 @@ }, "m.file": { "error_decrypting": "Fel vid avkryptering av bilagan", - "error_invalid": "Felaktig fil%(extra)s" + "error_invalid": "Ogiltig fil" }, "m.image": { "error": "Kunde inte visa bild på grund av fel", @@ -3305,7 +3492,8 @@ "reactions": { "add_reaction_prompt": "Lägg till reaktion", "custom_reaction_fallback_label": "Anpassad reaktion", - "label": "%(reactors)s reagerade med %(content)s" + "label": "%(reactors)s reagerade med %(content)s", + "tooltip_caption": "reagerade med %(shortName)s" }, "read_receipt_title": { "one": "Sedd av %(count)s person", @@ -3490,6 +3678,10 @@ "truncated_list_n_more": { "other": "Och %(count)s till…" }, + "unsupported_browser": { + "description": "Om du fortsätter kan vissa funktioner sluta fungera och det finns en risk att du kan förlora data i framtiden. Uppdatera din webbläsare för att fortsätta använda%(brand)s.", + "title": "%(brand)sstöder inte den här webbläsaren" + }, "unsupported_server_description": "Servern använder en äldre version av Matrix. Uppgradera till Matrix %(version)s för att använda %(brand)s utan fel.", "unsupported_server_title": "Din server stöds inte", "update": { @@ -3507,6 +3699,12 @@ "toast_title": "Uppdatera %(brand)s", "unavailable": "Otillgänglig" }, + "update_room_access_modal": { + "description": "För att skapa en delningslänk måste du tillåta gäster att gå med i det här rummet. Detta kan göra rummet mindre säkert. När du är klar med samtalet kan du göra rummet privat igen.", + "dont_change_description": "Alternativt kan du hålla samtalet i ett separat rum.", + "no_change": "Jag vill inte ändra åtkomstnivån.", + "title": "Ändra åtkomstnivå för rummet" + }, "upload_failed_generic": "Filen '%(fileName)s' kunde inte laddas upp.", "upload_failed_size": "Filen '%(fileName)s' överstiger denna hemserverns storleksgräns för uppladdningar", "upload_failed_title": "Uppladdning misslyckades", @@ -3516,6 +3714,7 @@ "error_files_too_large": "Dessa filer är för stora för att laddas upp. Filstorleksgränsen är %(limit)s.", "error_some_files_too_large": "Vissa filer är för stora för att laddas upp. Filstorleksgränsen är %(limit)s.", "error_title": "Uppladdningsfel", + "not_image": "Filen du har valt är inte en giltig bildfil.", "title": "Ladda upp filer", "title_progress": "Ladda upp filer (%(current)s av %(total)s)", "upload_all_button": "Ladda upp alla", @@ -3542,6 +3741,7 @@ "deactivate_confirm_action": "Inaktivera användaren", "deactivate_confirm_description": "Vid inaktivering av användare loggas den ut och förhindras från att logga in igen. Den kommer dessutom att lämna alla rum den befinner sig i. Den här åtgärden kan inte ångras. Är du säker på att du vill inaktivera den här användaren?", "deactivate_confirm_title": "Inaktivera användare?", + "dehydrated_device_enabled": "Offlineenhet aktiverad", "demote_button": "Degradera", "demote_self_confirm_description_space": "Du kommer inte kunna ångra den här ändringen eftersom du degraderar dig själv, och om du är den sista privilegierade användaren i utrymmet så kommer det att vara omöjligt att återfå utrymmet.", "demote_self_confirm_room": "Du kommer inte att kunna ångra den här ändringen eftersom du degraderar dig själv. Om du är den sista privilegierade användaren i rummet blir det omöjligt att återfå behörigheter.", @@ -3558,6 +3758,7 @@ "error_revoke_3pid_invite_title": "Misslyckades att återkalla inbjudan", "hide_sessions": "Dölj sessioner", "hide_verified_sessions": "Dölj verifierade sessioner", + "ignore_button": "Ignorera", "ignore_confirm_description": "Alla meddelanden och inbjudningar från den här användaren kommer att döljas. Är du säker på att du vill ignorera denne?", "ignore_confirm_title": "Ignorera %(user)s", "invited_by": "Inbjuden av %(sender)s", @@ -3585,23 +3786,26 @@ "no_recent_messages_description": "Pröva att skrolla upp i tidslinjen för att se om det finns några tidigare.", "no_recent_messages_title": "Inga nyliga meddelanden från %(user)s hittades" }, - "redact_button": "Ta bort nyliga meddelanden", + "redact_button": "Ta bort meddelanden", "revoke_invite": "Återkalla inbjudan", "room_encrypted": "Meddelanden i det här rummet är totalsträckskrypterade.", "room_encrypted_detail": "Dina meddelanden är säkrade och endast du och mottagaren har de unika nycklarna för att låsa upp dem.", "room_unencrypted": "Meddelanden i detta rum är inte totalsträckskrypterade.", "room_unencrypted_detail": "I krypterade rum är dina meddelanden säkrade och endast du och mottagaren har de unika nycklarna för att låsa upp dem.", - "share_button": "Dela länk till användare", + "send_message": "Skicka meddelande", + "share_button": "Dela profil", "unban_button_room": "Avbanna i rum", "unban_button_space": "Avbanna i utrymme", "unban_room_confirm_title": "Avbanna från %(roomName)s", "unban_space_everything": "Avbanna dem från allt jag kan", "unban_space_specific": "Avbanna dem från specifika saker jag kan", "unban_space_warning": "Personen kommer inte kunna komma åt saker du inte är admin för.", + "unignore_button": "Avignorera", "verify_button": "Verifiera användare", "verify_explainer": "För extra säkerhet, verifiera den här användaren genom att kolla en engångskod på båda era enheter." }, "user_menu": { + "link_new_device": "Länka ny enhet", "settings": "Alla inställningar", "switch_theme_dark": "Byt till mörkt läge", "switch_theme_light": "Byt till ljust läge" @@ -3643,15 +3847,19 @@ "enable_camera": "Sätt på kamera", "enable_microphone": "Slå på mikrofonen", "expand": "Återgå till samtal", + "get_call_link": "Dela samtalslänk", "hangup": "Lägg på", "hide_sidebar_button": "Göm sidopanel", "input_devices": "Ingångsenheter", "jitsi_call": "Jitsi-gruppsamtal", "join_button_tooltip_call_full": "Tyvärr - det här samtalet är för närvarande fullt", "join_button_tooltip_connecting": "Ansluter", - "legacy_call": "Gammal samtalsfunktion", + "legacy_call": "Standardsamtal", "maximise": "Fyll skärmen", "maximise_call": "Maximera samtal", + "metaspace_video_rooms": { + "conference_room_section": "Konferenser" + }, "minimise_call": "Minimera samtal", "misconfigured_server": "Anrop misslyckades på grund av felkonfigurerad server", "misconfigured_server_description": "Be administratören för din hemserver (%(homeserverDomain)s) att konfigurera en TURN-server för att samtal ska fungera pålitligt.", @@ -3809,7 +4017,7 @@ "title": "Tillåt att den här widgeten verifierar din identitet" }, "popout": "Poppa ut widget", - "set_room_layout": "Sätt mitt rumsarrangemang för alla", + "set_room_layout": "Ställ in layout för alla", "shared_data_avatar": "URL för din profilbild", "shared_data_device_id": "Ditt enhets-ID", "shared_data_lang": "Ditt språk", diff --git a/src/i18n/strings/uk.json b/src/i18n/strings/uk.json index 8af8d0b2ea2..0625dd1909f 100644 --- a/src/i18n/strings/uk.json +++ b/src/i18n/strings/uk.json @@ -1349,7 +1349,6 @@ "msc3531_hide_messages_pending_moderation": "Дозволити модераторам ховати повідомлення у черзі модерування.", "notification_settings": "Нові налаштування сповіщень", "notification_settings_beta_title": "Налаштування сповіщень", - "oidc_native_flow": "Увімкнути нові вбудовані потоки OIDC (в активній розробці)", "report_to_moderators": "Поскаржитись модераторам", "report_to_moderators_description": "У кімнатах, які підтримують модерацію, кнопка «Поскаржитися» дає змогу повідомити про зловживання модераторам кімнати.", "sliding_sync": "Режим ковзної синхронізації", diff --git a/src/i18n/strings/zh_Hans.json b/src/i18n/strings/zh_Hans.json index 1ddb47fcc44..d5e8416f1c7 100644 --- a/src/i18n/strings/zh_Hans.json +++ b/src/i18n/strings/zh_Hans.json @@ -230,7 +230,6 @@ "oidc": { "error_title": "我们无法使你登入", "generic_auth_error": "验证时出了问题。前往登录页面并重试。", - "logout_redirect_warning": "你将被重定向到服务器的验证提供者以完成登出。", "missing_or_invalid_stored_state": "我们已要求浏览器记住你使用的家服务器,但不幸的是你的浏览器已忘记。请前往登录页面重试。" }, "password_field_keep_going_prompt": "继续前进……", diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index 584852748b1..aeb823a15da 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -1352,7 +1352,6 @@ "msc3531_hide_messages_pending_moderation": "讓版主能夠隱藏待審核的訊息。", "notification_settings": "新通知設定", "notification_settings_beta_title": "通知設定", - "oidc_native_flow": "啟用新的原生 OIDC 流程(正在積極開發中)", "report_to_moderators": "回報給版主", "report_to_moderators_description": "在支援審核的聊天室中,「回報」按鈕讓您可以回報濫用行為給聊天室管理員。", "sliding_sync": "滑動同步模式", diff --git a/src/identifiers.ts b/src/identifiers.ts index 88f3c265925..db342ed0463 100644 --- a/src/identifiers.ts +++ b/src/identifiers.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2021 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/index.ts b/src/index.ts index e1fe9c01036..7988f32dad5 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/indexing/BaseEventIndexManager.ts b/src/indexing/BaseEventIndexManager.ts index efdc64e36a5..0088a796832 100644 --- a/src/indexing/BaseEventIndexManager.ts +++ b/src/indexing/BaseEventIndexManager.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/indexing/EventIndex.ts b/src/indexing/EventIndex.ts index da2eee995cd..7a126b2ffb6 100644 --- a/src/indexing/EventIndex.ts +++ b/src/indexing/EventIndex.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/indexing/EventIndexPeg.ts b/src/indexing/EventIndexPeg.ts index 73acfff857d..f33cbcc74ca 100644 --- a/src/indexing/EventIndexPeg.ts +++ b/src/indexing/EventIndexPeg.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/integrations/IntegrationManagerInstance.ts b/src/integrations/IntegrationManagerInstance.ts index 4516922fb5c..d74b380bfdb 100644 --- a/src/integrations/IntegrationManagerInstance.ts +++ b/src/integrations/IntegrationManagerInstance.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/integrations/IntegrationManagers.ts b/src/integrations/IntegrationManagers.ts index 86c1b2db8c9..a8fe8a33dc3 100644 --- a/src/integrations/IntegrationManagers.ts +++ b/src/integrations/IntegrationManagers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/languageHandler.tsx b/src/languageHandler.tsx index c30ca949229..14f611b138c 100644 --- a/src/languageHandler.tsx +++ b/src/languageHandler.tsx @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2017 MTRNord and Cooperative EITA Copyright 2017 Vector Creations Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/linkify-matrix.ts b/src/linkify-matrix.ts index 0d129ff9526..198d5982c16 100644 --- a/src/linkify-matrix.ts +++ b/src/linkify-matrix.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/mjolnir/BanList.ts b/src/mjolnir/BanList.ts index 7e31b652da3..617b37d77af 100644 --- a/src/mjolnir/BanList.ts +++ b/src/mjolnir/BanList.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/mjolnir/ListRule.ts b/src/mjolnir/ListRule.ts index 0261ec2ef9a..6c9389bd336 100644 --- a/src/mjolnir/ListRule.ts +++ b/src/mjolnir/ListRule.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/mjolnir/Mjolnir.ts b/src/mjolnir/Mjolnir.ts index 9dacc0d41ff..cea128e5efa 100644 --- a/src/mjolnir/Mjolnir.ts +++ b/src/mjolnir/Mjolnir.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/Call.ts b/src/models/Call.ts index 4beb5fccc1e..03645ed47ee 100644 --- a/src/models/Call.ts +++ b/src/models/Call.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -688,7 +688,7 @@ export class ElementCall extends Call { // Set custom fonts if (SettingsStore.getValue("useSystemFont")) { - SettingsStore.getValue("systemFont") + SettingsStore.getValue("systemFont") .split(",") .map((font) => { // Strip whitespace and quotes diff --git a/src/models/LocalRoom.ts b/src/models/LocalRoom.ts index f1f8dde1cd7..4a233f976f8 100644 --- a/src/models/LocalRoom.ts +++ b/src/models/LocalRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/RoomUpload.ts b/src/models/RoomUpload.ts index 569f59e0166..61add9c7f5a 100644 --- a/src/models/RoomUpload.ts +++ b/src/models/RoomUpload.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/notificationsettings/NotificationSettings.ts b/src/models/notificationsettings/NotificationSettings.ts index 533afe2d04a..3ebd6811f46 100644 --- a/src/models/notificationsettings/NotificationSettings.ts +++ b/src/models/notificationsettings/NotificationSettings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/notificationsettings/PushRuleDiff.ts b/src/models/notificationsettings/PushRuleDiff.ts index 82c4a4d4b50..11d8ce0522e 100644 --- a/src/models/notificationsettings/PushRuleDiff.ts +++ b/src/models/notificationsettings/PushRuleDiff.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/notificationsettings/PushRuleMap.ts b/src/models/notificationsettings/PushRuleMap.ts index bf217d16ffb..8c7ede293cf 100644 --- a/src/models/notificationsettings/PushRuleMap.ts +++ b/src/models/notificationsettings/PushRuleMap.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/notificationsettings/reconcileNotificationSettings.ts b/src/models/notificationsettings/reconcileNotificationSettings.ts index da052b4475f..ce67d25d343 100644 --- a/src/models/notificationsettings/reconcileNotificationSettings.ts +++ b/src/models/notificationsettings/reconcileNotificationSettings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/models/notificationsettings/toNotificationSettings.ts b/src/models/notificationsettings/toNotificationSettings.ts index 7f7f5798b83..33ed4b5e4ac 100644 --- a/src/models/notificationsettings/toNotificationSettings.ts +++ b/src/models/notificationsettings/toNotificationSettings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/modules/AppModule.ts b/src/modules/AppModule.ts index 3904efe6f27..b7585fd2c66 100644 --- a/src/modules/AppModule.ts +++ b/src/modules/AppModule.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/modules/ModuleComponents.tsx b/src/modules/ModuleComponents.tsx index 25a5092a21c..53ab415603c 100644 --- a/src/modules/ModuleComponents.tsx +++ b/src/modules/ModuleComponents.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/modules/ModuleFactory.ts b/src/modules/ModuleFactory.ts index 42d5c0f4a62..9d72a18d6b2 100644 --- a/src/modules/ModuleFactory.ts +++ b/src/modules/ModuleFactory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/modules/ModuleRunner.ts b/src/modules/ModuleRunner.ts index 06a17b43b4d..c01015206dd 100644 --- a/src/modules/ModuleRunner.ts +++ b/src/modules/ModuleRunner.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/modules/ProxiedModuleApi.ts b/src/modules/ProxiedModuleApi.ts index 34735afe0ff..7aa6ccd3b85 100644 --- a/src/modules/ProxiedModuleApi.ts +++ b/src/modules/ProxiedModuleApi.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/notifications/ContentRules.ts b/src/notifications/ContentRules.ts index 0f0fcc21e1d..bfe3bed6c29 100644 --- a/src/notifications/ContentRules.ts +++ b/src/notifications/ContentRules.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/notifications/NotificationUtils.ts b/src/notifications/NotificationUtils.ts index 37f58d839f1..0504ba41f7c 100644 --- a/src/notifications/NotificationUtils.ts +++ b/src/notifications/NotificationUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/notifications/PushRuleVectorState.ts b/src/notifications/PushRuleVectorState.ts index 1a6559df606..eeed5ca99c2 100644 --- a/src/notifications/PushRuleVectorState.ts +++ b/src/notifications/PushRuleVectorState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/notifications/StandardActions.ts b/src/notifications/StandardActions.ts index 17d8454e33b..21dad0e6555 100644 --- a/src/notifications/StandardActions.ts +++ b/src/notifications/StandardActions.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/notifications/VectorPushRulesDefinitions.ts b/src/notifications/VectorPushRulesDefinitions.ts index 4149a8efb90..77311edcecc 100644 --- a/src/notifications/VectorPushRulesDefinitions.ts +++ b/src/notifications/VectorPushRulesDefinitions.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/notifications/index.ts b/src/notifications/index.ts index 332c8ef698e..17f1b249a98 100644 --- a/src/notifications/index.ts +++ b/src/notifications/index.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/performance/entry-names.ts b/src/performance/entry-names.ts index 13953ebf324..fcdd0621e16 100644 --- a/src/performance/entry-names.ts +++ b/src/performance/entry-names.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/performance/index.ts b/src/performance/index.ts index 4d26f02b28e..468181e0c1b 100644 --- a/src/performance/index.ts +++ b/src/performance/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/phonenumber.ts b/src/phonenumber.ts index 185287ff6f3..dbf49e65b93 100644 --- a/src/phonenumber.ts +++ b/src/phonenumber.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/rageshake/rageshake.ts b/src/rageshake/rageshake.ts index c68fa8503c7..2d8ec572d5a 100644 --- a/src/rageshake/rageshake.ts +++ b/src/rageshake/rageshake.ts @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2017 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/rageshake/submit-rageshake.ts b/src/rageshake/submit-rageshake.ts index 0c00cc777a2..05f8a49b43e 100644 --- a/src/rageshake/submit-rageshake.ts +++ b/src/rageshake/submit-rageshake.ts @@ -4,7 +4,7 @@ Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2017 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/distributors/collapse.ts b/src/resizer/distributors/collapse.ts index 172ece19c32..a4693e8e14f 100644 --- a/src/resizer/distributors/collapse.ts +++ b/src/resizer/distributors/collapse.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/distributors/fixed.ts b/src/resizer/distributors/fixed.ts index 06535771fc8..609df1deae1 100644 --- a/src/resizer/distributors/fixed.ts +++ b/src/resizer/distributors/fixed.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/distributors/percentage.ts b/src/resizer/distributors/percentage.ts index 3c487fcd0fc..f8a00107870 100644 --- a/src/resizer/distributors/percentage.ts +++ b/src/resizer/distributors/percentage.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/index.ts b/src/resizer/index.ts index 11b81013387..b73b368361e 100644 --- a/src/resizer/index.ts +++ b/src/resizer/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/item.ts b/src/resizer/item.ts index e715a1a25c2..9eeea86fd6f 100644 --- a/src/resizer/item.ts +++ b/src/resizer/item.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/resizer.ts b/src/resizer/resizer.ts index 1b24ee00e6a..826b017d569 100644 --- a/src/resizer/resizer.ts +++ b/src/resizer/resizer.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/resizer/sizer.ts b/src/resizer/sizer.ts index 046e13fd6b5..2284781c9df 100644 --- a/src/resizer/sizer.ts +++ b/src/resizer/sizer.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/sendTimePerformanceMetrics.ts b/src/sendTimePerformanceMetrics.ts index d5fc46241ea..c57ed3771be 100644 --- a/src/sendTimePerformanceMetrics.ts +++ b/src/sendTimePerformanceMetrics.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/sentry.ts b/src/sentry.ts index c70201679c0..90ce39d671e 100644 --- a/src/sentry.ts +++ b/src/sentry.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/serviceworker/index.ts b/src/serviceworker/index.ts index f15c880cf57..8c522ede596 100644 --- a/src/serviceworker/index.ts +++ b/src/serviceworker/index.ts @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/SettingLevel.ts b/src/settings/SettingLevel.ts index 88be8f381c9..2904350d4d8 100644 --- a/src/settings/SettingLevel.ts +++ b/src/settings/SettingLevel.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx index 6cd5b15a515..9c4bb76f9f9 100644 --- a/src/settings/Settings.tsx +++ b/src/settings/Settings.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2024 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -38,6 +38,13 @@ import { WatchManager } from "./WatchManager"; import { CustomTheme } from "../theme"; import AnalyticsController from "./controllers/AnalyticsController"; import FallbackIceServerController from "./controllers/FallbackIceServerController"; +import { UseCase } from "./enums/UseCase.tsx"; +import { IRightPanelForRoomStored } from "../stores/right-panel/RightPanelStoreIPanelState.ts"; +import { ILayoutSettings } from "../stores/widgets/WidgetLayoutStore.ts"; +import { ReleaseAnnouncementData } from "../stores/ReleaseAnnouncementStore.ts"; +import { Json, JsonValue } from "../@types/json.ts"; +import { RecentEmojiData } from "../emojipicker/recent.ts"; +import { Assignable } from "../@types/common.ts"; export const defaultWatchManager = new WatchManager(); @@ -86,7 +93,6 @@ export enum LabGroup { export enum Features { NotificationSettings2 = "feature_notification_settings2", - OidcNativeFlow = "feature_oidc_native_flow", ReleaseAnnouncement = "feature_release_announcement", } @@ -107,15 +113,7 @@ export const labGroupNames: Record = { [LabGroup.Ui]: _td("labs|group_ui"), }; -export type SettingValueType = - | boolean - | number - | string - | number[] - | string[] - | Record - | Record[] - | null; +export type SettingValueType = Json | JsonValue | Record | Record[]; export interface IBaseSetting { isFeature?: false | undefined; @@ -165,7 +163,7 @@ export interface IBaseSetting { image?: string; // require(...) feedbackSubheading?: TranslationKey; feedbackLabel?: string; - extraSettings?: string[]; + extraSettings?: BooleanSettingKey[]; requiresRefresh?: boolean; }; @@ -182,7 +180,179 @@ export interface IFeature extends Omit, "isFeature"> { // Type using I-identifier for backwards compatibility from before it became a discriminated union export type ISetting = IBaseSetting | IFeature; -export const SETTINGS: { [setting: string]: ISetting } = { +export interface Settings { + [settingName: `UIFeature.${string}`]: IBaseSetting; + + // We can't use the following type because of `feature_sliding_sync_proxy_url` & `feature_hidebold` being in the namespace incorrectly + // [settingName: `feature_${string}`]: IFeature; + "feature_video_rooms": IFeature; + [Features.NotificationSettings2]: IFeature; + [Features.ReleaseAnnouncement]: IFeature; + "feature_msc3531_hide_messages_pending_moderation": IFeature; + "feature_report_to_moderators": IFeature; + "feature_latex_maths": IFeature; + "feature_wysiwyg_composer": IFeature; + "feature_mjolnir": IFeature; + "feature_custom_themes": IFeature; + "feature_exclude_insecure_devices": IFeature; + "feature_html_topic": IFeature; + "feature_bridge_state": IFeature; + "feature_jump_to_date": IFeature; + "feature_sliding_sync": IFeature; + "feature_element_call_video_rooms": IFeature; + "feature_group_calls": IFeature; + "feature_disable_call_per_sender_encryption": IFeature; + "feature_allow_screen_share_only_mode": IFeature; + "feature_location_share_live": IFeature; + "feature_dynamic_room_predecessors": IFeature; + "feature_render_reaction_images": IFeature; + "feature_ask_to_join": IFeature; + "feature_notifications": IFeature; + // These are in the feature namespace but aren't actually features + "feature_sliding_sync_proxy_url": IBaseSetting; + "feature_hidebold": IBaseSetting; + + "useOnlyCurrentProfiles": IBaseSetting; + "mjolnirRooms": IBaseSetting; + "mjolnirPersonalRoom": IBaseSetting; + "RoomList.backgroundImage": IBaseSetting; + "sendReadReceipts": IBaseSetting; + "baseFontSize": IBaseSetting<"" | number>; + "baseFontSizeV2": IBaseSetting<"" | number>; + "fontSizeDelta": IBaseSetting; + "useCustomFontSize": IBaseSetting; + "MessageComposerInput.suggestEmoji": IBaseSetting; + "MessageComposerInput.showStickersButton": IBaseSetting; + "MessageComposerInput.showPollsButton": IBaseSetting; + "MessageComposerInput.insertTrailingColon": IBaseSetting; + "Notifications.alwaysShowBadgeCounts": IBaseSetting; + "Notifications.showbold": IBaseSetting; + "Notifications.tac_only_notifications": IBaseSetting; + "useCompactLayout": IBaseSetting; + "showRedactions": IBaseSetting; + "showJoinLeaves": IBaseSetting; + "showAvatarChanges": IBaseSetting; + "showDisplaynameChanges": IBaseSetting; + "showReadReceipts": IBaseSetting; + "showTwelveHourTimestamps": IBaseSetting; + "alwaysShowTimestamps": IBaseSetting; + "userTimezone": IBaseSetting; + "userTimezonePublish": IBaseSetting; + "autoplayGifs": IBaseSetting; + "autoplayVideo": IBaseSetting; + "enableSyntaxHighlightLanguageDetection": IBaseSetting; + "expandCodeByDefault": IBaseSetting; + "showCodeLineNumbers": IBaseSetting; + "scrollToBottomOnMessageSent": IBaseSetting; + "Pill.shouldShowPillAvatar": IBaseSetting; + "TextualBody.enableBigEmoji": IBaseSetting; + "MessageComposerInput.isRichTextEnabled": IBaseSetting; + "MessageComposer.showFormatting": IBaseSetting; + "sendTypingNotifications": IBaseSetting; + "showTypingNotifications": IBaseSetting; + "ctrlFForSearch": IBaseSetting; + "MessageComposerInput.ctrlEnterToSend": IBaseSetting; + "MessageComposerInput.surroundWith": IBaseSetting; + "MessageComposerInput.autoReplaceEmoji": IBaseSetting; + "MessageComposerInput.useMarkdown": IBaseSetting; + "VideoView.flipVideoHorizontally": IBaseSetting; + "theme": IBaseSetting; + "custom_themes": IBaseSetting; + "use_system_theme": IBaseSetting; + "useBundledEmojiFont": IBaseSetting; + "useSystemFont": IBaseSetting; + "systemFont": IBaseSetting; + "webRtcAllowPeerToPeer": IBaseSetting; + "webrtc_audiooutput": IBaseSetting; + "webrtc_audioinput": IBaseSetting; + "webrtc_videoinput": IBaseSetting; + "webrtc_audio_autoGainControl": IBaseSetting; + "webrtc_audio_echoCancellation": IBaseSetting; + "webrtc_audio_noiseSuppression": IBaseSetting; + "language": IBaseSetting; + "breadcrumb_rooms": IBaseSetting; + "recent_emoji": IBaseSetting; + "SpotlightSearch.recentSearches": IBaseSetting; + "SpotlightSearch.showNsfwPublicRooms": IBaseSetting; + "room_directory_servers": IBaseSetting; + "integrationProvisioning": IBaseSetting; + "allowedWidgets": IBaseSetting<{ [eventId: string]: boolean }>; + "analyticsOptIn": IBaseSetting; + "pseudonymousAnalyticsOptIn": IBaseSetting; + "deviceClientInformationOptIn": IBaseSetting; + "FTUE.useCaseSelection": IBaseSetting; + "Registration.mobileRegistrationHelper": IBaseSetting; + "autocompleteDelay": IBaseSetting; + "readMarkerInViewThresholdMs": IBaseSetting; + "readMarkerOutOfViewThresholdMs": IBaseSetting; + "blacklistUnverifiedDevices": IBaseSetting; + "urlPreviewsEnabled": IBaseSetting; + "urlPreviewsEnabled_e2ee": IBaseSetting; + "notificationsEnabled": IBaseSetting; + "deviceNotificationsEnabled": IBaseSetting; + "notificationSound": IBaseSetting< + | { + name: string; + type: string; + size: number; + url: string; + } + | false + >; + "notificationBodyEnabled": IBaseSetting; + "audioNotificationsEnabled": IBaseSetting; + "enableWidgetScreenshots": IBaseSetting; + "promptBeforeInviteUnknownUsers": IBaseSetting; + "widgetOpenIDPermissions": IBaseSetting<{ + allow?: string[]; + deny?: string[]; + }>; + "breadcrumbs": IBaseSetting; + "FTUE.userOnboardingButton": IBaseSetting; + "showHiddenEventsInTimeline": IBaseSetting; + "lowBandwidth": IBaseSetting; + "fallbackICEServerAllowed": IBaseSetting; + "showImages": IBaseSetting; + "RightPanel.phasesGlobal": IBaseSetting; + "RightPanel.phases": IBaseSetting; + "enableEventIndexing": IBaseSetting; + "crawlerSleepTime": IBaseSetting; + "showCallButtonsInComposer": IBaseSetting; + "ircDisplayNameWidth": IBaseSetting; + "layout": IBaseSetting; + "Images.size": IBaseSetting; + "showChatEffects": IBaseSetting; + "Performance.addSendMessageTimingMetadata": IBaseSetting; + "Widgets.pinned": IBaseSetting<{ [widgetId: string]: boolean }>; + "Widgets.layout": IBaseSetting; + "Spaces.allRoomsInHome": IBaseSetting; + "Spaces.enabledMetaSpaces": IBaseSetting>>; + "Spaces.showPeopleInSpace": IBaseSetting; + "developerMode": IBaseSetting; + "automaticErrorReporting": IBaseSetting; + "automaticDecryptionErrorReporting": IBaseSetting; + "automaticKeyBackNotEnabledReporting": IBaseSetting; + "debug_scroll_panel": IBaseSetting; + "debug_timeline_panel": IBaseSetting; + "debug_registration": IBaseSetting; + "debug_animation": IBaseSetting; + "debug_legacy_call_handler": IBaseSetting; + "audioInputMuted": IBaseSetting; + "videoInputMuted": IBaseSetting; + "activeCallRoomIds": IBaseSetting; + "releaseAnnouncementData": IBaseSetting; + "Electron.autoLaunch": IBaseSetting; + "Electron.warnBeforeExit": IBaseSetting; + "Electron.alwaysShowMenuBar": IBaseSetting; + "Electron.showTrayIcon": IBaseSetting; + "Electron.enableHardwareAcceleration": IBaseSetting; +} + +export type SettingKey = keyof Settings; +export type FeatureSettingKey = Assignable; +export type BooleanSettingKey = Assignable> | FeatureSettingKey; + +export const SETTINGS: Settings = { "feature_video_rooms": { isFeature: true, labsGroup: LabGroup.VoiceAndVideo, @@ -438,15 +608,6 @@ export const SETTINGS: { [setting: string]: ISetting } = { shouldWarn: true, default: false, }, - [Features.OidcNativeFlow]: { - isFeature: true, - labsGroup: LabGroup.Developer, - supportedLevels: LEVELS_DEVICE_ONLY_SETTINGS_WITH_CONFIG_PRIORITISED, - supportedLevelsAreOrdered: true, - displayName: _td("labs|oidc_native_flow"), - description: _td("labs|oidc_native_flow_description"), - default: false, - }, /** * @deprecated in favor of {@link fontSizeDelta} */ @@ -720,7 +881,7 @@ export const SETTINGS: { [setting: string]: ISetting } = { }, "custom_themes": { supportedLevels: LEVELS_ACCOUNT_SETTINGS, - default: [] as CustomTheme[], + default: [], }, "use_system_theme": { supportedLevels: LEVELS_DEVICE_ONLY_SETTINGS, diff --git a/src/settings/SettingsStore.ts b/src/settings/SettingsStore.ts index 98ae347a0ab..f0b74de15ae 100644 --- a/src/settings/SettingsStore.ts +++ b/src/settings/SettingsStore.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -20,7 +20,7 @@ import RoomSettingsHandler from "./handlers/RoomSettingsHandler"; import ConfigSettingsHandler from "./handlers/ConfigSettingsHandler"; import { _t } from "../languageHandler"; import dis from "../dispatcher/dispatcher"; -import { IFeature, ISetting, LabGroup, SETTINGS, defaultWatchManager } from "./Settings"; +import { IFeature, ISetting, LabGroup, SETTINGS, defaultWatchManager, SettingKey, Settings } from "./Settings"; import LocalEchoWrapper from "./handlers/LocalEchoWrapper"; import { CallbackFn as WatchCallbackFn } from "./WatchManager"; import { SettingLevel } from "./SettingLevel"; @@ -34,11 +34,11 @@ import { MatrixClientPeg } from "../MatrixClientPeg"; // Convert the settings to easier to manage objects for the handlers const defaultSettings: Record = {}; const invertedDefaultSettings: Record = {}; -const featureNames: string[] = []; +const featureNames: SettingKey[] = []; for (const key in SETTINGS) { - const setting = SETTINGS[key]; + const setting = SETTINGS[key as SettingKey]; defaultSettings[key] = setting.default; - if (setting.isFeature) featureNames.push(key); + if (setting.isFeature) featureNames.push(key as SettingKey); if (setting.invertedSettingName) { // Invert now so that the rest of the system will invert it back to what was intended. invertedDefaultSettings[setting.invertedSettingName] = !setting.default; @@ -80,7 +80,7 @@ function getLevelOrder(setting: ISetting): SettingLevel[] { } export type CallbackFn = ( - settingName: string, + settingName: SettingKey, roomId: string | null, atLevel: SettingLevel, newValAtLevel: any, @@ -138,8 +138,8 @@ export default class SettingsStore { * Gets all the feature-style setting names. * @returns {string[]} The names of the feature settings. */ - public static getFeatureSettingNames(): string[] { - return Object.keys(SETTINGS).filter((n) => SettingsStore.isFeature(n)); + public static getFeatureSettingNames(): SettingKey[] { + return (Object.keys(SETTINGS) as SettingKey[]).filter((n) => SettingsStore.isFeature(n)); } /** @@ -158,33 +158,30 @@ export default class SettingsStore { * if the change in value is worthwhile enough to react upon. * @returns {string} A reference to the watcher that was employed. */ - public static watchSetting(settingName: string, roomId: string | null, callbackFn: CallbackFn): string { + public static watchSetting(settingName: SettingKey, roomId: string | null, callbackFn: CallbackFn): string { const setting = SETTINGS[settingName]; - const originalSettingName = settingName; if (!setting) throw new Error(`${settingName} is not a setting`); - if (setting.invertedSettingName) { - settingName = setting.invertedSettingName; - } + const finalSettingName: string = setting.invertedSettingName ?? settingName; - const watcherId = `${new Date().getTime()}_${SettingsStore.watcherCount++}_${settingName}_${roomId}`; + const watcherId = `${new Date().getTime()}_${SettingsStore.watcherCount++}_${finalSettingName}_${roomId}`; const localizedCallback = (changedInRoomId: string | null, atLevel: SettingLevel, newValAtLevel: any): void => { - if (!SettingsStore.doesSettingSupportLevel(originalSettingName, atLevel)) { + if (!SettingsStore.doesSettingSupportLevel(settingName, atLevel)) { logger.warn( `Setting handler notified for an update of an invalid setting level: ` + - `${originalSettingName}@${atLevel} - this likely means a weird setting value ` + + `${settingName}@${atLevel} - this likely means a weird setting value ` + `made it into the level's storage. The notification will be ignored.`, ); return; } - const newValue = SettingsStore.getValue(originalSettingName); - const newValueAtLevel = SettingsStore.getValueAt(atLevel, originalSettingName) ?? newValAtLevel; - callbackFn(originalSettingName, changedInRoomId, atLevel, newValueAtLevel, newValue); + const newValue = SettingsStore.getValue(settingName); + const newValueAtLevel = SettingsStore.getValueAt(atLevel, settingName) ?? newValAtLevel; + callbackFn(settingName, changedInRoomId, atLevel, newValueAtLevel, newValue); }; SettingsStore.watchers.set(watcherId, localizedCallback); - defaultWatchManager.watchSetting(settingName, roomId, localizedCallback); + defaultWatchManager.watchSetting(finalSettingName, roomId, localizedCallback); return watcherId; } @@ -214,7 +211,7 @@ export default class SettingsStore { * @param {string} settingName The setting name to monitor. * @param {String} roomId The room ID to monitor for changes in. Use null for all rooms. */ - public static monitorSetting(settingName: string, roomId: string | null): void { + public static monitorSetting(settingName: SettingKey, roomId: string | null): void { roomId = roomId || null; // the thing wants null specifically to work, so appease it. if (!this.monitors.has(settingName)) this.monitors.set(settingName, new Map()); @@ -262,7 +259,7 @@ export default class SettingsStore { * The level to get the display name for; Defaults to 'default'. * @return {String} The display name for the setting, or null if not found. */ - public static getDisplayName(settingName: string, atLevel = SettingLevel.DEFAULT): string | null { + public static getDisplayName(settingName: SettingKey, atLevel = SettingLevel.DEFAULT): string | null { if (!SETTINGS[settingName] || !SETTINGS[settingName].displayName) return null; const displayName = SETTINGS[settingName].displayName; @@ -285,7 +282,7 @@ export default class SettingsStore { * @param {string} settingName The setting to look up. * @return {String} The description for the setting, or null if not found. */ - public static getDescription(settingName: string): string | ReactNode { + public static getDescription(settingName: SettingKey): string | ReactNode { const description = SETTINGS[settingName]?.description; if (!description) return null; if (typeof description !== "string") return description(); @@ -297,7 +294,7 @@ export default class SettingsStore { * @param {string} settingName The setting to look up. * @return {boolean} True if the setting is a feature. */ - public static isFeature(settingName: string): boolean { + public static isFeature(settingName: SettingKey): boolean { if (!SETTINGS[settingName]) return false; return !!SETTINGS[settingName].isFeature; } @@ -307,12 +304,12 @@ export default class SettingsStore { * @param {string} settingName The setting to look up. * @return {boolean} True if the setting should have a warning sign. */ - public static shouldHaveWarning(settingName: string): boolean { + public static shouldHaveWarning(settingName: SettingKey): boolean { if (!SETTINGS[settingName]) return false; return SETTINGS[settingName].shouldWarn ?? false; } - public static getBetaInfo(settingName: string): ISetting["betaInfo"] { + public static getBetaInfo(settingName: SettingKey): ISetting["betaInfo"] { // consider a beta disabled if the config is explicitly set to false, in which case treat as normal Labs flag if ( SettingsStore.isFeature(settingName) && @@ -327,7 +324,7 @@ export default class SettingsStore { } } - public static getLabGroup(settingName: string): LabGroup | undefined { + public static getLabGroup(settingName: SettingKey): LabGroup | undefined { if (SettingsStore.isFeature(settingName)) { return (SETTINGS[settingName]).labsGroup; } @@ -340,7 +337,7 @@ export default class SettingsStore { * @param {string} settingName The setting to look up. * @return {string} The reason the setting is disabled. */ - public static disabledMessage(settingName: string): string | undefined { + public static disabledMessage(settingName: SettingKey): string | undefined { const disabled = SETTINGS[settingName].controller?.settingDisabled; return typeof disabled === "string" ? disabled : undefined; } @@ -353,7 +350,21 @@ export default class SettingsStore { * @param {boolean} excludeDefault True to disable using the default value. * @return {*} The value, or null if not found */ - public static getValue(settingName: string, roomId: string | null = null, excludeDefault = false): T { + public static getValue( + settingName: S, + roomId: string | null, + excludeDefault: true, + ): Settings[S]["default"] | undefined; + public static getValue( + settingName: S, + roomId?: string | null, + excludeDefault?: false, + ): Settings[S]["default"]; + public static getValue( + settingName: S, + roomId: string | null = null, + excludeDefault = false, + ): Settings[S]["default"] | undefined { // Verify that the setting is actually a setting if (!SETTINGS[settingName]) { throw new Error("Setting '" + settingName + "' does not appear to be a setting."); @@ -362,7 +373,7 @@ export default class SettingsStore { const setting = SETTINGS[settingName]; const levelOrder = getLevelOrder(setting); - return SettingsStore.getValueAt(levelOrder[0], settingName, roomId, false, excludeDefault); + return SettingsStore.getValueAt(levelOrder[0], settingName, roomId, false, excludeDefault); } /** @@ -376,13 +387,13 @@ export default class SettingsStore { * @param {boolean} excludeDefault True to disable using the default value. * @return {*} The value, or null if not found. */ - public static getValueAt( + public static getValueAt( level: SettingLevel, - settingName: string, + settingName: S, roomId: string | null = null, explicit = false, excludeDefault = false, - ): T { + ): Settings[S]["default"] { // Verify that the setting is actually a setting const setting = SETTINGS[settingName]; if (!setting) { @@ -399,9 +410,10 @@ export default class SettingsStore { // Check if we need to invert the setting at all. Do this after we get the setting // handlers though, otherwise we'll fail to read the value. + let finalSettingName: string = settingName; if (setting.invertedSettingName) { //console.warn(`Inverting ${settingName} to be ${setting.invertedSettingName} - legacy setting`); - settingName = setting.invertedSettingName; + finalSettingName = setting.invertedSettingName; } if (explicit) { @@ -409,7 +421,7 @@ export default class SettingsStore { if (!handler) { return SettingsStore.getFinalValue(setting, level, roomId, null, null); } - const value = handler.getValue(settingName, roomId); + const value = handler.getValue(finalSettingName, roomId); return SettingsStore.getFinalValue(setting, level, roomId, value, level); } @@ -418,7 +430,7 @@ export default class SettingsStore { if (!handler) continue; if (excludeDefault && levelOrder[i] === "default") continue; - const value = handler.getValue(settingName, roomId); + const value = handler.getValue(finalSettingName, roomId); if (value === null || value === undefined) continue; return SettingsStore.getFinalValue(setting, level, roomId, value, levelOrder[i]); } @@ -432,7 +444,7 @@ export default class SettingsStore { * @param {String} roomId The room ID to read the setting value in, may be null. * @return {*} The default value */ - public static getDefaultValue(settingName: string): any { + public static getDefaultValue(settingName: SettingKey): any { // Verify that the setting is actually a setting if (!SETTINGS[settingName]) { throw new Error("Setting '" + settingName + "' does not appear to be a setting."); @@ -474,7 +486,7 @@ export default class SettingsStore { /* eslint-enable valid-jsdoc */ public static async setValue( - settingName: string, + settingName: SettingKey, roomId: string | null, level: SettingLevel, value: any, @@ -490,24 +502,25 @@ export default class SettingsStore { throw new Error("Setting " + settingName + " does not have a handler for " + level); } + let finalSettingName: string = settingName; if (setting.invertedSettingName) { // Note: We can't do this when the `level` is "default", however we also // know that the user can't possible change the default value through this // function so we don't bother checking it. //console.warn(`Inverting ${settingName} to be ${setting.invertedSettingName} - legacy setting`); - settingName = setting.invertedSettingName; + finalSettingName = setting.invertedSettingName; value = !value; } - if (!handler.canSetValue(settingName, roomId)) { - throw new Error("User cannot set " + settingName + " at " + level + " in " + roomId); + if (!handler.canSetValue(finalSettingName, roomId)) { + throw new Error("User cannot set " + finalSettingName + " at " + level + " in " + roomId); } if (setting.controller && !(await setting.controller.beforeChange(level, roomId, value))) { return; // controller says no } - await handler.setValue(settingName, roomId, value); + await handler.setValue(finalSettingName, roomId, value); setting.controller?.onChange(level, roomId, value); } @@ -530,7 +543,7 @@ export default class SettingsStore { * @param {SettingLevel} level The level to check at. * @return {boolean} True if the user may set the setting, false otherwise. */ - public static canSetValue(settingName: string, roomId: string | null, level: SettingLevel): boolean { + public static canSetValue(settingName: SettingKey, roomId: string | null, level: SettingLevel): boolean { const setting = SETTINGS[settingName]; // Verify that the setting is actually a setting if (!setting) { @@ -563,7 +576,7 @@ export default class SettingsStore { * @returns */ public static settingIsOveriddenAtConfigLevel( - settingName: string, + settingName: SettingKey, roomId: string | null, level: SettingLevel, ): boolean { @@ -597,7 +610,7 @@ export default class SettingsStore { * the level itself can be supported by the runtime (ie: you will need to call #isLevelSupported() * on your own). */ - public static doesSettingSupportLevel(settingName: string, level: SettingLevel): boolean { + public static doesSettingSupportLevel(settingName: SettingKey, level: SettingLevel): boolean { const setting = SETTINGS[settingName]; if (!setting) { throw new Error("Setting '" + settingName + "' does not appear to be a setting."); @@ -612,7 +625,7 @@ export default class SettingsStore { * @param {string} settingName The setting name. * @return {SettingLevel} */ - public static firstSupportedLevel(settingName: string): SettingLevel | null { + public static firstSupportedLevel(settingName: SettingKey): SettingLevel | null { // Verify that the setting is actually a setting const setting = SETTINGS[settingName]; if (!setting) { @@ -699,7 +712,7 @@ export default class SettingsStore { * @param {string} realSettingName The setting name to try and read. * @param {string} roomId Optional room ID to test the setting in. */ - public static debugSetting(realSettingName: string, roomId: string): void { + public static debugSetting(realSettingName: SettingKey, roomId: string): void { logger.log(`--- DEBUG ${realSettingName}`); // Note: we intentionally use JSON.stringify here to avoid the console masking the @@ -711,7 +724,7 @@ export default class SettingsStore { logger.log(`--- default level order: ${JSON.stringify(LEVEL_ORDER)}`); logger.log(`--- registered handlers: ${JSON.stringify(Object.keys(LEVEL_HANDLERS))}`); - const doChecks = (settingName: string): void => { + const doChecks = (settingName: SettingKey): void => { for (const handlerName of Object.keys(LEVEL_HANDLERS)) { const handler = LEVEL_HANDLERS[handlerName as SettingLevel]; @@ -803,19 +816,19 @@ export default class SettingsStore { if (def.invertedSettingName) { logger.log(`--- TESTING INVERTED SETTING NAME`); logger.log(`--- inverted: ${def.invertedSettingName}`); - doChecks(def.invertedSettingName); + doChecks(def.invertedSettingName as SettingKey); } logger.log(`--- END DEBUG`); } - private static getHandler(settingName: string, level: SettingLevel): SettingsHandler | null { + private static getHandler(settingName: SettingKey, level: SettingLevel): SettingsHandler | null { const handlers = SettingsStore.getHandlers(settingName); if (!handlers[level]) return null; return handlers[level]!; } - private static getHandlers(settingName: string): HandlerMap { + private static getHandlers(settingName: SettingKey): HandlerMap { if (!SETTINGS[settingName]) return {}; const handlers: Partial> = {}; diff --git a/src/settings/UIFeature.ts b/src/settings/UIFeature.ts index 238e8a233fc..4aef725d4a8 100644 --- a/src/settings/UIFeature.ts +++ b/src/settings/UIFeature.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/WatchManager.ts b/src/settings/WatchManager.ts index 52403136c15..fd38ae3637f 100644 --- a/src/settings/WatchManager.ts +++ b/src/settings/WatchManager.ts @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/AnalyticsController.ts b/src/settings/controllers/AnalyticsController.ts index 9272753e51a..f2b432ef5b5 100644 --- a/src/settings/controllers/AnalyticsController.ts +++ b/src/settings/controllers/AnalyticsController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/DeviceIsolationModeController.ts b/src/settings/controllers/DeviceIsolationModeController.ts index fe932d0deb8..bbdca789cee 100644 --- a/src/settings/controllers/DeviceIsolationModeController.ts +++ b/src/settings/controllers/DeviceIsolationModeController.ts @@ -1,6 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + +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. */ diff --git a/src/settings/controllers/FallbackIceServerController.ts b/src/settings/controllers/FallbackIceServerController.ts index 5fd8bee322d..e433b64ba3d 100644 --- a/src/settings/controllers/FallbackIceServerController.ts +++ b/src/settings/controllers/FallbackIceServerController.ts @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/FontSizeController.ts b/src/settings/controllers/FontSizeController.ts index d4b23b96cbc..762e18011e7 100644 --- a/src/settings/controllers/FontSizeController.ts +++ b/src/settings/controllers/FontSizeController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/IncompatibleController.ts b/src/settings/controllers/IncompatibleController.ts index 3dcce19c895..37100271f6b 100644 --- a/src/settings/controllers/IncompatibleController.ts +++ b/src/settings/controllers/IncompatibleController.ts @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 SettingController from "./SettingController"; import { SettingLevel } from "../SettingLevel"; import SettingsStore from "../SettingsStore"; +import { BooleanSettingKey } from "../Settings.tsx"; /** * Enforces that a boolean setting cannot be enabled if the incompatible setting @@ -17,7 +18,7 @@ import SettingsStore from "../SettingsStore"; */ export default class IncompatibleController extends SettingController { public constructor( - private settingName: string, + private settingName: BooleanSettingKey, private forcedValue: any = false, private incompatibleValue: any | ((v: any) => boolean) = true, ) { diff --git a/src/settings/controllers/MatrixClientBackedController.ts b/src/settings/controllers/MatrixClientBackedController.ts index 15cc58e25ae..ab0ca82093a 100644 --- a/src/settings/controllers/MatrixClientBackedController.ts +++ b/src/settings/controllers/MatrixClientBackedController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/NotificationControllers.ts b/src/settings/controllers/NotificationControllers.ts index da3ef6d859f..effb7aee59a 100644 --- a/src/settings/controllers/NotificationControllers.ts +++ b/src/settings/controllers/NotificationControllers.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/ReducedMotionController.ts b/src/settings/controllers/ReducedMotionController.ts index 11207fe3039..38d2477fc3e 100644 --- a/src/settings/controllers/ReducedMotionController.ts +++ b/src/settings/controllers/ReducedMotionController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/ReloadOnChangeController.ts b/src/settings/controllers/ReloadOnChangeController.ts index 2e1bb15b778..ace6d108d2a 100644 --- a/src/settings/controllers/ReloadOnChangeController.ts +++ b/src/settings/controllers/ReloadOnChangeController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/ServerSupportUnstableFeatureController.ts b/src/settings/controllers/ServerSupportUnstableFeatureController.ts index f2ca2c0b07c..9da9e3befca 100644 --- a/src/settings/controllers/ServerSupportUnstableFeatureController.ts +++ b/src/settings/controllers/ServerSupportUnstableFeatureController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,6 +10,7 @@ import { SettingLevel } from "../SettingLevel"; import MatrixClientBackedController from "./MatrixClientBackedController"; import { WatchManager } from "../WatchManager"; import SettingsStore from "../SettingsStore"; +import { SettingKey } from "../Settings.tsx"; /** * Disables a given setting if the server unstable feature it requires is not supported @@ -28,7 +29,7 @@ export default class ServerSupportUnstableFeatureController extends MatrixClient * the features in the group are supported (all features in a group are required). */ public constructor( - private readonly settingName: string, + private readonly settingName: SettingKey, private readonly watchers: WatchManager, private readonly unstableFeatureGroups: string[][], private readonly stableVersion?: string, diff --git a/src/settings/controllers/SettingController.ts b/src/settings/controllers/SettingController.ts index 63922f64a8e..821b3d20321 100644 --- a/src/settings/controllers/SettingController.ts +++ b/src/settings/controllers/SettingController.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/SlidingSyncController.ts b/src/settings/controllers/SlidingSyncController.ts index eccff0ab906..11ae1a2ba02 100644 --- a/src/settings/controllers/SlidingSyncController.ts +++ b/src/settings/controllers/SlidingSyncController.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 Ed Geraghty Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/SystemFontController.ts b/src/settings/controllers/SystemFontController.ts index d1cc107ca1b..70fab9eda9c 100644 --- a/src/settings/controllers/SystemFontController.ts +++ b/src/settings/controllers/SystemFontController.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/ThemeController.ts b/src/settings/controllers/ThemeController.ts index 69f091c4361..a192a4d0801 100644 --- a/src/settings/controllers/ThemeController.ts +++ b/src/settings/controllers/ThemeController.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/controllers/UIFeatureController.ts b/src/settings/controllers/UIFeatureController.ts index e6548909dea..5371751a3c0 100644 --- a/src/settings/controllers/UIFeatureController.ts +++ b/src/settings/controllers/UIFeatureController.ts @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 SettingController from "./SettingController"; import { SettingLevel } from "../SettingLevel"; import SettingsStore from "../SettingsStore"; +import { SettingKey } from "../Settings.tsx"; /** * Enforces that a boolean setting cannot be enabled if the corresponding @@ -19,7 +20,7 @@ import SettingsStore from "../SettingsStore"; */ export default class UIFeatureController extends SettingController { public constructor( - private uiFeatureName: string, + private uiFeatureName: SettingKey, private forcedValue = false, ) { super(); diff --git a/src/settings/enums/ImageSize.ts b/src/settings/enums/ImageSize.ts index 1ce293a5362..394ee6b4fe9 100644 --- a/src/settings/enums/ImageSize.ts +++ b/src/settings/enums/ImageSize.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/enums/Layout.ts b/src/settings/enums/Layout.ts index 9054dd55822..1bf560a8fd0 100644 --- a/src/settings/enums/Layout.ts +++ b/src/settings/enums/Layout.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2021 Quirin Götz -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/enums/UseCase.tsx b/src/settings/enums/UseCase.tsx index 07b24f90283..036e0a51cd2 100644 --- a/src/settings/enums/UseCase.tsx +++ b/src/settings/enums/UseCase.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/AbstractLocalStorageSettingsHandler.ts b/src/settings/handlers/AbstractLocalStorageSettingsHandler.ts index 70cdedffe15..e6e2288319b 100644 --- a/src/settings/handlers/AbstractLocalStorageSettingsHandler.ts +++ b/src/settings/handlers/AbstractLocalStorageSettingsHandler.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/AccountSettingsHandler.ts b/src/settings/handlers/AccountSettingsHandler.ts index 051e6fc7a61..05005569316 100644 --- a/src/settings/handlers/AccountSettingsHandler.ts +++ b/src/settings/handlers/AccountSettingsHandler.ts @@ -3,11 +3,11 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { ClientEvent, MatrixClient, MatrixEvent } from "matrix-js-sdk/src/matrix"; +import { AccountDataEvents, ClientEvent, MatrixClient, MatrixEvent } from "matrix-js-sdk/src/matrix"; import { defer } from "matrix-js-sdk/src/utils"; import { isEqual } from "lodash"; @@ -140,11 +140,11 @@ export default class AccountSettingsHandler extends MatrixClientBackedSettingsHa } // helper function to set account data then await it being echoed back - private async setAccountData( - eventType: string, - field: string, - value: any, - legacyEventType?: string, + private async setAccountData( + eventType: K, + field: F, + value: AccountDataEvents[K][F], + legacyEventType?: keyof AccountDataEvents, ): Promise { let content = this.getSettings(eventType); if (legacyEventType && !content?.[field]) { @@ -161,7 +161,8 @@ export default class AccountSettingsHandler extends MatrixClientBackedSettingsHa // which race between different lines. const deferred = defer(); const handler = (event: MatrixEvent): void => { - if (event.getType() !== eventType || !isEqual(event.getContent()[field], value)) return; + if (event.getType() !== eventType || !isEqual(event.getContent()[field], value)) + return; this.client.off(ClientEvent.AccountData, handler); deferred.resolve(); }; @@ -212,7 +213,7 @@ export default class AccountSettingsHandler extends MatrixClientBackedSettingsHa return this.client && !this.client.isGuest(); } - private getSettings(eventType = "im.vector.web.settings"): any { + private getSettings(eventType: keyof AccountDataEvents = "im.vector.web.settings"): any { // TODO: [TS] Types on return if (!this.client) return null; diff --git a/src/settings/handlers/ConfigSettingsHandler.ts b/src/settings/handlers/ConfigSettingsHandler.ts index 06e694bc38c..1dd0e19dc5b 100644 --- a/src/settings/handlers/ConfigSettingsHandler.ts +++ b/src/settings/handlers/ConfigSettingsHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/DefaultSettingsHandler.ts b/src/settings/handlers/DefaultSettingsHandler.ts index 758a8c0c0d1..a005525b4cb 100644 --- a/src/settings/handlers/DefaultSettingsHandler.ts +++ b/src/settings/handlers/DefaultSettingsHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/DeviceSettingsHandler.ts b/src/settings/handlers/DeviceSettingsHandler.ts index 0fe5ef74112..5feb0c1db38 100644 --- a/src/settings/handlers/DeviceSettingsHandler.ts +++ b/src/settings/handlers/DeviceSettingsHandler.ts @@ -4,7 +4,7 @@ Copyright 2019-2022 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/LocalEchoWrapper.ts b/src/settings/handlers/LocalEchoWrapper.ts index 7d5050c9b8e..2c44fca8a4e 100644 --- a/src/settings/handlers/LocalEchoWrapper.ts +++ b/src/settings/handlers/LocalEchoWrapper.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/MatrixClientBackedSettingsHandler.ts b/src/settings/handlers/MatrixClientBackedSettingsHandler.ts index 86b3071a0ea..84d56dcecf2 100644 --- a/src/settings/handlers/MatrixClientBackedSettingsHandler.ts +++ b/src/settings/handlers/MatrixClientBackedSettingsHandler.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/PlatformSettingsHandler.ts b/src/settings/handlers/PlatformSettingsHandler.ts index 2ea350fdd8a..fb16b182fe2 100644 --- a/src/settings/handlers/PlatformSettingsHandler.ts +++ b/src/settings/handlers/PlatformSettingsHandler.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/RoomAccountSettingsHandler.ts b/src/settings/handlers/RoomAccountSettingsHandler.ts index 7e7242b62bf..73a83d4575e 100644 --- a/src/settings/handlers/RoomAccountSettingsHandler.ts +++ b/src/settings/handlers/RoomAccountSettingsHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/RoomDeviceSettingsHandler.ts b/src/settings/handlers/RoomDeviceSettingsHandler.ts index 6e4324fad8d..cf7c17ced68 100644 --- a/src/settings/handlers/RoomDeviceSettingsHandler.ts +++ b/src/settings/handlers/RoomDeviceSettingsHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 - 2022 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/RoomSettingsHandler.ts b/src/settings/handlers/RoomSettingsHandler.ts index d67acf5d0f5..dd6bc48a012 100644 --- a/src/settings/handlers/RoomSettingsHandler.ts +++ b/src/settings/handlers/RoomSettingsHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/handlers/SettingsHandler.ts b/src/settings/handlers/SettingsHandler.ts index 158e45847e2..43ec57cc135 100644 --- a/src/settings/handlers/SettingsHandler.ts +++ b/src/settings/handlers/SettingsHandler.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/watchers/FontWatcher.ts b/src/settings/watchers/FontWatcher.ts index c2e71956b6d..2ab3857eb8a 100644 --- a/src/settings/watchers/FontWatcher.ts +++ b/src/settings/watchers/FontWatcher.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -57,7 +57,7 @@ export class FontWatcher implements IWatcher { * @private */ private async migrateBaseFontV1toFontSizeDelta(): Promise { - const legacyBaseFontSize = SettingsStore.getValue("baseFontSize"); + const legacyBaseFontSize = SettingsStore.getValue("baseFontSize"); // No baseFontV1 found, nothing to migrate if (!legacyBaseFontSize) return; @@ -82,7 +82,7 @@ export class FontWatcher implements IWatcher { * @private */ private async migrateBaseFontV2toFontSizeDelta(): Promise { - const legacyBaseFontV2Size = SettingsStore.getValue("baseFontSizeV2"); + const legacyBaseFontV2Size = SettingsStore.getValue("baseFontSizeV2"); // No baseFontV2 found, nothing to migrate if (!legacyBaseFontV2Size) return; @@ -140,7 +140,7 @@ export class FontWatcher implements IWatcher { * @returns {number} the default font size of the browser */ public static getBrowserDefaultFontSize(): number { - return this.getRootFontSize() - SettingsStore.getValue("fontSizeDelta"); + return this.getRootFontSize() - SettingsStore.getValue("fontSizeDelta"); } public stop(): void { @@ -148,7 +148,7 @@ export class FontWatcher implements IWatcher { } private updateFont(): void { - this.setRootFontSize(SettingsStore.getValue("fontSizeDelta")); + this.setRootFontSize(SettingsStore.getValue("fontSizeDelta")); this.setSystemFont({ useBundledEmojiFont: SettingsStore.getValue("useBundledEmojiFont"), useSystemFont: SettingsStore.getValue("useSystemFont"), diff --git a/src/settings/watchers/ThemeWatcher.ts b/src/settings/watchers/ThemeWatcher.ts index d0f00c52d9a..4d0c4a7171f 100644 --- a/src/settings/watchers/ThemeWatcher.ts +++ b/src/settings/watchers/ThemeWatcher.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/settings/watchers/Watcher.ts b/src/settings/watchers/Watcher.ts index 9a5b37b3d6d..903db56ac3a 100644 --- a/src/settings/watchers/Watcher.ts +++ b/src/settings/watchers/Watcher.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/shouldHideEvent.ts b/src/shouldHideEvent.ts index 7948bfb9f92..e97afd0fbdd 100644 --- a/src/shouldHideEvent.ts +++ b/src/shouldHideEvent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,6 +11,7 @@ import { KnownMembership } from "matrix-js-sdk/src/types"; import SettingsStore from "./settings/SettingsStore"; import { IRoomState } from "./components/structures/RoomView"; +import { SettingKey } from "./settings/Settings.tsx"; interface IDiff { isMemberEvent: boolean; @@ -53,7 +54,7 @@ export default function shouldHideEvent(ev: MatrixEvent, ctx?: IRoomState): bool // so we should prefer using cached values if a RoomContext is available const isEnabled = ctx ? (name: keyof IRoomState) => ctx[name] - : (name: string) => SettingsStore.getValue(name, ev.getRoomId()); + : (name: SettingKey) => SettingsStore.getValue(name, ev.getRoomId()); // Hide redacted events // Deleted events with a thread are always shown regardless of user preference diff --git a/src/slash-commands/command.ts b/src/slash-commands/command.ts index 22ab875894f..01c62277239 100644 --- a/src/slash-commands/command.ts +++ b/src/slash-commands/command.ts @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/slash-commands/interface.ts b/src/slash-commands/interface.ts index 43d3cc7e27b..6f1f0c8af42 100644 --- a/src/slash-commands/interface.ts +++ b/src/slash-commands/interface.ts @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/slash-commands/join.ts b/src/slash-commands/join.ts index 886e17e2303..de548cba5f1 100644 --- a/src/slash-commands/join.ts +++ b/src/slash-commands/join.ts @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/slash-commands/op.ts b/src/slash-commands/op.ts index ff575575b04..77084bc7a07 100644 --- a/src/slash-commands/op.ts +++ b/src/slash-commands/op.ts @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/slash-commands/utils.ts b/src/slash-commands/utils.ts index 073820364ec..8bdade9cf12 100644 --- a/src/slash-commands/utils.ts +++ b/src/slash-commands/utils.ts @@ -5,7 +5,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/AccountPasswordStore.ts b/src/stores/AccountPasswordStore.ts deleted file mode 100644 index 85bb7359e19..00000000000 --- a/src/stores/AccountPasswordStore.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. -Copyright 2023 The Matrix.org Foundation C.I.C. - -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -Please see LICENSE files in the repository root for full details. -*/ - -const PASSWORD_TIMEOUT = 5 * 60 * 1000; // five minutes - -/** - * Store for the account password. - * This password can be used for a short time after login - * to avoid requestin the password all the time for instance during e2ee setup. - */ -export class AccountPasswordStore { - private password?: string; - private passwordTimeoutId?: ReturnType; - - public setPassword(password: string): void { - this.password = password; - clearTimeout(this.passwordTimeoutId); - this.passwordTimeoutId = setTimeout(this.clearPassword, PASSWORD_TIMEOUT); - } - - public getPassword(): string | undefined { - return this.password; - } - - public clearPassword = (): void => { - clearTimeout(this.passwordTimeoutId); - this.passwordTimeoutId = undefined; - this.password = undefined; - }; -} diff --git a/src/stores/ActiveWidgetStore.ts b/src/stores/ActiveWidgetStore.ts index c3db7888fde..8d591552248 100644 --- a/src/stores/ActiveWidgetStore.ts +++ b/src/stores/ActiveWidgetStore.ts @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/AsyncStore.ts b/src/stores/AsyncStore.ts index 4baf8072473..8f73bdb10a2 100644 --- a/src/stores/AsyncStore.ts +++ b/src/stores/AsyncStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/AsyncStoreWithClient.ts b/src/stores/AsyncStoreWithClient.ts index a131614c7c1..598594ca3b9 100644 --- a/src/stores/AsyncStoreWithClient.ts +++ b/src/stores/AsyncStoreWithClient.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/AutoRageshakeStore.ts b/src/stores/AutoRageshakeStore.ts index 284c3e24a4d..a972099473a 100644 --- a/src/stores/AutoRageshakeStore.ts +++ b/src/stores/AutoRageshakeStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/BreadcrumbsStore.ts b/src/stores/BreadcrumbsStore.ts index 9859f240154..c02d1181fe7 100644 --- a/src/stores/BreadcrumbsStore.ts +++ b/src/stores/BreadcrumbsStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -127,7 +127,7 @@ export class BreadcrumbsStore extends AsyncStoreWithClient { }; private async updateRooms(): Promise { - let roomIds = SettingsStore.getValue("breadcrumb_rooms"); + let roomIds = SettingsStore.getValue("breadcrumb_rooms"); if (!roomIds || roomIds.length === 0) roomIds = []; const rooms = filterBoolean(roomIds.map((r) => this.matrixClient?.getRoom(r))); diff --git a/src/stores/CallStore.ts b/src/stores/CallStore.ts index 115a56aced2..d667e0b811b 100644 --- a/src/stores/CallStore.ts +++ b/src/stores/CallStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -61,7 +61,7 @@ export class CallStore extends AsyncStoreWithClient<{}> { // If the room ID of a previously connected call is still in settings at // this time, that's a sign that we failed to disconnect from it // properly, and need to clean up after ourselves - const uncleanlyDisconnectedRoomIds = SettingsStore.getValue("activeCallRoomIds"); + const uncleanlyDisconnectedRoomIds = SettingsStore.getValue("activeCallRoomIds"); if (uncleanlyDisconnectedRoomIds.length) { await Promise.all([ ...uncleanlyDisconnectedRoomIds.map(async (uncleanlyDisconnectedRoomId): Promise => { diff --git a/src/stores/InitialCryptoSetupStore.ts b/src/stores/InitialCryptoSetupStore.ts new file mode 100644 index 00000000000..593b9c1108e --- /dev/null +++ b/src/stores/InitialCryptoSetupStore.ts @@ -0,0 +1,123 @@ +/* +Copyright 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 EventEmitter from "events"; +import { MatrixClient } from "matrix-js-sdk/src/matrix"; +import { logger } from "matrix-js-sdk/src/logger"; +import { useEffect, useState } from "react"; + +import { createCrossSigning } from "../CreateCrossSigning"; + +type Status = "in_progress" | "complete" | "error" | undefined; + +export const useInitialCryptoSetupStatus = (store: InitialCryptoSetupStore): Status => { + const [status, setStatus] = useState(store.getStatus()); + + useEffect(() => { + const update = (): void => { + setStatus(store.getStatus()); + }; + + store.on("update", update); + + return () => { + store.off("update", update); + }; + }, [store]); + + return status; +}; + +/** + * Logic for setting up crypto state that's done immediately after + * a user registers. Should be transparent to the user, not requiring + * interaction in most cases. + * As distinct from SetupEncryptionStore which is for setting up + * 4S or verifying the device, will always require interaction + * from the user in some form. + */ +export class InitialCryptoSetupStore extends EventEmitter { + private status: Status = undefined; + + private client?: MatrixClient; + private onFinished?: (success: boolean) => void; + + public static sharedInstance(): InitialCryptoSetupStore { + if (!window.mxInitialCryptoStore) window.mxInitialCryptoStore = new InitialCryptoSetupStore(); + return window.mxInitialCryptoStore; + } + + public getStatus(): Status { + return this.status; + } + + /** + * Start the initial crypto setup process. + * + * @param {MatrixClient} client The client to use for the setup + */ + public startInitialCryptoSetup(client: MatrixClient, onFinished: (success: boolean) => void): void { + this.client = client; + this.onFinished = onFinished; + + // We just start this process: it's progress is tracked by the events rather + // than returning a promise, so we don't bother. + this.doSetup().catch(() => logger.error("Initial crypto setup failed")); + } + + /** + * Retry the initial crypto setup process. + * + * If no crypto setup is currently in process, this will return false. + * + * @returns {boolean} True if a retry was initiated, otherwise false + */ + public retry(): boolean { + if (this.client === undefined) return false; + + this.doSetup().catch(() => logger.error("Initial crypto setup failed")); + + return true; + } + + private reset(): void { + this.client = undefined; + } + + private async doSetup(): Promise { + if (this.client === undefined) { + throw new Error("No setup is in progress"); + } + + const cryptoApi = this.client.getCrypto(); + if (!cryptoApi) throw new Error("No crypto module found!"); + + this.status = "in_progress"; + this.emit("update"); + + try { + // Create the user's cross-signing keys + await createCrossSigning(this.client); + + // Check for any existing backup and enable key backup if there isn't one + const currentKeyBackup = await cryptoApi.checkKeyBackupAndEnable(); + if (currentKeyBackup === null) { + await cryptoApi.resetKeyBackup(); + } + + this.reset(); + + this.status = "complete"; + this.emit("update"); + this.onFinished?.(true); + } catch (e) { + logger.error("Error bootstrapping cross-signing", e); + this.status = "error"; + this.emit("update"); + } + } +} diff --git a/src/stores/LifecycleStore.ts b/src/stores/LifecycleStore.ts index a918814abd1..8a369cb51e4 100644 --- a/src/stores/LifecycleStore.ts +++ b/src/stores/LifecycleStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/MemberListStore.ts b/src/stores/MemberListStore.ts index e500dec84c6..12878c4ec9c 100644 --- a/src/stores/MemberListStore.ts +++ b/src/stores/MemberListStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/ModalWidgetStore.ts b/src/stores/ModalWidgetStore.ts index 59437db403c..9f5ddca25d4 100644 --- a/src/stores/ModalWidgetStore.ts +++ b/src/stores/ModalWidgetStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/NonUrgentToastStore.ts b/src/stores/NonUrgentToastStore.ts index fc05fb02cd9..97a4bbdfdf6 100644 --- a/src/stores/NonUrgentToastStore.ts +++ b/src/stores/NonUrgentToastStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/OwnBeaconStore.ts b/src/stores/OwnBeaconStore.ts index ccd4bf33a3d..72c67c3635f 100644 --- a/src/stores/OwnBeaconStore.ts +++ b/src/stores/OwnBeaconStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/OwnProfileStore.ts b/src/stores/OwnProfileStore.ts index be8c72aa230..ef721ee4aa3 100644 --- a/src/stores/OwnProfileStore.ts +++ b/src/stores/OwnProfileStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/ReadyWatchingStore.ts b/src/stores/ReadyWatchingStore.ts index 922e8b83936..cb99cf12688 100644 --- a/src/stores/ReadyWatchingStore.ts +++ b/src/stores/ReadyWatchingStore.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2021, 2022 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/ReleaseAnnouncementStore.ts b/src/stores/ReleaseAnnouncementStore.ts index ba6a79fec0f..05362dde5a9 100644 --- a/src/stores/ReleaseAnnouncementStore.ts +++ b/src/stores/ReleaseAnnouncementStore.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -26,7 +26,9 @@ export type Feature = (typeof FEATURES)[number]; * The stored settings for the release announcements. * The boolean is at true when the user has viewed the feature */ -type StoredSettings = Record; +type StoredSettings = Partial>; + +export type ReleaseAnnouncementData = StoredSettings; /** * The events emitted by the ReleaseAnnouncementStore. @@ -82,7 +84,7 @@ export class ReleaseAnnouncementStore extends TypedEventEmitter("releaseAnnouncementData")); + return cloneDeep(SettingsStore.getValue("releaseAnnouncementData")); } /** @@ -90,7 +92,7 @@ export class ReleaseAnnouncementStore extends TypedEventEmitter(Features.ReleaseAnnouncement); + return SettingsStore.getValue(Features.ReleaseAnnouncement); } /** diff --git a/src/stores/RoomScrollStateStore.ts b/src/stores/RoomScrollStateStore.ts index 21ffb03be62..b072200e024 100644 --- a/src/stores/RoomScrollStateStore.ts +++ b/src/stores/RoomScrollStateStore.ts @@ -1,7 +1,7 @@ /* Copyright 2017-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/RoomViewStore.tsx b/src/stores/RoomViewStore.tsx index 66644c06a1f..822a6a9dd1f 100644 --- a/src/stores/RoomViewStore.tsx +++ b/src/stores/RoomViewStore.tsx @@ -4,7 +4,7 @@ Copyright 2019-2022 The Matrix.org Foundation C.I.C. Copyright 2017, 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/SetupEncryptionStore.ts b/src/stores/SetupEncryptionStore.ts index 70c721b1ca3..3aa6ad18661 100644 --- a/src/stores/SetupEncryptionStore.ts +++ b/src/stores/SetupEncryptionStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -19,7 +19,6 @@ import { Device, SecretStorage } from "matrix-js-sdk/src/matrix"; import { MatrixClientPeg } from "../MatrixClientPeg"; import { AccessCancelledError, accessSecretStorage } from "../SecurityManager"; -import { SdkContextClass } from "../contexts/SDKContext"; import { asyncSome } from "../utils/arrays"; import { initialiseDehydration } from "../utils/device/dehydration"; @@ -33,6 +32,11 @@ export enum Phase { ConfirmReset = 6, } +/** + * Logic for setting up 4S and/or verifying the user's device: a process requiring + * ongoing interaction with the user, as distinct from InitialCryptoSetupStore which + * a (usually) non-interactive process that happens immediately after registration. + */ export class SetupEncryptionStore extends EventEmitter { private started?: boolean; public phase?: Phase; @@ -234,7 +238,6 @@ export class SetupEncryptionStore extends EventEmitter { { forceReset: true, resetCrossSigning: true, - accountPassword: SdkContextClass.instance.accountPasswordStore.getPassword(), }, ); } catch (e) { diff --git a/src/stores/ThreepidInviteStore.ts b/src/stores/ThreepidInviteStore.ts index bdb1c8faa26..92fa7d5bd8d 100644 --- a/src/stores/ThreepidInviteStore.ts +++ b/src/stores/ThreepidInviteStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/ToastStore.ts b/src/stores/ToastStore.ts index e2f9a61f3d9..3ebb0d945cc 100644 --- a/src/stores/ToastStore.ts +++ b/src/stores/ToastStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/TypingStore.ts b/src/stores/TypingStore.ts index f836bda0453..26fd4967e7b 100644 --- a/src/stores/TypingStore.ts +++ b/src/stores/TypingStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/UIStore.ts b/src/stores/UIStore.ts index c058cda8a37..0792bb206d1 100644 --- a/src/stores/UIStore.ts +++ b/src/stores/UIStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/UserProfilesStore.ts b/src/stores/UserProfilesStore.ts index cc122498d83..eb3c25a3090 100644 --- a/src/stores/UserProfilesStore.ts +++ b/src/stores/UserProfilesStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/VoiceRecordingStore.ts b/src/stores/VoiceRecordingStore.ts index 7cbb8ac120a..b94301f62cc 100644 --- a/src/stores/VoiceRecordingStore.ts +++ b/src/stores/VoiceRecordingStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/WidgetEchoStore.ts b/src/stores/WidgetEchoStore.ts index 255ce1932f9..ef81ec10d76 100644 --- a/src/stores/WidgetEchoStore.ts +++ b/src/stores/WidgetEchoStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/WidgetStore.ts b/src/stores/WidgetStore.ts index cfb92360a0d..8c697709303 100644 --- a/src/stores/WidgetStore.ts +++ b/src/stores/WidgetStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -17,17 +17,11 @@ import WidgetEchoStore from "../stores/WidgetEchoStore"; import ActiveWidgetStore from "../stores/ActiveWidgetStore"; import WidgetUtils from "../utils/WidgetUtils"; import { UPDATE_EVENT } from "./AsyncStore"; +import { IApp } from "../utils/WidgetUtils-types"; interface IState {} -export interface IApp extends IWidget { - "roomId": string; - "eventId"?: string; // not present on virtual widgets - // eslint-disable-next-line camelcase - "avatar_url"?: string; // MSC2765 https://github.com/matrix-org/matrix-doc/pull/2765 - // Whether the widget was created from `widget_build_url` and thus is a call widget of some kind - "io.element.managed_hybrid"?: boolean; -} +export type { IApp }; export function isAppWidget(widget: IWidget | IApp): widget is IApp { return "roomId" in widget && typeof widget.roomId === "string"; diff --git a/src/stores/local-echo/EchoChamber.ts b/src/stores/local-echo/EchoChamber.ts index 11292df9e9a..1cc9bd981ed 100644 --- a/src/stores/local-echo/EchoChamber.ts +++ b/src/stores/local-echo/EchoChamber.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/local-echo/EchoContext.ts b/src/stores/local-echo/EchoContext.ts index a51b5022aed..17ba5710d4f 100644 --- a/src/stores/local-echo/EchoContext.ts +++ b/src/stores/local-echo/EchoContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/local-echo/EchoStore.ts b/src/stores/local-echo/EchoStore.ts index 956eacb929a..c38995cd4e8 100644 --- a/src/stores/local-echo/EchoStore.ts +++ b/src/stores/local-echo/EchoStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/local-echo/EchoTransaction.ts b/src/stores/local-echo/EchoTransaction.ts index 0293c0d548c..421e334ad03 100644 --- a/src/stores/local-echo/EchoTransaction.ts +++ b/src/stores/local-echo/EchoTransaction.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/local-echo/GenericEchoChamber.ts b/src/stores/local-echo/GenericEchoChamber.ts index e287561fe37..3bda937d3c7 100644 --- a/src/stores/local-echo/GenericEchoChamber.ts +++ b/src/stores/local-echo/GenericEchoChamber.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/local-echo/RoomEchoChamber.ts b/src/stores/local-echo/RoomEchoChamber.ts index 9298d5ffed2..e3188752265 100644 --- a/src/stores/local-echo/RoomEchoChamber.ts +++ b/src/stores/local-echo/RoomEchoChamber.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/local-echo/RoomEchoContext.ts b/src/stores/local-echo/RoomEchoContext.ts index 20eb0cf6534..ae8573c9224 100644 --- a/src/stores/local-echo/RoomEchoContext.ts +++ b/src/stores/local-echo/RoomEchoContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/ListNotificationState.ts b/src/stores/notifications/ListNotificationState.ts index 77bd174f09a..f6af7d35c77 100644 --- a/src/stores/notifications/ListNotificationState.ts +++ b/src/stores/notifications/ListNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/NotificationLevel.ts b/src/stores/notifications/NotificationLevel.ts index 7b370ef658a..8d28e19503f 100644 --- a/src/stores/notifications/NotificationLevel.ts +++ b/src/stores/notifications/NotificationLevel.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/NotificationState.ts b/src/stores/notifications/NotificationState.ts index 6f4044d57b8..9c72c9fef03 100644 --- a/src/stores/notifications/NotificationState.ts +++ b/src/stores/notifications/NotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/RoomNotificationState.ts b/src/stores/notifications/RoomNotificationState.ts index 3a66a051aec..c4f677130d2 100644 --- a/src/stores/notifications/RoomNotificationState.ts +++ b/src/stores/notifications/RoomNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/RoomNotificationStateStore.ts b/src/stores/notifications/RoomNotificationStateStore.ts index 87fb276c101..c58125b0bab 100644 --- a/src/stores/notifications/RoomNotificationStateStore.ts +++ b/src/stores/notifications/RoomNotificationStateStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/SpaceNotificationState.ts b/src/stores/notifications/SpaceNotificationState.ts index ead72d15b46..e5aedf63179 100644 --- a/src/stores/notifications/SpaceNotificationState.ts +++ b/src/stores/notifications/SpaceNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/StaticNotificationState.ts b/src/stores/notifications/StaticNotificationState.ts index b554d0483fe..293c6f45e33 100644 --- a/src/stores/notifications/StaticNotificationState.ts +++ b/src/stores/notifications/StaticNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/notifications/SummarizedNotificationState.ts b/src/stores/notifications/SummarizedNotificationState.ts index e859fd6070e..0d223834e6e 100644 --- a/src/stores/notifications/SummarizedNotificationState.ts +++ b/src/stores/notifications/SummarizedNotificationState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/oidc/OidcClientStore.ts b/src/stores/oidc/OidcClientStore.ts index e0cc8702347..f814b1a6cc2 100644 --- a/src/stores/oidc/OidcClientStore.ts +++ b/src/stores/oidc/OidcClientStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/right-panel/RightPanelStore.ts b/src/stores/right-panel/RightPanelStore.ts index 99b2d7fe507..ea9b722071d 100644 --- a/src/stores/right-panel/RightPanelStore.ts +++ b/src/stores/right-panel/RightPanelStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -252,10 +252,13 @@ export default class RightPanelStore extends ReadyWatchingStore { const room = this.mxClient?.getRoom(this.viewedRoomId); if (!!room) { this.global = - this.global ?? convertToStatePanel(SettingsStore.getValue("RightPanel.phasesGlobal"), room); + this.global ?? + convertToStatePanel(SettingsStore.getValue("RightPanel.phasesGlobal"), room) ?? + undefined; this.byRoom[this.viewedRoomId] = this.byRoom[this.viewedRoomId] ?? - convertToStatePanel(SettingsStore.getValue("RightPanel.phases", this.viewedRoomId), room); + convertToStatePanel(SettingsStore.getValue("RightPanel.phases", this.viewedRoomId), room) ?? + undefined; } else { logger.warn( "Could not restore the right panel after load because there was no associated room object.", diff --git a/src/stores/right-panel/RightPanelStoreIPanelState.ts b/src/stores/right-panel/RightPanelStoreIPanelState.ts index 0d205abd2fa..1ee5f2a95de 100644 --- a/src/stores/right-panel/RightPanelStoreIPanelState.ts +++ b/src/stores/right-panel/RightPanelStoreIPanelState.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -57,10 +57,10 @@ export interface IRightPanelForRoom { history: Array; } -interface IRightPanelForRoomStored { +export type IRightPanelForRoomStored = { isOpen: boolean; history: Array; -} +}; export function convertToStorePanel(cacheRoom?: IRightPanelForRoom): IRightPanelForRoomStored | undefined { if (!cacheRoom) return undefined; @@ -68,7 +68,7 @@ export function convertToStorePanel(cacheRoom?: IRightPanelForRoom): IRightPanel return { isOpen: cacheRoom.isOpen, history: storeHistory }; } -export function convertToStatePanel(storeRoom: IRightPanelForRoomStored, room: Room): IRightPanelForRoom { +export function convertToStatePanel(storeRoom: IRightPanelForRoomStored | null, room: Room): IRightPanelForRoom | null { if (!storeRoom) return storeRoom; const stateHistory = [...storeRoom.history].map((panelStateStore) => convertStoreToCard(panelStateStore, room)); return { history: stateHistory, isOpen: storeRoom.isOpen }; diff --git a/src/stores/right-panel/RightPanelStorePhases.ts b/src/stores/right-panel/RightPanelStorePhases.ts index 9e7a5697bfa..ea47f2ba839 100644 --- a/src/stores/right-panel/RightPanelStorePhases.ts +++ b/src/stores/right-panel/RightPanelStorePhases.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/right-panel/action-handlers/View3pidInvite.ts b/src/stores/right-panel/action-handlers/View3pidInvite.ts index 0f6661819f6..8a54c56c994 100644 --- a/src/stores/right-panel/action-handlers/View3pidInvite.ts +++ b/src/stores/right-panel/action-handlers/View3pidInvite.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/right-panel/action-handlers/index.ts b/src/stores/right-panel/action-handlers/index.ts index 287d3a9324d..5a612f9830d 100644 --- a/src/stores/right-panel/action-handlers/index.ts +++ b/src/stores/right-panel/action-handlers/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/Interface.ts b/src/stores/room-list/Interface.ts index bba230f7d46..f9e32b6f40a 100644 --- a/src/stores/room-list/Interface.ts +++ b/src/stores/room-list/Interface.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/ListLayout.ts b/src/stores/room-list/ListLayout.ts index ff60309e087..e85703fa5f3 100644 --- a/src/stores/room-list/ListLayout.ts +++ b/src/stores/room-list/ListLayout.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/MessagePreviewStore.ts b/src/stores/room-list/MessagePreviewStore.ts index 2577b2ba235..3f1614df702 100644 --- a/src/stores/room-list/MessagePreviewStore.ts +++ b/src/stores/room-list/MessagePreviewStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/RoomListLayoutStore.ts b/src/stores/room-list/RoomListLayoutStore.ts index ea85860554c..90461a581c0 100644 --- a/src/stores/room-list/RoomListLayoutStore.ts +++ b/src/stores/room-list/RoomListLayoutStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/RoomListStore.ts b/src/stores/room-list/RoomListStore.ts index 53377e0a01f..0b179f7db54 100644 --- a/src/stores/room-list/RoomListStore.ts +++ b/src/stores/room-list/RoomListStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/SlidingRoomListStore.ts b/src/stores/room-list/SlidingRoomListStore.ts index 26d3291625c..ba585f32181 100644 --- a/src/stores/room-list/SlidingRoomListStore.ts +++ b/src/stores/room-list/SlidingRoomListStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/SpaceWatcher.ts b/src/stores/room-list/SpaceWatcher.ts index c3fa57f706c..1757637c706 100644 --- a/src/stores/room-list/SpaceWatcher.ts +++ b/src/stores/room-list/SpaceWatcher.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/Algorithm.ts b/src/stores/room-list/algorithms/Algorithm.ts index c3450d70cf6..2ae3a1ff995 100644 --- a/src/stores/room-list/algorithms/Algorithm.ts +++ b/src/stores/room-list/algorithms/Algorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/list-ordering/ImportanceAlgorithm.ts b/src/stores/room-list/algorithms/list-ordering/ImportanceAlgorithm.ts index 829251a24f1..492e9ed4e70 100644 --- a/src/stores/room-list/algorithms/list-ordering/ImportanceAlgorithm.ts +++ b/src/stores/room-list/algorithms/list-ordering/ImportanceAlgorithm.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018, 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/list-ordering/NaturalAlgorithm.ts b/src/stores/room-list/algorithms/list-ordering/NaturalAlgorithm.ts index e6d743605f3..f44b0e1aec2 100644 --- a/src/stores/room-list/algorithms/list-ordering/NaturalAlgorithm.ts +++ b/src/stores/room-list/algorithms/list-ordering/NaturalAlgorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts b/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts index 67ee1ca0843..5cf7631cfeb 100644 --- a/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts +++ b/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/list-ordering/index.ts b/src/stores/room-list/algorithms/list-ordering/index.ts index 7bd8441d9d3..aae3242a09a 100644 --- a/src/stores/room-list/algorithms/list-ordering/index.ts +++ b/src/stores/room-list/algorithms/list-ordering/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/models.ts b/src/stores/room-list/algorithms/models.ts index 9c14e29c38d..7cc9bd1c17e 100644 --- a/src/stores/room-list/algorithms/models.ts +++ b/src/stores/room-list/algorithms/models.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/tag-sorting/AlphabeticAlgorithm.ts b/src/stores/room-list/algorithms/tag-sorting/AlphabeticAlgorithm.ts index 17fecee2628..77f530bad43 100644 --- a/src/stores/room-list/algorithms/tag-sorting/AlphabeticAlgorithm.ts +++ b/src/stores/room-list/algorithms/tag-sorting/AlphabeticAlgorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/tag-sorting/IAlgorithm.ts b/src/stores/room-list/algorithms/tag-sorting/IAlgorithm.ts index 4aec903922c..eea3db1db35 100644 --- a/src/stores/room-list/algorithms/tag-sorting/IAlgorithm.ts +++ b/src/stores/room-list/algorithms/tag-sorting/IAlgorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/tag-sorting/ManualAlgorithm.ts b/src/stores/room-list/algorithms/tag-sorting/ManualAlgorithm.ts index 41a4422e0ec..7dd28695060 100644 --- a/src/stores/room-list/algorithms/tag-sorting/ManualAlgorithm.ts +++ b/src/stores/room-list/algorithms/tag-sorting/ManualAlgorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/tag-sorting/RecentAlgorithm.ts b/src/stores/room-list/algorithms/tag-sorting/RecentAlgorithm.ts index d30703d2886..2c6375e7dfe 100644 --- a/src/stores/room-list/algorithms/tag-sorting/RecentAlgorithm.ts +++ b/src/stores/room-list/algorithms/tag-sorting/RecentAlgorithm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/algorithms/tag-sorting/index.ts b/src/stores/room-list/algorithms/tag-sorting/index.ts index 2536dbb41de..912ae5d167f 100644 --- a/src/stores/room-list/algorithms/tag-sorting/index.ts +++ b/src/stores/room-list/algorithms/tag-sorting/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/filters/IFilterCondition.ts b/src/stores/room-list/filters/IFilterCondition.ts index 9600ed73fb3..00248ff7405 100644 --- a/src/stores/room-list/filters/IFilterCondition.ts +++ b/src/stores/room-list/filters/IFilterCondition.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/filters/SpaceFilterCondition.ts b/src/stores/room-list/filters/SpaceFilterCondition.ts index 8f652a35fb6..7c4316ff21a 100644 --- a/src/stores/room-list/filters/SpaceFilterCondition.ts +++ b/src/stores/room-list/filters/SpaceFilterCondition.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/filters/VisibilityProvider.ts b/src/stores/room-list/filters/VisibilityProvider.ts index bf8c515fc96..4332ba0f98b 100644 --- a/src/stores/room-list/filters/VisibilityProvider.ts +++ b/src/stores/room-list/filters/VisibilityProvider.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/room-list/models.ts b/src/stores/room-list/models.ts index 50cecda6650..78823cbc421 100644 --- a/src/stores/room-list/models.ts +++ b/src/stores/room-list/models.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/IPreview.ts b/src/stores/room-list/previews/IPreview.ts index b737044f684..6defb8bfd85 100644 --- a/src/stores/room-list/previews/IPreview.ts +++ b/src/stores/room-list/previews/IPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/LegacyCallAnswerEventPreview.ts b/src/stores/room-list/previews/LegacyCallAnswerEventPreview.ts index 54c46e5541d..eaf2de5e169 100644 --- a/src/stores/room-list/previews/LegacyCallAnswerEventPreview.ts +++ b/src/stores/room-list/previews/LegacyCallAnswerEventPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/LegacyCallHangupEvent.ts b/src/stores/room-list/previews/LegacyCallHangupEvent.ts index b213160b669..58487db6508 100644 --- a/src/stores/room-list/previews/LegacyCallHangupEvent.ts +++ b/src/stores/room-list/previews/LegacyCallHangupEvent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/LegacyCallInviteEventPreview.ts b/src/stores/room-list/previews/LegacyCallInviteEventPreview.ts index 1b9f33b5b17..4b3d20e6db0 100644 --- a/src/stores/room-list/previews/LegacyCallInviteEventPreview.ts +++ b/src/stores/room-list/previews/LegacyCallInviteEventPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/MessageEventPreview.ts b/src/stores/room-list/previews/MessageEventPreview.ts index 20631f1425b..fe63ee1c1bb 100644 --- a/src/stores/room-list/previews/MessageEventPreview.ts +++ b/src/stores/room-list/previews/MessageEventPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/PollStartEventPreview.ts b/src/stores/room-list/previews/PollStartEventPreview.ts index 7548cf12f71..09679335c48 100644 --- a/src/stores/room-list/previews/PollStartEventPreview.ts +++ b/src/stores/room-list/previews/PollStartEventPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/ReactionEventPreview.ts b/src/stores/room-list/previews/ReactionEventPreview.ts index 0aa0cdcd4d9..cee18dda2be 100644 --- a/src/stores/room-list/previews/ReactionEventPreview.ts +++ b/src/stores/room-list/previews/ReactionEventPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/StickerEventPreview.ts b/src/stores/room-list/previews/StickerEventPreview.ts index 33bf1e6f6d0..a368e675e36 100644 --- a/src/stores/room-list/previews/StickerEventPreview.ts +++ b/src/stores/room-list/previews/StickerEventPreview.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/previews/utils.ts b/src/stores/room-list/previews/utils.ts index 7857ad75a9b..ffb1602829b 100644 --- a/src/stores/room-list/previews/utils.ts +++ b/src/stores/room-list/previews/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/room-list/utils/roomMute.ts b/src/stores/room-list/utils/roomMute.ts index 9269cd1461a..df3dbb59149 100644 --- a/src/stores/room-list/utils/roomMute.ts +++ b/src/stores/room-list/utils/roomMute.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/spaces/SpaceStore.ts b/src/stores/spaces/SpaceStore.ts index 90358f3310d..50aa7748a55 100644 --- a/src/stores/spaces/SpaceStore.ts +++ b/src/stores/spaces/SpaceStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -239,7 +239,7 @@ export class SpaceStoreClass extends AsyncStoreWithClient { if (!isMetaSpace(space)) { cliSpace = this.matrixClient.getRoom(space); if (!cliSpace?.isSpaceRoom()) return; - } else if (!this.enabledMetaSpaces.includes(space as MetaSpace)) { + } else if (!this.enabledMetaSpaces.includes(space)) { return; } @@ -1178,7 +1178,7 @@ export class SpaceStoreClass extends AsyncStoreWithClient { } // restore selected state from last session if any and still valid - const lastSpaceId = window.localStorage.getItem(ACTIVE_SPACE_LS_KEY); + const lastSpaceId = window.localStorage.getItem(ACTIVE_SPACE_LS_KEY) as MetaSpace; const valid = lastSpaceId && (!isMetaSpace(lastSpaceId) ? this.matrixClient.getRoom(lastSpaceId) : enabledMetaSpaces[lastSpaceId]); diff --git a/src/stores/spaces/SpaceTreeLevelLayoutStore.ts b/src/stores/spaces/SpaceTreeLevelLayoutStore.ts index 59385a92e64..f32d685e2de 100644 --- a/src/stores/spaces/SpaceTreeLevelLayoutStore.ts +++ b/src/stores/spaces/SpaceTreeLevelLayoutStore.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/spaces/flattenSpaceHierarchy.ts b/src/stores/spaces/flattenSpaceHierarchy.ts index 2a3356a7c43..15d583617d8 100644 --- a/src/stores/spaces/flattenSpaceHierarchy.ts +++ b/src/stores/spaces/flattenSpaceHierarchy.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/stores/spaces/index.ts b/src/stores/spaces/index.ts index 848fc008d3c..b8853d606ef 100644 --- a/src/stores/spaces/index.ts +++ b/src/stores/spaces/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -48,7 +48,7 @@ export interface ISuggestedRoom extends HierarchyRoom { viaServers: string[]; } -export function isMetaSpace(spaceKey?: SpaceKey): boolean { +export function isMetaSpace(spaceKey?: SpaceKey): spaceKey is MetaSpace { return ( spaceKey === MetaSpace.Home || spaceKey === MetaSpace.Favourites || diff --git a/src/stores/widgets/ElementWidgetActions.ts b/src/stores/widgets/ElementWidgetActions.ts index ac1cee00efe..8e4142f77d1 100644 --- a/src/stores/widgets/ElementWidgetActions.ts +++ b/src/stores/widgets/ElementWidgetActions.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020-2022 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/widgets/ElementWidgetCapabilities.ts b/src/stores/widgets/ElementWidgetCapabilities.ts index c5db7f77722..1cad4e14f76 100644 --- a/src/stores/widgets/ElementWidgetCapabilities.ts +++ b/src/stores/widgets/ElementWidgetCapabilities.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/widgets/StopGapWidget.ts b/src/stores/widgets/StopGapWidget.ts index 0472b1664b1..40e36473e31 100644 --- a/src/stores/widgets/StopGapWidget.ts +++ b/src/stores/widgets/StopGapWidget.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020-2022 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/widgets/StopGapWidgetDriver.ts b/src/stores/widgets/StopGapWidgetDriver.ts index de7a71fa800..fa5a43f248c 100644 --- a/src/stores/widgets/StopGapWidgetDriver.ts +++ b/src/stores/widgets/StopGapWidgetDriver.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020-2023 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/widgets/WidgetLayoutStore.ts b/src/stores/widgets/WidgetLayoutStore.ts index f0d3cafc83c..5e587c54871 100644 --- a/src/stores/widgets/WidgetLayoutStore.ts +++ b/src/stores/widgets/WidgetLayoutStore.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2021, 2022 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -25,9 +25,9 @@ import { Container, IStoredLayout, ILayoutStateEvent, WIDGET_LAYOUT_EVENT_TYPE, export type { IStoredLayout, ILayoutStateEvent }; export { Container, WIDGET_LAYOUT_EVENT_TYPE }; -interface ILayoutSettings extends ILayoutStateEvent { +export type ILayoutSettings = Partial & { overrides?: string; // event ID for layout state event, if present -} +}; // Dev note: "Pinned" widgets are ones in the top container. export const MAX_PINNED = 3; @@ -149,7 +149,7 @@ export class WidgetLayoutStore extends ReadyWatchingStore { const layoutEv = room.currentState.getStateEvents(WIDGET_LAYOUT_EVENT_TYPE, ""); const legacyPinned = SettingsStore.getValue("Widgets.pinned", room.roomId); - let userLayout = SettingsStore.getValue("Widgets.layout", room.roomId); + let userLayout = SettingsStore.getValue("Widgets.layout", room.roomId); if (layoutEv && userLayout && userLayout.overrides !== layoutEv.getId()) { // For some other layout that we don't really care about. The user can reset this diff --git a/src/stores/widgets/WidgetMessagingStore.ts b/src/stores/widgets/WidgetMessagingStore.ts index 0388aeacb4c..f73fd15c513 100644 --- a/src/stores/widgets/WidgetMessagingStore.ts +++ b/src/stores/widgets/WidgetMessagingStore.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/stores/widgets/WidgetPermissionStore.ts b/src/stores/widgets/WidgetPermissionStore.ts index ecae4f9c009..482704b65f3 100644 --- a/src/stores/widgets/WidgetPermissionStore.ts +++ b/src/stores/widgets/WidgetPermissionStore.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -53,10 +53,7 @@ export class WidgetPermissionStore { public setOIDCState(widget: Widget, kind: WidgetKind, roomId: string | undefined, newState: OIDCState): void { const settingsKey = this.packSettingKey(widget, kind, roomId); - let currentValues = SettingsStore.getValue<{ - allow?: string[]; - deny?: string[]; - }>("widgetOpenIDPermissions"); + let currentValues = SettingsStore.getValue("widgetOpenIDPermissions"); if (!currentValues) { currentValues = {}; } diff --git a/src/stores/widgets/types.ts b/src/stores/widgets/types.ts index 5627731c78b..b91edd5c350 100644 --- a/src/stores/widgets/types.ts +++ b/src/stores/widgets/types.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/theme.ts b/src/theme.ts index 836fceff996..e31eca9d58b 100644 --- a/src/theme.ts +++ b/src/theme.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -263,9 +263,9 @@ export function getCustomTheme(themeName: string): CustomTheme { if (!customThemes) { throw new Error(`No custom themes set, can't set custom theme "${themeName}"`); } - const customTheme = customThemes.find((t: ITheme) => t.name === themeName); + const customTheme = customThemes.find((t: CustomTheme) => t.name === themeName); if (!customTheme) { - const knownNames = customThemes.map((t: ITheme) => t.name).join(", "); + const knownNames = customThemes.map((t: CustomTheme) => t.name).join(", "); throw new Error(`Can't find custom theme "${themeName}", only know ${knownNames}`); } return customTheme; diff --git a/src/toasts/AnalyticsToast.tsx b/src/toasts/AnalyticsToast.tsx index c9cd218b49e..8ac0c4710ae 100644 --- a/src/toasts/AnalyticsToast.tsx +++ b/src/toasts/AnalyticsToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/BulkUnverifiedSessionsToast.ts b/src/toasts/BulkUnverifiedSessionsToast.ts index 944ca9b7281..9df70cfb9d7 100644 --- a/src/toasts/BulkUnverifiedSessionsToast.ts +++ b/src/toasts/BulkUnverifiedSessionsToast.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/DesktopNotificationsToast.ts b/src/toasts/DesktopNotificationsToast.ts index ee801bdad8c..8d88d209fb7 100644 --- a/src/toasts/DesktopNotificationsToast.ts +++ b/src/toasts/DesktopNotificationsToast.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/IncomingCallToast.tsx b/src/toasts/IncomingCallToast.tsx index 58e6980733e..197c70186c8 100644 --- a/src/toasts/IncomingCallToast.tsx +++ b/src/toasts/IncomingCallToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/IncomingLegacyCallToast.tsx b/src/toasts/IncomingLegacyCallToast.tsx index bed46a00751..a8e96681980 100644 --- a/src/toasts/IncomingLegacyCallToast.tsx +++ b/src/toasts/IncomingLegacyCallToast.tsx @@ -5,7 +5,7 @@ Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/MobileGuideToast.ts b/src/toasts/MobileGuideToast.ts index 5b8a617ac52..566ea6aa932 100644 --- a/src/toasts/MobileGuideToast.ts +++ b/src/toasts/MobileGuideToast.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/ServerLimitToast.tsx b/src/toasts/ServerLimitToast.tsx index f2ce2fb057f..d24f7c692cb 100644 --- a/src/toasts/ServerLimitToast.tsx +++ b/src/toasts/ServerLimitToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/SetupEncryptionToast.ts b/src/toasts/SetupEncryptionToast.ts index 0dd54bb18fd..ecbf99f4b21 100644 --- a/src/toasts/SetupEncryptionToast.ts +++ b/src/toasts/SetupEncryptionToast.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -23,15 +23,19 @@ const getTitle = (kind: Kind): string => { switch (kind) { case Kind.SET_UP_ENCRYPTION: return _t("encryption|set_up_toast_title"); + case Kind.SET_UP_RECOVERY: + return _t("encryption|set_up_recovery"); case Kind.VERIFY_THIS_SESSION: return _t("encryption|verify_toast_title"); } }; -const getIcon = (kind: Kind): string => { +const getIcon = (kind: Kind): string | undefined => { switch (kind) { case Kind.SET_UP_ENCRYPTION: return "secure_backup"; + case Kind.SET_UP_RECOVERY: + return undefined; case Kind.VERIFY_THIS_SESSION: return "verification_warning"; } @@ -41,22 +45,49 @@ const getSetupCaption = (kind: Kind): string => { switch (kind) { case Kind.SET_UP_ENCRYPTION: return _t("action|continue"); + case Kind.SET_UP_RECOVERY: + return _t("action|continue"); case Kind.VERIFY_THIS_SESSION: return _t("action|verify"); } }; +const getSecondaryButtonLabel = (kind: Kind): string => { + switch (kind) { + case Kind.SET_UP_RECOVERY: + return _t("encryption|set_up_recovery_later"); + case Kind.SET_UP_ENCRYPTION: + case Kind.VERIFY_THIS_SESSION: + return _t("encryption|verification|unverified_sessions_toast_reject"); + } +}; + const getDescription = (kind: Kind): string => { switch (kind) { case Kind.SET_UP_ENCRYPTION: return _t("encryption|set_up_toast_description"); + case Kind.SET_UP_RECOVERY: + return _t("encryption|set_up_recovery_toast_description"); case Kind.VERIFY_THIS_SESSION: return _t("encryption|verify_toast_description"); } }; +/** + * The kind of toast to show. + */ export enum Kind { + /** + * Prompt the user to set up encryption + */ SET_UP_ENCRYPTION = "set_up_encryption", + /** + * Prompt the user to set up a recovery key + */ + SET_UP_RECOVERY = "set_up_recovery", + /** + * Prompt the user to verify this session + */ VERIFY_THIS_SESSION = "verify_this_session", } @@ -64,6 +95,11 @@ const onReject = (): void => { DeviceListener.sharedInstance().dismissEncryptionSetup(); }; +/** + * Show a toast prompting the user for some action related to setting up their encryption. + * + * @param kind The kind of toast to show + */ export const showToast = (kind: Kind): void => { if ( ModuleRunner.instance.extensions.cryptoSetup.setupEncryptionNeeded({ @@ -101,15 +137,17 @@ export const showToast = (kind: Kind): void => { description: getDescription(kind), primaryLabel: getSetupCaption(kind), onPrimaryClick: onAccept, - secondaryLabel: _t("encryption|verification|unverified_sessions_toast_reject"), + secondaryLabel: getSecondaryButtonLabel(kind), onSecondaryClick: onReject, - destructive: "secondary", }, component: GenericToast, priority: kind === Kind.VERIFY_THIS_SESSION ? 95 : 40, }); }; +/** + * Hide the encryption setup toast if it is currently being shown. + */ export const hideToast = (): void => { ToastStore.sharedInstance().dismissToast(TOAST_KEY); }; diff --git a/src/toasts/UnverifiedSessionToast.tsx b/src/toasts/UnverifiedSessionToast.tsx index b7eb963dee9..76d961233c2 100644 --- a/src/toasts/UnverifiedSessionToast.tsx +++ b/src/toasts/UnverifiedSessionToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/toasts/UpdateToast.tsx b/src/toasts/UpdateToast.tsx index 786b6263174..0abc95c066e 100644 --- a/src/toasts/UpdateToast.tsx +++ b/src/toasts/UpdateToast.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/usercontent/index.ts b/src/usercontent/index.ts index ceedf5e27a8..e780ea1ac1c 100644 --- a/src/usercontent/index.ts +++ b/src/usercontent/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/AnimationUtils.ts b/src/utils/AnimationUtils.ts index 31bd9d184ce..f88e0ce3034 100644 --- a/src/utils/AnimationUtils.ts +++ b/src/utils/AnimationUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/AutoDiscoveryUtils.tsx b/src/utils/AutoDiscoveryUtils.tsx index 61e2f84f4da..efc8f285cfd 100644 --- a/src/utils/AutoDiscoveryUtils.tsx +++ b/src/utils/AutoDiscoveryUtils.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/BrowserWorkarounds.ts b/src/utils/BrowserWorkarounds.ts index 77127183d71..8a83d67d037 100644 --- a/src/utils/BrowserWorkarounds.ts +++ b/src/utils/BrowserWorkarounds.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/DMRoomMap.ts b/src/utils/DMRoomMap.ts index 0b595b54db5..77b4c655459 100644 --- a/src/utils/DMRoomMap.ts +++ b/src/utils/DMRoomMap.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2019 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/DecryptFile.ts b/src/utils/DecryptFile.ts index acf5f551e76..25ea5838196 100644 --- a/src/utils/DecryptFile.ts +++ b/src/utils/DecryptFile.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2018 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/DialogOpener.ts b/src/utils/DialogOpener.ts index 721f8d5c927..c7b2212a21b 100644 --- a/src/utils/DialogOpener.ts +++ b/src/utils/DialogOpener.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/DirectoryUtils.ts b/src/utils/DirectoryUtils.ts index f074dc3462e..ff2407f256a 100644 --- a/src/utils/DirectoryUtils.ts +++ b/src/utils/DirectoryUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/EditorStateTransfer.ts b/src/utils/EditorStateTransfer.ts index 908da8b8a38..e104a5244c4 100644 --- a/src/utils/EditorStateTransfer.ts +++ b/src/utils/EditorStateTransfer.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/ErrorUtils.tsx b/src/utils/ErrorUtils.tsx index 630243e3135..997dd568403 100644 --- a/src/utils/ErrorUtils.tsx +++ b/src/utils/ErrorUtils.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/EventRenderingUtils.ts b/src/utils/EventRenderingUtils.ts index ed8d4af1012..0bef43df122 100644 --- a/src/utils/EventRenderingUtils.ts +++ b/src/utils/EventRenderingUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/EventUtils.ts b/src/utils/EventUtils.ts index d57cefa1b53..2ed3bceb0d7 100644 --- a/src/utils/EventUtils.ts +++ b/src/utils/EventUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/Feedback.ts b/src/utils/Feedback.ts index ac219349712..2c2e55fb417 100644 --- a/src/utils/Feedback.ts +++ b/src/utils/Feedback.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/FileDownloader.ts b/src/utils/FileDownloader.ts index 19a159642b1..749b781f0a8 100644 --- a/src/utils/FileDownloader.ts +++ b/src/utils/FileDownloader.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/FileUtils.ts b/src/utils/FileUtils.ts index 2fb095d53c7..6792ad254e9 100644 --- a/src/utils/FileUtils.ts +++ b/src/utils/FileUtils.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner Copyright 2015-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/FixedRollingArray.ts b/src/utils/FixedRollingArray.ts index aef4c3f3e40..e702f252c93 100644 --- a/src/utils/FixedRollingArray.ts +++ b/src/utils/FixedRollingArray.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/FormattingUtils.ts b/src/utils/FormattingUtils.ts index d16ced944a5..ae92cf61049 100644 --- a/src/utils/FormattingUtils.ts +++ b/src/utils/FormattingUtils.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/IDestroyable.ts b/src/utils/IDestroyable.ts index 6d9a8466f87..e5b9d19fbb9 100644 --- a/src/utils/IDestroyable.ts +++ b/src/utils/IDestroyable.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/IdentityServerUtils.ts b/src/utils/IdentityServerUtils.ts index 6fb2a100e6d..fd3de6b2f40 100644 --- a/src/utils/IdentityServerUtils.ts +++ b/src/utils/IdentityServerUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -20,7 +20,7 @@ export function setToDefaultIdentityServer(matrixClient: MatrixClient): void { const url = getDefaultIdentityServerUrl(); // Account data change will update localstorage, client, etc through dispatcher matrixClient.setAccountData("m.identity_server", { - base_url: url, + base_url: url ?? null, }); } diff --git a/src/utils/Image.ts b/src/utils/Image.ts index cb3b65169d2..eed70bdf32a 100644 --- a/src/utils/Image.ts +++ b/src/utils/Image.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2022 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/utils/JSON.ts b/src/utils/JSON.ts index 815e5c0cb33..0d7493514a6 100644 --- a/src/utils/JSON.ts +++ b/src/utils/JSON.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/KeyVerificationStateObserver.ts b/src/utils/KeyVerificationStateObserver.ts index 3dfc4f3a5cd..64f50ab2011 100644 --- a/src/utils/KeyVerificationStateObserver.ts +++ b/src/utils/KeyVerificationStateObserver.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/LazyValue.ts b/src/utils/LazyValue.ts index 5f2d97c0efb..fdd4ab78f8a 100644 --- a/src/utils/LazyValue.ts +++ b/src/utils/LazyValue.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/LruCache.ts b/src/utils/LruCache.ts index d4ef27e6b59..bfff80d5d53 100644 --- a/src/utils/LruCache.ts +++ b/src/utils/LruCache.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/MarkedExecution.ts b/src/utils/MarkedExecution.ts index e20b66c9734..b27481d5169 100644 --- a/src/utils/MarkedExecution.ts +++ b/src/utils/MarkedExecution.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/MatrixGlob.ts b/src/utils/MatrixGlob.ts index 4150147293f..d22e398381b 100644 --- a/src/utils/MatrixGlob.ts +++ b/src/utils/MatrixGlob.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/MediaEventHelper.ts b/src/utils/MediaEventHelper.ts index ecb1250e280..118b5baadb7 100644 --- a/src/utils/MediaEventHelper.ts +++ b/src/utils/MediaEventHelper.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/MegolmExportEncryption.ts b/src/utils/MegolmExportEncryption.ts index fab3c7f7101..60d4a687cf6 100644 --- a/src/utils/MegolmExportEncryption.ts +++ b/src/utils/MegolmExportEncryption.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/MessageDiffUtils.tsx b/src/utils/MessageDiffUtils.tsx index ff30b12cac1..08af2379e66 100644 --- a/src/utils/MessageDiffUtils.tsx +++ b/src/utils/MessageDiffUtils.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 , 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/Mouse.ts b/src/utils/Mouse.ts index a2716c68d0c..56fb8bfee73 100644 --- a/src/utils/Mouse.ts +++ b/src/utils/Mouse.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/MultiInviter.ts b/src/utils/MultiInviter.ts index b58663ebf06..1350eb94a43 100644 --- a/src/utils/MultiInviter.ts +++ b/src/utils/MultiInviter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/NativeEventUtils.ts b/src/utils/NativeEventUtils.ts index 768e1baa528..eebd2fcb515 100644 --- a/src/utils/NativeEventUtils.ts +++ b/src/utils/NativeEventUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/PasswordScorer.ts b/src/utils/PasswordScorer.ts index 7e68ccfa4dc..876461920cd 100644 --- a/src/utils/PasswordScorer.ts +++ b/src/utils/PasswordScorer.ts @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/PhasedRolloutFeature.ts b/src/utils/PhasedRolloutFeature.ts index bf2c8ed810d..dd94ee5c897 100644 --- a/src/utils/PhasedRolloutFeature.ts +++ b/src/utils/PhasedRolloutFeature.ts @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/PinningUtils.ts b/src/utils/PinningUtils.ts index a06a7da06b7..a1304598f7c 100644 --- a/src/utils/PinningUtils.ts +++ b/src/utils/PinningUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/PreferredRoomVersions.ts b/src/utils/PreferredRoomVersions.ts index d6b3677005a..d3dac768560 100644 --- a/src/utils/PreferredRoomVersions.ts +++ b/src/utils/PreferredRoomVersions.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/ReactUtils.tsx b/src/utils/ReactUtils.tsx index ee7469945a3..2180aa81ae2 100644 --- a/src/utils/ReactUtils.tsx +++ b/src/utils/ReactUtils.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/Reply.ts b/src/utils/Reply.ts index a1baffa2c99..fee65a7b556 100644 --- a/src/utils/Reply.ts +++ b/src/utils/Reply.ts @@ -3,7 +3,7 @@ * Copyright 2023 The Matrix.org Foundation C.I.C. * Copyright 2021 Šimon Brandner * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/utils/ResizeNotifier.ts b/src/utils/ResizeNotifier.ts index 339c90b7efd..02b4848c2fa 100644 --- a/src/utils/ResizeNotifier.ts +++ b/src/utils/ResizeNotifier.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/RoomUpgrade.ts b/src/utils/RoomUpgrade.ts index 18b136b7095..8979b1f0c8c 100644 --- a/src/utils/RoomUpgrade.ts +++ b/src/utils/RoomUpgrade.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/SearchInput.ts b/src/utils/SearchInput.ts index a186ed3e2ac..34fd0575cd3 100644 --- a/src/utils/SearchInput.ts +++ b/src/utils/SearchInput.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Boluwatife Omosowon -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/SessionLock.ts b/src/utils/SessionLock.ts index e3d9d5ecc88..861c87ead55 100644 --- a/src/utils/SessionLock.ts +++ b/src/utils/SessionLock.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/ShieldUtils.ts b/src/utils/ShieldUtils.ts index 2b50a93f4ce..d1466609e47 100644 --- a/src/utils/ShieldUtils.ts +++ b/src/utils/ShieldUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/Singleflight.ts b/src/utils/Singleflight.ts index 24581832085..f34c268bbd7 100644 --- a/src/utils/Singleflight.ts +++ b/src/utils/Singleflight.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/SnakedObject.ts b/src/utils/SnakedObject.ts index d5487a7b0c4..b376d33e4b3 100644 --- a/src/utils/SnakedObject.ts +++ b/src/utils/SnakedObject.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/SortMembers.ts b/src/utils/SortMembers.ts index f22c6e92346..2c76bb6ed49 100644 --- a/src/utils/SortMembers.ts +++ b/src/utils/SortMembers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/StorageAccess.ts b/src/utils/StorageAccess.ts index bf6e5590226..c8e97f92bc3 100644 --- a/src/utils/StorageAccess.ts +++ b/src/utils/StorageAccess.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 , 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/StorageManager.ts b/src/utils/StorageManager.ts index e4b0e627995..3b63f0a6366 100644 --- a/src/utils/StorageManager.ts +++ b/src/utils/StorageManager.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/Timer.ts b/src/utils/Timer.ts index 7db0476f7a5..ee05e39b347 100644 --- a/src/utils/Timer.ts +++ b/src/utils/Timer.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/UrlUtils.ts b/src/utils/UrlUtils.ts index f76855f6ef9..d256e655c2e 100644 --- a/src/utils/UrlUtils.ts +++ b/src/utils/UrlUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/ValidatedServerConfig.ts b/src/utils/ValidatedServerConfig.ts index c5ab3d91492..a464514317e 100644 --- a/src/utils/ValidatedServerConfig.ts +++ b/src/utils/ValidatedServerConfig.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/WellKnownUtils.ts b/src/utils/WellKnownUtils.ts index 26bf6c287be..5634a94b59f 100644 --- a/src/utils/WellKnownUtils.ts +++ b/src/utils/WellKnownUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/Whenable.ts b/src/utils/Whenable.ts index 51e4bfff46f..c584c4aa4c1 100644 --- a/src/utils/Whenable.ts +++ b/src/utils/Whenable.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/WidgetUtils-types.ts b/src/utils/WidgetUtils-types.ts new file mode 100644 index 00000000000..734a4d002ea --- /dev/null +++ b/src/utils/WidgetUtils-types.ts @@ -0,0 +1,32 @@ +/* +Copyright 2024 New Vector Ltd. +Copyright 2017-2020 The Matrix.org Foundation C.I.C. +Copyright 2019 Travis Ralston + +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 { IWidget } from "matrix-widget-api"; + +export interface IApp extends IWidget { + "roomId": string; + "eventId"?: string; // not present on virtual widgets + // eslint-disable-next-line camelcase + "avatar_url"?: string; // MSC2765 https://github.com/matrix-org/matrix-doc/pull/2765 + // Whether the widget was created from `widget_build_url` and thus is a call widget of some kind + "io.element.managed_hybrid"?: boolean; +} + +export interface IWidgetEvent { + id: string; + type: string; + sender: string; + // eslint-disable-next-line camelcase + state_key: string; + content: IApp; +} + +export interface UserWidget extends Omit { + content: IWidget & Partial; +} diff --git a/src/utils/WidgetUtils.ts b/src/utils/WidgetUtils.ts index ad2ed63ba16..d9de59e4013 100644 --- a/src/utils/WidgetUtils.ts +++ b/src/utils/WidgetUtils.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2020 The Matrix.org Foundation C.I.C. Copyright 2019 Travis Ralston -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -29,23 +29,13 @@ import WidgetStore, { IApp, isAppWidget } from "../stores/WidgetStore"; import { parseUrl } from "./UrlUtils"; import { useEventEmitter } from "../hooks/useEventEmitter"; import { WidgetLayoutStore } from "../stores/widgets/WidgetLayoutStore"; +import { IWidgetEvent, UserWidget } from "./WidgetUtils-types"; // How long we wait for the state event echo to come back from the server // before waitFor[Room/User]Widget rejects its promise const WIDGET_WAIT_TIME = 20000; -export interface IWidgetEvent { - id: string; - type: string; - sender: string; - // eslint-disable-next-line camelcase - state_key: string; - content: IApp; -} - -export interface UserWidget extends Omit { - content: IWidget & Partial; -} +export type { IWidgetEvent, UserWidget }; export default class WidgetUtils { /** diff --git a/src/utils/arrays.ts b/src/utils/arrays.ts index da8157adce1..25548ef78f0 100644 --- a/src/utils/arrays.ts +++ b/src/utils/arrays.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/bounds.ts b/src/utils/beacon/bounds.ts index 7ce20182e0f..a23e3367da7 100644 --- a/src/utils/beacon/bounds.ts +++ b/src/utils/beacon/bounds.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/duration.ts b/src/utils/beacon/duration.ts index 2d5e4b52231..d967bb52172 100644 --- a/src/utils/beacon/duration.ts +++ b/src/utils/beacon/duration.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/geolocation.ts b/src/utils/beacon/geolocation.ts index f9d81c13c7f..8fbc15c8ca9 100644 --- a/src/utils/beacon/geolocation.ts +++ b/src/utils/beacon/geolocation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/getShareableLocation.ts b/src/utils/beacon/getShareableLocation.ts index 01162d7399c..4a141ec969b 100644 --- a/src/utils/beacon/getShareableLocation.ts +++ b/src/utils/beacon/getShareableLocation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/index.ts b/src/utils/beacon/index.ts index 7d956399957..19208f515e9 100644 --- a/src/utils/beacon/index.ts +++ b/src/utils/beacon/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/timeline.ts b/src/utils/beacon/timeline.ts index af8def8ac92..25e0e9c008d 100644 --- a/src/utils/beacon/timeline.ts +++ b/src/utils/beacon/timeline.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/useBeacon.ts b/src/utils/beacon/useBeacon.ts index a6d6ea9225e..80fe14abcd9 100644 --- a/src/utils/beacon/useBeacon.ts +++ b/src/utils/beacon/useBeacon.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/useLiveBeacons.ts b/src/utils/beacon/useLiveBeacons.ts index f465fd76d4f..c99faeb72f6 100644 --- a/src/utils/beacon/useLiveBeacons.ts +++ b/src/utils/beacon/useLiveBeacons.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/beacon/useOwnLiveBeacons.ts b/src/utils/beacon/useOwnLiveBeacons.ts index ff0890792ca..37387fda98b 100644 --- a/src/utils/beacon/useOwnLiveBeacons.ts +++ b/src/utils/beacon/useOwnLiveBeacons.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/blobs.ts b/src/utils/blobs.ts index 112bbfbcbd5..70ba54a0303 100644 --- a/src/utils/blobs.ts +++ b/src/utils/blobs.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/colour.ts b/src/utils/colour.ts index a96b68e12ed..40690060832 100644 --- a/src/utils/colour.ts +++ b/src/utils/colour.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/connection.ts b/src/utils/connection.ts index c11d1def682..9c2866d3051 100644 --- a/src/utils/connection.ts +++ b/src/utils/connection.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/createMatrixClient.ts b/src/utils/createMatrixClient.ts index 32274cdc44b..ad156b8ab42 100644 --- a/src/utils/createMatrixClient.ts +++ b/src/utils/createMatrixClient.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { diff --git a/src/utils/createVoiceMessageContent.ts b/src/utils/createVoiceMessageContent.ts index f7b638fbcc4..eb40406dbca 100644 --- a/src/utils/createVoiceMessageContent.ts +++ b/src/utils/createVoiceMessageContent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/crypto/deviceInfo.ts b/src/utils/crypto/deviceInfo.ts index 4392f7c5833..dda634545d3 100644 --- a/src/utils/crypto/deviceInfo.ts +++ b/src/utils/crypto/deviceInfo.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/crypto/index.ts b/src/utils/crypto/index.ts index f1b5c610732..d72702f8bd0 100644 --- a/src/utils/crypto/index.ts +++ b/src/utils/crypto/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/crypto/shouldForceDisableEncryption.ts b/src/utils/crypto/shouldForceDisableEncryption.ts index 8a59d9313ff..c30f58636e1 100644 --- a/src/utils/crypto/shouldForceDisableEncryption.ts +++ b/src/utils/crypto/shouldForceDisableEncryption.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/crypto/shouldSkipSetupEncryption.ts b/src/utils/crypto/shouldSkipSetupEncryption.ts index d4dbb27d1b2..c431833b76c 100644 --- a/src/utils/crypto/shouldSkipSetupEncryption.ts +++ b/src/utils/crypto/shouldSkipSetupEncryption.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/device/clientInformation.ts b/src/utils/device/clientInformation.ts index 500bfdd5508..a8e2383bfdf 100644 --- a/src/utils/device/clientInformation.ts +++ b/src/utils/device/clientInformation.ts @@ -2,21 +2,18 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { MatrixClient } from "matrix-js-sdk/src/matrix"; +import { AccountDataEvents, MatrixClient } from "matrix-js-sdk/src/matrix"; import BasePlatform from "../../BasePlatform"; import { IConfigOptions } from "../../IConfigOptions"; import { DeepReadonly } from "../../@types/common"; +import { DeviceClientInformation } from "./types"; -export type DeviceClientInformation = { - name?: string; - version?: string; - url?: string; -}; +export type { DeviceClientInformation }; const formatUrl = (): string | undefined => { // don't record url for electron clients @@ -34,7 +31,8 @@ const formatUrl = (): string | undefined => { }; const clientInformationEventPrefix = "io.element.matrix_client_information."; -export const getClientInformationEventType = (deviceId: string): string => `${clientInformationEventPrefix}${deviceId}`; +export const getClientInformationEventType = (deviceId: string): `${typeof clientInformationEventPrefix}${string}` => + `${clientInformationEventPrefix}${deviceId}`; /** * Record extra client information for the current device @@ -70,7 +68,7 @@ export const pruneClientInformation = (validDeviceIds: string[], matrixClient: M } const [, deviceId] = event.getType().split(clientInformationEventPrefix); if (deviceId && !validDeviceIds.includes(deviceId)) { - matrixClient.deleteAccountData(event.getType()); + matrixClient.deleteAccountData(event.getType() as keyof AccountDataEvents); } }); }; diff --git a/src/utils/device/dehydration.ts b/src/utils/device/dehydration.ts index b27b3c54c26..d87d43e13a7 100644 --- a/src/utils/device/dehydration.ts +++ b/src/utils/device/dehydration.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/device/isDeviceVerified.ts b/src/utils/device/isDeviceVerified.ts index 1205225e7ca..0eacb4d54ea 100644 --- a/src/utils/device/isDeviceVerified.ts +++ b/src/utils/device/isDeviceVerified.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/device/parseUserAgent.ts b/src/utils/device/parseUserAgent.ts index 6dda013d09e..de21b2e0057 100644 --- a/src/utils/device/parseUserAgent.ts +++ b/src/utils/device/parseUserAgent.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/device/snoozeBulkUnverifiedDeviceReminder.ts b/src/utils/device/snoozeBulkUnverifiedDeviceReminder.ts index effc2a348b7..e4c8b649a02 100644 --- a/src/utils/device/snoozeBulkUnverifiedDeviceReminder.ts +++ b/src/utils/device/snoozeBulkUnverifiedDeviceReminder.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/device/types.ts b/src/utils/device/types.ts new file mode 100644 index 00000000000..e79b0ea2044 --- /dev/null +++ b/src/utils/device/types.ts @@ -0,0 +1,13 @@ +/* +Copyright 2024 New Vector Ltd. +Copyright 2022 The Matrix.org Foundation C.I.C. + +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. +*/ + +export type DeviceClientInformation = { + name?: string; + version?: string; + url?: string; +}; diff --git a/src/utils/direct-messages.ts b/src/utils/direct-messages.ts index eee02f965ec..ef80016962e 100644 --- a/src/utils/direct-messages.ts +++ b/src/utils/direct-messages.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/dm/createDmLocalRoom.ts b/src/utils/dm/createDmLocalRoom.ts index 0a3d3123686..60dbf216b0f 100644 --- a/src/utils/dm/createDmLocalRoom.ts +++ b/src/utils/dm/createDmLocalRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/dm/filterValidMDirect.ts b/src/utils/dm/filterValidMDirect.ts index 33fe922560d..5c7593dd99a 100644 --- a/src/utils/dm/filterValidMDirect.ts +++ b/src/utils/dm/filterValidMDirect.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/dm/findDMForUser.ts b/src/utils/dm/findDMForUser.ts index 0bdb23354dc..b5e13aebaaa 100644 --- a/src/utils/dm/findDMForUser.ts +++ b/src/utils/dm/findDMForUser.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/dm/findDMRoom.ts b/src/utils/dm/findDMRoom.ts index 466f8f24561..52c35ec084c 100644 --- a/src/utils/dm/findDMRoom.ts +++ b/src/utils/dm/findDMRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/dm/startDm.ts b/src/utils/dm/startDm.ts index bb72925c41f..44b7b1d3d88 100644 --- a/src/utils/dm/startDm.ts +++ b/src/utils/dm/startDm.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/enums.ts b/src/utils/enums.ts index 0abc10da4bf..f138ce4cac1 100644 --- a/src/utils/enums.ts +++ b/src/utils/enums.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/event/getSenderName.ts b/src/utils/event/getSenderName.ts index bf87c71bdeb..450edd8f20c 100644 --- a/src/utils/event/getSenderName.ts +++ b/src/utils/event/getSenderName.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/Exporter.ts b/src/utils/exportUtils/Exporter.ts index 37757d8752a..3852443d1e6 100644 --- a/src/utils/exportUtils/Exporter.ts +++ b/src/utils/exportUtils/Exporter.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/HtmlExport.tsx b/src/utils/exportUtils/HtmlExport.tsx index e5b4667fc22..9bd88dbd45e 100644 --- a/src/utils/exportUtils/HtmlExport.tsx +++ b/src/utils/exportUtils/HtmlExport.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/JSONExport.ts b/src/utils/exportUtils/JSONExport.ts index cae450f7437..bcd5c5cdc20 100644 --- a/src/utils/exportUtils/JSONExport.ts +++ b/src/utils/exportUtils/JSONExport.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/PlainTextExport.ts b/src/utils/exportUtils/PlainTextExport.ts index e36c57decc0..48354d6f2ac 100644 --- a/src/utils/exportUtils/PlainTextExport.ts +++ b/src/utils/exportUtils/PlainTextExport.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/exportCSS.ts b/src/utils/exportUtils/exportCSS.ts index dc21141d8b9..ade56edb3e4 100644 --- a/src/utils/exportUtils/exportCSS.ts +++ b/src/utils/exportUtils/exportCSS.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/exportCustomCSS.css b/src/utils/exportUtils/exportCustomCSS.css index b3fa8e81d38..fc94fef90b4 100644 --- a/src/utils/exportUtils/exportCustomCSS.css +++ b/src/utils/exportUtils/exportCustomCSS.css @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/exportJS.js b/src/utils/exportUtils/exportJS.js index 61807b55968..bae73e4f3a5 100644 --- a/src/utils/exportUtils/exportJS.js +++ b/src/utils/exportUtils/exportJS.js @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/exportUtils/exportUtils.ts b/src/utils/exportUtils/exportUtils.ts index caff440ca00..e765f91faf3 100644 --- a/src/utils/exportUtils/exportUtils.ts +++ b/src/utils/exportUtils/exportUtils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/humanize.ts b/src/utils/humanize.ts index d1fcfa07edc..616ee937813 100644 --- a/src/utils/humanize.ts +++ b/src/utils/humanize.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/i18n-helpers.ts b/src/utils/i18n-helpers.ts index d02ecc061aa..195d3afd7a6 100644 --- a/src/utils/i18n-helpers.ts +++ b/src/utils/i18n-helpers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/image-media.ts b/src/utils/image-media.ts index 5c013c7b1ac..2192297bdee 100644 --- a/src/utils/image-media.ts +++ b/src/utils/image-media.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/iterables.ts b/src/utils/iterables.ts index d6091f3f574..5afd1f284c8 100644 --- a/src/utils/iterables.ts +++ b/src/utils/iterables.ts @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2020 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/src/utils/leave-behaviour.ts b/src/utils/leave-behaviour.ts index 016887b5cd0..8924c3693b2 100644 --- a/src/utils/leave-behaviour.ts +++ b/src/utils/leave-behaviour.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/local-room.ts b/src/utils/local-room.ts index e4e922688d7..304471e93a3 100644 --- a/src/utils/local-room.ts +++ b/src/utils/local-room.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/localRoom/isLocalRoom.ts b/src/utils/localRoom/isLocalRoom.ts index e73ba51edc6..6888c9aafdc 100644 --- a/src/utils/localRoom/isLocalRoom.ts +++ b/src/utils/localRoom/isLocalRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/localRoom/isRoomReady.ts b/src/utils/localRoom/isRoomReady.ts index e31f6ae4fb8..8d84f3abe84 100644 --- a/src/utils/localRoom/isRoomReady.ts +++ b/src/utils/localRoom/isRoomReady.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/LocationShareErrors.ts b/src/utils/location/LocationShareErrors.ts index 477c5e1b00c..f4174ea5ace 100644 --- a/src/utils/location/LocationShareErrors.ts +++ b/src/utils/location/LocationShareErrors.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/findMapStyleUrl.ts b/src/utils/location/findMapStyleUrl.ts index 9e5a19d8aa1..10915a9c336 100644 --- a/src/utils/location/findMapStyleUrl.ts +++ b/src/utils/location/findMapStyleUrl.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/index.ts b/src/utils/location/index.ts index cf71850b844..053c938d809 100644 --- a/src/utils/location/index.ts +++ b/src/utils/location/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/isSelfLocation.ts b/src/utils/location/isSelfLocation.ts index fbc7957228a..17d9e9ea94d 100644 --- a/src/utils/location/isSelfLocation.ts +++ b/src/utils/location/isSelfLocation.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/links.ts b/src/utils/location/links.ts index 0d10dc96eba..cf957af3e8f 100644 --- a/src/utils/location/links.ts +++ b/src/utils/location/links.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/locationEventGeoUri.ts b/src/utils/location/locationEventGeoUri.ts index 1de85defafc..171952b07bb 100644 --- a/src/utils/location/locationEventGeoUri.ts +++ b/src/utils/location/locationEventGeoUri.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/map.ts b/src/utils/location/map.ts index 22d11c2e306..22ceb998d5b 100644 --- a/src/utils/location/map.ts +++ b/src/utils/location/map.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/parseGeoUri.ts b/src/utils/location/parseGeoUri.ts index 5187d970c10..85a4474be50 100644 --- a/src/utils/location/parseGeoUri.ts +++ b/src/utils/location/parseGeoUri.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/positionFailureMessage.ts b/src/utils/location/positionFailureMessage.ts index 44b88f48ae9..cb53d931b76 100644 --- a/src/utils/location/positionFailureMessage.ts +++ b/src/utils/location/positionFailureMessage.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/location/useMap.ts b/src/utils/location/useMap.ts index 308aedc205c..e859559a527 100644 --- a/src/utils/location/useMap.ts +++ b/src/utils/location/useMap.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/login.ts b/src/utils/login.ts index cc6a6e0adfa..8f5d93ffae2 100644 --- a/src/utils/login.ts +++ b/src/utils/login.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/maps.ts b/src/utils/maps.ts index ea6d4fb37a9..48de6f8be35 100644 --- a/src/utils/maps.ts +++ b/src/utils/maps.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/media/requestMediaPermissions.tsx b/src/utils/media/requestMediaPermissions.tsx index 10a2fc0ca60..3b9e04ccd2e 100644 --- a/src/utils/media/requestMediaPermissions.tsx +++ b/src/utils/media/requestMediaPermissions.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/membership.ts b/src/utils/membership.ts index 27d281a76ea..79a1771e661 100644 --- a/src/utils/membership.ts +++ b/src/utils/membership.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/notifications.ts b/src/utils/notifications.ts index 30d29483802..9119ef9bcb7 100644 --- a/src/utils/notifications.ts +++ b/src/utils/notifications.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -20,6 +20,7 @@ import { IndicatorIcon } from "@vector-im/compound-web"; import SettingsStore from "../settings/SettingsStore"; import { NotificationLevel } from "../stores/notifications/NotificationLevel"; import { doesRoomHaveUnreadMessages } from "../Unread"; +import { SettingKey } from "../settings/Settings.tsx"; // MSC2867 is not yet spec at time of writing. We read from both stable // and unstable prefixes and accept the risk that the format may change, @@ -34,13 +35,15 @@ export const MARKED_UNREAD_TYPE_UNSTABLE = "com.famedly.marked_unread"; */ export const MARKED_UNREAD_TYPE_STABLE = "m.marked_unread"; -export const deviceNotificationSettingsKeys = [ +export const deviceNotificationSettingsKeys: SettingKey[] = [ "notificationsEnabled", "notificationBodyEnabled", "audioNotificationsEnabled", ]; -export function getLocalNotificationAccountDataEventType(deviceId: string | null): string { +export function getLocalNotificationAccountDataEventType( + deviceId: string | null, +): `${typeof LOCAL_NOTIFICATION_SETTINGS_PREFIX.name}.${string}` { return `${LOCAL_NOTIFICATION_SETTINGS_PREFIX.name}.${deviceId}`; } diff --git a/src/utils/numbers.ts b/src/utils/numbers.ts index 80d964b5a63..87e5ced83ff 100644 --- a/src/utils/numbers.ts +++ b/src/utils/numbers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/objects.ts b/src/utils/objects.ts index 65ce8d34f5f..a919699eac6 100644 --- a/src/utils/objects.ts +++ b/src/utils/objects.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/TokenRefresher.ts b/src/utils/oidc/TokenRefresher.ts index a41d3669a92..7c6848e39e7 100644 --- a/src/utils/oidc/TokenRefresher.ts +++ b/src/utils/oidc/TokenRefresher.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/authorize.ts b/src/utils/oidc/authorize.ts index 7dcdc6e6caa..50c9e07228b 100644 --- a/src/utils/oidc/authorize.ts +++ b/src/utils/oidc/authorize.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/error.ts b/src/utils/oidc/error.ts index 41c6fd4cc36..94313648a25 100644 --- a/src/utils/oidc/error.ts +++ b/src/utils/oidc/error.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/getOidcLogoutUrl.ts b/src/utils/oidc/getOidcLogoutUrl.ts deleted file mode 100644 index be632b815ae..00000000000 --- a/src/utils/oidc/getOidcLogoutUrl.ts +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. -Copyright 2023 The Matrix.org Foundation C.I.C. - -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only -Please see LICENSE files in the repository root for full details. -*/ - -/** - * Create a delegated auth account management URL with logout params as per MSC3824 and MSC2965 - * https://github.com/matrix-org/matrix-spec-proposals/blob/hughns/sso-redirect-action/proposals/3824-oidc-aware-clients.md#definition-of-oidc-aware - * https://github.com/sandhose/matrix-doc/blob/msc/sandhose/oidc-discovery/proposals/2965-oidc-discovery.md#account-management-url-parameters - */ -export const getOidcLogoutUrl = (delegatedAuthAccountUrl: string, deviceId: string): string => { - const logoutUrl = new URL(delegatedAuthAccountUrl); - logoutUrl.searchParams.set("action", "session_end"); - logoutUrl.searchParams.set("device_id", deviceId); - - return logoutUrl.toString(); -}; diff --git a/src/utils/oidc/isUserRegistrationSupported.ts b/src/utils/oidc/isUserRegistrationSupported.ts index 4633f2a966c..8c91ee543b9 100644 --- a/src/utils/oidc/isUserRegistrationSupported.ts +++ b/src/utils/oidc/isUserRegistrationSupported.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/persistOidcSettings.ts b/src/utils/oidc/persistOidcSettings.ts index d508d0192cd..6ca1295e036 100644 --- a/src/utils/oidc/persistOidcSettings.ts +++ b/src/utils/oidc/persistOidcSettings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/registerClient.ts b/src/utils/oidc/registerClient.ts index 7d64969bd32..61ec4ee3f29 100644 --- a/src/utils/oidc/registerClient.ts +++ b/src/utils/oidc/registerClient.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/oidc/urls.ts b/src/utils/oidc/urls.ts new file mode 100644 index 00000000000..fe364441a17 --- /dev/null +++ b/src/utils/oidc/urls.ts @@ -0,0 +1,32 @@ +/* +Copyright 2024 New Vector Ltd. +Copyright 2023 The Matrix.org Foundation C.I.C. + +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. +*/ + +enum Action { + Profile = "org.matrix.profile", + SessionsList = "org.matrix.sessions_list", + SessionView = "org.matrix.session_view", + SessionEnd = "org.matrix.session_end", + AccountDeactivate = "org.matrix.account_deactivate", + CrossSigningReset = "org.matrix.cross_signing_reset", +} + +const getUrl = (authUrl: string, action: Action): URL => { + const url = new URL(authUrl); + url.searchParams.set("action", action); + return url; +}; + +/** + * Create a delegated auth account management URL with logout params as per MSC4191 + * https://github.com/matrix-org/matrix-spec-proposals/blob/quenting/account-deeplink/proposals/4191-account-deeplink.md#possible-actions + */ +export const getManageDeviceUrl = (delegatedAuthAccountUrl: string, deviceId: string): string => { + const url = getUrl(delegatedAuthAccountUrl, Action.SessionView); + url.searchParams.set("device_id", deviceId); + return url.toString(); +}; diff --git a/src/utils/pages.ts b/src/utils/pages.ts index 83ed40895a2..efa25c803e7 100644 --- a/src/utils/pages.ts +++ b/src/utils/pages.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/permalinks/ElementPermalinkConstructor.ts b/src/utils/permalinks/ElementPermalinkConstructor.ts index 7240a0add50..37880d34999 100644 --- a/src/utils/permalinks/ElementPermalinkConstructor.ts +++ b/src/utils/permalinks/ElementPermalinkConstructor.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/permalinks/MatrixSchemePermalinkConstructor.ts b/src/utils/permalinks/MatrixSchemePermalinkConstructor.ts index beefc4f4f49..d6f42e33469 100644 --- a/src/utils/permalinks/MatrixSchemePermalinkConstructor.ts +++ b/src/utils/permalinks/MatrixSchemePermalinkConstructor.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/permalinks/MatrixToPermalinkConstructor.ts b/src/utils/permalinks/MatrixToPermalinkConstructor.ts index d5b51abfbac..77b4830e192 100644 --- a/src/utils/permalinks/MatrixToPermalinkConstructor.ts +++ b/src/utils/permalinks/MatrixToPermalinkConstructor.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/permalinks/PermalinkConstructor.ts b/src/utils/permalinks/PermalinkConstructor.ts index 9868b4e0d31..296ae668fa0 100644 --- a/src/utils/permalinks/PermalinkConstructor.ts +++ b/src/utils/permalinks/PermalinkConstructor.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/permalinks/Permalinks.ts b/src/utils/permalinks/Permalinks.ts index 9ecbf00b683..64411894978 100644 --- a/src/utils/permalinks/Permalinks.ts +++ b/src/utils/permalinks/Permalinks.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/permalinks/navigator.ts b/src/utils/permalinks/navigator.ts index 711bf9a1b0b..053dec10c5c 100644 --- a/src/utils/permalinks/navigator.ts +++ b/src/utils/permalinks/navigator.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/pillify.tsx b/src/utils/pillify.tsx index 1859e90fd6b..efcc9937467 100644 --- a/src/utils/pillify.tsx +++ b/src/utils/pillify.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -83,9 +83,8 @@ export function pillifyLinks( ); - pills.render(pill, pillContainer); - - node.parentNode?.replaceChild(pillContainer, node); + pills.render(pill, pillContainer, node); + node.replaceWith(pillContainer); // Pills within pills aren't going to go well, so move on pillified = true; @@ -147,8 +146,8 @@ export function pillifyLinks( ); - pills.render(pill, pillContainer); - roomNotifTextNode.parentNode?.replaceChild(pillContainer, roomNotifTextNode); + pills.render(pill, pillContainer, roomNotifTextNode); + roomNotifTextNode.replaceWith(pillContainer); } // Nothing else to do for a text node (and we don't need to advance // the loop pointer because we did it above) diff --git a/src/utils/presence.ts b/src/utils/presence.ts index 0930739bd52..798efdde5dc 100644 --- a/src/utils/presence.ts +++ b/src/utils/presence.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/promise.ts b/src/utils/promise.ts index 58dfdc8cd9a..919b925a5bc 100644 --- a/src/utils/promise.ts +++ b/src/utils/promise.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/pushRules/monitorSyncedPushRules.ts b/src/utils/pushRules/monitorSyncedPushRules.ts index 346e96431ec..fcc41aae82a 100644 --- a/src/utils/pushRules/monitorSyncedPushRules.ts +++ b/src/utils/pushRules/monitorSyncedPushRules.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/pushRules/updatePushRuleActions.ts b/src/utils/pushRules/updatePushRuleActions.ts index 5e305a52c47..e7ce8f7e8ea 100644 --- a/src/utils/pushRules/updatePushRuleActions.ts +++ b/src/utils/pushRules/updatePushRuleActions.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/react.tsx b/src/utils/react.tsx index b78f574fa97..435485214d5 100644 --- a/src/utils/react.tsx +++ b/src/utils/react.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -15,7 +15,7 @@ import { createRoot, Root } from "react-dom/client"; export class ReactRootManager { private roots: Root[] = []; private rootElements: Element[] = []; - private revertElements: Array = []; + private revertElements: Array = []; public get elements(): Element[] { return this.rootElements; @@ -26,12 +26,13 @@ export class ReactRootManager { * @param children the React component to render * @param rootElement the root element to render the component into * @param revertElement the element to replace the root element with when unmounting + * needed to support double-rendering in React 18 Strict Dev mode */ - public render(children: ReactNode, rootElement: Element, revertElement?: Element): void { + public render(children: ReactNode, rootElement: Element, revertElement: Node | null): void { const root = createRoot(rootElement); this.roots.push(root); this.rootElements.push(rootElement); - this.revertElements.push(revertElement ?? null); + this.revertElements.push(revertElement); root.render(children); } diff --git a/src/utils/read-receipts.ts b/src/utils/read-receipts.ts index 2a52b0bb739..51a4d6705e9 100644 --- a/src/utils/read-receipts.ts +++ b/src/utils/read-receipts.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/canInviteTo.ts b/src/utils/room/canInviteTo.ts index 89ce47a35b4..3d0b0c8f50f 100644 --- a/src/utils/room/canInviteTo.ts +++ b/src/utils/room/canInviteTo.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/getFunctionalMembers.ts b/src/utils/room/getFunctionalMembers.ts index 018e7854274..f107fc0d1ae 100644 --- a/src/utils/room/getFunctionalMembers.ts +++ b/src/utils/room/getFunctionalMembers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/getJoinedNonFunctionalMembers.ts b/src/utils/room/getJoinedNonFunctionalMembers.ts index 855a87a2dcf..b8434987532 100644 --- a/src/utils/room/getJoinedNonFunctionalMembers.ts +++ b/src/utils/room/getJoinedNonFunctionalMembers.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/inviteToRoom.ts b/src/utils/room/inviteToRoom.ts index 10c84e9a9e6..c7010ec9474 100644 --- a/src/utils/room/inviteToRoom.ts +++ b/src/utils/room/inviteToRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/placeCall.ts b/src/utils/room/placeCall.ts index 13b0de23c4c..04043fc3d31 100644 --- a/src/utils/room/placeCall.ts +++ b/src/utils/room/placeCall.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/shouldEncryptRoomWithSingle3rdPartyInvite.ts b/src/utils/room/shouldEncryptRoomWithSingle3rdPartyInvite.ts index 444bd0a303a..4192f0af1ad 100644 --- a/src/utils/room/shouldEncryptRoomWithSingle3rdPartyInvite.ts +++ b/src/utils/room/shouldEncryptRoomWithSingle3rdPartyInvite.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/room/tagRoom.ts b/src/utils/room/tagRoom.ts index 8b8f99e9913..7ed707d8741 100644 --- a/src/utils/room/tagRoom.ts +++ b/src/utils/room/tagRoom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/rooms.ts b/src/utils/rooms.ts index 96495735bdc..d32e2e933f1 100644 --- a/src/utils/rooms.ts +++ b/src/utils/rooms.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/sets.ts b/src/utils/sets.ts index d6b28a9e41b..0d871f6b26e 100644 --- a/src/utils/sets.ts +++ b/src/utils/sets.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/space.tsx b/src/utils/space.tsx index a1bf1b5bb2c..9c3e0bc40c7 100644 --- a/src/utils/space.tsx +++ b/src/utils/space.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/stringOrderField.ts b/src/utils/stringOrderField.ts index e50501344bb..b6ba8410e3a 100644 --- a/src/utils/stringOrderField.ts +++ b/src/utils/stringOrderField.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/strings.ts b/src/utils/strings.ts index e7c99adbb8d..292c66cb034 100644 --- a/src/utils/strings.ts +++ b/src/utils/strings.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ /** diff --git a/src/utils/threepids.ts b/src/utils/threepids.ts index a53bce6bcc6..5882c51c189 100644 --- a/src/utils/threepids.ts +++ b/src/utils/threepids.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/tokens/pickling.ts b/src/utils/tokens/pickling.ts index 5fc82c16a5c..3284d3f9cf9 100644 --- a/src/utils/tokens/pickling.ts +++ b/src/utils/tokens/pickling.ts @@ -5,7 +5,7 @@ Copyright 2018 New Vector Ltd Copyright 2016 Aviral Dasgupta Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/tokens/tokens.ts b/src/utils/tokens/tokens.ts index 901da3a9a88..a25117beb8d 100644 --- a/src/utils/tokens/tokens.ts +++ b/src/utils/tokens/tokens.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/tooltipify.tsx b/src/utils/tooltipify.tsx index fc319b2024c..26d43cf0330 100644 --- a/src/utils/tooltipify.tsx +++ b/src/utils/tooltipify.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -66,7 +66,7 @@ export function tooltipifyLinks( ); - tooltips.render(tooltip, node); + tooltips.render(tooltip, node, null); } else if (node.childNodes?.length) { tooltipifyLinks(node.childNodes as NodeListOf, ignoredNodes, tooltips); } diff --git a/src/utils/units.ts b/src/utils/units.ts index d2ceb262bbc..1c509ece4b1 100644 --- a/src/utils/units.ts +++ b/src/utils/units.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/validate/index.ts b/src/utils/validate/index.ts index 946bb79575c..367641232df 100644 --- a/src/utils/validate/index.ts +++ b/src/utils/validate/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/validate/numberInRange.ts b/src/utils/validate/numberInRange.ts index cbdabad5477..ece657c9c77 100644 --- a/src/utils/validate/numberInRange.ts +++ b/src/utils/validate/numberInRange.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/utils/video-rooms.ts b/src/utils/video-rooms.ts index a0003d59d90..1da34142947 100644 --- a/src/utils/video-rooms.ts +++ b/src/utils/video-rooms.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/app.tsx b/src/vector/app.tsx index 426163db0bb..2ae9e6fa03f 100644 --- a/src/vector/app.tsx +++ b/src/vector/app.tsx @@ -6,7 +6,7 @@ Copyright 2018, 2019 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/getconfig.ts b/src/vector/getconfig.ts index 4a137b0c383..1f2e4956f4a 100644 --- a/src/vector/getconfig.ts +++ b/src/vector/getconfig.ts @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/index.ts b/src/vector/index.ts index 42b69af70e5..c398c0b7886 100644 --- a/src/vector/index.ts +++ b/src/vector/index.ts @@ -6,7 +6,7 @@ Copyright 2018, 2019 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/init.tsx b/src/vector/init.tsx index a3d5624cb46..34f5b9fc08c 100644 --- a/src/vector/init.tsx +++ b/src/vector/init.tsx @@ -4,7 +4,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/jitsi/index.pcss b/src/vector/jitsi/index.pcss index 5bebaaccadb..09299f1b7f5 100644 --- a/src/vector/jitsi/index.pcss +++ b/src/vector/jitsi/index.pcss @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/jitsi/index.ts b/src/vector/jitsi/index.ts index 84096dfaae1..273e80488c6 100644 --- a/src/vector/jitsi/index.ts +++ b/src/vector/jitsi/index.ts @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/localstorage-fix.ts b/src/vector/localstorage-fix.ts index 31373d9c49c..14b95aca787 100644 --- a/src/vector/localstorage-fix.ts +++ b/src/vector/localstorage-fix.ts @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/mobile_guide/index.ts b/src/vector/mobile_guide/index.ts index 6f6602a6bea..ae769039a8e 100644 --- a/src/vector/mobile_guide/index.ts +++ b/src/vector/mobile_guide/index.ts @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/platform/ElectronPlatform.tsx b/src/vector/platform/ElectronPlatform.tsx index ac6e7a7feb1..6a6409ea42f 100644 --- a/src/vector/platform/ElectronPlatform.tsx +++ b/src/vector/platform/ElectronPlatform.tsx @@ -6,7 +6,7 @@ Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> Copyright 2016 Aviral Dasgupta Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/platform/IPCManager.ts b/src/vector/platform/IPCManager.ts index 690deb6e3e1..7d329b8b2cb 100644 --- a/src/vector/platform/IPCManager.ts +++ b/src/vector/platform/IPCManager.ts @@ -1,7 +1,7 @@ /* Copyright 2022-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/platform/PWAPlatform.ts b/src/vector/platform/PWAPlatform.ts index 616eaf5c8c6..5334c8e70f0 100644 --- a/src/vector/platform/PWAPlatform.ts +++ b/src/vector/platform/PWAPlatform.ts @@ -1,7 +1,7 @@ /* Copyright 2020-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/platform/SeshatIndexManager.ts b/src/vector/platform/SeshatIndexManager.ts index e4ba4dea107..2f281812f67 100644 --- a/src/vector/platform/SeshatIndexManager.ts +++ b/src/vector/platform/SeshatIndexManager.ts @@ -1,7 +1,7 @@ /* Copyright 2022-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/platform/WebPlatform.ts b/src/vector/platform/WebPlatform.ts index bb573c89c0f..ff575cb7b36 100644 --- a/src/vector/platform/WebPlatform.ts +++ b/src/vector/platform/WebPlatform.ts @@ -3,7 +3,7 @@ Copyright 2017-2024 New Vector Ltd. Copyright 2016 Aviral Dasgupta Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/rageshakesetup.ts b/src/vector/rageshakesetup.ts index d089ca3e4de..ef104e9a5b2 100644 --- a/src/vector/rageshakesetup.ts +++ b/src/vector/rageshakesetup.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/routing.ts b/src/vector/routing.ts index 216f3ac63b4..98da8817365 100644 --- a/src/vector/routing.ts +++ b/src/vector/routing.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/vector/url_utils.ts b/src/vector/url_utils.ts index 6ac6a60c146..82430a10c87 100644 --- a/src/vector/url_utils.ts +++ b/src/vector/url_utils.ts @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/verification.ts b/src/verification.ts index 9f774964998..90dacbf6ac2 100644 --- a/src/verification.ts +++ b/src/verification.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019, 2020 , 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/widgets/CapabilityText.tsx b/src/widgets/CapabilityText.tsx index 28ba1175774..ea910c21c0e 100644 --- a/src/widgets/CapabilityText.tsx +++ b/src/widgets/CapabilityText.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/widgets/Jitsi.ts b/src/widgets/Jitsi.ts index ba54eda5e13..e76e86157d8 100644 --- a/src/widgets/Jitsi.ts +++ b/src/widgets/Jitsi.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/widgets/ManagedHybrid.ts b/src/widgets/ManagedHybrid.ts index a904bbab086..b4ef4cba8b3 100644 --- a/src/widgets/ManagedHybrid.ts +++ b/src/widgets/ManagedHybrid.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/widgets/WidgetType.ts b/src/widgets/WidgetType.ts index 58b836a13d9..7040de4cfec 100644 --- a/src/widgets/WidgetType.ts +++ b/src/widgets/WidgetType.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/blurhash.worker.ts b/src/workers/blurhash.worker.ts index 00656ca8108..9d9c2fbf52e 100644 --- a/src/workers/blurhash.worker.ts +++ b/src/workers/blurhash.worker.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/blurhashWorkerFactory.ts b/src/workers/blurhashWorkerFactory.ts index ab16ecb3fcb..669ab0a084d 100644 --- a/src/workers/blurhashWorkerFactory.ts +++ b/src/workers/blurhashWorkerFactory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/indexeddb.worker.ts b/src/workers/indexeddb.worker.ts index 5b71a08ef28..c712999d327 100644 --- a/src/workers/indexeddb.worker.ts +++ b/src/workers/indexeddb.worker.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2017 Vector Creations Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/indexeddbWorkerFactory.ts b/src/workers/indexeddbWorkerFactory.ts index 1d78d9fb354..3ff1e82bf89 100644 --- a/src/workers/indexeddbWorkerFactory.ts +++ b/src/workers/indexeddbWorkerFactory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/playback.worker.ts b/src/workers/playback.worker.ts index 45789ffba3d..47479e6adb0 100644 --- a/src/workers/playback.worker.ts +++ b/src/workers/playback.worker.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/playbackWorkerFactory.ts b/src/workers/playbackWorkerFactory.ts index 4d1aedddc2c..7986184b3ca 100644 --- a/src/workers/playbackWorkerFactory.ts +++ b/src/workers/playbackWorkerFactory.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/src/workers/worker.ts b/src/workers/worker.ts index fa2a45c850f..d96a53a324a 100644 --- a/src/workers/worker.ts +++ b/src/workers/worker.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/@types/common.ts b/test/@types/common.ts index 865a34fd475..8203ff1dd3d 100644 --- a/test/@types/common.ts +++ b/test/@types/common.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/CreateCrossSigning-test.ts b/test/CreateCrossSigning-test.ts index e1762bb5040..6863b0500ec 100644 --- a/test/CreateCrossSigning-test.ts +++ b/test/CreateCrossSigning-test.ts @@ -2,11 +2,11 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { MatrixClient, MatrixError } from "matrix-js-sdk/src/matrix"; +import { HTTPError, MatrixClient, MatrixError } from "matrix-js-sdk/src/matrix"; import { mocked } from "jest-mock"; import { createCrossSigning } from "../src/CreateCrossSigning"; @@ -21,14 +21,14 @@ describe("CreateCrossSigning", () => { }); it("should call bootstrapCrossSigning with an authUploadDeviceSigningKeys function", async () => { - await createCrossSigning(client, false, "password"); + await createCrossSigning(client); expect(client.getCrypto()?.bootstrapCrossSigning).toHaveBeenCalledWith({ authUploadDeviceSigningKeys: expect.any(Function), }); }); - it("should upload with password auth if possible", async () => { + it("should upload", async () => { client.uploadDeviceSigningKeys = jest.fn().mockRejectedValueOnce( new MatrixError({ flows: [ @@ -39,24 +39,7 @@ describe("CreateCrossSigning", () => { }), ); - await createCrossSigning(client, false, "password"); - - const { authUploadDeviceSigningKeys } = mocked(client.getCrypto()!).bootstrapCrossSigning.mock.calls[0][0]; - - const makeRequest = jest.fn(); - await authUploadDeviceSigningKeys!(makeRequest); - expect(makeRequest).toHaveBeenCalledWith({ - type: "m.login.password", - identifier: { - type: "m.id.user", - user: client.getUserId(), - }, - password: "password", - }); - }); - - it("should attempt to upload keys without auth if using token login", async () => { - await createCrossSigning(client, true, undefined); + await createCrossSigning(client); const { authUploadDeviceSigningKeys } = mocked(client.getCrypto()!).bootstrapCrossSigning.mock.calls[0][0]; @@ -65,7 +48,7 @@ describe("CreateCrossSigning", () => { expect(makeRequest).toHaveBeenCalledWith({}); }); - it("should prompt user if password upload not possible", async () => { + it("should prompt user if upload failed with UIA", async () => { const createDialog = jest.spyOn(Modal, "createDialog").mockReturnValue({ finished: Promise.resolve([true]), close: jest.fn(), @@ -81,13 +64,32 @@ describe("CreateCrossSigning", () => { }), ); - await createCrossSigning(client, false, "password"); + await createCrossSigning(client); const { authUploadDeviceSigningKeys } = mocked(client.getCrypto()!).bootstrapCrossSigning.mock.calls[0][0]; - const makeRequest = jest.fn(); + const makeRequest = jest.fn().mockRejectedValue( + new MatrixError({ + flows: [ + { + stages: ["dummy.mystery_flow_nobody_knows"], + }, + ], + }), + ); await authUploadDeviceSigningKeys!(makeRequest); expect(makeRequest).not.toHaveBeenCalledWith(); expect(createDialog).toHaveBeenCalled(); }); + + it("should throw error if server fails with something other than UIA", async () => { + await createCrossSigning(client); + + const { authUploadDeviceSigningKeys } = mocked(client.getCrypto()!).bootstrapCrossSigning.mock.calls[0][0]; + + const error = new HTTPError("Internal Server Error", 500); + const makeRequest = jest.fn().mockRejectedValue(error); + await expect(authUploadDeviceSigningKeys!(makeRequest)).rejects.toThrow(error); + expect(makeRequest).not.toHaveBeenCalledWith(); + }); }); diff --git a/test/app-tests/server-config-test.ts b/test/app-tests/server-config-test.ts index 7e04e6ca24f..50a2de08a81 100644 --- a/test/app-tests/server-config-test.ts +++ b/test/app-tests/server-config-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Yorusaka Miyabi -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/app-tests/wrapper-test.tsx b/test/app-tests/wrapper-test.tsx index af42426f0a1..47e2ad2ce1d 100644 --- a/test/app-tests/wrapper-test.tsx +++ b/test/app-tests/wrapper-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/components/views/dialogs/security/InitialCryptoSetupDialog-test.tsx b/test/components/views/dialogs/security/InitialCryptoSetupDialog-test.tsx index 4d3d495a38d..0e333da30aa 100644 --- a/test/components/views/dialogs/security/InitialCryptoSetupDialog-test.tsx +++ b/test/components/views/dialogs/security/InitialCryptoSetupDialog-test.tsx @@ -2,36 +2,27 @@ Copyright 2024 New Vector Ltd. Copyright 2018-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { render, screen, waitFor } from "jest-matrix-react"; -import { mocked } from "jest-mock"; -import { MatrixClient } from "matrix-js-sdk/src/matrix"; +import { render, screen } from "jest-matrix-react"; +import userEvent from "@testing-library/user-event"; -import { createCrossSigning } from "../../../../../src/CreateCrossSigning"; import { InitialCryptoSetupDialog } from "../../../../../src/components/views/dialogs/security/InitialCryptoSetupDialog"; -import { createTestClient } from "../../../../test-utils"; - -jest.mock("../../../../../src/CreateCrossSigning", () => ({ - createCrossSigning: jest.fn(), -})); +import { InitialCryptoSetupStore } from "../../../../../src/stores/InitialCryptoSetupStore"; describe("InitialCryptoSetupDialog", () => { - let client: MatrixClient; - let createCrossSigningResolve: () => void; - let createCrossSigningReject: (e: Error) => void; + const storeMock = { + getStatus: jest.fn(), + retry: jest.fn(), + on: jest.fn(), + off: jest.fn(), + }; beforeEach(() => { - client = createTestClient(); - mocked(createCrossSigning).mockImplementation(() => { - return new Promise((resolve, reject) => { - createCrossSigningResolve = resolve; - createCrossSigningReject = reject; - }); - }); + jest.spyOn(InitialCryptoSetupStore, "sharedInstance").mockReturnValue(storeMock as any); }); afterEach(() => { @@ -39,93 +30,32 @@ describe("InitialCryptoSetupDialog", () => { jest.restoreAllMocks(); }); - it("should call createCrossSigning and show a spinner while it runs", async () => { + it("should show a spinner while the setup is in progress", async () => { const onFinished = jest.fn(); - render( - , - ); - - expect(createCrossSigning).toHaveBeenCalledWith(client, false, "hunter2"); - expect(screen.getByTestId("spinner")).toBeInTheDocument(); + storeMock.getStatus.mockReturnValue("in_progress"); - createCrossSigningResolve!(); + render(); - await waitFor(() => expect(onFinished).toHaveBeenCalledWith(true)); + expect(screen.getByTestId("spinner")).toBeInTheDocument(); }); - it("should display an error if createCrossSigning fails", async () => { - render( - , - ); + it("should display an error if setup has failed", async () => { + storeMock.getStatus.mockReturnValue("error"); - createCrossSigningReject!(new Error("generic error message")); + render(); await expect(await screen.findByRole("button", { name: "Retry" })).toBeInTheDocument(); }); - it("ignores failures when tokenLogin is true", async () => { - const onFinished = jest.fn(); - - render( - , - ); - - createCrossSigningReject!(new Error("generic error message")); - - await waitFor(() => expect(onFinished).toHaveBeenCalledWith(false)); - }); - - it("cancels the dialog when the cancel button is clicked", async () => { + it("calls retry when retry button pressed", async () => { const onFinished = jest.fn(); + storeMock.getStatus.mockReturnValue("error"); - render( - , - ); - - createCrossSigningReject!(new Error("generic error message")); - - const cancelButton = await screen.findByRole("button", { name: "Cancel" }); - cancelButton.click(); - - expect(onFinished).toHaveBeenCalledWith(false); - }); - - it("should retry when the retry button is clicked", async () => { - render( - , - ); - - createCrossSigningReject!(new Error("generic error message")); + render(); - const retryButton = await screen.findByRole("button", { name: "Retry" }); - retryButton.click(); + await userEvent.click(await screen.findByRole("button", { name: "Retry" })); - expect(createCrossSigning).toHaveBeenCalledTimes(2); + expect(storeMock.retry).toHaveBeenCalled(); }); }); diff --git a/test/globalSetup.ts b/test/globalSetup.ts index 36868124e54..c00ca3abf86 100644 --- a/test/globalSetup.ts +++ b/test/globalSetup.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/jest-mocks.ts b/test/jest-mocks.ts index 7241595c071..f742d141984 100644 --- a/test/jest-mocks.ts +++ b/test/jest-mocks.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/setup/mocks.ts b/test/setup/mocks.ts index 86c2f4bafc6..ffc349293e4 100644 --- a/test/setup/mocks.ts +++ b/test/setup/mocks.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/setup/setupConfig.ts b/test/setup/setupConfig.ts index 64f2f748438..c56a6444f46 100644 --- a/test/setup/setupConfig.ts +++ b/test/setup/setupConfig.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/setup/setupLanguage.ts b/test/setup/setupLanguage.ts index 1843f83241a..347f38edfc5 100644 --- a/test/setup/setupLanguage.ts +++ b/test/setup/setupLanguage.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/setup/setupManualMocks.ts b/test/setup/setupManualMocks.ts index 8064048baa0..7c49b33e033 100644 --- a/test/setup/setupManualMocks.ts +++ b/test/setup/setupManualMocks.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/setupTests.ts b/test/setupTests.ts index f0067a5d23b..5d1740f5f49 100644 --- a/test/setupTests.ts +++ b/test/setupTests.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/slowReporter.cjs b/test/slowReporter.cjs index 9c884c8114f..e25938753c4 100644 --- a/test/slowReporter.cjs +++ b/test/slowReporter.cjs @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/audio.ts b/test/test-utils/audio.ts index c0888ad2aaf..5de94b529d8 100644 --- a/test/test-utils/audio.ts +++ b/test/test-utils/audio.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/beacon.ts b/test/test-utils/beacon.ts index 538528cd51b..aca294546f1 100644 --- a/test/test-utils/beacon.ts +++ b/test/test-utils/beacon.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/call.ts b/test/test-utils/call.ts index df87fcaa559..04b46f15979 100644 --- a/test/test-utils/call.ts +++ b/test/test-utils/call.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/client.ts b/test/test-utils/client.ts index a2347f90588..f1b2cf967ca 100644 --- a/test/test-utils/client.ts +++ b/test/test-utils/client.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/composer.ts b/test/test-utils/composer.ts index 9e970fca40b..73a3d990cf0 100644 --- a/test/test-utils/composer.ts +++ b/test/test-utils/composer.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/console.ts b/test/test-utils/console.ts index 16c9ecf83d8..690357778b4 100644 --- a/test/test-utils/console.ts +++ b/test/test-utils/console.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/date.ts b/test/test-utils/date.ts index d9c10ef972a..00b187446b9 100644 --- a/test/test-utils/date.ts +++ b/test/test-utils/date.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/events.ts b/test/test-utils/events.ts index ab5c372a1c5..3e1ebadda6d 100644 --- a/test/test-utils/events.ts +++ b/test/test-utils/events.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/index.ts b/test/test-utils/index.ts index 1486ade2834..0fd5797b3f7 100644 --- a/test/test-utils/index.ts +++ b/test/test-utils/index.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2016-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/jest-matrix-react.tsx b/test/test-utils/jest-matrix-react.tsx index 2aad5d45ffc..765f84a5c95 100644 --- a/test/test-utils/jest-matrix-react.tsx +++ b/test/test-utils/jest-matrix-react.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/location.ts b/test/test-utils/location.ts index 1f099717346..0b558b5b8c5 100644 --- a/test/test-utils/location.ts +++ b/test/test-utils/location.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/oidc.ts b/test/test-utils/oidc.ts index 1bacd5f3e52..72cdad04ef1 100644 --- a/test/test-utils/oidc.ts +++ b/test/test-utils/oidc.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/platform.ts b/test/test-utils/platform.ts index 07a80873109..e360bb5e0ca 100644 --- a/test/test-utils/platform.ts +++ b/test/test-utils/platform.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/poll.ts b/test/test-utils/poll.ts index 276730c2ff3..b7fea582599 100644 --- a/test/test-utils/poll.ts +++ b/test/test-utils/poll.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/predictableRandom.ts b/test/test-utils/predictableRandom.ts index 10b2a38cb48..3e0c07ccdd3 100644 --- a/test/test-utils/predictableRandom.ts +++ b/test/test-utils/predictableRandom.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/pushRules.ts b/test/test-utils/pushRules.ts index b0af6b72917..15796f8a096 100644 --- a/test/test-utils/pushRules.ts +++ b/test/test-utils/pushRules.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/relations.ts b/test/test-utils/relations.ts index e48715ca9b2..1acf16af008 100644 --- a/test/test-utils/relations.ts +++ b/test/test-utils/relations.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/room.ts b/test/test-utils/room.ts index bfd1f9004c0..21c82c9ae3a 100644 --- a/test/test-utils/room.ts +++ b/test/test-utils/room.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/test-utils.ts b/test/test-utils/test-utils.ts index f9aee512a30..b1bfe17aa65 100644 --- a/test/test-utils/test-utils.ts +++ b/test/test-utils/test-utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -134,6 +134,7 @@ export function createTestClient(): MatrixClient { restoreKeyBackupWithPassphrase: jest.fn(), loadSessionBackupPrivateKeyFromSecretStorage: jest.fn(), storeSessionBackupPrivateKey: jest.fn(), + checkKeyBackupAndEnable: jest.fn().mockResolvedValue(null), getKeyBackupInfo: jest.fn().mockResolvedValue(null), getEncryptionInfoForEvent: jest.fn().mockResolvedValue(null), }), diff --git a/test/test-utils/threads.ts b/test/test-utils/threads.ts index 83313b1b8de..12b0575ba71 100644 --- a/test/test-utils/threads.ts +++ b/test/test-utils/threads.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/utilities.ts b/test/test-utils/utilities.ts index 5285a840b25..e43f3561615 100644 --- a/test/test-utils/utilities.ts +++ b/test/test-utils/utilities.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/test-utils/wrappers.tsx b/test/test-utils/wrappers.tsx index 1e324c9d7d9..8b582ccf00f 100644 --- a/test/test-utils/wrappers.tsx +++ b/test/test-utils/wrappers.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Avatar-test.ts b/test/unit-tests/Avatar-test.ts index 1b3506bc184..c068b8e4652 100644 --- a/test/unit-tests/Avatar-test.ts +++ b/test/unit-tests/Avatar-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/ContentMessages-test.ts b/test/unit-tests/ContentMessages-test.ts index 7e95973423a..67ab5825111 100644 --- a/test/unit-tests/ContentMessages-test.ts +++ b/test/unit-tests/ContentMessages-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/DecryptionFailureTracker-test.ts b/test/unit-tests/DecryptionFailureTracker-test.ts index 898816923fa..adadcc39737 100644 --- a/test/unit-tests/DecryptionFailureTracker-test.ts +++ b/test/unit-tests/DecryptionFailureTracker-test.ts @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/DeviceListener-test.ts b/test/unit-tests/DeviceListener-test.ts index ad7f14e1190..b63896c64dd 100644 --- a/test/unit-tests/DeviceListener-test.ts +++ b/test/unit-tests/DeviceListener-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -352,13 +352,13 @@ describe("DeviceListener", () => { mockCrypto!.getCrossSigningKeyId.mockResolvedValue("abc"); }); - it("shows set up encryption toast when user has a key backup available", async () => { + it("shows set up recovery toast when user has a key backup available", async () => { // non falsy response mockCrypto.getKeyBackupInfo.mockResolvedValue({} as unknown as KeyBackupInfo); await createAndStart(); expect(SetupEncryptionToast.showToast).toHaveBeenCalledWith( - SetupEncryptionToast.Kind.SET_UP_ENCRYPTION, + SetupEncryptionToast.Kind.SET_UP_RECOVERY, ); }); }); diff --git a/test/unit-tests/HtmlUtils-test.tsx b/test/unit-tests/HtmlUtils-test.tsx index a13c04af039..e4fccb185ba 100644 --- a/test/unit-tests/HtmlUtils-test.tsx +++ b/test/unit-tests/HtmlUtils-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Image-test.ts b/test/unit-tests/Image-test.ts index 10285a5371d..149ee0ff26f 100644 --- a/test/unit-tests/Image-test.ts +++ b/test/unit-tests/Image-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/KeyBindingsManager-test.ts b/test/unit-tests/KeyBindingsManager-test.ts index 1d68abd4466..91adfc0effd 100644 --- a/test/unit-tests/KeyBindingsManager-test.ts +++ b/test/unit-tests/KeyBindingsManager-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Clemens Zeidler -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/LegacyCallHandler-test.ts b/test/unit-tests/LegacyCallHandler-test.ts index 476d89a1f0f..1aee2d22317 100644 --- a/test/unit-tests/LegacyCallHandler-test.ts +++ b/test/unit-tests/LegacyCallHandler-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Lifecycle-test.ts b/test/unit-tests/Lifecycle-test.ts index 04c3459bdf6..65dda6fec10 100644 --- a/test/unit-tests/Lifecycle-test.ts +++ b/test/unit-tests/Lifecycle-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Markdown-test.ts b/test/unit-tests/Markdown-test.ts index 623061d182d..4cfb165ea99 100644 --- a/test/unit-tests/Markdown-test.ts +++ b/test/unit-tests/Markdown-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/MatrixClientPeg-test.ts b/test/unit-tests/MatrixClientPeg-test.ts index 46533405744..c46edad55cf 100644 --- a/test/unit-tests/MatrixClientPeg-test.ts +++ b/test/unit-tests/MatrixClientPeg-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/MediaDeviceHandler-test.ts b/test/unit-tests/MediaDeviceHandler-test.ts index e2e154abe10..975a3853db7 100644 --- a/test/unit-tests/MediaDeviceHandler-test.ts +++ b/test/unit-tests/MediaDeviceHandler-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Modal-test.ts b/test/unit-tests/Modal-test.ts index d122f2b8552..d542fa38434 100644 --- a/test/unit-tests/Modal-test.ts +++ b/test/unit-tests/Modal-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Notifier-test.ts b/test/unit-tests/Notifier-test.ts index f94f50724d0..3335b297873 100644 --- a/test/unit-tests/Notifier-test.ts +++ b/test/unit-tests/Notifier-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { mocked, MockedObject } from "jest-mock"; @@ -16,6 +16,7 @@ import { IContent, MatrixEvent, SyncState, + AccountDataEvents, } from "matrix-js-sdk/src/matrix"; import { waitFor } from "jest-matrix-react"; import { CallMembership, MatrixRTCSession } from "matrix-js-sdk/src/matrixrtc"; @@ -69,7 +70,7 @@ describe("Notifier", () => { let MockPlatform: MockedObject; let mockClient: MockedObject; let testRoom: Room; - let accountDataEventKey: string; + let accountDataEventKey: keyof AccountDataEvents; let accountDataStore: Record = {}; let mockSettings: Record = {}; @@ -342,7 +343,7 @@ describe("Notifier", () => { describe("getSoundForRoom", () => { it("should not explode if given invalid url", () => { - jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string) => { + jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string): any => { return { url: { content_uri: "foobar" } }; }); expect(Notifier.getSoundForRoom("!roomId:server")).toBeNull(); diff --git a/test/unit-tests/PosthogAnalytics-test.ts b/test/unit-tests/PosthogAnalytics-test.ts index f754e3a80cc..27552bbba6c 100644 --- a/test/unit-tests/PosthogAnalytics-test.ts +++ b/test/unit-tests/PosthogAnalytics-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/PreferredRoomVersions-test.ts b/test/unit-tests/PreferredRoomVersions-test.ts index 8711494ac39..17d457632d6 100644 --- a/test/unit-tests/PreferredRoomVersions-test.ts +++ b/test/unit-tests/PreferredRoomVersions-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Reply-test.ts b/test/unit-tests/Reply-test.ts index d9e1b02a021..be354632d48 100644 --- a/test/unit-tests/Reply-test.ts +++ b/test/unit-tests/Reply-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/RoomNotifs-test.ts b/test/unit-tests/RoomNotifs-test.ts index 65089eba94c..1452306de66 100644 --- a/test/unit-tests/RoomNotifs-test.ts +++ b/test/unit-tests/RoomNotifs-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Rooms-test.ts b/test/unit-tests/Rooms-test.ts index 45424c6ec2c..32b5513f822 100644 --- a/test/unit-tests/Rooms-test.ts +++ b/test/unit-tests/Rooms-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/ScalarAuthClient-test.ts b/test/unit-tests/ScalarAuthClient-test.ts index 9d117d70af4..bbf29a8652f 100644 --- a/test/unit-tests/ScalarAuthClient-test.ts +++ b/test/unit-tests/ScalarAuthClient-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/SdkConfig-test.ts b/test/unit-tests/SdkConfig-test.ts index 19d0eec9c30..5595a7d5842 100644 --- a/test/unit-tests/SdkConfig-test.ts +++ b/test/unit-tests/SdkConfig-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/SecurityManager-test.ts b/test/unit-tests/SecurityManager-test.ts index 574549d8b24..4575223a50c 100644 --- a/test/unit-tests/SecurityManager-test.ts +++ b/test/unit-tests/SecurityManager-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/SlashCommands-test.tsx b/test/unit-tests/SlashCommands-test.tsx index 9305f0956ec..c2b3da7f2da 100644 --- a/test/unit-tests/SlashCommands-test.tsx +++ b/test/unit-tests/SlashCommands-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/SlidingSyncManager-test.ts b/test/unit-tests/SlidingSyncManager-test.ts index 9929102580b..66f4c48c255 100644 --- a/test/unit-tests/SlidingSyncManager-test.ts +++ b/test/unit-tests/SlidingSyncManager-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -309,7 +309,7 @@ describe("SlidingSyncManager", () => { }); it("uses the legacy `feature_sliding_sync_proxy_url` if it was set", async () => { jest.spyOn(manager, "getProxyFromWellKnown").mockResolvedValue("https://proxy/"); - jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string) => { + jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string): any => { if (name === "feature_sliding_sync_proxy_url") return "legacy-proxy"; }); await manager.setup(client); diff --git a/test/unit-tests/SupportedBrowser-test.ts b/test/unit-tests/SupportedBrowser-test.ts index a116ab1f9fd..d759ac4bd94 100644 --- a/test/unit-tests/SupportedBrowser-test.ts +++ b/test/unit-tests/SupportedBrowser-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Terms-test.tsx b/test/unit-tests/Terms-test.tsx index b6c2564d025..9fc29bde9a9 100644 --- a/test/unit-tests/Terms-test.tsx +++ b/test/unit-tests/Terms-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/TestSdkContext.ts b/test/unit-tests/TestSdkContext.ts index f60b083beff..1a8f9565a81 100644 --- a/test/unit-tests/TestSdkContext.ts +++ b/test/unit-tests/TestSdkContext.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/TextForEvent-test.ts b/test/unit-tests/TextForEvent-test.ts index cdef54a391e..4dfccbb93e9 100644 --- a/test/unit-tests/TextForEvent-test.ts +++ b/test/unit-tests/TextForEvent-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/TimezoneHandler-test.ts b/test/unit-tests/TimezoneHandler-test.ts index 74432129831..be7628712ae 100644 --- a/test/unit-tests/TimezoneHandler-test.ts +++ b/test/unit-tests/TimezoneHandler-test.ts @@ -4,7 +4,7 @@ Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2017 Vector Creations Ltd Copyright 2015, 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/Unread-test.ts b/test/unit-tests/Unread-test.ts index 15d3dab8f5e..9686760ddfe 100644 --- a/test/unit-tests/Unread-test.ts +++ b/test/unit-tests/Unread-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/UserActivity-test.ts b/test/unit-tests/UserActivity-test.ts index 106541b460c..0c3fd1ca498 100644 --- a/test/unit-tests/UserActivity-test.ts +++ b/test/unit-tests/UserActivity-test.ts @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/WorkerManager-test.ts b/test/unit-tests/WorkerManager-test.ts index 9b5dcecc773..f8d85fcda44 100644 --- a/test/unit-tests/WorkerManager-test.ts +++ b/test/unit-tests/WorkerManager-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/accessibility/KeyboardShortcutUtils-test.ts b/test/unit-tests/accessibility/KeyboardShortcutUtils-test.ts index 9361a85d74f..f53d578b678 100644 --- a/test/unit-tests/accessibility/KeyboardShortcutUtils-test.ts +++ b/test/unit-tests/accessibility/KeyboardShortcutUtils-test.ts @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/accessibility/LandmarkNavigation-test.tsx b/test/unit-tests/accessibility/LandmarkNavigation-test.tsx index 77a42fbd8ad..ad160e88663 100644 --- a/test/unit-tests/accessibility/LandmarkNavigation-test.tsx +++ b/test/unit-tests/accessibility/LandmarkNavigation-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/accessibility/RovingTabIndex-test.tsx b/test/unit-tests/accessibility/RovingTabIndex-test.tsx index 520103bca11..e0efaf6b1b1 100644 --- a/test/unit-tests/accessibility/RovingTabIndex-test.tsx +++ b/test/unit-tests/accessibility/RovingTabIndex-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020, 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/actions/handlers/viewUserDeviceSettings-test.ts b/test/unit-tests/actions/handlers/viewUserDeviceSettings-test.ts index eba8e12b0b3..f76c5cee204 100644 --- a/test/unit-tests/actions/handlers/viewUserDeviceSettings-test.ts +++ b/test/unit-tests/actions/handlers/viewUserDeviceSettings-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/async-components/dialogs/security/NewRecoveryMethodDialog-test.tsx b/test/unit-tests/async-components/dialogs/security/NewRecoveryMethodDialog-test.tsx index f6d9a59b510..cca65265823 100644 --- a/test/unit-tests/async-components/dialogs/security/NewRecoveryMethodDialog-test.tsx +++ b/test/unit-tests/async-components/dialogs/security/NewRecoveryMethodDialog-test.tsx @@ -1,7 +1,7 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/async-components/dialogs/security/RecoveryMethodRemovedDialog-test.tsx b/test/unit-tests/async-components/dialogs/security/RecoveryMethodRemovedDialog-test.tsx index e3515244270..ec5e7142867 100644 --- a/test/unit-tests/async-components/dialogs/security/RecoveryMethodRemovedDialog-test.tsx +++ b/test/unit-tests/async-components/dialogs/security/RecoveryMethodRemovedDialog-test.tsx @@ -1,7 +1,7 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/async-components/structures/ErrorView-test.tsx b/test/unit-tests/async-components/structures/ErrorView-test.tsx index 95cc75bcfa7..da4ff9c8e0f 100644 --- a/test/unit-tests/async-components/structures/ErrorView-test.tsx +++ b/test/unit-tests/async-components/structures/ErrorView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/audio/Playback-test.ts b/test/unit-tests/audio/Playback-test.ts index 47b24b494a7..0aeea5c8322 100644 --- a/test/unit-tests/audio/Playback-test.ts +++ b/test/unit-tests/audio/Playback-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/audio/VoiceMessageRecording-test.ts b/test/unit-tests/audio/VoiceMessageRecording-test.ts index f76de288101..8cb1ac3afbd 100644 --- a/test/unit-tests/audio/VoiceMessageRecording-test.ts +++ b/test/unit-tests/audio/VoiceMessageRecording-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/audio/VoiceRecording-test.ts b/test/unit-tests/audio/VoiceRecording-test.ts index 4a9b0115927..eb14b9364af 100644 --- a/test/unit-tests/audio/VoiceRecording-test.ts +++ b/test/unit-tests/audio/VoiceRecording-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/autocomplete/EmojiProvider-test.ts b/test/unit-tests/autocomplete/EmojiProvider-test.ts index c78d25f0bee..81fd832e643 100644 --- a/test/unit-tests/autocomplete/EmojiProvider-test.ts +++ b/test/unit-tests/autocomplete/EmojiProvider-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Ryan Browne -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/autocomplete/QueryMatcher-test.ts b/test/unit-tests/autocomplete/QueryMatcher-test.ts index 9da49b653ff..22ae71004c7 100644 --- a/test/unit-tests/autocomplete/QueryMatcher-test.ts +++ b/test/unit-tests/autocomplete/QueryMatcher-test.ts @@ -1,7 +1,7 @@ /* Copyright 2018-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/autocomplete/RoomProvider-test.ts b/test/unit-tests/autocomplete/RoomProvider-test.ts index e76b256428a..80b92511343 100644 --- a/test/unit-tests/autocomplete/RoomProvider-test.ts +++ b/test/unit-tests/autocomplete/RoomProvider-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/autocomplete/SpaceProvider-test.ts b/test/unit-tests/autocomplete/SpaceProvider-test.ts index 3dd45c48895..789a3bd4a6b 100644 --- a/test/unit-tests/autocomplete/SpaceProvider-test.ts +++ b/test/unit-tests/autocomplete/SpaceProvider-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/AutocompleteInput-test.tsx b/test/unit-tests/components/structures/AutocompleteInput-test.tsx index da03e15adee..d34c521f971 100644 --- a/test/unit-tests/components/structures/AutocompleteInput-test.tsx +++ b/test/unit-tests/components/structures/AutocompleteInput-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/ContextMenu-test.ts b/test/unit-tests/components/structures/ContextMenu-test.ts index 9ce3d41325d..ae9ff3a1abe 100644 --- a/test/unit-tests/components/structures/ContextMenu-test.ts +++ b/test/unit-tests/components/structures/ContextMenu-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/FilePanel-test.tsx b/test/unit-tests/components/structures/FilePanel-test.tsx index 25bdd996768..e81b15d95a9 100644 --- a/test/unit-tests/components/structures/FilePanel-test.tsx +++ b/test/unit-tests/components/structures/FilePanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/LargeLoader-test.tsx b/test/unit-tests/components/structures/LargeLoader-test.tsx index 6de7af6b842..889ec2f50d3 100644 --- a/test/unit-tests/components/structures/LargeLoader-test.tsx +++ b/test/unit-tests/components/structures/LargeLoader-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/LeftPanel-test.tsx b/test/unit-tests/components/structures/LeftPanel-test.tsx index 0c74516c0af..93f014567c8 100644 --- a/test/unit-tests/components/structures/LeftPanel-test.tsx +++ b/test/unit-tests/components/structures/LeftPanel-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/LegacyCallEventGrouper-test.ts b/test/unit-tests/components/structures/LegacyCallEventGrouper-test.ts index 5714505cf21..22fb5d300c5 100644 --- a/test/unit-tests/components/structures/LegacyCallEventGrouper-test.ts +++ b/test/unit-tests/components/structures/LegacyCallEventGrouper-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/LoggedInView-test.tsx b/test/unit-tests/components/structures/LoggedInView-test.tsx index cb667f68c38..b4df9e29263 100644 --- a/test/unit-tests/components/structures/LoggedInView-test.tsx +++ b/test/unit-tests/components/structures/LoggedInView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/MainSplit-test.tsx b/test/unit-tests/components/structures/MainSplit-test.tsx index 6853d9d1f51..1b9501ee27c 100644 --- a/test/unit-tests/components/structures/MainSplit-test.tsx +++ b/test/unit-tests/components/structures/MainSplit-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/MatrixChat-test.tsx b/test/unit-tests/components/structures/MatrixChat-test.tsx index fd17ccf5838..751a670fc0b 100644 --- a/test/unit-tests/components/structures/MatrixChat-test.tsx +++ b/test/unit-tests/components/structures/MatrixChat-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -1003,7 +1003,9 @@ describe("", () => { userHasCrossSigningKeys: jest.fn().mockResolvedValue(false), // This needs to not finish immediately because we need to test the screen appears bootstrapCrossSigning: jest.fn().mockImplementation(() => bootstrapDeferred.promise), + resetKeyBackup: jest.fn(), isEncryptionEnabledInRoom: jest.fn().mockResolvedValue(false), + checkKeyBackupAndEnable: jest.fn().mockResolvedValue(null), }; loginClient.getCrypto.mockReturnValue(mockCrypto as any); }); @@ -1491,7 +1493,7 @@ describe("", () => { }; const enabledMobileRegistration = (): void => { - jest.spyOn(SettingsStore, "getValue").mockImplementation((settingName: string) => { + jest.spyOn(SettingsStore, "getValue").mockImplementation((settingName): any => { if (settingName === "Registration.mobileRegistrationHelper") return true; if (settingName === UIFeature.Registration) return true; }); diff --git a/test/unit-tests/components/structures/MatrixClientContextProvider-test.tsx b/test/unit-tests/components/structures/MatrixClientContextProvider-test.tsx index b8c3949619b..e5ae9d97699 100644 --- a/test/unit-tests/components/structures/MatrixClientContextProvider-test.tsx +++ b/test/unit-tests/components/structures/MatrixClientContextProvider-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/MessagePanel-test.tsx b/test/unit-tests/components/structures/MessagePanel-test.tsx index dbb83da3124..c8818239037 100644 --- a/test/unit-tests/components/structures/MessagePanel-test.tsx +++ b/test/unit-tests/components/structures/MessagePanel-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2021 , 2022 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/PictureInPictureDragger-test.tsx b/test/unit-tests/components/structures/PictureInPictureDragger-test.tsx index 7b2309b6051..6cbf0842a9c 100644 --- a/test/unit-tests/components/structures/PictureInPictureDragger-test.tsx +++ b/test/unit-tests/components/structures/PictureInPictureDragger-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/PipContainer-test.tsx b/test/unit-tests/components/structures/PipContainer-test.tsx index f573b0a0cde..06cad2a290b 100644 --- a/test/unit-tests/components/structures/PipContainer-test.tsx +++ b/test/unit-tests/components/structures/PipContainer-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/ReleaseAnnouncement-test.tsx b/test/unit-tests/components/structures/ReleaseAnnouncement-test.tsx index ff1eff74eb9..c68d755a3a8 100644 --- a/test/unit-tests/components/structures/ReleaseAnnouncement-test.tsx +++ b/test/unit-tests/components/structures/ReleaseAnnouncement-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/structures/RightPanel-test.tsx b/test/unit-tests/components/structures/RightPanel-test.tsx index ad29791ee9f..a7d483df6bc 100644 --- a/test/unit-tests/components/structures/RightPanel-test.tsx +++ b/test/unit-tests/components/structures/RightPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/RoomSearchView-test.tsx b/test/unit-tests/components/structures/RoomSearchView-test.tsx index 72ab58bf4ae..56f19b830eb 100644 --- a/test/unit-tests/components/structures/RoomSearchView-test.tsx +++ b/test/unit-tests/components/structures/RoomSearchView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/RoomStatusBar-test.tsx b/test/unit-tests/components/structures/RoomStatusBar-test.tsx index ae84ac154ee..5d130b0205a 100644 --- a/test/unit-tests/components/structures/RoomStatusBar-test.tsx +++ b/test/unit-tests/components/structures/RoomStatusBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/RoomStatusBarUnsentMessages-test.tsx b/test/unit-tests/components/structures/RoomStatusBarUnsentMessages-test.tsx index 09d374e41e7..d608cb06276 100644 --- a/test/unit-tests/components/structures/RoomStatusBarUnsentMessages-test.tsx +++ b/test/unit-tests/components/structures/RoomStatusBarUnsentMessages-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/RoomView-test.tsx b/test/unit-tests/components/structures/RoomView-test.tsx index 385204c01b3..eabfe0c85ce 100644 --- a/test/unit-tests/components/structures/RoomView-test.tsx +++ b/test/unit-tests/components/structures/RoomView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/SpaceHierarchy-test.tsx b/test/unit-tests/components/structures/SpaceHierarchy-test.tsx index 1d2d913771a..c2b71e304f9 100644 --- a/test/unit-tests/components/structures/SpaceHierarchy-test.tsx +++ b/test/unit-tests/components/structures/SpaceHierarchy-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/SpaceRoomView-test.tsx b/test/unit-tests/components/structures/SpaceRoomView-test.tsx index fb246032834..156f2d1cdbe 100644 --- a/test/unit-tests/components/structures/SpaceRoomView-test.tsx +++ b/test/unit-tests/components/structures/SpaceRoomView-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/TabbedView-test.tsx b/test/unit-tests/components/structures/TabbedView-test.tsx index 5c6c6b4271d..9c30bc443ae 100644 --- a/test/unit-tests/components/structures/TabbedView-test.tsx +++ b/test/unit-tests/components/structures/TabbedView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/ThreadPanel-test.tsx b/test/unit-tests/components/structures/ThreadPanel-test.tsx index 20fc7081032..c58194f0b9c 100644 --- a/test/unit-tests/components/structures/ThreadPanel-test.tsx +++ b/test/unit-tests/components/structures/ThreadPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021-2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/ThreadView-test.tsx b/test/unit-tests/components/structures/ThreadView-test.tsx index ee4afff525b..f67e2f28a35 100644 --- a/test/unit-tests/components/structures/ThreadView-test.tsx +++ b/test/unit-tests/components/structures/ThreadView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/TimelinePanel-test.tsx b/test/unit-tests/components/structures/TimelinePanel-test.tsx index 442ed1c1d28..2e10f74a694 100644 --- a/test/unit-tests/components/structures/TimelinePanel-test.tsx +++ b/test/unit-tests/components/structures/TimelinePanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -303,8 +303,8 @@ describe("TimelinePanel", () => { client.isVersionSupported.mockResolvedValue(true); client.doesServerSupportUnstableFeature.mockResolvedValue(true); - jest.spyOn(SettingsStore, "getValue").mockImplementation((setting: string) => { - if (setting === "sendReadReceipt") return false; + jest.spyOn(SettingsStore, "getValue").mockImplementation((setting: string): any => { + if (setting === "sendReadReceipts") return false; return undefined; }); diff --git a/test/unit-tests/components/structures/UploadBar-test.tsx b/test/unit-tests/components/structures/UploadBar-test.tsx index 6f6c038414c..f9920115301 100644 --- a/test/unit-tests/components/structures/UploadBar-test.tsx +++ b/test/unit-tests/components/structures/UploadBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/UserMenu-test.tsx b/test/unit-tests/components/structures/UserMenu-test.tsx index 907bf664b7f..b6eb1bef5d1 100644 --- a/test/unit-tests/components/structures/UserMenu-test.tsx +++ b/test/unit-tests/components/structures/UserMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -19,9 +19,6 @@ import { TestSdkContext } from "../../TestSdkContext"; import defaultDispatcher from "../../../../src/dispatcher/dispatcher"; import LogoutDialog from "../../../../src/components/views/dialogs/LogoutDialog"; import Modal from "../../../../src/Modal"; -import SettingsStore from "../../../../src/settings/SettingsStore"; -import { Features } from "../../../../src/settings/Settings"; -import { SettingLevel } from "../../../../src/settings/SettingLevel"; import { mockOpenIdConfiguration } from "../../../test-utils/oidc"; import { Action } from "../../../../src/dispatcher/actions"; import { UserTab } from "../../../../src/components/views/dialogs/UserTab"; @@ -137,7 +134,6 @@ describe("", () => { isCrossSigningReady: jest.fn().mockResolvedValue(true), exportSecretsBundle: jest.fn().mockResolvedValue({}), } as unknown as CryptoApi); - await SettingsStore.setValue(Features.OidcNativeFlow, null, SettingLevel.DEVICE, true); const spy = jest.spyOn(defaultDispatcher, "dispatch"); const UserMenu = wrapInSdkContext(UnwrappedUserMenu, sdkContext); diff --git a/test/unit-tests/components/structures/ViewSource-test.tsx b/test/unit-tests/components/structures/ViewSource-test.tsx index 2cc195242fd..0d14e524414 100644 --- a/test/unit-tests/components/structures/ViewSource-test.tsx +++ b/test/unit-tests/components/structures/ViewSource-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/__snapshots__/RoomView-test.tsx.snap b/test/unit-tests/components/structures/__snapshots__/RoomView-test.tsx.snap index 1e0ed2248b0..6e9fb7fa366 100644 --- a/test/unit-tests/components/structures/__snapshots__/RoomView-test.tsx.snap +++ b/test/unit-tests/components/structures/__snapshots__/RoomView-test.tsx.snap @@ -45,113 +45,108 @@ exports[`RoomView for a local room in state CREATING should match the snapshot 1
-
- -
+ + - + - + - + + + +
@@ -263,113 +258,108 @@ exports[`RoomView for a local room in state ERROR should match the snapshot 1`]
-
- -
+ + - + - + - + + + +
@@ -566,113 +556,108 @@ exports[`RoomView for a local room in state NEW should match the snapshot 1`] =
-
- -
+ + - + - + - + + + +
@@ -946,113 +931,108 @@ exports[`RoomView for a local room in state NEW that is encrypted should match t
-
- -
+ + - + - + - + + + +
@@ -1334,113 +1314,108 @@ exports[`RoomView should not display the timeline when the room encryption is lo
-
- -
+ + - + - + - + + + +
@@ -1545,113 +1520,108 @@ exports[`RoomView should not display the timeline when the room encryption is lo
-
- -
+ + - + - + - + + + +
@@ -1929,86 +1899,81 @@ exports[`RoomView video rooms should render joined video room view 1`] = `
-
- -
+ + - + - + + + +
diff --git a/test/unit-tests/components/structures/auth/CompleteSecurity-test.tsx b/test/unit-tests/components/structures/auth/CompleteSecurity-test.tsx index 250decbdfcc..1c9cd97ce21 100644 --- a/test/unit-tests/components/structures/auth/CompleteSecurity-test.tsx +++ b/test/unit-tests/components/structures/auth/CompleteSecurity-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/auth/ForgotPassword-test.tsx b/test/unit-tests/components/structures/auth/ForgotPassword-test.tsx index d57c4c6e776..b55fd2c99c3 100644 --- a/test/unit-tests/components/structures/auth/ForgotPassword-test.tsx +++ b/test/unit-tests/components/structures/auth/ForgotPassword-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/auth/Login-test.tsx b/test/unit-tests/components/structures/auth/Login-test.tsx index 7105de4d223..3b1a85b3e9b 100644 --- a/test/unit-tests/components/structures/auth/Login-test.tsx +++ b/test/unit-tests/components/structures/auth/Login-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2019-2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -19,7 +19,6 @@ import { mkServerConfig, mockPlatformPeg, unmockPlatformPeg } from "../../../../ import Login from "../../../../../src/components/structures/auth/Login"; import BasePlatform from "../../../../../src/BasePlatform"; import SettingsStore from "../../../../../src/settings/SettingsStore"; -import { Features } from "../../../../../src/settings/Settings"; import * as registerClientUtils from "../../../../../src/utils/oidc/registerClient"; import { makeDelegatedAuthConfig } from "../../../../test-utils/oidc"; @@ -371,9 +370,6 @@ describe("Login", function () { const delegatedAuth = makeDelegatedAuthConfig(issuer); beforeEach(() => { jest.spyOn(logger, "error"); - jest.spyOn(SettingsStore, "getValue").mockImplementation( - (settingName) => settingName === Features.OidcNativeFlow, - ); }); afterEach(() => { diff --git a/test/unit-tests/components/structures/auth/LoginSplashView-test.tsx b/test/unit-tests/components/structures/auth/LoginSplashView-test.tsx index 2fcbcbb2b52..17582167303 100644 --- a/test/unit-tests/components/structures/auth/LoginSplashView-test.tsx +++ b/test/unit-tests/components/structures/auth/LoginSplashView-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/structures/auth/Registration-test.tsx b/test/unit-tests/components/structures/auth/Registration-test.tsx index 526008a7e6a..82ac0b666cd 100644 --- a/test/unit-tests/components/structures/auth/Registration-test.tsx +++ b/test/unit-tests/components/structures/auth/Registration-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2019 New Vector Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -22,8 +22,6 @@ import { } from "../../../../test-utils"; import Registration from "../../../../../src/components/structures/auth/Registration"; import { makeDelegatedAuthConfig } from "../../../../test-utils/oidc"; -import SettingsStore from "../../../../../src/settings/SettingsStore"; -import { Features } from "../../../../../src/settings/Settings"; import { startOidcLogin } from "../../../../../src/utils/oidc/authorize"; jest.mock("../../../../../src/utils/oidc/authorize", () => ({ @@ -180,49 +178,29 @@ describe("Registration", function () { fetchMock.get(authConfig.metadata.jwks_uri!, { keys: [] }); }); - describe("when oidc native flow is not enabled in settings", () => { - beforeEach(() => { - jest.spyOn(SettingsStore, "getValue").mockReturnValue(false); - }); + it("should display oidc-native continue button", async () => { + const { container } = getComponent(defaultHsUrl, defaultIsUrl, authConfig); + await waitForElementToBeRemoved(() => screen.queryAllByLabelText("Loading…")); + // no form + expect(container.querySelector("form")).toBeFalsy(); - it("should display user/pass registration form", async () => { - const { container } = getComponent(defaultHsUrl, defaultIsUrl, authConfig); - await waitForElementToBeRemoved(() => screen.queryAllByLabelText("Loading…")); - expect(container.querySelector("form")).toBeTruthy(); - expect(mockClient.loginFlows).toHaveBeenCalled(); - expect(mockClient.registerRequest).toHaveBeenCalled(); - }); + expect(await screen.findByText("Continue")).toBeTruthy(); }); - describe("when oidc native flow is enabled in settings", () => { - beforeEach(() => { - jest.spyOn(SettingsStore, "getValue").mockImplementation((key) => key === Features.OidcNativeFlow); - }); + it("should start OIDC login flow as registration on button click", async () => { + getComponent(defaultHsUrl, defaultIsUrl, authConfig); + await waitForElementToBeRemoved(() => screen.queryAllByLabelText("Loading…")); - it("should display oidc-native continue button", async () => { - const { container } = getComponent(defaultHsUrl, defaultIsUrl, authConfig); - await waitForElementToBeRemoved(() => screen.queryAllByLabelText("Loading…")); - // no form - expect(container.querySelector("form")).toBeFalsy(); - - expect(await screen.findByText("Continue")).toBeTruthy(); - }); + fireEvent.click(await screen.findByText("Continue")); - it("should start OIDC login flow as registration on button click", async () => { - getComponent(defaultHsUrl, defaultIsUrl, authConfig); - await waitForElementToBeRemoved(() => screen.queryAllByLabelText("Loading…")); - - fireEvent.click(await screen.findByText("Continue")); - - expect(startOidcLogin).toHaveBeenCalledWith( - authConfig, - clientId, - defaultHsUrl, - defaultIsUrl, - // isRegistration - true, - ); - }); + expect(startOidcLogin).toHaveBeenCalledWith( + authConfig, + clientId, + defaultHsUrl, + defaultIsUrl, + // isRegistration + true, + ); }); describe("when is mobile registeration", () => { diff --git a/test/unit-tests/components/views/Validation-test.ts b/test/unit-tests/components/views/Validation-test.ts index 381c6620c4d..7682213d667 100644 --- a/test/unit-tests/components/views/Validation-test.ts +++ b/test/unit-tests/components/views/Validation-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/VerificationShowSas-test.tsx b/test/unit-tests/components/views/VerificationShowSas-test.tsx index b720c90d6b5..3e29e2098c9 100644 --- a/test/unit-tests/components/views/VerificationShowSas-test.tsx +++ b/test/unit-tests/components/views/VerificationShowSas-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/audio_messages/RecordingPlayback-test.tsx b/test/unit-tests/components/views/audio_messages/RecordingPlayback-test.tsx index 419357e5c84..6c96aacb8e8 100644 --- a/test/unit-tests/components/views/audio_messages/RecordingPlayback-test.tsx +++ b/test/unit-tests/components/views/audio_messages/RecordingPlayback-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/audio_messages/SeekBar-test.tsx b/test/unit-tests/components/views/audio_messages/SeekBar-test.tsx index 2ea445b499e..95aaa7ada88 100644 --- a/test/unit-tests/components/views/audio_messages/SeekBar-test.tsx +++ b/test/unit-tests/components/views/audio_messages/SeekBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/auth/AuthFooter-test.tsx b/test/unit-tests/components/views/auth/AuthFooter-test.tsx index f8d0d8fd5ea..f92a304299a 100644 --- a/test/unit-tests/components/views/auth/AuthFooter-test.tsx +++ b/test/unit-tests/components/views/auth/AuthFooter-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/auth/AuthHeaderLogo-test.tsx b/test/unit-tests/components/views/auth/AuthHeaderLogo-test.tsx index ce187805e41..706e4d5d396 100644 --- a/test/unit-tests/components/views/auth/AuthHeaderLogo-test.tsx +++ b/test/unit-tests/components/views/auth/AuthHeaderLogo-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/auth/AuthPage-test.tsx b/test/unit-tests/components/views/auth/AuthPage-test.tsx index 836b08f20b8..543342661e4 100644 --- a/test/unit-tests/components/views/auth/AuthPage-test.tsx +++ b/test/unit-tests/components/views/auth/AuthPage-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/auth/CountryDropdown-test.tsx b/test/unit-tests/components/views/auth/CountryDropdown-test.tsx index d443f6db5a4..5f3ee8c9087 100644 --- a/test/unit-tests/components/views/auth/CountryDropdown-test.tsx +++ b/test/unit-tests/components/views/auth/CountryDropdown-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/auth/InteractiveAuthEntryComponents-test.tsx b/test/unit-tests/components/views/auth/InteractiveAuthEntryComponents-test.tsx index ee6375a1f6d..41408edd198 100644 --- a/test/unit-tests/components/views/auth/InteractiveAuthEntryComponents-test.tsx +++ b/test/unit-tests/components/views/auth/InteractiveAuthEntryComponents-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/auth/RegistrationToken-test.tsx b/test/unit-tests/components/views/auth/RegistrationToken-test.tsx index 7a01d5dc334..cf9f8268a03 100644 --- a/test/unit-tests/components/views/auth/RegistrationToken-test.tsx +++ b/test/unit-tests/components/views/auth/RegistrationToken-test.tsx @@ -4,7 +4,7 @@ Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2022 Callum Brown Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/avatars/DecoratedRoomAvatar-test.tsx b/test/unit-tests/components/views/avatars/DecoratedRoomAvatar-test.tsx index 1ef28a887f7..c1c6a2ce982 100644 --- a/test/unit-tests/components/views/avatars/DecoratedRoomAvatar-test.tsx +++ b/test/unit-tests/components/views/avatars/DecoratedRoomAvatar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/avatars/MemberAvatar-test.tsx b/test/unit-tests/components/views/avatars/MemberAvatar-test.tsx index 1c5bf3a44fd..1239d7e5adb 100644 --- a/test/unit-tests/components/views/avatars/MemberAvatar-test.tsx +++ b/test/unit-tests/components/views/avatars/MemberAvatar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/avatars/RoomAvatar-test.tsx b/test/unit-tests/components/views/avatars/RoomAvatar-test.tsx index 2c9db7b0494..e3e8715cfba 100644 --- a/test/unit-tests/components/views/avatars/RoomAvatar-test.tsx +++ b/test/unit-tests/components/views/avatars/RoomAvatar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/avatars/WithPresenceIndicator-test.tsx b/test/unit-tests/components/views/avatars/WithPresenceIndicator-test.tsx index e6a677861d3..f5c26aa7efa 100644 --- a/test/unit-tests/components/views/avatars/WithPresenceIndicator-test.tsx +++ b/test/unit-tests/components/views/avatars/WithPresenceIndicator-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/BeaconListItem-test.tsx b/test/unit-tests/components/views/beacon/BeaconListItem-test.tsx index 406923a6bec..f44a1d72db3 100644 --- a/test/unit-tests/components/views/beacon/BeaconListItem-test.tsx +++ b/test/unit-tests/components/views/beacon/BeaconListItem-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/BeaconMarker-test.tsx b/test/unit-tests/components/views/beacon/BeaconMarker-test.tsx index 9852655e3da..625d61b1c3e 100644 --- a/test/unit-tests/components/views/beacon/BeaconMarker-test.tsx +++ b/test/unit-tests/components/views/beacon/BeaconMarker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/BeaconStatus-test.tsx b/test/unit-tests/components/views/beacon/BeaconStatus-test.tsx index 2cdb91de32f..b5ebce9a076 100644 --- a/test/unit-tests/components/views/beacon/BeaconStatus-test.tsx +++ b/test/unit-tests/components/views/beacon/BeaconStatus-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/BeaconViewDialog-test.tsx b/test/unit-tests/components/views/beacon/BeaconViewDialog-test.tsx index 0ad67a4b9b6..2c879468d61 100644 --- a/test/unit-tests/components/views/beacon/BeaconViewDialog-test.tsx +++ b/test/unit-tests/components/views/beacon/BeaconViewDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/DialogSidebar-test.tsx b/test/unit-tests/components/views/beacon/DialogSidebar-test.tsx index 7ec495e65b2..ca76d6fd59a 100644 --- a/test/unit-tests/components/views/beacon/DialogSidebar-test.tsx +++ b/test/unit-tests/components/views/beacon/DialogSidebar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/LeftPanelLiveShareWarning-test.tsx b/test/unit-tests/components/views/beacon/LeftPanelLiveShareWarning-test.tsx index 03cc6153076..aa83fefb9a9 100644 --- a/test/unit-tests/components/views/beacon/LeftPanelLiveShareWarning-test.tsx +++ b/test/unit-tests/components/views/beacon/LeftPanelLiveShareWarning-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/OwnBeaconStatus-test.tsx b/test/unit-tests/components/views/beacon/OwnBeaconStatus-test.tsx index beaa314a215..055394f582a 100644 --- a/test/unit-tests/components/views/beacon/OwnBeaconStatus-test.tsx +++ b/test/unit-tests/components/views/beacon/OwnBeaconStatus-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/RoomCallBanner-test.tsx b/test/unit-tests/components/views/beacon/RoomCallBanner-test.tsx index 2929b0adfa5..e8fefe05712 100644 --- a/test/unit-tests/components/views/beacon/RoomCallBanner-test.tsx +++ b/test/unit-tests/components/views/beacon/RoomCallBanner-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/ShareLatestLocation-test.tsx b/test/unit-tests/components/views/beacon/ShareLatestLocation-test.tsx index 61160238110..9c4b9da9454 100644 --- a/test/unit-tests/components/views/beacon/ShareLatestLocation-test.tsx +++ b/test/unit-tests/components/views/beacon/ShareLatestLocation-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beacon/StyledLiveBeaconIcon-test.tsx b/test/unit-tests/components/views/beacon/StyledLiveBeaconIcon-test.tsx index f4357bd5d9f..30c2bf5d76d 100644 --- a/test/unit-tests/components/views/beacon/StyledLiveBeaconIcon-test.tsx +++ b/test/unit-tests/components/views/beacon/StyledLiveBeaconIcon-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/beta/BetaCard-test.tsx b/test/unit-tests/components/views/beta/BetaCard-test.tsx index 7d721d14877..42efb1cd348 100644 --- a/test/unit-tests/components/views/beta/BetaCard-test.tsx +++ b/test/unit-tests/components/views/beta/BetaCard-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -14,13 +14,14 @@ import { shouldShowFeedback } from "../../../../../src/utils/Feedback"; import BetaCard from "../../../../../src/components/views/beta/BetaCard"; import SettingsStore from "../../../../../src/settings/SettingsStore"; import { TranslationKey } from "../../../../../src/languageHandler"; +import { FeatureSettingKey } from "../../../../../src/settings/Settings.tsx"; jest.mock("../../../../../src/utils/Feedback"); jest.mock("../../../../../src/settings/SettingsStore"); describe("", () => { describe("Feedback prompt", () => { - const featureId = "featureId"; + const featureId = "featureId" as FeatureSettingKey; beforeEach(() => { mocked(SettingsStore).getBetaInfo.mockReturnValue({ diff --git a/test/unit-tests/components/views/context_menus/ContextMenu-test.tsx b/test/unit-tests/components/views/context_menus/ContextMenu-test.tsx index 75f33e66ddb..bbc4e4d112c 100644 --- a/test/unit-tests/components/views/context_menus/ContextMenu-test.tsx +++ b/test/unit-tests/components/views/context_menus/ContextMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/context_menus/EmbeddedPage-test.tsx b/test/unit-tests/components/views/context_menus/EmbeddedPage-test.tsx index f895e517ba2..17409635830 100644 --- a/test/unit-tests/components/views/context_menus/EmbeddedPage-test.tsx +++ b/test/unit-tests/components/views/context_menus/EmbeddedPage-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/context_menus/MessageContextMenu-test.tsx b/test/unit-tests/components/views/context_menus/MessageContextMenu-test.tsx index 142840fd5a5..1cfc1a03f65 100644 --- a/test/unit-tests/components/views/context_menus/MessageContextMenu-test.tsx +++ b/test/unit-tests/components/views/context_menus/MessageContextMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/context_menus/RoomGeneralContextMenu-test.tsx b/test/unit-tests/components/views/context_menus/RoomGeneralContextMenu-test.tsx index 7ef2062d87d..10aade5b54b 100644 --- a/test/unit-tests/components/views/context_menus/RoomGeneralContextMenu-test.tsx +++ b/test/unit-tests/components/views/context_menus/RoomGeneralContextMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/context_menus/SpaceContextMenu-test.tsx b/test/unit-tests/components/views/context_menus/SpaceContextMenu-test.tsx index 42860e061ec..8b8a565aa48 100644 --- a/test/unit-tests/components/views/context_menus/SpaceContextMenu-test.tsx +++ b/test/unit-tests/components/views/context_menus/SpaceContextMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/context_menus/ThreadListContextMenu-test.tsx b/test/unit-tests/components/views/context_menus/ThreadListContextMenu-test.tsx index c09b4986e85..0ef43d1b801 100644 --- a/test/unit-tests/components/views/context_menus/ThreadListContextMenu-test.tsx +++ b/test/unit-tests/components/views/context_menus/ThreadListContextMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/context_menus/WidgetContextMenu-test.tsx b/test/unit-tests/components/views/context_menus/WidgetContextMenu-test.tsx index 1a830656329..37dd1925258 100644 --- a/test/unit-tests/components/views/context_menus/WidgetContextMenu-test.tsx +++ b/test/unit-tests/components/views/context_menus/WidgetContextMenu-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/AccessSecretStorageDialog-test.tsx b/test/unit-tests/components/views/dialogs/AccessSecretStorageDialog-test.tsx index f5b0b1e0742..cb877d8a11d 100644 --- a/test/unit-tests/components/views/dialogs/AccessSecretStorageDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/AccessSecretStorageDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/AppDownloadDialog-test.tsx b/test/unit-tests/components/views/dialogs/AppDownloadDialog-test.tsx index 4ff9becc1d7..ed329cfcdb8 100644 --- a/test/unit-tests/components/views/dialogs/AppDownloadDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/AppDownloadDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/AskInviteAnywayDialog-test.tsx b/test/unit-tests/components/views/dialogs/AskInviteAnywayDialog-test.tsx index 3c39a6d91ac..713d90a3ef6 100644 --- a/test/unit-tests/components/views/dialogs/AskInviteAnywayDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/AskInviteAnywayDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ChangelogDialog-test.tsx b/test/unit-tests/components/views/dialogs/ChangelogDialog-test.tsx index 547534d207b..fd7b82c5903 100644 --- a/test/unit-tests/components/views/dialogs/ChangelogDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ChangelogDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ConfirmRedactDialog-test.tsx b/test/unit-tests/components/views/dialogs/ConfirmRedactDialog-test.tsx index ed5b545ed5d..9ba84b58e4b 100644 --- a/test/unit-tests/components/views/dialogs/ConfirmRedactDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ConfirmRedactDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ConfirmUserActionDialog-test.tsx b/test/unit-tests/components/views/dialogs/ConfirmUserActionDialog-test.tsx index e1e3c7a2f7b..cea45930802 100644 --- a/test/unit-tests/components/views/dialogs/ConfirmUserActionDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ConfirmUserActionDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/CreateRoomDialog-test.tsx b/test/unit-tests/components/views/dialogs/CreateRoomDialog-test.tsx index 6add6cfc740..ad3dcd58e9a 100644 --- a/test/unit-tests/components/views/dialogs/CreateRoomDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/CreateRoomDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/DevtoolsDialog-test.tsx b/test/unit-tests/components/views/dialogs/DevtoolsDialog-test.tsx index e203fdad54a..89dde08393e 100644 --- a/test/unit-tests/components/views/dialogs/DevtoolsDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/DevtoolsDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ExportDialog-test.tsx b/test/unit-tests/components/views/dialogs/ExportDialog-test.tsx index 9d516759de9..8417ffedb61 100644 --- a/test/unit-tests/components/views/dialogs/ExportDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ExportDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/FeedbackDialog-test.tsx b/test/unit-tests/components/views/dialogs/FeedbackDialog-test.tsx index d7ee119010c..8d54a860315 100644 --- a/test/unit-tests/components/views/dialogs/FeedbackDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/FeedbackDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ForwardDialog-test.tsx b/test/unit-tests/components/views/dialogs/ForwardDialog-test.tsx index 7307417b074..9aa842ee2c3 100644 --- a/test/unit-tests/components/views/dialogs/ForwardDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ForwardDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 Robin Townsend -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/IncomingSasDialog-test.tsx b/test/unit-tests/components/views/dialogs/IncomingSasDialog-test.tsx index d3e7c56d0de..644b4e0f8b5 100644 --- a/test/unit-tests/components/views/dialogs/IncomingSasDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/IncomingSasDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/InteractiveAuthDialog-test.tsx b/test/unit-tests/components/views/dialogs/InteractiveAuthDialog-test.tsx index f99b5bd5b58..7354cde5294 100644 --- a/test/unit-tests/components/views/dialogs/InteractiveAuthDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/InteractiveAuthDialog-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. Copyright 2016 OpenMarket Ltd -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/InviteDialog-test.tsx b/test/unit-tests/components/views/dialogs/InviteDialog-test.tsx index 7ed57a7d70a..0a319cc8455 100644 --- a/test/unit-tests/components/views/dialogs/InviteDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/InviteDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/LogoutDialog-test.tsx b/test/unit-tests/components/views/dialogs/LogoutDialog-test.tsx index 0557e538d0e..6c1315d5ac5 100644 --- a/test/unit-tests/components/views/dialogs/LogoutDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/LogoutDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -42,12 +42,20 @@ describe("LogoutDialog", () => { expect(rendered.container).toMatchSnapshot(); }); - it("shows a regular dialog if backups are working", async () => { + it("shows a regular dialog if backups and recovery are working", async () => { mockCrypto.getActiveSessionBackupVersion.mockResolvedValue("1"); + mockCrypto.isSecretStorageReady.mockResolvedValue(true); const rendered = renderComponent(); await rendered.findByText("Are you sure you want to sign out?"); }); + it("prompts user to set up recovery if backups are enabled but recovery isn't", async () => { + mockCrypto.getActiveSessionBackupVersion.mockResolvedValue("1"); + mockCrypto.isSecretStorageReady.mockResolvedValue(false); + const rendered = renderComponent(); + await rendered.findByText("You'll lose access to your encrypted messages"); + }); + it("Prompts user to connect backup if there is a backup on the server", async () => { mockCrypto.getKeyBackupInfo.mockResolvedValue({} as KeyBackupInfo); const rendered = renderComponent(); diff --git a/test/unit-tests/components/views/dialogs/ManageRestrictedJoinRuleDialog-test.tsx b/test/unit-tests/components/views/dialogs/ManageRestrictedJoinRuleDialog-test.tsx index 73bbe0bd7b6..7321f36b7a4 100644 --- a/test/unit-tests/components/views/dialogs/ManageRestrictedJoinRuleDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ManageRestrictedJoinRuleDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/MessageEditHistoryDialog-test.tsx b/test/unit-tests/components/views/dialogs/MessageEditHistoryDialog-test.tsx index 0b63929c13f..1969867bcd9 100644 --- a/test/unit-tests/components/views/dialogs/MessageEditHistoryDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/MessageEditHistoryDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/RoomSettingsDialog-test.tsx b/test/unit-tests/components/views/dialogs/RoomSettingsDialog-test.tsx index 3ca21500134..73654cfc5fd 100644 --- a/test/unit-tests/components/views/dialogs/RoomSettingsDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/RoomSettingsDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ServerPickerDialog-test.tsx b/test/unit-tests/components/views/dialogs/ServerPickerDialog-test.tsx index c893dba45ed..b4a4b6e756b 100644 --- a/test/unit-tests/components/views/dialogs/ServerPickerDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ServerPickerDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/ShareDialog-test.tsx b/test/unit-tests/components/views/dialogs/ShareDialog-test.tsx index c1d9883b7f6..93beaec711d 100644 --- a/test/unit-tests/components/views/dialogs/ShareDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/ShareDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/SpotlightDialog-test.tsx b/test/unit-tests/components/views/dialogs/SpotlightDialog-test.tsx index 54d21e147b5..776aaff17db 100644 --- a/test/unit-tests/components/views/dialogs/SpotlightDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/SpotlightDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/UnpinAllDialog-test.tsx b/test/unit-tests/components/views/dialogs/UnpinAllDialog-test.tsx index 742bffcb089..9c736446fae 100644 --- a/test/unit-tests/components/views/dialogs/UnpinAllDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/UnpinAllDialog-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/dialogs/UntrustedDeviceDialog-test.tsx b/test/unit-tests/components/views/dialogs/UntrustedDeviceDialog-test.tsx index 3bfafa394bf..f0a3fdfb8be 100644 --- a/test/unit-tests/components/views/dialogs/UntrustedDeviceDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/UntrustedDeviceDialog-test.tsx @@ -1,7 +1,7 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/dialogs/UserSettingsDialog-test.tsx b/test/unit-tests/components/views/dialogs/UserSettingsDialog-test.tsx index 2b71256f0d2..c6c3eeb1427 100644 --- a/test/unit-tests/components/views/dialogs/UserSettingsDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/UserSettingsDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -27,6 +27,7 @@ import { import { UIFeature } from "../../../../../src/settings/UIFeature"; import { SettingLevel } from "../../../../../src/settings/SettingLevel"; import { SdkContextClass } from "../../../../../src/contexts/SDKContext"; +import { FeatureSettingKey } from "../../../../../src/settings/Settings.tsx"; mockPlatformPeg({ supportsSpellCheckSettings: jest.fn().mockReturnValue(false), @@ -111,13 +112,13 @@ describe("", () => { }); it("renders ignored users tab when feature_mjolnir is enabled", () => { - mockSettingsStore.getValue.mockImplementation((settingName): any => settingName === "feature_mjolnir"); + mockSettingsStore.getValue.mockImplementation((settingName) => settingName === "feature_mjolnir"); const { getByTestId } = render(getComponent()); expect(getByTestId(`settings-tab-${UserTab.Mjolnir}`)).toBeTruthy(); }); it("renders voip tab when voip is enabled", () => { - mockSettingsStore.getValue.mockImplementation((settingName): any => settingName === UIFeature.Voip); + mockSettingsStore.getValue.mockImplementation((settingName: any): any => settingName === UIFeature.Voip); const { getByTestId } = render(getComponent()); expect(getByTestId(`settings-tab-${UserTab.Voice}`)).toBeTruthy(); }); @@ -165,7 +166,7 @@ describe("", () => { it("renders with voip tab selected", () => { useMockMediaDevices(); - mockSettingsStore.getValue.mockImplementation((settingName): any => settingName === UIFeature.Voip); + mockSettingsStore.getValue.mockImplementation((settingName: any): any => settingName === UIFeature.Voip); const { container } = render(getComponent({ initialTabId: UserTab.Voice })); expect(getActiveTabLabel(container)).toEqual("Voice & Video"); @@ -212,8 +213,11 @@ describe("", () => { }); it("renders labs tab when some feature is in beta", () => { - mockSettingsStore.getFeatureSettingNames.mockReturnValue(["feature_beta_setting", "feature_just_normal_labs"]); - mockSettingsStore.getBetaInfo.mockImplementation((settingName) => + mockSettingsStore.getFeatureSettingNames.mockReturnValue([ + "feature_beta_setting", + "feature_just_normal_labs", + ] as unknown[] as FeatureSettingKey[]); + mockSettingsStore.getBetaInfo.mockImplementation((settingName: any) => settingName === "feature_beta_setting" ? ({} as any) : undefined, ); const { getByTestId } = render(getComponent()); diff --git a/test/unit-tests/components/views/dialogs/devtools/Event-test.tsx b/test/unit-tests/components/views/dialogs/devtools/Event-test.tsx index 60bf7919129..330d52b0b1c 100644 --- a/test/unit-tests/components/views/dialogs/devtools/Event-test.tsx +++ b/test/unit-tests/components/views/dialogs/devtools/Event-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/devtools/RoomNotifications-test.tsx b/test/unit-tests/components/views/dialogs/devtools/RoomNotifications-test.tsx index 9b600acc3b5..eeaa7dbb1f2 100644 --- a/test/unit-tests/components/views/dialogs/devtools/RoomNotifications-test.tsx +++ b/test/unit-tests/components/views/dialogs/devtools/RoomNotifications-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/security/CreateKeyBackupDialog-test.tsx b/test/unit-tests/components/views/dialogs/security/CreateKeyBackupDialog-test.tsx index 6e0542448b1..b5f965cfa2f 100644 --- a/test/unit-tests/components/views/dialogs/security/CreateKeyBackupDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/security/CreateKeyBackupDialog-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2023 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/dialogs/security/CreateSecretStorageDialog-test.tsx b/test/unit-tests/components/views/dialogs/security/CreateSecretStorageDialog-test.tsx index 814fe8a9543..1da0bc7be8c 100644 --- a/test/unit-tests/components/views/dialogs/security/CreateSecretStorageDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/security/CreateSecretStorageDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/security/ExportE2eKeysDialog-test.tsx b/test/unit-tests/components/views/dialogs/security/ExportE2eKeysDialog-test.tsx index df95482850d..e4dc75062c0 100644 --- a/test/unit-tests/components/views/dialogs/security/ExportE2eKeysDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/security/ExportE2eKeysDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/security/ImportE2eKeysDialog-test.tsx b/test/unit-tests/components/views/dialogs/security/ImportE2eKeysDialog-test.tsx index 57f374c2523..f9dcc177373 100644 --- a/test/unit-tests/components/views/dialogs/security/ImportE2eKeysDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/security/ImportE2eKeysDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/security/RestoreKeyBackupDialog-test.tsx b/test/unit-tests/components/views/dialogs/security/RestoreKeyBackupDialog-test.tsx index c19010a0893..4fc42f58932 100644 --- a/test/unit-tests/components/views/dialogs/security/RestoreKeyBackupDialog-test.tsx +++ b/test/unit-tests/components/views/dialogs/security/RestoreKeyBackupDialog-test.tsx @@ -1,9 +1,8 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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"; diff --git a/test/unit-tests/components/views/dialogs/spotlight/PublicRoomResultDetails-test.tsx b/test/unit-tests/components/views/dialogs/spotlight/PublicRoomResultDetails-test.tsx index db653636072..c5cda731bee 100644 --- a/test/unit-tests/components/views/dialogs/spotlight/PublicRoomResultDetails-test.tsx +++ b/test/unit-tests/components/views/dialogs/spotlight/PublicRoomResultDetails-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/dialogs/spotlight/RoomResultContextMenus-test.tsx b/test/unit-tests/components/views/dialogs/spotlight/RoomResultContextMenus-test.tsx index d7cc2964f99..209ad32727f 100644 --- a/test/unit-tests/components/views/dialogs/spotlight/RoomResultContextMenus-test.tsx +++ b/test/unit-tests/components/views/dialogs/spotlight/RoomResultContextMenus-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/AccessibleButton-test.tsx b/test/unit-tests/components/views/elements/AccessibleButton-test.tsx index 8d501b6ab49..0d30c5734fd 100644 --- a/test/unit-tests/components/views/elements/AccessibleButton-test.tsx +++ b/test/unit-tests/components/views/elements/AccessibleButton-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/AppTile-test.tsx b/test/unit-tests/components/views/elements/AppTile-test.tsx index 12363f56f04..7a2acb3ace4 100644 --- a/test/unit-tests/components/views/elements/AppTile-test.tsx +++ b/test/unit-tests/components/views/elements/AppTile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/DesktopCapturerSourcePicker-test.tsx b/test/unit-tests/components/views/elements/DesktopCapturerSourcePicker-test.tsx index f647dfdaee6..7fc739fafb5 100644 --- a/test/unit-tests/components/views/elements/DesktopCapturerSourcePicker-test.tsx +++ b/test/unit-tests/components/views/elements/DesktopCapturerSourcePicker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/EffectsOverlay-test.tsx b/test/unit-tests/components/views/elements/EffectsOverlay-test.tsx index d17139511c5..e2ccbc87246 100644 --- a/test/unit-tests/components/views/elements/EffectsOverlay-test.tsx +++ b/test/unit-tests/components/views/elements/EffectsOverlay-test.tsx @@ -1,9 +1,8 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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"; diff --git a/test/unit-tests/components/views/elements/EventListSummary-test.tsx b/test/unit-tests/components/views/elements/EventListSummary-test.tsx index 485a69289f2..f1140352b85 100644 --- a/test/unit-tests/components/views/elements/EventListSummary-test.tsx +++ b/test/unit-tests/components/views/elements/EventListSummary-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/ExternalLink-test.tsx b/test/unit-tests/components/views/elements/ExternalLink-test.tsx index bdc1a9e7b3d..012dae5477a 100644 --- a/test/unit-tests/components/views/elements/ExternalLink-test.tsx +++ b/test/unit-tests/components/views/elements/ExternalLink-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/FacePile-test.tsx b/test/unit-tests/components/views/elements/FacePile-test.tsx index b9ff911df11..9ec71f45d8c 100644 --- a/test/unit-tests/components/views/elements/FacePile-test.tsx +++ b/test/unit-tests/components/views/elements/FacePile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/Field-test.tsx b/test/unit-tests/components/views/elements/Field-test.tsx index 95445595871..8db645bf852 100644 --- a/test/unit-tests/components/views/elements/Field-test.tsx +++ b/test/unit-tests/components/views/elements/Field-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/FilterDropdown-test.tsx b/test/unit-tests/components/views/elements/FilterDropdown-test.tsx index a1c30688a59..112d0ed650c 100644 --- a/test/unit-tests/components/views/elements/FilterDropdown-test.tsx +++ b/test/unit-tests/components/views/elements/FilterDropdown-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/FilterTabGroup-test.tsx b/test/unit-tests/components/views/elements/FilterTabGroup-test.tsx index 5067b9b95db..49091d80175 100644 --- a/test/unit-tests/components/views/elements/FilterTabGroup-test.tsx +++ b/test/unit-tests/components/views/elements/FilterTabGroup-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/ImageView-test.tsx b/test/unit-tests/components/views/elements/ImageView-test.tsx index 4a23d847cbf..e9ba7cdd69c 100644 --- a/test/unit-tests/components/views/elements/ImageView-test.tsx +++ b/test/unit-tests/components/views/elements/ImageView-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/elements/InfoTooltip-test.tsx b/test/unit-tests/components/views/elements/InfoTooltip-test.tsx index f4d80e179ee..53b4c696c5b 100644 --- a/test/unit-tests/components/views/elements/InfoTooltip-test.tsx +++ b/test/unit-tests/components/views/elements/InfoTooltip-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/LabelledCheckbox-test.tsx b/test/unit-tests/components/views/elements/LabelledCheckbox-test.tsx index 2877740bf81..6fccc366423 100644 --- a/test/unit-tests/components/views/elements/LabelledCheckbox-test.tsx +++ b/test/unit-tests/components/views/elements/LabelledCheckbox-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/LearnMore-test.tsx b/test/unit-tests/components/views/elements/LearnMore-test.tsx index 00393759d7a..959affc4492 100644 --- a/test/unit-tests/components/views/elements/LearnMore-test.tsx +++ b/test/unit-tests/components/views/elements/LearnMore-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/MiniAvatarUploader-test.tsx b/test/unit-tests/components/views/elements/MiniAvatarUploader-test.tsx index cf6ed6ae624..5b451c44b4e 100644 --- a/test/unit-tests/components/views/elements/MiniAvatarUploader-test.tsx +++ b/test/unit-tests/components/views/elements/MiniAvatarUploader-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/Pill-test.tsx b/test/unit-tests/components/views/elements/Pill-test.tsx index db075b3b6f5..b2ea507790e 100644 --- a/test/unit-tests/components/views/elements/Pill-test.tsx +++ b/test/unit-tests/components/views/elements/Pill-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/PollCreateDialog-test.tsx b/test/unit-tests/components/views/elements/PollCreateDialog-test.tsx index 0ee90969165..cf50181bb8c 100644 --- a/test/unit-tests/components/views/elements/PollCreateDialog-test.tsx +++ b/test/unit-tests/components/views/elements/PollCreateDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/PowerSelector-test.tsx b/test/unit-tests/components/views/elements/PowerSelector-test.tsx index 72fbbaf09f3..ef35cf75a01 100644 --- a/test/unit-tests/components/views/elements/PowerSelector-test.tsx +++ b/test/unit-tests/components/views/elements/PowerSelector-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/ProgressBar-test.tsx b/test/unit-tests/components/views/elements/ProgressBar-test.tsx index 4e95987f136..aedfebef3fc 100644 --- a/test/unit-tests/components/views/elements/ProgressBar-test.tsx +++ b/test/unit-tests/components/views/elements/ProgressBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/QRCode-test.tsx b/test/unit-tests/components/views/elements/QRCode-test.tsx index c53390e610c..ec688b286ba 100644 --- a/test/unit-tests/components/views/elements/QRCode-test.tsx +++ b/test/unit-tests/components/views/elements/QRCode-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/ReplyChain-test.tsx b/test/unit-tests/components/views/elements/ReplyChain-test.tsx index 4eebcf67b90..38f5684eb70 100644 --- a/test/unit-tests/components/views/elements/ReplyChain-test.tsx +++ b/test/unit-tests/components/views/elements/ReplyChain-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/RoomFacePile-test.tsx b/test/unit-tests/components/views/elements/RoomFacePile-test.tsx index 8e934fb7e1c..b21c3afc1bc 100644 --- a/test/unit-tests/components/views/elements/RoomFacePile-test.tsx +++ b/test/unit-tests/components/views/elements/RoomFacePile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/RoomTopic-test.tsx b/test/unit-tests/components/views/elements/RoomTopic-test.tsx index 0fe833fe4e1..47bc39fdd7d 100644 --- a/test/unit-tests/components/views/elements/RoomTopic-test.tsx +++ b/test/unit-tests/components/views/elements/RoomTopic-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/SearchWarning-test.tsx b/test/unit-tests/components/views/elements/SearchWarning-test.tsx index f0b17106854..117870d7e90 100644 --- a/test/unit-tests/components/views/elements/SearchWarning-test.tsx +++ b/test/unit-tests/components/views/elements/SearchWarning-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/SpellCheckLanguagesDropdown-test.tsx b/test/unit-tests/components/views/elements/SpellCheckLanguagesDropdown-test.tsx index e0c4af03922..66f37e2927b 100644 --- a/test/unit-tests/components/views/elements/SpellCheckLanguagesDropdown-test.tsx +++ b/test/unit-tests/components/views/elements/SpellCheckLanguagesDropdown-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/StyledRadioGroup-test.tsx b/test/unit-tests/components/views/elements/StyledRadioGroup-test.tsx index bf6e37b5350..1f8894457cb 100644 --- a/test/unit-tests/components/views/elements/StyledRadioGroup-test.tsx +++ b/test/unit-tests/components/views/elements/StyledRadioGroup-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/elements/SyntaxHighlight-test.tsx b/test/unit-tests/components/views/elements/SyntaxHighlight-test.tsx index ff18022a8ce..5983e7b0f22 100644 --- a/test/unit-tests/components/views/elements/SyntaxHighlight-test.tsx +++ b/test/unit-tests/components/views/elements/SyntaxHighlight-test.tsx @@ -1,8 +1,7 @@ -/* eslint @typescript-eslint/no-unused-vars: ["error", { "varsIgnorePattern": "^_" }] */ // Copyright 2024 New Vector Ltd. // Copyright 2023 The Matrix.org Foundation C.I.C. // -// SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +// 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 { render, waitFor } from "jest-matrix-react"; @@ -24,7 +23,7 @@ describe("", () => { const { container } = render(// Hello, World); await waitFor(() => expect(container.querySelector(`.language-${lang}`)).toBeTruthy()); - const [_lang, opts] = mock.mock.lastCall!; + const [, opts] = mock.mock.lastCall!; expect((opts as unknown as HighlightOptions)["language"]).toBe(lang); }); }); diff --git a/test/unit-tests/components/views/elements/crypto/VerificationQRCode-test.tsx b/test/unit-tests/components/views/elements/crypto/VerificationQRCode-test.tsx index a0db4bfdadc..8e7acf742ec 100644 --- a/test/unit-tests/components/views/elements/crypto/VerificationQRCode-test.tsx +++ b/test/unit-tests/components/views/elements/crypto/VerificationQRCode-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/emojipicker/EmojiPicker-test.tsx b/test/unit-tests/components/views/emojipicker/EmojiPicker-test.tsx index e67334ca61d..a7dcadc9f7f 100644 --- a/test/unit-tests/components/views/emojipicker/EmojiPicker-test.tsx +++ b/test/unit-tests/components/views/emojipicker/EmojiPicker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/LiveDurationDropdown-test.tsx b/test/unit-tests/components/views/location/LiveDurationDropdown-test.tsx index 4f08f635417..a0f9aa984fb 100644 --- a/test/unit-tests/components/views/location/LiveDurationDropdown-test.tsx +++ b/test/unit-tests/components/views/location/LiveDurationDropdown-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/LocationPicker-test.tsx b/test/unit-tests/components/views/location/LocationPicker-test.tsx index 16a40532b04..93acbdf18a9 100644 --- a/test/unit-tests/components/views/location/LocationPicker-test.tsx +++ b/test/unit-tests/components/views/location/LocationPicker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/LocationShareMenu-test.tsx b/test/unit-tests/components/views/location/LocationShareMenu-test.tsx index 84c5e91ea00..7f95b5564d2 100644 --- a/test/unit-tests/components/views/location/LocationShareMenu-test.tsx +++ b/test/unit-tests/components/views/location/LocationShareMenu-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/LocationViewDialog-test.tsx b/test/unit-tests/components/views/location/LocationViewDialog-test.tsx index eb4eb6aa3cb..1993215cf80 100644 --- a/test/unit-tests/components/views/location/LocationViewDialog-test.tsx +++ b/test/unit-tests/components/views/location/LocationViewDialog-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/Map-test.tsx b/test/unit-tests/components/views/location/Map-test.tsx index 7771c6190ae..eb45a536eb6 100644 --- a/test/unit-tests/components/views/location/Map-test.tsx +++ b/test/unit-tests/components/views/location/Map-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/MapError-test.tsx b/test/unit-tests/components/views/location/MapError-test.tsx index 75597a253f4..423a4645dcf 100644 --- a/test/unit-tests/components/views/location/MapError-test.tsx +++ b/test/unit-tests/components/views/location/MapError-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/Marker-test.tsx b/test/unit-tests/components/views/location/Marker-test.tsx index 3b00c37e7f8..e92738e9d46 100644 --- a/test/unit-tests/components/views/location/Marker-test.tsx +++ b/test/unit-tests/components/views/location/Marker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/SmartMarker-test.tsx b/test/unit-tests/components/views/location/SmartMarker-test.tsx index 489d707fbf2..d1280c7a74c 100644 --- a/test/unit-tests/components/views/location/SmartMarker-test.tsx +++ b/test/unit-tests/components/views/location/SmartMarker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/ZoomButtons-test.tsx b/test/unit-tests/components/views/location/ZoomButtons-test.tsx index ee4bdd596b4..7e6fcb2eabe 100644 --- a/test/unit-tests/components/views/location/ZoomButtons-test.tsx +++ b/test/unit-tests/components/views/location/ZoomButtons-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/location/shareLocation-test.ts b/test/unit-tests/components/views/location/shareLocation-test.ts index bdd0f7ab5cf..498df43ee18 100644 --- a/test/unit-tests/components/views/location/shareLocation-test.ts +++ b/test/unit-tests/components/views/location/shareLocation-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/CallEvent-test.tsx b/test/unit-tests/components/views/messages/CallEvent-test.tsx index c76b2ec8266..b092cf84f64 100644 --- a/test/unit-tests/components/views/messages/CallEvent-test.tsx +++ b/test/unit-tests/components/views/messages/CallEvent-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/DateSeparator-test.tsx b/test/unit-tests/components/views/messages/DateSeparator-test.tsx index 9b5b32cfcae..3177fd513da 100644 --- a/test/unit-tests/components/views/messages/DateSeparator-test.tsx +++ b/test/unit-tests/components/views/messages/DateSeparator-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/DecryptionFailureBody-test.tsx b/test/unit-tests/components/views/messages/DecryptionFailureBody-test.tsx index 94495c4349a..5d5e3badc47 100644 --- a/test/unit-tests/components/views/messages/DecryptionFailureBody-test.tsx +++ b/test/unit-tests/components/views/messages/DecryptionFailureBody-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2023 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/messages/DownloadActionButton-test.tsx b/test/unit-tests/components/views/messages/DownloadActionButton-test.tsx index 0d770a30d94..a0cbe2c620c 100644 --- a/test/unit-tests/components/views/messages/DownloadActionButton-test.tsx +++ b/test/unit-tests/components/views/messages/DownloadActionButton-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/EncryptionEvent-test.tsx b/test/unit-tests/components/views/messages/EncryptionEvent-test.tsx index 5788daebc0f..7ea9de76bc8 100644 --- a/test/unit-tests/components/views/messages/EncryptionEvent-test.tsx +++ b/test/unit-tests/components/views/messages/EncryptionEvent-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/JumpToDatePicker-test.tsx b/test/unit-tests/components/views/messages/JumpToDatePicker-test.tsx index 971ec1ac29e..1b5c4dbd211 100644 --- a/test/unit-tests/components/views/messages/JumpToDatePicker-test.tsx +++ b/test/unit-tests/components/views/messages/JumpToDatePicker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/LegacyCallEvent-test.tsx b/test/unit-tests/components/views/messages/LegacyCallEvent-test.tsx index afff6b37303..f345b58a1c1 100644 --- a/test/unit-tests/components/views/messages/LegacyCallEvent-test.tsx +++ b/test/unit-tests/components/views/messages/LegacyCallEvent-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MBeaconBody-test.tsx b/test/unit-tests/components/views/messages/MBeaconBody-test.tsx index b95a6541062..6827d45df06 100644 --- a/test/unit-tests/components/views/messages/MBeaconBody-test.tsx +++ b/test/unit-tests/components/views/messages/MBeaconBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MFileBody-test.tsx b/test/unit-tests/components/views/messages/MFileBody-test.tsx index e124e3a2ffa..6d7f491bbef 100644 --- a/test/unit-tests/components/views/messages/MFileBody-test.tsx +++ b/test/unit-tests/components/views/messages/MFileBody-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MImageBody-test.tsx b/test/unit-tests/components/views/messages/MImageBody-test.tsx index c15f2ea849b..f9ba25d7a96 100644 --- a/test/unit-tests/components/views/messages/MImageBody-test.tsx +++ b/test/unit-tests/components/views/messages/MImageBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MKeyVerificationRequest-test.tsx b/test/unit-tests/components/views/messages/MKeyVerificationRequest-test.tsx index 3ab9a98921b..2f08a8bf936 100644 --- a/test/unit-tests/components/views/messages/MKeyVerificationRequest-test.tsx +++ b/test/unit-tests/components/views/messages/MKeyVerificationRequest-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MLocationBody-test.tsx b/test/unit-tests/components/views/messages/MLocationBody-test.tsx index 17fabc17d16..f0f7bae8a75 100644 --- a/test/unit-tests/components/views/messages/MLocationBody-test.tsx +++ b/test/unit-tests/components/views/messages/MLocationBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MPollBody-test.tsx b/test/unit-tests/components/views/messages/MPollBody-test.tsx index 982fadad204..86849a1069e 100644 --- a/test/unit-tests/components/views/messages/MPollBody-test.tsx +++ b/test/unit-tests/components/views/messages/MPollBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021, 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MPollEndBody-test.tsx b/test/unit-tests/components/views/messages/MPollEndBody-test.tsx index 7bd2ad0a085..cc27c8a4d96 100644 --- a/test/unit-tests/components/views/messages/MPollEndBody-test.tsx +++ b/test/unit-tests/components/views/messages/MPollEndBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MStickerBody-test.tsx b/test/unit-tests/components/views/messages/MStickerBody-test.tsx index e5fe3ef450f..cf94a6d0c8a 100644 --- a/test/unit-tests/components/views/messages/MStickerBody-test.tsx +++ b/test/unit-tests/components/views/messages/MStickerBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MVideoBody-test.tsx b/test/unit-tests/components/views/messages/MVideoBody-test.tsx index 3f4289fea47..e445dc1711e 100644 --- a/test/unit-tests/components/views/messages/MVideoBody-test.tsx +++ b/test/unit-tests/components/views/messages/MVideoBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MessageActionBar-test.tsx b/test/unit-tests/components/views/messages/MessageActionBar-test.tsx index dda5b348a9a..1f28f1d008a 100644 --- a/test/unit-tests/components/views/messages/MessageActionBar-test.tsx +++ b/test/unit-tests/components/views/messages/MessageActionBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MessageEvent-test.tsx b/test/unit-tests/components/views/messages/MessageEvent-test.tsx index 4ff574f752b..63e00134fae 100644 --- a/test/unit-tests/components/views/messages/MessageEvent-test.tsx +++ b/test/unit-tests/components/views/messages/MessageEvent-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/MessageTimestamp-test.tsx b/test/unit-tests/components/views/messages/MessageTimestamp-test.tsx index 8d1348c0dde..8840cad1dba 100644 --- a/test/unit-tests/components/views/messages/MessageTimestamp-test.tsx +++ b/test/unit-tests/components/views/messages/MessageTimestamp-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/PinnedMessageBadge-test.tsx b/test/unit-tests/components/views/messages/PinnedMessageBadge-test.tsx index 824e3385633..884a78fd6c8 100644 --- a/test/unit-tests/components/views/messages/PinnedMessageBadge-test.tsx +++ b/test/unit-tests/components/views/messages/PinnedMessageBadge-test.tsx @@ -1,9 +1,8 @@ /* * Copyright 2024 New Vector Ltd. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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"; diff --git a/test/unit-tests/components/views/messages/ReactionsRowButton-test.tsx b/test/unit-tests/components/views/messages/ReactionsRowButton-test.tsx index c29dcd60a44..d00237e5d20 100644 --- a/test/unit-tests/components/views/messages/ReactionsRowButton-test.tsx +++ b/test/unit-tests/components/views/messages/ReactionsRowButton-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Beeper -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/RoomPredecessorTile-test.tsx b/test/unit-tests/components/views/messages/RoomPredecessorTile-test.tsx index 3ed7d7eb2b2..7b21f89584b 100644 --- a/test/unit-tests/components/views/messages/RoomPredecessorTile-test.tsx +++ b/test/unit-tests/components/views/messages/RoomPredecessorTile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/TextualBody-test.tsx b/test/unit-tests/components/views/messages/TextualBody-test.tsx index 14b94535759..1e526e346b8 100644 --- a/test/unit-tests/components/views/messages/TextualBody-test.tsx +++ b/test/unit-tests/components/views/messages/TextualBody-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2019-2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/messages/shared/MediaProcessingError-test.tsx b/test/unit-tests/components/views/messages/shared/MediaProcessingError-test.tsx index 3767e7f9855..dba0f28fa75 100644 --- a/test/unit-tests/components/views/messages/shared/MediaProcessingError-test.tsx +++ b/test/unit-tests/components/views/messages/shared/MediaProcessingError-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/polls/pollHistory/PollHistory-test.tsx b/test/unit-tests/components/views/polls/pollHistory/PollHistory-test.tsx index 1e0f0a658c6..55dcdda1633 100644 --- a/test/unit-tests/components/views/polls/pollHistory/PollHistory-test.tsx +++ b/test/unit-tests/components/views/polls/pollHistory/PollHistory-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/polls/pollHistory/PollListItem-test.tsx b/test/unit-tests/components/views/polls/pollHistory/PollListItem-test.tsx index 7c4cc6009f4..0bbacf9400b 100644 --- a/test/unit-tests/components/views/polls/pollHistory/PollListItem-test.tsx +++ b/test/unit-tests/components/views/polls/pollHistory/PollListItem-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/polls/pollHistory/PollListItemEnded-test.tsx b/test/unit-tests/components/views/polls/pollHistory/PollListItemEnded-test.tsx index a1d833c2b5b..492a86f679a 100644 --- a/test/unit-tests/components/views/polls/pollHistory/PollListItemEnded-test.tsx +++ b/test/unit-tests/components/views/polls/pollHistory/PollListItemEnded-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/right_panel/BaseCard-test.tsx b/test/unit-tests/components/views/right_panel/BaseCard-test.tsx index 72db04acf3d..3764f534929 100644 --- a/test/unit-tests/components/views/right_panel/BaseCard-test.tsx +++ b/test/unit-tests/components/views/right_panel/BaseCard-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/right_panel/ExtensionsCard-test.tsx b/test/unit-tests/components/views/right_panel/ExtensionsCard-test.tsx index 932d75dd0d1..2b74276f28a 100644 --- a/test/unit-tests/components/views/right_panel/ExtensionsCard-test.tsx +++ b/test/unit-tests/components/views/right_panel/ExtensionsCard-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/right_panel/PinnedMessagesCard-test.tsx b/test/unit-tests/components/views/right_panel/PinnedMessagesCard-test.tsx index a8f7c653f9b..b63b84c7e61 100644 --- a/test/unit-tests/components/views/right_panel/PinnedMessagesCard-test.tsx +++ b/test/unit-tests/components/views/right_panel/PinnedMessagesCard-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/right_panel/RoomSummaryCard-test.tsx b/test/unit-tests/components/views/right_panel/RoomSummaryCard-test.tsx index 80d2609577e..48ba88d88a6 100644 --- a/test/unit-tests/components/views/right_panel/RoomSummaryCard-test.tsx +++ b/test/unit-tests/components/views/right_panel/RoomSummaryCard-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -338,19 +338,18 @@ describe("", () => { }); it("does not show public room label for a DM", async () => { - mockClient.getAccountData.mockImplementation( - (eventType) => - ({ - [EventType.Direct]: new MatrixEvent({ - type: EventType.Direct, - content: { - "@bob:sesame.st": ["some-room-id"], - // this room is a DM with ernie - "@ernie:sesame.st": ["some-other-room-id", room.roomId], - }, - }), - })[eventType], - ); + mockClient.getAccountData.mockImplementation((eventType) => { + if (eventType === EventType.Direct) { + return new MatrixEvent({ + type: EventType.Direct, + content: { + "@bob:sesame.st": ["some-room-id"], + // this room is a DM with ernie + "@ernie:sesame.st": ["some-other-room-id", room.roomId], + }, + }); + } + }); getComponent(); await flushPromises(); diff --git a/test/unit-tests/components/views/right_panel/UserInfo-test.tsx b/test/unit-tests/components/views/right_panel/UserInfo-test.tsx index 172b04a77c7..db7af71c242 100644 --- a/test/unit-tests/components/views/right_panel/UserInfo-test.tsx +++ b/test/unit-tests/components/views/right_panel/UserInfo-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/right_panel/VerificationPanel-test.tsx b/test/unit-tests/components/views/right_panel/VerificationPanel-test.tsx index 2adfc1eeb6c..4d1252ac3ad 100644 --- a/test/unit-tests/components/views/right_panel/VerificationPanel-test.tsx +++ b/test/unit-tests/components/views/right_panel/VerificationPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap b/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap index 5fb1e661158..a4496312f32 100644 --- a/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap +++ b/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap @@ -135,8 +135,9 @@ exports[` has button to edit topic 1`] = ` style="--mx-box-flex: 1;" >

renders the room summary 1`] = ` style="--mx-box-flex: 1;" >

renders the room topic in the summary 1`] = ` style="--mx-box-flex: 1;" >

-SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/MemberTile-test.tsx b/test/unit-tests/components/views/rooms/MemberTile-test.tsx index cf829c2927e..854099319d6 100644 --- a/test/unit-tests/components/views/rooms/MemberTile-test.tsx +++ b/test/unit-tests/components/views/rooms/MemberTile-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2023 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/rooms/MessageComposer-test.tsx b/test/unit-tests/components/views/rooms/MessageComposer-test.tsx index 6849612fee5..895b5f09a77 100644 --- a/test/unit-tests/components/views/rooms/MessageComposer-test.tsx +++ b/test/unit-tests/components/views/rooms/MessageComposer-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,6 +10,7 @@ import * as React from "react"; import { EventType, MatrixEvent, RoomMember, THREAD_RELATION_TYPE } from "matrix-js-sdk/src/matrix"; import { act, fireEvent, render, screen, waitFor } from "jest-matrix-react"; import userEvent from "@testing-library/user-event"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import { clearAllModals, @@ -52,6 +53,8 @@ const expectVoiceMessageRecordingTriggered = (): void => { expect(screen.getByText("No microphone found")).toBeInTheDocument(); }; +beforeAll(initOnce, 10000); + describe("MessageComposer", () => { stubClient(); const cli = createTestClient(); @@ -66,11 +69,13 @@ describe("MessageComposer", () => { // restore settings act(() => { - [ - "MessageComposerInput.showStickersButton", - "MessageComposerInput.showPollsButton", - "feature_wysiwyg_composer", - ].forEach((setting: string): void => { + ( + [ + "MessageComposerInput.showStickersButton", + "MessageComposerInput.showPollsButton", + "feature_wysiwyg_composer", + ] as const + ).forEach((setting): void => { SettingsStore.setValue(setting, null, SettingLevel.DEVICE, SettingsStore.getDefaultValue(setting)); }); }); @@ -188,11 +193,11 @@ describe("MessageComposer", () => { // test button display depending on settings [ { - setting: "MessageComposerInput.showStickersButton", + setting: "MessageComposerInput.showStickersButton" as const, buttonLabel: "Sticker", }, { - setting: "MessageComposerInput.showPollsButton", + setting: "MessageComposerInput.showPollsButton" as const, buttonLabel: "Poll", }, ].forEach(({ setting, buttonLabel }) => { diff --git a/test/unit-tests/components/views/rooms/MessageComposerButtons-test.tsx b/test/unit-tests/components/views/rooms/MessageComposerButtons-test.tsx index c2f56dc968d..fffb852ebfe 100644 --- a/test/unit-tests/components/views/rooms/MessageComposerButtons-test.tsx +++ b/test/unit-tests/components/views/rooms/MessageComposerButtons-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/NewRoomIntro-test.tsx b/test/unit-tests/components/views/rooms/NewRoomIntro-test.tsx index a1cd4526107..a5d598e1b4b 100644 --- a/test/unit-tests/components/views/rooms/NewRoomIntro-test.tsx +++ b/test/unit-tests/components/views/rooms/NewRoomIntro-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2015-2022 The Matrix.org Foundation C.I.C. Copyright 2019 Michael Telatynski <7t3chguy@gmail.com> -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/NotificationBadge/NotificationBadge-test.tsx b/test/unit-tests/components/views/rooms/NotificationBadge/NotificationBadge-test.tsx index e4ff88c2363..bcbb4ab7126 100644 --- a/test/unit-tests/components/views/rooms/NotificationBadge/NotificationBadge-test.tsx +++ b/test/unit-tests/components/views/rooms/NotificationBadge/NotificationBadge-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/NotificationBadge/StatelessNotificationBadge-test.tsx b/test/unit-tests/components/views/rooms/NotificationBadge/StatelessNotificationBadge-test.tsx index 8f3b5879138..4b335cb631e 100644 --- a/test/unit-tests/components/views/rooms/NotificationBadge/StatelessNotificationBadge-test.tsx +++ b/test/unit-tests/components/views/rooms/NotificationBadge/StatelessNotificationBadge-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/NotificationBadge/UnreadNotificationBadge-test.tsx b/test/unit-tests/components/views/rooms/NotificationBadge/UnreadNotificationBadge-test.tsx index 5b2dddc73ae..6628889dc7e 100644 --- a/test/unit-tests/components/views/rooms/NotificationBadge/UnreadNotificationBadge-test.tsx +++ b/test/unit-tests/components/views/rooms/NotificationBadge/UnreadNotificationBadge-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/PinnedEventTile-test.tsx b/test/unit-tests/components/views/rooms/PinnedEventTile-test.tsx index a0725a50075..9031d238a82 100644 --- a/test/unit-tests/components/views/rooms/PinnedEventTile-test.tsx +++ b/test/unit-tests/components/views/rooms/PinnedEventTile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/PinnedMessageBanner-test.tsx b/test/unit-tests/components/views/rooms/PinnedMessageBanner-test.tsx index 8717762e0da..66e0e32f386 100644 --- a/test/unit-tests/components/views/rooms/PinnedMessageBanner-test.tsx +++ b/test/unit-tests/components/views/rooms/PinnedMessageBanner-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/rooms/PresenceLabel-test.tsx b/test/unit-tests/components/views/rooms/PresenceLabel-test.tsx index 88a0e346bff..a8af6f768c8 100644 --- a/test/unit-tests/components/views/rooms/PresenceLabel-test.tsx +++ b/test/unit-tests/components/views/rooms/PresenceLabel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/ReadReceiptGroup-test.tsx b/test/unit-tests/components/views/rooms/ReadReceiptGroup-test.tsx index ff89aa69422..ec9884591f0 100644 --- a/test/unit-tests/components/views/rooms/ReadReceiptGroup-test.tsx +++ b/test/unit-tests/components/views/rooms/ReadReceiptGroup-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,6 +10,7 @@ import React, { ComponentProps } from "react"; import { render, screen, waitFor } from "jest-matrix-react"; import { RoomMember } from "matrix-js-sdk/src/matrix"; import userEvent from "@testing-library/user-event"; +import { mocked } from "jest-mock"; import { determineAvatarPosition, @@ -20,6 +21,9 @@ import * as languageHandler from "../../../../../src/languageHandler"; import { stubClient } from "../../../../test-utils"; import dispatcher from "../../../../../src/dispatcher/dispatcher"; import { Action } from "../../../../../src/dispatcher/actions"; +import { formatDate } from "../../../../../src/DateUtils"; + +jest.mock("../../../../../src/DateUtils"); describe("ReadReceiptGroup", () => { describe("TooltipText", () => { @@ -87,6 +91,10 @@ describe("ReadReceiptGroup", () => { describe("", () => { stubClient(); + // We pick a fixed time but this can still vary depending on the locale + // the tests are run in. We are not testing date formatting here, so stub it out. + mocked(formatDate).mockReturnValue("==MOCK FORMATTED DATE=="); + const ROOM_ID = "roomId"; const USER_ID = "@alice:example.org"; diff --git a/test/unit-tests/components/views/rooms/ReadReceiptMarker-test.tsx b/test/unit-tests/components/views/rooms/ReadReceiptMarker-test.tsx index f7dc843f395..68b7bc9799f 100644 --- a/test/unit-tests/components/views/rooms/ReadReceiptMarker-test.tsx +++ b/test/unit-tests/components/views/rooms/ReadReceiptMarker-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomHeader-test.tsx b/test/unit-tests/components/views/rooms/RoomHeader-test.tsx index 8b9b0d98481..633100eec4c 100644 --- a/test/unit-tests/components/views/rooms/RoomHeader-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomHeader-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -176,7 +176,7 @@ describe("RoomHeader", () => { }); it("opens the notifications panel", async () => { - jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string) => { + jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string): any => { if (name === "feature_notifications") return true; }); diff --git a/test/unit-tests/components/views/rooms/RoomHeader/CallGuestLinkButton-test.tsx b/test/unit-tests/components/views/rooms/RoomHeader/CallGuestLinkButton-test.tsx index c77114fa96e..a89058d7301 100644 --- a/test/unit-tests/components/views/rooms/RoomHeader/CallGuestLinkButton-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomHeader/CallGuestLinkButton-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomHeader/VideoRoomChatButton-test.tsx b/test/unit-tests/components/views/rooms/RoomHeader/VideoRoomChatButton-test.tsx index c080fa8659f..9a1466a2617 100644 --- a/test/unit-tests/components/views/rooms/RoomHeader/VideoRoomChatButton-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomHeader/VideoRoomChatButton-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomKnocksBar-test.tsx b/test/unit-tests/components/views/rooms/RoomKnocksBar-test.tsx index 54a9177fbf5..4f1ad97bca1 100644 --- a/test/unit-tests/components/views/rooms/RoomKnocksBar-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomKnocksBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Nordeck IT + Consulting GmbH -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomList-test.tsx b/test/unit-tests/components/views/rooms/RoomList-test.tsx index cb824bcdf9a..4ee68deb216 100644 --- a/test/unit-tests/components/views/rooms/RoomList-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomList-test.tsx @@ -3,7 +3,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 Mikhail Aheichyk Copyright 2023 Nordeck IT + Consulting GmbH. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomListHeader-test.tsx b/test/unit-tests/components/views/rooms/RoomListHeader-test.tsx index c44c3a501bf..ade08b8f956 100644 --- a/test/unit-tests/components/views/rooms/RoomListHeader-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomListHeader-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomPreviewBar-test.tsx b/test/unit-tests/components/views/rooms/RoomPreviewBar-test.tsx index fb531bb3bd9..112b088709c 100644 --- a/test/unit-tests/components/views/rooms/RoomPreviewBar-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomPreviewBar-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomPreviewCard-test.tsx b/test/unit-tests/components/views/rooms/RoomPreviewCard-test.tsx index 274c79002c7..b80ce4bb5b6 100644 --- a/test/unit-tests/components/views/rooms/RoomPreviewCard-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomPreviewCard-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -44,7 +44,7 @@ describe("RoomPreviewCard", () => { client.reEmitter.reEmit(room, [RoomStateEvent.Events]); enabledFeatures = []; - jest.spyOn(SettingsStore, "getValue").mockImplementation((settingName) => + jest.spyOn(SettingsStore, "getValue").mockImplementation((settingName): any => enabledFeatures.includes(settingName) ? true : undefined, ); }); diff --git a/test/unit-tests/components/views/rooms/RoomSearchAuxPanel-test.tsx b/test/unit-tests/components/views/rooms/RoomSearchAuxPanel-test.tsx index 0c720bf40ea..6a46be23534 100644 --- a/test/unit-tests/components/views/rooms/RoomSearchAuxPanel-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomSearchAuxPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/RoomTile-test.tsx b/test/unit-tests/components/views/rooms/RoomTile-test.tsx index c14c699699f..e5169d91214 100644 --- a/test/unit-tests/components/views/rooms/RoomTile-test.tsx +++ b/test/unit-tests/components/views/rooms/RoomTile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/SearchResultTile-test.tsx b/test/unit-tests/components/views/rooms/SearchResultTile-test.tsx index 358c36d2fba..c12aa15eaeb 100644 --- a/test/unit-tests/components/views/rooms/SearchResultTile-test.tsx +++ b/test/unit-tests/components/views/rooms/SearchResultTile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/SendMessageComposer-test.tsx b/test/unit-tests/components/views/rooms/SendMessageComposer-test.tsx index c372819ce21..ad0ec2afdf2 100644 --- a/test/unit-tests/components/views/rooms/SendMessageComposer-test.tsx +++ b/test/unit-tests/components/views/rooms/SendMessageComposer-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/ThirdPartyMemberInfo-test.tsx b/test/unit-tests/components/views/rooms/ThirdPartyMemberInfo-test.tsx index 958ebf7d1fe..60541cd30a2 100644 --- a/test/unit-tests/components/views/rooms/ThirdPartyMemberInfo-test.tsx +++ b/test/unit-tests/components/views/rooms/ThirdPartyMemberInfo-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/UserIdentityWarning-test.tsx b/test/unit-tests/components/views/rooms/UserIdentityWarning-test.tsx index 9a70a887688..eef25269125 100644 --- a/test/unit-tests/components/views/rooms/UserIdentityWarning-test.tsx +++ b/test/unit-tests/components/views/rooms/UserIdentityWarning-test.tsx @@ -1,7 +1,7 @@ /* Copyright 2024 New Vector Ltd. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/VoiceRecordComposerTile-test.tsx b/test/unit-tests/components/views/rooms/VoiceRecordComposerTile-test.tsx index a8d4b022a6b..06d314b5884 100644 --- a/test/unit-tests/components/views/rooms/VoiceRecordComposerTile-test.tsx +++ b/test/unit-tests/components/views/rooms/VoiceRecordComposerTile-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/__snapshots__/ReadReceiptGroup-test.tsx.snap b/test/unit-tests/components/views/rooms/__snapshots__/ReadReceiptGroup-test.tsx.snap index b0ba944a66a..60e8f844af7 100644 --- a/test/unit-tests/components/views/rooms/__snapshots__/ReadReceiptGroup-test.tsx.snap +++ b/test/unit-tests/components/views/rooms/__snapshots__/ReadReceiptGroup-test.tsx.snap @@ -84,7 +84,7 @@ exports[`ReadReceiptGroup should render 1`] = `

- Wed, 15 May, 0:00 + ==MOCK FORMATTED DATE==

diff --git a/test/unit-tests/components/views/rooms/__snapshots__/RoomHeader-test.tsx.snap b/test/unit-tests/components/views/rooms/__snapshots__/RoomHeader-test.tsx.snap index a6f412a3acb..3db3fb67fbf 100644 --- a/test/unit-tests/components/views/rooms/__snapshots__/RoomHeader-test.tsx.snap +++ b/test/unit-tests/components/views/rooms/__snapshots__/RoomHeader-test.tsx.snap @@ -42,111 +42,106 @@ exports[`RoomHeader dm does not show the face pile for DMs 1`] = ` -
- -
+ + - + - + - + + + + `; diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/EditWysiwygComposer-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/EditWysiwygComposer-test.tsx index a76c7a8b909..05c7bc4608f 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/EditWysiwygComposer-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/EditWysiwygComposer-test.tsx @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 "@testing-library/jest-dom"; import React from "react"; import { fireEvent, render, screen, waitFor } from "jest-matrix-react"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import MatrixClientContext from "../../../../../../src/contexts/MatrixClientContext"; import defaultDispatcher from "../../../../../../src/dispatcher/dispatcher"; @@ -24,6 +25,8 @@ import * as EmojiButton from "../../../../../../src/components/views/rooms/Emoji import { createMocks } from "./utils"; import { ScopedRoomContextProvider } from "../../../../../../src/contexts/ScopedRoomContext.tsx"; +beforeAll(initOnce, 10000); + describe("EditWysiwygComposer", () => { afterEach(() => { jest.resetAllMocks(); @@ -46,17 +49,6 @@ describe("EditWysiwygComposer", () => { ); }; - beforeAll( - async () => { - // Load the dynamic import - const component = customRender(false); - await component.findByRole("textbox"); - component.unmount(); - }, - // it can take a while to load the wasm - 20000, - ); - it("Should not render the component when not ready", async () => { // When const { rerender } = customRender(false); diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx index 89415448b7b..4cba44bd9c0 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 "@testing-library/jest-dom"; import React from "react"; import { act, fireEvent, render, screen, waitFor } from "jest-matrix-react"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import MatrixClientContext from "../../../../../../src/contexts/MatrixClientContext"; import defaultDispatcher from "../../../../../../src/dispatcher/dispatcher"; @@ -31,6 +32,8 @@ jest.mock("../../../../../../src/components/views/rooms/EmojiButton", () => ({ }, })); +beforeAll(initOnce, 10000); + describe("SendWysiwygComposer", () => { afterEach(() => { jest.resetAllMocks(); diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/FormattingButtons-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/FormattingButtons-test.tsx index f8e6427ea53..e0f9e2d8b4b 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/FormattingButtons-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/FormattingButtons-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx index b1f86990e1d..f864f27de29 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/PlainTextComposer-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/PlainTextComposer-test.tsx index ae37afe8608..371960c8007 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/PlainTextComposer-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/PlainTextComposer-test.tsx @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { act, render, screen } from "jest-matrix-react"; import userEvent from "@testing-library/user-event"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import { PlainTextComposer } from "../../../../../../../src/components/views/rooms/wysiwyg_composer/components/PlainTextComposer"; import * as mockUseSettingsHook from "../../../../../../../src/hooks/useSettings"; @@ -16,6 +17,8 @@ import * as mockKeyboard from "../../../../../../../src/Keyboard"; import { createMocks } from "../utils"; import { ScopedRoomContextProvider } from "../../../../../../../src/contexts/ScopedRoomContext.tsx"; +beforeAll(initOnce, 10000); + describe("PlainTextComposer", () => { const customRender = ( onChange = (_content: string): void => void 0, diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete-test.tsx index b0f4bbb5bd1..5886b501b43 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete-test.tsx @@ -2,13 +2,14 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 "@testing-library/jest-dom"; import React, { createRef } from "react"; import { render, screen, waitFor } from "jest-matrix-react"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import MatrixClientContext from "../../../../../../../src/contexts/MatrixClientContext"; import { WysiwygAutocomplete } from "../../../../../../../src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete"; @@ -42,6 +43,8 @@ const constructMockProvider = (data: ICompletion[]) => renderCompletions: jest.fn().mockImplementation((components) => components), }) as unknown as AutocompleteProvider; +beforeAll(initOnce, 10000); + describe("WysiwygAutocomplete", () => { beforeAll(() => { // scrollTo not implemented in JSDOM diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygComposer-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygComposer-test.tsx index c3c480eb828..e86488660e9 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygComposer-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/components/WysiwygComposer-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -10,6 +10,7 @@ import "@testing-library/jest-dom"; import React from "react"; import { act, fireEvent, render, screen, waitFor } from "jest-matrix-react"; import userEvent from "@testing-library/user-event"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import { WysiwygComposer } from "../../../../../../../src/components/views/rooms/wysiwyg_composer/components/WysiwygComposer"; import SettingsStore from "../../../../../../../src/settings/SettingsStore"; @@ -33,6 +34,8 @@ import * as Permalinks from "../../../../../../../src/utils/permalinks/Permalink import { PermalinkParts } from "../../../../../../../src/utils/permalinks/PermalinkConstructor"; import { ScopedRoomContextProvider } from "../../../../../../../src/contexts/ScopedRoomContext.tsx"; +beforeAll(initOnce, 10000); + describe("WysiwygComposer", () => { const customRender = (onChange = jest.fn(), onSend = jest.fn(), disabled = false, initialContent?: string) => { const { mockClient, defaultRoomContext } = createMocks(); @@ -419,7 +422,7 @@ describe("WysiwygComposer", () => { const onChange = jest.fn(); const onSend = jest.fn(); beforeEach(async () => { - jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string) => { + jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string): any => { if (name === "MessageComposerInput.autoReplaceEmoji") return true; }); customRender(onChange, onSend); @@ -455,7 +458,7 @@ describe("WysiwygComposer", () => { const onChange = jest.fn(); const onSend = jest.fn(); beforeEach(async () => { - jest.spyOn(SettingsStore, "getValue").mockImplementation((name: string) => { + jest.spyOn(SettingsStore, "getValue").mockImplementation((name): any => { if (name === "MessageComposerInput.ctrlEnterToSend") return true; }); customRender(onChange, onSend); diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners-test.tsx index 20dc961cf4e..05645978772 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/usePlainTextListeners-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/useSuggestion-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/useSuggestion-test.tsx index 92243751042..06762b2c8f9 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/useSuggestion-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/useSuggestion-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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"; diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/utils-test.tsx b/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/utils-test.tsx index eac4d6d35e2..c691756200c 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/utils-test.tsx +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/hooks/utils-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { IEventRelation, MatrixEvent } from "matrix-js-sdk/src/matrix"; diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils.ts b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils.ts index d367e3488a9..cb72c90fb3b 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils.ts +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/autocomplete-test.ts b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/autocomplete-test.ts index 8efc4df203f..292314f87f9 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/autocomplete-test.ts +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/autocomplete-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/createMessageContent-test.ts b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/createMessageContent-test.ts index 74852e9c6d7..80b3adcb139 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/createMessageContent-test.ts +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/createMessageContent-test.ts @@ -2,10 +2,12 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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 { MsgType } from "matrix-js-sdk/src/matrix"; +import { initOnce } from "@vector-im/matrix-wysiwyg"; import { filterConsole, mkEvent } from "../../../../../../test-utils"; import { @@ -13,6 +15,8 @@ import { EMOTE_PREFIX, } from "../../../../../../../src/components/views/rooms/wysiwyg_composer/utils/createMessageContent"; +beforeAll(initOnce, 10000); + describe("createMessageContent", () => { const message = "hello world"; @@ -25,13 +29,6 @@ describe("createMessageContent", () => { "WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm`", ); - beforeAll(async () => { - // Warm up by creating the component once, with a long timeout. - // This prevents tests timing out because of the time spent loading - // the WASM component. - await createMessageContent(message, true, {}); - }, 10000); - it("Should create html message", async () => { // When const content = await createMessageContent(message, true, {}); diff --git a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/message-test.ts b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/message-test.ts index 43320b04445..867947bef91 100644 --- a/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/message-test.ts +++ b/test/unit-tests/components/views/rooms/wysiwyg_composer/utils/message-test.ts @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/AddPrivilegedUsers-test.tsx b/test/unit-tests/components/views/settings/AddPrivilegedUsers-test.tsx index 68638597871..875b5d9f193 100644 --- a/test/unit-tests/components/views/settings/AddPrivilegedUsers-test.tsx +++ b/test/unit-tests/components/views/settings/AddPrivilegedUsers-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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"; diff --git a/test/unit-tests/components/views/settings/AddRemoveThreepids-test.tsx b/test/unit-tests/components/views/settings/AddRemoveThreepids-test.tsx index a285a98f3b6..dacd2c52a5a 100644 --- a/test/unit-tests/components/views/settings/AddRemoveThreepids-test.tsx +++ b/test/unit-tests/components/views/settings/AddRemoveThreepids-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/AvatarSetting-test.tsx b/test/unit-tests/components/views/settings/AvatarSetting-test.tsx index 1b88c416bc5..f6c4181b210 100644 --- a/test/unit-tests/components/views/settings/AvatarSetting-test.tsx +++ b/test/unit-tests/components/views/settings/AvatarSetting-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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"; diff --git a/test/unit-tests/components/views/settings/ChangePassword-test.tsx b/test/unit-tests/components/views/settings/ChangePassword-test.tsx index 75211647e09..6b4c58f1d13 100644 --- a/test/unit-tests/components/views/settings/ChangePassword-test.tsx +++ b/test/unit-tests/components/views/settings/ChangePassword-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/CrossSigningPanel-test.tsx b/test/unit-tests/components/views/settings/CrossSigningPanel-test.tsx index daa3570ed27..ee7c6425878 100644 --- a/test/unit-tests/components/views/settings/CrossSigningPanel-test.tsx +++ b/test/unit-tests/components/views/settings/CrossSigningPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/CryptographyPanel-test.tsx b/test/unit-tests/components/views/settings/CryptographyPanel-test.tsx index 03b469fe76e..3d368734731 100644 --- a/test/unit-tests/components/views/settings/CryptographyPanel-test.tsx +++ b/test/unit-tests/components/views/settings/CryptographyPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/EventIndexPanel-test.tsx b/test/unit-tests/components/views/settings/EventIndexPanel-test.tsx index 9859cc27fa5..c154a3c2a81 100644 --- a/test/unit-tests/components/views/settings/EventIndexPanel-test.tsx +++ b/test/unit-tests/components/views/settings/EventIndexPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/FontScalingPanel-test.tsx b/test/unit-tests/components/views/settings/FontScalingPanel-test.tsx index 4e2ed5451ab..fc8de6d631e 100644 --- a/test/unit-tests/components/views/settings/FontScalingPanel-test.tsx +++ b/test/unit-tests/components/views/settings/FontScalingPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/JoinRuleSettings-test.tsx b/test/unit-tests/components/views/settings/JoinRuleSettings-test.tsx index 36dd664ac69..87cef697868 100644 --- a/test/unit-tests/components/views/settings/JoinRuleSettings-test.tsx +++ b/test/unit-tests/components/views/settings/JoinRuleSettings-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/KeyboardShortcut-test.tsx b/test/unit-tests/components/views/settings/KeyboardShortcut-test.tsx index 2bebd04cc8a..edcc915e4d4 100644 --- a/test/unit-tests/components/views/settings/KeyboardShortcut-test.tsx +++ b/test/unit-tests/components/views/settings/KeyboardShortcut-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/LayoutSwitcher-test.tsx b/test/unit-tests/components/views/settings/LayoutSwitcher-test.tsx index 9148f7ceb1e..5d3f1709e29 100644 --- a/test/unit-tests/components/views/settings/LayoutSwitcher-test.tsx +++ b/test/unit-tests/components/views/settings/LayoutSwitcher-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ @@ -57,7 +57,7 @@ describe("", () => { act(() => screen.getByRole("radio", { name: "Message bubbles" }).click()); expect(screen.getByRole("radio", { name: "Message bubbles" })).toBeChecked(); - await waitFor(() => expect(SettingsStore.getValue("layout")).toBe(Layout.Bubble)); + await waitFor(() => expect(SettingsStore.getValue("layout")).toBe(Layout.Bubble)); }); }); @@ -77,7 +77,7 @@ describe("", () => { await renderLayoutSwitcher(); act(() => screen.getByRole("checkbox", { name: "Show compact text and messages" }).click()); - await waitFor(() => expect(SettingsStore.getValue("useCompactLayout")).toBe(true)); + await waitFor(() => expect(SettingsStore.getValue("useCompactLayout")).toBe(true)); }); it("should be disabled when the modern layout is not enabled", async () => { diff --git a/test/unit-tests/components/views/settings/Notifications-test.tsx b/test/unit-tests/components/views/settings/Notifications-test.tsx index e3d97169010..c4b893920df 100644 --- a/test/unit-tests/components/views/settings/Notifications-test.tsx +++ b/test/unit-tests/components/views/settings/Notifications-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2022, 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/PowerLevelSelector-test.tsx b/test/unit-tests/components/views/settings/PowerLevelSelector-test.tsx index 052898debb8..d94587f0f38 100644 --- a/test/unit-tests/components/views/settings/PowerLevelSelector-test.tsx +++ b/test/unit-tests/components/views/settings/PowerLevelSelector-test.tsx @@ -2,7 +2,7 @@ * Copyright 2024 New Vector Ltd. * Copyright 2024 The Matrix.org Foundation C.I.C. * - * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only + * 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. */ diff --git a/test/unit-tests/components/views/settings/SecureBackupPanel-test.tsx b/test/unit-tests/components/views/settings/SecureBackupPanel-test.tsx index 63490bf9150..78d59c07f17 100644 --- a/test/unit-tests/components/views/settings/SecureBackupPanel-test.tsx +++ b/test/unit-tests/components/views/settings/SecureBackupPanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/SetIntegrationManager-test.tsx b/test/unit-tests/components/views/settings/SetIntegrationManager-test.tsx index 5c77e88d932..bab908c75e7 100644 --- a/test/unit-tests/components/views/settings/SetIntegrationManager-test.tsx +++ b/test/unit-tests/components/views/settings/SetIntegrationManager-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ @@ -11,7 +11,6 @@ import { fireEvent, render, screen, waitFor, within } from "jest-matrix-react"; import { logger } from "matrix-js-sdk/src/logger"; import MatrixClientContext from "../../../../../src/contexts/MatrixClientContext"; -import { SDKContext, SdkContextClass } from "../../../../../src/contexts/SDKContext"; import SettingsStore from "../../../../../src/settings/SettingsStore"; import { UIFeature } from "../../../../../src/settings/UIFeature"; import { @@ -35,13 +34,9 @@ describe("SetIntegrationManager", () => { deleteThreePid: jest.fn(), }); - let stores!: SdkContextClass; - const getComponent = () => ( - - - + ); diff --git a/test/unit-tests/components/views/settings/SettingsFieldset-test.tsx b/test/unit-tests/components/views/settings/SettingsFieldset-test.tsx index 3049a1fb328..6e9242f06e5 100644 --- a/test/unit-tests/components/views/settings/SettingsFieldset-test.tsx +++ b/test/unit-tests/components/views/settings/SettingsFieldset-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/ThemeChoicePanel-test.tsx b/test/unit-tests/components/views/settings/ThemeChoicePanel-test.tsx index 2eafcc7ada2..354fd44b9df 100644 --- a/test/unit-tests/components/views/settings/ThemeChoicePanel-test.tsx +++ b/test/unit-tests/components/views/settings/ThemeChoicePanel-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/UserProfileSettings-test.tsx b/test/unit-tests/components/views/settings/UserProfileSettings-test.tsx index 98b321a26dc..0c80cd6f5d0 100644 --- a/test/unit-tests/components/views/settings/UserProfileSettings-test.tsx +++ b/test/unit-tests/components/views/settings/UserProfileSettings-test.tsx @@ -2,7 +2,7 @@ Copyright 2024 New Vector Ltd. Copyright 2024 The Matrix.org Foundation C.I.C. -SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only +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. */ diff --git a/test/unit-tests/components/views/settings/__snapshots__/LayoutSwitcher-test.tsx.snap b/test/unit-tests/components/views/settings/__snapshots__/LayoutSwitcher-test.tsx.snap index fcf3406620a..2aa08adb943 100644 --- a/test/unit-tests/components/views/settings/__snapshots__/LayoutSwitcher-test.tsx.snap +++ b/test/unit-tests/components/views/settings/__snapshots__/LayoutSwitcher-test.tsx.snap @@ -19,14 +19,14 @@ exports[` should render 1`] = ` class="mx_SettingsSubsection_content mx_SettingsSubsection_content_newUi" >