Commit graph

175 commits

Author SHA1 Message Date
David Baker
3d7137d4ad Setup flow for cross-signing on login / registration
Still outstanding:
 * Keep password from login / registration
 * Confirmation on skip button

Fixes https://github.com/vector-im/riot-web/issues/11902
2020-01-24 19:11:57 +00:00
Damir Jelić
9f3e5ab1db ManageEventIndexDialog: Remove an unused import. 2020-01-24 16:52:26 +01:00
Damir Jelić
3208ac60c7 ManageEventIndexDialog: Override the Disable button class to be danger. 2020-01-24 16:47:29 +01:00
Damir Jelić
ddea7415c7 EventIndexPanel: Use formatCountLong to format the event and room counts. 2020-01-24 16:15:06 +01:00
Damir Jelić
2252f48e04 DisableEventIndexDialog: Use a self-closing tag for the buttons. 2020-01-24 15:26:24 +01:00
Damir Jelić
97d55f63a3 DisableEventIndexDialog: Remove the incorrect class on the dialog. 2020-01-24 15:26:09 +01:00
Damir Jelić
ee133a9c71 DisableEventIndexDialog: Remove an unused import. 2020-01-24 11:56:19 +01:00
Damir Jelić
6f919eaeec DisableEventIndexDialog: Use the correct spinner. 2020-01-24 11:27:56 +01:00
Damir Jelić
128c0b7300 ManageEventIndexDialog: Use formatCount to format the message and room count. 2020-01-24 11:11:53 +01:00
Damir Jelić
71024d1418 ManageEventIndexDialog: Properly indent the content of the BaseDialog. 2020-01-24 11:03:40 +01:00
Damir Jelić
cba7764784 DisableEventIndexDialog: Use the DialogButtons element for the buttons. 2020-01-24 11:00:28 +01:00
Damir Jelić
72a58d0c2c DisableEventIndexDialog: Properly indent the content of the BaseDialog. 2020-01-24 09:59:26 +01:00
Damir Jelić
b59863781f DisableEventIndexDialog: Fix a typo. 2020-01-24 09:58:17 +01:00
Damir Jelić
93facca479 ManageEventIndex: Rename the file to contain the Dialog suffix. 2020-01-24 09:54:46 +01:00
Damir Jelić
f763ae3c7b DisableEventIndex: Rename the file to contain the Dialog suffix. 2020-01-24 09:50:58 +01:00
Damir Jelić
4ea2d4f90e ManageEventIndex: Rewrite the docs and rename the dialog class. 2020-01-24 09:45:29 +01:00
Damir Jelić
d30fd3eac0 DisableEventIndex: Rename the class. 2020-01-24 09:39:56 +01:00
Damir Jelić
86a098fcd9 DisableEventIndex: Remove a blank line and rewrite a doc comment. 2020-01-24 09:39:40 +01:00
Damir Jelić
381fe95f67 EventIndex: Fix some lint errors. 2020-01-23 15:22:26 +01:00
Damir Jelić
251661388a ManageEventIndex: Set the button kind to danger. 2020-01-23 15:06:10 +01:00
Damir Jelić
3073ce5588 DisableEventIndex: Set the correct button kind and add a spinner. 2020-01-23 15:05:40 +01:00
Damir Jelić
5ac37c8694 ManageEventIndex: Remove the enable button, that one goes somewhere else. 2020-01-23 14:26:35 +01:00
Damir Jelić
c251031dfb DisableEventIndex: Return back to the user settings after disabling. 2020-01-23 14:25:47 +01:00
Damir Jelić
64c4ad2eb9 ManageEventIndex: Hook up the disable event index button. 2020-01-23 13:33:55 +01:00
Damir Jelić
947ea9823d Settings: Remove the crawler sleep time setting. 2020-01-23 13:32:27 +01:00
Damir Jelić
4953f32cba ManageEventIndex: Rename the enable crawler setting. 2020-01-23 12:26:26 +01:00
Damir Jelić
9bee024da7 ManageEventIndex: Remove some useless divs and add the enable case. 2020-01-23 12:24:06 +01:00
Damir Jelić
5fd121d2af ManageEventIndex: Remove the unused stats. 2020-01-23 11:44:56 +01:00
David Baker
c0b7132404 Different copy on done screen if we setup from scratch 2020-01-23 10:18:08 +00:00
David Baker
30b0663eb0 lint 2020-01-22 18:15:35 +00:00
David Baker
78654cc693 Updated visuals for cross-signing bootstrap
* Use Fields rather than plain inputs
 * Update padding & alignment to match designs
 * Add Skip buttons
 * Update copy as per designs

