Commit graph

265 commits

Author SHA1 Message Date
Damir Jelić
364899b27d ManageEventIndexDialog: Show how many rooms are done instead being processed. 2020-03-06 15:44:23 +01:00
Damir Jelić
bff3f3e632 Revert "ManageEventIndexDialog: Reword the status for the currently indexing rooms."
This reverts commit 7d6569a0b87c48733dbddec3c2662325977d0234.
2020-03-06 15:44:23 +01:00
Damir Jelić
8fe54e5dca ManageEventIndexDialog: Reword the status for the currently indexing rooms. 2020-03-06 15:44:23 +01:00
J. Ryan Stinnett
4db1d04764 Fix warning about uncontrolled vs. controlled state 2020-02-28 13:52:24 +00:00
J. Ryan Stinnett
d3c7a7ff1f Use latest backup status directly rather than via state
This uses the latest backup status we just retrieved by returning from the
lookup path (instead of using it indirectly via state). This is important
because state updates are batched, so we can't rely on the value to be updated
immediately like we were.

Fixes https://github.com/vector-im/riot-web/issues/12562
2020-02-28 13:47:12 +00:00
J. Ryan Stinnett
567e882c32 Add missing click handler 2020-02-28 12:04:27 +00:00
J. Ryan Stinnett
a93c13306c Prefer account password variation of upgrading
This shows the account password variation of upgrade encryption first if it's
possible to do so. This ensures we match the logic that locks the next button.

Fixes https://github.com/vector-im/riot-web/issues/12560
2020-02-28 11:25:04 +00:00
J. Ryan Stinnett
a71a234622 Check for cross-signing homeserver support
This checks the homeserver to ensure it supports cross-signing (via the versions
feature flag) before attempting bootstrapping or offering user verification.

Fixes https://github.com/vector-im/riot-web/issues/11863
2020-02-24 15:04:34 +00:00
Damir Jelić
81e61d6f9d EventIndexPanel: Move the comments around for the getStats calls. 2020-02-20 14:46:10 +01:00
Damir Jelić
a650c47d6b ManageEventIndexDialog: Add a space before the function parenthesis. 2020-02-20 14:46:10 +01:00
Damir Jelić
1897d67818 EventIndexPanel: Catch getStats failures.
Getting the stats can fail when used with Seshat. Tantivy periodically
garbage collects its files. Smaller files are merged and the old ones
are removed.

If garbage collection occurs while we try to get the stats, which go
trough the files and figure out their sizes, we can end up trying to
figure out the file size of a removed file. The getStats call will fail
in this case but we can ignore the failure since we will likely get a
nice result next time we try.
2020-02-20 14:46:10 +01:00
Damir Jelić
9e3b0fdf7c EventIndexPanel: Fix the removal of the updateCurrentRoom listeners.
The event listeners that update the current room and try to get the
current stats from the event index don't seem to be unmounted because
this != this confusion.

Turning them into arrow methods of the react class fixes this.
2020-02-20 14:46:10 +01:00
Michael Telatynski
16bbea0b59 Fix various leaks due to method re-binding
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-20 02:35:30 +00:00
Zoe
c8e65bfa65 flip sense of 'force' flag in if statement 2020-02-11 17:56:25 +00:00
Zoe
5382a52519 Fixed bug where key reset didn't always return the right key 2020-02-11 15:57:14 +00:00
Zoe
d47d13256f
Merge pull request #4041 from matrix-org/foldleft/12221-reset-cross-signing
Button to reset cross-signing and SSSS keys
2020-02-10 17:14:05 +00:00
Michael Telatynski
2230e746aa sprinkle preventDefaults on form submission handlers 2020-02-09 15:03:28 +00:00
Michael Telatynski
0393a57b5a fix submit button disabled breaking async task 2020-02-09 14:49:54 +00:00
Michael Telatynski
150f2b3f84 Merge branches 'develop' and 't3chguy/password_completion' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/password_completion 2020-02-09 14:19:44 +00:00
Zoe
8fdae73e03 Button to reset cross-signing and SSSS keys 2020-02-07 14:55:01 +00:00
Michael Telatynski
4d0d6cdaa4
Merge branch 'develop' into t3chguy/password_completion 2020-02-05 20:24:37 +00:00
J. Ryan Stinnett
b92fe59436 Improve event indexing status strings for translation
The strings used for the count of rooms was hard to translate, so this adds a
bit more context.
2020-02-04 23:09:49 +00:00
Damir Jelić
d8576f23de ManageEventINdexDialog: Fix a line length issue. 2020-02-01 12:11:49 +01:00
Damir Jelić
75fe3c2219 ManageEventIndexDialog: Show how many rooms are being currently crawled. 2020-02-01 12:01:53 +01:00
Damir Jelić
01c1c2364b ManageEventIndexDialog: Add back a control for the crawler sleep time. 2020-01-31 18:46:45 +01:00
J. Ryan Stinnett
d5811cad28 Change UI auth title for cross-signing 2020-01-31 15:04:51 +00:00
J. Ryan Stinnett
02cada7cc6 First pass of copy changes 2020-01-31 12:15:19 +00:00
David Baker
96d5fb5ce3 Only display the first zxcvbn warning/suggestion
As per comment

