diff options
| author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2020-12-30 15:12:08 -0500 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-30 15:12:08 -0500 | 
| commit | 4650f0b5426c07e1aca3bec2a07607556a1e1f34 (patch) | |
| tree | fa940311c4f4cdd15e274eac7a44f21722cb7589 /ext | |
| parent | 0f3b9ec7fc2b1c7ba1780d7186dc425c3975c099 (diff) | |
Translator frequency data improvements (#1184)
* Specify if a frequency has a specific reading
* Make frequency data creation more standardized
* Update test data
Diffstat (limited to 'ext')
| -rw-r--r-- | ext/bg/js/translator.js | 18 | 
1 files changed, 13 insertions, 5 deletions
| diff --git a/ext/bg/js/translator.js b/ext/bg/js/translator.js index df43993f..27870cf5 100644 --- a/ext/bg/js/translator.js +++ b/ext/bg/js/translator.js @@ -706,7 +706,7 @@ class Translator {                  switch (mode) {                      case 'freq':                          { -                            const frequencyData = this._getFrequencyData(expression, reading, dictionary, data); +                            const frequencyData = this._getTermFrequencyData(expression, reading, dictionary, data);                              if (frequencyData === null) { continue; }                              for (const {frequencies} of targets) { frequencies.push(frequencyData); }                          } @@ -733,7 +733,10 @@ class Translator {          for (const {character, mode, data, dictionary, index} of metas) {              switch (mode) {                  case 'freq': -                    definitions[index].frequencies.push({character, frequency: data, dictionary}); +                    { +                        const frequencyData = this._getKanjiFrequencyData(character, dictionary, data); +                        definitions[index].frequencies.push(frequencyData); +                    }                      break;              }          } @@ -805,13 +808,18 @@ class Translator {          return tagMetaList;      } -    _getFrequencyData(expression, reading, dictionary, data) { +    _getTermFrequencyData(expression, reading, dictionary, data) {          let frequency = data; -        if (data !== null && typeof data === 'object') { +        const hasReading = (data !== null && typeof data === 'object'); +        if (hasReading) {              if (data.reading !== reading) { return null; }              frequency = data.frequency;          } -        return {expression, reading, dictionary, frequency}; +        return {dictionary, expression, reading, hasReading, frequency}; +    } + +    _getKanjiFrequencyData(character, dictionary, data) { +        return {dictionary, character, frequency: data};      }      async _getPitchData(expression, reading, dictionary, data) { |