From 57ff111925bb20b8f4bb566e273466fa731c9341 Mon Sep 17 00:00:00 2001 From: Halla Moore Date: Thu, 16 Feb 2017 15:37:27 -0800 Subject: [PATCH] [client-app, client-sync] Save imap folder names in the client-app Summary: Client-sync has the full imap folder names, but used to only pass the display name to the application. The application needs the full imap names so that it can pass them via metadata to cloud-workers that need to open imap boxes. Test Plan: manual Reviewers: evan, juan Reviewed By: evan, juan Subscribers: juan Differential Revision: https://phab.nylas.com/D3951 --- packages/client-app/src/flux/models/category.es6 | 4 ++++ packages/client-sync/src/models/folder.es6 | 1 + packages/client-sync/src/models/label.js | 1 + 3 files changed, 6 insertions(+) diff --git a/packages/client-app/src/flux/models/category.es6 b/packages/client-app/src/flux/models/category.es6 index 5f169b321..58b4cff23 100644 --- a/packages/client-app/src/flux/models/category.es6 +++ b/packages/client-app/src/flux/models/category.es6 @@ -71,6 +71,10 @@ export default class Category extends Model { modelKey: 'displayName', jsonKey: 'display_name', }), + imapName: Attributes.String({ + modelKey: 'imapName', + jsonKey: 'imap_name', + }), syncProgress: Attributes.Object({ modelKey: 'syncProgress', jsonKey: 'sync_progress', diff --git a/packages/client-sync/src/models/folder.es6 b/packages/client-sync/src/models/folder.es6 index 36183838b..759021582 100644 --- a/packages/client-sync/src/models/folder.es6 +++ b/packages/client-sync/src/models/folder.es6 @@ -101,6 +101,7 @@ export default (sequelize, Sequelize) => { object: 'folder', name: this.role, display_name: formatImapPath(this.name), + imap_name: this.name, sync_progress: this.syncProgress(), // intentionally overwrite any sync states stored in edgehill.db, // since it may contain long arrays and cause perf degredation diff --git a/packages/client-sync/src/models/label.js b/packages/client-sync/src/models/label.js index b0da80715..4dce8a945 100644 --- a/packages/client-sync/src/models/label.js +++ b/packages/client-sync/src/models/label.js @@ -51,6 +51,7 @@ module.exports = (sequelize, Sequelize) => { object: 'label', name: this.role, display_name: formatImapPath(this.name), + imap_name: this.name, }; }, },