From 31e20c889e467aa4ba64b0b5baf602adc1359371 Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Fri, 20 May 2022 10:28:38 -0400 Subject: ESlint JSdoc (#2148) * Install eslint-plugin-jsdoc * Initial rules setup * Update lists * Use @returns rather than @return * Remove error throwing code which is never executed * Fix issues relating to @throws * General error fixes * Update Display type documentation * Various doc fixes * Fix invalid tuple syntax * Doc updates * Remove unused * Doc updates * Enable jsdoc/require-returns * Update rules * Update remaining rules --- ext/js/data/sandbox/anki-note-data-creator.js | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) (limited to 'ext/js/data/sandbox/anki-note-data-creator.js') diff --git a/ext/js/data/sandbox/anki-note-data-creator.js b/ext/js/data/sandbox/anki-note-data-creator.js index 96f97896..e1c32193 100644 --- a/ext/js/data/sandbox/anki-note-data-creator.js +++ b/ext/js/data/sandbox/anki-note-data-creator.js @@ -26,7 +26,7 @@ class AnkiNoteDataCreator { /** * Creates a new instance. - * @param japaneseUtil An instance of `JapaneseUtil`. + * @param {JapaneseUtil} japaneseUtil An instance of `JapaneseUtil`. */ constructor(japaneseUtil) { this._japaneseUtil = japaneseUtil; @@ -34,8 +34,16 @@ class AnkiNoteDataCreator { /** * Creates a compatibility representation of the specified data. - * @param marker The marker that is being used for template rendering. - * @returns An object used for rendering Anki templates. + * @param {string} marker The marker that is being used for template rendering. + * @param {object} details Information which is used to generate the data. + * @param {Translation.DictionaryEntry} details.dictionaryEntry The dictionary entry. + * @param {string} details.resultOutputMode The result output mode. + * @param {string} details.mode The mode being used to generate the Anki data. + * @param {string} details.glossaryLayoutMode The glossary layout mode. + * @param {boolean} details.compactTags Whether or not compact tags mode is enabled. + * @param {{documentTitle: string, query: string, fullQuery: string}} details.context Contextual information about the source of the dictionary entry. + * @param {object} details.media Media data. + * @returns {object} An object used for rendering Anki templates. */ create(marker, { dictionaryEntry, @@ -83,8 +91,8 @@ class AnkiNoteDataCreator { /** * Creates a deferred-evaluation value. - * @param getter The function to invoke to get the return value. - * @returns An object which can be passed into `getCachedValue`. + * @param {Function} getter The function to invoke to get the return value. + * @returns {{getter: Function, hasValue: false, value: undefined}} An object which can be passed into `getCachedValue`. */ createCachedValue(getter) { return {getter, hasValue: false, value: void 0}; @@ -92,8 +100,8 @@ class AnkiNoteDataCreator { /** * Gets the value of a cached object. - * @param item An object that was returned from `createCachedValue`. - * @returns The result of evaluating the getter, which is cached after the first invocation. + * @param {{getter: Function, hasValue: boolean, value: *}} item An object that was returned from `createCachedValue`. + * @returns {*} The result of evaluating the getter, which is cached after the first invocation. */ getCachedValue(item) { if (item.hasValue) { return item.value; } -- cgit v1.2.3