diff options
Diffstat (limited to 'ext/bg/js/database.js')
-rw-r--r-- | ext/bg/js/database.js | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/bg/js/database.js b/ext/bg/js/database.js index f3a9732c..4c8703c3 100644 --- a/ext/bg/js/database.js +++ b/ext/bg/js/database.js @@ -133,7 +133,7 @@ class Database { const promises = []; for (const dictionary of dictionaries) { - if (this.entities.hasOwnProperty(dictionary)) { + if (this.entities[dictionary]) { promises.push(Promise.resolve(this.entities[dictionary])); } else { const entities = this.entities[dictionary] = {}; @@ -146,14 +146,14 @@ class Database { } return Promise.all(promises).then(results => { - const entries = {}; + const entities = {}; for (const result of results) { for (const name in result) { - entries[name] = result[name]; + entities[name] = result[name]; } } - return entries; + return entities; }); } @@ -243,7 +243,9 @@ class Database { return Promise.reject('database not initialized'); } + let summary = null; const indexLoaded = (title, version, entities, hasTerms, hasKanji) => { + summary = {title, hasTerms, hasKanji, version}; return this.db.dictionaries.where('title').equals(title).count().then(count => { if (count > 0) { return Promise.reject(`dictionary "${title}" is already imported`); @@ -301,6 +303,6 @@ class Database { }); }; - return importJsonDb(indexUrl, indexLoaded, termsLoaded, kanjiLoaded); + return importJsonDb(indexUrl, indexLoaded, termsLoaded, kanjiLoaded).then(() => summary); } } |