Commit graph

60 commits

Author SHA1 Message Date
Michael Telatynski
ddadbf64fe
Allow popping out a Jitsi widget to respect Desktop web_base_url config (#12376)
* Allow popping out a Jitsi widget to respect Desktop `web_base_url` config

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update tests

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-03-26 16:27:11 +00:00
Andy Balaam
d3c0435446 Adept KnownMembership imports for new location in types 2024-03-18 14:43:08 +00:00
Andy Balaam
34559d2a89 Adapt Membership usage for the change to an enum KnownMembership 2024-03-18 14:43:08 +00:00
Stanislav Demydiuk
da99bad7b9 Introduce Membership type 2024-03-18 14:43:08 +00:00
Michael Telatynski
f4d056fd38
Migrate more strings to translation keys (#11651) 2023-09-22 16:39:40 +01:00
Michael Telatynski
569832bc24
Handle ManagedHybrid widgets in useRoomCall and mark them in the widget state event
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-09-11 11:39:30 +01:00
Michael Telatynski
27d79458da
Remove dead & duplicated code (#11405)
* Remove dead code

* Make dead code happier

* DRY pickle additional data calculation

* Iterate
2023-08-15 08:43:15 +00:00
Michael Telatynski
24703eea8f
Switch to importing models/event from main js-sdk export (#11363) 2023-08-07 08:24:58 +00:00
Michael Telatynski
e67ca33c4a
Switch to importing models/Room from main js-sdk export (#11361)
* Switch to importing TypedEventEmitter from main js-sdk export

* Switch to importing js-sdk/matrix in cypress

* Remove duplicated imports

* Fix lint:js-fix to run prettier last otherwise ESLint --fix may cause a mess

* Add lint rule

* Switch to importing models/Room from main js-sdk export

* Fix cypress-axe import

* Fix more imports

* Fix cypress-axe import

* Fix duplicated lint rule
2023-08-04 07:36:16 +00:00
Michael Telatynski
30429df948
Eliminate the use of MatrixClientPeg in utils (#10910) 2023-05-23 16:24:12 +01:00
Michael Telatynski
2da199c41d
Remove url npm dependency and use Web URL constructor (#10930) 2023-05-17 12:50:00 +01:00
Michael Telatynski
82e32035fd
Conform more of the codebase to strictNullChecks (#10842) 2023-05-11 09:56:56 +01:00
Michael Telatynski
456c66db5b
Conform more of the codebase to strictNullChecks (#10800) 2023-05-10 08:41:55 +01:00
Kerry
81a4498a8f
Apply strictNullChecks to src/utils/*!exportUtils (#10455
* Apply `strictNullChecks` to `src/utils/exportUtils`

* strict fix

* fix strictNullChecks issues in some utils

* fix error message

* test coverage

* lint

* more strictNullChecks

* small optimisation for getUniqueRoomsWithIndividuals

* tidy

* test coverage
2023-04-03 09:26:55 +01:00
Justin Carlson
332d1268a4
Fix creatorUserId is required error when opening sticker picker (#10423)
* Use sender if sticker picker widget does not have creatorUserId

* Add creatorUserId when creating sticker picker widgets

* Add e2e test for stickerpicker widget missing creatorUserId

* Fix stickerpicker widget event data in e2e tests

* Fix userId in stickerpicker e2e tests

* Fix linter errors
2023-03-23 17:25:16 +00:00
Michael Telatynski
9c816bb720
Conform more code to strictNullChecks (#10383
* Update matrix-widget-api

* Conform more code to `strictNullChecks`

* Iterate
2023-03-16 10:35:17 +00:00
Dominik Henneke
0cfd97b180
Add API params to mute audio and/or video in Jitsi calls by default (#10376)
Signed-off-by: Dominik Henneke <dominik.henneke@nordeck.net>
2023-03-15 13:51:00 +01:00
Michael Telatynski
c0e40217f3
Apply strictNullChecks to src/stores/widgets/* (#10324)
* Apply `strictNullChecks` to src/stores/widgets/*

* Iterate

* Iterate
2023-03-08 11:48:58 +00:00
Michael Telatynski
4574c665ea
Conform more code to strict null checking (#10167)
* Conform more code to strict null checking

* Delint

* Iterate PR based on feedback
2023-02-16 17:21:44 +00:00
Michael Telatynski
da7aa4055e
Conform more of the code base to strict null checking (#10147)
* Conform more of the code base to strict null checking

* More strict fixes

* More strict work

* Fix missing optional type

* Iterate
2023-02-13 17:01:43 +00:00
Michael Telatynski
61a63e47f4
Comply with noImplicitAny (#9940)
* Stash noImplicitAny work

* Stash

* Fix imports

* Iterate

* Fix tests

* Delint

* Fix tests
2023-02-13 11:39:16 +00:00
Michael Telatynski
030b7e90bf
Enable @typescript-eslint/explicit-function-return-type in /src (#9788)
* Enable `@typescript-eslint/explicit-member-accessibility` on /src

* Prettier

* Enable `@typescript-eslint/explicit-function-return-type` in /src

* Fix types

* tsc strict fixes

* Delint

* Fix test

* Fix bad merge
2023-01-12 13:25:14 +00:00
Michael Telatynski
f1e8e7f140
Enable @typescript-eslint/explicit-member-accessibility on /src (#9785)
* Enable `@typescript-eslint/explicit-member-accessibility` on /src

* Prettier
2022-12-16 12:29:59 +00:00
Michael Weimann
526645c791
Apply prettier formatting 2022-12-12 12:24:14 +01:00
Michael Telatynski
d258402186
Typescript updates (#9658)
* Typescript updates

* Update @types/node

* Fix more types
2022-11-30 11:32:56 +00:00
Oliver Sand
9a3ae2398e
Pass language to Jitsi Widget (#9346)
Signed-off-by: Oliver Sand <oliver.sand@nordeck.net>

Signed-off-by: Oliver Sand <oliver.sand@nordeck.net>
2022-10-06 13:19:01 -06:00
Robin
cb735c9439
Element Call video rooms (#9267)
* Add an element_call_url config option

* Add a labs flag for Element Call video rooms

* Add Element Call as another video rooms backend

* Consolidate event power level defaults

* Remember to clean up participantsExpirationTimer

* Fix a code smell

* Test the clean method

* Fix some strict mode errors

* Test that clean still works when there are no state events

* Test auto-approval of Element Call widget capabilities

* Deduplicate some code to placate SonarCloud

* Fix more strict mode errors

* Test that calls disconnect when leaving the room

* Test the get methods of JitsiCall and ElementCall more

* Test Call.ts even more

* Test creation of Element video rooms

* Test that createRoom works for non-video-rooms

* Test Call's get method rather than the methods of derived classes

* Ensure that the clean method is able to preserve devices

* Remove duplicate clean method

* Fix lints

* Fix some strict mode errors in RoomPreviewCard

* Test RoomPreviewCard changes

* Quick and dirty hotfix for the community testing session

* Revert "Quick and dirty hotfix for the community testing session"

This reverts commit 37056514fbc040aaf1bff2539da770a1c8ba72a2.

* Fix the event schema for org.matrix.msc3401.call.member devices

* Remove org.matrix.call_duplicate_session from Element Call capabilities

It's no longer used by Element Call when running as a widget.

* Replace element_call_url with a map

* Make PiPs work for virtual widgets

* Auto-approve room timeline capability

Because Element Call uses this now

* Create a reusable isVideoRoom util
2022-09-16 11:12:27 -04:00
Robin
4dd74261b5
Hide screenshare button in video rooms on Desktop (#9045)
* Hide screenshare button in video rooms on Desktop

* Fix tests
2022-07-12 08:23:35 -04:00
Robin
f152310c08
Use random widget IDs for video rooms (#8739) 2022-06-02 09:10:22 -04:00
Oliver Sand
f7ba3f07cd
Support avatar_url in the scalar client API (#8550)
* Support avatar_url in the scalar client API

Signed-off-by: Oliver Sand <oliver.sand@nordeck.net>

* Fix return type

* Remove automatic upload

* Remove return type

* Fix indention
2022-05-19 16:22:38 -06:00
Robin
765a715fce
Remove duplicate tooltip from user pills (#8512)
* Remove duplicate tooltip from user pills

* Fix test
2022-05-06 21:26:32 +00:00
Travis Ralston
eca8494c66
Merge pull request #8522 from matrix-org/travis/widget-screenshots
Move widget screenshots labs flag to devtools
2022-05-06 13:21:47 -06:00
Travis Ralston
e52c7fe03a Remove dead function in WidgetUtils relating to screenshots/capabilities
We always approve the capability these days
2022-05-06 13:09:53 -06:00
Travis Ralston
2aec197354 Remove feature_many_integration_managers
Rationale: If we want this feature, design will do it properly.
2022-05-06 12:46:26 -06:00
Robin
1f64835fab
Update video rooms to new design specs (#8207)
* Remove radio component

* "Voice room" → "video room"

* Remove interactivity from video room tiles

* Update connection state when joining via widget

* Simplify room header buttons for video rooms

* Split out video room creation into a separate menu option

* Simplify room options for video rooms

* Update video room tile layout

* Tell the Jitsi widget whether it's a video channel

* Update tests

* "Voice" → "video" in more places

* Fix tests

* Re-add frame to immersive Jitsi widgets

* Comment ack

* Make updateDevices more readable

* Type FacePile
2022-04-01 14:36:10 +00:00
Robin
cfabcdda35
Voice rooms prototype (#8084)
* Add voice room labs flag

Signed-off-by: Robin Townsend <robin@robin.town>

* Add more widget actions for interacting with Jitsi

Signed-off-by: Robin Townsend <robin@robin.town>

* Factor out a more generic Jitsi creation utility

Signed-off-by: Robin Townsend <robin@robin.town>

* Add utilities for managing voice channels

Signed-off-by: Robin Townsend <robin@robin.town>

* Enable creation of voice rooms

Signed-off-by: Robin Townsend <robin@robin.town>

* Force a maximized view of voice channel widgets

Signed-off-by: Robin Townsend <robin@robin.town>

* Add voice channel store

Signed-off-by: Robin Townsend <robin@robin.town>

* Factor out a more generic FacePile

Signed-off-by: Robin Townsend <robin@robin.town>

* Implement room tile changes for voice rooms

Signed-off-by: Robin Townsend <robin@robin.town>

* Add interactive radio component to the left panel

Signed-off-by: Robin Townsend <robin@robin.town>

* Test voice rooms

Signed-off-by: Robin Townsend <robin@robin.town>

* Update name of call room type

Signed-off-by: Robin Townsend <robin@robin.town>

* Clarify that voice rooms are under development

Signed-off-by: Robin Townsend <robin@robin.town>

* Use readonly

Signed-off-by: Robin Townsend <robin@robin.town>

* Move acks to the end of handlers

Signed-off-by: Robin Townsend <robin@robin.town>

* Add comment about avatar URLs coming from Jitsi

Signed-off-by: Robin Townsend <robin@robin.town>

* Don't use unicode ellipses

for translation reasons?

Signed-off-by: Robin Townsend <robin@robin.town>

* Fix tests

Signed-off-by: Robin Townsend <robin@robin.town>

* Fix tests, again

Signed-off-by: Robin Townsend <robin@robin.town>

* Remove unnecessary export

Signed-off-by: Robin Townsend <robin@robin.town>

* Ack Jitsi events when we wait for them

Signed-off-by: Robin Townsend <robin@robin.town>
2022-03-22 16:14:11 -06:00
Robin
744eeb53fe
Don't assume that widget IDs are unique (#8052)
* Don't assume that widget IDs are unique

Signed-off-by: Robin Townsend <robin@robin.town>

* Don't remove live tiles that don't exist

Signed-off-by: Robin Townsend <robin@robin.town>

* Add unit test for AppTile's live tile tracking

Signed-off-by: Robin Townsend <robin@robin.town>
2022-03-15 12:15:26 +00:00
Michael Telatynski
c257bc3f7a
Prefer RoomStateEvent.Update where possible as it fires far less (#7878) 2022-02-24 14:39:25 +00:00
Michael Telatynski
7fa01ffb06
Improve typing around event emitter handlers (#7816) 2022-02-22 12:18:08 +00:00
Aaron Raimist
bdc56be863
Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-10-22 17:23:37 -05:00
Dariusz Niemczyk
5290afcc4c Replace console.warn with logger.warn
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Dariusz Niemczyk
5e73a212f4 Replace console.error with logger.error
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Germain
c7c29f2119
Merge pull request #6365 from psrpinto/fix/naming 2021-07-15 08:07:03 +01:00
Paulo Pinto
76157a7b48 Standardise casing of integration manager
Replace instances of 'Integration Manager' with 'Integration manager', when at start of
sentence, or 'integration manager' when not.

Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
2021-07-13 16:28:44 +01:00
Michael Telatynski
bd175c6f40 Improve and consolidate typing 2021-07-10 15:43:46 +01:00
J. Ryan Stinnett
ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Michael Telatynski
0ae4e7b11d Fix typescript types 2021-06-18 16:21:46 +01:00
Michael Telatynski
3e38d92fa4 Fix up some more type defs 2021-06-17 14:49:27 +01:00
Travis Ralston
cd82d97c3e Use randomly generated conference names for Jitsi
Fixes https://github.com/vector-im/element-web/issues/15205
Replaces https://github.com/matrix-org/matrix-react-sdk/pull/5322

This change uses a random ID for the Jitsi conference name to avoid any badly-named Jitsi calls, and overrides the "subject" (title) of the call so end users aren't typically exposed to the random ID.
2021-02-15 08:53:37 -07:00
J. Ryan Stinnett
2c313e0c5e Add managed hybrid call widgets when supported
If your homeserver is configured with an experiment `widget_build_url`, this
will take over the functionality of the call buttons and turn them into a
general widget installer.
2021-01-29 14:45:25 +00:00