Commit graph

115 commits

Author SHA1 Message Date
Michael Telatynski
f0ee7f7905
Merge matrix-react-sdk into element-web
Merge remote-tracking branch 'repomerge/t3chguy/repomerge' into t3chguy/repo-merge

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-10-15 15:32:09 +01:00
R Midhun Suresh
91e84f7951
Upgrade to latest compound-web package ()
* Upgrade to latest compound-web package

* Use a custom render function for jest tests

This way we don't need to manually wrap our components with
<TooltipProvider>

* Pin wrap-ansi to fix broken yarn install

* Add playwright helper to find tooltip from element

and use it in the failing test

* Exclude floating-ui divs/spans from axe testing

This is rendered outside .MatrixChat by compound and contains all the
tooltips.

* Wrap outermost components with TooltipProvider

* Remove onChange and use onSelect for toggle

* Fix jest tests and update snapshots

* Use vector-im/matrix-wysiwig

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-10-14 16:11:58 +00:00
Michael Telatynski
7ef8663388
Prefer wrapped Compound React icon assets ()
* Prefer wrapped Compound React icon assets

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

* Add eslint rule for CDT svg imports

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

* Update snapshots

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

* Fix height

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

* Iterate

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

* Update snapshots

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-10-04 12:42:15 +00:00
Florian Duros
33198cca35
Use new AES functions () 2024-10-01 14:12:46 +00:00
Florian Duros
fe657027bd
Update to use non deprecated methods to decode recovery key ()
* Replace `MatrixClient.keyBackupKeyFromRecoveryKey` by `decodeRecoveryKey`

* Replace `MatrixClient.isValidRecoveryKey` by local check with `decodeRecoveryKey`

* Replace old `decodeRecoveryKey` import

* Remove `matrix-js-sdk/src/crypto/recoverykey` import of  eslint exception

* Add tests for `RestoreKeyBackupDialog`
2024-09-19 15:39:20 +00:00
Florian Duros
490746e56a
Update to use non deprecated methods to derive key from passphrase ()
* Replace `deriveKey` call by `deriveRecoveryKeyFromPassphrase`

* Remove `matrix-js-sdk/src/crypto/key_passphrase` import of eslint exception
2024-09-19 13:41:11 +00:00
Timo
3c370c6cbc
Remove MatrixRTC realted import ES lint exceptions using a index.ts for matrixrtc ()
* update restricted import rules for matrixrtc

* review

* upgrade matrix-js-sdk

* add missing import
2024-07-25 12:49:41 +00:00
Richard van der Hoff
b2a89151e6
Remove redundant call to setCrypto ()
Since , this thing is a no-op.
2024-07-08 10:57:54 +00:00
Robin
c61eca8c24
Don't consider textual characters to be emoji ()
* Don't consider textual characters to be emoji

