diff --git a/browser/finder/NoteDetail.js b/browser/finder/NoteDetail.js
index 98460b48..3652017c 100644
--- a/browser/finder/NoteDetail.js
+++ b/browser/finder/NoteDetail.js
@@ -115,6 +115,7 @@ class NoteDetail extends React.Component {
})
+
let viewList = note.snippets.map((snippet, index) => {
let isActive = this.state.snippetIndex === index
let mode = snippet.mode === 'text'
@@ -133,7 +134,7 @@ class NoteDetail extends React.Component {
/>
{snippet.mode === 'markdown'
diff --git a/browser/finder/NoteList.js b/browser/finder/NoteList.js
index 7087eb53..30d0163a 100644
--- a/browser/finder/NoteList.js
+++ b/browser/finder/NoteList.js
@@ -54,12 +54,12 @@ class NoteList extends React.Component {
}
render () {
- let { storages, notes, index } = this.props
+ let { storageMap, notes, index } = this.props
let notesList = notes
.slice(0, 10 + 10 * this.state.range)
.map((note, _index) => {
- let storage = _.find(storages, {key: note.storage})
+ let storage = storageMap[note.storage]
let folder = _.find(storage.folders, {key: note.folder})
return (
this.handleStorageButtonClick(e, storage)}
- handleFolderButtonClick={(e, storage, folder) => this.handleFolderButtonClick(e, storage, folder)}
- />)
+ let storageList = []
+ for (let key in data.storageMap) {
+ let storage = data.storageMap[key]
+ let item = (
+ this.handleStorageButtonClick(e, storage)}
+ handleFolderButtonClick={(e, storage, folder) => this.handleFolderButtonClick(e, storage, folder)}
+ />
+ )
+ storageList.push(item)
+ }
+ let notes = []
+ let noteIds
+
+ switch (filter.type) {
+ case 'STORAGE':
+ noteIds = data.storageNoteMap[filter.storage]
+ break
+ case 'FOLDER':
+ noteIds = data.folderNoteMap[filter.storage + '-' + filter.folder]
+ break
+ case 'STARRED':
+ noteIds = data.starredSet
+ }
+ if (noteIds != null) {
+ noteIds.forEach((id) => {
+ notes.push(data.noteMap[id])
+ })
+ } else {
+ for (let key in data.noteMap) {
+ notes.push(data.noteMap[key])
+ }
+ }
+
if (!filter.includeSnippet && filter.includeMarkdown) {
notes = notes.filter((note) => note.type === 'MARKDOWN_NOTE')
} else if (filter.includeSnippet && !filter.includeMarkdown) {
notes = notes.filter((note) => note.type === 'SNIPPET_NOTE')
}
- switch (filter.type) {
- case 'STORAGE':
- notes = notes.filter((note) => note.storage === filter.storage)
- break
- case 'FOLDER':
- notes = notes.filter((note) => note.storage === filter.storage && note.folder === filter.folder)
- break
- case 'STARRED':
- notes = notes.filter((note) => note.isStarred)
- }
-
if (search.trim().length > 0) {
let needle = new RegExp(_.escapeRegExp(search.trim()), 'i')
notes = notes.filter((note) => note.title.match(needle))
@@ -302,7 +320,7 @@ class FinderMain extends React.Component {