Commit Graph

815 Commits (bd649a61cce6efceab299f00a1a20c83254bb35e)

Author SHA1 Message Date
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
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.
2017-12-15 12:52:22 +00:00
Tom Hacohen 50a9094a8b Explicitly include react-router as a dep. 2017-12-15 12:43:58 +00:00
Tom Hacohen 264145eb72 Pim: no longer pass the match object. 2017-12-14 14:35:29 +00:00
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.
2017-12-14 14:31:17 +00:00
Tom Hacohen 6c4f077d0f Add missing new for records. 2017-12-14 12:06:12 +00:00
Tom Hacohen 4f88ff6364 Adjust code to work with es5 as a target. 2017-12-14 11:13:01 +00:00
Tom Hacohen a6ad199023 Make all of the React.Components Pure. 2017-12-14 10:58:25 +00:00
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.
2017-12-14 10:58:25 +00:00
Tom Hacohen 6d09ea1ac6 Add immutable.js. 2017-12-14 10:58:25 +00:00
Tom Hacohen ce71c5422f Pim: cleanup the syncenttry and journals processing.. 2017-12-14 10:58:25 +00:00
Tom Hacohen cabd82b382 Journal: remove accidental ; in content. 2017-12-13 15:56:41 +00:00
Tom Hacohen ce2c89aa50 Login form: disallow connecting to HTTP addresses in production. 2017-12-13 15:48:44 +00:00
Tom Hacohen 3231131e7e Add basic validation for events. 2017-12-13 15:31:04 +00:00
Tom Hacohen f12bc374f4 ContactEdit: remove unset properties. 2017-12-13 15:23:37 +00:00
Tom Hacohen c51804d7fe Event and contact: update last modified. 2017-12-13 15:22:00 +00:00
Tom Hacohen de3f96a10d ContactEdit: add IMPP. 2017-12-13 15:12:25 +00:00
Tom Hacohen 29ffb5a74b Add a few more contact fields. 2017-12-13 15:01:58 +00:00
Tom Hacohen 1524600e4b In iCal, all day events are until the end date not including
Adjust accordingly, and add some basic validation.
2017-12-13 14:40:06 +00:00
Tom Hacohen 29ae3005ea EventEdit: don't discard fields we don't handle and add a note about it. 2017-12-13 14:18:45 +00:00
Tom Hacohen da935c0836 Fix editing events of a journal other than the default. 2017-12-13 14:11:56 +00:00
Tom Hacohen 6d4c9c01e0 Fix saving of contacts. 2017-12-13 14:11:56 +00:00
Tom Hacohen 8c3adcdc94 Don't save empty properties. 2017-12-13 14:11:56 +00:00
Tom Hacohen fec1edf711 Make contact view more ressilient. 2017-12-13 14:11:56 +00:00
Tom Hacohen cf396ff904 Add missing version properties. 2017-12-13 14:11:56 +00:00
Tom Hacohen a7eb74bee1 Cleanup ContactEdit a bit and add address support. 2017-12-13 14:11:56 +00:00