* Make the enableEncryptedStateEvents property on MatrixClient public
* fixup! Make the enableEncryptedStateEvents property on MatrixClient public
tsdoc for enableEncryptedStateEvents
* fixup! Make the enableEncryptedStateEvents property on MatrixClient public
Improve the description of enableEncryptedStateEvents
* Make token refresher init itself lazily
It needs a network connection to do the init, so this would fail if
a client tried to do it at startup with no internet, causing the token
to just never be refreshed.
This just changes the API (compatibly) to do the init lazily.
The promise is kept is retain backwards compat, it can be removed
later.
* Make deviceId protected
* Fix tests
* feat: Import room key bundles when received after invite.
* tests: Add spec test for room key bundle arriving after invite accepted.
* chore: Fix code quality issue (unnecessary async function).
* docs: Tidy up comments.
* refactor: Simplify key bundle importing after invite to one entrypoint.
- Remove `onReceiveToDeviceEvent` from `CryptoBackend`.
- Copy old room key bundle importing logic to
`preprocessToDeviceEvents`.
* refactor: Move late bundle importing to main preprocess loop.
* fix: Use `Map` over `Record` to prevent prototype pollution.
* Avoid use of Optional type
As we are likely to remove dependency on matrix-events-sdk
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Tweak params
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Prettier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Handle all response fields from /context API being optional
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Simplify
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update all non-major dependencies
* Make knip happy
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>
* Re-add truthy check on room name/avatar/alias events
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add regression test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update jest to v30
* Update snapshots & imports
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Make jest happier
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>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
* Delayed event management: split endpoints, no auth
Add dedicated endpoints for each of the cancel/restart/send actions for
updating a delayed event, and make them unauthenticated.
Also keep support for the original endpoint where the update action is
in the request body, and make the split-endpoint versions fall back to
it if they are unsupported by the homeserver.
* Don't @link parameters in method docstrings
as TypeDoc doesn't support that
* Reduce code duplication
* Reduce code duplication again
* Add a little more test coverage
* Use split delayed event management for widgets
* Specify which eslint rule to ignore
Co-authored-by: Will Hunt <2072976+Half-Shot@users.noreply.github.com>
* Restore embedded non-split delay evt update method
Keep supporting it to not break widgets that currently use it.
Also add back the test for it.
* Deprecate the non-split delay evt update methods
* Comment to explain fallback to non-split endpoint
* Add backwards compatibility with authed endpoints
* Comment backwards compatibility helper method
* Await returned promises
because `return await promise` is at least as fast as `return promise`
---------
Co-authored-by: Will Hunt <2072976+Half-Shot@users.noreply.github.com>