Tom Hacohen
2d76164666
Fix the back button to work on first load too.
2017-12-17 13:37:22 +00:00
Tom Hacohen
054caaa56f
Change the menu button to a back button on the main page.
2017-12-17 13:07:17 +00:00
Tom Hacohen
51abf02709
Fix PWA to work on the iphone.
2017-12-17 12:35:29 +00:00
Tom Hacohen
b4d3cd27b1
Update the color theme in the html file.
2017-12-17 12:22:10 +00:00
Tom Hacohen
f74ec6f05a
Merge JournalAddressbook and JournalCalendar.
2017-12-17 12:21:39 +00:00
Tom Hacohen
dd0b214702
Update the color scheme in the app's manifest.
2017-12-17 02:35:00 +00:00
Tom Hacohen
a32002eabd
Replace the a tag with an ExternalLink component.
...
This lets us handle behaviour more consistently, for example by opening
external links in a new tab.
2017-12-17 02:27:21 +00:00
Tom Hacohen
ec8a1d9017
Fix react-router related types.
2017-12-16 23:12:24 +00:00
Tom Hacohen
06887c58c3
Fix event types.
2017-12-16 23:06:18 +00:00
Tom Hacohen
e48ebc5137
Fix entries fetching by creating a fetchAll action.
2017-12-16 22:23:50 +00:00
Tom Hacohen
e38409203c
Remove fetching status from the store.
...
This was causing constant invalidations and therefore killing our performance.
2017-12-16 22:23:50 +00:00
Tom Hacohen
e58ddf8545
Implement shallow compare for the journal reducer.
...
The reason why we need it is that we don't have a concept of etag for
journal fetching, which means we were setting the store on each fetch
causing everything that depends on the journals to invalidate.
This triggers a bug that causes the entries not to refresh if the
journals haven't changed.
2017-12-16 21:53:12 +00:00
Tom Hacohen
2aa92f15e7
Reducer: don't reset the store when fetching.
...
There were a couple of bugs there:
1. The store was reset while fetching/error because the payload was
empty/error.
2. The error status wasn't reset after for successful fetches that
follow failed ones.
2017-12-16 21:33:40 +00:00
Tom Hacohen
b876a90a5a
Fix the calendar component to avoid re-rendering.
2017-12-16 20:59:08 +00:00
Tom Hacohen
8186055537
Syncgate: don't create the router aware components on each render.
2017-12-16 20:55:37 +00:00
Tom Hacohen
4613a65365
Don't recreate the persistant calendar component on each render.
2017-12-16 20:54:25 +00:00
Tom Hacohen
331d85d3a2
history persistor: follow the recommended HOC guidelines.
2017-12-16 20:29:50 +00:00
Tom Hacohen
5a1b3af9b0
Calendar: fix the unnecessary recration of closures.
2017-12-16 20:23:22 +00:00
Tom Hacohen
0d6ecfdbdf
Calendar: remove the unneccesary events sort.
2017-12-16 20:21:50 +00:00
Tom Hacohen
e085c0c40a
Side menu journals: don't trigger recalcs on route changes.
2017-12-16 20:10:23 +00:00
Tom Hacohen
a77e9077bf
Address book: make a component out of the list item.
2017-12-16 19:46:38 +00:00
Tom Hacohen
cec318f41f
Api: rename tsx files to ts.
2017-12-16 18:14:22 +00:00
Tom Hacohen
0ee6bbd340
Bring back list margin and remove the explicit contact padding
2017-12-16 18:11:36 +00:00
Tom Hacohen
98686f197a
Move all of the side menu items to one place.
2017-12-16 18:08:26 +00:00
Tom Hacohen
1da58da23e
Move all of the Pim related files to one dir.
2017-12-16 18:08:26 +00:00
Tom Hacohen
62dbc4b08d
Move all of the Journal related files to one dir.
2017-12-16 18:08:26 +00:00
Tom Hacohen
441549f41d
Move LoginForm to the component dir.
2017-12-16 17:54:31 +00:00
Tom Hacohen
e710e89200
Remove server url awareness from LoginForm making it a cleaner component.
2017-12-16 17:53:08 +00:00
Tom Hacohen
9f5da61dfb
Remove the hack we used for React.Fragment.
2017-12-16 17:46:00 +00:00
Tom Hacohen
6a586ac38f
Rename the Root to LoginGate because that's all it does.
2017-12-16 16:30:59 +00:00
Tom Hacohen
5ee24d054d
Move all of the view-only components to their own directory.
2017-12-16 16:30:59 +00:00
Tom Hacohen
85f5f91f36
Move the constants to their own module.
2017-12-16 16:30:59 +00:00
Tom Hacohen
4722207308
Change the suffix of helpers from .tsx to .ts.
...
They are not jsx files.
2017-12-16 16:30:59 +00:00
Tom Hacohen
d06b7610cd
Move the basic widgets to their own directory.
2017-12-16 16:05:21 +00:00
Tom Hacohen
9029d365bc
Move types to their own directory.
2017-12-16 15:57:09 +00:00
Tom Hacohen
48cd22b464
Move the store into its own module and split it up.
2017-12-16 15:52:46 +00:00
Tom Hacohen
e9db374206
Contact: fix virtual artefact with dividers.
2017-12-16 13:57:54 +00:00
Tom Hacohen
b93049f7a0
List: filter some of the props.
2017-12-16 13:57:19 +00:00
Tom Hacohen
b76ac00d78
Fix the ListDivider to be a list item.
2017-12-16 12:51:47 +00:00
Tom Hacohen
87e670ac97
Use the new MUI-like List API.
...
We had to change away from MUI because the list efficiency was abysmal.
Everything is an order of magnitude faster now.
2017-12-16 12:17:29 +00:00
Tom Hacohen
fdaef3a9f7
Make our List widget more like the mui one.
2017-12-16 12:15:12 +00:00
Tom Hacohen
3bb6d92be7
Add very basic error handling.
2017-12-16 00:19:20 +00:00
Tom Hacohen
2f96977646
Store fetching: fix the return record to include the error and fetching status.
2017-12-16 00:10:58 +00:00
Tom Hacohen
d3ad5b7080
Move @types/recompose to dev deps.
2017-12-15 23:39:22 +00:00
Tom Hacohen
7b7c96719d
Optimise PIM page a bit more.
2017-12-15 18:31:51 +00:00
Tom Hacohen
95c8bff9be
Cache the Pim related calculations.
...
No need to recalc everything if the input is the same.
2017-12-15 18:24:59 +00:00
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.
2017-12-15 18:11:08 +00:00
Tom Hacohen
360a6ad826
Create our own dedicated avatar widget.
2017-12-15 16:57:29 +00:00
Tom Hacohen
1a1bdc77af
Add our own list widget.
...
The material ui one is extremely inefficient and was causing noticeable
delays.
2017-12-15 16:50:51 +00:00
Tom Hacohen
08022994f2
Add recompose as a dep.
2017-12-15 16:49:59 +00:00