diff options
author | StefanVukovic99 <stefanvukovic44@gmail.com> | 2024-05-05 02:30:09 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-05 00:30:09 +0000 |
commit | 2d191bfdbd955a363e7afdc79c7a2b4b11a2e9b7 (patch) | |
tree | eb3706b9ed98ba5347612088821ae046a0719fc8 /ext/js/pages/settings/anki-templates-controller.js | |
parent | c3c5d58688a411c6ed450b89494c59037197df55 (diff) |
add single dictionary handlebars (#814)24.5.5.0
* add single dictionary handlebars
* fix dicts with kanji in title
* sort
* rename to single-glossary-XYZ
* add brief and no dict variants
* add docs, only terms no kanji
* allow testing single dict handlebars
* remove empty comment
Diffstat (limited to 'ext/js/pages/settings/anki-templates-controller.js')
-rw-r--r-- | ext/js/pages/settings/anki-templates-controller.js | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/ext/js/pages/settings/anki-templates-controller.js b/ext/js/pages/settings/anki-templates-controller.js index a0a6bd6c..dd96f69c 100644 --- a/ext/js/pages/settings/anki-templates-controller.js +++ b/ext/js/pages/settings/anki-templates-controller.js @@ -19,6 +19,7 @@ import {ExtensionError} from '../../core/extension-error.js'; import {toError} from '../../core/to-error.js'; import {AnkiNoteBuilder} from '../../data/anki-note-builder.js'; +import {getDynamicTemplates} from '../../data/anki-template-util.js'; import {querySelectorNotNull} from '../../dom/query-selector.js'; import {TemplateRendererProxy} from '../../templates/template-renderer-proxy.js'; @@ -244,8 +245,7 @@ export class AnkiTemplatesController { query: sentenceText, fullQuery: sentenceText }; - let template = options.anki.fieldTemplates; - if (typeof template !== 'string') { template = this._defaultFieldTemplates; } + const template = this._getAnkiTemplate(options); const {general: {resultOutputMode, glossaryLayoutMode, compactTags}} = options; const {note, errors} = await this._ankiNoteBuilder.createNote(/** @type {import('anki-note-builder').CreateNoteDetails} */ ({ dictionaryEntry, @@ -293,4 +293,15 @@ export class AnkiTemplatesController { /** @type {HTMLTextAreaElement} */ (this._fieldTemplatesTextarea).dataset.invalid = `${hasError}`; } } + + /** + * @param {import('settings').ProfileOptions} options + * @returns {string} + */ + _getAnkiTemplate(options) { + let staticTemplates = options.anki.fieldTemplates; + if (typeof staticTemplates !== 'string') { staticTemplates = this._defaultFieldTemplates; } + const dynamicTemplates = getDynamicTemplates(options); + return staticTemplates + '\n' + dynamicTemplates; + } } |