Part of https://github.com/vector-im/riot-web/issues/11902
Based on https://github.com/matrix-org/matrix-react-sdk/pull/3897
2020-01-22 18:08:39 +00:00
David Baker
e98269822c Add icon to bootstrap dialogs 2020-01-22 11:44:47 +00:00
David Baker
644d68d836 Update copy in bootstrap success dialog phase 2020-01-22 10:59:50 +00:00
David Baker
d211372740 UI to bootsrap SSSS from key backup 2020-01-22 10:44:02 +00:00
Damir Jelić
47ea453abf ManageEventIndex: Fix a couple of lint issues. 2020-01-21 16:58:41 +01:00
Damir Jelić
6b85284632 EventIndexPanel: Move the bulk of the event index info into a modal. 2020-01-21 13:20:30 +01:00
J. Ryan Stinnett
27ee90cad5 Add post-login complete security flow
This adds a step after login to complete security for your new session. At the
moment, the only verification method is entering your SSSS passphrase, but nicer
paths will be added soon.

This new step only appears when crypto is available and the account has
cross-signing enabled in SSSS.

Fixes https://github.com/vector-im/riot-web/issues/11214
2020-01-15 21:53:36 +00:00
Travis Ralston
7bfb3686cd
Merge pull request #3839 from matrix-org/travis/sourcemaps
Fix sourcemaps by refactoring the build system
2020-01-15 10:11:33 -07:00
David Baker
f87541a6a9
Merge pull request #3822 from matrix-org/dbkr/key_backup_resign
Don't allow upgrade from untrusted key backup.
2020-01-14 12:18:00 +00:00
David Baker
24552f567e Add primary button to trigger restore flow 2020-01-14 11:52:00 +00:00
David Baker
94e4d5bf1f s/sign-in/session/ 2020-01-14 11:32:30 +00:00
David Baker
44ca35296a
Consistent capitalisation
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2020-01-14 11:31:00 +00:00
Travis Ralston
3e5cc9550b Fix import merge conflicts, removing any that aren't needed anymore
Many imports were removed as part of refactoring work, so here we are.
2020-01-09 14:17:33 -07:00
Travis Ralston
fde32f13a5 [CONFLICT CHUNKS] Merge branch 'develop' into travis/sourcemaps-develop 2020-01-09 14:15:09 -07:00
David Baker
5019eff1e3 Don't allow upgrade from untrusted key backup.
If we trust the key backup at upgrade time then we can sign it so
key backup will work automatically when cross-signing is trusted.
If we don't sign it at this point we'll end up with cross-signing
and key backup set up but key backup untrusted by the cross-signing
key which is a bit of a broken situation.

With https://github.com/matrix-org/matrix-js-sdk/pull/1144 fixes
https://github.com/vector-im/riot-web/issues/11747
2020-01-09 20:49:37 +00:00
Travis Ralston
59f608ffd6
Merge pull request #3761 from matrix-org/travis/babel7-wp-es6-export
Convert CommonJS exports to ES6 exports
2020-01-08 09:09:11 -07:00
Michael Telatynski
f1de6d060a Add a regression test for editing events and url previews
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-06 14:38:21 +00:00
J. Ryan Stinnett
76f3a08909
Merge pull request #3800 from matrix-org/jryans/key-backup-dialogs-4s
Update key backup creation and recovery paths for SSSS
2020-01-03 16:32:02 +00:00
David Baker
2125bcf5a6 Comment remaining non-cross-signing-compliant components
Fixes https://github.com/vector-im/riot-web/issues/11748
2020-01-03 15:38:59 +00:00
J. Ryan Stinnett
b8683462e8 Update backup creation paths for SSSS
This updates the various backup creation entry points to ensure they support
creating with secret storage if the feature flag is enabled.
2020-01-03 15:34:05 +00:00
J. Ryan Stinnett
99559c5121 Update backup restore paths for SSSS
This updates all the various key backup entry points to ensure they use a flow
that supports backups stored under secret storage.
2020-01-03 13:33:36 +00:00
Travis Ralston
f1ac3d2f64 Convert imports to ES6 from CommonJS
This is needed because `require()` means something different in webpack - it ends up importing the module as something we didn't expect (and is occasionally async)
2019-12-22 21:16:06 -07:00
Travis Ralston
042bd35d79 Fix MatrixClientPeg imports 2019-12-22 21:15:54 -07:00
Travis Ralston
d56f0f2a25 Convert many imports to handle ES6 exports
Reliant upon https://github.com/matrix-org/matrix-react-sdk/pull/3761
2019-12-22 21:04:42 -07:00
Travis Ralston
344dac4fb9 Convert CommonJS exports to ES6-compatible exports
We use `export default` begrudgingly here. Ideally we'd use just `export`, though this entire SDK expects things to be exported as a default. Instead of breaking everything, we'll sacrifice our export pattern for a smaller diff - a later commit can always do the default export -> regular export conversion.
2019-12-22 21:01:02 -07:00
David Baker
b98058fc3c Add bug for removing temporary srceen 2019-12-19 19:54:44 +00:00
David Baker
822762f014 add todo 2019-12-19 19:49:36 +00:00
David Baker
48b166f451 Pass the key backup into the right thing 2019-12-19 17:28:32 +00:00
David Baker
6851ad04b6 Migrate key backups to SSSS
If there's a key backup set up when we bootstrap SSSS, use its key
for SSSS and add the key backup key as a passthrough secret.

