Commit Graph

58 Commits (4327b765770521f8a74a717d27cd2eed24e58775)

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