Tom Hacohen
278ebacad1
Add a nicer loading indicator.
2017-12-07 00:08:23 +00:00
Tom Hacohen
3bb8b6f101
Split out the login form from the etesync context.
2017-12-06 23:53:53 +00:00
Tom Hacohen
cd2a6caf52
JournalList: get rid of the extra div.
2017-12-06 23:53:08 +00:00
Tom Hacohen
123cf589dd
Remove debug code.
2017-12-06 23:40:34 +00:00
Tom Hacohen
87d150554c
Remove fragment from journal view.
2017-12-06 23:40:34 +00:00
Tom Hacohen
afb940d51a
Simplify fetchCount using combineActions.
2017-12-06 19:58:05 +00:00
Tom Hacohen
6566bc01df
Disable logger middleware in production builds.
2017-12-06 19:41:14 +00:00
Tom Hacohen
22381a1f85
Move to redux-actions.
2017-12-06 19:40:46 +00:00
Tom Hacohen
7e1d1087b1
Move to (our modified) redux-promise to simplify actions.
2017-12-06 17:52:38 +00:00
Tom Hacohen
49b9469284
Remove the redundant EteSyncContextType interface.
2017-12-06 11:18:37 +00:00
Tom Hacohen
c67ba9a233
Move actions to the store file and clean up imports.
2017-12-06 11:15:40 +00:00
Tom Hacohen
33b4cc083a
Add a component that acts as a gate for journal fetching.
2017-12-05 20:27:06 +00:00
Tom Hacohen
2e4c6b11aa
Move entry fetching to redux.
2017-12-05 20:27:06 +00:00
Tom Hacohen
f36e099bb9
Change all of our components to export themselves as default.
2017-12-05 20:27:06 +00:00
Tom Hacohen
43127dc53f
Put username on the upper right corner.
2017-12-05 20:27:06 +00:00
Tom Hacohen
38cb4170ed
Remove redundant class.
2017-12-05 20:27:06 +00:00
Tom Hacohen
e75d586c0f
Move journal fetching to redux.
2017-12-05 20:27:06 +00:00
Tom Hacohen
57f89e3840
Store: make global fetch count tracking generic.
2017-12-05 20:27:05 +00:00
Tom Hacohen
c6ec2bcaf1
Fix wrong type in store.
2017-12-05 20:27:05 +00:00
Tom Hacohen
fb660fc54c
Make request types generic.
2017-12-05 20:27:05 +00:00
Tom Hacohen
37aaebbbd8
Clear login form username and password on submission.
2017-12-05 20:27:05 +00:00
Tom Hacohen
3c3ffb15d3
Implement logout and workaround an issue with redux-persist not persisting.
...
For some reason it doesn't persist when credentials === undefined.
2017-12-05 20:27:05 +00:00
Tom Hacohen
94c6916447
Add a basic redux store.
2017-12-05 20:27:05 +00:00
Tom Hacohen
55f595d52a
Start using react fragments.
2017-12-05 20:27:05 +00:00
Tom Hacohen
36cf88aaf2
Fix the main navigation link.
2017-12-04 23:23:56 +00:00
Tom Hacohen
fe6490a098
Show raw journal items when clicked.
2017-12-04 23:18:06 +00:00
Tom Hacohen
00d8b43cc5
Login: change login form to be a controlled component.
...
I thought it would be easier to use an uncontrolled component, but
it fails when loading fails. The form just clears.
This fixes it.
2017-12-04 22:45:58 +00:00
Tom Hacohen
df4ea83208
Don't change history when switching tabs.
2017-12-04 22:45:58 +00:00
Tom Hacohen
b0741978d0
Journal list: improve look.
2017-12-04 22:45:58 +00:00
Tom Hacohen
1bf6314ac3
EteSync: fix the sync entry action constant for Delete.
2017-12-04 22:12:32 +00:00
Tom Hacohen
1a9202521d
Add in-app navigation links.
2017-12-04 21:55:47 +00:00
Tom Hacohen
5b8c000d45
Don't recreate views when switching tabs.
2017-12-04 21:41:03 +00:00
Tom Hacohen
635a41d41f
Add a calendar view.
2017-12-04 21:36:48 +00:00
Tom Hacohen
154beee6d1
Fix input types for the login page.
2017-12-04 21:36:27 +00:00
Tom Hacohen
fddf39244d
Add a contact page.
2017-12-04 19:22:39 +00:00
Tom Hacohen
2a6220e6d4
Make it possible to navigate between collection items and journal entries.
2017-12-04 19:22:39 +00:00
Tom Hacohen
6c96d7994f
Improve the look of the journals page.
2017-12-04 19:22:39 +00:00
Tom Hacohen
336a07e065
Remove the old welcome to react header.
2017-12-04 19:22:39 +00:00
Tom Hacohen
b668e6478a
Organise calendars and address books in lists.
2017-12-04 19:22:39 +00:00
Tom Hacohen
3faa7b3ed6
Simplify calls to setState, apparently it already shallow merges.
2017-12-04 16:50:54 +00:00
Tom Hacohen
f8ee484c3b
Add some login form validation.
2017-12-04 16:00:31 +00:00
Tom Hacohen
516bdd2622
Improve log in look and feel.
2017-12-04 15:41:18 +00:00
Tom Hacohen
622805a5b6
Improve the look and feel of the login form.
2017-12-04 15:05:35 +00:00
Tom Hacohen
ef92632885
Change to the production API and allow setting a custom server.
2017-12-04 14:45:01 +00:00
Tom Hacohen
0a05095da2
Home: redirect to the journals view.
2017-12-04 14:45:01 +00:00
Tom Hacohen
d7c90ccb0a
Move to material-ui.
2017-12-04 14:45:01 +00:00
Tom Hacohen
295867a439
Login form: add a missing prevent default.
2017-12-04 13:28:55 +00:00
Tom Hacohen
07c986b01d
Add a very basic login page and cache the keys in session storage.
2017-12-03 23:49:16 +00:00
Tom Hacohen
2947607a45
Update type definitions for ICAL and fix type errors.
2017-12-03 22:30:42 +00:00
Tom Hacohen
f5c31a3dbe
Add views for actual collection items.
...
I.e calendar events and address book content.
2017-12-03 20:06:53 +00:00
Tom Hacohen
8c20687a72
Split away the journal list item view from the jorunal view.
2017-12-03 13:44:23 +00:00
Tom Hacohen
e92a9c9961
Improve presentation of journal log.
2017-12-03 13:27:32 +00:00
Tom Hacohen
8087f2d3f4
Fix to previous commit: fix redirect to entries page.
2017-12-03 12:59:03 +00:00
Tom Hacohen
d4c49c1f55
Load the actual journal from the journal page.
...
This fixes viewing journals with version != 1.
2017-12-01 18:37:33 +00:00
Tom Hacohen
25bf249d9f
Improve journal page.
2017-12-01 18:15:08 +00:00
Tom Hacohen
af921e1b28
Move the header back outside of the internal components.
2017-12-01 17:58:27 +00:00
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.
2017-12-01 17:42:57 +00:00
Tom Hacohen
6f9c783159
Cleanup the route resolver a bit.
2017-12-01 16:26:11 +00:00
Tom Hacohen
7dd8248aab
Added a hacky journal view.
...
A lot of code duplication.
2017-12-01 16:18:11 +00:00
Tom Hacohen
557e5ec0b4
Add basic routing.
2017-12-01 15:44:38 +00:00
Tom Hacohen
b9798f1b13
Switch to the hash router for security.
...
This is needed to avoid accidentally leaking urls to the server.
2017-12-01 15:34:07 +00:00
Tom Hacohen
bba3282def
Add a basic journal list view.
2017-12-01 15:33:30 +00:00
Tom Hacohen
9fd1b31299
Fix journal not having version set.
...
This commit also cleans up the sharing between the json from the API and
the internal state of the object.
2017-12-01 15:16:36 +00:00
Tom Hacohen
11aa1ffd94
API: first verify, then try to decrypt!
2017-12-01 14:10:58 +00:00
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.
2017-12-01 12:05:29 +00:00
Tom Hacohen
3a60a35a99
Initial commit.
2017-11-30 11:06:15 +00:00