Fixes https://github.com/vector-im/riot-web/issues/12150
2020-01-31 10:59:35 +00:00
Michael Telatynski
a180dddc66 Pass an ID to the <Field/> as needed and fix div inside p nesting
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-29 22:31:19 +00:00
J. Ryan Stinnett
81ee27f41e Replace device with session in UI text
This replaces "device" with "session" throughout user-visible text at the React
layer. Variable names and comments are left as-is for now.
2020-01-29 15:52:32 +00:00
Michael Telatynski
fe71fe6033 Sprinkle forms and new-password designators to make autofill and password completion less wild
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-29 13:38:50 +00:00
Michael Telatynski
cb0392b78d use forms to wrap password fields so Chrome doesn't go wild and prefill all the things
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-29 13:24:45 +00:00
David Baker
39c8a9d204 Start new key backup in security setup flow
Part of https://github.com/vector-im/riot-web/issues/11889
2020-01-28 19:42:09 +00:00
David Baker
5e1b42b350 unused component 2020-01-28 17:21:42 +00:00
David Baker
546acb696d Add confirmation to skip button
Re-using the opt out phase which was unused
2020-01-28 17:15:50 +00:00
David Baker
abfa593791 Make the 'encryption upgrade' flow better
Fixes https://github.com/vector-im/riot-web/issues/12086
2020-01-28 16:36:07 +00:00
Damir Jelić
e2dd2bd950 Merge branch 'poljar/seshat-ui-pr' into develop 2020-01-27 17:18:17 +01:00
Damir Jelić
e38f1191a5 ManageEventIndex: Clarify that we're currently not downloading any messages. 2020-01-27 15:51:19 +01:00
Damir Jelić
7e0ab2f0a3 DisableEventIndexDialog: Turn the cancel button red. 2020-01-27 15:28:43 +01:00
David Baker
437b45f8a6 Remember password for e2e bootstrapping
Fixes https://github.com/vector-im/riot-web/issues/12046
2020-01-25 15:28:06 +00:00
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
J. Ryan Stinnett
9c4ff4048a Convert show recovery key to flexbox
This allows the buttons to fit on a single line and flows a bit better at low
widths.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-19 17:46:37 +00:00
J. Ryan Stinnett
acc2e98355 Add New Recovery Method dialog
Adds a New Recovery Method dialog which is shown when key backup fails because
of a version mismatch / version not found error.

The set up button in the dialog currently only marks a device as verified (via a
verification prompt) instead of the eventual restore and cross-sign flow, since
those pieces don't exist yet.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-18 10:20:12 +00:00
J. Ryan Stinnett
2b14f2af5c Clean up when new key backup version fails to backup
If creating a new key backup version succeeds but backing up to it fails, delete
the version to avoid surprises. In addition, this converts the creation of a new
key backup to async / await style.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-18 10:20:12 +00:00
J. Ryan Stinnett
a92d2902c4 Add an in-room reminder to set up key recovery
This adds an in-room reminder above the message timeline to set up Secure
Message Recovery so that your keys will be backed up. If you try to ignore it,
an additional dialog is shown to confirm.

Fixes vector-im/riot-web#7783.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-07 14:13:02 -06:00
David Baker
c849a2389c Show correct text if passphrase is skipped
Also set 'downloaded' state in a couple more places
2018-12-04 16:38:32 +00:00
David Baker
5b2c2a0adf comment typo 2018-12-04 11:41:04 +00:00
David Baker
075c13a5bd Add password strength meter to backup creation UI
https://github.com/vector-im/riot-meta/issues/227
2018-11-23 15:50:23 +00:00
David Baker
4f8c4f1c6e Make create key backup dialog async
So we can add zxcvbn to it without inflating the main bundle size
2018-11-23 10:55:18 +00:00
Aidan Gauland
35780f5ae0 Remove use of deprecated React.PropTypes
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Luke Barnard
d3f9a3aeb5 Run eslint --fix
Fixing 1000s of lint issues. Some rules cannot be `--fix`ed but this goes some way to linting the entire codebase.
2017-10-11 17:56:17 +01:00