Commit Graph

58 Commits

Author SHA1 Message Date
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
Robin
103b60dfb5
Implement MSC3819: Allowing widgets to send/receive to-device messages (#8885)
* Implement MSC3819: Allowing widgets to send/receive to-device messages

* Don't change the room events and state events drivers

* Update to latest matrix-widget-api changes

* Support sending encrypted to-device messages

* Use queueToDevice for better reliability

* Update types for latest WidgetDriver changes

* Upgrade matrix-widget-api

* Add tests

* Test StopGapWidget

* Fix a potential memory leak
2022-08-10 08:57:56 -04:00
Travis Ralston
d8a939df5d
Use & enforce snake_case naming convention on config.json settings (#8062)
* Document and support the established naming convention for config opts

This change:
* Rename `ConfigOptions` to `IConfigOptions` to match code convention/style, plus move it to a dedicated file
* Update comments and surrounding documentation
* Define every single documented option (from element-web's config.md)
* Enable a linter to enforce the convention
* Invent a translation layer for a different change to use
* No attempt to fix build errors from doing this (at this stage)

* Add demo of lint rule in action

* Fix all obvious instances of SdkConfig case conflicts

* Fix tests to use SdkConfig directly

* Add docs to make unset() calling safer

* Appease the linter

* Update documentation to match snake_case_config

* Fix more instances of square brackets off SdkConfig
2022-03-18 10:12:36 -06:00
Michael Telatynski
7fa01ffb06
Improve typing around event emitter handlers (#7816) 2022-02-22 12:18:08 +00:00
Michael Telatynski
f4a6219c88
Replace kick terminology with Remove from chat (#7469) 2022-01-14 13:08:34 +00:00
Michael Telatynski
ec02f82416
Update default Jitsi URLs to meet.element.io (#7514) 2022-01-11 16:15:20 +00:00
Aaron Raimist
7b94e13a84 Merge branch 'develop' into sort-imports
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-12-09 08:34:20 +00:00
AndrewFerr
a8a34ea756
Remove leading slash from /addwidget Jitsi confs (#7175)
* Remove leading slash from /addwidget Jitsi confs

Fixes https://github.com/vector-im/element-web/issues/19839

Signed-off-by: Andrew Ferrazzutti <fair@miscworks.net>

* Make requested changes

Signed-off-by: Andrew Ferrazzutti <fair@miscworks.net>
2021-11-22 18:34:55 -07:00
Aaron Raimist
bdc56be863
Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-10-22 17:23:37 -05: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
Dariusz Niemczyk
2d1d42b90e
Globally replace all console.logs via codemod (#6827)
This commit replaces all the `console.log` to `logger.log` via an automated script.
Related: vector-im/element-web#18425
2021-09-21 09:48:09 -06:00
Travis Ralston
f912d9d1b4 Appease the linter 2021-08-25 18:25:20 -06:00
Travis Ralston
289ac34764 Add support for MSC2762's timeline functionality
See https://github.com/matrix-org/matrix-widget-api/pull/41
2021-08-25 18:16:40 -06:00
Michael Telatynski
ce78cdf4ad Conform to new react and typescript eslint rules 2021-07-19 22:43:11 +01:00
J. Ryan Stinnett
ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Travis Ralston
5093657c71 Remove "read" level language for new API scope 2021-05-14 14:17:10 -06:00
Travis Ralston
e04490284d Support UI for MSC2876: Widgets reading events from rooms
MSC: https://github.com/matrix-org/matrix-doc/pull/2876
Fixes https://github.com/vector-im/element-web/issues/15747
Requires https://github.com/matrix-org/matrix-widget-api/pull/34
2021-05-03 21:50:25 -06:00
J. Ryan Stinnett
f8192a8314 Support managed hybrid widgets from config
This adds additional support to the managed hybrid widget experiment to also
support pulling the build URL from Element config.
2021-01-29 16:26:34 +00: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
Travis Ralston
ea61c979f9 Try a different string 2021-01-16 23:29:27 -07:00
Travis Ralston
7e0cf5c783 Wire up MSC2931 widget navigation
Fixes https://github.com/vector-im/element-web/issues/16006
**Requires https://github.com/matrix-org/matrix-widget-api/pull/27**
2020-12-29 12:35:48 -07:00
Travis Ralston
dec47a260c Appease the linter 2020-11-19 12:12:00 -07:00
Travis Ralston
86897e8faf Small bug fix to the copy 2020-11-19 12:08:41 -07:00
Travis Ralston
21663314ee Minor touchups to the dialog 2020-11-19 11:24:17 -07:00
Travis Ralston
ddd8bdc00e Move all the capability copy to its own class 2020-11-19 11:15:42 -07:00
Travis Ralston
f27071ee64 Transition all remaining messaging over (delete the old stuff) 2020-09-30 20:20:31 -06:00
Travis Ralston
cd93b2c22a First rough cut of cutting AppTile over to the ClientWidgetApi 2020-09-29 14:14:51 -06:00
Travis Ralston
1ffc6d5bd3 Make the hangup button do things for conference calls
Behaviour constraints:
* If you're not in the conference, use a grey button that does nothing.
* If you're in the conference, show a button:
  * If you're able to modify widgets in the room, annotate it in the context of ending the call for everyone and remove the widget. Use a confirmation dialog.
  * If you're not able to modify widgets in the room, hang up.

For this we know that persistent Jitsi widgets will mean that the user is in the call, so we use that to determine if they are actually participating.
2020-09-16 14:35:55 -06:00
Jason Robinson
3af0d33e3b Make a few fields readonly
As they're only set in the constructor.
2020-09-08 13:00:00 +03:00
Jason Robinson
c19336591e Add OpenID token request flow to WidgetApi
As per MSC1960.
2020-09-08 12:59:05 +03:00
Jason Robinson
d2e9ea58fd Add links to prosody openidtoken-jwt auth docs 2020-09-07 19:22:40 +03:00
Jason Robinson
ae83222d52 Add GetOpenIDCredentials constant to WidgetApi 2020-09-07 14:32:00 +03:00
Jason Robinson
5d8a082eb1 Add Jitsi auth check
Checks for auth needed by looking up a well-known file from the preferred Jitsi domain. No file existing will assume no auth.
2020-09-04 10:03:30 +03:00
Michael Telatynski
0da31de5ad
Merge pull request #5086 from matrix-org/t3chguy/notifications12
Create Map comparison utilities and convert Hooks to Typescript
2020-08-05 16:28:52 +01:00
Michael Telatynski
6220f50360 delint 2020-08-05 09:28:02 +01:00
J. Ryan Stinnett
ce226ab534 Replace Riot with Element in docs and comments
This only covers the simple cases of references to issues and repos. More
complex areas, such as deployment scripts, will be handled separately.

Part of https://github.com/vector-im/element-web/issues/14864
2020-08-03 18:33:36 +01:00
Jorik Schellekens
b110639c76 Merge remote-tracking branch 'origin' into joriks/eslint-config 2020-06-29 16:49:33 +01:00
Jorik Schellekens
7699aafcaf Use new eslint package- fix lint issues in ts and js 2020-06-23 17:01:19 +01:00
Travis Ralston
1fe3e33dbf Factor out cloning to a util and use it everywhere 2020-06-22 14:14:43 -06:00
Travis Ralston
e4aeabe5a6
Merge pull request #4444 from pv/jitsi-popout-immediate-join
Ensure active Jitsi conference is closed on widget pop-out
2020-06-07 20:22:39 -06:00
Michael Telatynski
d92f742205 Fix Jitsi wellknown hooks some more
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-03 14:09:45 +01:00
Michael Telatynski
a674131a8c Fix Jitsi wellknown hooks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-03 13:58:17 +01:00
Michael Telatynski
366c60cb2d fix ee listener add
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-01 22:57:51 +01:00
Michael Telatynski
cbc2aee746 Add js-sdk mechanism for polling client well-known for config
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-01 22:35:16 +01:00
Pauli Virtanen
38962560ac Style fixes
Signed-off-by: Pauli Virtanen <pav@iki.fi>
2020-04-28 02:29:20 +03:00
Pauli Virtanen
cf4137d4b2 Make WidgetAPI an EventEmitter + use for terminate + cleanups
Use EventEmitter for emitting events, rename terminate event code,
plus misc cleanups from review.

Signed-off-by: Pauli Virtanen <pav@iki.fi>
2020-04-22 19:37:52 +03:00
Pauli Virtanen
352ea29d17 Implement widget ReceiveTerminate capability
Signed-off-by: Pauli Virtanen <pav@iki.fi>
2020-04-22 19:37:52 +03:00
Pauli Virtanen
1f2bf0485e Implement widget API for signaling the widget to gracefully terminate
In theory, widgets could use iframe unload/beforeunload events for
cleanup, but in practice browsers have restrictions on what can be done
in those events which may not give sufficient time for clean
termination.

Signed-off-by: Pauli Virtanen <pav@iki.fi>
2020-04-22 19:37:52 +03:00