Requires https://github.com/matrix-org/matrix-js-sdk/pull/1128
Fixes https://github.com/vector-im/riot-web/issues/11210
2019-12-19 11:26:20 +00:00
Michael Telatynski
d28a892bb0 Stop using KeyboardEvent.keyCode as it is deprecated 2019-12-16 17:14:03 +00:00
J. Ryan Stinnett
8cbc9baddd Add testing flow for new key backups with SSSS
This adds a path to test key backups with SSSS via an extra button only visible
when the cross-signing feature is enabled.
2019-12-11 16:32:49 +00:00
J. Ryan Stinnett
fae819dfe5 Merge remote-tracking branch 'origin/develop' into jryans/4s-new-key-backup 2019-12-11 10:05:20 +00:00
Michael Telatynski
d22985f12e Migrate string refs over to createRef
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-08 12:16:17 +00:00
J. Ryan Stinnett
9f1c2cd3e1 Add dialogs for creating and accessing secret storage
This adds dialogs for creating and accessing secret storage via a passphrase or
recovery key. These flows are adapted from the ones used for key backup.
2019-12-05 15:34:07 +00:00
J. Ryan Stinnett
b55a1a1077 Appease linter 2019-11-25 14:41:12 +00:00
J. Ryan Stinnett
af2302265a Convert CreateKeyBackupDialog to class 2019-11-18 17:43:34 +00:00
Aaron Raimist
68bbe25446
Okay -> OK
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-09-27 21:32:32 -05:00
Michael Telatynski
360cef66c1 Migrate away from React.createClass for async-components. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-24 11:53:28 +01:00
Michael Telatynski
d99fb4796f avoid using import * as Matrix
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-06 14:04:33 +01:00
David Baker
785b4d649f
Merge pull request #2617 from matrix-org/dbkr/e2e_change_all_the_strings
Change text in e2e UX to new copy
2019-02-12 20:38:58 +00:00
David Baker
2eaba22d63 Better passphase confirm text 2019-02-12 20:14:43 +00:00
David Baker
e41fc55cca Add warnings about trusted computers 2019-02-12 16:34:06 +00:00
David Baker
3a0b8cb169 Lint 2019-02-12 16:03:46 +00:00
David Baker
9ec00f8d9b Change text in e2e UX to new copy 2019-02-12 16:01:38 +00:00
David Baker
6aef9fcc75 Restore backup on new recovery method dialog
Rather than verifying
2019-02-11 16:41:06 +00:00
David Baker
9f5244fa8b Deduplicate <div> tag 2019-01-22 10:16:31 +00:00
David Baker
ce41228000 Token encouragement if zxcvbn gives no feedback
zxcvbn is hardcoded to give no suggedtions if the score is greater
than 2, but our threshold is 4, so give some generic feedback.

Fixes https://github.com/vector-im/riot-web/issues/7860
2019-01-21 19:20:11 +00:00
David Baker
c650ace0c0
This shouldn't be required 2019-01-11 18:39:16 +00:00
David Baker
5c9d41d96b Lint 2019-01-11 13:42:40 +00:00
David Baker
d87d00e4ae Different dialog for new trusted backup
Split the 'new recovery method' into two cases: one where the new
recovery method isn't trusted and you need to verify the device, and
another where it is and the client is using it (where it's more of
an FYI).

