Commit Graph

71 Commits (5fbc5af884c770c05215f72cf465901d8fbc310a)

Author SHA1 Message Date
Tulir Asokan 5fbc5af884
Add support for rendering media captions (#43)
* Add support for rendering media captions

* Run prettier

* Deduplicate body props

* Add basic test

* Fix import order in test

* Fix test?
2024-10-04 13:58:22 +00:00
David Langley 491f0cd08a
Change license (#13)
* Copyright headers 1

* Licence headers 2

* Copyright Headers 3

* Copyright Headers 4

* Copyright Headers 5

* Copyright Headers 6

* Copyright headers 7

* Add copyright headers for html and config file

* Replace license files and update package.json

* Update with CLA

* lint
2024-09-09 13:57:16 +00:00
Michael Telatynski c1d4199b02
Upgrade target to es2022 (#12852)
* Upgrade target to es2021

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

* Upgrade to es2022

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

* Fix babel config

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

* Fix React contexts

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

* Fix types

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

* Fix React state

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

* Iterate

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-01 16:14:28 +00:00
Michael Telatynski b6addb4118
Fix React contexts (#12855) 2024-08-01 13:01:05 +01:00
David Baker a0c029c3c1
Fix alignment of RTL messages (#12837)
* Fix alignment of RTL messages

Inspired by https://github.com/matrix-org/matrix-react-sdk/pull/5453 but
hopefully with the edited marker in the right place.

This is a PoC: types aren't correct and the style needs pulling
out to a class. Plus it would probably need more visual tests added.
If this looks acceptable, I can make these changes.

* Fix spacing between text and edited annotation

* Update snapshot

* Update more snapshots

* More snapshots

* More more snapshots

* Split out style

* Fix emotes

This will cause them always be right-justified if the display name
is rtl.

* Add playwright test for ltr/rtl message rendering

* Better snapshots

* Await on message sending

* Better waiting, hopefully

* Old snapshot files

* Really hopefully fixed screenshots this time

* Don't include the message action bar in the screenshots
2024-07-31 22:23:46 +00:00
David Baker 272a66baa5
Split up bodyToHtml (#12840)
* Split up bodyToHtml

This (very incrementally) splits up the bodyToHtml function to avoid
the multiple return types and hopefully make it a touch easier to
comprehend. I'd also like to see what the test coverage says about
this, so this is is somewhat experimental. This shouldn't change
any behaviour but the comments in this function indiciate just how
subtle it is.

* Remove I prefix

* Missed emoji formatting part
2024-07-30 13:35:16 +00:00
Florian Duros 357f882ff5
Move to `AccessibleTooltipButton` in messages (#12487) 2024-05-14 08:22:28 +00:00
Florian Duros 5354e6efea
Use new compound tooltip 2024-04-12 14:56:23 +02:00
Michael Telatynski 4a05de485e
Improve code-splitting of highlight.js and maplibre-gs libs (#12349)
* Dynamic import anything that touches maplibre-gs

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

* Dynamic import anything that touches highlight.js

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

* Fix types

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

* Fix tests

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-03-20 13:39:20 +00:00
renovate[bot] 56d8ef3640
Update dependency @vector-im/compound-web to v2 (#12133)
* Update dependency @vector-im/compound-web to v2

* Update Tooltip props

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

* Include TooltipProvider in MatrixChat

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

* Fix pillify & tooltipify

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

* Update tests to use TooltipProvider where necessary

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

* Fix tooltips in Modals, ContextMenus, PersistedElements, Spoiler, HtmlExport

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

* Update tests

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

* delint

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

* Update tests

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

* Fix tooltips in HTMLExport

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

* Don't pass mountAsChild to DOM

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

* prettier

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

* Stabilise test

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-01-11 19:56:36 +00:00
Michael Telatynski e1cfde0c6e
Migrate more strings to translation keys (#11694) 2023-10-03 19:17:26 +01:00
Michael Telatynski 41a2325a2a
Migrate more strings to translation keys (#11683) 2023-10-02 13:52:27 +01:00
Michael Telatynski 54c88c57ed
Migrate more strings to translation keys (#11665) 2023-09-25 18:12:41 +01:00
Michael Telatynski df4a2218d7
Align `action_*` strings with Element X project in Localazy (#11437) 2023-08-22 20:55:15 +01:00
Michael Telatynski ac70f7ac9b
Fix instances of double translation and guard translation calls using typescript (#11443)
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2023-08-22 16:32:05 +01:00
Michael Telatynski 033c600fa2
Switch to importing @types/{event,partials} from main js-sdk export (#11369) 2023-08-08 10:12:12 +00:00
Michael Telatynski 90b572f074
Inhibit url previews on MXIDs containing slashes same as those without (#11160) 2023-07-03 15:56:58 +00:00
Michael Telatynski 280f6a9d93
Use MatrixClientPeg::safeGet in src/components/views/* (#10987) 2023-06-15 08:46:19 +01:00
Michael Telatynski 30429df948
Eliminate the use of MatrixClientPeg in utils (#10910) 2023-05-23 16:24:12 +01:00
Michael Telatynski 82e32035fd
Conform more of the codebase to `strictNullChecks` (#10842) 2023-05-11 09:56:56 +01:00
Michael Telatynski 499d8110b3
Fix emitter handler leak in ThreadView (#10803)
* Fix emitter handler leak in ThreadView

* Help gc react stateNodes
2023-05-05 15:05:58 +00:00
Michael Telatynski cefd94859c
Conform `src/components/views/messages/*` code to `strictNullChecks` (#10461) 2023-03-29 08:22:35 +01:00
Michael Weimann a86a8e7f8e
Pillify permalinks to rooms and users (#10388) 2023-03-16 15:01:09 +01:00
Michael Weimann 05e3fb09d6
Roll back pillify everything (#10370) 2023-03-14 11:56:14 +01:00
Michael Telatynski 503df62191
Conform more of the codebase to `strictNullChecks` (#10358
* Conform more of the codebase to `strictNullChecks`

* Fix types

* Iterate

* Iterate
2023-03-13 15:07:20 +00:00
Michael Weimann ac3c95fa84
Directly convert Matrix and room Ids to pills (#10267) 2023-03-02 11:41:17 +01: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 2bde31dcff
Switch to linkify-react for element Linkification as it handles React subtrees without exploding (#10060
* Switch to linkify-react instead of our faulty implementation

Fixes a series of soft crashes where errors include "The node to be removed is not a child of this node."

* Improve types

* Fix types

* Update snapshots

* Add test

* Fix test
2023-02-03 08:59:21 +00:00
Harnoor Singh 97f6431d60
Migrate highlight.js API call in TextualBody (#9923)
Co-authored-by: Michael Weimann <michaelw@matrix.org>
Fixes https://github.com/vector-im/element-web/issues/22233
2023-01-31 09:48:34 +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
Travis Ralston b642df98e9 Revert "Revert "Remove extensible events v1 experimental rendering (#9881)""
This reverts commit b4f2db22df.
2023-01-10 13:51:56 -07:00
Travis Ralston b4f2db22df Revert "Remove extensible events v1 experimental rendering (#9881)"
This reverts commit 67396020e8.
2023-01-10 13:31:48 -07:00
Travis Ralston 67396020e8
Remove extensible events v1 experimental rendering (#9881)
* Remove extensible events v1 experimental rendering

With the changes to extensible events in v2 largely being contained to a room version, we don't need to have this code or the labs flag anymore. If the labs flag becomes useful in the future, it will be re-added.

* Run prettier
2023-01-10 09:21:03 -07: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
Florian Duros 5987a6889b
Add styling to editing 2022-10-20 17:31:17 +02:00
Florian Duros 460f60e99d
First attempt to make the edition works in the WysiwygComposer 2022-10-19 12:45:51 +02:00
Michael Telatynski e63072e21f
Fixes around URL tooltips and in-app matrix.to link handling (#9139)
* Add regression test for tooltipify exposing raw HTML

* Handle m.to links involving children better

* Comments

* Fix mistaken assertion
2022-08-09 15:37:55 +01:00
Michael Telatynski e576347b62
Fix pinned messages not re-linkifying on edit (#9042)
* Fix pinned messages not re-linkifying on edit

* Fix tests
2022-07-12 07:27:45 +01:00
Johannes Marbach cc64e8eace
Unbreak URL preview for formatted links with tooltips (#9022)
* Unbreak URL preview for formatted links with tooltips

Fixes: vector-im/element-web#22764
Signed-off-by: Johannes Marbach <johannesm@element.io>

* Flip back the flag default value 🤦
2022-07-08 09:51:37 +00:00
Johannes Marbach 6f21a155a4
Add option to display tooltip on link hover (#8394)
* Add option to display tooltip on link hover

This makes it possible for platforms like Electron apps, which lack
a built-in URL preview in the status bar, to enable tooltip previews
of links.

Relates to: vector-im/element-web#6532
Signed-off-by: Johannes Marbach <johannesm@element.io>

* Gracefully handle missing platform

* Use public access modifier

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Use exact inequality

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Document getAbsoluteUrl

* Appease the linter

* Clarify performance impact in comment

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Use URL instead of anchor element hack

* Wrap anchor in tooltip target and only allow focus on anchor

* Use optional chaining

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* Use double quotes for consistency

* Accumulate and unmount tooltips and extract tooltipify.tsx

* Fix indentation

* Blur tooltip target on click

* Remove space

* Mention platform flag in comment

* Add (simplistic) tests

* Fix lint errors

* Fix lint errors ... for real

* Replace snapshot tests with structural assertions

* Add missing semicolon

* Add tooltips in link previews

* Fix copyright

Co-authored-by: Travis Ralston <travpc@gmail.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-07-06 09:43:30 +00:00
Michael Telatynski 3c5c2bef6d
Remove Piwik support (#8835)
* Remove all mentions of Piwik

* Kill off all consumer of the old Piwik Analytics module

* Simplify ModalManager interface

* i18n

* Attempt to fix old e2e tests

* Remove unused component

* Iterate PR
2022-06-14 17:51:51 +01:00
Travis Ralston 4057833036 Merge branch 'develop' into travis/remove-skinning 2022-04-05 10:50:37 -06:00
Michael Telatynski 27e48062b6
Apply tweaks to Thread list as per design spec (#8149)
Co-authored-by: Germain Souquet <germains@element.io>
2022-04-05 17:01:34 +01:00
Travis Ralston 997d6d40bf Step 1: Remove all usage of `@replaceableComponent` 2022-03-28 14:02:31 -06:00
Michael Telatynski 8fccef86d8
Wire up drag-drop file uploads for the thread view (#7860) 2022-02-22 11:14:56 +00:00
Michael Telatynski 76fb2abae1
Consolidate, simplify and improve copied tooltips (#7799) 2022-02-14 23:54:46 +00:00
J. Ryan Stinnett fad65f9582
Add body link fallback handler for in-app navigation (#7627) 2022-01-25 14:31:00 +00:00