Commit Graph

2253 Commits

Author SHA1 Message Date
Quentin Gliech
82cb1365fd Record user agents on OAuth 2.0 and compat sessions (#2386)
* Record user agents on OAuth 2.0 and compat sessions

* Add tests for recording user agent in sessions
2024-02-22 10:01:32 +01:00
Quentin Gliech
eb37324f51 Make all compound themes and all locales available in Storybook 2024-02-21 17:52:03 +01:00
Quentin Gliech
980403909a Bump all frontend dependencies 2024-02-21 17:13:11 +01:00
Quentin Gliech
d3c799b3ae Save which user session created a compat session
This also exposes the user session in the GraphQL API, and allow
filtering on browser session ID on the app session list.
2024-02-21 11:55:58 +01:00
Quentin Gliech
ed75c715f5 Remove the unique constraint on device IDs on compatibility sessions
In OAuth 2.0 sessions, we can have multiple sessions for the same device
anyway, so this constraint doesn't exactly make sense.

Fixes #2033
Fixes #2312
2024-02-20 15:50:20 +01:00
Jason Robinson
ee33697a3c Ignore Synapse appservice users in syn2mas
These users don't need to be migrated as Synapse handles appservices itself.
2024-02-20 12:09:41 +01:00
Quentin Gliech
6cccb1c127 Make sure we load current session data in route loaders
This means we should almost never see a loading spinner when navigating
2024-02-20 12:08:50 +01:00
Quentin Gliech
d33d721287 Set the session pagination to use query parameters
Also reverses the order of the sessions to show the most recent ones first.

Fixes #1497
2024-02-20 12:08:50 +01:00
Quentin Gliech
6aeca9b463 Make the layout wider on "account" pages
This also fixes a bug where a double "layout" was applied to the not
found pages.

It also sets the layout min height to use 100svh instead of 100vh, so
that it doesn't unecessarily scroll on iOS.
2024-02-19 17:56:06 +01:00
Quentin Gliech
53e01e235d Remove unnecessary debugging printf in i18n crate 2024-02-19 17:53:45 +01:00
Quentin Gliech
46c02ab1e2 Make sure the locale fallback works as expected
- Also makes sure that the fallback runs in the backend and is then
   picked up by the frontend
 - and explicitely fallback zh-CN to zh-Hans
2024-02-19 11:43:36 +01:00
Quentin Gliech
b046f7c6eb Fix the zh-Hans translation
This had the wrong code in localazy, and I think the Localazy download
action doesn't remove old files, so I did that manually.
2024-02-19 09:56:25 +01:00
sandhose
ba97032ca7 Translations updates 2024-02-17 11:22:41 +01:00
Quentin Gliech
576d8bb791 Move the cross signing reset UI in its own page 2024-02-17 09:48:53 +01:00
Quentin Gliech
58e9e31f2c Make sure all the loader use the abort signal
This makes sure that the loader stops loading when navigating away
2024-02-17 09:48:53 +01:00
Quentin Gliech
60d4223038 Make sure the error boundary & loading spinner don't suspend
This is done by making it possible to render the GenericError, Layout
and Footer with a `dontSuspend` prop. This then sets the `useSuspense`
to `false` in translations, and sets a default translations in case they
haven't been loaded yet.
2024-02-17 09:48:53 +01:00
Quentin Gliech
98fe43210e Upgrade compound-web to remove React warning 2024-02-17 09:48:53 +01:00
Quentin Gliech
5a5630788f Add a TooltipProvider in the storybook preview 2024-02-16 15:11:31 +01:00
Quentin Gliech
2b9041e140 Revamp the confirmation dialog 2024-02-16 15:11:31 +01:00
Quentin Gliech
3b4285067f Update the email list to match the new design 2024-02-16 15:11:31 +01:00
Quentin Gliech
76cdec56f0 Replace Jotai with @tanstack/router (#2359)
* Start replacing jotai with @tanstack/router

* Remove jotai completely

* Move the common layout & reimplement the ?action parameter

This also makes sure everything is properly loaded in the route loader,
and we use fragment where it makes sense

* Change the default error component

* GraphQL API: make the sessions fetchable through node(id: ID!)
2024-02-15 17:19:05 +01:00
Quentin Gliech
b371516bda Finish replacing jotai-urql with bare urql
Mostly remaining was pagination related stuff & fixing tests
2024-02-15 14:17:20 +01:00
Quentin Gliech
630a73680e Replace remaining atomWithQuery with urql except paginated lists 2024-02-15 14:17:20 +01:00
Quentin Gliech
888e94bfd8 Replace all GraphQL mutations with urql 2024-02-15 14:17:20 +01:00
Quentin Gliech
e58062a676 WIP: start replacing jotai-urql with urql 2024-02-15 14:17:20 +01:00
github-actions[bot]
c3e3ff643e 0.8.0 2024-02-09 15:29:13 +00:00
Quentin Gliech
08e48f9709 frontend: upgrade to Vite 5 2024-02-09 15:57:11 +01:00
github-actions[bot]
8969f4cb05 0.8.0-rc.1 2024-02-08 18:15:19 +00:00
dependabot[bot]
d93822111c build(deps): bump rustls-pki-types from 1.1.0 to 1.2.0
Bumps [rustls-pki-types](https://github.com/rustls/pki-types) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/rustls/pki-types/releases)
- [Commits](https://github.com/rustls/pki-types/compare/v/1.1.0...v/1.2.0)

---
updated-dependencies:
- dependency-name: rustls-pki-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 18:44:39 +01:00
Quentin Gliech
dea6b040bf Upgrade compound and fix bad focus rings on inputs 2024-02-08 17:54:10 +01:00
dependabot[bot]
d45fbb96cc build(deps-dev): bump the storybook group in /frontend with 4 updates
Bumps the storybook group in /frontend with 4 updates: [@storybook/addon-essentials](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials), [@storybook/react](https://github.com/storybookjs/storybook/tree/HEAD/code/renderers/react), [@storybook/react-vite](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite) and [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli).


Updates `@storybook/addon-essentials` from 7.6.12 to 7.6.13
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v7.6.13/code/addons/essentials)

Updates `@storybook/react` from 7.6.12 to 7.6.13
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v7.6.13/code/renderers/react)

Updates `@storybook/react-vite` from 7.6.12 to 7.6.13
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v7.6.13/code/frameworks/react-vite)

Updates `storybook` from 7.6.12 to 7.6.13
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v7.6.13/code/lib/cli)

---
updated-dependencies:
- dependency-name: "@storybook/addon-essentials"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: storybook
- dependency-name: "@storybook/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: storybook
- dependency-name: "@storybook/react-vite"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: storybook
- dependency-name: storybook
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: storybook
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:32:30 +01:00
dependabot[bot]
eac0e57428 build(deps): bump the i18next group in /frontend with 1 update
Bumps the i18next group in /frontend with 1 update: [react-i18next](https://github.com/i18next/react-i18next).


Updates `react-i18next` from 14.0.3 to 14.0.5
- [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/react-i18next/compare/v14.0.3...v14.0.5)

---
updated-dependencies:
- dependency-name: react-i18next
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: i18next
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:32:18 +01:00
dependabot[bot]
cee21b566f build(deps-dev): bump the graphql-codegen group
Bumps the graphql-codegen group in /frontend with 2 updates: [@graphql-codegen/cli](https://github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/graphql-codegen-cli) and [@graphql-codegen/client-preset](https://github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/presets/client).


Updates `@graphql-codegen/cli` from 5.0.0 to 5.0.2
- [Release notes](https://github.com/dotansimha/graphql-code-generator/releases)
- [Changelog](https://github.com/dotansimha/graphql-code-generator/blob/master/packages/graphql-codegen-cli/CHANGELOG.md)
- [Commits](https://github.com/dotansimha/graphql-code-generator/commits/@graphql-codegen/cli@5.0.2/packages/graphql-codegen-cli)

Updates `@graphql-codegen/client-preset` from 4.2.1 to 4.2.2
- [Release notes](https://github.com/dotansimha/graphql-code-generator/releases)
- [Changelog](https://github.com/dotansimha/graphql-code-generator/blob/master/packages/presets/client/CHANGELOG.md)
- [Commits](https://github.com/dotansimha/graphql-code-generator/commits/@graphql-codegen/client-preset@4.2.2/packages/presets/client)

---
updated-dependencies:
- dependency-name: "@graphql-codegen/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: graphql-codegen
- dependency-name: "@graphql-codegen/client-preset"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: graphql-codegen
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:32:09 +01:00
dependabot[bot]
77f114648b build(deps): bump EmbarkStudios/cargo-deny-action from 1.5.12 to 1.5.13
Bumps [EmbarkStudios/cargo-deny-action](https://github.com/embarkstudios/cargo-deny-action) from 1.5.12 to 1.5.13.
- [Release notes](https://github.com/embarkstudios/cargo-deny-action/releases)
- [Commits](https://github.com/embarkstudios/cargo-deny-action/compare/v1.5.12...v1.5.13)

---
updated-dependencies:
- dependency-name: EmbarkStudios/cargo-deny-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:31:45 +01:00
dependabot[bot]
158225d7c9 build(deps): bump open-policy-agent/setup-opa from 2.1.0 to 2.2.0
Bumps [open-policy-agent/setup-opa](https://github.com/open-policy-agent/setup-opa) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/open-policy-agent/setup-opa/releases)
- [Commits](https://github.com/open-policy-agent/setup-opa/compare/v2.1.0...v2.2.0)

---
updated-dependencies:
- dependency-name: open-policy-agent/setup-opa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:31:33 +01:00
dependabot[bot]
e542218529 build(deps): bump actions/upload-artifact from 4.3.0 to 4.3.1
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4.3.0...v4.3.1)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:31:22 +01:00
dependabot[bot]
162fd44ec5 build(deps): bump actions/deploy-pages from 4.0.3 to 4.0.4
Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/actions/deploy-pages/releases)
- [Commits](https://github.com/actions/deploy-pages/compare/v4.0.3...v4.0.4)

---
updated-dependencies:
- dependency-name: actions/deploy-pages
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 15:31:10 +01:00
Quentin Gliech
bcf2452c39 Update config schema
Because enabled the serde_json feature which preserves the order in
dicts, keys moved around in the generated schema.
2024-02-08 15:28:43 +01:00
Quentin Gliech
3d12554d6a Introduce mas-cli doctor, a simple diagnostic tool
This should help users to diagnose common issues with their setup.
2024-02-08 15:28:43 +01:00
Jason Robinson
a8dfe5a86a Clarify syn2mas docs on skipping tokens without devices 2024-02-08 15:10:25 +01:00
Jason Robinson
f549e185ec syn2mas: Skip access tokens that don't have a device ID
These can't be migrated. They are likely enirely valid tokens created by puppeting a user via the Synapse admin api. Treating them as fatal errors will make it impossible to migrate any host that has ever used this admin API feature.
2024-02-08 15:10:25 +01:00
Jason Robinson
5be27201c3 Allow Synapse OIDC provider idp_name to be null
It's not required, though technically it should be given if there are multiple providers.

Synapse config loads it defaulted to `OIDC` if not given: be65a8ec01/synapse/config/oidc.py (L299-L299)
2024-02-07 17:41:55 +01:00
Quentin Gliech
f941e8e9b5 Fix the AS login docs 2024-02-07 17:27:24 +01:00
Quentin Gliech
de49241afb Fix compound tooltips by adding the missing TooltipProvider to the tree 2024-02-07 17:22:19 +01:00
Quentin Gliech
afc7f509d9 Make the user agree to T&C during registration 2024-02-07 17:21:22 +01:00
Quentin Gliech
d760211989 Setup a repository to track user terms agreements 2024-02-07 17:21:22 +01:00
Quentin Gliech
39955e03f3 Warn loudly about encrypted appservices being unsupported 2024-02-07 17:13:01 +01:00
Quentin Gliech
04966fd9b6 Automatically run migrations on service startup 2024-02-07 16:31:36 +01:00
Quentin Gliech
daed46b20e Bump most frontend dependencies & fix CSS nesting warning 2024-02-06 15:40:08 +01:00
Quentin Gliech
5308d0be81 Upgrade compound 2024-02-06 15:08:57 +01:00