https://github.com/vector-im/riot-web/issues/8069
2019-01-11 13:15:09 +00:00
David Baker
14fe43f74c
Merge pull request #2427 from jryans/recovery-method-removed
Add separate dialog for recovery method removed
2019-01-11 10:27:17 +00:00
J. Ryan Stinnett
35af3fc6f7 Add separate dialog for recovery method removed
The "New Recovery Method" dialog would show if either the recovery method had
been changed or removed, but the dialog text didn't make much sense for the
removed case.

This adds a separate dialog customized for the removed case.

Fixes https://github.com/vector-im/riot-web/issues/8046.
2019-01-10 15:18:57 -06:00
David Baker
e9226cdff8
Merge pull request #2426 from matrix-org/dbkr/backup_passphrase_debounce
Key backup: Debounce passphrase feedback
2019-01-10 18:34:08 +00:00
David Baker
a691c0492a
Merge pull request #2425 from matrix-org/dbkr/createbackup_niggles_2
Set backup niggles: 2
2019-01-10 18:34:01 +00:00
David Baker
b7252a0db9 Rephrase comment to make more sense 2019-01-10 18:13:04 +00:00
David Baker
bd5e0d1821 My favourite typo :( 2019-01-10 15:19:56 +00:00
David Baker
e50f15ac15 Key backup: Debounce passphrase feedback
https://github.com/vector-im/riot-web/issues/8066
2019-01-10 15:17:39 +00:00
David Baker
1d209c5064 Set backup niggles: 2
Don't tell the user their pasphrase doesn't match if it's correct
so far
2019-01-10 14:12:43 +00:00
David Baker
3752a21fb1 Create set backup niggles: 1
* Clear the password score when hitting 'back'
 * autoFocus password input
2019-01-10 13:49:40 +00:00
David Baker
3555b02f34 Merge remote-tracking branch 'origin/experimental' into dbkr/fix_recovery_reminder_cancel 2019-01-10 09:39:57 +00:00
David Baker
c45ffb6733
Merge pull request #2422 from matrix-org/dbkr/eslint_async_space
Add spaces back to async arrow functions
2019-01-10 09:35:58 +00:00
David Baker
8e4d8ccca7 Add spaces back to async arrow functions
As per https://github.com/matrix-org/matrix-js-sdk/pull/821

Requires https://github.com/matrix-org/matrix-js-sdk/pull/821
2019-01-09 18:10:35 +00:00
J. Ryan Stinnett
365a7273d8 Move initial key backup to background
Since the initial key backup can take several minutes for some users, this moves
the upload step to the background.  The create key backup flow now only marks
all sessions for backup synchronously, with the actual backup happening later.

The key backup panel in Settings gains a new row to show a summary of upload
status.  Users are directed there if they wish to know if the backup is done.

The text in various related dialogs has also been tweaked to fit the new flow.
2019-01-09 12:04:17 -06:00
J. Ryan Stinnett
2bfe6e7500 Fix React nesting error in create key backup 2019-01-09 12:04:17 -06:00
J. Ryan Stinnett
91a7c146e4 Fix lint warning in create key backup 2019-01-09 12:04:17 -06:00
David Baker
7381879e3a Fix a few things with cancelling recovery reminder
* Put a cancel button on the first page of the create key backup
   dialog
 * Move settings logic into the room reminder: I know this is moving
   logic *into* a view but RoomView is quite heavyweight as it is.
 * Give the recovery reminder an explicit 'onDontAskAgainSet' rather
   than onFinished which was getting called with false when the last
   screen of the dialog was closed with the cancel 'x' rather than
   the 'close' button.

https://github.com/vector-im/riot-web/issues/8066
2019-01-09 16:27:41 +00:00
J. Ryan Stinnett
1fcafdab30 Allow New Recovery Dialog to be cancelled
Fixes part of https://github.com/vector-im/riot-web/issues/8048.
2019-01-09 04:08:12 -06:00
J. Ryan Stinnett
5419b4279b Simplify create key backup maze
The download / copy actions to store the new recovery key now send you forward
(the most likely case) with a Back button in case you wanted to also do the
other storing type.
2019-01-04 17:14:10 -06:00
J. Ryan Stinnett
37256d2976 Use primary styling on download / clipboard key actions
Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-19 17:46:37 +00:00
J. Ryan Stinnett
24f0123ded Convert pass phrase entry to flexbox
Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-19 17:46:37 +00:00