We were using emojibase-regex to match emoji within messages. However, the docs (https://emojibase.dev/docs/regex/) state that this regex matches both emoji and text presentation characters. This is not what we want, and will result in false positives for characters like '↔' that could turn into an emoji if paired with a variation selector. Unfortunately, none of the other regexes provided by Emojibase do what we want either (https://github.com/milesj/emojibase/issues/174). In the meantime, browser support for the RGI_Emoji character sequence class has made it feasible to write an emoji regex by hand, so that's what I've done.

* Add a fallback for BIGEMOJI_REGEX as well
2024-07-04 17:48:07 +00:00
Richard van der Hoff
489bc32674
Remove references to some deprecated js-sdk identifiers ()
* IKeyBackupInfo -> KeyBackupInfo

* ICryptoCallbacks -> CryptoCallbacks

* IRoomEncryption -> RoomEncryptionEventContent

* MEGOLM_ALGORITHM -> a single local constant

* UserTrustLevel -> UserVerificationStatus
2024-07-04 15:50:07 +00:00
Michael Telatynski
8b4e3e6647
Replace setImmediate with setTimeout () 2024-06-13 15:15:59 +01:00
Michael Telatynski
a0eb94704e
Conform to no-floating-promises () 2024-06-12 17:17:29 +01:00
Michael Telatynski
1677ed1be0
MSC4108 support OIDC QR code login ()
Co-authored-by: Hugh Nimmo-Smith <hughns@matrix.org>
2024-06-06 09:57:28 +01:00
Richard van der Hoff
04b5b587a1
Expected UTDs: report a different Posthog code ()
* `DecryptionFailureTracker`: stronger typing

Use `DecryptionFailureCode` rather than string

* `DecryptionFailureTracker`: remove use of `DecryptionError`

The second argument to `MatrixEventEvent.Decrypted` callbacks is deprecatedf,
and we can get the info we need direct from the event. This means that we no
longer need to reference the internal `DecryptionError` class in the js-sdk.

* `DecryptionFailureTracker`: use a different Posthog code for historical UTDs

* Update for new UTD error codes
2024-04-17 12:36:01 +00:00
Richard van der Hoff
157ca48dff
Remove references to matrix-js-sdk/src/crypto/verification ()
All this stuff is deprecated and has better alternatives now.
2024-03-25 17:44:45 +00:00
Richard van der Hoff
64806d0490
Use test helpers from js-sdk for encrypted events ()
* Use test helpers from js-sdk for encrypted events

Rather than gut-wrenching into the matrix-js-sdk, let's use the newly-exported
test helpers to generate encrypted events.

* Fix up
2024-03-22 15:48:29 +00:00
Richard van der Hoff
d36c1b39fd
Clean up some references to internal js-sdk classes ()
* Fix references to `crypto-api/verification`

This is supposed to be an internal module; use the front door instead.

* `IRecoveryKey` -> `GeneratedSecretStorageKey`

`IRecoveryKey` is just a backwards-compatibility alias for
`GeneratedSecretStorageKey`

* `ISecretStorageKeyInfo` -> `SecretStorage.SecretStorageKeyDescription`

Again, same thing

* `IPassphraseInfo` -> `SecretStorage.PassphraseInfo`

* Remove unused import restriction exceptions
2024-03-22 12:28:13 +00:00
Michael Telatynski
431ae32304
Reuse media content/info types from the js-sdk () 2024-03-11 09:30:00 +00:00
Richard van der Hoff
91020b3d00
Remove references to internal js-sdk type CryptoBackend ()
* Remove references to internal js-sdk type `CryptoBackend`

* Use `Paramteters` to avoid `ts-ignore`
2024-03-06 22:59:41 +00:00
Michael Telatynski
5983528a8d
Remove Cypress & Playwright in their entirety () 2024-01-16 09:48:49 +00:00
Michael Telatynski
0f1f056503
Add Playwright end to end testing ()
* Install playwright

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

* Add foundations for writing tests under Playwright

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

* .gitignore juggling

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

* Add tsconfig and fix eslint rules

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-11-21 17:33:32 +00:00
Michael Telatynski
c944a273d0
Convert copy-res to typescript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-09-08 10:33:57 +01:00
Michael Telatynski
99e80dd296
Consume more imports from matrix-js-sdk/src/matrix () 2023-08-23 09:04:25 +00:00
Michael Telatynski
ad73b0c16e
Switch to importing most things from the main matrix-js-sdk export ()
* Switch to importing most things from the main matrix-js-sdk export

* fix imports

* Iterate

* Fix tests
2023-08-15 15:00:17 +00:00
Michael Telatynski
d2c6577024
Switch to importing more things from the main js-sdk export () 2023-08-14 08:58:55 +00:00
Michael Telatynski
ef385e6028
Switch to importing more things from the main js-sdk export () 2023-08-10 08:01:14 +00:00
Michael Telatynski
a1328d8ef7
Switch to importing more things from the main js-sdk export () 2023-08-09 15:10:54 +00:00
Michael Telatynski
c3574c2050
Switch to importing client from main js-sdk export () 2023-08-09 07:18:41 +00:00
Michael Telatynski
033c600fa2
Switch to importing @types/{event,partials} from main js-sdk export () 2023-08-08 10:12:12 +00:00
Michael Telatynski
368b6b9355
Switch to importing models/{event-timeline{,set},user,device,event-status} from main js-sdk export () 2023-08-08 07:16:04 +00:00
Michael Telatynski
24703eea8f
Switch to importing models/event from main js-sdk export () 2023-08-07 08:24:58 +00:00
Michael Telatynski
93b66501f5
Make a11y related lint rules more strict () 2023-08-07 07:57:12 +00:00
Michael Telatynski
e6af09e424
Switch to importing models/room-state & models/room-member from main js-sdk export ()
* 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

* Switch to importing models/room-state & models/room-member from main js-sdk export

* Fix cypress-axe import

* Fix more imports

* Fix cypress-axe import

* Fix bad merge
2023-08-04 11:22:08 +00:00
Michael Telatynski
e67ca33c4a
Switch to importing models/Room from main js-sdk export ()
* 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
47877ba2da
Switch to importing matrix-js-sdk from its main export ()
* 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

* Fix cypress-axe import

* Fix cypress-axe import
2023-08-03 12:56:30 +00:00
Michael Telatynski
f5f31eb7d8
Fix jest/valid-expects lints () 2023-07-13 15:19:44 +00:00
Michael Telatynski
f5b8bccb65
Conform more of the codebase with noImplicitAny and strictNullChecks (
* Conform more of the codebase with `noImplicitAny` and `strictNullChecks`

* Fix tests

* Update src/vector/app.tsx
2023-04-25 09:36:17 +01:00
Kerry
209b65243a
Enable "jsx-a11y/alt-text" and "jsx-a11y/label-has-associated-control" lint rules ()
* enable "jsx-a11y/alt-text" lint rule

* enable "jsx-a11y/label-has-associated-control"
2023-03-14 21:25:11 +00:00
Michael Telatynski
af1ec76149
Fix jest/no-conditional-expect lint and enable it () 2023-03-07 13:58:10 +00:00
Michael Weimann
5398db21ad
Add ESLint Jest () 2023-03-01 16:23:35 +01:00
Andy Balaam
3903e86d9c
Upgrade our eslint config to the latest ()
* Fix lint error in test-utils.ts

* Upgrade eslint config (and separate projects to support it)

* Handle possibility that req.error could be null
2023-03-01 14:44:03 +00:00
Michael Telatynski
35d222bac6
Add @typescript-eslint/no-base-to-string () 2023-02-07 10:08:10 +00:00
Michael Telatynski
030b7e90bf
Enable @typescript-eslint/explicit-function-return-type in /src ()
* 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 ()
* 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 Weimann
1cac306093
Add prettier 2022-12-12 12:20:54 +01:00
Michael Weimann
0277aea0cf
Update eslint-plugin-matrix-org to 0.8.0 2022-12-09 14:31:56 +01:00
Michael Weimann
7921a6cbf8
Apply prettier formatting 2022-12-09 13:28:29 +01:00
Michael Weimann
cbf5c43ae7
Update to eslint-plugin-matrix-org 0.8 ()
* Update to eslint-plugin-matrix-org 0.8

* Exclude some eslint rules for specs

* Fix eslint tests path
2022-11-23 16:24:36 +00:00
Michael Telatynski
172f2f3993
Fix tests and convert to RTL () 2022-10-13 09:22:34 +01:00