Mailspring/spec
Juan Tejada d92506d8f1 fix(sync-status): Change old per model status, in favor of per folder
Summary:
Addresses T7275
Previously, we kept track of the sync status of each API model, and the progress
we'd made syncing all available models (e.g. all threads, messages, events, etc)

Given K2's set up, we are now keeping track of sync status per folder, i.e. what
percent of the folder's messages we've synced. This status is now reported from K2
to N1 via folder object deltas, and this commit rewrites the
NylasSyncStatusStore (in ES6) to reflect that.

The new Store keeps the sync state per account, which is the merged state of
per folder sync state, and delta connections state.
We also got rid of `CategoryStore.whenCategoriesReady` in favor of
`whenCategoryListSynced`, which is derived from the fact hat as long as we've
started syncing one folder, we've already synced the entire list of of folders/labels.

There are a couple of TODOs to be addressed in upcoming diffs:
- T7329 Restore the sidebar component to show sync progress, which was previously removed
- T7330 Figure out how to report sync progress per label, specifically, we are interested in knowing how much of the inbox we've synced, which is a label in Gmail. (This might be a non-issue if we sync the inbox very fast, first)

Depends on D3514

Test Plan: Manual

Reviewers: mark, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3515
2016-12-15 11:17:20 -08:00
..
components fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
fixtures fix(quote): fix more cases of unwrapped signature detection 2016-11-14 11:55:37 -08:00
models fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
n1-spec-runner fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
registries refactor(registry): move all registries into src/registries 2016-11-14 14:01:00 -08:00
services fix(quote): fix more cases of unwrapped signature detection 2016-11-14 11:55:37 -08:00
stores fix(sync-status): Change old per model status, in favor of per folder 2016-12-15 11:17:20 -08:00
tasks fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
themes rm(grim): We’re not using Grim for deprecations 2016-10-25 11:36:20 -07:00
utils fix(specs) Fix date-utils specs 2016-11-07 12:15:47 -08:00
action-bridge-spec.coffee fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
async-test-spec.es6 fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
auto-update-manager-spec.coffee fix(autoupdater): Change feed URL when Nylas ID or accounts changes 2016-08-18 13:22:56 -07:00
buffered-process-spec.coffee refactor(spec) move spec-nylas to spec 2015-10-01 21:39:44 -07:00
database-object-registry-spec.es6 refactor(registry): move all registries into src/registries 2016-11-14 14:01:00 -08:00
default-client-helper-spec.coffee feat(win32): Allow N1 to become the system-wide mailto: handler 2016-10-12 16:05:36 -07:00
list-selection-spec.coffee fix(specs): Add regression test for list-selection 2016-11-02 11:46:28 -07:00
mail-rules-processor-spec.coffee fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
mailbox-perspective-spec.es6 lint(*): Bump to ESLint 3.8 2016-10-17 18:07:35 -07:00
menu-manager-spec.coffee es6(*): Misc src to ES2016 2016-10-27 12:08:59 -07:00
module-cache-spec.coffee fix(specs): Update specs following 0.29.2 > 0.34.3 move 2015-11-17 17:40:06 -08:00
nylas-api-spec.coffee fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
nylas-env-spec.es6 fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
nylas-protocol-handler-spec.es6 fix(specs) convert nylas-protocol-handler-spec to ES6 (#2886) 2016-10-12 11:38:30 -07:00
nylas-test-utils.coffee cson(cleanup): Remove imports, only used for config.cson now 2016-04-24 20:33:34 -05:00
package-manager-spec.coffee fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
package-spec.coffee cleanup(specs): Remove space-pen. Goodbye, jQuery! 2016-04-26 13:14:07 -07:00
spellchecker-spec.es6 fix(spec): add support for async specs and disable misbehaving ones 2016-12-15 13:02:00 -05:00
undo-stack-spec.es6 lint(*): Bump to ESLint 3.8 2016-10-17 18:07:35 -07:00