From 37ed61d9c88a350ae0885ed2aa5d380c86b1afbd Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Tue, 28 Nov 2017 08:55:15 -0800 Subject: [PATCH] Fixes: Issue with missing collection id --- app/models/Collection.js | 13 +++++++++++++ app/scenes/Collection/Collection.js | 4 ++-- app/stores/DocumentsStore.js | 9 ++++----- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/app/models/Collection.js b/app/models/Collection.js index e7a4013f2..1516e77fa 100644 --- a/app/models/Collection.js +++ b/app/models/Collection.js @@ -44,6 +44,19 @@ class Collection extends BaseModel { return this.documents.length === 0; } + @computed + get documentIds(): string[] { + const results = []; + const travelDocuments = (documentList, path) => + documentList.forEach(document => { + results.push(document.id); + travelDocuments(document.children); + }); + + travelDocuments(this.documents); + return results; + } + /* Actions */ @action diff --git a/app/scenes/Collection/Collection.js b/app/scenes/Collection/Collection.js index 5d08074e7..9375ac37a 100644 --- a/app/scenes/Collection/Collection.js +++ b/app/scenes/Collection/Collection.js @@ -123,8 +123,8 @@ class CollectionScene extends Component { Recently edited diff --git a/app/stores/DocumentsStore.js b/app/stores/DocumentsStore.js index f03d025ed..8bdc77eac 100644 --- a/app/stores/DocumentsStore.js +++ b/app/stores/DocumentsStore.js @@ -48,15 +48,14 @@ class DocumentsStore extends BaseStore { } @computed - get recentlyEdited(): Array { + get recentlyEdited(): Document[] { return _.take(_.orderBy(this.data.values(), 'updatedAt', 'desc'), 5); } - recentlyEditedInCollection(collectionId: string): Array { + recentlyEditedIn(documentIds: string[]): Document[] { return _.orderBy( - _.filter( - this.data.values(), - document => document.collection.id === collectionId + _.filter(this.data.values(), document => + documentIds.includes(document.id) ), 'updatedAt', 'desc'