User verification state indicators (#3793)

* Introduce a `UserIdentityProxy` and have it combine upstream methods into an easy to digest  `UserIdentityVerificationState`. Use it in a dedicated `VerificationBadge` UI component

* Show a DMs counterpart verification state in the room header

* Show a warning on the room details `People` entry when there are identity verification state violations on any of the members.

* Show verification badges in the room member list

* Show a withdraw verification section on the room member details for users that have pinning violations.

* Remove the verification section from the profile screen as there's no reliable way to keep it up to date
- the underlying Rust SDK Olm Machine can be rebuilt without notice which would break any existing user identity change streams.

* Update preview test snapshots
This commit is contained in:
Stefan Ceriu
2025-02-18 08:37:34 +02:00
committed by GitHub
parent b71c93dfaa
commit f77faee981
101 changed files with 722 additions and 305 deletions
@@ -1037,6 +1037,12 @@ extension PreviewTests {
}
}
func test_verificationBadge() async throws {
for preview in VerificationBadge_Previews._allPreviews {
try await assertSnapshots(matching: preview)
}
}
func test_videoMediaEventsTimelineView() async throws {
for preview in VideoMediaEventsTimelineView_Previews._allPreviews {
try await assertSnapshots(matching: preview)
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6ad1568981acd0a49c17795c4f9bf47c0270007639dd61effb68d708d49a8123
size 111376
oid sha256:153b4927280abdaa674e93f843c84b6dd1a23070c37556d57294d1504759ff2d
size 111371
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c71906723f41774d71975cefc46b0ab8415e0fdebb63ec8768480a32935aeadb
size 123103
oid sha256:aa9c4ce4236f90ab89039f6353aa28091c2127b9d2acec0c808492f2b88750e3
size 123098
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:19e3709844d8e70eebcd04eea5b56f2c32cb29c50626a3ae2834d839b8904efd
size 68156
oid sha256:8a9575ea8743524b675a174ae1e5b7bed6d85ac01f6b833daec9739997b0b2da
size 68180
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ae6d231128edddb04ba4fffa915c2fcf1169ea28196cce8431da8d3eaa43d4e3
size 82070
oid sha256:48cc5116b97690c21daad083a15e9266068f9196a426b938020d3b57f8a4d8d2
size 82093
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b8d4f33061bf7a6298eff4e3ffb63194b7b0eee56f2677c55e0db5c4db4e8a05
size 19820
oid sha256:5a3fcbc84d86ab21cfb58787fd83ab8e46e48e2fe35acaec61dff7f72fc0f938
size 73712
@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:94a649334de3e92c04c8c5fa24606ce4338b38867d3af71ba044ebc199bbf8d5
size 11439
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b8d4f33061bf7a6298eff4e3ffb63194b7b0eee56f2677c55e0db5c4db4e8a05
size 19820
oid sha256:5a3fcbc84d86ab21cfb58787fd83ab8e46e48e2fe35acaec61dff7f72fc0f938
size 73712
@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:94a649334de3e92c04c8c5fa24606ce4338b38867d3af71ba044ebc199bbf8d5
size 11439
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0a28fd17b8b3cbaa0d27c70019904244d5d29ee2fc83266512e8ae3b386e32cf
size 15862
oid sha256:1dfa74df7fac6d93e37ee9332a59b442c97a912261bc40b73c786090d613f259
size 56152
@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:07945ef1e674a1744a26d59745956b94201a9a2b0fdb9a1c15933c32ce246e89
size 7886
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0a28fd17b8b3cbaa0d27c70019904244d5d29ee2fc83266512e8ae3b386e32cf
size 15862
oid sha256:1dfa74df7fac6d93e37ee9332a59b442c97a912261bc40b73c786090d613f259
size 56152
@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:07945ef1e674a1744a26d59745956b94201a9a2b0fdb9a1c15933c32ce246e89
size 7886
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bb9a139e108b9cca1fceafa4fb2d4b2c0ea7a8b76a916a72cab682f1895a2cbb
size 180293
oid sha256:bc9057e946a55019caf464ab7437197b5bd0ab5e83076aba8a64bf65c309773b
size 180336
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bc7992df6c2b7227c500f84531bdac9577db2cf067cb6aa9a81b81a8936771e4
size 114445
oid sha256:75cd91c40c97f338248fb5d5e76a291010115220c4094e27058206b5d7f1307b
size 114637
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eb8a03e056c72838db67ac97b012792f1d98985952dcaeffe80455363b729a5a
size 114232
oid sha256:a36746c71d1e8fc4379b20b17adeed7af104bd2bf2bc0f59fb9c9cd4b77f6bba
size 114418
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bcf2cefb0e51250c908006f9380d69d2ecf46a71c4a86aa54e20995498c0eb47
size 125040
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e764eb1952e4820a15affa00461fb1e2f4a3de0b7ff498560aab738e042c2c0b
size 199433
oid sha256:d4cca2b5da6c0a8bd3946a9d2a7ffb5b23a448c3e07eb0a5dea7bdab025c76c9
size 199464
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f2f03c0e35ba417a0b55d2cade9bb8eeada26f0514497b411adc61675b25c03a
size 180559
oid sha256:48b686ff1f24cd842f4d8ae28c11c3a62113d2137e974c68f52e551bdb4514d8
size 180604
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:26810d28eb8d22229c2fb6259d44182e8f459efc13d3da72af855c3bd217894c
size 116662
oid sha256:763fb73d2174b8c43a13eda6d833cfa59514069f3e5343d149f5b4db16db0ef2
size 116882
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4deab2abb40430b6c26169284463fcb45ca30f93b703906e83a7a80b0dd44085
size 116224
oid sha256:add76379b3faa0915ddacb2f0fba8f0dafa629fcee802230b7b6fa04f84d87d1
size 116404
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:622e29540af65ff83e1b0f4799431b3a44edba542d208f007f3027c612e3e043
size 133323
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c1d159bceea6b6a367d6f6d1adc3c91f7c8ed5a89a12cc76d950108505e50834
size 200973
oid sha256:72f3469670b4e242ff96cfd50116c4413b50dc59f229257eeaddea84fc802bdc
size 201004
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6bef0734ddc98e3d468375a8ed95de83880740c3cd9393506e49004f88a9c1b1
size 121431
oid sha256:56b877e9188f4dfaab208f93d34fe1dbaceed62e5122a87bbf5b5708d59ef789
size 121429
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:99d9738fe1e134a9570a510ee4e0a7622bccc0edda2316d7e083cb6800f47567
size 66185
oid sha256:7cf3cda095d77c4336f766f2e8c42a8a6be21c460464080b33e4819fd955009e
size 65826
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2890c691ada40cd89e8659f9e4397e5f2e0958cc3a7540d7f42f0d525fda4f46
size 65267
oid sha256:33df32f5444f672baadb0028384d11d2385c49eaf87734587efe686dfeb07ed4
size 64908
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:03c2ebe4a22b3b8422e5f320f57a59ac2b8038c057327657878378458e5328d5
size 74321
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f47c8be31c2dfb8109e021b872ddce7ce7d38a5015ada1a5332ee522b25f0382
size 138264
oid sha256:5030171dd1afe4cbf988eaca778cf9ed0500f7284bba7ac51fb3243e1f632899
size 138283
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:22eb5c47c43b1c9fb7bc0f2806a90750374ad3825ab0d017d57bf0fd61d696b0
size 122013
oid sha256:6bdf3c45eb5a7ec4e44cf20b1a667f934b51c6316d05c85026749820544518df
size 122011
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4a076ef632d402d507a09abaa38822a81a2a1a094aaee6de62e2aed796478266
size 74470
oid sha256:8a75782f44f8492435c9ebab3708644e955f14dca3ac35ab615a69984c7a71fa
size 74437
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c796a02083a8469da92b6d764092caf259a0f6ee4ff52baf7851e5fcfa2be76d
size 73660
oid sha256:703f8fdb10d5d1081eb1bfddef855de60c9bb21ee90ff08420813fab23ee3ba6
size 73622
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5b02fe793ca33790c1c6da7b1eabea1b828324c6faeacf242857d26b0b94eeb2
size 93276
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:01b00054f275cb3ae4185449e7c5cbe375180260f0cde860ab290ed5dc6757b0
size 146295
oid sha256:2cc7c0a660c1ddf91e1f7336525dd18ce8a6a3ff1e1746e070119fe74b2a539c
size 146322
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:02f47841f18c62a867c4ff1a23bf16edf17c81f5e97f249c2cff30a9d6c869f6
size 169210
oid sha256:150439a358f12324fd477216dffe3cbf9feccc704f019e00ad4f43e153bb97fa
size 172233
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2e5bb0918b63578e8aa80fe8eaa088f4cff4eea4d4ab886b945362186e85ae5c
size 172967
oid sha256:9f2e7d68d38ac78087a52dfd0ef401fccda75d9a7112bc357ae5b034cecb48db
size 175918
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a71ee5cc84935ecdfaa5fd164b46f01c1841ea4469282eaa424d729a65906148
size 113290
oid sha256:818255f45004091e759445a5541c9b04aa6c58926c7479e5e48f2da9ca9c0222
size 115529
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3f67432fd158f5f91089243ea9919ade5e8b10a481625715a413d1e6ae580663
size 117653
oid sha256:803e62688fba1c2c652a59f52784e39da86f6a80dee0e0862925e75d80bf83cd
size 119715
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b1157284b4d3bd61c1ed44c4f8c49cfd693cea4634f785d78a738e291d39d08e
size 132965
oid sha256:3e9df975598876636a317b5c6ab5a0f8d38c9afb7be4e25c4e6fad0c46bf5719
size 134459
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:765e253eb1ab6eb5d9a77bc8b0a6c5d7e3ed064343ac055f9702b5fc810763aa
size 136303
oid sha256:feca48e2dcc6dc7f029b1b39716d3b1af94e1a12b6afc94cbf061fc68f2f3cac
size 137742
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:02a3fb3f4dd20a12d2ff00ea73a6f88d4a30e96de1d6522b57a9c88ee1a7e05d
size 125648
oid sha256:c60d9ebc5781792b45e0237d8f69c524af59865f32e387c762f306744c411401
size 127049
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5399631ce7f310512b85452f95230e717a1505787e612f3078f65f9ebd604857
size 141900
oid sha256:fb17504e82993df630ad2cb20854e3d2aa2f85baa3192f03800fb98419ce78b0
size 143376
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d3be505a8d77dcef1b457e847e204efff0f7e76c81af095d3cfdd88f87a2e03c
size 144426
oid sha256:4d8d6fc490b3b7362bf326187c7526e00611bb585f3a2868bc0b1f98c6f9eaf4
size 145856
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bf7e90926372085ad952e03139a9d3c0815b804cc2045145d878e00de65e4671
size 133587
oid sha256:ebef244d49b790601115f26146d52030fdca6632385a2c225bbd554d8e51d912
size 135046
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3ebd4283903f8901a4fa2bcaca20b77a866d037581413f5908cc3a8d7dcfea03
size 83790
oid sha256:dc06908f037a0d2730d4a8b3b49742ddd24d72fc4ca5d0a14b1974385198ac78
size 84815
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4429d4306851f0d7e6e07c216dfc1b7abb3b8380ce1d1ed53da6a54ae8220362
size 86315
oid sha256:9cb13eddbab510b9646fd2ee431e37208ef0d2f3b23204dce4fcf85032ba5891
size 87183
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6a5fa320eb70ec2e1181dd063e76cd26ba9c2594c64b02058e77e9f536dfa99c
size 77966
oid sha256:521a418127816a652a7e4d17146c3eeb1d4aa613922f11b53ef63115ef90ed1e
size 78984
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c598dafaa1584f2b8886183b1d9273c9b607322b493710725feeaec2f4d4f7e6
size 93516
oid sha256:1d804804fc7e19802cf4d3156c34e26e2be96085fc5fe9987403940541a3e08c
size 94418
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d6ea9ff5daaa20a19ec8b822cba67eae0d8796b20a0121f33304b26c503e085d
size 96436
oid sha256:47335b9d2db5c87e10bbbe1b441d99c9283974ac5bf0ecd716a5bf172e17af29
size 97152
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0951e99bb5bad9c5a5be23f56e7c302b38514c0760c47ef5a39d3ed982bb38f7
size 86447
oid sha256:39e5aafbe8a8629ec28da856475bd1e20f83060fa4b19d543d43f58c35d9bbca
size 87331
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d19fdc59c123919099ce464a0bb5478edb8df05e23609cd5dae1b430bcd469d1
size 295900
oid sha256:02b4de01b6f3291309fdef1755bf2d1a4e989cecd777766394d512ef330fbfea
size 295904
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:015366f6fe40da0753b014c0be10d6f46478d36e76fef8ac0d03608c44c8665d
size 304454
oid sha256:7be7c4f878b08ae3724587db110a3ea3ec1133f9731aca59924776ec59b54c66
size 304445
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e5fe32d96cc563369893c88d566260a465e5ae7f372b10f75f1cd6b9fa93877e
size 181804
oid sha256:5236d9950c7d6179f4351b486bedb519e2afb29f65603d1ee3fea9b862936ba7
size 181809
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6332e9688b6bc74fd053be710d9fc160016ff08fe08d755420871e5a79ad6c24
size 180191
oid sha256:3a9027ee84e95fa1b65e7287b311a109f829302563216d57b0f4a72fbb0fcedf
size 180206
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d19fdc59c123919099ce464a0bb5478edb8df05e23609cd5dae1b430bcd469d1
size 295900
oid sha256:02b4de01b6f3291309fdef1755bf2d1a4e989cecd777766394d512ef330fbfea
size 295904
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:015366f6fe40da0753b014c0be10d6f46478d36e76fef8ac0d03608c44c8665d
size 304454
oid sha256:7be7c4f878b08ae3724587db110a3ea3ec1133f9731aca59924776ec59b54c66
size 304445
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e5fe32d96cc563369893c88d566260a465e5ae7f372b10f75f1cd6b9fa93877e
size 181804
oid sha256:5236d9950c7d6179f4351b486bedb519e2afb29f65603d1ee3fea9b862936ba7
size 181809
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6332e9688b6bc74fd053be710d9fc160016ff08fe08d755420871e5a79ad6c24
size 180191
oid sha256:3a9027ee84e95fa1b65e7287b311a109f829302563216d57b0f4a72fbb0fcedf
size 180206
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7c79cf23a403a1a8f7f870c5bc1b076d7db8fdc5306f8e2d570481b04f53243c
size 108340
oid sha256:7ec0cea60e7008080e384d60dbc8de8747cd55d8740b22292b286f04f9fe61db
size 101556
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:12b13a72d49eed5e18f72dc9f9fe38e030e30cce68fa3e2ff0cf30f5fbe8967d
size 110043
oid sha256:f6883e72e65297302617486b88e8bca4e81e577aa40c888097f93099216f191f
size 102538
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cf92dab653565f100a445d2e8231e984761644436f2c9f565823f5c5730a0e28
size 59553
oid sha256:94fe46228c52208114afa3c511f09398921697390b27e83b1e4930eb17db5757
size 53177
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:516372c5b8db4c73878cbce0be4015381446623317529c1a44a30fb114efd277
size 66599
oid sha256:62bf342ae32beb4efba3cff60e18da950cf406bbdcbd8b0e9bcca2e1906b1c06
size 58597
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bc125492dfe1f025e9164856adc7c8c5c139c7b9f1e6ad6db977a2704e4649b3
size 6588
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bc125492dfe1f025e9164856adc7c8c5c139c7b9f1e6ad6db977a2704e4649b3
size 6588
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:95330c60b8d668574425379be7d0f41e8e17e11c76da95afaf5f89acfb68225e
size 3755
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:95330c60b8d668574425379be7d0f41e8e17e11c76da95afaf5f89acfb68225e
size 3755