this also start splitting a bit the AccountPage component
as CalculateBalance will memoize things, we want inner part to be potentially re-render if they depend on other things, we do this by connecting them to redux. redux idea is to connect leafs instead of connecting the whole tree when possible, so this fit this paradigm to me.
Bootstrap analytics
- Two components: <Track> and <TrackPage>. we should try to ALWAYS use them. only case you might not use them is for imperative events (click, etc..)
- also: introduce a "Use system locale" for the language because analytics need to diffferenciate if lang was set by user of fallbacked. it's also better when we'll introduce new lang to users to directly auto switch to their system's
- started to track some pages and events. there will be more required and we'll have to add some in the next days
filtering developper tools
- Two components: <Track> and <TrackPage>. we should try to ALWAYS use them. only case you might not use them is for imperative events (click, etc..)
- also: introduce a "Use system locale" for the language because analytics need to diffferenciate if lang was set by user of fallbacked. it's also better when we'll introduce new lang to users to directly auto switch to their system's
- started to track some pages and events. there will be more required and we'll have to add some in the next days
To be improved: this commits introduce regression on OSX behaviour
when hiding the window: before it was keeping the app opened, and
auto locking it. Now it kills it :D
I honestly think it's worth it regarding the problem zombies process
causes (LOCK on sqlite...).
Outdated rarely happen: it's only if you have not yet pulled for a time and you had no network condition. because otherwise, our pull interval is always smaller than the time we consider 'outdated' (set at block time + 5mn to be safe)
In case an error occur during the sync, we won't show it until one of the account is also outdated, which i think will lighten a bit the cases we have errors. we can decide later to be smarter and more verbose (like being able to know which account have a problem, which one is not sync etc..) but we'll need to have a design for it