Commit Graph
41 Commits
Author SHA1 Message Date
Hugh Nimmo-SmithandGitHub d698705ffa Configure sentry integration for netlify PR previews (#2884) 2024-12-09 14:01:06 +00:00
Hugh Nimmo-SmithandGitHub 4fab1a25b4 Use specific Node.js version (22) instead of latest LTS (#2879)
This way we can manage the upgrade cycle ourselves.
2024-12-06 18:15:49 +00:00
Hugh Nimmo-SmithandGitHub 21b62dbd89 Use a consistent background colour for video tiles and avatars (#2868) 2024-12-05 13:26:31 +00:00
Hugh Nimmo-SmithandGitHub 27620b9148 Rename en-GB language to en (#2866)
Fixes https://github.com/element-hq/element-call/issues/2865

If we want to have GB and US specific terms later on we can then add then in as `en-GB` and `en-US`.
2024-12-04 14:51:29 +00:00
Hugh Nimmo-SmithandGitHub a37c3bfb48 Show hostname in developer settings (#2857)
Also refactored developer settings labels into own locale section
2024-12-02 15:43:19 +00:00
Hugh Nimmo-SmithandGitHub 32ccfe8813 Fix Cache-Control header for docker images (#2847) 2024-11-28 17:40:06 +00:00
Hugh Nimmo-SmithandGitHub f7c7f41afd Upgrade js-sdk to develop with MSC4222 state_after support (#2841)
Diff https://github.com/matrix-org/matrix-js-sdk/compare/2210255d6ffc909c574fb8ef16f92140b2fb7797...8fc77c595aa651db9f402df798b868ed076590e3
2024-11-27 20:43:56 +00:00
Hugh Nimmo-SmithandGitHub cf174261c9 Some simple initial tests for MediaView (#2813)
* Some simple tests for MediaView

* Use jest-dom assertions

* Add tests for videoMuted

* Add test case for placeholder video track

* Revert yarn.lock changes

* More revert

* Deduplicate test case logic and improve names

* Use role and label
2024-11-25 20:22:02 +00:00
Hugh Nimmo-SmithandGitHub 0469d8ef56 Add explicit code split on matrix-sdk-crypto-wasm to allow caching between deploys (#2823)
* Add explicit code split on matrix-sdk-crypto-wasm to allow caching between deploys

* Comment on removing once https://github.com/matrix-org/matrix-rust-sdk-crypto-wasm/pull/167 lands
2024-11-23 09:00:43 +00:00
Hugh Nimmo-SmithandGitHub fc8da6ef58 Use hot marbles for speaker tests (#2815)
* Refactor the speaker detection logic into observeSpeaker and add tests

@robintown the tests pass, but some of the values were off by 1ms from what I was expecting. Please can you sanity check them?

* Extra test cases and clean up

* Make distinctUntilChanged part of the observable itself

* More suggestions from code review

* Use hot marbles for speaker tests

This was originally part of https://github.com/element-hq/element-call/pull/2810

* Only feed speaking mocks to observables that ask for IsSpeakingChanged
2024-11-23 08:59:33 +00:00
Hugh Nimmo-SmithandGitHub 4e1b4fae19 Refactor the speaker detection logic into observeSpeaker and add tests (#2814)
* Refactor the speaker detection logic into observeSpeaker and add tests

@robintown the tests pass, but some of the values were off by 1ms from what I was expecting. Please can you sanity check them?

* Extra test cases and clean up

* Make distinctUntilChanged part of the observable itself

* More suggestions from code review
2024-11-23 08:59:15 +00:00
Hugh Nimmo-SmithandGitHub 5c18868aa4 The preload URL param shouldn't be used in SPA mode, so ignore it if not in widget (#2832)
* Refactor URL parameters into table

This is for readability and ahead of some possible changes

* Whitespace

* Lint

* The preload URL param shouldn't be used in SPA mode, so ignore it
2024-11-23 08:55:03 +00:00
Hugh Nimmo-SmithandGitHub 9ce16b68e9 Refactor URL parameters into table (#2827)
* Refactor URL parameters into table

This is for readability and ahead of some possible changes

* Whitespace

* Lint

* Cleanup and correct fontScale
2024-11-23 08:51:27 +00:00
Hugh Nimmo-SmithandGitHub 8da38d173a Remove .well-known files from build process (#2830)
These don't get included in the docker images anyhow (due to them being excluded by defautl by https://github.com/actions/upload-artifact#uploading-hidden-files).

We need to inject the right values into our managed deployments elsewhere.
2024-11-22 18:12:29 +00:00
Hugh Nimmo-SmithandGitHub b7b9771577 Use hot test input marbles instead of cold (#2810)
* Use hot test input marbles instead of cold

These will be needed for https://github.com/element-hq/element-call/pull/2701

* Revert for "spotlight speakers swap places" test
2024-11-21 11:03:16 +00:00
Hugh Nimmo-SmithandGitHub 3885eefa4c Disambiguate between types of "member" (#2807)
We have Matrix room members and MatrixRTC session memberships. Livekit also has rooms.

So, this attempts to make it more obvious as to what type you are referring to.
2024-11-21 11:02:05 +00:00
Hugh Nimmo-SmithandGitHub 9176e06195 Some tsdoc and explicit typing (#2809)
* Some tsdoc and explicit typing

Pulled out of https://github.com/element-hq/element-call/pull/2701

* Extra typing
2024-11-21 11:01:43 +00:00
Hugh Nimmo-SmithandGitHub 8891a9a70e Make it clearer what are inputs and what are expected outputs in test cases (#2808)
Rationale: try and make the marbles section of each test case more readable
2024-11-20 14:44:23 +00:00
Hugh Nimmo-SmithandGitHub 826d0ee40d Rxjs subjects should not be exposed (#2805)
This rule will encourage us to do the right thing and better abstract.

See https://github.com/cartant/eslint-plugin-rxjs/blob/main/docs/rules/no-exposed-subjects.md
2024-11-20 10:32:21 +00:00
Hugh Nimmo-SmithandGitHub fbc2cd3e97 Remove redundant distinctUntilChanged (#2804)
Because this.scope.state() does this for us
2024-11-20 10:31:36 +00:00
Hugh Nimmo-SmithandGitHub 64749d0b7a Expose TestScheduler as global (#2796) 2024-11-18 22:39:59 +00:00
Hugh Nimmo-SmithandGitHub 50934a53cd Lazy load matrix-js-sdk when running as SPA (#2785) 2024-11-14 21:54:02 +00:00
Hugh Nimmo-SmithandGitHub 6e5c468780 Use more explicit names and types for LayoutMedia observables (#2781) 2024-11-14 14:23:50 +01:00
Hugh Nimmo-SmithandGitHub 8be6655d8b Add matrix_rtc_session config options + bump js-sdk (#2756)
* Add matrix_rtc_session config options
* Bump js-sdk

https://github.com/matrix-org/matrix-js-sdk/compare/6971e7bebaad643c233e5057da7a0d42441c0789...fcb69b16ad8d170c67ea844f83543d467bbd7707

Also brings in:

- https://github.com/matrix-org/matrix-js-sdk/pull/4342
- https://github.com/matrix-org/matrix-js-sdk/pull/4494
2024-11-11 16:53:37 +00:00
Hugh Nimmo-SmithandGitHub bfffddfa92 Fix minature => miniature spelling (#2727) 2024-11-06 15:54:58 +00:00
Hugh Nimmo-SmithandGitHub f611554c31 Don't hide video on encryption status error (#2726) 2024-11-06 15:31:31 +00:00
Hugh Nimmo-SmithandGitHub 7fd344385d Add rxjs/recommend eslint rules (#2724)
We will probably want to tweak these as we get more used to them.
2024-11-06 14:33:06 +00:00
Hugh Nimmo-SmithandGitHub c45f724279 Show encryption key status from LiveKit (#2700)
* Refactor to make encryption system available in view models

* WIP show encryption errors from LiveKit

* Missing CSS

* Show encryption status based on LK and RTC

* Lint

* Lint

* Fix tests

* Update wording

* Refactor

* Lint
2024-11-06 11:12:46 +00:00
Hugh Nimmo-SmithandGitHub f2ed07c258 Refactor to make encryption system available in view models (#2702) 2024-11-04 09:11:44 +00:00
Hugh Nimmo-SmithandGitHub d8bbd93294 Bump js-sdk for MatrixRTC fixes (#2688)
Full diff https://github.com/matrix-org/matrix-js-sdk/compare/v34.7.0...0a29063bc9e61ee70ca43820d4bb91f6a27f1237

Relevant PRs included:

- Do not rotate MatrixRTC media encryption key when a new member joins a session #4472
- Refactor/simplify Promises in MatrixRTCSession #4466
- Prepare delayed call leave events more reliably #4447
- Fix DelayedEventInfo type #4446
- Fix MatrixRTC sender key wrapping #4441
2024-10-25 17:23:34 +01:00
Hugh Nimmo-SmithandGitHub 8a84c6c45e Use non-deprecated method of re-processing MatrixRTCSession keys (#2646)
* Handle case of encryption key for an index to be undefined

As per https://github.com/matrix-org/matrix-js-sdk/pull/4423 the key can be undefined and so we should handle this rather than waiting for SubtleCrypto.importKey() to fail.

* Use release version of matrix-js-sdk

Diff is https://github.com/matrix-org/matrix-js-sdk/compare/baa6d135065637c9769c61325c69709d3618f5f1...v34.7.0

* Use RTCSession. reemitEncryptionKeys()

* Add some test coverage whilst we are here

* Add some test coverage whilst we are here

* Lint
2024-10-11 11:34:45 -04:00
Hugh Nimmo-SmithandGitHub 8272c54177 Set LiveKit keyring size to 256 (#2660) 2024-10-10 10:34:38 +01:00
Hugh Nimmo-SmithandGitHub ed35d6b377 Posthog improvements (#2630) 2024-09-23 14:35:41 +01:00
d14b43487a Intercept matrix_sdk logging via console and include in rageshake (#2623)
Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2024-09-23 14:35:10 +01:00
Hugh Nimmo-SmithandGitHub bd866945fd Bump js-sdk (#2638) 2024-09-18 13:18:28 +01:00
Hugh Nimmo-SmithandGitHub a5aeb6f324 Give user feedback if the rageshake submission failed (#2621) 2024-09-11 14:53:50 +01:00
Hugh Nimmo-SmithandGitHub 7e5b70d439 Rageshake logging improvements (#2622) 2024-09-11 14:02:59 +01:00
Hugh Nimmo-SmithandGitHub c30c8ac7d6 Include the hostname of where EC is running in rageshakes (#2616) 2024-09-09 11:14:46 +01:00
Hugh Nimmo-SmithandGitHub f562cc1e7f Show user's Matrix ID and device ID in developer settings tab (#2559) 2024-08-16 15:37:57 +01:00
Hugh Nimmo-SmithandGitHub 69b762b9ed Bump js-sdk for sender key reliability improvements (#2567)
Diff from current version: https://github.com/matrix-org/matrix-js-sdk/compare/9176d3a671114be97ee7a42155a6d40a233384f1...467908703bc67fa3e23d978f5549e2709d4acf74
2024-08-15 11:49:19 +02:00
Hugh Nimmo-SmithandGitHub b13fa85465 Add note on how to add a new translation key (#2536)
* Add note on how to add a new translation key

* Lint

* Nit
2024-08-07 10:40:44 +01:00