40 Commits (c1d446551bb4b23c47cbb0c45d5d3466b114264d)

Author SHA1 Message Date
Tom Hacohen f828e3d290 Upgrade material-ui and start migrating to it. 6 years ago
Tom Hacohen ae26e34eb4 Update react, typescript recompose and etc. 6 years ago
Tom Hacohen 2056c62b80 Use the error boundary component to semi-gracefully catch errors. 7 years ago
Tom Hacohen 40af8a49d7 Make the event and contact itemUid the consistent.
It was different between them and compared to viewing a journal's item.
This was inconsistent and is now fixed.
7 years ago
Tom Hacohen 35b3ce7f95 Add a button to show an item's (contact/event) change history
Fixes #1
7 years ago
Tom Hacohen 6687758a3a Add a refresh button and make it spinable.
This also adds a HOC that makes icons spinable.
7 years ago
Tom Hacohen 8d3a06cdfd Split the login credentials and the encryption key.
We do this so we can persist the login info to local storage, but
still keep the encryption key safe.

This version will fails if you clear the session storage. This will be
fixed in the next commit.
7 years ago
Tom Hacohen c7e508b890 Also disable back when we have no history stack.
This is useful for when we open a page directly in an inner link.
7 years ago
Tom Hacohen 2d76164666 Fix the back button to work on first load too. 7 years ago
Tom Hacohen 054caaa56f Change the menu button to a back button on the main page. 7 years ago
Tom Hacohen 6a586ac38f Rename the Root to LoginGate because that's all it does. 7 years ago
Tom Hacohen 85f5f91f36 Move the constants to their own module. 7 years ago
Tom Hacohen a6ad199023 Make all of the React.Components Pure. 7 years ago
Tom Hacohen 0c9dfd7087 Add a way to edit events. 7 years ago
Tom Hacohen 03bbc7af17 Add paths for contact and calendar creation. 7 years ago
Tom Hacohen d8a57b821b Replace the hash router with the normal one.
The reason we need that is because it's lacking compared to the
hash one which is considered legacy.
7 years ago
Tom Hacohen 25402639b6 Split off the pim view and implement viewing contacts. 7 years ago
Tom Hacohen c10a4cc924 Move the main page under pim and redirect there. 7 years ago
Tom Hacohen 590e8c61a9 Route resolver: make _base optional. 7 years ago
Tom Hacohen 0a4b065c9c Rename etesynccontext to root. 7 years ago
Tom Hacohen 1663460bed Put the journals in the sidemenu. 7 years ago
Tom Hacohen 4e3ddcb29b Move the location of the username in the appbar. 7 years ago
Tom Hacohen f36e099bb9 Change all of our components to export themselves as default. 7 years ago
Tom Hacohen 43127dc53f Put username on the upper right corner. 7 years ago
Tom Hacohen 3c3ffb15d3 Implement logout and workaround an issue with redux-persist not persisting.
For some reason it doesn't persist when credentials === undefined.
7 years ago
Tom Hacohen 36cf88aaf2 Fix the main navigation link. 7 years ago
Tom Hacohen 1a9202521d Add in-app navigation links. 7 years ago
Tom Hacohen fddf39244d Add a contact page. 7 years ago
Tom Hacohen 516bdd2622 Improve log in look and feel. 7 years ago
Tom Hacohen d7c90ccb0a Move to material-ui. 7 years ago
Tom Hacohen f5c31a3dbe Add views for actual collection items.
I.e calendar events and address book content.
7 years ago
Tom Hacohen 25bf249d9f Improve journal page. 7 years ago
Tom Hacohen 132f63e2a6 Move all of the etesync context to a separate place.
This means that encryption key derivation and token access
are not called as often.
7 years ago
Tom Hacohen 6f9c783159 Cleanup the route resolver a bit. 7 years ago
Tom Hacohen 7dd8248aab Added a hacky journal view.
A lot of code duplication.
7 years ago
Tom Hacohen 557e5ec0b4 Add basic routing. 7 years ago
Tom Hacohen b9798f1b13 Switch to the hash router for security.
This is needed to avoid accidentally leaking urls to the server.
7 years ago
Tom Hacohen bba3282def Add a basic journal list view. 7 years ago
Tom Hacohen e0cc13cfd2 Initial code import of the etesync encryption and service module
This will be a small library in the end, but at the moment it's in this
repo for convenience. It includes the etesync service, crypto and tests
to cover them.

The tests require a running debug etesync server.

To create one, just create a server from:
https://github.com/etesync/server-skeleton/

Set DEBUG to True, and create a test user with the credentials that are
listed in the test files.
7 years ago
Tom Hacohen 3a60a35a99 Initial commit. 7 years ago