Commit graph

20 commits

Author SHA1 Message Date
Travis Ralston
9350c50f87 Step 6: Refactor event rendering to stop using getComponent
We move all of the event tile rendering into a factory manager for a couple reasons:
1. `EventTile` is uncomfortably large for a file
2. A simple map isn't possible anymore (can't convert the existing maps like `eventTileTypes` to `Record<string, typeof React.Component>` because the types are actually incompatible)

So, by having a factory manager place we can more easily render components without having to use `getComponent()` all over the place, and without lying to ourselves about how simple the event rendering path is.

This change also moves quite a bit of the rendering path into the new `EventTileFactory` file so it can be easily seen by future developers.
2022-03-28 14:02:31 -06:00
Travis Ralston
b667ef9f18 Step 3.2: Stop using getComponent in code 2022-03-28 14:02:31 -06:00
Travis Ralston
997d6d40bf Step 1: Remove all usage of @replaceableComponent 2022-03-28 14:02:31 -06:00
Kerry
e96d9157a9
update location event types (#8022)
* update types

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix tests

Signed-off-by: Kerry Archibald <kerrya@element.io>

* lint

Signed-off-by: Kerry Archibald <kerrya@element.io>

* trigger

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-10 18:03:31 +00:00
Michael Telatynski
5f5bb4a4fe
Consolidate TileShape into TimelineRenderingType (#7843) 2022-02-18 15:56:05 +00:00
Andy Balaam
70a44a8cd6
Enable location sharing (#7703) 2022-02-02 11:44:17 +00:00
Andy Balaam
c4fc20018d
Enable the polls feature (#7581) 2022-01-20 09:40:47 +00:00
Travis Ralston
65987e6b72
Move all polls processing to events-sdk & prep for stable polls (#7517)
* Move all polls processing to events-sdk

This makes polls support the full range of extensible events (both parsing and generation).

* Appease the linter

* Fix & update tests

* Update events-sdk for polls bugfix

* Update events-sdk for typechecking

* Add missing type cast

* Update per review
2022-01-17 10:06:30 -07:00
David Teller
6b870ba1a9
MSC3531 - Implementing message hiding pending moderation (#7518)
Signed-off-by: David Teller <davidt@element.io>
2022-01-17 16:04:37 +01:00
Andy Balaam
1c6a7646fa
Use UnstableValue for all location constants (#7388) 2021-12-15 16:54:11 +00:00
Andy Balaam
43839adec0
Use constants from js-sdk in polls code (#7381) 2021-12-15 14:26:26 +00:00
Aaron Raimist
2e8a93834b Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-12-09 09:10:23 +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
Matthew Hodgson
1262021417
Simple static location sharing (#7135)
Adds maplibre as a dependency, and behind a labs flag, lets users send and receive [MSC3488](https://github.com/matrix-org/matrix-doc/blob/matthew/location/proposals/3488-location.md) style location shares - with backwards compatibility with old school `m.location` `msgtype` location shares too.

For this to work, you have to define a valid maptile server and API in your config.json's `map_style_url`.
2021-12-06 09:45:12 +00:00
Andy Balaam
d705fdd6e4
Display and send votes in polls (#7158)
Co-authored-by: Travis Ralston <travpc@gmail.com>
2021-11-23 10:27:44 +00:00
Andy Balaam
431b69ee49
Display started polls in timeline (without votes) (behind labs setting) (#7088)
* Display started polls in timeline (without votes)

* Update i18n info

* Keep original background colour of poll options, even on hover

* Show full avatar above a poll message
2021-11-10 15:44:57 +00:00
Aaron Raimist
bdc56be863
Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-10-22 17:23:37 -05:00
Jaiwanth
1ed316851a Merge upstream and resolve conflicts 2021-07-21 11:35:27 +05:30
Travis Ralston
d156a56603 Share body prop types with an interface 2021-07-16 15:12:36 -06:00
Travis Ralston
703cf73759 Convert MessageEvent to TS and hoist MediaEventHelper 2021-07-16 15:12:36 -06:00