aboutsummaryrefslogtreecommitdiff
path: root/ext/js/data/anki-note-builder.js
diff options
context:
space:
mode:
authorKuuuube <61125188+Kuuuube@users.noreply.github.com>2024-06-22 00:40:59 -0400
committerGitHub <noreply@github.com>2024-06-22 04:40:59 +0000
commit7cce3b9aebb6da75fb0ba0bfe15459aa47bbee00 (patch)
tree1183ff1175aa602c7e09488b4cc557ab1a873c62 /ext/js/data/anki-note-builder.js
parent1d8f2f499a71bf528aedb9b0eeeb036340ed85ac (diff)
Support dictionaryStylesMap in anki-deck-generator-controller and anki-templates-controller (#1112)
* Support dictionaryStylesMap in bulk anki card generation * Move getDictionaryStylesMap to anki-note-builder * Support dictionaryStylesMap in anki-templates-controller * Strip newline to prevent tsv breaking * Allow dictionaryStylesMap to be omitted in createNote --------- Signed-off-by: Kuuuube <61125188+Kuuuube@users.noreply.github.com>
Diffstat (limited to 'ext/js/data/anki-note-builder.js')
-rw-r--r--ext/js/data/anki-note-builder.js17
1 files changed, 16 insertions, 1 deletions
diff --git a/ext/js/data/anki-note-builder.js b/ext/js/data/anki-note-builder.js
index 17bc1a5c..38588439 100644
--- a/ext/js/data/anki-note-builder.js
+++ b/ext/js/data/anki-note-builder.js
@@ -60,7 +60,7 @@ export class AnkiNoteBuilder {
glossaryLayoutMode = 'default',
compactTags = false,
mediaOptions = null,
- dictionaryStylesMap,
+ dictionaryStylesMap = new Map(),
}) {
let duplicateScopeDeckName = null;
let duplicateScopeCheckChildren = false;
@@ -173,6 +173,21 @@ export class AnkiNoteBuilder {
return {type, term, reading};
}
+ /**
+ * @param {import('settings').DictionariesOptions} dictionaries
+ * @returns {Map<string, string>}
+ */
+ getDictionaryStylesMap(dictionaries) {
+ const styleMap = new Map();
+ for (const dictionary of dictionaries) {
+ const {name, styles} = dictionary;
+ if (typeof styles === 'string') {
+ styleMap.set(name, styles);
+ }
+ }
+ return styleMap;
+ }
+
// Private
/**