diff options
Diffstat (limited to 'ext/bg/js/anki-note-builder.js')
-rw-r--r-- | ext/bg/js/anki-note-builder.js | 42 |
1 files changed, 10 insertions, 32 deletions
diff --git a/ext/bg/js/anki-note-builder.js b/ext/bg/js/anki-note-builder.js index 632d9f8a..eae5fbe4 100644 --- a/ext/bg/js/anki-note-builder.js +++ b/ext/bg/js/anki-note-builder.js @@ -16,7 +16,6 @@ */ /* global - * DictionaryDataUtil * TemplateRendererProxy */ @@ -35,6 +34,7 @@ class AnkiNoteBuilder { modelName, fields, tags=[], + injectedMedia=null, checkForDuplicates=true, duplicateScope='collection', resultOutputMode='split', @@ -50,7 +50,15 @@ class AnkiNoteBuilder { duplicateScopeCheckChildren = true; } - const data = this._createNoteData(definition, mode, context, resultOutputMode, glossaryLayoutMode, compactTags); + const data = { + definition, + mode, + context, + resultOutputMode, + glossaryLayoutMode, + compactTags, + injectedMedia + }; const formattedFieldValuePromises = []; for (const [, fieldValue] of fields) { const formattedFieldValuePromise = this._formatField(fieldValue, data, templates, errors); @@ -104,36 +112,6 @@ class AnkiNoteBuilder { // Private - _createNoteData(definition, mode, context, resultOutputMode, glossaryLayoutMode, compactTags) { - const pitches = DictionaryDataUtil.getPitchAccentInfos(definition); - const pitchCount = pitches.reduce((i, v) => i + v.pitches.length, 0); - const uniqueExpressions = new Set(); - const uniqueReadings = new Set(); - if (definition.type !== 'kanji') { - for (const {expression, reading} of definition.expressions) { - uniqueExpressions.add(expression); - uniqueReadings.add(reading); - } - } - return { - marker: null, - definition, - uniqueExpressions: [...uniqueExpressions], - uniqueReadings: [...uniqueReadings], - pitches, - pitchCount, - group: resultOutputMode === 'group', - merge: resultOutputMode === 'merge', - modeTermKanji: mode === 'term-kanji', - modeTermKana: mode === 'term-kana', - modeKanji: mode === 'kanji', - compactGlossaries: (glossaryLayoutMode === 'compact'), - glossaryLayoutMode, - compactTags, - context - }; - } - async _formatField(field, data, templates, errors=null) { return await this._stringReplaceAsync(field, this._markerPattern, async (g0, marker) => { try { |