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'