Tom Hacohen
11dd883f5f
lint: replace tslint with eslint and fix new warnings and errors.
5 years ago
Tom Hacohen
a252078d65
Use the new getCryptoManager when editing journals/userInfos.
...
This also fixes an issue when editing and deleting journals after an encryption
password change.
5 years ago
Tom Hacohen
41848aa7e3
Remove useless constructor
5 years ago
Tom Hacohen
46fe1ceeb6
Gracefully handle wrong encryption passwords.
...
Until now we just showed integrity error which could be one of many issues.
Now we show an explicit error message and only clear the encryption password
cache rather than the whole cache.
6 years ago
Tom Hacohen
ad45ad3f83
Update tslint and fix warnings.
6 years ago
Tom Hacohen
7da0a6009b
More tslint fixes.
6 years ago
Tom Hacohen
3b7fadcc69
Set the locale based on the settings.
...
Partially fixes #4
6 years ago
Tom Hacohen
43044750e3
Add support for settings (route and store).
6 years ago
Tom Hacohen
c5fc6f23f5
Jounal store: simplify the store functions and change the list to a hash
...
It's always been a massive mess, this improves it.
6 years ago
Tom Hacohen
b1070ecc94
Restructure the journals route.
...
This puts the jorunal list and the journal view in the same place
and will make it easier to add new/edit.
6 years ago
Tom Hacohen
8f13da7a39
Remove the secondary header and update the appbar instead.
6 years ago
Tom Hacohen
20b409ffe8
Move the journals to their own page.
6 years ago
Tom Hacohen
45bd0a9054
Associate account workaround: allow journal creation to fail.
6 years ago
Tom Hacohen
7d2fa215a3
Also init tasks on first run.
6 years ago
Tom Hacohen
a8c6b30456
Fix infinite loading indicator when there are no entries.
6 years ago
Tom Hacohen
d6b7ba0240
Journal: upgrade material-ui
6 years ago
Tom Hacohen
ae26e34eb4
Update react, typescript recompose and etc.
6 years ago
Tom Hacohen
73897700d9
Automatically create the default journals if there are none.
6 years ago
Tom Hacohen
8e7243964d
Automatically create user info when there is none.
6 years ago
Tom Hacohen
9c740a4c4d
Add support for saving entries to shared journals.
7 years ago
Tom Hacohen
e257f427eb
Show an error message when userInfo doesn't exist.
7 years ago
Tom Hacohen
8367767006
SyncGate: only get asymmetricKey from UserInfo if needed.
7 years ago
Tom Hacohen
cf823f5efe
Implement fetching userInfo and opening shared journals.
7 years ago
Tom Hacohen
d869be6bc9
Revert "Only mark journals that have been shared with us as unsupported."
...
This is not needed, because key is set only if we have a key set for us
which means it was either shared with us, or we have a reason to have a
key (maybe changed the password).
(Kept the fixme that was added in that commit)
This reverts commit 3408e16013
.
7 years ago
Tom Hacohen
3408e16013
Only mark journals that have been shared with us as unsupported.
...
Journals that we've shared are supported even if we share them,
so make the check a bit more explicit so we show them.
7 years ago
Tom Hacohen
73ab88d3d2
Sync gate: better position the loading indicator.
7 years ago
Tom Hacohen
e48ebc5137
Fix entries fetching by creating a fetchAll action.
7 years ago
Tom Hacohen
8186055537
Syncgate: don't create the router aware components on each render.
7 years ago
Tom Hacohen
d06b7610cd
Move the basic widgets to their own directory.
7 years ago
Tom Hacohen
48cd22b464
Move the store into its own module and split it up.
7 years ago
Tom Hacohen
3bb6d92be7
Add very basic error handling.
7 years ago
Tom Hacohen
58eedd1c37
Cache the SyncGate calculations.
...
This was taking quite a lot of time and caching this significantly
improves performance.
We only need it because of the react-redux-router bug, but good to have
it in the meanwhile.
7 years ago
Tom Hacohen
97eaa756fe
Add FIXMEs for the withRouter workaround
...
Because of: https://github.com/ReactTraining/react-router/issues/5795
We have to use withRouter which triggers a lot of extra renderings.
This means that until the bug is fixed we have to use withRouter and
some memoization to make sure we don't recalc everything all the time.
7 years ago
Tom Hacohen
264145eb72
Pim: no longer pass the match object.
7 years ago
Tom Hacohen
9f396173b0
Move etsync decryption logic to sync gate.
...
This shares more of the code, and also lets us be more efficient because
we now do these calculations less.
7 years ago
Tom Hacohen
4f88ff6364
Adjust code to work with es5 as a target.
7 years ago
Tom Hacohen
a6ad199023
Make all of the React.Components Pure.
7 years ago
Tom Hacohen
c3e686002e
Move the store to immutable.js
...
This significantly helps with reducing the number of copies we do,
because in most cases a refresh will not change a journal.
7 years ago
Tom Hacohen
cfd6db6fb5
Go back on successful save.
7 years ago
Tom Hacohen
8e2a465120
Rename Main to Pim.
7 years ago
Tom Hacohen
c10a4cc924
Move the main page under pim and redirect there.
7 years ago
Tom Hacohen
97dc449953
Remove unused functions.
7 years ago
Tom Hacohen
68377ec0ac
Fix viewing journals.
7 years ago
Tom Hacohen
e310584e26
Split away the main view from the sync gate.
7 years ago
Tom Hacohen
5dacc4c013
Use the last entry id when fetching entries from server.
7 years ago
Tom Hacohen
fc42566486
Cleanup the calendar and render in the main page.
7 years ago
Tom Hacohen
e6778f5ace
Make the sync gate render the complete address book.
7 years ago