Add A-New-Search-Experience label for automation to Delight board and to add Z-Labs label.
This label is currently down as A-Spotlight-Search, but I will rename it.
* Require creation of config.json
Change the language from "If desired" to "Configure" to ensure people do not miss this step, as skipping this step will show the error "Invalid configuration: no default server specified."
* Update README.md
Rollback unintentioned bullet point `3` change
This is the same system as the customisations override, however deliberately using a different JSON file to avoid conflicts.
Forks would be expected to use the customisations file, not the components file, to override/add components.
We no longer have implicit imports which would have called this path, so manually call it. We have to disable lint as it doesn't like us doing this, but we only end up with a single entry point.
* Document voice rooms labs flag
Signed-off-by: Robin Townsend <robin@robin.town>
* Add join and mute handlers to Jitsi wrapper
Signed-off-by: Robin Townsend <robin@robin.town>
* Document voice rooms labs flag
Signed-off-by: Robin Townsend <robin@robin.town>
* Mark voice rooms as in development
Signed-off-by: Robin Townsend <robin@robin.town>
* ack at the end of widget event handlers
Signed-off-by: Robin Townsend <robin@robin.town>
* Move acks back before suspend points
Signed-off-by: Robin Townsend <robin@robin.town>
Remove the hash event listener before reloading the page, as the reload was being swallowed by our router.
Along the way, refactor out routing logic form app.tsx to avoid causing a circular import.
* add componentvisibility to customisation md
Signed-off-by: Kerry Archibald <kerrya@element.io>
* few more words
Signed-off-by: Kerry Archibald <kerrya@element.io>
* Add X-Needs-Product issues to product board
* Add product PRs to product board
* Add UISI issues to crypto team board
* Rename labelled and unlabelled triage files because they don't always
move issues
* Documentation for extensible events labs flag
* Fix git protocol usage
Prevents this:
```
+ git clone git://github.com/matrix-org/matrix-js-sdk.git matrix-js-sdk --branch develop --depth 1
Cloning into 'matrix-js-sdk'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
```
Prevents this:
```
+ git clone git://github.com/matrix-org/matrix-js-sdk.git matrix-js-sdk --branch develop --depth 1
Cloning into 'matrix-js-sdk'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
```
- Remove automation for v1 board as v2 board is now in use
- Update naming for the workflow because there's only one board now
- Add Z-IA issues to Delight workboard
* Centralise version scripts and fix Docker version
* Refactor generation of a git-hash-based version into get-version-from-git
* Refactor normalization of versions (stripping leading v) into normalize-version.sh
* Call get-version-from-git from ci_package.sh, call normalize-version from package.sh
* Refactor docker-write-version.sh into docker-package.sh, which both writes the
version file and invokes yarn build passing VERSION
* Normalize the version received from the server
* Centralise version scripts and fix Docker version
* Refactor generation of a git-hash-based version into get-version-from-git
* Refactor normalization of versions (stripping leading v) into normalize-version.sh
* Call get-version-from-git from ci_package.sh, call normalize-version from package.sh
* Refactor docker-write-version.sh into docker-package.sh, which both writes the
version file and invokes yarn build passing VERSION
* Normalize the version received from the server
We need to strip the leading v from the local app version in pollForUpdate to ensure it compares correctly the version from the /version request indicating what the latest available version is. Previously, we only stripped the leading in getAppVersion which is used in some other places but not to decide whether an update is available.
- Fix filtering for Design issues
- Split out spaces jobs for new and old boards, so they don't
depend on each other
- Remove voice message job for the old board
- Rename Priority bugs workflow to be shorter
- Improve naming for jobs so they're easier to read in the GitHub
Actions page
* Fetch version from VERSION set during build
* When polling for new versions, compare to VERSION set during build
* Strip leading v from version, matching package.sh
Docs say to use curly brackets, internet says that can break
multiline conditionals.
Trying to fix the if statement applying only to the first step in the job and
the second step ignoring the conditional.
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
Voice-Messages are moving to org-level beta board so add automation to
send issues there (will remove old board automation after the move).
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
Move high priority issues which have an E2EE label to the crypto team
org level old style project board.
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
This could fix the obscure "#ERROR# HttpError: Validation Failed" that
we're getting in failed actions.
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
* Revert "Revert "Update minification and sourcemap settings on CI builds for sentry (#19583)" (#19601)"
This reverts commit 516e38c82d.
* Disable minification in CI as it exceeds memory limits for poor buildkite
With previous settings, our JS files for develop are so large that sentry's webserver rejects the upload.
* re-enable minification to reduce the size of the files
* update the CI sourcemap setting from eval-source-map to source-map to move the embedded source out of the .js payload and into .js.map files
Merge issues-to-projects and triage-needs-info into one under a new name
as they have the same trigger.
Add automation to move ex-needs info issues to triaged when labels are
updated.
Fixes#18523
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
All incoming issues labelled with A-E2EE* and A-*spaces* labels should go to appropriate teams, and not to P1 in the web app team project.
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
Fixes https://github.com/vector-im/element-web/issues/19485
The variable should be set when it needs to by CI, but in every other environment it's not important. Simply setting it to *something* makes EnvironmentPlugin happy. We print a warning just in case people expect it to be set, and use a clear value in case the environment variable doesn't get properly set.
This was completely unnecessary: react-sdk includes appropriate CSS
for highlight.js in its themes. This was actually causing some of
those values to be overridden with silly ones that made text invisible
on the dark theme.
Fixes https://github.com/vector-im/element-web/issues/19476
This was completely unnecessary: react-sdk includes appropriate CSS
for highlight.js in its themes. This was actually causing some of
those values to be overridden with silly ones that made text invisible
on the dark theme.
Fixes https://github.com/vector-im/element-web/issues/19476
* Deprecate `sso_immediate_redirect` and add welcome-page only option
The old `sso_immediate_redirect` option is kept in code for backwards compatibility, but is replaced by `sso_redirect_options.immediate`, where a new `on_welcome_page` option is also introduced to only target entry points to the app.
The path matching is a bit brittle, but still ideal in the sense of not showing UI while the app realizes it needs to redirect.
The new welcome page-only option is fully intended to avoid breaking permalinks and such while still redirecting when needed. In future, other options might be added here to further tune the experience.
* Add note about guests
Feedback received asking to merge templates so they take up less space
and are quicker for developers to fill.
Signed-off-by: Ekaterina Gerasimova <ekaterinag@element.io>
The key must match the theme name, otherwise the getThemesImports() function
will exit with an error.
Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
Automatically move all bugs with the right label combinations onto the Priority bugs column on the Web App Team's board.
Signed-off-by: Ekaterina Gerasimova <kittykat3756@gmail.com>
Replace the old issue template with two new issue forms to help guide
contributors through the issue creation
Signed-off-by: Ekaterina Gerasimova <kittykat3756@gmail.com>
Add "prevalence" labels to use as a guideline for how often issues crop up.
Combine prevalence and severity to indicate correspondence to how defects
should be prioritised by the team.
E.g if you click a link to room/#foo:bar?via=baz we'll redirect to room/#foo:bar and now hitting back takes you back to the ?via=baz and means you have to hit back twice without this change
This described in https://github.com/vector-im/element-web/issues/17330#issuecomment-842530812, this should prevent the newly introduced version of `html-webpack-plugin` from minifying `.html` files, like e.g. `index.html`, `jitsi.html`, et cetera …
Quoting @jryans via: https://github.com/vector-im/element-web/issues/17330#issuecomment-842415694
> The content of the `index.html` file is not a supported API surface, so it might change at any time.
>
> This document minification was not done on purpose, but instead it happened as a side effect of upgrading. We would happily accept a PR to fix this, but it is also not a priority for the core team.
Could please someone test and, hopefully, accept this change back to not minifying the `.html` files?
While it sounds like a useful warning at first, it turns out the warnings it
prints are ones we're unlike to ever act on, such as adding percentages and
pixels, which seem fine to have. This resets to default behaviour, which leaves
the warning off.
With the approach in https://github.com/vector-im/element-web/pull/16969,
Webpack seems to sometimes do what we want, sometimes not... I haven't quite
worked out why. Perhaps there's some conflict or race in Webpack's defaults...?
This new approach seems to work as expected when running
`./scripts/ci_package.sh`, which matches what development deployments are doing.
When running Nightly build we want to benefit from the fast runtime that React production offers and get rid of the runtime overhead that comes with development.
We are setting NODE_ENV and not "webpack.mode" to not loose sourcemaps and have minified sources in that environment
This is similar to the desktopBuilds config option.
The mobile setup guide and static incompatible browser pages are not touched by these options given they are static assets and easily replaced.
name:Bug report for the Element desktop app (not in a browser)
description:File a bug report if you are using the desktop Element application.
labels:[T-Defect]
body:
- type:markdown
attributes:
value:|
Thanks for taking the time to fill out this bug report!
Please report security issues by email to security@matrix.org
- type:textarea
id:reproduction-steps
attributes:
label:Steps to reproduce
description:Please attach screenshots, videos or logs if you can.
placeholder:Tell us what you see!
value:|
1. Where are you starting? What can you see?
2. What do you click?
3. More steps…
validations:
required:true
- type:textarea
id:result
attributes:
label:Outcome
placeholder:Tell us what went wrong
value:|
#### What did you expect?
#### What happened instead?
validations:
required:true
- type:input
id:os
attributes:
label:Operating system
placeholder:Windows, macOS, Ubuntu, Arch Linux…
validations:
required:false
- type:input
id:version
attributes:
label:Application version
description:You can find the version information in Settings -> Help & About.
placeholder:e.g. Element version 1.7.34, olm version 3.2.3
validations:
required:false
- type:input
id:source
attributes:
label:How did you install the app?
description:Where did you install the app from? Please give a link or a description.
placeholder:e.g. From https://element.io/get-started
validations:
required:false
- type:input
id:homeserver
attributes:
label:Homeserver
description:|
Which server is your account registered on? If it is a local or non-public homeserver, please tell us what is the homeserver implementation (ex: Synapse/Dendrite/etc.) and the version.
placeholder:e.g. matrix.org or Synapse 1.50.0rc1
validations:
required:false
- type:dropdown
id:rageshake
attributes:
label:Will you send logs?
description:|
Did you know that you can send a /rageshake command from your application to submit logs for this issue? Trigger the defect, then type `/rageshake` into the message input area followed by a description of the problem and send the command. You will be able to add a link to this defect report and submit anonymous logs to the developers.
description:You can find the version information in Settings -> Help & About.
placeholder:e.g. Element version 1.7.34, olm version 3.2.3
validations:
required:false
- type:input
id:homeserver
attributes:
label:Homeserver
description:|
Which server is your account registered on? If it is a local or non-public homeserver, please tell us what is the homeserver implementation (ex: Synapse/Dendrite/etc.) and the version.
placeholder:e.g. matrix.org or Synapse 1.50.0rc1
validations:
required:false
- type:dropdown
id:rageshake
attributes:
label:Will you send logs?
description:|
Did you know that you can send a /rageshake command from the web application to submit logs for this issue? Trigger the defect, then type `/rageshake` into the message input area followed by a description of the problem and send the command. You will be able to add a link to this defect report and submit anonymous logs to the developers.
Configure the app by copying `config.sample.json` to `config.json` and
modifying it. See the [configuration docs](docs/config.md) for details.
Finally, build and start Element itself:
```bash
yarn link matrix-js-sdk
yarn link matrix-react-sdk
yarn install
yarn start
```
Wait a few seconds for the initial build to finish; you should see something like:
```
Hash: b0af76309dd56d7275c8
Version: webpack 1.12.14
Time: 14533ms
Asset Size Chunks Chunk Names
bundle.js 4.2 MB 0 [emitted] main
bundle.css 91.5 kB 0 [emitted] main
bundle.js.map 5.29 MB 0 [emitted] main
bundle.css.map 116 kB 0 [emitted] main
+ 1013 hidden modules
[element-js] <s> [webpack.Progress] 100%
[element-js]
[element-js] ℹ 「wdm」: 1840 modules
[element-js] ℹ 「wdm」: Compiled successfully.
```
Remember, the command will not terminate since it runs the web server
and rebuilds source files when they change. This development server also
disables caching, so do NOT use it in production.
Configure the app by copying `config.sample.json` to `config.json` and
modifying it. See the [configuration docs](docs/config.md) for details.
Open http://127.0.0.1:8080/ in your browser to see your newly built Element.
Open <http://127.0.0.1:8080/> in your browser to see your newly built Element.
**Note**: The build script uses inotify by default on Linux to monitor directories
for changes. If the inotify limits are too low your build will fail silently or with
@@ -346,9 +365,6 @@ ___
When you make changes to `matrix-react-sdk` or `matrix-js-sdk` they should be
automatically picked up by webpack and built.
If you add or remove any components from the Element skin, you will need to rebuild
the skin's index by running, `yarn reskindex`.
If any of these steps error with, `file table overflow`, you are probably on a mac
which has a very low limit on max open files. Run `ulimit -Sn 1024` and try again.
You'll need to do this in each new terminal you open before building Element.
@@ -357,24 +373,15 @@ Running the tests
-----------------
There are a number of application-level tests in the `tests` directory; these
are designed to run in a browser instance under the control of
[karma](https://karma-runner.github.io). To run them:
are designed to run with Jestand JSDOM. To run them
* Make sure you have Chrome installed (a recent version, like 59)
* Make sure you have `matrix-js-sdk` and `matrix-react-sdk` installed and
built, as above
* `yarn test`
The above will run the tests under Chrome in a `headless` mode.
You can also tell karma to run the tests in a loop (every time the source
changes), in an instance of Chrome on your desktop, with `yarn
test-multi`. This also gives you the option of running the tests in 'debug'
mode, which is useful for stepping through the tests in the developer tools.
```
yarn test
```
### End-to-End tests
See [matrix-react-sdk](https://github.com/matrix-org/matrix-react-sdk/#end-to-end-tests) how to run the end-to-end tests.
See [matrix-react-sdk](https://github.com/matrix-org/matrix-react-sdk/#end-to-end-tests) for how to run the end-to-end tests.
Translations
============
@@ -388,76 +395,6 @@ For a developer guide, see the [translating dev doc](docs/translating-dev.md).
Triaging issues
===============
We strive to completely cover all applicable issues with these core labels:
Issues are triaged by community members and the Web App Team, following the [triage process](https://github.com/vector-im/element-meta/wiki/Triage-process).
You can configure the app by copying `config.sample.json` to
`config.json` and customising it:
You can configure the app by copying `config.sample.json` to`config.json` and customising it. The possible options are
described here. If you run into issues, please visit [#element-web:matrix.org](https://matrix.to/#/#element-web:matrix.org)
on Matrix.
For a good example, see https://develop.element.io/config.json.
For a good example of a production-tuned config, see https://app.element.io/config.json
1.`default_server_config` sets the default homeserver and identity server URL for
Element to use. The object is the same as returned by [https://<server_name>/.well-known/matrix/client](https://matrix.org/docs/spec/client_server/latest.html#get-well-known-matrix-client),
with added support for a `server_name` under the `m.homeserver` section to display
a custom homeserver name. Alternatively, the config can contain a `default_server_name`
instead which is where Element will go to get that same object, although this option is
deprecated - see the `.well-known` link above for more information on using this option.
Note that the `default_server_name` is used to get a complete server configuration
whereas the `server_name` in the `default_server_config` is for display purposes only.
* *Note*: The URLs can also be individually specified as `default_hs_url` and
`default_is_url`, however these are deprecated. They are maintained for backwards
compatibility with older configurations. `default_is_url` is respected only
if `default_hs_url` is used.
* Element will fail to load if a mix of `default_server_config`, `default_server_name`, or
`default_hs_url` is specified. When multiple sources are specified, it is unclear
which should take priority and therefore the application cannot continue.
* As of Element 1.4.0, identity servers are optional. See [Identity servers](#identity-servers) below.
1.`features`: Lookup of optional features that may be force-enabled (`true`) or force-disabled (`false`).
When features are not listed here, their defaults will be used, and users can turn them on/off if `showLabsSettings`
allows them to. The available optional experimental features vary from release to release and are
[documented](labs.md). The feature flag process is [documented](feature-flags.md) as well.
1.`showLabsSettings`: Shows the "labs" tab of user settings. Useful to allow users to turn on experimental features
they might not otherwise have access to.
1.`brand`: String to pass to your homeserver when configuring email notifications, to let the
homeserver know what email template to use when talking to you.
1.`branding`: Configures various branding and logo details, such as:
1.`welcomeBackgroundUrl`: An image to use as a wallpaper outside the app
during authentication flows. If an array is passed, an image is chosen randomly for each visit.
1.`authHeaderLogoUrl`: An logo image that is shown in the header during
authentication flows
1.`authFooterLinks`: a list of links to show in the authentication page footer:
If you would like to include a custom message when someone is reporting an event, set the following Markdown-capable field:
```json
{
"report_event": {
"admin_message_md": "Please be sure to review our [terms of service](https://example.org/terms) before reporting a message."
}
}
```
To add additional "terms and conditions" links throughout the app, use the following template:
```json
{
"terms_and_conditions_links": [
{ "text": "Code of conduct", "url": "https://example.org/code-of-conduct" }
]
}
```
## Analytics
Analytics are currently possible with two systems: `posthog` (preferred) and <del>`piwik`</del> (matomo; deprecated). When
these configuration options are not present, analytics are deemed impossible and the user won't be asked to opt-in to the
system.
To configure [Posthog](https://posthog.com/), add the following under `posthog` in your config:
1. `api_host`: The hostname of the posthog server.
2. `project_api_key`: The API key from posthog.
To configure Piwik (***DEPRECATED***), add the following under `piwik` in your config:
1. `url`: The URL of the piwik server.
2. `site_id`: The site ID to use.
3. `policy_url`: URL to the analytics collection policy.
4. `whitelisted_hs_urls`: A list of homeserver client-server URLs to *not* redact from analytics.
Additionally, you may set `"piwik": false` to disable piwik configuration too. An `analytics_owner` can also be specified in your
config to replace the company name used in dialogs talking about analytics - this defaults to `brand`, and is useful when the
provider of analytics is different from the provider of the Element instance.
## Server hosting links
If you would like to encourage matrix.org users to sign up for a service like [Element Matrix Services](https://element.io/matrix-services/server-hosting),
the following configuration options can be set. Note that if the options are missing from the configuration then the hosting prompts
will not be shown to the user.
1. `hosting_signup_link`: Optional URL to link the user to when talking about "Upgrading your account". Will contain a query parameter
of `utm_campaign` to denote which link the user clicked on within the app. Only ever applies to matrix.org users specifically.
2. `host_signup`: Optional configuration for an account importer to your hosting platform. The API surface of this is not documented
at the moment, but can be configured with the following subproperties:
1. `brand`: The brand name to use.
2. `url`: The iframe URL for the importer.
3. `domains`: The homeserver domains to show the importer to.
4. `cookie_policy_url`: The URL to the cookie policy for the importer.
5. `privacy_policy_url`: The URL to the privacy policy for the importer.
6. `terms_of_service_url`: The URL to the terms of service for the importer.
If you're looking to mirror a setup from our production/development environments, the following config should be used:
4. `latex_maths_delims`: An optional setting to override the default delimiters used for maths parsing. See https://github.com/matrix-org/matrix-react-sdk/pull/5939 for details. Only used when `feature_latex_maths` is enabled.
If we add more customisation modules in the future, we'll likely improve these
steps to remove the need for build changes like the above.
By isolating customisations to their own module, this approach should remove the
chance of merge conflicts when updating your fork, and thus simplify ongoing
maintenance.
**Note**: The project deliberately does not exclude `customisations.json` from Git.
This is to ensure that in shared projects it's possible to have a common config. By
default, Element Web does *not* ship with this file to prevent conflicts.
### Custom components
Maintainers can use the above system to override components if they wish. Maintenance and API surface compatibility are
left as a responsibility for the project - the layering in Element Web (including the react-sdk) do not make guarantees
that properties/state machines won't change.
### Component visibility customisation
UI for some actions can be hidden via the ComponentVisibility customisation:
- inviting users to rooms and spaces,
- creating rooms,
- creating spaces,
To customise visibility create a customisation module from [ComponentVisibility](https://github.com/matrix-org/matrix-react-sdk/blob/master/src/customisations/ComponentVisibility.ts) following the instructions above.
`shouldShowComponent` determines whether the active MatrixClient user should be able to use
the given UI component. When `shouldShowComponent` returns falsy all UI components for that feature will be hidden.
If shown, the user might still not be able to use the
component depending on their contextual permissions. For example, invite options
might be shown to the user, but they won't have permission to invite users to
the current room: the button will appear disabled.
For example, to only allow users who meet a certain condition to create spaces:
@@ -4,10 +4,10 @@ Element uses [Jitsi](https://jitsi.org/) for conference calls, which provides op
self-hosting your own server and supports most major platforms.
1:1 calls, or calls between you and one other person, do not use Jitsi. Instead, those
calls work directly between clients or via TURN servers configured on the respective
calls work directly between clients or via TURN servers configured on the respective
homeservers.
There's a number of ways to start a Jitsi call: the easiest way is to click on the
There's a number of ways to start a Jitsi call: the easiest way is to click on the
voice or video buttons near the message composer in a room with more than 2 people. This
will add a Jitsi widget which allows anyone in the room to join.
@@ -16,6 +16,10 @@ provide their own approaches for adding Jitsi widgets.
## Configuring Element to use your self-hosted Jitsi server
You can host your own Jitsi server to use with Element. It's usually advisable to use a recent
version of Jitsi. In particular, versions older than around 6826 will cause problems with
Element 1.9.10 or newer.
Element will use the Jitsi server that is embedded in the widget, even if it is not the
one you configured. This is because conference calls must be held on a single Jitsi
server and cannot be split over multiple servers.
@@ -30,17 +34,17 @@ to your [config](./config.md) the following:
}
```
The default is `jitsi.riot.im` (a free service offered by Element), and the demo site for
Jitsi uses `meet.jit.si` (also free).
Element's default is `meet.element.io` (a free service offered by Element). `meet.jit.si`
is an instance hosted by Jitsi themselves and is also free to use.
Once you've applied the config change, refresh Element and press the call button. This
should start a new conference on your Jitsi server.
should start a new conference on your Jitsi server.
**Note**: The widget URL will point to a `jitsi.html` page hosted by Element. The Jitsi
domain will appear later in the URL as a configuration parameter.
**Hint**: If you want everyone on your homeserver to use the same Jitsi server by
default, and you are using element-web 1.6 or newer, set the following on your homeserver's
default, and you are using element-web 1.6 or newer, set the following on your homeserver's
`/.well-known/matrix/client` config:
```json
{
@@ -55,19 +59,12 @@ default, and you are using element-web 1.6 or newer, set the following on your h
Element Android (1.0.5+) supports custom Jitsi domains, similar to Element Web above.
1:1 calls, or calls between you and one other person, do not use Jitsi. Instead, those
calls work directly between clients or via TURN servers configured on the respective
calls work directly between clients or via TURN servers configured on the respective
homeservers.
For rooms with more than 2 joined members, when creating a Jitsi conference via call/video buttons of the toolbar (not via integration manager), Element Android will create a widget using the [wrapper](https://github.com/vector-im/element-web/blob/develop/docs/jitsi-dev.md) hosted on `app.element.io`.
The domain used is the one specified by the `/.well-known/matrix/client` endpoint, and if not present it uses the fallback defined in `config.xml` (jitsi.riot.im)
The domain used is the one specified by the `/.well-known/matrix/client` endpoint, and if not present it uses the fallback defined in `config.json` (meet.element.io)
For active Jitsi widgets in the room, a native Jitsi widget UI is created and points to the instance specified in the `domain` key of the widget content data.
Element Android manages allowed native widgets permissions a bit differently than web widgets (as the data shared are different and never shared with the widget URL). For Jitsi widgets, permissions are requested only once per domain (consent saved in account data).
## Element iOS
Currently the Element mobile apps do not support custom Jitsi servers and will instead
use the default `jitsi.riot.im` server. When users on the mobile apps join the call,
they will be joining a different conference which has the same name, but not the same
participants. This is a known bug and which needs to be fixed.
@@ -7,39 +7,38 @@ to `Settings->Labs`. This list is non-exhaustive and subject to change, chat in
**Be warned! Labs features are not finalised, they may be fragile, they may change, they may be
dropped. Ask in the room if you are unclear about any details here.**
## Matrix Spaces [MSC1772](https://github.com/matrix-org/matrix-doc/pull/1772) support (`feature_spaces`)
## Submit Abuse Report to Moderators [MSC3215](https://github.com/matrix-org/matrix-doc/pull/3215) support (`feature_report_to_moderators`)
Enables showing, using, creating, and managing spaces. Create Spaces from the all new Space Panel (to left of Room List).
Incompatible with (will disable) `feature_custom_tags`, `feature_communities_v2_prototypes` and stable Communities/Groups support.
Still in heavy development.
A new version of the "Report" dialog that lets users send abuse reports directly to room moderators,
if the room supports it.
## Render LaTeX maths in messages (`feature_latex_maths`)
Enables rendering of LaTeX maths in messages using [KaTeX](https://katex.org/). LaTeX between single dollar-signs is interpreted as inline maths and double dollar-signs as display maths (i.e. centred on its own line).
## New spinner design (`feature_new_spinner`)
Replaces the old spinner image with a new, svg-based one featuring a sleeker design.
## Message pinning (`feature_pinning`)
Allows you to pin messages in the room. To pin a message, use the 3 dots to the right of the message
and select "Pin".
## Jump to date (`feature_jump_to_date`)
Note: This labs feature is only visible when your homeserver has MSC3030 enabled
(in Synapse, add `experimental_features` -> `msc3030_enabled` to your
`homeserver.yaml`) which means `GET /_matrix/client/versions` responds with
`org.matrix.msc3030` under the `unstable_features` key.
Adds a dropdown menu to the date separator headers in the timeline which allows
you to jump to last week, last month, the beginning of the room, or choose a
date from the calendar.
Also adds the `/jumptodate 2022-01-31` slash command.
## Custom status (`feature_custom_status`)
An experimental approach for supporting custom status messages across DMs. To set a status, click on
your avatar next to the message composer.
## Custom tags (`feature_custom_tags`)
An experimental approach for dealing with custom tags. Custom tags will appear in the bottom portion
of the community filter panel.
Setting custom tags is not supported by Element.
## Render simple counters in room header (`feature_state_counters`)
Allows rendering of labelled counters above the message list.
@@ -112,14 +111,84 @@ For some sample themes, check out [aaronraimist/element-themes](https://github.c
To enable message previews for reactions in all rooms, enable `feature_roomlist_preview_reactions_all`.
To enable message previews for reactions in DMs, enable `feature_roomlist_preview_reactions_dms`, ignored when it is enabled for all rooms.
Extensible Events are a [new event format](https://github.com/matrix-org/matrix-doc/pull/1767) which
supports graceful fallback in unknown event types. Instead of rendering nothing or a blank space, events
can define a series of other events which represent the event's information but in different ways. The
base of these fallbacks being text.
Turning this flag on indicates that, when possible, the extensible events structure should be parsed on
supported event types. This should lead to zero perceptual change in the timeline except in cases where
the sender is using unknown/unrecognised event types.
Sending events with extensible events structure is always enabled - this should not affect any downstream
client.
## Right panel stays open (`feature_right_panel_default_open`)
This is an experimental default open right panel mode as a quick fix for those
who prefer to have the right panel open consistently across rooms.
If no right panel state is known for the room or it was closed on the last room
visit, it will default to the room member list. Otherwise, the saved card last
used in that room is shown.
## Show current profile of users on historical messages (`feature_use_only_current_profiles`)
An experimental flag to determine how the app would behave if a user's current display
name and avatar (profile) were shown on historical messages instead of the profile details
at the time when the message was sent.
When enabled, historical messages will use the current profile for the sender.
## Pin drop location sharing (`feature_location_share_pin_drop`) [In Development]
Enables sharing a pin drop location to the timeline.
## Live location sharing (`feature_location_share_live`) [In Development]
Enables sharing your current location to the timeline, with live updates.
## Threaded Messaging (`feature_thread`)
Threading allows users to branch out a new conversation from the main timeline of a room. This is particularly useful in high traffic rooms where multiple conversations can happen in parallel or when a single discussion might stretch over a very long period of time.
Threads can be access by clicking their summary below the root event on the room timeline. Users can find a comprehensive list of threads by click the icon on the room header button.
This feature might work in degraded mode if the homeserver a user is connected to does not advertise support for the unstable feature `org.matrix.msc3440` when calling the `/versions` API endpoint.
## Right-click Message Context Menu (`feature_message_right_click_context_menu`)
Enables showing a right-click context menu when right-clicking messages in the
timeline. This menu shows options that can usually be found in the message
action bar or in the message options.
## Voice & video rooms (`feature_video_rooms`) [In Development]
Enables support for creating and joining video rooms, which are persistent video chats that users can jump in and out of.
- A working [Development Setup](../../#setting-up-a-dev-environment)
- A working [Development Setup](../README.md#setting-up-a-dev-environment)
- Including up-to-date versions of matrix-react-sdk and matrix-js-sdk
- Latest LTS version of Node.js installed
- Be able to understand English
@@ -30,7 +30,7 @@ function getColorName(hex) {
## Adding new strings
1. Check if the import ``import { _t } from 'matrix-react-sdk/lib/languageHandler';`` is present. If not add it to the other import statements. Also import `_td` if needed.
1. Check if the import ``import { _t } from 'matrix-react-sdk/src/languageHandler';`` is present. If not add it to the other import statements. Also import `_td` if needed.
1. Add ``_t()`` to your string. (Don't forget curly braces when you assign an expression to JSX attributes in the render method). If the string is introduced at a point before the translation system has not yet been initialized, use `_td()` instead, and call `_t()` at the appropriate time.
1. Run `yarn i18n` to update ``src/i18n/strings/en_EN.json``
1. If you added a string with a plural, you can add other English plural variants to ``src/i18n/strings/en_EN.json`` (remeber to edit the one in the same project as the source file containing your new translation).
1. Come and join https://matrix.to/#/#element-translations:matrix.org
2.Read scrollback and/or ask if anyone else is working on your language, and co-ordinate if needed. In general little-or-no coordination is needed though :)
1. Come and join https://matrix.to/#/#element-translations:matrix.org for general discussion
2.Join https://matrix.to/#/#element-translators:matrix.org for language-specific rooms
3. Read scrollback and/or ask if anyone else is working on your language, and co-ordinate if needed. In general little-or-no coordination is needed though :)
## Step 1: Preparing your Weblate Profile
@@ -61,4 +62,4 @@ You can use inside the translation field "Review needed" checkbox. It will be sh
### Further reading
The official Weblate doc provides some more in-deepth explanation on how to do translations and talks about do and don'ts. You can find it at: https://docs.weblate.org/en/latest/user/translating.html
The official Weblate doc provides some more in-depth explanation on how to do translations and talks about do and don'ts. You can find it at: https://docs.weblate.org/en/latest/user/translating.html
"Your browser can't run %(brand)s":"Браузърът ви не може да изпълни %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s използва модерни функции на браузъра, които не се поддържат от Вашия.",
"Powered by Matrix":"Базирано на Matrix"
"Powered by Matrix":"Базирано на Matrix",
"Use %(brand)s on mobile":"Използвайте %(brand)s на мобилен телефон"
"Your Element is misconfigured":"আপনার এলিমেন্ট টি ভুল ভাবে কনফিগার করা হয়েছে",
"Invalid configuration: no default server specified.":"ভুল কনফিগারেশনঃ কোনো মূল সার্ভার উল্লেখ করা হয়নি।",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"ভুল কনফিগারেশনঃ এদের মধ্যে কেবলমাত্র একটাই উল্লেখ করা যেতে পারেঃ default_server_config, default_server_name অথবা default_hs_url."
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"Du kan fortsætte med at bruge din nuværende browser, men du kan opleve at visse eller alle funktioner ikke vil fungere korrekt.",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"Venligst installer <chromeLink>Chrome</chromeLink>,<firefoxLink>Firefox</firefoxLink> eller <safariLink>Safari</safariLink> for den bedste oplevelse.",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s bruger avanceret browser funktioner som ikke er understøttet af din nuværende browser."
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s bruger avanceret browser funktioner som ikke er understøttet af din nuværende browser.",
"Previous recently visited room or community":"Tidligere besøgt rum eller fællesskab",
"Switch to space by number":"Skift til space med nummer",
"Use %(brand)s on mobile":"Brug %(brand)s på mobil",
"Next recently visited room or community":"Næste tidligere besøgt rum eller fællesskab"
"You need to be using HTTPS to place a screen-sharing call.":"Du musst HTTPS nutzen um einen Anruf mit Bildschirmfreigabe durchzuführen.",
"You need to be using HTTPS to place a screen-sharing call.":"Du musst HTTPS nutzen, um einen Anruf mit Bildschirmfreigabe durchzuführen.",
"Welcome to Element":"Willkommen bei Element",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Dezentrale, verschlüsselte Chat- & Kollaborationslösung mittels [matrix]",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Dezentrale, verschlüsselte Chat- & Kollaborationslösung basierend auf [matrix]",
"Sign In":"Anmelden",
"Create Account":"Account erstellen",
"Create Account":"Konto erstellen",
"Explore rooms":"Räume erkunden",
"Unexpected error preparing the app. See console for details.":"Unerwarteter Fehler bei der Vorbereitung der App. Siehe in die Konsole für mehr Details.",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Ungültige Konfiguration: Es kann nur eine der Optionen default_server_config, default_server_name oder default_hs_url angegeben werden.",
"Invalid configuration: no default server specified.":"Ungültige Konfiguration: Es wurde kein Standardserver angegeben.",
"The message from the parser is: %(message)s":"Die Nachricht des Parsers ist: %(message)s",
"Invalid JSON":"Ungültiges JSON",
"Go to your browser to complete Sign In":"Gehe in deinen Browser, um die Anmeldung abzuschließen",
"Open user settings":"Öffne Nutzer-Einstellungen",
"Go to your browser to complete Sign In":"Gehe zu deinem Browser, um die Anmeldung abzuschließen",
"Open user settings":"Benutzereinstellungen öffnen",
"Unable to load config file: please refresh the page to try again.":"Konfigurationsdatei kann nicht geladen werden: Bitte aktualisiere die Seite, um es erneut zu versuchen.",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"Bitte installiere <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, oder <safariLink>Safari</safariLink> für das beste Erlebnis.",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"Du kannst deinen aktuellen Browser weiterhin verwenden, es kann aber sein, dass einige oder alle Funktionen nicht verfügbar stehen oder dass das Aussehen und die Bedienung der Anwendung nicht korrekt ist.",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"Bitte installiere <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink> oder <safariLink>Safari</safariLink> für das beste Erlebnis.",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"Du kannst deinen aktuellen Browser weiterhin verwenden. Es ist aber möglich, dass nicht alles richtig funktioniert oder das Aussehen der App inkorrekt ist.",
"I understand the risks and wish to continue":"Ich verstehe die Risiken und möchte fortfahren",
"Your Element is misconfigured":"Dein Element ist falsch konfiguriert",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Deine Element Konfiguration enthält ungültiges JSON. Bitte korrigiere das Problem und lade die Seite neu.",
"Download Completed":"Download fertiggestellt",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Deine Elementkonfiguration enthält ungültiges JSON. Bitte korrigiere das Problem und lade die Seite neu.",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s verwendet erweiterte Browserfunktionen, die von Ihrem aktuellen Browser nicht unterstützt werden.",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s verwendet erweiterte Browserfunktionen, die von deinem Browser nicht unterstützt werden.",
"Your browser can't run %(brand)s":"Dein Browser kann %(brand)s nicht ausführen",
"Powered by Matrix":"Betrieben mit Matrix"
"Powered by Matrix":"Betrieben mit Matrix",
"Use %(brand)s on mobile":"Verwende %(brand)s am Handy",
"Switch to space by number":"Zum n-ten Space wechseln",
"Next recently visited room or community":"Nächster kürzlich besuchter Raum",
"Previous recently visited room or community":"Vorheriger kürzlich besuchter Raum",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Dezentralisierter, verschlüsselter Chat & Zusammenarbeit unterstützt von $matrixLogo"
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.",
"Invalid configuration: no default server specified.":"Invalid configuration: no default server specified.",
"Your Element is misconfigured":"Your Element is misconfigured",
@@ -11,14 +10,13 @@
"Download Completed":"Download Completed",
"Open":"Open",
"Dismiss":"Dismiss",
"Open user settings":"Open user settings",
"Previous/next recently visited room or community":"Previous/next recently visited room or community",
"You need to be using HTTPS to place a screen-sharing call.":"You need to be using HTTPS to place a screen-sharing call.",
"Powered by Matrix":"Powered by Matrix",
"Use %(brand)s on mobile":"Use %(brand)s on mobile",
"Unsupported browser":"Unsupported browser",
"Your browser can't run %(brand)s":"Your browser can't run %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s uses advanced browser features which aren't supported by your current browser.",
@@ -28,7 +26,7 @@
"Go to element.io":"Go to element.io",
"Failed to start":"Failed to start",
"Welcome to Element":"Welcome to Element",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Decentralised, encrypted chat & collaboration powered by [matrix]",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Decentralised, encrypted chat & collaboration powered by $matrixLogo",
"Unable to load config file: please refresh the page to try again.":"Unable to load config file: please refresh the page to try again.",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.",
"Your Element is misconfigured":"Your Element is misconfigured",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Via agordaro de Elemento enhavas nevalidajn datumojn de JSON. Bonvolu korekti la problemon kaj aktualigi la paĝon.",
"Your browser can't run %(brand)s":"Via foliumilo ne povas ruli %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s uzas specialajn funkciojn de foliumilo, kiujn via nuna foliumilo ne subtenas.",
"Powered by Matrix":"Povigata de Matrix"
"Powered by Matrix":"Povigata de Matrix",
"Use %(brand)s on mobile":"Uzi %(brand)s telefone",
"Switch to space by number":"Baskuli al aro laŭ numero"
"Your browser can't run %(brand)s":"Tu navegador no es compatible con %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s usa funciones avanzadas que su navegador actual no soporta.",
"Powered by Matrix":"Funciona con Matrix"
"Powered by Matrix":"Funciona con Matrix",
"Use %(brand)s on mobile":"Usar %(brand)s en modo móvil",
"Switch to space by number":"Cambiar a espacio por número",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Conversaciones y colaboración descentralizadas y cifradas gracias a $matrixLogo"
"Go to your browser to complete Sign In":"Sisselogimiseks ava oma brauser",
"Dismiss":"Loobu",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Matrix'i protokollil põhinev hajutatud ja krüpteeritud suhtlus- ning ühistöörakendus",
"Explore rooms":"Uuri jututubasid",
"Explore rooms":"Tutvu jututubadega",
"Missing indexeddb worker script!":"Lahendusest puudub indexeddb skript!",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Vigane seadistus. Sa võid määrata vaid ühe alljärgnevatest: default_server_config, default_server_name või default_hs_url.",
"Previous/next recently visited room or community":"Eelmine/järgmine hiljuti kasutatud jututuba või kogukond",
@@ -32,5 +32,10 @@
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Sinu Element'i seadistustes on vigased JSON-vormingus andmed. Palun paranda see viga ja laadi leht uuesti.",
"Your browser can't run %(brand)s":"%(brand)s ei toimi sinu brauseris",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s kasutab mitmeid uusi brauseri-põhiseid tehnoloogiaid, mis ei ole veel sinu veebibrauseris toetatud.",
"Powered by Matrix":"Põhineb Matrix'il"
"Powered by Matrix":"Põhineb Matrix'il",
"Use %(brand)s on mobile":"Kasuta rakendust %(brand)s nutiseadmes",
"Switch to space by number":"Vaata kogukonnakeskust tema numbri alusel",
"Next recently visited room or community":"Järgmine hiljuti külastatud jututuba või kogukond",
"Previous recently visited room or community":"Eelmine hiljuti külastatud jututuba või kogukond",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Hajutatud ja krüpteeritud suhtlus- ning ühistöörakendus, mille aluseks on $matrixLogo"
"Decentralised, encrypted chat & collaboration powered by [matrix]":"چت غیرمتمرکز، رمزنگاریشده & قدرتگرفته از ماتریکس",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"چت غیرمتمرکز، رمزنگاریشده & راه اندازی شده با استفاده از ماتریکس",
"Dismiss":"نادیده بگیر",
"You need to be using HTTPS to place a screen-sharing call.":"شما باید از ارتباط امن HTTPS برای بهراهاندازی یک چتِ شامل به اشتراکگذاری صفحهی کامیپوتر استفاده کنید.",
"You need to be using HTTPS to place a screen-sharing call.":"برای راهاندازی تماس با اشتراک صفحه باید از HTTPS استفاده کنید.",
"Invalid JSON":"JSON اشتباه",
"Open user settings":"تنظیمات کاربر",
"Go to your browser to complete Sign In":"برای تکمیل ورود به مرورگر خود بروید",
"Sign In":"ورود",
"Create Account":"ایجاد اکانت",
"Explore rooms":"کاوش اتاق",
"Create Account":"ایجاد حساب کاربری",
"Explore rooms":"جستجو در اتاقها",
"Missing indexeddb worker script!":"اسکریپت کارگر نمایه پایگاه داده از دست رفته است!",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"پیکربندی نامعتبر: فقط میتوانید یکی از default_server_config، default_server_name یا default_hs_url را مشخص کنید.",
"Invalid configuration: no default server specified.":"پیکربندی نامعتبر: سرور پیشفرض مشخص نشده است.",
@@ -23,14 +23,18 @@
"Open":"باز",
"Previous/next recently visited room or community":"قبلی/بعدی اتاق ها یا اجتماع های اخیرا بازدید شده",
"Your browser can't run %(brand)s":"مرورگر شما نمیتواند %(brand)s را اجرا کند",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s از ویژگی های پیشرفته مرورگر استفاده میکند که که در مرورگر فعلی شما پشتیبانی نمیشوند.",
"Your browser can't run %(brand)s":"مرورگر شما نمیتواند %(brand)s را اجرا کند",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s از ویژگی های پیشرفته مرورگر استفاده میکند که در مرورگر فعلی شما پشتیبانی نمیشوند.",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"لطفا برای تجربه بهتر <chromeLink>کروم</chromeLink>، <firefoxLink>فایرفاکس</firefoxLink>، یا <safariLink>سافاری</safariLink> را نصب کنید.",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"شما میتوانید با مرورگر فعلی خود ادامه دهید، اما ممکن است برخی یا کل ویژگی ها کار نکنند و نگاه و احساس از برنامه ممکن است درست نباشد.",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"شما میتوانید با مرورگر فعلی خود ادامه دهید، اما ممکن است عملکرد تمامی یا برخی از قابلیت ها با اشکال روبرو شود و نمایش برنامه صحیح نباشد.",
"I understand the risks and wish to continue":"از خطرات این کار آگاهم و مایلم که ادامه بدهم",
"Go to element.io":"برو به element.io",
"Failed to start":"مشکل در آغاز",
"Powered by Matrix":"قدرتگرفته از ماتریکس"
"Failed to start":"خطا در شروع",
"Powered by Matrix":"راه اندازی شده با استفاده از ماتریکس",
"Use %(brand)s on mobile":"از %(brand)s گوشی استفاده کنید",
"Switch to space by number":"تغییر به فضا با شماره",
"Previous recently visited room or community":"جلسه یا اتاق قبلی که اخیرا مشاهده شده است",
"Next recently visited room or community":"جلسه یا اتاق بعدی که اخیرا مشاهده شده است"
"Welcome to Element":"Tervetuloa Element-sovellukseen",
"You need to be using HTTPS to place a screen-sharing call.":"Sinun täytyy käyttää HTTPS-yhteyttä, jotta voit jakaa ruudun puhelussa.",
"You need to be using HTTPS to place a screen-sharing call.":"Sinun täytyy käyttää HTTPS-yhteyttä, jotta voit jakaa näytön puhelussa.",
"powered by Matrix":"moottorina Matrix",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Hajautettua ja salattua viestintää Matrix-teknologialla",
"Sign In":"Kirjaudu",
@@ -32,5 +32,9 @@
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Element-asetuksesi sisältävät epäkelpoa JSONia. Korjaa ongelma ja lataa sivu uudelleen.",
"Powered by Matrix":"Moottorina Matrix",
"Your browser can't run %(brand)s":"%(brand)s ei toimi selaimessasi",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s käyttää edistyneitä selaimen ominaisuuksia, joita nykyinen selaimesi ei tue."
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s käyttää edistyneitä selaimen ominaisuuksia, joita nykyinen selaimesi ei tue.",
"Use %(brand)s on mobile":"Käytä %(brand)sia mobiilisti",
"Switch to space by number":"Vaihda avaruuteen käyttäen numeroa",
"Next recently visited room or community":"Seuraava aiemmin vierailtu huone tai yhteisö",
"Previous recently visited room or community":"Aiemmin viimeaikoina vierailtu huone tai yhteisö"
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Messagerie et collaboration décentralisées et chiffrées, propulsées par [matrix]",
"Sign In":"Se connecter",
"Create Account":"Créer un compte",
"Explore rooms":"Explorer les salons",
"Explore rooms":"Parcourir les salons",
"Unexpected error preparing the app. See console for details.":"Une erreur inattendue est survenue pendant la préparation de l’application. Consultez la console pour avoir des détails.",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Configuration invalide: il ne faut spécifier qu’un des trois champs parmis default_server_config, default_server_name et default_hs_url.",
"Invalid configuration: no default server specified.":"Configuration invalide: aucun serveur par défaut spécifié.",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Configuration invalide: il ne faut spécifier qu’un des trois champs parmi default_server_config, default_server_name et default_hs_url.",
"Invalid configuration: no default server specified.":"Configuration invalide: aucun serveur par défaut indiqué.",
"The message from the parser is: %(message)s":"Le message de l’analyseur est: %(message)s",
"Invalid JSON":"JSON non valide",
"Go to your browser to complete Sign In":"Utilisez votre navigateur pour terminer la connexion",
"Open user settings":"Ouvrir les paramètres utilisateur",
"Missing indexeddb worker script!":"Script du worker IndexedDB manquant!",
"Unable to load config file: please refresh the page to try again.":"Impossible de charger le fichier de configuration: rafraichissez la page pour réessayer.",
"Unable to load config file: please refresh the page to try again.":"Impossible de charger le fichier de configuration: rechargez la page pour réessayer.",
"Previous/next recently visited room or community":"Salon ou communauté visité récemment précédent/suivant",
"Unsupported browser":"Navigateur non pris en charge",
@@ -32,5 +32,10 @@
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"La configuration de votre Element contient du JSON invalide. Veuillez corriger le problème et recharger la page.",
"Your browser can't run %(brand)s":"Votre navigateur ne peut pas exécuter %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s nécessite des fonctionnalités avancées que votre navigateur actuel ne prend pas en charge.",
"Powered by Matrix":"Propulsé par Matrix"
"Powered by Matrix":"Propulsé par Matrix",
"Use %(brand)s on mobile":"Utiliser %(brand)s sur téléphone",
"Switch to space by number":"Afficher un espace par son numéro",
"Next recently visited room or community":"Prochain salon ou communauté récemment visité",
"Previous recently visited room or community":"Salon ou communauté précédemment visité",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Messagerie décentralisée, chiffrée & une collaboration alimentée par $matrixLogo"
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"Jo kinne fierder gean mei jo eigen browser, mar guon funksjes kinne net wurkje en uterlik kin de applikaasje der ôfwikend útsjen.",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"Graach <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, of<safariLink>Safari</safariLink> ynstallearje foar de beste ûnderfining.",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s brûkt avansearre browserfunksjes dy’t net stipe wurde troch de browser dy’t jo no brûke.",
"Previous/next recently visited room or community":"Foarige/Folgjende resintlik besochte keamer as mienskip",
"Switch to space by number":"Wikselje fan romte mei nûmer",
"Unexpected error preparing the app. See console for details.":"Unferwachte flater by it klearmeitsjen fan de applikaasje. Sjoch yn de console foar details.",
"The message from the parser is: %(message)s":"It berjocht fan de ferwurker is: %(message)s",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Jo Element-konfiguraasje hat ûnjildige JSON. Nei dat jo dit oplost ha, kin dizze side ferfarske wurde.",
"Use %(brand)s on mobile":"Brûk %(brand)s op mobyl",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Desintralisearre, fersifere chat & gearwurking fersoarge troch [matrix]",
"You need to be using HTTPS to place a screen-sharing call.":"Oproppen mei skerm dielen fereasket HTTPS.",
"Go to your browser to complete Sign In":"Gean nei jo browser om it ynskriuwen te foltôgjen",
"Download Completed":"Download foltôge",
"Unable to load config file: please refresh the page to try again.":"Kin konfiguraasjebestân net lade: ferfarskje de side en probearje it nochris.",
"Open user settings":"Brûkersynstellingen iepenje",
"Dismiss":"Slute",
"Explore rooms":"Keamers ûntdekke",
"Create Account":"Registrearje",
"Welcome to Element":"Wolkom by Element",
"I understand the risks and wish to continue":"Ik begryp de risiko's en wol graach fierder gean",
"Go to element.io":"Gean nei element.io",
"Your browser can't run %(brand)s":"Jo browser kin %(brand)s net útfiere",
"Unsupported browser":"Net stipe browser",
"Unknown device":"Unbekend apparaat",
"Open":"Iepenje",
"Invalid JSON":"Unjildige JSON",
"Your Element is misconfigured":"Jo Element is net goed konfigurearre",
"Invalid configuration: no default server specified.":"Unjildiche konfiguraasje: gjin standertserver selektearre.",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Unjildige konfiguraasje: kin allinnich kieze út default_server_config, default_server_name, as default_hs_url."
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Meán comhrá agus comhoibriú, díláraithe agus criptithe, cumhachtaithe ag [matrix]",
"Sign In":"Sínigh Isteach",
"Create Account":"Déan cuntas a chruthú",
"Explore rooms":"Breathnaigh thart ar na seomraí"
"Explore rooms":"Breathnaigh thart ar na seomraí",
"Your browser can't run %(brand)s":"Níl do bhrabhsálaí comhoiriúnach do %(brand)s",
"Go to your browser to complete Sign In":"Oscail do bhrabhsálaí agus críochnaigh an clárú",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Coinníonn do chumraíocht JSON neamhbhailí. Ceartaigh an fadhb agus athlódáil an leathanach le do thoil.",
"Your Element is misconfigured":"Níl do fheidhmchlár Element cumraithe i gceart",
"Previous/next recently visited room or community":"roimhe/chéad eile, seomra nó pobal is déanaí",
"Failed to start":"Theip chun tosú",
"I understand the risks and wish to continue":"Tuigim na rioscaí agus ba mhaith liom lean ar aghaidh",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"An féidir leat úsáid do bhrabhsálaí reatha, ach nár oibrí roinnt nó gach gné agus nár thaispeántar an feidhmchlár i gceart.",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"Suiteáil <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> chun an taithí is fearr a fháil.",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"Úsáideann %(brand)s gnéithe ardforbartha nach bhfuil ar fáil faoi do bhrabhsálaí reatha.",
"Unexpected error preparing the app. See console for details.":"Earráid nuair an feidhmchlár a hullmhú. Feic sa consól le haghaidh eolas.",
"Unable to load config file: please refresh the page to try again.":"Ní féidir an comhad cumraíochta a lódáil. Athnuaigh an leathanach chun déanamh iarracht arís le do thoil.",
"Download Completed":"Íoslódáil críochnaithe",
"Invalid JSON":"JSON neamhbhailí",
"The message from the parser is: %(message)s":"Is í an teachtaireacht as an parsálaí: %(message)s",
"Invalid configuration: no default server specified.":"Cumraíocht neamhbhailí: Níl aon freastalaí réamhshocraithe a sonrú.",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"Cumraíocht neamhbhailí: ní féidir ach ceann de default_server_config, default_server_name, nó default_hs_url a shonrú.",
"Missing indexeddb worker script!":"An script oibrí \"indexeddb\" ag iarraidh!",
"Powered by Matrix":"Cumhachtaithe ag Matrix",
"Go to element.io":"Téigh go element.io",
"Open user settings":"Oscail socruithe úsáideora",
"Open":"Oscail",
"Use %(brand)s on mobile":"Úsáid %(brand)s ar guthán póca",
"Switch to space by number":"Athraigh go spás de réir uimhreach"
"You need to be using HTTPS to place a screen-sharing call.":"Precisa utilizar HTTPS para establecer unha chamada de pantalla compartida.",
"Welcome to Element":"Benvida/o a Element",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"Conversas e colaboración descentralizada e cifrada grazas a [matrix]",
"Sign In":"Conectar",
"Sign In":"Acceder",
"Create Account":"Crear conta",
"Explore rooms":"Explorar salas",
"The message from the parser is: %(message)s":"A mensaxe desde o intérprete é: %(message)s",
@@ -32,5 +32,10 @@
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"A configuración de Element contén JSON non válido. Corrixe o problema e recarga a páxina.",
"Your browser can't run %(brand)s":"O teu navegador non pode executar %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s utiliza características avanzadas do navegador que non están dispoñibles no teu navegador.",
"Powered by Matrix":"Funciona grazas a Matrix"
"Powered by Matrix":"Funciona grazas a Matrix",
"Use %(brand)s on mobile":"Utiliza %(brand)s no móbil",
"Switch to space by number":"Cambiar a espazo polo número",
"Next recently visited room or community":"Seguinte sala ou comunidade visitada recentemente",
"Previous recently visited room or community":"Sala ou Comunidade visitada recentemente",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Conversas & colaboración descentralizadas e cifradas grazas a $matrixLogo"
"You need to be using HTTPS to place a screen-sharing call.":"עליך להשתמש בHTTPS בכדי לבצע שיחת ווידאו משותפת.",
"You need to be using HTTPS to place a screen-sharing call.":"עליך להיות מחובר ב-HTTPS בכדי לבצע שיחה עם שיתוף מסך.",
"Welcome to Element":"ברוכים הבאים ל Element",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"צ'טמוצפן & ושת\"פ נעשה ע\"י ה [matrix]",
"Decentralised, encrypted chat & collaboration powered by [matrix]":"צ'אטוכלי שיתוף פעולה מבוזר ומוצפן - מופעל באמצעות [matrix]",
"Invalid JSON":"JSON לא חוקי",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"תצורה שגויה: ניתן לציין רק אחד מהבאים, default_server_config, default_server_name, או default_hs_url.",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"תצורה שגויה: ניתן לציין רק אחד מהערכים הבאים, default_server_config, default_server_name, או default_hs_url.",
"Invalid configuration: no default server specified.":"תצורה שגויה: לא צוין שרת ברירת מחדל.",
"Open user settings":"פתח הגדרות משתמש",
"Go to your browser to complete Sign In":"עבור לדפדפן להמשך ההתחברות",
"Explore rooms":"שיטוט בחדרים",
"Create Account":"יצירת חשבון",
"Sign In":"כניסה",
"Explore rooms":"גלה חדרים",
"Create Account":"משתמש חדש",
"Sign In":"התחברות",
"Previous/next recently visited room or community":"הבא\\קודם חדרים וקהילות שביקרתם לאחרונה",
"Open":"פתח",
"Download Completed":"ההורדה הושלמה",
"Unexpected error preparing the app. See console for details.":"שגיאה לא צפויה במהלך הכנת האפליקציה. ראו קונסול לפרטים נוספים.",
"Unable to load config file: please refresh the page to try again.":"לא יכול לקרוא את קובץ ההגדרות: אנא אתחלו את הדף לנסות שנית.",
"Unexpected error preparing the app. See console for details.":"שגיאה לא צפויה במהלך טעינת האפליקציה. ראו קונסול לפרטים נוספים.",
"Unable to load config file: please refresh the page to try again.":"לא ניתן לטעון את קובץ ההגדרות: יש לרענן את הדף כדי לנסות שנית.",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"האלמנט מכיל הגדרת JSON שגויה, אנא תקנו את הבעיה ואתחלו את הדף.",
"Your Element is misconfigured":"האלמנט מוגדר באופן שגוי",
"Your Element is misconfigured":"Element אינו מוגדר תקין",
"Go to element.io":"חזור לאתר הראשי: element.io",
"I understand the risks and wish to continue":"הסיכונים מובנים לי ואני מעוניינ/ת להמשיך",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"ניתן להמשיך ולהשתמש בדפדפן זה, אך ייתכן שחלק מן התכונות והמאפיינים לא יעבדו כשורה או ייראו כשגויים.",
"%(brand)s Desktop (%(platformName)s)":"%(brand)s का डेस्कटॉप (%(platformName)s)",
"Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.":"अमान्य कॉन्फ़िगरेशन: केवल default_server_config, default_server_name, या default_hs_url में से कोई एक निर्दिष्ट कर सकता है।",
"Failed to start":"प्रारंभ करने में विफल",
"Go to element.io":"element.io पर जाएं",
"I understand the risks and wish to continue":"मैं जोखिमों को समझता हूं और जारी रखना चाहता हूं",
"You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.":"आप अपने वर्तमान ब्राउज़र का उपयोग जारी रख सकते हैं, लेकिन हो सकता है कि कुछ या सभी सुविधाएं काम न करें और एप्लिकेशन का रंगरूप गलत हो सकता है।",
"Please install <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, or <safariLink>Safari</safariLink> for the best experience.":"सर्वोत्तम अनुभव के लिए कृपया <chromeLink>Chrome</chromeLink>, <firefoxLink>Firefox</firefoxLink>, या <safariLink>Safari</safariLink> इंस्टॉल करें।",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s उन्नत ब्राउज़र सुविधाओं का उपयोग करते हैं जो आपके वर्तमान ब्राउज़र द्वारा समर्थित नहीं हैं।",
"Your browser can't run %(brand)s":"आपका ब्राउज़र %(brand)s को नहीं चला सकता",
"Use %(brand)s on mobile":"मोबाइल पर %(brand)s का प्रयोग करें",
"Unsupported browser":"असमर्थित ब्राउज़र",
"Powered by Matrix":"मैट्रिक्स द्वारा संचालित",
"Go to your browser to complete Sign In":"साइन इन पूरा करने के लिए अपने ब्राउज़र पर जाएं",
"Open":"खुला",
"Download Completed":"डाउनलोड सम्पन्न हुआ",
"Unexpected error preparing the app. See console for details.":"ऐप्लिकेशन तैयार करने में अनपेक्षित गड़बड़ी हुई. विवरण के लिए कंसोल देखें।",
"Unable to load config file: please refresh the page to try again.":"कॉन्फ़िग फ़ाइल लोड करने में असमर्थ: कृपया पुन: प्रयास करने के लिए पृष्ठ को रीफ़्रेश करें।",
"Invalid JSON":"अमान्य JSON",
"The message from the parser is: %(message)s":"पार्सर का संदेश है: %(message)s",
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"आपके एलीमेंट कॉन्फ़िगरेशन में अमान्य JSON है. कृपया समस्या को ठीक करें और पृष्ठ को पुनः लोड करें।",
"Your Element is misconfigured":"आपका तत्व गलत कॉन्फ़िगर किया गया है",
"Invalid configuration: no default server specified.":"अमान्य कॉन्फ़िगरेशन: कोई डिफ़ॉल्ट सर्वर निर्दिष्ट नहीं है।"
"Your Element configuration contains invalid JSON. Please correct the problem and reload the page.":"Az Element érvénytelen JSON-t tartalmazó konfigurációval rendelkezik. Javítsa és töltse újra az oldalt.",
"Your browser can't run %(brand)s":"A böngészője nem tudja futtatni ezt: %(brand)s",
"%(brand)s uses advanced browser features which aren't supported by your current browser.":"%(brand)s speciális böngészőfunkciókat használ, amelyeket a jelenlegi böngészője nem támogat.",
"Powered by Matrix":"A gépházban: Matrix"
"Powered by Matrix":"A gépházban: Matrix",
"Use %(brand)s on mobile":"Mobilon használd ezt: %(brand)s",
"Switch to space by number":"Tér váltás számmal",
"Next recently visited room or community":"Következő nemrég meglátogatott szoba vagy közösség",
"Previous recently visited room or community":"Előző nemrég meglátogatott szoba vagy közösség",
"Decentralised, encrypted chat & collaboration powered by $matrixLogo":"Elosztott, titkosított csevegés & együttműködés ezzel: $matrixLogo"
"Your browser can't run %(brand)s":"Ձեր բրաուզերը չի թողարկում %(brand)s",
"Unsupported browser":"Չհամապատասխանող բրաուզեր",
"Dismiss":"Հեռացնել",
"Open":"Բացել",
"Unable to load config file: please refresh the page to try again.":"Ֆայլի ներմուծման սխալ․ խնդրում ենք թարմացնել էջը և նորից փորձել։",
"Invalid JSON":"Չաշխատող JSON",
"Your Element is misconfigured":"Ձեր Element֊ը սխալ է կարգավորված"
}
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.