diff options
Diffstat (limited to 'ext/bg/js/api.js')
-rw-r--r-- | ext/bg/js/api.js | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/ext/bg/js/api.js b/ext/bg/js/api.js index 2afe82a0..4676e2dc 100644 --- a/ext/bg/js/api.js +++ b/ext/bg/js/api.js @@ -66,22 +66,29 @@ async function apiDefinitionAdd(definition, mode) { } async function apiDefinitionsAddable(definitions, modes) { - const notes = []; - for (const definition of definitions) { - for (const mode of modes) { - notes.push(dictNoteFormat(definition, mode, utilBackend().options)); + const states = []; + + try { + const notes = []; + for (const definition of definitions) { + for (const mode of modes) { + notes.push(dictNoteFormat(definition, mode, utilBackend().options)); + } } - } - const results = await utilBackend().anki.canAddNotes(notes); - const states = []; - for (let resultBase = 0; resultBase < results.length; resultBase += modes.length) { - const state = {}; - for (let modeOffset = 0; modeOffset < modes.length; ++modeOffset) { - state[modes[modeOffset]] = results[resultBase + modeOffset]; + const results = await utilBackend().anki.canAddNotes(notes); + for (let resultBase = 0; resultBase < results.length; resultBase += modes.length) { + const state = {}; + for (let modeOffset = 0; modeOffset < modes.length; ++modeOffset) { + state[modes[modeOffset]] = results[resultBase + modeOffset]; + } + + states.push(state); } - states.push(state); + return states; + } catch (e) { + // NOP } return states; |