axyseo 2.0.0-alpha.0.0.6 → 2.0.0-alpha.0.0.61

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1253) hide show
  1. package/build/config/diacritics.js +1 -7
  2. package/build/config/diacritics.js.map +1 -1
  3. package/build/config/getTransliterations.js +6 -14
  4. package/build/config/getTransliterations.js.map +1 -1
  5. package/build/config/transliterationsWPstyle.js +5 -12
  6. package/build/config/transliterationsWPstyle.js.map +1 -1
  7. package/build/config/wordBoundaries.js +1 -7
  8. package/build/config/wordBoundaries.js.map +1 -1
  9. package/build/config/wordBoundariesWithoutPunctuation.js +2 -8
  10. package/build/config/wordBoundariesWithoutPunctuation.js.map +1 -1
  11. package/build/const/analysis.js +31 -11
  12. package/build/const/analysis.js.map +1 -1
  13. package/build/errors/invalidType.js +1 -8
  14. package/build/errors/invalidType.js.map +1 -1
  15. package/build/errors/missingArgument.js +1 -8
  16. package/build/errors/missingArgument.js.map +1 -1
  17. package/build/helpers/createMeasurementElement.js +1 -8
  18. package/build/helpers/createMeasurementElement.js.map +1 -1
  19. package/build/helpers/domManipulation.js +3 -8
  20. package/build/helpers/domManipulation.js.map +1 -1
  21. package/build/helpers/errors.js +5 -10
  22. package/build/helpers/errors.js.map +1 -1
  23. package/build/helpers/factory.js +7 -13
  24. package/build/helpers/factory.js.map +1 -1
  25. package/build/helpers/formatNumber.js +1 -7
  26. package/build/helpers/formatNumber.js.map +1 -1
  27. package/build/helpers/formatString.js +4 -9
  28. package/build/helpers/formatString.js.map +1 -1
  29. package/build/helpers/getLanguagesWithWordComplexity.js +1 -7
  30. package/build/helpers/getLanguagesWithWordComplexity.js.map +1 -1
  31. package/build/helpers/getLanguagesWithWordFormSupport.js +1 -7
  32. package/build/helpers/getLanguagesWithWordFormSupport.js.map +1 -1
  33. package/build/helpers/getWordComplexityConfig.js +9 -15
  34. package/build/helpers/getWordComplexityConfig.js.map +1 -1
  35. package/build/helpers/getWordComplexityHelper.js +9 -15
  36. package/build/helpers/getWordComplexityHelper.js.map +1 -1
  37. package/build/helpers/htmlEntities.js +6 -11
  38. package/build/helpers/htmlEntities.js.map +1 -1
  39. package/build/helpers/includesAny.js +3 -8
  40. package/build/helpers/includesAny.js.map +1 -1
  41. package/build/helpers/index.js +30 -72
  42. package/build/helpers/index.js.map +1 -1
  43. package/build/helpers/shortlinker/Shortlinker.js +1 -8
  44. package/build/helpers/shortlinker/Shortlinker.js.map +1 -1
  45. package/build/helpers/shortlinker/index.js +1 -16
  46. package/build/helpers/shortlinker/index.js.map +1 -1
  47. package/build/helpers/shortlinker/singleton.js +5 -13
  48. package/build/helpers/shortlinker/singleton.js.map +1 -1
  49. package/build/helpers/types.js +2 -9
  50. package/build/helpers/types.js.map +1 -1
  51. package/build/index.js +25 -87
  52. package/build/index.js.map +1 -1
  53. package/build/languageProcessing/AbstractResearcher.js +88 -95
  54. package/build/languageProcessing/AbstractResearcher.js.map +1 -1
  55. package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +3 -10
  56. package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js.map +1 -1
  57. package/build/languageProcessing/helpers/html/getFieldsToMark.js +6 -11
  58. package/build/languageProcessing/helpers/html/getFieldsToMark.js.map +1 -1
  59. package/build/languageProcessing/helpers/html/getSubheadingTexts.js +3 -8
  60. package/build/languageProcessing/helpers/html/getSubheadingTexts.js.map +1 -1
  61. package/build/languageProcessing/helpers/html/getSubheadings.js +2 -12
  62. package/build/languageProcessing/helpers/html/getSubheadings.js.map +1 -1
  63. package/build/languageProcessing/helpers/html/html.js +9 -17
  64. package/build/languageProcessing/helpers/html/html.js.map +1 -1
  65. package/build/languageProcessing/helpers/html/htmlParser.js +3 -10
  66. package/build/languageProcessing/helpers/html/htmlParser.js.map +1 -1
  67. package/build/languageProcessing/helpers/html/matchParagraphs.js +7 -12
  68. package/build/languageProcessing/helpers/html/matchParagraphs.js.map +1 -1
  69. package/build/languageProcessing/helpers/html/normalizeHTML.js +4 -10
  70. package/build/languageProcessing/helpers/html/normalizeHTML.js.map +1 -1
  71. package/build/languageProcessing/helpers/image/getAltAttribute.js +3 -9
  72. package/build/languageProcessing/helpers/image/getAltAttribute.js.map +1 -1
  73. package/build/languageProcessing/helpers/image/getImagesInTree.js +1 -7
  74. package/build/languageProcessing/helpers/image/getImagesInTree.js.map +1 -1
  75. package/build/languageProcessing/helpers/image/imageInText.js +5 -12
  76. package/build/languageProcessing/helpers/image/imageInText.js.map +1 -1
  77. package/build/languageProcessing/helpers/index.js +5 -40
  78. package/build/languageProcessing/helpers/index.js.map +1 -1
  79. package/build/languageProcessing/helpers/language/getLanguage.js +1 -7
  80. package/build/languageProcessing/helpers/language/getLanguage.js.map +1 -1
  81. package/build/languageProcessing/helpers/link/checkNofollow.js +3 -10
  82. package/build/languageProcessing/helpers/link/checkNofollow.js.map +1 -1
  83. package/build/languageProcessing/helpers/link/getAnchorsFromText.js +1 -7
  84. package/build/languageProcessing/helpers/link/getAnchorsFromText.js.map +1 -1
  85. package/build/languageProcessing/helpers/link/getLinkType.js +7 -13
  86. package/build/languageProcessing/helpers/link/getLinkType.js.map +1 -1
  87. package/build/languageProcessing/helpers/match/findKeywordFormsInString.js +10 -17
  88. package/build/languageProcessing/helpers/match/findKeywordFormsInString.js.map +1 -1
  89. package/build/languageProcessing/helpers/match/isDoubleQuoted.js +4 -10
  90. package/build/languageProcessing/helpers/match/isDoubleQuoted.js.map +1 -1
  91. package/build/languageProcessing/helpers/match/matchTextWithArray.js +6 -12
  92. package/build/languageProcessing/helpers/match/matchTextWithArray.js.map +1 -1
  93. package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js +16 -22
  94. package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js.map +1 -1
  95. package/build/languageProcessing/helpers/match/matchTextWithWord.js +17 -23
  96. package/build/languageProcessing/helpers/match/matchTextWithWord.js.map +1 -1
  97. package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js +7 -15
  98. package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js.map +1 -1
  99. package/build/languageProcessing/helpers/match/processExactMatchRequest.js +3 -9
  100. package/build/languageProcessing/helpers/match/processExactMatchRequest.js.map +1 -1
  101. package/build/languageProcessing/helpers/morphology/baseStemmer.js +1 -7
  102. package/build/languageProcessing/helpers/morphology/baseStemmer.js.map +1 -1
  103. package/build/languageProcessing/helpers/morphology/buildFormRule.js +1 -7
  104. package/build/languageProcessing/helpers/morphology/buildFormRule.js.map +1 -1
  105. package/build/languageProcessing/helpers/morphology/buildTopicStems.js +13 -23
  106. package/build/languageProcessing/helpers/morphology/buildTopicStems.js.map +1 -1
  107. package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js +2 -9
  108. package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js.map +1 -1
  109. package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js +5 -13
  110. package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js.map +1 -1
  111. package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +1 -7
  112. package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js.map +1 -1
  113. package/build/languageProcessing/helpers/morphology/flattenSortLength.js +3 -8
  114. package/build/languageProcessing/helpers/morphology/flattenSortLength.js.map +1 -1
  115. package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +12 -18
  116. package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js.map +1 -1
  117. package/build/languageProcessing/helpers/morphology/regexHelpers.js +3 -11
  118. package/build/languageProcessing/helpers/morphology/regexHelpers.js.map +1 -1
  119. package/build/languageProcessing/helpers/morphology/stemHelpers.js +2 -9
  120. package/build/languageProcessing/helpers/morphology/stemHelpers.js.map +1 -1
  121. package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +1 -7
  122. package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js.map +1 -1
  123. package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +5 -11
  124. package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js.map +1 -1
  125. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +9 -15
  126. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js.map +1 -1
  127. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +9 -15
  128. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js.map +1 -1
  129. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +28 -34
  130. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js.map +1 -1
  131. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +1 -7
  132. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js.map +1 -1
  133. package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +3 -8
  134. package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js.map +1 -1
  135. package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +5 -11
  136. package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js.map +1 -1
  137. package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js +16 -28
  138. package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js.map +1 -1
  139. package/build/languageProcessing/helpers/regex/createRegexFromArray.js +10 -16
  140. package/build/languageProcessing/helpers/regex/createRegexFromArray.js.map +1 -1
  141. package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +4 -10
  142. package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js.map +1 -1
  143. package/build/languageProcessing/helpers/regex/createWordRegex.js +12 -18
  144. package/build/languageProcessing/helpers/regex/createWordRegex.js.map +1 -1
  145. package/build/languageProcessing/helpers/regex/matchStringWithRegex.js +1 -7
  146. package/build/languageProcessing/helpers/regex/matchStringWithRegex.js.map +1 -1
  147. package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +1 -7
  148. package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js.map +1 -1
  149. package/build/languageProcessing/helpers/sanitize/doubleQuotes.js +1 -7
  150. package/build/languageProcessing/helpers/sanitize/doubleQuotes.js.map +1 -1
  151. package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +3 -11
  152. package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js.map +1 -1
  153. package/build/languageProcessing/helpers/sanitize/mergeListItems.js +1 -7
  154. package/build/languageProcessing/helpers/sanitize/mergeListItems.js.map +1 -1
  155. package/build/languageProcessing/helpers/sanitize/parseSynonyms.js +5 -11
  156. package/build/languageProcessing/helpers/sanitize/parseSynonyms.js.map +1 -1
  157. package/build/languageProcessing/helpers/sanitize/quotes.js +4 -12
  158. package/build/languageProcessing/helpers/sanitize/quotes.js.map +1 -1
  159. package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js +1 -7
  160. package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js.map +1 -1
  161. package/build/languageProcessing/helpers/sanitize/removePunctuation.js +7 -13
  162. package/build/languageProcessing/helpers/sanitize/removePunctuation.js.map +1 -1
  163. package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +1 -7
  164. package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js.map +1 -1
  165. package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +1 -7
  166. package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js.map +1 -1
  167. package/build/languageProcessing/helpers/sanitize/removeURLs.js +1 -7
  168. package/build/languageProcessing/helpers/sanitize/removeURLs.js.map +1 -1
  169. package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +1 -7
  170. package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js.map +1 -1
  171. package/build/languageProcessing/helpers/sanitize/sanitizeString.js +5 -10
  172. package/build/languageProcessing/helpers/sanitize/sanitizeString.js.map +1 -1
  173. package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js +7 -16
  174. package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js.map +1 -1
  175. package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js +4 -10
  176. package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js.map +1 -1
  177. package/build/languageProcessing/helpers/sanitize/stripNumbers.js +4 -10
  178. package/build/languageProcessing/helpers/sanitize/stripNumbers.js.map +1 -1
  179. package/build/languageProcessing/helpers/sanitize/stripSpaces.js +1 -7
  180. package/build/languageProcessing/helpers/sanitize/stripSpaces.js.map +1 -1
  181. package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js +2 -10
  182. package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js.map +1 -1
  183. package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js +2 -11
  184. package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js.map +1 -1
  185. package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js +22 -29
  186. package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js.map +1 -1
  187. package/build/languageProcessing/helpers/sentence/countSentences.js +4 -10
  188. package/build/languageProcessing/helpers/sentence/countSentences.js.map +1 -1
  189. package/build/languageProcessing/helpers/sentence/getSentences.js +13 -20
  190. package/build/languageProcessing/helpers/sentence/getSentences.js.map +1 -1
  191. package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js +2 -9
  192. package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js.map +1 -1
  193. package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +4 -10
  194. package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js.map +1 -1
  195. package/build/languageProcessing/helpers/sentence/sentencesLength.js +7 -13
  196. package/build/languageProcessing/helpers/sentence/sentencesLength.js.map +1 -1
  197. package/build/languageProcessing/helpers/syllables/DeviationFragment.js +5 -11
  198. package/build/languageProcessing/helpers/syllables/DeviationFragment.js.map +1 -1
  199. package/build/languageProcessing/helpers/syllables/countSyllables.js +23 -30
  200. package/build/languageProcessing/helpers/syllables/countSyllables.js.map +1 -1
  201. package/build/languageProcessing/helpers/syllables/syllableCountIterator.js +7 -14
  202. package/build/languageProcessing/helpers/syllables/syllableCountIterator.js.map +1 -1
  203. package/build/languageProcessing/helpers/syllables/syllableCountStep.js +5 -12
  204. package/build/languageProcessing/helpers/syllables/syllableCountStep.js.map +1 -1
  205. package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js +1 -7
  206. package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js.map +1 -1
  207. package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js +4 -10
  208. package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js.map +1 -1
  209. package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js +12 -23
  210. package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js.map +1 -1
  211. package/build/languageProcessing/helpers/transliterate/transliterate.js +3 -9
  212. package/build/languageProcessing/helpers/transliterate/transliterate.js.map +1 -1
  213. package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js +3 -9
  214. package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js.map +1 -1
  215. package/build/languageProcessing/helpers/url/parseSlug.js +1 -7
  216. package/build/languageProcessing/helpers/url/parseSlug.js.map +1 -1
  217. package/build/languageProcessing/helpers/url/url.js +7 -13
  218. package/build/languageProcessing/helpers/url/url.js.map +1 -1
  219. package/build/languageProcessing/helpers/word/addWordboundary.js +1 -7
  220. package/build/languageProcessing/helpers/word/addWordboundary.js.map +1 -1
  221. package/build/languageProcessing/helpers/word/areWordsInSentence.js +4 -10
  222. package/build/languageProcessing/helpers/word/areWordsInSentence.js.map +1 -1
  223. package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js +1 -7
  224. package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js.map +1 -1
  225. package/build/languageProcessing/helpers/word/countWords.js +4 -10
  226. package/build/languageProcessing/helpers/word/countWords.js.map +1 -1
  227. package/build/languageProcessing/helpers/word/createPunctuationTokens.js +5 -10
  228. package/build/languageProcessing/helpers/word/createPunctuationTokens.js.map +1 -1
  229. package/build/languageProcessing/helpers/word/filterWordsFromArray.js +4 -9
  230. package/build/languageProcessing/helpers/word/filterWordsFromArray.js.map +1 -1
  231. package/build/languageProcessing/helpers/word/followsIndex.js +5 -10
  232. package/build/languageProcessing/helpers/word/followsIndex.js.map +1 -1
  233. package/build/languageProcessing/helpers/word/getAllWordsFromTree.js +7 -13
  234. package/build/languageProcessing/helpers/word/getAllWordsFromTree.js.map +1 -1
  235. package/build/languageProcessing/helpers/word/getWords.js +9 -19
  236. package/build/languageProcessing/helpers/word/getWords.js.map +1 -1
  237. package/build/languageProcessing/helpers/word/includesIndex.js +5 -10
  238. package/build/languageProcessing/helpers/word/includesIndex.js.map +1 -1
  239. package/build/languageProcessing/helpers/word/indices.js +14 -25
  240. package/build/languageProcessing/helpers/word/indices.js.map +1 -1
  241. package/build/languageProcessing/helpers/word/markWordsInSentences.js +23 -35
  242. package/build/languageProcessing/helpers/word/markWordsInSentences.js.map +1 -1
  243. package/build/languageProcessing/helpers/word/matchWordInSentence.js +8 -15
  244. package/build/languageProcessing/helpers/word/matchWordInSentence.js.map +1 -1
  245. package/build/languageProcessing/helpers/word/splitIntoTokens.js +3 -9
  246. package/build/languageProcessing/helpers/word/splitIntoTokens.js.map +1 -1
  247. package/build/languageProcessing/index.js +41 -282
  248. package/build/languageProcessing/index.js.map +1 -1
  249. package/build/languageProcessing/languages/_default/Researcher.js +5 -13
  250. package/build/languageProcessing/languages/_default/Researcher.js.map +1 -1
  251. package/build/languageProcessing/languages/_default/helpers/getStemmer.js +3 -9
  252. package/build/languageProcessing/languages/_default/helpers/getStemmer.js.map +1 -1
  253. package/build/languageProcessing/languages/ar/Researcher.js +19 -27
  254. package/build/languageProcessing/languages/ar/Researcher.js.map +1 -1
  255. package/build/languageProcessing/languages/ar/config/firstWordExceptions.js +1 -7
  256. package/build/languageProcessing/languages/ar/config/firstWordExceptions.js.map +1 -1
  257. package/build/languageProcessing/languages/ar/config/functionWords.js +7 -13
  258. package/build/languageProcessing/languages/ar/config/functionWords.js.map +1 -1
  259. package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +1 -7
  260. package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js.map +1 -1
  261. package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js +2 -8
  262. package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js.map +1 -1
  263. package/build/languageProcessing/languages/ar/config/transitionWords.js +4 -10
  264. package/build/languageProcessing/languages/ar/config/transitionWords.js.map +1 -1
  265. package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js +2 -7
  266. package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js.map +1 -1
  267. package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js +6 -11
  268. package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js.map +1 -1
  269. package/build/languageProcessing/languages/ar/helpers/getStemmer.js +8 -14
  270. package/build/languageProcessing/languages/ar/helpers/getStemmer.js.map +1 -1
  271. package/build/languageProcessing/languages/ar/helpers/internal/stem.js +1 -7
  272. package/build/languageProcessing/languages/ar/helpers/internal/stem.js.map +1 -1
  273. package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js +5 -12
  274. package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js.map +1 -1
  275. package/build/languageProcessing/languages/ca/Researcher.js +11 -19
  276. package/build/languageProcessing/languages/ca/Researcher.js.map +1 -1
  277. package/build/languageProcessing/languages/ca/config/sentenceLength.js +1 -7
  278. package/build/languageProcessing/languages/ca/config/sentenceLength.js.map +1 -1
  279. package/build/languageProcessing/languages/ca/config/transitionWords.js +4 -10
  280. package/build/languageProcessing/languages/ca/config/transitionWords.js.map +1 -1
  281. package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js +2 -7
  282. package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js.map +1 -1
  283. package/build/languageProcessing/languages/ca/helpers/getStemmer.js +3 -9
  284. package/build/languageProcessing/languages/ca/helpers/getStemmer.js.map +1 -1
  285. package/build/languageProcessing/languages/cs/Researcher.js +17 -25
  286. package/build/languageProcessing/languages/cs/Researcher.js.map +1 -1
  287. package/build/languageProcessing/languages/cs/config/firstWordExceptions.js +1 -7
  288. package/build/languageProcessing/languages/cs/config/firstWordExceptions.js.map +1 -1
  289. package/build/languageProcessing/languages/cs/config/functionWords.js +4 -10
  290. package/build/languageProcessing/languages/cs/config/functionWords.js.map +1 -1
  291. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +2 -8
  292. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  293. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +2 -8
  294. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js.map +1 -1
  295. package/build/languageProcessing/languages/cs/config/stopWords.js +1 -7
  296. package/build/languageProcessing/languages/cs/config/stopWords.js.map +1 -1
  297. package/build/languageProcessing/languages/cs/config/transitionWords.js +4 -10
  298. package/build/languageProcessing/languages/cs/config/transitionWords.js.map +1 -1
  299. package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js +2 -7
  300. package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js.map +1 -1
  301. package/build/languageProcessing/languages/cs/helpers/getClauses.js +9 -16
  302. package/build/languageProcessing/languages/cs/helpers/getClauses.js.map +1 -1
  303. package/build/languageProcessing/languages/cs/helpers/getStemmer.js +8 -14
  304. package/build/languageProcessing/languages/cs/helpers/getStemmer.js.map +1 -1
  305. package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js +6 -12
  306. package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js.map +1 -1
  307. package/build/languageProcessing/languages/cs/helpers/internal/stem.js +1 -7
  308. package/build/languageProcessing/languages/cs/helpers/internal/stem.js.map +1 -1
  309. package/build/languageProcessing/languages/cs/values/Clause.js +5 -12
  310. package/build/languageProcessing/languages/cs/values/Clause.js.map +1 -1
  311. package/build/languageProcessing/languages/de/Researcher.js +27 -35
  312. package/build/languageProcessing/languages/de/Researcher.js.map +1 -1
  313. package/build/languageProcessing/languages/de/config/firstWordExceptions.js +1 -7
  314. package/build/languageProcessing/languages/de/config/firstWordExceptions.js.map +1 -1
  315. package/build/languageProcessing/languages/de/config/functionWords.js +11 -19
  316. package/build/languageProcessing/languages/de/config/functionWords.js.map +1 -1
  317. package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +1 -7
  318. package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js.map +1 -1
  319. package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +4 -10
  320. package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  321. package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +1 -7
  322. package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js.map +1 -1
  323. package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +1 -7
  324. package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js.map +1 -1
  325. package/build/languageProcessing/languages/de/config/keyphraseLength.js +1 -7
  326. package/build/languageProcessing/languages/de/config/keyphraseLength.js.map +1 -1
  327. package/build/languageProcessing/languages/de/config/stopWords.js +1 -7
  328. package/build/languageProcessing/languages/de/config/stopWords.js.map +1 -1
  329. package/build/languageProcessing/languages/de/config/transitionWords.js +4 -10
  330. package/build/languageProcessing/languages/de/config/transitionWords.js.map +1 -1
  331. package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js +2 -7
  332. package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js.map +1 -1
  333. package/build/languageProcessing/languages/de/config/wordComplexity.js +1 -7
  334. package/build/languageProcessing/languages/de/config/wordComplexity.js.map +1 -1
  335. package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +3 -9
  336. package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js.map +1 -1
  337. package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +1 -7
  338. package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js.map +1 -1
  339. package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +3 -8
  340. package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js.map +1 -1
  341. package/build/languageProcessing/languages/de/helpers/getClauses.js +9 -16
  342. package/build/languageProcessing/languages/de/helpers/getClauses.js.map +1 -1
  343. package/build/languageProcessing/languages/de/helpers/getStemmer.js +8 -14
  344. package/build/languageProcessing/languages/de/helpers/getStemmer.js.map +1 -1
  345. package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +4 -11
  346. package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js.map +1 -1
  347. package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +4 -10
  348. package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
  349. package/build/languageProcessing/languages/de/helpers/internal/determineStem.js +10 -16
  350. package/build/languageProcessing/languages/de/helpers/internal/determineStem.js.map +1 -1
  351. package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js +9 -16
  352. package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js.map +1 -1
  353. package/build/languageProcessing/languages/de/helpers/internal/stem.js +1 -7
  354. package/build/languageProcessing/languages/de/helpers/internal/stem.js.map +1 -1
  355. package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +4 -10
  356. package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js.map +1 -1
  357. package/build/languageProcessing/languages/de/values/Clause.js +11 -18
  358. package/build/languageProcessing/languages/de/values/Clause.js.map +1 -1
  359. package/build/languageProcessing/languages/el/Researcher.js +18 -26
  360. package/build/languageProcessing/languages/el/Researcher.js.map +1 -1
  361. package/build/languageProcessing/languages/el/config/firstWordExceptions.js +1 -7
  362. package/build/languageProcessing/languages/el/config/firstWordExceptions.js.map +1 -1
  363. package/build/languageProcessing/languages/el/config/functionWords.js +4 -10
  364. package/build/languageProcessing/languages/el/config/functionWords.js.map +1 -1
  365. package/build/languageProcessing/languages/el/config/internal/auxiliaries.js +1 -7
  366. package/build/languageProcessing/languages/el/config/internal/auxiliaries.js.map +1 -1
  367. package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +1 -7
  368. package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js.map +1 -1
  369. package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +1 -7
  370. package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js.map +1 -1
  371. package/build/languageProcessing/languages/el/config/stopWords.js +1 -7
  372. package/build/languageProcessing/languages/el/config/stopWords.js.map +1 -1
  373. package/build/languageProcessing/languages/el/config/transitionWords.js +4 -10
  374. package/build/languageProcessing/languages/el/config/transitionWords.js.map +1 -1
  375. package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js +2 -7
  376. package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js.map +1 -1
  377. package/build/languageProcessing/languages/el/helpers/getClauses.js +9 -16
  378. package/build/languageProcessing/languages/el/helpers/getClauses.js.map +1 -1
  379. package/build/languageProcessing/languages/el/helpers/getStemmer.js +7 -14
  380. package/build/languageProcessing/languages/el/helpers/getStemmer.js.map +1 -1
  381. package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js +3 -9
  382. package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js.map +1 -1
  383. package/build/languageProcessing/languages/el/helpers/internal/stem.js +4 -13
  384. package/build/languageProcessing/languages/el/helpers/internal/stem.js.map +1 -1
  385. package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js +7 -14
  386. package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js.map +1 -1
  387. package/build/languageProcessing/languages/el/values/Clause.js +6 -12
  388. package/build/languageProcessing/languages/el/values/Clause.js.map +1 -1
  389. package/build/languageProcessing/languages/en/Researcher.js +21 -29
  390. package/build/languageProcessing/languages/en/Researcher.js.map +1 -1
  391. package/build/languageProcessing/languages/en/config/abbreviations.js +2 -8
  392. package/build/languageProcessing/languages/en/config/abbreviations.js.map +1 -1
  393. package/build/languageProcessing/languages/en/config/firstWordExceptions.js +1 -7
  394. package/build/languageProcessing/languages/en/config/firstWordExceptions.js.map +1 -1
  395. package/build/languageProcessing/languages/en/config/functionWords.js +11 -18
  396. package/build/languageProcessing/languages/en/config/functionWords.js.map +1 -1
  397. package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +6 -12
  398. package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  399. package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +1 -7
  400. package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js.map +1 -1
  401. package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +1 -7
  402. package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js.map +1 -1
  403. package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js +1 -7
  404. package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js.map +1 -1
  405. package/build/languageProcessing/languages/en/config/stopWords.js +1 -7
  406. package/build/languageProcessing/languages/en/config/stopWords.js.map +1 -1
  407. package/build/languageProcessing/languages/en/config/transitionWords.js +4 -10
  408. package/build/languageProcessing/languages/en/config/transitionWords.js.map +1 -1
  409. package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js +2 -7
  410. package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js.map +1 -1
  411. package/build/languageProcessing/languages/en/config/wordComplexity.js +1 -7
  412. package/build/languageProcessing/languages/en/config/wordComplexity.js.map +1 -1
  413. package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +3 -9
  414. package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js.map +1 -1
  415. package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +4 -10
  416. package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js.map +1 -1
  417. package/build/languageProcessing/languages/en/helpers/getClauses.js +15 -22
  418. package/build/languageProcessing/languages/en/helpers/getClauses.js.map +1 -1
  419. package/build/languageProcessing/languages/en/helpers/getStemmer.js +8 -14
  420. package/build/languageProcessing/languages/en/helpers/getStemmer.js.map +1 -1
  421. package/build/languageProcessing/languages/en/helpers/internal/determineStem.js +21 -32
  422. package/build/languageProcessing/languages/en/helpers/internal/determineStem.js.map +1 -1
  423. package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +6 -13
  424. package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js.map +1 -1
  425. package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js +8 -14
  426. package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js.map +1 -1
  427. package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js +6 -16
  428. package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js.map +1 -1
  429. package/build/languageProcessing/languages/en/values/Clause.js +10 -17
  430. package/build/languageProcessing/languages/en/values/Clause.js.map +1 -1
  431. package/build/languageProcessing/languages/es/Researcher.js +23 -31
  432. package/build/languageProcessing/languages/es/Researcher.js.map +1 -1
  433. package/build/languageProcessing/languages/es/config/firstWordExceptions.js +1 -7
  434. package/build/languageProcessing/languages/es/config/firstWordExceptions.js.map +1 -1
  435. package/build/languageProcessing/languages/es/config/functionWords.js +11 -17
  436. package/build/languageProcessing/languages/es/config/functionWords.js.map +1 -1
  437. package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +1 -7
  438. package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  439. package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +1 -7
  440. package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js.map +1 -1
  441. package/build/languageProcessing/languages/es/config/sentenceLength.js +1 -7
  442. package/build/languageProcessing/languages/es/config/sentenceLength.js.map +1 -1
  443. package/build/languageProcessing/languages/es/config/stopWords.js +1 -7
  444. package/build/languageProcessing/languages/es/config/stopWords.js.map +1 -1
  445. package/build/languageProcessing/languages/es/config/transitionWords.js +4 -10
  446. package/build/languageProcessing/languages/es/config/transitionWords.js.map +1 -1
  447. package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js +2 -7
  448. package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js.map +1 -1
  449. package/build/languageProcessing/languages/es/config/wordComplexity.js +1 -7
  450. package/build/languageProcessing/languages/es/config/wordComplexity.js.map +1 -1
  451. package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +3 -9
  452. package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js.map +1 -1
  453. package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +1 -7
  454. package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js.map +1 -1
  455. package/build/languageProcessing/languages/es/helpers/getClauses.js +10 -17
  456. package/build/languageProcessing/languages/es/helpers/getClauses.js.map +1 -1
  457. package/build/languageProcessing/languages/es/helpers/getStemmer.js +8 -14
  458. package/build/languageProcessing/languages/es/helpers/getStemmer.js.map +1 -1
  459. package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +7 -13
  460. package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js.map +1 -1
  461. package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js +6 -12
  462. package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js.map +1 -1
  463. package/build/languageProcessing/languages/es/helpers/internal/stem.js +5 -13
  464. package/build/languageProcessing/languages/es/helpers/internal/stem.js.map +1 -1
  465. package/build/languageProcessing/languages/es/values/Clause.js +7 -14
  466. package/build/languageProcessing/languages/es/values/Clause.js.map +1 -1
  467. package/build/languageProcessing/languages/fa/Researcher.js +19 -27
  468. package/build/languageProcessing/languages/fa/Researcher.js.map +1 -1
  469. package/build/languageProcessing/languages/fa/config/firstWordExceptions.js +1 -7
  470. package/build/languageProcessing/languages/fa/config/firstWordExceptions.js.map +1 -1
  471. package/build/languageProcessing/languages/fa/config/functionWords.js +4 -10
  472. package/build/languageProcessing/languages/fa/config/functionWords.js.map +1 -1
  473. package/build/languageProcessing/languages/fa/config/internal/participles.js +1 -7
  474. package/build/languageProcessing/languages/fa/config/internal/participles.js.map +1 -1
  475. package/build/languageProcessing/languages/fa/config/sentenceLength.js +1 -7
  476. package/build/languageProcessing/languages/fa/config/sentenceLength.js.map +1 -1
  477. package/build/languageProcessing/languages/fa/config/transitionWords.js +4 -10
  478. package/build/languageProcessing/languages/fa/config/transitionWords.js.map +1 -1
  479. package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js +2 -7
  480. package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js.map +1 -1
  481. package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js +3 -9
  482. package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js.map +1 -1
  483. package/build/languageProcessing/languages/fa/helpers/getStemmer.js +3 -9
  484. package/build/languageProcessing/languages/fa/helpers/getStemmer.js.map +1 -1
  485. package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js +6 -12
  486. package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js.map +1 -1
  487. package/build/languageProcessing/languages/fr/Researcher.js +21 -29
  488. package/build/languageProcessing/languages/fr/Researcher.js.map +1 -1
  489. package/build/languageProcessing/languages/fr/config/firstWordExceptions.js +1 -7
  490. package/build/languageProcessing/languages/fr/config/firstWordExceptions.js.map +1 -1
  491. package/build/languageProcessing/languages/fr/config/functionWords.js +11 -17
  492. package/build/languageProcessing/languages/fr/config/functionWords.js.map +1 -1
  493. package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +4 -9
  494. package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js.map +1 -1
  495. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +1 -7
  496. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  497. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +4 -9
  498. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js.map +1 -1
  499. package/build/languageProcessing/languages/fr/config/stopWords.js +1 -7
  500. package/build/languageProcessing/languages/fr/config/stopWords.js.map +1 -1
  501. package/build/languageProcessing/languages/fr/config/transitionWords.js +4 -10
  502. package/build/languageProcessing/languages/fr/config/transitionWords.js.map +1 -1
  503. package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js +2 -7
  504. package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js.map +1 -1
  505. package/build/languageProcessing/languages/fr/config/wordComplexity.js +1 -7
  506. package/build/languageProcessing/languages/fr/config/wordComplexity.js.map +1 -1
  507. package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +3 -9
  508. package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js.map +1 -1
  509. package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +3 -9
  510. package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js.map +1 -1
  511. package/build/languageProcessing/languages/fr/helpers/getClauses.js +10 -17
  512. package/build/languageProcessing/languages/fr/helpers/getClauses.js.map +1 -1
  513. package/build/languageProcessing/languages/fr/helpers/getStemmer.js +8 -14
  514. package/build/languageProcessing/languages/fr/helpers/getStemmer.js.map +1 -1
  515. package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js +11 -16
  516. package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js.map +1 -1
  517. package/build/languageProcessing/languages/fr/helpers/internal/stem.js +3 -10
  518. package/build/languageProcessing/languages/fr/helpers/internal/stem.js.map +1 -1
  519. package/build/languageProcessing/languages/fr/values/Clause.js +14 -20
  520. package/build/languageProcessing/languages/fr/values/Clause.js.map +1 -1
  521. package/build/languageProcessing/languages/he/Researcher.js +21 -29
  522. package/build/languageProcessing/languages/he/Researcher.js.map +1 -1
  523. package/build/languageProcessing/languages/he/config/firstWordExceptions.js +1 -7
  524. package/build/languageProcessing/languages/he/config/firstWordExceptions.js.map +1 -1
  525. package/build/languageProcessing/languages/he/config/functionWords.js +4 -11
  526. package/build/languageProcessing/languages/he/config/functionWords.js.map +1 -1
  527. package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js +1 -7
  528. package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js.map +1 -1
  529. package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js +1 -7
  530. package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js.map +1 -1
  531. package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js +1 -7
  532. package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js.map +1 -1
  533. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +1 -7
  534. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js.map +1 -1
  535. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +1 -7
  536. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js.map +1 -1
  537. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +1 -7
  538. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js.map +1 -1
  539. package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js +2 -8
  540. package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js.map +1 -1
  541. package/build/languageProcessing/languages/he/config/sentenceLength.js +1 -7
  542. package/build/languageProcessing/languages/he/config/sentenceLength.js.map +1 -1
  543. package/build/languageProcessing/languages/he/config/transitionWords.js +4 -10
  544. package/build/languageProcessing/languages/he/config/transitionWords.js.map +1 -1
  545. package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js +2 -7
  546. package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js.map +1 -1
  547. package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js +6 -11
  548. package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js.map +1 -1
  549. package/build/languageProcessing/languages/he/helpers/getStemmer.js +8 -14
  550. package/build/languageProcessing/languages/he/helpers/getStemmer.js.map +1 -1
  551. package/build/languageProcessing/languages/he/helpers/internal/stem.js +1 -7
  552. package/build/languageProcessing/languages/he/helpers/internal/stem.js.map +1 -1
  553. package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js +10 -16
  554. package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js.map +1 -1
  555. package/build/languageProcessing/languages/he/helpers/stem.js +1 -7
  556. package/build/languageProcessing/languages/he/helpers/stem.js.map +1 -1
  557. package/build/languageProcessing/languages/hu/Researcher.js +19 -27
  558. package/build/languageProcessing/languages/hu/Researcher.js.map +1 -1
  559. package/build/languageProcessing/languages/hu/config/firstWordExceptions.js +1 -7
  560. package/build/languageProcessing/languages/hu/config/firstWordExceptions.js.map +1 -1
  561. package/build/languageProcessing/languages/hu/config/functionWords.js +4 -10
  562. package/build/languageProcessing/languages/hu/config/functionWords.js.map +1 -1
  563. package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js +1 -7
  564. package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js.map +1 -1
  565. package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +3 -9
  566. package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js.map +1 -1
  567. package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +2 -7
  568. package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js.map +1 -1
  569. package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js +1 -7
  570. package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js.map +1 -1
  571. package/build/languageProcessing/languages/hu/config/internal/participles.js +2 -7
  572. package/build/languageProcessing/languages/hu/config/internal/participles.js.map +1 -1
  573. package/build/languageProcessing/languages/hu/config/stopWords.js +2 -7
  574. package/build/languageProcessing/languages/hu/config/stopWords.js.map +1 -1
  575. package/build/languageProcessing/languages/hu/config/transitionWords.js +4 -10
  576. package/build/languageProcessing/languages/hu/config/transitionWords.js.map +1 -1
  577. package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js +2 -7
  578. package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js.map +1 -1
  579. package/build/languageProcessing/languages/hu/helpers/getClauses.js +9 -16
  580. package/build/languageProcessing/languages/hu/helpers/getClauses.js.map +1 -1
  581. package/build/languageProcessing/languages/hu/helpers/getStemmer.js +8 -14
  582. package/build/languageProcessing/languages/hu/helpers/getStemmer.js.map +1 -1
  583. package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js +6 -12
  584. package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js.map +1 -1
  585. package/build/languageProcessing/languages/hu/helpers/internal/stem.js +1 -7
  586. package/build/languageProcessing/languages/hu/helpers/internal/stem.js.map +1 -1
  587. package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js +9 -15
  588. package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js.map +1 -1
  589. package/build/languageProcessing/languages/hu/values/Clause.js +8 -14
  590. package/build/languageProcessing/languages/hu/values/Clause.js.map +1 -1
  591. package/build/languageProcessing/languages/id/Researcher.js +17 -25
  592. package/build/languageProcessing/languages/id/Researcher.js.map +1 -1
  593. package/build/languageProcessing/languages/id/config/firstWordExceptions.js +1 -7
  594. package/build/languageProcessing/languages/id/config/firstWordExceptions.js.map +1 -1
  595. package/build/languageProcessing/languages/id/config/functionWords.js +8 -16
  596. package/build/languageProcessing/languages/id/config/functionWords.js.map +1 -1
  597. package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +1 -7
  598. package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js.map +1 -1
  599. package/build/languageProcessing/languages/id/config/transitionWords.js +4 -10
  600. package/build/languageProcessing/languages/id/config/transitionWords.js.map +1 -1
  601. package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js +2 -7
  602. package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js.map +1 -1
  603. package/build/languageProcessing/languages/id/helpers/getStemmer.js +8 -14
  604. package/build/languageProcessing/languages/id/helpers/getStemmer.js.map +1 -1
  605. package/build/languageProcessing/languages/id/helpers/internal/stem.js +29 -34
  606. package/build/languageProcessing/languages/id/helpers/internal/stem.js.map +1 -1
  607. package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js +5 -13
  608. package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js.map +1 -1
  609. package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js +5 -12
  610. package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js.map +1 -1
  611. package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +3 -9
  612. package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js.map +1 -1
  613. package/build/languageProcessing/languages/it/Researcher.js +23 -31
  614. package/build/languageProcessing/languages/it/Researcher.js.map +1 -1
  615. package/build/languageProcessing/languages/it/config/firstWordExceptions.js +1 -7
  616. package/build/languageProcessing/languages/it/config/firstWordExceptions.js.map +1 -1
  617. package/build/languageProcessing/languages/it/config/functionWords.js +11 -17
  618. package/build/languageProcessing/languages/it/config/functionWords.js.map +1 -1
  619. package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +1 -7
  620. package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  621. package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +1 -7
  622. package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js.map +1 -1
  623. package/build/languageProcessing/languages/it/config/sentenceLength.js +1 -7
  624. package/build/languageProcessing/languages/it/config/sentenceLength.js.map +1 -1
  625. package/build/languageProcessing/languages/it/config/stopWords.js +1 -7
  626. package/build/languageProcessing/languages/it/config/stopWords.js.map +1 -1
  627. package/build/languageProcessing/languages/it/config/transitionWords.js +4 -10
  628. package/build/languageProcessing/languages/it/config/transitionWords.js.map +1 -1
  629. package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js +1 -7
  630. package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js.map +1 -1
  631. package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +3 -9
  632. package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js.map +1 -1
  633. package/build/languageProcessing/languages/it/helpers/getClauses.js +10 -17
  634. package/build/languageProcessing/languages/it/helpers/getClauses.js.map +1 -1
  635. package/build/languageProcessing/languages/it/helpers/getStemmer.js +8 -14
  636. package/build/languageProcessing/languages/it/helpers/getStemmer.js.map +1 -1
  637. package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js +6 -12
  638. package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js.map +1 -1
  639. package/build/languageProcessing/languages/it/helpers/internal/stem.js +3 -9
  640. package/build/languageProcessing/languages/it/helpers/internal/stem.js.map +1 -1
  641. package/build/languageProcessing/languages/it/values/Clause.js +7 -14
  642. package/build/languageProcessing/languages/it/values/Clause.js.map +1 -1
  643. package/build/languageProcessing/languages/ja/Researcher.js +51 -59
  644. package/build/languageProcessing/languages/ja/Researcher.js.map +1 -1
  645. package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +1 -7
  646. package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js.map +1 -1
  647. package/build/languageProcessing/languages/ja/config/firstWordExceptions.js +1 -7
  648. package/build/languageProcessing/languages/ja/config/firstWordExceptions.js.map +1 -1
  649. package/build/languageProcessing/languages/ja/config/functionWords.js +1 -7
  650. package/build/languageProcessing/languages/ja/config/functionWords.js.map +1 -1
  651. package/build/languageProcessing/languages/ja/config/keyphraseLength.js +1 -7
  652. package/build/languageProcessing/languages/ja/config/keyphraseLength.js.map +1 -1
  653. package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js +1 -7
  654. package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js.map +1 -1
  655. package/build/languageProcessing/languages/ja/config/paragraphLength.js +1 -7
  656. package/build/languageProcessing/languages/ja/config/paragraphLength.js.map +1 -1
  657. package/build/languageProcessing/languages/ja/config/sentenceLength.js +1 -7
  658. package/build/languageProcessing/languages/ja/config/sentenceLength.js.map +1 -1
  659. package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js +1 -7
  660. package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js.map +1 -1
  661. package/build/languageProcessing/languages/ja/config/textLength.js +1 -7
  662. package/build/languageProcessing/languages/ja/config/textLength.js.map +1 -1
  663. package/build/languageProcessing/languages/ja/config/topicLength.js +1 -7
  664. package/build/languageProcessing/languages/ja/config/topicLength.js.map +1 -1
  665. package/build/languageProcessing/languages/ja/config/transitionWords.js +2 -7
  666. package/build/languageProcessing/languages/ja/config/transitionWords.js.map +1 -1
  667. package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +16 -22
  668. package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js.map +1 -1
  669. package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +5 -11
  670. package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js.map +1 -1
  671. package/build/languageProcessing/languages/ja/customResearches/getWordForms.js +11 -17
  672. package/build/languageProcessing/languages/ja/customResearches/getWordForms.js.map +1 -1
  673. package/build/languageProcessing/languages/ja/customResearches/textLength.js +3 -9
  674. package/build/languageProcessing/languages/ja/customResearches/textLength.js.map +1 -1
  675. package/build/languageProcessing/languages/ja/helpers/countCharacters.js +6 -12
  676. package/build/languageProcessing/languages/ja/helpers/countCharacters.js.map +1 -1
  677. package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js +8 -14
  678. package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js.map +1 -1
  679. package/build/languageProcessing/languages/ja/helpers/getContentWords.js +5 -11
  680. package/build/languageProcessing/languages/ja/helpers/getContentWords.js.map +1 -1
  681. package/build/languageProcessing/languages/ja/helpers/getWords.js +8 -15
  682. package/build/languageProcessing/languages/ja/helpers/getWords.js.map +1 -1
  683. package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +6 -13
  684. package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js.map +1 -1
  685. package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js +4 -9
  686. package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js.map +1 -1
  687. package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js +3 -9
  688. package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js.map +1 -1
  689. package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js +7 -13
  690. package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js.map +1 -1
  691. package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js +3 -9
  692. package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js.map +1 -1
  693. package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +4 -10
  694. package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js.map +1 -1
  695. package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +5 -11
  696. package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js.map +1 -1
  697. package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +1 -7
  698. package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js.map +1 -1
  699. package/build/languageProcessing/languages/nb/Researcher.js +17 -25
  700. package/build/languageProcessing/languages/nb/Researcher.js.map +1 -1
  701. package/build/languageProcessing/languages/nb/config/firstWordExceptions.js +1 -7
  702. package/build/languageProcessing/languages/nb/config/firstWordExceptions.js.map +1 -1
  703. package/build/languageProcessing/languages/nb/config/functionWords.js +5 -11
  704. package/build/languageProcessing/languages/nb/config/functionWords.js.map +1 -1
  705. package/build/languageProcessing/languages/nb/config/internal/participles.js +2 -7
  706. package/build/languageProcessing/languages/nb/config/internal/participles.js.map +1 -1
  707. package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +1 -7
  708. package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  709. package/build/languageProcessing/languages/nb/config/stopWords.js +1 -7
  710. package/build/languageProcessing/languages/nb/config/stopWords.js.map +1 -1
  711. package/build/languageProcessing/languages/nb/config/transitionWords.js +4 -10
  712. package/build/languageProcessing/languages/nb/config/transitionWords.js.map +1 -1
  713. package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js +2 -7
  714. package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js.map +1 -1
  715. package/build/languageProcessing/languages/nb/helpers/getClauses.js +11 -18
  716. package/build/languageProcessing/languages/nb/helpers/getClauses.js.map +1 -1
  717. package/build/languageProcessing/languages/nb/helpers/getStemmer.js +8 -14
  718. package/build/languageProcessing/languages/nb/helpers/getStemmer.js.map +1 -1
  719. package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js +8 -14
  720. package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js.map +1 -1
  721. package/build/languageProcessing/languages/nb/helpers/internal/stem.js +1 -7
  722. package/build/languageProcessing/languages/nb/helpers/internal/stem.js.map +1 -1
  723. package/build/languageProcessing/languages/nb/values/Clause.js +8 -14
  724. package/build/languageProcessing/languages/nb/values/Clause.js.map +1 -1
  725. package/build/languageProcessing/languages/nl/Researcher.js +23 -31
  726. package/build/languageProcessing/languages/nl/Researcher.js.map +1 -1
  727. package/build/languageProcessing/languages/nl/config/firstWordExceptions.js +1 -7
  728. package/build/languageProcessing/languages/nl/config/firstWordExceptions.js.map +1 -1
  729. package/build/languageProcessing/languages/nl/config/functionWords.js +10 -16
  730. package/build/languageProcessing/languages/nl/config/functionWords.js.map +1 -1
  731. package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js +1 -7
  732. package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js.map +1 -1
  733. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +1 -7
  734. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  735. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +1 -7
  736. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js.map +1 -1
  737. package/build/languageProcessing/languages/nl/config/keyphraseLength.js +1 -7
  738. package/build/languageProcessing/languages/nl/config/keyphraseLength.js.map +1 -1
  739. package/build/languageProcessing/languages/nl/config/stopWords.js +1 -7
  740. package/build/languageProcessing/languages/nl/config/stopWords.js.map +1 -1
  741. package/build/languageProcessing/languages/nl/config/transitionWords.js +4 -10
  742. package/build/languageProcessing/languages/nl/config/transitionWords.js.map +1 -1
  743. package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js +1 -7
  744. package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js.map +1 -1
  745. package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +3 -9
  746. package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js.map +1 -1
  747. package/build/languageProcessing/languages/nl/helpers/getClauses.js +9 -16
  748. package/build/languageProcessing/languages/nl/helpers/getClauses.js.map +1 -1
  749. package/build/languageProcessing/languages/nl/helpers/getStemmer.js +8 -14
  750. package/build/languageProcessing/languages/nl/helpers/getStemmer.js.map +1 -1
  751. package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +7 -13
  752. package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js.map +1 -1
  753. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +8 -14
  754. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
  755. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +10 -15
  756. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js.map +1 -1
  757. package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js +10 -16
  758. package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js.map +1 -1
  759. package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js +7 -13
  760. package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js.map +1 -1
  761. package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +7 -12
  762. package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js.map +1 -1
  763. package/build/languageProcessing/languages/nl/helpers/internal/stem.js +17 -23
  764. package/build/languageProcessing/languages/nl/helpers/internal/stem.js.map +1 -1
  765. package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +4 -11
  766. package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js.map +1 -1
  767. package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +8 -14
  768. package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js.map +1 -1
  769. package/build/languageProcessing/languages/nl/values/Clause.js +10 -16
  770. package/build/languageProcessing/languages/nl/values/Clause.js.map +1 -1
  771. package/build/languageProcessing/languages/pl/Researcher.js +19 -27
  772. package/build/languageProcessing/languages/pl/Researcher.js.map +1 -1
  773. package/build/languageProcessing/languages/pl/config/firstWordExceptions.js +1 -7
  774. package/build/languageProcessing/languages/pl/config/firstWordExceptions.js.map +1 -1
  775. package/build/languageProcessing/languages/pl/config/functionWords.js +9 -16
  776. package/build/languageProcessing/languages/pl/config/functionWords.js.map +1 -1
  777. package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js +1 -7
  778. package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js.map +1 -1
  779. package/build/languageProcessing/languages/pl/config/internal/participles.js +1 -7
  780. package/build/languageProcessing/languages/pl/config/internal/participles.js.map +1 -1
  781. package/build/languageProcessing/languages/pl/config/sentenceLength.js +1 -7
  782. package/build/languageProcessing/languages/pl/config/sentenceLength.js.map +1 -1
  783. package/build/languageProcessing/languages/pl/config/stopWords.js +1 -7
  784. package/build/languageProcessing/languages/pl/config/stopWords.js.map +1 -1
  785. package/build/languageProcessing/languages/pl/config/transitionWords.js +4 -10
  786. package/build/languageProcessing/languages/pl/config/transitionWords.js.map +1 -1
  787. package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js +2 -7
  788. package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js.map +1 -1
  789. package/build/languageProcessing/languages/pl/helpers/getClauses.js +9 -16
  790. package/build/languageProcessing/languages/pl/helpers/getClauses.js.map +1 -1
  791. package/build/languageProcessing/languages/pl/helpers/getStemmer.js +8 -14
  792. package/build/languageProcessing/languages/pl/helpers/getStemmer.js.map +1 -1
  793. package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js +7 -13
  794. package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js.map +1 -1
  795. package/build/languageProcessing/languages/pl/helpers/internal/stem.js +1 -7
  796. package/build/languageProcessing/languages/pl/helpers/internal/stem.js.map +1 -1
  797. package/build/languageProcessing/languages/pl/values/Clause.js +8 -14
  798. package/build/languageProcessing/languages/pl/values/Clause.js.map +1 -1
  799. package/build/languageProcessing/languages/pt/Researcher.js +23 -31
  800. package/build/languageProcessing/languages/pt/Researcher.js.map +1 -1
  801. package/build/languageProcessing/languages/pt/config/firstWordExceptions.js +1 -7
  802. package/build/languageProcessing/languages/pt/config/firstWordExceptions.js.map +1 -1
  803. package/build/languageProcessing/languages/pt/config/functionWords.js +10 -16
  804. package/build/languageProcessing/languages/pt/config/functionWords.js.map +1 -1
  805. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +1 -7
  806. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  807. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +1 -7
  808. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js.map +1 -1
  809. package/build/languageProcessing/languages/pt/config/sentenceLength.js +1 -7
  810. package/build/languageProcessing/languages/pt/config/sentenceLength.js.map +1 -1
  811. package/build/languageProcessing/languages/pt/config/stopWords.js +1 -7
  812. package/build/languageProcessing/languages/pt/config/stopWords.js.map +1 -1
  813. package/build/languageProcessing/languages/pt/config/transitionWords.js +4 -10
  814. package/build/languageProcessing/languages/pt/config/transitionWords.js.map +1 -1
  815. package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js +1 -7
  816. package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js.map +1 -1
  817. package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +3 -9
  818. package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js.map +1 -1
  819. package/build/languageProcessing/languages/pt/helpers/getClauses.js +10 -17
  820. package/build/languageProcessing/languages/pt/helpers/getClauses.js.map +1 -1
  821. package/build/languageProcessing/languages/pt/helpers/getStemmer.js +8 -14
  822. package/build/languageProcessing/languages/pt/helpers/getStemmer.js.map +1 -1
  823. package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js +6 -12
  824. package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js.map +1 -1
  825. package/build/languageProcessing/languages/pt/helpers/internal/stem.js +3 -9
  826. package/build/languageProcessing/languages/pt/helpers/internal/stem.js.map +1 -1
  827. package/build/languageProcessing/languages/pt/values/Clause.js +7 -14
  828. package/build/languageProcessing/languages/pt/values/Clause.js.map +1 -1
  829. package/build/languageProcessing/languages/ru/Researcher.js +23 -31
  830. package/build/languageProcessing/languages/ru/Researcher.js.map +1 -1
  831. package/build/languageProcessing/languages/ru/config/firstWordExceptions.js +1 -7
  832. package/build/languageProcessing/languages/ru/config/firstWordExceptions.js.map +1 -1
  833. package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +1 -7
  834. package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js.map +1 -1
  835. package/build/languageProcessing/languages/ru/config/functionWords.js +8 -14
  836. package/build/languageProcessing/languages/ru/config/functionWords.js.map +1 -1
  837. package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +2 -8
  838. package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js.map +1 -1
  839. package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +1 -7
  840. package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js.map +1 -1
  841. package/build/languageProcessing/languages/ru/config/sentenceLength.js +1 -7
  842. package/build/languageProcessing/languages/ru/config/sentenceLength.js.map +1 -1
  843. package/build/languageProcessing/languages/ru/config/transitionWords.js +4 -10
  844. package/build/languageProcessing/languages/ru/config/transitionWords.js.map +1 -1
  845. package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js +2 -7
  846. package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js.map +1 -1
  847. package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +3 -9
  848. package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js.map +1 -1
  849. package/build/languageProcessing/languages/ru/helpers/getStemmer.js +8 -14
  850. package/build/languageProcessing/languages/ru/helpers/getStemmer.js.map +1 -1
  851. package/build/languageProcessing/languages/ru/helpers/internal/stem.js +1 -7
  852. package/build/languageProcessing/languages/ru/helpers/internal/stem.js.map +1 -1
  853. package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js +6 -12
  854. package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js.map +1 -1
  855. package/build/languageProcessing/languages/sk/Researcher.js +17 -25
  856. package/build/languageProcessing/languages/sk/Researcher.js.map +1 -1
  857. package/build/languageProcessing/languages/sk/config/firstWordExceptions.js +1 -7
  858. package/build/languageProcessing/languages/sk/config/firstWordExceptions.js.map +1 -1
  859. package/build/languageProcessing/languages/sk/config/functionWords.js +5 -11
  860. package/build/languageProcessing/languages/sk/config/functionWords.js.map +1 -1
  861. package/build/languageProcessing/languages/sk/config/internal/nonPassives.js +1 -7
  862. package/build/languageProcessing/languages/sk/config/internal/nonPassives.js.map +1 -1
  863. package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +2 -8
  864. package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  865. package/build/languageProcessing/languages/sk/config/stopWords.js +1 -7
  866. package/build/languageProcessing/languages/sk/config/stopWords.js.map +1 -1
  867. package/build/languageProcessing/languages/sk/config/transitionWords.js +4 -10
  868. package/build/languageProcessing/languages/sk/config/transitionWords.js.map +1 -1
  869. package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js +2 -7
  870. package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js.map +1 -1
  871. package/build/languageProcessing/languages/sk/helpers/getClauses.js +9 -16
  872. package/build/languageProcessing/languages/sk/helpers/getClauses.js.map +1 -1
  873. package/build/languageProcessing/languages/sk/helpers/getStemmer.js +8 -14
  874. package/build/languageProcessing/languages/sk/helpers/getStemmer.js.map +1 -1
  875. package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js +3 -9
  876. package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js.map +1 -1
  877. package/build/languageProcessing/languages/sk/helpers/internal/stem.js +1 -7
  878. package/build/languageProcessing/languages/sk/helpers/internal/stem.js.map +1 -1
  879. package/build/languageProcessing/languages/sk/values/Clause.js +8 -14
  880. package/build/languageProcessing/languages/sk/values/Clause.js.map +1 -1
  881. package/build/languageProcessing/languages/sv/Researcher.js +17 -25
  882. package/build/languageProcessing/languages/sv/Researcher.js.map +1 -1
  883. package/build/languageProcessing/languages/sv/config/firstWordExceptions.js +1 -7
  884. package/build/languageProcessing/languages/sv/config/firstWordExceptions.js.map +1 -1
  885. package/build/languageProcessing/languages/sv/config/functionWords.js +7 -13
  886. package/build/languageProcessing/languages/sv/config/functionWords.js.map +1 -1
  887. package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js +2 -7
  888. package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js.map +1 -1
  889. package/build/languageProcessing/languages/sv/config/keyphraseLength.js +1 -7
  890. package/build/languageProcessing/languages/sv/config/keyphraseLength.js.map +1 -1
  891. package/build/languageProcessing/languages/sv/config/transitionWords.js +4 -10
  892. package/build/languageProcessing/languages/sv/config/transitionWords.js.map +1 -1
  893. package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js +2 -7
  894. package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js.map +1 -1
  895. package/build/languageProcessing/languages/sv/helpers/getStemmer.js +8 -14
  896. package/build/languageProcessing/languages/sv/helpers/getStemmer.js.map +1 -1
  897. package/build/languageProcessing/languages/sv/helpers/internal/stem.js +1 -7
  898. package/build/languageProcessing/languages/sv/helpers/internal/stem.js.map +1 -1
  899. package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js +6 -12
  900. package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js.map +1 -1
  901. package/build/languageProcessing/languages/tr/Researcher.js +17 -25
  902. package/build/languageProcessing/languages/tr/Researcher.js.map +1 -1
  903. package/build/languageProcessing/languages/tr/config/firstWordExceptions.js +1 -7
  904. package/build/languageProcessing/languages/tr/config/firstWordExceptions.js.map +1 -1
  905. package/build/languageProcessing/languages/tr/config/functionWords.js +4 -10
  906. package/build/languageProcessing/languages/tr/config/functionWords.js.map +1 -1
  907. package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +3 -8
  908. package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js.map +1 -1
  909. package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js +1 -7
  910. package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js.map +1 -1
  911. package/build/languageProcessing/languages/tr/config/sentenceLength.js +1 -7
  912. package/build/languageProcessing/languages/tr/config/sentenceLength.js.map +1 -1
  913. package/build/languageProcessing/languages/tr/config/transitionWords.js +4 -10
  914. package/build/languageProcessing/languages/tr/config/transitionWords.js.map +1 -1
  915. package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js +2 -7
  916. package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js.map +1 -1
  917. package/build/languageProcessing/languages/tr/helpers/getStemmer.js +8 -14
  918. package/build/languageProcessing/languages/tr/helpers/getStemmer.js.map +1 -1
  919. package/build/languageProcessing/languages/tr/helpers/internal/stem.js +3 -9
  920. package/build/languageProcessing/languages/tr/helpers/internal/stem.js.map +1 -1
  921. package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js +9 -15
  922. package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js.map +1 -1
  923. package/build/languageProcessing/researches/altTagCount.js +10 -16
  924. package/build/languageProcessing/researches/altTagCount.js.map +1 -1
  925. package/build/languageProcessing/researches/checkRelatedKeywords.js +71 -0
  926. package/build/languageProcessing/researches/checkRelatedKeywords.js.map +1 -0
  927. package/build/languageProcessing/researches/countSentencesFromText.js +9 -15
  928. package/build/languageProcessing/researches/countSentencesFromText.js.map +1 -1
  929. package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js +19 -26
  930. package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js.map +1 -1
  931. package/build/languageProcessing/researches/findKeywordInFirstParagraph.js +17 -23
  932. package/build/languageProcessing/researches/findKeywordInFirstParagraph.js.map +1 -1
  933. package/build/languageProcessing/researches/findTransitionWords.js +16 -23
  934. package/build/languageProcessing/researches/findTransitionWords.js.map +1 -1
  935. package/build/languageProcessing/researches/functionWordsInKeyphrase.js +10 -16
  936. package/build/languageProcessing/researches/functionWordsInKeyphrase.js.map +1 -1
  937. package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js +21 -28
  938. package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js.map +1 -1
  939. package/build/languageProcessing/researches/getFleschReadingScore.js +18 -25
  940. package/build/languageProcessing/researches/getFleschReadingScore.js.map +1 -1
  941. package/build/languageProcessing/researches/getKeywordDensity.js +7 -14
  942. package/build/languageProcessing/researches/getKeywordDensity.js.map +1 -1
  943. package/build/languageProcessing/researches/getLinkStatistics.js +7 -13
  944. package/build/languageProcessing/researches/getLinkStatistics.js.map +1 -1
  945. package/build/languageProcessing/researches/getLinks.js +7 -13
  946. package/build/languageProcessing/researches/getLinks.js.map +1 -1
  947. package/build/languageProcessing/researches/getLongCenterAlignedTexts.js +1 -7
  948. package/build/languageProcessing/researches/getLongCenterAlignedTexts.js.map +1 -1
  949. package/build/languageProcessing/researches/getParagraphLength.js +15 -21
  950. package/build/languageProcessing/researches/getParagraphLength.js.map +1 -1
  951. package/build/languageProcessing/researches/getParagraphs.js +4 -9
  952. package/build/languageProcessing/researches/getParagraphs.js.map +1 -1
  953. package/build/languageProcessing/researches/getPassiveVoiceResult.js +21 -30
  954. package/build/languageProcessing/researches/getPassiveVoiceResult.js.map +1 -1
  955. package/build/languageProcessing/researches/getProminentWordsForInsights.js +12 -18
  956. package/build/languageProcessing/researches/getProminentWordsForInsights.js.map +1 -1
  957. package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js +20 -26
  958. package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js.map +1 -1
  959. package/build/languageProcessing/researches/getSentenceBeginnings.js +28 -36
  960. package/build/languageProcessing/researches/getSentenceBeginnings.js.map +1 -1
  961. package/build/languageProcessing/researches/getSubheadingTextLengths.js +12 -18
  962. package/build/languageProcessing/researches/getSubheadingTextLengths.js.map +1 -1
  963. package/build/languageProcessing/researches/getWordForms.js +13 -19
  964. package/build/languageProcessing/researches/getWordForms.js.map +1 -1
  965. package/build/languageProcessing/researches/h1s.js +1 -7
  966. package/build/languageProcessing/researches/h1s.js.map +1 -1
  967. package/build/languageProcessing/researches/imageCount.js +4 -10
  968. package/build/languageProcessing/researches/imageCount.js.map +1 -1
  969. package/build/languageProcessing/researches/index.js +4 -27
  970. package/build/languageProcessing/researches/index.js.map +1 -1
  971. package/build/languageProcessing/researches/keyphraseDistribution.js +22 -32
  972. package/build/languageProcessing/researches/keyphraseDistribution.js.map +1 -1
  973. package/build/languageProcessing/researches/keyphraseLength.js +1 -7
  974. package/build/languageProcessing/researches/keyphraseLength.js.map +1 -1
  975. package/build/languageProcessing/researches/keywordCount.js +30 -39
  976. package/build/languageProcessing/researches/keywordCount.js.map +1 -1
  977. package/build/languageProcessing/researches/keywordCountInUrl.js +8 -16
  978. package/build/languageProcessing/researches/keywordCountInUrl.js.map +1 -1
  979. package/build/languageProcessing/researches/matchKeywordInSubheadings.js +15 -20
  980. package/build/languageProcessing/researches/matchKeywordInSubheadings.js.map +1 -1
  981. package/build/languageProcessing/researches/metaDescriptionKeyword.js +6 -12
  982. package/build/languageProcessing/researches/metaDescriptionKeyword.js.map +1 -1
  983. package/build/languageProcessing/researches/metaDescriptionLength.js +3 -9
  984. package/build/languageProcessing/researches/metaDescriptionLength.js.map +1 -1
  985. package/build/languageProcessing/researches/pageTitleWidth.js +1 -7
  986. package/build/languageProcessing/researches/pageTitleWidth.js.map +1 -1
  987. package/build/languageProcessing/researches/readingTime.js +7 -13
  988. package/build/languageProcessing/researches/readingTime.js.map +1 -1
  989. package/build/languageProcessing/researches/sentences.js +7 -13
  990. package/build/languageProcessing/researches/sentences.js.map +1 -1
  991. package/build/languageProcessing/researches/videoCount.js +1 -7
  992. package/build/languageProcessing/researches/videoCount.js.map +1 -1
  993. package/build/languageProcessing/researches/wordComplexity.js +15 -21
  994. package/build/languageProcessing/researches/wordComplexity.js.map +1 -1
  995. package/build/languageProcessing/researches/wordCountInText.js +10 -15
  996. package/build/languageProcessing/researches/wordCountInText.js.map +1 -1
  997. package/build/languageProcessing/values/Clause.js +1 -7
  998. package/build/languageProcessing/values/Clause.js.map +1 -1
  999. package/build/languageProcessing/values/ProminentWord.js +1 -7
  1000. package/build/languageProcessing/values/ProminentWord.js.map +1 -1
  1001. package/build/languageProcessing/values/Sentence.js +1 -7
  1002. package/build/languageProcessing/values/Sentence.js.map +1 -1
  1003. package/build/languageProcessing/values/index.js +4 -27
  1004. package/build/languageProcessing/values/index.js.map +1 -1
  1005. package/build/markers/addMark.js +1 -7
  1006. package/build/markers/addMark.js.map +1 -1
  1007. package/build/markers/addMarkSingleWord.js +7 -12
  1008. package/build/markers/addMarkSingleWord.js.map +1 -1
  1009. package/build/markers/index.js +3 -20
  1010. package/build/markers/index.js.map +1 -1
  1011. package/build/markers/removeDuplicateMarks.js +3 -8
  1012. package/build/markers/removeDuplicateMarks.js.map +1 -1
  1013. package/build/markers/removeMarks.js +1 -7
  1014. package/build/markers/removeMarks.js.map +1 -1
  1015. package/build/parse/build/build.js +17 -25
  1016. package/build/parse/build/build.js.map +1 -1
  1017. package/build/parse/build/index.js +7 -12
  1018. package/build/parse/build/index.js.map +1 -1
  1019. package/build/parse/build/private/adapt.js +15 -21
  1020. package/build/parse/build/private/adapt.js.map +1 -1
  1021. package/build/parse/build/private/adaptAttributes.js +3 -9
  1022. package/build/parse/build/private/adaptAttributes.js.map +1 -1
  1023. package/build/parse/build/private/alwaysFilterElements.js +9 -14
  1024. package/build/parse/build/private/alwaysFilterElements.js.map +1 -1
  1025. package/build/parse/build/private/combineIntoImplicitParagraphs.js +12 -18
  1026. package/build/parse/build/private/combineIntoImplicitParagraphs.js.map +1 -1
  1027. package/build/parse/build/private/filterBeforeTokenizing.js +5 -10
  1028. package/build/parse/build/private/filterBeforeTokenizing.js.map +1 -1
  1029. package/build/parse/build/private/filterHelpers.js +3 -11
  1030. package/build/parse/build/private/filterHelpers.js.map +1 -1
  1031. package/build/parse/build/private/filterTree.js +3 -8
  1032. package/build/parse/build/private/filterTree.js.map +1 -1
  1033. package/build/parse/build/private/getTextElementPositions.js +5 -10
  1034. package/build/parse/build/private/getTextElementPositions.js.map +1 -1
  1035. package/build/parse/build/private/helpers/parseClassAttribute.js +1 -7
  1036. package/build/parse/build/private/helpers/parseClassAttribute.js.map +1 -1
  1037. package/build/parse/build/private/isPhrasingContent.js +1 -7
  1038. package/build/parse/build/private/isPhrasingContent.js.map +1 -1
  1039. package/build/parse/build/private/parseBlocks.js +4 -11
  1040. package/build/parse/build/private/parseBlocks.js.map +1 -1
  1041. package/build/parse/build/private/tokenize.js +8 -14
  1042. package/build/parse/build/private/tokenize.js.map +1 -1
  1043. package/build/parse/language/LanguageProcessor.js +8 -15
  1044. package/build/parse/language/LanguageProcessor.js.map +1 -1
  1045. package/build/parse/structure/Heading.js +3 -9
  1046. package/build/parse/structure/Heading.js.map +1 -1
  1047. package/build/parse/structure/Node.js +8 -14
  1048. package/build/parse/structure/Node.js.map +1 -1
  1049. package/build/parse/structure/Paragraph.js +3 -9
  1050. package/build/parse/structure/Paragraph.js.map +1 -1
  1051. package/build/parse/structure/Sentence.js +1 -7
  1052. package/build/parse/structure/Sentence.js.map +1 -1
  1053. package/build/parse/structure/SourceCodeLocation.js +1 -7
  1054. package/build/parse/structure/SourceCodeLocation.js.map +1 -1
  1055. package/build/parse/structure/Text.js +3 -10
  1056. package/build/parse/structure/Text.js.map +1 -1
  1057. package/build/parse/structure/Token.js +3 -8
  1058. package/build/parse/structure/Token.js.map +1 -1
  1059. package/build/parse/structure/index.js +10 -33
  1060. package/build/parse/structure/index.js.map +1 -1
  1061. package/build/parse/traverse/findAllInTree.js +1 -7
  1062. package/build/parse/traverse/findAllInTree.js.map +1 -1
  1063. package/build/parse/traverse/index.js +8 -19
  1064. package/build/parse/traverse/index.js.map +1 -1
  1065. package/build/parse/traverse/innerText.js +3 -8
  1066. package/build/parse/traverse/innerText.js.map +1 -1
  1067. package/build/parsedPaper/ParsedPaper.js +1 -8
  1068. package/build/parsedPaper/ParsedPaper.js.map +1 -1
  1069. package/build/parsedPaper/assess/TreeAssessor.js +6 -12
  1070. package/build/parsedPaper/assess/TreeAssessor.js.map +1 -1
  1071. package/build/parsedPaper/assess/assessmentListFactories.js +1 -11
  1072. package/build/parsedPaper/assess/assessmentListFactories.js.map +1 -1
  1073. package/build/parsedPaper/assess/assessments/Assessment.js +15 -9
  1074. package/build/parsedPaper/assess/assessments/Assessment.js.map +1 -1
  1075. package/build/parsedPaper/assess/assessments/index.js +6 -13
  1076. package/build/parsedPaper/assess/assessments/index.js.map +1 -1
  1077. package/build/parsedPaper/assess/assessorFactories.js +16 -24
  1078. package/build/parsedPaper/assess/assessorFactories.js.map +1 -1
  1079. package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js +1 -9
  1080. package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js.map +1 -1
  1081. package/build/parsedPaper/assess/cornerstone/index.js +2 -10
  1082. package/build/parsedPaper/assess/cornerstone/index.js.map +1 -1
  1083. package/build/parsedPaper/assess/index.js +13 -29
  1084. package/build/parsedPaper/assess/index.js.map +1 -1
  1085. package/build/parsedPaper/build/PaperParser.js +5 -11
  1086. package/build/parsedPaper/build/PaperParser.js.map +1 -1
  1087. package/build/parsedPaper/build/linguisticParsing/Sentence.js +1 -7
  1088. package/build/parsedPaper/build/linguisticParsing/Sentence.js.map +1 -1
  1089. package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +16 -23
  1090. package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js.map +1 -1
  1091. package/build/parsedPaper/build/linguisticParsing/parseText.js +3 -9
  1092. package/build/parsedPaper/build/linguisticParsing/parseText.js.map +1 -1
  1093. package/build/parsedPaper/build/tree/TreeBuilder.js +3 -9
  1094. package/build/parsedPaper/build/tree/TreeBuilder.js.map +1 -1
  1095. package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js +5 -10
  1096. package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js.map +1 -1
  1097. package/build/parsedPaper/build/tree/cleanup/getElementContent.js +1 -7
  1098. package/build/parsedPaper/build/tree/cleanup/getElementContent.js.map +1 -1
  1099. package/build/parsedPaper/build/tree/cleanup/postParsing.js +5 -11
  1100. package/build/parsedPaper/build/tree/cleanup/postParsing.js.map +1 -1
  1101. package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js +21 -27
  1102. package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js.map +1 -1
  1103. package/build/parsedPaper/build/tree/html/buildTree.js +7 -13
  1104. package/build/parsedPaper/build/tree/html/buildTree.js.map +1 -1
  1105. package/build/parsedPaper/build/tree/html/htmlConstants.js +4 -9
  1106. package/build/parsedPaper/build/tree/html/htmlConstants.js.map +1 -1
  1107. package/build/parsedPaper/build/tree/index.js +3 -8
  1108. package/build/parsedPaper/build/tree/index.js.map +1 -1
  1109. package/build/parsedPaper/build/tree/metadata/buildTree.js +12 -18
  1110. package/build/parsedPaper/build/tree/metadata/buildTree.js.map +1 -1
  1111. package/build/parsedPaper/research/TreeResearcher.js +4 -9
  1112. package/build/parsedPaper/research/TreeResearcher.js.map +1 -1
  1113. package/build/parsedPaper/research/index.js +10 -12
  1114. package/build/parsedPaper/research/index.js.map +1 -1
  1115. package/build/parsedPaper/research/researches/Headings.js +5 -11
  1116. package/build/parsedPaper/research/researches/Headings.js.map +1 -1
  1117. package/build/parsedPaper/research/researches/LinkStatistics.js +6 -12
  1118. package/build/parsedPaper/research/researches/LinkStatistics.js.map +1 -1
  1119. package/build/parsedPaper/research/researches/Research.js +5 -10
  1120. package/build/parsedPaper/research/researches/Research.js.map +1 -1
  1121. package/build/parsedPaper/research/researches/index.js +1 -13
  1122. package/build/parsedPaper/research/researches/index.js.map +1 -1
  1123. package/build/parsedPaper/structure/tree/FormattingElement.js +3 -9
  1124. package/build/parsedPaper/structure/tree/FormattingElement.js.map +1 -1
  1125. package/build/parsedPaper/structure/tree/SourceCodeLocation.js +1 -7
  1126. package/build/parsedPaper/structure/tree/SourceCodeLocation.js.map +1 -1
  1127. package/build/parsedPaper/structure/tree/TextContainer.js +5 -10
  1128. package/build/parsedPaper/structure/tree/TextContainer.js.map +1 -1
  1129. package/build/parsedPaper/structure/tree/index.js +9 -74
  1130. package/build/parsedPaper/structure/tree/index.js.map +1 -1
  1131. package/build/parsedPaper/structure/tree/nodes/Heading.js +3 -9
  1132. package/build/parsedPaper/structure/tree/nodes/Heading.js.map +1 -1
  1133. package/build/parsedPaper/structure/tree/nodes/LeafNode.js +5 -12
  1134. package/build/parsedPaper/structure/tree/nodes/LeafNode.js.map +1 -1
  1135. package/build/parsedPaper/structure/tree/nodes/List.js +5 -11
  1136. package/build/parsedPaper/structure/tree/nodes/List.js.map +1 -1
  1137. package/build/parsedPaper/structure/tree/nodes/ListItem.js +3 -10
  1138. package/build/parsedPaper/structure/tree/nodes/ListItem.js.map +1 -1
  1139. package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +3 -9
  1140. package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js.map +1 -1
  1141. package/build/parsedPaper/structure/tree/nodes/MetadataText.js +3 -9
  1142. package/build/parsedPaper/structure/tree/nodes/MetadataText.js.map +1 -1
  1143. package/build/parsedPaper/structure/tree/nodes/Node.js +6 -12
  1144. package/build/parsedPaper/structure/tree/nodes/Node.js.map +1 -1
  1145. package/build/parsedPaper/structure/tree/nodes/Paragraph.js +3 -9
  1146. package/build/parsedPaper/structure/tree/nodes/Paragraph.js.map +1 -1
  1147. package/build/parsedPaper/structure/tree/nodes/StructuredNode.js +3 -10
  1148. package/build/parsedPaper/structure/tree/nodes/StructuredNode.js.map +1 -1
  1149. package/build/parsedPaper/structure/tree/nodes/index.js +10 -69
  1150. package/build/parsedPaper/structure/tree/nodes/index.js.map +1 -1
  1151. package/build/scoring/assessments/assessment.js +17 -15
  1152. package/build/scoring/assessments/assessment.js.map +1 -1
  1153. package/build/scoring/assessments/index.js +53 -56
  1154. package/build/scoring/assessments/index.js.map +1 -1
  1155. package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js +30 -47
  1156. package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js.map +1 -1
  1157. package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js +98 -0
  1158. package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js.map +1 -0
  1159. package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js +22 -35
  1160. package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js.map +1 -1
  1161. package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js +24 -39
  1162. package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js.map +1 -1
  1163. package/build/scoring/assessments/readability/TransitionWordsAssessment.js +29 -47
  1164. package/build/scoring/assessments/readability/TransitionWordsAssessment.js.map +1 -1
  1165. package/build/scoring/assessments/seo/ImageCountAssessment.js +17 -33
  1166. package/build/scoring/assessments/seo/ImageCountAssessment.js.map +1 -1
  1167. package/build/scoring/assessments/seo/InternalLinksAssessment.js +20 -34
  1168. package/build/scoring/assessments/seo/InternalLinksAssessment.js.map +1 -1
  1169. package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js +20 -34
  1170. package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js.map +1 -1
  1171. package/build/scoring/assessments/seo/KeyphraseAssessment.js +18 -32
  1172. package/build/scoring/assessments/seo/KeyphraseAssessment.js.map +1 -1
  1173. package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js +21 -34
  1174. package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js.map +1 -1
  1175. package/build/scoring/assessments/seo/KeywordDensityAssessment.js +26 -40
  1176. package/build/scoring/assessments/seo/KeywordDensityAssessment.js.map +1 -1
  1177. package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +23 -42
  1178. package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js.map +1 -1
  1179. package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +17 -32
  1180. package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js.map +1 -1
  1181. package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js +25 -41
  1182. package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js.map +1 -1
  1183. package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js +16 -30
  1184. package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js.map +1 -1
  1185. package/build/scoring/assessments/seo/OutboundLinksAssessment.js +20 -35
  1186. package/build/scoring/assessments/seo/OutboundLinksAssessment.js.map +1 -1
  1187. package/build/scoring/assessments/seo/PageTitleWidthAssessment.js +17 -31
  1188. package/build/scoring/assessments/seo/PageTitleWidthAssessment.js.map +1 -1
  1189. package/build/scoring/assessments/seo/SchemaAssessment.js +95 -0
  1190. package/build/scoring/assessments/seo/SchemaAssessment.js.map +1 -0
  1191. package/build/scoring/assessments/seo/SingleH1Assessment.js +20 -33
  1192. package/build/scoring/assessments/seo/SingleH1Assessment.js.map +1 -1
  1193. package/build/scoring/assessments/seo/SingleTitleAssessment.js +20 -33
  1194. package/build/scoring/assessments/seo/SingleTitleAssessment.js.map +1 -1
  1195. package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +18 -35
  1196. package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js.map +1 -1
  1197. package/build/scoring/assessments/seo/TextImagesAssessment.js +20 -36
  1198. package/build/scoring/assessments/seo/TextImagesAssessment.js.map +1 -1
  1199. package/build/scoring/assessments/seo/TextLengthAssessment.js +21 -37
  1200. package/build/scoring/assessments/seo/TextLengthAssessment.js.map +1 -1
  1201. package/build/scoring/assessments/seo/UrlKeywordAssessment.js +20 -36
  1202. package/build/scoring/assessments/seo/UrlKeywordAssessment.js.map +1 -1
  1203. package/build/scoring/assessments/seo/UrlLengthAssessment.js +19 -33
  1204. package/build/scoring/assessments/seo/UrlLengthAssessment.js.map +1 -1
  1205. package/build/scoring/assessors/assessor.js +53 -33
  1206. package/build/scoring/assessors/assessor.js.map +1 -1
  1207. package/build/scoring/assessors/avadaAssessor.js +37 -16
  1208. package/build/scoring/assessors/avadaAssessor.js.map +1 -1
  1209. package/build/scoring/assessors/contentAssessor.js +16 -22
  1210. package/build/scoring/assessors/contentAssessor.js.map +1 -1
  1211. package/build/scoring/assessors/index.js +4 -34
  1212. package/build/scoring/assessors/index.js.map +1 -1
  1213. package/build/scoring/assessors/seoAssessor.js +26 -32
  1214. package/build/scoring/assessors/seoAssessor.js.map +1 -1
  1215. package/build/scoring/helpers/assessments/checkForTooLongSentences.js +3 -8
  1216. package/build/scoring/helpers/assessments/checkForTooLongSentences.js.map +1 -1
  1217. package/build/scoring/helpers/assessments/inRange.js +2 -10
  1218. package/build/scoring/helpers/assessments/inRange.js.map +1 -1
  1219. package/build/scoring/helpers/assessments/keyphraseLengthFactor.js +1 -7
  1220. package/build/scoring/helpers/assessments/keyphraseLengthFactor.js.map +1 -1
  1221. package/build/scoring/helpers/assessments/recommendedKeywordCount.js +5 -11
  1222. package/build/scoring/helpers/assessments/recommendedKeywordCount.js.map +1 -1
  1223. package/build/scoring/helpers/index.js +7 -15
  1224. package/build/scoring/helpers/index.js.map +1 -1
  1225. package/build/scoring/interpreters/index.js +2 -13
  1226. package/build/scoring/interpreters/index.js.map +1 -1
  1227. package/build/scoring/interpreters/scoreToRating.js +1 -7
  1228. package/build/scoring/interpreters/scoreToRating.js.map +1 -1
  1229. package/build/scoring/renderers/AssessorPresenter.js +12 -18
  1230. package/build/scoring/renderers/AssessorPresenter.js.map +1 -1
  1231. package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js +8 -14
  1232. package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js.map +1 -1
  1233. package/build/scoring/scoreAggregators/SEOScoreAggregator.js +3 -9
  1234. package/build/scoring/scoreAggregators/SEOScoreAggregator.js.map +1 -1
  1235. package/build/scoring/scoreAggregators/ScoreAggregator.js +1 -7
  1236. package/build/scoring/scoreAggregators/ScoreAggregator.js.map +1 -1
  1237. package/build/scoring/scoreAggregators/index.js +3 -27
  1238. package/build/scoring/scoreAggregators/index.js.map +1 -1
  1239. package/build/values/AssessmentResult.js +32 -56
  1240. package/build/values/AssessmentResult.js.map +1 -1
  1241. package/build/values/Mark.js +9 -15
  1242. package/build/values/Mark.js.map +1 -1
  1243. package/build/values/Paper.js +89 -16
  1244. package/build/values/Paper.js.map +1 -1
  1245. package/build/values/index.js +4 -27
  1246. package/build/values/index.js.map +1 -1
  1247. package/build/vendor/turkishStemmer.js +1 -7
  1248. package/build/vendor/turkishStemmer.js.map +1 -1
  1249. package/package.json +11 -1
  1250. package/build/bundledPlugins/index.js +0 -14
  1251. package/build/bundledPlugins/index.js.map +0 -1
  1252. package/build/bundledPlugins/previouslyUsedKeywords.js +0 -171
  1253. package/build/bundledPlugins/previouslyUsedKeywords.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AssessorPresenter.js","names":["_lodash","require","_scoreToRating","_interopRequireDefault","_presenter","e","__esModule","default","AssessorPresenter","constructor","args","keyword","assessor","output","targets","overall","presenterConfig","createConfig","_disableMarkerButtons","_activeMarker","setKeyword","configHasProperty","property","hasOwnProperty","getIndicator","rating","className","getIndicatorColorClass","screenReaderText","getIndicatorScreenReaderText","fullText","getIndicatorFullText","screenReaderReadabilityText","getIndicatorScreenReaderReadabilityText","resultToRating","result","isObject","scoreToRating","score","getIndividualRatings","ratings","validResults","sort","getValidResults","mappedResults","map","forEach","item","key","addRating","bind","excludeFromResults","results","exclude","difference","nonSortables","getUndefinedScores","sortables","a","b","concat","filter","isUndefined","indicator","text","identifier","getIdentifier","hasMarker","marker","getMarker","getOverallRating","overallScore","isNumber","markAssessment","removeAllMarks","render","disableMarker","disableMarkerButtons","enableMarkerButtons","addMarkerEventHandler","container","document","getElementById","markButton","getElementsByClassName","addEventListener","renderIndividualRatings","renderOverallRating","bindMarkButtons","scores","getSpecificMarker","getPaper","overallRating","calculateOverallScore","overallRatingElement","_default","exports"],"sources":["../../../src/scoring/renderers/AssessorPresenter.js"],"sourcesContent":["import { difference, forEach, isNumber, isObject, isUndefined } from \"lodash\";\nimport scoreToRating from \"../interpreters/scoreToRating.js\";\nimport createConfig from \"../../config/presenter.js\";\n\n/**\n * Represents the AssessorPresenter.\n */\nclass AssessorPresenter {\n\t/**\n\t * Constructs the AssessorPresenter.\n\t *\n\t * @param {Object} args A list of arguments to use in the presenter.\n\t * @param {object} args.targets The HTML elements to render the output to.\n\t * @param {string} args.targets.output The HTML element to render the individual ratings out to.\n\t * @param {string} args.targets.overall The HTML element to render the overall rating out to.\n\t * @param {string} args.keyword The keyword to use for checking, when calculating the overall rating.\n\t * @param {SEOAssessor} args.assessor The Assessor object to retrieve assessment results from.\n\t *\n\t * @constructor\n\t */\n\tconstructor( args ) {\n\t\tthis.keyword = args.keyword;\n\t\tthis.assessor = args.assessor;\n\t\tthis.output = args.targets.output;\n\t\tthis.overall = args.targets.overall || \"overallScore\";\n\t\tthis.presenterConfig = createConfig();\n\n\t\tthis._disableMarkerButtons = false;\n\n\t\tthis._activeMarker = false;\n\t}\n\n\t/**\n\t * Sets the keyword.\n\t *\n\t * @param {string} keyword The keyword to use.\n\t * @returns {void}\n\t */\n\tsetKeyword( keyword ) {\n\t\tthis.keyword = keyword;\n\t}\n\n\t/**\n\t * Checks whether a specific property exists in the presenter configuration.\n\t *\n\t * @param {string} property The property name to search for.\n\t * @returns {boolean} Whether or not the property exists.\n\t */\n\tconfigHasProperty( property ) {\n\t\treturn this.presenterConfig.hasOwnProperty( property );\n\t}\n\n\t/**\n\t * Gets a fully formatted indicator object that can be used.\n\t *\n\t * @param {string} rating The rating to use.\n\t * @returns {Object} An object containing the class, the screen reader text, and the full text.\n\t */\n\tgetIndicator( rating ) {\n\t\treturn {\n\t\t\tclassName: this.getIndicatorColorClass( rating ),\n\t\t\tscreenReaderText: this.getIndicatorScreenReaderText( rating ),\n\t\t\tfullText: this.getIndicatorFullText( rating ),\n\t\t\tscreenReaderReadabilityText: this.getIndicatorScreenReaderReadabilityText( rating ),\n\t\t};\n\t}\n\n\t/**\n\t * Gets the indicator color class from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} String containing the CSS class to be used.\n\t */\n\tgetIndicatorColorClass( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].className;\n\t}\n\n\t/**\n\t * Gets the indicator screen reader text from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} Translated string containing the screen reader text to be used.\n\t */\n\tgetIndicatorScreenReaderText( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].screenReaderText;\n\t}\n\n\t/**\n\t * Gets the indicator screen reader readability text from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} Translated string containing the screen reader readability text to be used.\n\t */\n\tgetIndicatorScreenReaderReadabilityText( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].screenReaderReadabilityText;\n\t}\n\n\t/**\n\t * Gets the indicator full text from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} Translated string containing the full text to be used.\n\t */\n\tgetIndicatorFullText( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].fullText;\n\t}\n\n\t/**\n\t * Adds a rating based on the numeric score.\n\t *\n\t * @param {Object} result Object based on the Assessment result. Requires a score property to work.\n\t * @returns {Object} The Assessment result object with the rating added.\n\t */\n\tresultToRating( result ) {\n\t\tif ( ! isObject( result ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tresult.rating = scoreToRating( result.score );\n\n\t\treturn result;\n\t}\n\n\t/**\n\t * Takes the individual assessment results, sorts and rates them.\n\t *\n\t * @returns {Object} Object containing all the individual ratings.\n\t */\n\tgetIndividualRatings() {\n\t\tconst ratings = {};\n\t\tconst validResults = this.sort( this.assessor.getValidResults() );\n\t\tconst mappedResults = validResults.map( this.resultToRating );\n\n\t\tforEach( mappedResults, function( item, key ) {\n\t\t\tratings[ key ] = this.addRating( item );\n\t\t}.bind( this ) );\n\n\t\treturn ratings;\n\t}\n\n\t/**\n\t * Excludes items from the results that are present in the `exclude` array.\n\t *\n\t * @param {Array} results Array containing the items to filter through.\n\t * @param {Array} exclude Array of results to exclude.\n\t * @returns {Array} Array containing items that remain after exclusion.\n\t */\n\texcludeFromResults( results, exclude ) {\n\t\treturn difference( results, exclude );\n\t}\n\n\t/**\n\t * Sorts results based on their score property and always places items considered to be non-sortable, at the top.\n\t *\n\t * @param {Array} results Array containing the results that need to be sorted.\n\t * @returns {Array} Array containing the sorted results.\n\t */\n\tsort( results ) {\n\t\tconst nonSortables = this.getUndefinedScores( results );\n\t\tconst sortables = this.excludeFromResults( results, nonSortables );\n\n\t\tsortables.sort( function( a, b ) {\n\t\t\treturn a.score - b.score;\n\t\t} );\n\n\t\treturn nonSortables.concat( sortables );\n\t}\n\n\t/**\n\t * Returns a subset of results that have an undefined score or a score set to zero.\n\t *\n\t * @param {Array} results The results to filter through.\n\t * @returns {Array} A subset of results containing items with an undefined score or where the score is zero.\n\t */\n\tgetUndefinedScores( results ) {\n\t\treturn results.filter( function( result ) {\n\t\t\treturn isUndefined( result.score ) || result.score === 0;\n\t\t} );\n\t}\n\n\t/**\n\t * Creates a rating object based on the item that is being passed.\n\t *\n\t * @param {Object} item The item to check and create a rating object from.\n\t * @returns {Object} Object containing a parsed item, including a colored indicator.\n\t */\n\taddRating( item ) {\n\t\tconst indicator = this.getIndicator( item.rating );\n\t\tindicator.text = item.text;\n\t\tindicator.identifier = item.getIdentifier();\n\n\t\tif ( item.hasMarker() ) {\n\t\t\tindicator.marker = item.getMarker();\n\t\t}\n\n\t\treturn indicator;\n\t}\n\n\t/**\n\t * Calculates the overall rating score based on the overall score.\n\t *\n\t * @param {Number} overallScore The overall score to use in the calculation.\n\t * @returns {Object} The rating based on the score.\n\t */\n\tgetOverallRating( overallScore ) {\n\t\tlet rating = 0;\n\n\t\tif ( this.keyword === \"\" ) {\n\t\t\treturn this.resultToRating( { score: rating } );\n\t\t}\n\n\t\tif ( isNumber( overallScore ) ) {\n\t\t\trating = ( overallScore / 10 );\n\t\t}\n\n\t\treturn this.resultToRating( { score: rating } );\n\t}\n\n\t/**\n\t * Marks with a given marker. This will set the active marker to the correct value.\n\t *\n\t * @param {string} identifier The identifier for the assessment/marker.\n\t * @param {Function} marker The marker function.\n\t * @returns {void}\n\t */\n\tmarkAssessment( identifier, marker ) {\n\t\tif ( this._activeMarker === identifier ) {\n\t\t\tthis.removeAllMarks();\n\t\t\tthis._activeMarker = false;\n\t\t} else {\n\t\t\tmarker();\n\t\t\tthis._activeMarker = identifier;\n\t\t}\n\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Disables the currently active marker in the UI.\n\t *\n\t * @returns {void}\n\t */\n\tdisableMarker() {\n\t\tthis._activeMarker = false;\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Disables the marker buttons.\n\t *\n\t * @returns {void}\n\t */\n\tdisableMarkerButtons() {\n\t\tthis._disableMarkerButtons = true;\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Enables the marker buttons.\n\t *\n\t * @returns {void}\n\t */\n\tenableMarkerButtons() {\n\t\tthis._disableMarkerButtons = false;\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Adds an event listener for the marker button\n\t *\n\t * @param {string} identifier The identifier for the assessment the marker belongs to.\n\t * @param {Function} marker The marker function that can mark the assessment in the text.\n\t * @returns {void}\n\t */\n\taddMarkerEventHandler( identifier, marker ) {\n\t\tconst container = document.getElementById( this.output );\n\t\tconst markButton = container.getElementsByClassName( \"js-assessment-results__mark-\" + identifier )[ 0 ];\n\n\t\tmarkButton.addEventListener( \"click\", this.markAssessment.bind( this, identifier, marker ) );\n\t}\n\n\t/**\n\t * Renders out both the individual and the overall ratings.\n\t *\n\t * @returns {void}\n\t */\n\trender() {\n\t\tthis.renderIndividualRatings();\n\t\tthis.renderOverallRating();\n\t}\n\n\t/**\n\t * Adds event handlers to the mark buttons.\n\t *\n\t * @param {Object} scores The list of rendered scores.\n\t *\n\t * @returns {void}\n\t */\n\tbindMarkButtons( scores ) {\n\t\t// Make sure the button works for every score with a marker.\n\t\tforEach( scores, function( score ) {\n\t\t\tif ( score.hasOwnProperty( \"marker\" ) ) {\n\t\t\t\tthis.addMarkerEventHandler( score.identifier, score.marker );\n\t\t\t}\n\t\t}.bind( this ) );\n\t}\n\n\t/**\n\t * Removes all marks currently on the text.\n\t *\n\t * @returns {void}\n\t */\n\tremoveAllMarks() {\n\t\tconst marker = this.assessor.getSpecificMarker();\n\n\t\tmarker( this.assessor.getPaper(), [] );\n\t}\n\n\t/**\n\t * Renders out the individual ratings.\n\t * Here, this method is set to noop. In `post-scraper.js` and `term-scraper.js` where this method is called, it is overridden with noop as well.\n\t *\n\t * @returns {void}\n\t */\n\trenderIndividualRatings() {}\n\n\t/**\n\t * Renders out the overall rating.\n\t *\n\t * @returns {void}\n\t */\n\trenderOverallRating() {\n\t\tconst overallRating = this.getOverallRating( this.assessor.calculateOverallScore() );\n\t\tconst overallRatingElement = document.getElementById( this.overall );\n\n\t\tif ( ! overallRatingElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\toverallRatingElement.className = \"overallScore \" + this.getIndicatorColorClass( overallRating.rating );\n\t}\n}\n\nexport default AssessorPresenter;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAqD,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErD;AACA;AACA;AACA,MAAMG,iBAAiB,CAAC;EACvB;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCC,WAAWA,CAAGC,IAAI,EAAG;IACpB,IAAI,CAACC,OAAO,GAAGD,IAAI,CAACC,OAAO;IAC3B,IAAI,CAACC,QAAQ,GAAGF,IAAI,CAACE,QAAQ;IAC7B,IAAI,CAACC,MAAM,GAAGH,IAAI,CAACI,OAAO,CAACD,MAAM;IACjC,IAAI,CAACE,OAAO,GAAGL,IAAI,CAACI,OAAO,CAACC,OAAO,IAAI,cAAc;IACrD,IAAI,CAACC,eAAe,GAAG,IAAAC,kBAAY,EAAC,CAAC;IAErC,IAAI,CAACC,qBAAqB,GAAG,KAAK;IAElC,IAAI,CAACC,aAAa,GAAG,KAAK;EAC3B;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCC,UAAUA,CAAET,OAAO,EAAG;IACrB,IAAI,CAACA,OAAO,GAAGA,OAAO;EACvB;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCU,iBAAiBA,CAAEC,QAAQ,EAAG;IAC7B,OAAO,IAAI,CAACN,eAAe,CAACO,cAAc,CAAED,QAAS,CAAC;EACvD;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCE,YAAYA,CAAEC,MAAM,EAAG;IACtB,OAAO;MACNC,SAAS,EAAE,IAAI,CAACC,sBAAsB,CAAEF,MAAO,CAAC;MAChDG,gBAAgB,EAAE,IAAI,CAACC,4BAA4B,CAAEJ,MAAO,CAAC;MAC7DK,QAAQ,EAAE,IAAI,CAACC,oBAAoB,CAAEN,MAAO,CAAC;MAC7CO,2BAA2B,EAAE,IAAI,CAACC,uCAAuC,CAAER,MAAO;IACnF,CAAC;EACF;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCE,sBAAsBA,CAAEF,MAAM,EAAG;IAChC,IAAK,CAAE,IAAI,CAACJ,iBAAiB,CAAEI,MAAO,CAAC,EAAG;MACzC,OAAO,EAAE;IACV;IAEA,OAAO,IAAI,CAACT,eAAe,CAAES,MAAM,CAAE,CAACC,SAAS;EAChD;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCG,4BAA4BA,CAAEJ,MAAM,EAAG;IACtC,IAAK,CAAE,IAAI,CAACJ,iBAAiB,CAAEI,MAAO,CAAC,EAAG;MACzC,OAAO,EAAE;IACV;IAEA,OAAO,IAAI,CAACT,eAAe,CAAES,MAAM,CAAE,CAACG,gBAAgB;EACvD;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCK,uCAAuCA,CAAER,MAAM,EAAG;IACjD,IAAK,CAAE,IAAI,CAACJ,iBAAiB,CAAEI,MAAO,CAAC,EAAG;MACzC,OAAO,EAAE;IACV;IAEA,OAAO,IAAI,CAACT,eAAe,CAAES,MAAM,CAAE,CAACO,2BAA2B;EAClE;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCD,oBAAoBA,CAAEN,MAAM,EAAG;IAC9B,IAAK,CAAE,IAAI,CAACJ,iBAAiB,CAAEI,MAAO,CAAC,EAAG;MACzC,OAAO,EAAE;IACV;IAEA,OAAO,IAAI,CAACT,eAAe,CAAES,MAAM,CAAE,CAACK,QAAQ;EAC/C;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCI,cAAcA,CAAEC,MAAM,EAAG;IACxB,IAAK,CAAE,IAAAC,gBAAQ,EAAED,MAAO,CAAC,EAAG;MAC3B,OAAO,EAAE;IACV;IAEAA,MAAM,CAACV,MAAM,GAAG,IAAAY,sBAAa,EAAEF,MAAM,CAACG,KAAM,CAAC;IAE7C,OAAOH,MAAM;EACd;;EAEA;AACD;AACA;AACA;AACA;EACCI,oBAAoBA,CAAA,EAAG;IACtB,MAAMC,OAAO,GAAG,CAAC,CAAC;IAClB,MAAMC,YAAY,GAAG,IAAI,CAACC,IAAI,CAAE,IAAI,CAAC9B,QAAQ,CAAC+B,eAAe,CAAC,CAAE,CAAC;IACjE,MAAMC,aAAa,GAAGH,YAAY,CAACI,GAAG,CAAE,IAAI,CAACX,cAAe,CAAC;IAE7D,IAAAY,eAAO,EAAEF,aAAa,EAAE,UAAUG,IAAI,EAAEC,GAAG,EAAG;MAC7CR,OAAO,CAAEQ,GAAG,CAAE,GAAG,IAAI,CAACC,SAAS,CAAEF,IAAK,CAAC;IACxC,CAAC,CAACG,IAAI,CAAE,IAAK,CAAE,CAAC;IAEhB,OAAOV,OAAO;EACf;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCW,kBAAkBA,CAAEC,OAAO,EAAEC,OAAO,EAAG;IACtC,OAAO,IAAAC,kBAAU,EAAEF,OAAO,EAAEC,OAAQ,CAAC;EACtC;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCX,IAAIA,CAAEU,OAAO,EAAG;IACf,MAAMG,YAAY,GAAG,IAAI,CAACC,kBAAkB,CAAEJ,OAAQ,CAAC;IACvD,MAAMK,SAAS,GAAG,IAAI,CAACN,kBAAkB,CAAEC,OAAO,EAAEG,YAAa,CAAC;IAElEE,SAAS,CAACf,IAAI,CAAE,UAAUgB,CAAC,EAAEC,CAAC,EAAG;MAChC,OAAOD,CAAC,CAACpB,KAAK,GAAGqB,CAAC,CAACrB,KAAK;IACzB,CAAE,CAAC;IAEH,OAAOiB,YAAY,CAACK,MAAM,CAAEH,SAAU,CAAC;EACxC;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCD,kBAAkBA,CAAEJ,OAAO,EAAG;IAC7B,OAAOA,OAAO,CAACS,MAAM,CAAE,UAAU1B,MAAM,EAAG;MACzC,OAAO,IAAA2B,mBAAW,EAAE3B,MAAM,CAACG,KAAM,CAAC,IAAIH,MAAM,CAACG,KAAK,KAAK,CAAC;IACzD,CAAE,CAAC;EACJ;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCW,SAASA,CAAEF,IAAI,EAAG;IACjB,MAAMgB,SAAS,GAAG,IAAI,CAACvC,YAAY,CAAEuB,IAAI,CAACtB,MAAO,CAAC;IAClDsC,SAAS,CAACC,IAAI,GAAGjB,IAAI,CAACiB,IAAI;IAC1BD,SAAS,CAACE,UAAU,GAAGlB,IAAI,CAACmB,aAAa,CAAC,CAAC;IAE3C,IAAKnB,IAAI,CAACoB,SAAS,CAAC,CAAC,EAAG;MACvBJ,SAAS,CAACK,MAAM,GAAGrB,IAAI,CAACsB,SAAS,CAAC,CAAC;IACpC;IAEA,OAAON,SAAS;EACjB;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCO,gBAAgBA,CAAEC,YAAY,EAAG;IAChC,IAAI9C,MAAM,GAAG,CAAC;IAEd,IAAK,IAAI,CAACd,OAAO,KAAK,EAAE,EAAG;MAC1B,OAAO,IAAI,CAACuB,cAAc,CAAE;QAAEI,KAAK,EAAEb;MAAO,CAAE,CAAC;IAChD;IAEA,IAAK,IAAA+C,gBAAQ,EAAED,YAAa,CAAC,EAAG;MAC/B9C,MAAM,GAAK8C,YAAY,GAAG,EAAI;IAC/B;IAEA,OAAO,IAAI,CAACrC,cAAc,CAAE;MAAEI,KAAK,EAAEb;IAAO,CAAE,CAAC;EAChD;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCgD,cAAcA,CAAER,UAAU,EAAEG,MAAM,EAAG;IACpC,IAAK,IAAI,CAACjD,aAAa,KAAK8C,UAAU,EAAG;MACxC,IAAI,CAACS,cAAc,CAAC,CAAC;MACrB,IAAI,CAACvD,aAAa,GAAG,KAAK;IAC3B,CAAC,MAAM;MACNiD,MAAM,CAAC,CAAC;MACR,IAAI,CAACjD,aAAa,GAAG8C,UAAU;IAChC;IAEA,IAAI,CAACU,MAAM,CAAC,CAAC;EACd;;EAEA;AACD;AACA;AACA;AACA;EACCC,aAAaA,CAAA,EAAG;IACf,IAAI,CAACzD,aAAa,GAAG,KAAK;IAC1B,IAAI,CAACwD,MAAM,CAAC,CAAC;EACd;;EAEA;AACD;AACA;AACA;AACA;EACCE,oBAAoBA,CAAA,EAAG;IACtB,IAAI,CAAC3D,qBAAqB,GAAG,IAAI;IACjC,IAAI,CAACyD,MAAM,CAAC,CAAC;EACd;;EAEA;AACD;AACA;AACA;AACA;EACCG,mBAAmBA,CAAA,EAAG;IACrB,IAAI,CAAC5D,qBAAqB,GAAG,KAAK;IAClC,IAAI,CAACyD,MAAM,CAAC,CAAC;EACd;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCI,qBAAqBA,CAAEd,UAAU,EAAEG,MAAM,EAAG;IAC3C,MAAMY,SAAS,GAAGC,QAAQ,CAACC,cAAc,CAAE,IAAI,CAACrE,MAAO,CAAC;IACxD,MAAMsE,UAAU,GAAGH,SAAS,CAACI,sBAAsB,CAAE,8BAA8B,GAAGnB,UAAW,CAAC,CAAE,CAAC,CAAE;IAEvGkB,UAAU,CAACE,gBAAgB,CAAE,OAAO,EAAE,IAAI,CAACZ,cAAc,CAACvB,IAAI,CAAE,IAAI,EAAEe,UAAU,EAAEG,MAAO,CAAE,CAAC;EAC7F;;EAEA;AACD;AACA;AACA;AACA;EACCO,MAAMA,CAAA,EAAG;IACR,IAAI,CAACW,uBAAuB,CAAC,CAAC;IAC9B,IAAI,CAACC,mBAAmB,CAAC,CAAC;EAC3B;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCC,eAAeA,CAAEC,MAAM,EAAG;IACzB;IACA,IAAA3C,eAAO,EAAE2C,MAAM,EAAE,UAAUnD,KAAK,EAAG;MAClC,IAAKA,KAAK,CAACf,cAAc,CAAE,QAAS,CAAC,EAAG;QACvC,IAAI,CAACwD,qBAAqB,CAAEzC,KAAK,CAAC2B,UAAU,EAAE3B,KAAK,CAAC8B,MAAO,CAAC;MAC7D;IACD,CAAC,CAAClB,IAAI,CAAE,IAAK,CAAE,CAAC;EACjB;;EAEA;AACD;AACA;AACA;AACA;EACCwB,cAAcA,CAAA,EAAG;IAChB,MAAMN,MAAM,GAAG,IAAI,CAACxD,QAAQ,CAAC8E,iBAAiB,CAAC,CAAC;IAEhDtB,MAAM,CAAE,IAAI,CAACxD,QAAQ,CAAC+E,QAAQ,CAAC,CAAC,EAAE,EAAG,CAAC;EACvC;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCL,uBAAuBA,CAAA,EAAG,CAAC;;EAE3B;AACD;AACA;AACA;AACA;EACCC,mBAAmBA,CAAA,EAAG;IACrB,MAAMK,aAAa,GAAG,IAAI,CAACtB,gBAAgB,CAAE,IAAI,CAAC1D,QAAQ,CAACiF,qBAAqB,CAAC,CAAE,CAAC;IACpF,MAAMC,oBAAoB,GAAGb,QAAQ,CAACC,cAAc,CAAE,IAAI,CAACnE,OAAQ,CAAC;IAEpE,IAAK,CAAE+E,oBAAoB,EAAG;MAC7B;IACD;IAEAA,oBAAoB,CAACpE,SAAS,GAAG,eAAe,GAAG,IAAI,CAACC,sBAAsB,CAAEiE,aAAa,CAACnE,MAAO,CAAC;EACvG;AACD;AAAC,IAAAsE,QAAA,GAAAC,OAAA,CAAAzF,OAAA,GAEcC,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"AssessorPresenter.js","names":["difference","forEach","isNumber","isObject","isUndefined","scoreToRating","createConfig","AssessorPresenter","constructor","args","keyword","assessor","output","targets","overall","presenterConfig","_disableMarkerButtons","_activeMarker","setKeyword","configHasProperty","property","hasOwnProperty","getIndicator","rating","className","getIndicatorColorClass","screenReaderText","getIndicatorScreenReaderText","fullText","getIndicatorFullText","screenReaderReadabilityText","getIndicatorScreenReaderReadabilityText","resultToRating","result","score","getIndividualRatings","ratings","validResults","sort","getValidResults","mappedResults","map","item","key","addRating","bind","excludeFromResults","results","exclude","nonSortables","getUndefinedScores","sortables","a","b","concat","filter","indicator","text","identifier","getIdentifier","hasMarker","marker","getMarker","getOverallRating","overallScore","markAssessment","removeAllMarks","render","disableMarker","disableMarkerButtons","enableMarkerButtons","addMarkerEventHandler","container","document","getElementById","markButton","getElementsByClassName","addEventListener","renderIndividualRatings","renderOverallRating","bindMarkButtons","scores","getSpecificMarker","getPaper","overallRating","calculateOverallScore","overallRatingElement"],"sources":["../../../src/scoring/renderers/AssessorPresenter.js"],"sourcesContent":["import { difference, forEach, isNumber, isObject, isUndefined } from \"lodash\";\nimport scoreToRating from \"../interpreters/scoreToRating.js\";\nimport createConfig from \"../../config/presenter.js\";\n\n/**\n * Represents the AssessorPresenter.\n */\nclass AssessorPresenter {\n\t/**\n\t * Constructs the AssessorPresenter.\n\t *\n\t * @param {Object} args A list of arguments to use in the presenter.\n\t * @param {object} args.targets The HTML elements to render the output to.\n\t * @param {string} args.targets.output The HTML element to render the individual ratings out to.\n\t * @param {string} args.targets.overall The HTML element to render the overall rating out to.\n\t * @param {string} args.keyword The keyword to use for checking, when calculating the overall rating.\n\t * @param {SEOAssessor} args.assessor The Assessor object to retrieve assessment results from.\n\t *\n\t * @constructor\n\t */\n\tconstructor( args ) {\n\t\tthis.keyword = args.keyword;\n\t\tthis.assessor = args.assessor;\n\t\tthis.output = args.targets.output;\n\t\tthis.overall = args.targets.overall || \"overallScore\";\n\t\tthis.presenterConfig = createConfig();\n\n\t\tthis._disableMarkerButtons = false;\n\n\t\tthis._activeMarker = false;\n\t}\n\n\t/**\n\t * Sets the keyword.\n\t *\n\t * @param {string} keyword The keyword to use.\n\t * @returns {void}\n\t */\n\tsetKeyword( keyword ) {\n\t\tthis.keyword = keyword;\n\t}\n\n\t/**\n\t * Checks whether a specific property exists in the presenter configuration.\n\t *\n\t * @param {string} property The property name to search for.\n\t * @returns {boolean} Whether or not the property exists.\n\t */\n\tconfigHasProperty( property ) {\n\t\treturn this.presenterConfig.hasOwnProperty( property );\n\t}\n\n\t/**\n\t * Gets a fully formatted indicator object that can be used.\n\t *\n\t * @param {string} rating The rating to use.\n\t * @returns {Object} An object containing the class, the screen reader text, and the full text.\n\t */\n\tgetIndicator( rating ) {\n\t\treturn {\n\t\t\tclassName: this.getIndicatorColorClass( rating ),\n\t\t\tscreenReaderText: this.getIndicatorScreenReaderText( rating ),\n\t\t\tfullText: this.getIndicatorFullText( rating ),\n\t\t\tscreenReaderReadabilityText: this.getIndicatorScreenReaderReadabilityText( rating ),\n\t\t};\n\t}\n\n\t/**\n\t * Gets the indicator color class from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} String containing the CSS class to be used.\n\t */\n\tgetIndicatorColorClass( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].className;\n\t}\n\n\t/**\n\t * Gets the indicator screen reader text from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} Translated string containing the screen reader text to be used.\n\t */\n\tgetIndicatorScreenReaderText( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].screenReaderText;\n\t}\n\n\t/**\n\t * Gets the indicator screen reader readability text from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} Translated string containing the screen reader readability text to be used.\n\t */\n\tgetIndicatorScreenReaderReadabilityText( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].screenReaderReadabilityText;\n\t}\n\n\t/**\n\t * Gets the indicator full text from the presenter configuration, if it exists.\n\t *\n\t * @param {string} rating The rating to check against the config.\n\t * @returns {string} Translated string containing the full text to be used.\n\t */\n\tgetIndicatorFullText( rating ) {\n\t\tif ( ! this.configHasProperty( rating ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.presenterConfig[ rating ].fullText;\n\t}\n\n\t/**\n\t * Adds a rating based on the numeric score.\n\t *\n\t * @param {Object} result Object based on the Assessment result. Requires a score property to work.\n\t * @returns {Object} The Assessment result object with the rating added.\n\t */\n\tresultToRating( result ) {\n\t\tif ( ! isObject( result ) ) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tresult.rating = scoreToRating( result.score );\n\n\t\treturn result;\n\t}\n\n\t/**\n\t * Takes the individual assessment results, sorts and rates them.\n\t *\n\t * @returns {Object} Object containing all the individual ratings.\n\t */\n\tgetIndividualRatings() {\n\t\tconst ratings = {};\n\t\tconst validResults = this.sort( this.assessor.getValidResults() );\n\t\tconst mappedResults = validResults.map( this.resultToRating );\n\n\t\tforEach( mappedResults, function( item, key ) {\n\t\t\tratings[ key ] = this.addRating( item );\n\t\t}.bind( this ) );\n\n\t\treturn ratings;\n\t}\n\n\t/**\n\t * Excludes items from the results that are present in the `exclude` array.\n\t *\n\t * @param {Array} results Array containing the items to filter through.\n\t * @param {Array} exclude Array of results to exclude.\n\t * @returns {Array} Array containing items that remain after exclusion.\n\t */\n\texcludeFromResults( results, exclude ) {\n\t\treturn difference( results, exclude );\n\t}\n\n\t/**\n\t * Sorts results based on their score property and always places items considered to be non-sortable, at the top.\n\t *\n\t * @param {Array} results Array containing the results that need to be sorted.\n\t * @returns {Array} Array containing the sorted results.\n\t */\n\tsort( results ) {\n\t\tconst nonSortables = this.getUndefinedScores( results );\n\t\tconst sortables = this.excludeFromResults( results, nonSortables );\n\n\t\tsortables.sort( function( a, b ) {\n\t\t\treturn a.score - b.score;\n\t\t} );\n\n\t\treturn nonSortables.concat( sortables );\n\t}\n\n\t/**\n\t * Returns a subset of results that have an undefined score or a score set to zero.\n\t *\n\t * @param {Array} results The results to filter through.\n\t * @returns {Array} A subset of results containing items with an undefined score or where the score is zero.\n\t */\n\tgetUndefinedScores( results ) {\n\t\treturn results.filter( function( result ) {\n\t\t\treturn isUndefined( result.score ) || result.score === 0;\n\t\t} );\n\t}\n\n\t/**\n\t * Creates a rating object based on the item that is being passed.\n\t *\n\t * @param {Object} item The item to check and create a rating object from.\n\t * @returns {Object} Object containing a parsed item, including a colored indicator.\n\t */\n\taddRating( item ) {\n\t\tconst indicator = this.getIndicator( item.rating );\n\t\tindicator.text = item.text;\n\t\tindicator.identifier = item.getIdentifier();\n\n\t\tif ( item.hasMarker() ) {\n\t\t\tindicator.marker = item.getMarker();\n\t\t}\n\n\t\treturn indicator;\n\t}\n\n\t/**\n\t * Calculates the overall rating score based on the overall score.\n\t *\n\t * @param {Number} overallScore The overall score to use in the calculation.\n\t * @returns {Object} The rating based on the score.\n\t */\n\tgetOverallRating( overallScore ) {\n\t\tlet rating = 0;\n\n\t\tif ( this.keyword === \"\" ) {\n\t\t\treturn this.resultToRating( { score: rating } );\n\t\t}\n\n\t\tif ( isNumber( overallScore ) ) {\n\t\t\trating = ( overallScore / 10 );\n\t\t}\n\n\t\treturn this.resultToRating( { score: rating } );\n\t}\n\n\t/**\n\t * Marks with a given marker. This will set the active marker to the correct value.\n\t *\n\t * @param {string} identifier The identifier for the assessment/marker.\n\t * @param {Function} marker The marker function.\n\t * @returns {void}\n\t */\n\tmarkAssessment( identifier, marker ) {\n\t\tif ( this._activeMarker === identifier ) {\n\t\t\tthis.removeAllMarks();\n\t\t\tthis._activeMarker = false;\n\t\t} else {\n\t\t\tmarker();\n\t\t\tthis._activeMarker = identifier;\n\t\t}\n\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Disables the currently active marker in the UI.\n\t *\n\t * @returns {void}\n\t */\n\tdisableMarker() {\n\t\tthis._activeMarker = false;\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Disables the marker buttons.\n\t *\n\t * @returns {void}\n\t */\n\tdisableMarkerButtons() {\n\t\tthis._disableMarkerButtons = true;\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Enables the marker buttons.\n\t *\n\t * @returns {void}\n\t */\n\tenableMarkerButtons() {\n\t\tthis._disableMarkerButtons = false;\n\t\tthis.render();\n\t}\n\n\t/**\n\t * Adds an event listener for the marker button\n\t *\n\t * @param {string} identifier The identifier for the assessment the marker belongs to.\n\t * @param {Function} marker The marker function that can mark the assessment in the text.\n\t * @returns {void}\n\t */\n\taddMarkerEventHandler( identifier, marker ) {\n\t\tconst container = document.getElementById( this.output );\n\t\tconst markButton = container.getElementsByClassName( \"js-assessment-results__mark-\" + identifier )[ 0 ];\n\n\t\tmarkButton.addEventListener( \"click\", this.markAssessment.bind( this, identifier, marker ) );\n\t}\n\n\t/**\n\t * Renders out both the individual and the overall ratings.\n\t *\n\t * @returns {void}\n\t */\n\trender() {\n\t\tthis.renderIndividualRatings();\n\t\tthis.renderOverallRating();\n\t}\n\n\t/**\n\t * Adds event handlers to the mark buttons.\n\t *\n\t * @param {Object} scores The list of rendered scores.\n\t *\n\t * @returns {void}\n\t */\n\tbindMarkButtons( scores ) {\n\t\t// Make sure the button works for every score with a marker.\n\t\tforEach( scores, function( score ) {\n\t\t\tif ( score.hasOwnProperty( \"marker\" ) ) {\n\t\t\t\tthis.addMarkerEventHandler( score.identifier, score.marker );\n\t\t\t}\n\t\t}.bind( this ) );\n\t}\n\n\t/**\n\t * Removes all marks currently on the text.\n\t *\n\t * @returns {void}\n\t */\n\tremoveAllMarks() {\n\t\tconst marker = this.assessor.getSpecificMarker();\n\n\t\tmarker( this.assessor.getPaper(), [] );\n\t}\n\n\t/**\n\t * Renders out the individual ratings.\n\t * Here, this method is set to noop. In `post-scraper.js` and `term-scraper.js` where this method is called, it is overridden with noop as well.\n\t *\n\t * @returns {void}\n\t */\n\trenderIndividualRatings() {}\n\n\t/**\n\t * Renders out the overall rating.\n\t *\n\t * @returns {void}\n\t */\n\trenderOverallRating() {\n\t\tconst overallRating = this.getOverallRating( this.assessor.calculateOverallScore() );\n\t\tconst overallRatingElement = document.getElementById( this.overall );\n\n\t\tif ( ! overallRatingElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\toverallRatingElement.className = \"overallScore \" + this.getIndicatorColorClass( overallRating.rating );\n\t}\n}\n\nexport default AssessorPresenter;\n"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,8 @@
1
- "use strict";
1
+ import getLanguage from "../../languageProcessing/helpers/language/getLanguage";
2
+ import { scoreToRating } from "../interpreters";
2
3
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.READABILITY_SCORES = void 0;
7
- var _getLanguage = _interopRequireDefault(require("../../languageProcessing/helpers/language/getLanguage"));
8
- var _interpreters = require("../interpreters");
9
- var _ScoreAggregator = _interopRequireDefault(require("./ScoreAggregator"));
10
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
4
  /* Internal dependencies */
5
+ import ScoreAggregator from "./ScoreAggregator";
12
6
 
13
7
  /**
14
8
  * Penalties that can be given on each assessment
@@ -50,7 +44,7 @@ const PENALTY_MAPPING_PARTIAL_SUPPORT = {
50
44
  *
51
45
  * @memberOf module:parsedPaper/assess
52
46
  */
53
- const READABILITY_SCORES = exports.READABILITY_SCORES = {
47
+ export const READABILITY_SCORES = {
54
48
  GOOD: 90,
55
49
  OKAY: 60,
56
50
  NEEDS_IMPROVEMENT: 30,
@@ -70,7 +64,7 @@ const FULLY_SUPPORTED_LANGUAGES = ["en", "nl", "de", "it", "ru", "fr", "es"];
70
64
  *
71
65
  * @memberOf module:parsedPaper/assess
72
66
  */
73
- class ReadabilityScoreAggregator extends _ScoreAggregator.default {
67
+ class ReadabilityScoreAggregator extends ScoreAggregator {
74
68
  /**
75
69
  * Determines whether a language is fully supported.
76
70
  *
@@ -81,7 +75,7 @@ class ReadabilityScoreAggregator extends _ScoreAggregator.default {
81
75
  isFullySupported(locale) {
82
76
  // Sanity check if this is actually a locale string.
83
77
  if (locale && locale.includes("_")) {
84
- const language = (0, _getLanguage.default)(locale);
78
+ const language = getLanguage(locale);
85
79
  return FULLY_SUPPORTED_LANGUAGES.includes(language);
86
80
  }
87
81
  // Default to not fully supported.
@@ -145,7 +139,7 @@ class ReadabilityScoreAggregator extends _ScoreAggregator.default {
145
139
  calculatePenalty(results) {
146
140
  return results.reduce((sum, result) => {
147
141
  // Compute the rating ("error", "feedback", "bad", "ok" or "good").
148
- const rating = (0, _interpreters.scoreToRating)(result.getScore());
142
+ const rating = scoreToRating(result.getScore());
149
143
  const penalty = this.isFullySupported(this.locale) ? PENALTY_MAPPING_FULL_SUPPORT[rating] : PENALTY_MAPPING_PARTIAL_SUPPORT[rating];
150
144
 
151
145
  // Add penalty when available.
@@ -199,5 +193,5 @@ class ReadabilityScoreAggregator extends _ScoreAggregator.default {
199
193
  return this.calculateScore(isFullySupported, penalty);
200
194
  }
201
195
  }
202
- var _default = exports.default = ReadabilityScoreAggregator;
196
+ export default ReadabilityScoreAggregator;
203
197
  //# sourceMappingURL=ReadabilityScoreAggregator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReadabilityScoreAggregator.js","names":["_getLanguage","_interopRequireDefault","require","_interpreters","_ScoreAggregator","e","__esModule","default","PENALTY_MAPPING_FULL_SUPPORT","bad","ok","good","PENALTY_MAPPING_PARTIAL_SUPPORT","READABILITY_SCORES","exports","GOOD","OKAY","NEEDS_IMPROVEMENT","NOT_AVAILABLE","FULLY_SUPPORTED_LANGUAGES","ReadabilityScoreAggregator","ScoreAggregator","isFullySupported","locale","includes","language","getLanguage","calculateScore","penalty","calculatePenalty","results","reduce","sum","result","rating","scoreToRating","getScore","getValidResults","filter","hasScore","hasText","setLocale","aggregate","validResults","length","_default"],"sources":["../../../src/scoring/scoreAggregators/ReadabilityScoreAggregator.js"],"sourcesContent":["import getLanguage from \"../../languageProcessing/helpers/language/getLanguage\";\nimport { scoreToRating } from \"../interpreters\";\n\n/* Internal dependencies */\nimport ScoreAggregator from \"./ScoreAggregator\";\n\n/**\n * Penalties that can be given on each assessment\n * when all assessments are currently supported\n * for the user's language.\n *\n * @type {{ok: number, bad: number, good: number}}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst PENALTY_MAPPING_FULL_SUPPORT = {\n\tbad: 3,\n\tok: 2,\n\tgood: 0,\n};\n\n/**\n * Penalties that can be given on each assessment\n * when only a part of the assessments are currently supported\n * for the user's language.\n *\n * @type {{ok: number, bad: number, good: number}}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst PENALTY_MAPPING_PARTIAL_SUPPORT = {\n\tbad: 4,\n\tok: 2,\n\tgood: 0,\n};\n\n/**\n * The scores that can be given on the readability analysis.\n *\n * @type {{GOOD: number, OKAY: number, NEEDS_IMPROVEMENT: number, NOT_AVAILABLE: number}}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nexport const READABILITY_SCORES = {\n\tGOOD: 90,\n\tOKAY: 60,\n\tNEEDS_IMPROVEMENT: 30,\n\tNOT_AVAILABLE: 0,\n};\n\n/**\n * A list of all the languages that have full support in the readability analysis.\n *\n * @type {string[]}\n * @const\n */\nconst FULLY_SUPPORTED_LANGUAGES = [ \"en\", \"nl\", \"de\", \"it\", \"ru\", \"fr\", \"es\" ];\n\n/**\n * Aggregates the results of the readability analysis into a single score.\n *\n * @memberOf module:parsedPaper/assess\n */\nclass ReadabilityScoreAggregator extends ScoreAggregator {\n\t/**\n\t * Determines whether a language is fully supported.\n\t *\n\t * @param {string} locale The locale for which the content is written, e.g. `sv-SE` for Sweden.\n\t *\n\t * @returns {boolean} `true` if fully supported.\n\t */\n\tisFullySupported( locale ) {\n\t\t// Sanity check if this is actually a locale string.\n\t\tif ( locale && locale.includes( \"_\" ) ) {\n\t\t\tconst language = getLanguage( locale );\n\t\t\treturn FULLY_SUPPORTED_LANGUAGES.includes( language );\n\t\t}\n\t\t// Default to not fully supported.\n\t\treturn false;\n\t}\n\n\t/**\n\t * Calculates the overall score (GOOD, OKAY or NEEDS IMPROVEMENT)\n\t * based on the penalty.\n\t *\n\t * @param {boolean} isFullySupported Whether this language is fully supported.\n\t * @param {number} penalty The total penalty.\n\t *\n\t * @returns {number} The overall score.\n\t */\n\tcalculateScore( isFullySupported, penalty ) {\n\t\tif ( isFullySupported ) {\n\t\t\t/*\n\t\t\t * If the language is fully supported, we are more lenient.\n\t\t\t * A higher penalty is needed to get lower scores.\n\t\t\t */\n\t\t\tif ( penalty > 6 ) {\n\t\t\t\treturn READABILITY_SCORES.NEEDS_IMPROVEMENT;\n\t\t\t}\n\n\t\t\tif ( penalty > 4 ) {\n\t\t\t\t/*\n\t\t\t\t * A penalty between 4 and 6 means either:\n\t\t\t\t * - One \"ok\" and one \"bad\" result (5).\n\t\t\t\t * - Two \"bad\" results of 3 points each (6).\n\t\t\t\t * - Three \"ok\" results of 2 points each (6).\n\t\t\t\t */\n\t\t\t\treturn READABILITY_SCORES.OKAY;\n\t\t\t}\n\t\t} else {\n\t\t\t/*\n\t\t\t * If the language is NOT fully supported, we are more stringent.\n\t\t\t * The penalty threshold for getting lower scores is set lower.\n\t\t\t */\n\t\t\tif ( penalty > 4 ) {\n\t\t\t\treturn READABILITY_SCORES.NEEDS_IMPROVEMENT;\n\t\t\t}\n\n\t\t\tif ( penalty > 2 ) {\n\t\t\t\t/*\n\t\t\t\t * A penalty of 3 or 4 means:\n\t\t\t\t * - Two \"ok\" results of 2 points each (4).\n\t\t\t\t * - One \"bad\" result of 4 points (4).\n\t\t\t\t */\n\t\t\t\treturn READABILITY_SCORES.OKAY;\n\t\t\t}\n\t\t}\n\t\treturn READABILITY_SCORES.GOOD;\n\t}\n\n\t/**\n\t * Calculates the total penalty based on the given assessment results.\n\t *\n\t * @param {AssessmentResult[]} results The valid results from which to calculate the total penalty.\n\t *\n\t * @returns {number} The total penalty for the results.\n\t */\n\tcalculatePenalty( results ) {\n\t\treturn results.reduce( ( sum, result ) => {\n\t\t\t// Compute the rating (\"error\", \"feedback\", \"bad\", \"ok\" or \"good\").\n\t\t\tconst rating = scoreToRating( result.getScore() );\n\n\t\t\tconst penalty = this.isFullySupported( this.locale )\n\t\t\t\t? PENALTY_MAPPING_FULL_SUPPORT[ rating ]\n\t\t\t\t: PENALTY_MAPPING_PARTIAL_SUPPORT[ rating ];\n\n\t\t\t// Add penalty when available.\n\t\t\treturn penalty ? sum + penalty : sum;\n\t\t}, 0 );\n\t}\n\n\t/**\n\t * Returns the list of valid results.\n\t * Valid results are all results that have a score and a text.\n\t *\n\t * @param {AssessmentResult[]} results The results to filter the valid results from.\n\t *\n\t * @returns {AssessmentResult[]} The list of valid results.\n\t */\n\tgetValidResults( results ) {\n\t\treturn results.filter( result => result.hasScore() && result.hasText() );\n\t}\n\n\t/**\n\t * Sets the locale of the content. We are more lenient on languages\n\t * that are fully supported in the analysis.\n\t *\n\t * @param {string} locale The locale of the content.\n\t *\n\t * @returns {void}\n\t */\n\tsetLocale( locale ) {\n\t\tthis.locale = locale;\n\t}\n\n\t/**\n\t * Aggregates the given assessment results into a single analysis score.\n\t *\n\t * @param {AssessmentResult[]} results The assessment results.\n\t *\n\t * @returns {number} The aggregated score.\n\t */\n\taggregate( results ) {\n\t\tconst validResults = this.getValidResults( results );\n\n\t\t/*\n\t\t * If you have no content, you have a gray indicator.\n\t\t * (Assume that one result always means the 'no content' assessment result).\n\t\t */\n\t\tif ( validResults.length <= 1 ) {\n\t\t\treturn READABILITY_SCORES.NOT_AVAILABLE;\n\t\t}\n\n\t\tconst penalty = this.calculatePenalty( validResults );\n\t\tconst isFullySupported = this.isFullySupported( this.locale );\n\t\treturn this.calculateScore( isFullySupported, penalty );\n\t}\n}\n\nexport default ReadabilityScoreAggregator;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ReadabilityScoreAggregator.js","names":["getLanguage","scoreToRating","ScoreAggregator","PENALTY_MAPPING_FULL_SUPPORT","bad","ok","good","PENALTY_MAPPING_PARTIAL_SUPPORT","READABILITY_SCORES","GOOD","OKAY","NEEDS_IMPROVEMENT","NOT_AVAILABLE","FULLY_SUPPORTED_LANGUAGES","ReadabilityScoreAggregator","isFullySupported","locale","includes","language","calculateScore","penalty","calculatePenalty","results","reduce","sum","result","rating","getScore","getValidResults","filter","hasScore","hasText","setLocale","aggregate","validResults","length"],"sources":["../../../src/scoring/scoreAggregators/ReadabilityScoreAggregator.js"],"sourcesContent":["import getLanguage from \"../../languageProcessing/helpers/language/getLanguage\";\nimport { scoreToRating } from \"../interpreters\";\n\n/* Internal dependencies */\nimport ScoreAggregator from \"./ScoreAggregator\";\n\n/**\n * Penalties that can be given on each assessment\n * when all assessments are currently supported\n * for the user's language.\n *\n * @type {{ok: number, bad: number, good: number}}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst PENALTY_MAPPING_FULL_SUPPORT = {\n\tbad: 3,\n\tok: 2,\n\tgood: 0,\n};\n\n/**\n * Penalties that can be given on each assessment\n * when only a part of the assessments are currently supported\n * for the user's language.\n *\n * @type {{ok: number, bad: number, good: number}}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst PENALTY_MAPPING_PARTIAL_SUPPORT = {\n\tbad: 4,\n\tok: 2,\n\tgood: 0,\n};\n\n/**\n * The scores that can be given on the readability analysis.\n *\n * @type {{GOOD: number, OKAY: number, NEEDS_IMPROVEMENT: number, NOT_AVAILABLE: number}}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nexport const READABILITY_SCORES = {\n\tGOOD: 90,\n\tOKAY: 60,\n\tNEEDS_IMPROVEMENT: 30,\n\tNOT_AVAILABLE: 0,\n};\n\n/**\n * A list of all the languages that have full support in the readability analysis.\n *\n * @type {string[]}\n * @const\n */\nconst FULLY_SUPPORTED_LANGUAGES = [ \"en\", \"nl\", \"de\", \"it\", \"ru\", \"fr\", \"es\" ];\n\n/**\n * Aggregates the results of the readability analysis into a single score.\n *\n * @memberOf module:parsedPaper/assess\n */\nclass ReadabilityScoreAggregator extends ScoreAggregator {\n\t/**\n\t * Determines whether a language is fully supported.\n\t *\n\t * @param {string} locale The locale for which the content is written, e.g. `sv-SE` for Sweden.\n\t *\n\t * @returns {boolean} `true` if fully supported.\n\t */\n\tisFullySupported( locale ) {\n\t\t// Sanity check if this is actually a locale string.\n\t\tif ( locale && locale.includes( \"_\" ) ) {\n\t\t\tconst language = getLanguage( locale );\n\t\t\treturn FULLY_SUPPORTED_LANGUAGES.includes( language );\n\t\t}\n\t\t// Default to not fully supported.\n\t\treturn false;\n\t}\n\n\t/**\n\t * Calculates the overall score (GOOD, OKAY or NEEDS IMPROVEMENT)\n\t * based on the penalty.\n\t *\n\t * @param {boolean} isFullySupported Whether this language is fully supported.\n\t * @param {number} penalty The total penalty.\n\t *\n\t * @returns {number} The overall score.\n\t */\n\tcalculateScore( isFullySupported, penalty ) {\n\t\tif ( isFullySupported ) {\n\t\t\t/*\n\t\t\t * If the language is fully supported, we are more lenient.\n\t\t\t * A higher penalty is needed to get lower scores.\n\t\t\t */\n\t\t\tif ( penalty > 6 ) {\n\t\t\t\treturn READABILITY_SCORES.NEEDS_IMPROVEMENT;\n\t\t\t}\n\n\t\t\tif ( penalty > 4 ) {\n\t\t\t\t/*\n\t\t\t\t * A penalty between 4 and 6 means either:\n\t\t\t\t * - One \"ok\" and one \"bad\" result (5).\n\t\t\t\t * - Two \"bad\" results of 3 points each (6).\n\t\t\t\t * - Three \"ok\" results of 2 points each (6).\n\t\t\t\t */\n\t\t\t\treturn READABILITY_SCORES.OKAY;\n\t\t\t}\n\t\t} else {\n\t\t\t/*\n\t\t\t * If the language is NOT fully supported, we are more stringent.\n\t\t\t * The penalty threshold for getting lower scores is set lower.\n\t\t\t */\n\t\t\tif ( penalty > 4 ) {\n\t\t\t\treturn READABILITY_SCORES.NEEDS_IMPROVEMENT;\n\t\t\t}\n\n\t\t\tif ( penalty > 2 ) {\n\t\t\t\t/*\n\t\t\t\t * A penalty of 3 or 4 means:\n\t\t\t\t * - Two \"ok\" results of 2 points each (4).\n\t\t\t\t * - One \"bad\" result of 4 points (4).\n\t\t\t\t */\n\t\t\t\treturn READABILITY_SCORES.OKAY;\n\t\t\t}\n\t\t}\n\t\treturn READABILITY_SCORES.GOOD;\n\t}\n\n\t/**\n\t * Calculates the total penalty based on the given assessment results.\n\t *\n\t * @param {AssessmentResult[]} results The valid results from which to calculate the total penalty.\n\t *\n\t * @returns {number} The total penalty for the results.\n\t */\n\tcalculatePenalty( results ) {\n\t\treturn results.reduce( ( sum, result ) => {\n\t\t\t// Compute the rating (\"error\", \"feedback\", \"bad\", \"ok\" or \"good\").\n\t\t\tconst rating = scoreToRating( result.getScore() );\n\n\t\t\tconst penalty = this.isFullySupported( this.locale )\n\t\t\t\t? PENALTY_MAPPING_FULL_SUPPORT[ rating ]\n\t\t\t\t: PENALTY_MAPPING_PARTIAL_SUPPORT[ rating ];\n\n\t\t\t// Add penalty when available.\n\t\t\treturn penalty ? sum + penalty : sum;\n\t\t}, 0 );\n\t}\n\n\t/**\n\t * Returns the list of valid results.\n\t * Valid results are all results that have a score and a text.\n\t *\n\t * @param {AssessmentResult[]} results The results to filter the valid results from.\n\t *\n\t * @returns {AssessmentResult[]} The list of valid results.\n\t */\n\tgetValidResults( results ) {\n\t\treturn results.filter( result => result.hasScore() && result.hasText() );\n\t}\n\n\t/**\n\t * Sets the locale of the content. We are more lenient on languages\n\t * that are fully supported in the analysis.\n\t *\n\t * @param {string} locale The locale of the content.\n\t *\n\t * @returns {void}\n\t */\n\tsetLocale( locale ) {\n\t\tthis.locale = locale;\n\t}\n\n\t/**\n\t * Aggregates the given assessment results into a single analysis score.\n\t *\n\t * @param {AssessmentResult[]} results The assessment results.\n\t *\n\t * @returns {number} The aggregated score.\n\t */\n\taggregate( results ) {\n\t\tconst validResults = this.getValidResults( results );\n\n\t\t/*\n\t\t * If you have no content, you have a gray indicator.\n\t\t * (Assume that one result always means the 'no content' assessment result).\n\t\t */\n\t\tif ( validResults.length <= 1 ) {\n\t\t\treturn READABILITY_SCORES.NOT_AVAILABLE;\n\t\t}\n\n\t\tconst penalty = this.calculatePenalty( validResults );\n\t\tconst isFullySupported = this.isFullySupported( this.locale );\n\t\treturn this.calculateScore( isFullySupported, penalty );\n\t}\n}\n\nexport default ReadabilityScoreAggregator;\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,5 @@
1
- "use strict";
1
+ import ScoreAggregator from "./ScoreAggregator";
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _ScoreAggregator = _interopRequireDefault(require("./ScoreAggregator"));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
3
  /**
10
4
  * The number to scale the score to.
11
5
  *
@@ -37,7 +31,7 @@ const ScoreFactor = 9;
37
31
  *
38
32
  * @memberOf module:parsedPaper/assess
39
33
  */
40
- class SEOScoreAggregator extends _ScoreAggregator.default {
34
+ class SEOScoreAggregator extends ScoreAggregator {
41
35
  /**
42
36
  * Aggregates the given assessment results into a single score.
43
37
  *
@@ -56,5 +50,5 @@ class SEOScoreAggregator extends _ScoreAggregator.default {
56
50
  return Math.round(score * ScoreScale / (results.length * ScoreFactor)) || 0;
57
51
  }
58
52
  }
59
- var _default = exports.default = SEOScoreAggregator;
53
+ export default SEOScoreAggregator;
60
54
  //# sourceMappingURL=SEOScoreAggregator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SEOScoreAggregator.js","names":["_ScoreAggregator","_interopRequireDefault","require","e","__esModule","default","ScoreScale","ScoreFactor","SEOScoreAggregator","ScoreAggregator","aggregate","results","score","reduce","sum","result","getScore","Math","round","length","_default","exports"],"sources":["../../../src/scoring/scoreAggregators/SEOScoreAggregator.js"],"sourcesContent":["import ScoreAggregator from \"./ScoreAggregator\";\n\n/**\n * The number to scale the score to.\n *\n * Individual scores are from 1 to 9.\n * The total score should be multiplied by this number to scale up.\n *\n * @type {number}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst ScoreScale = 100;\n\n/**\n * The factor to multiply the amount of results with.\n *\n * Individual scores are from 1 to 9.\n * The make the total score work in the 100 scale, the amount of results needs to get multiplied by this factor.\n *\n * @type {number}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst ScoreFactor = 9;\n\n/**\n * Aggregates SEO assessment results into a single score.\n *\n * @memberOf module:parsedPaper/assess\n */\nclass SEOScoreAggregator extends ScoreAggregator {\n\t/**\n\t * Aggregates the given assessment results into a single score.\n\t *\n\t * @param {AssessmentResult[]} results The assessment results.\n\t *\n\t * @returns {number} The aggregated score.\n\t */\n\taggregate( results ) {\n\t\tconst score = results.reduce( ( sum, result ) => sum + result.getScore(), 0 );\n\n\t\t/*\n\t\t * Whenever the divide by part is 0 this can result in a `NaN` value. Then 0 should be returned as fallback.\n\t\t * This seemed better than the if check `results.length === 0`,\n\t\t * because it also protects against ScoreFactor being 0.\n\t\t */\n\t\treturn Math.round( ( score * ScoreScale ) / ( results.length * ScoreFactor ) ) || 0;\n\t}\n}\n\nexport default SEOScoreAggregator;\n"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAgD,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,UAAU,GAAG,GAAG;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG,CAAC;;AAErB;AACA;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,SAASC,wBAAe,CAAC;EAChD;AACD;AACA;AACA;AACA;AACA;AACA;EACCC,SAASA,CAAEC,OAAO,EAAG;IACpB,MAAMC,KAAK,GAAGD,OAAO,CAACE,MAAM,CAAE,CAAEC,GAAG,EAAEC,MAAM,KAAMD,GAAG,GAAGC,MAAM,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAE,CAAC;;IAE7E;AACF;AACA;AACA;AACA;IACE,OAAOC,IAAI,CAACC,KAAK,CAAIN,KAAK,GAAGN,UAAU,IAAOK,OAAO,CAACQ,MAAM,GAAGZ,WAAW,CAAG,CAAC,IAAI,CAAC;EACpF;AACD;AAAC,IAAAa,QAAA,GAAAC,OAAA,CAAAhB,OAAA,GAEcG,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"SEOScoreAggregator.js","names":["ScoreAggregator","ScoreScale","ScoreFactor","SEOScoreAggregator","aggregate","results","score","reduce","sum","result","getScore","Math","round","length"],"sources":["../../../src/scoring/scoreAggregators/SEOScoreAggregator.js"],"sourcesContent":["import ScoreAggregator from \"./ScoreAggregator\";\n\n/**\n * The number to scale the score to.\n *\n * Individual scores are from 1 to 9.\n * The total score should be multiplied by this number to scale up.\n *\n * @type {number}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst ScoreScale = 100;\n\n/**\n * The factor to multiply the amount of results with.\n *\n * Individual scores are from 1 to 9.\n * The make the total score work in the 100 scale, the amount of results needs to get multiplied by this factor.\n *\n * @type {number}\n * @const\n *\n * @memberOf module:parsedPaper/assess\n */\nconst ScoreFactor = 9;\n\n/**\n * Aggregates SEO assessment results into a single score.\n *\n * @memberOf module:parsedPaper/assess\n */\nclass SEOScoreAggregator extends ScoreAggregator {\n\t/**\n\t * Aggregates the given assessment results into a single score.\n\t *\n\t * @param {AssessmentResult[]} results The assessment results.\n\t *\n\t * @returns {number} The aggregated score.\n\t */\n\taggregate( results ) {\n\t\tconst score = results.reduce( ( sum, result ) => sum + result.getScore(), 0 );\n\n\t\t/*\n\t\t * Whenever the divide by part is 0 this can result in a `NaN` value. Then 0 should be returned as fallback.\n\t\t * This seemed better than the if check `results.length === 0`,\n\t\t * because it also protects against ScoreFactor being 0.\n\t\t */\n\t\treturn Math.round( ( score * ScoreScale ) / ( results.length * ScoreFactor ) ) || 0;\n\t}\n}\n\nexport default SEOScoreAggregator;\n"],"mappings":"AAAA,OAAOA,eAAe;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,UAAU,GAAG,GAAG;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG,CAAC;;AAErB;AACA;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,SAASH,eAAe,CAAC;EAChD;AACD;AACA;AACA;AACA;AACA;AACA;EACCI,SAASA,CAAEC,OAAO,EAAG;IACpB,MAAMC,KAAK,GAAGD,OAAO,CAACE,MAAM,CAAE,CAAEC,GAAG,EAAEC,MAAM,KAAMD,GAAG,GAAGC,MAAM,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAE,CAAC;;IAE7E;AACF;AACA;AACA;AACA;IACE,OAAOC,IAAI,CAACC,KAAK,CAAIN,KAAK,GAAGL,UAAU,IAAOI,OAAO,CAACQ,MAAM,GAAGX,WAAW,CAAG,CAAC,IAAI,CAAC;EACpF;AACD;AAEA,eAAeC,kBAAkB","ignoreList":[]}
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
1
  /**
8
2
  * Aggregates assessment results into a single score.
9
3
  *
@@ -26,5 +20,5 @@ class ScoreAggregator {
26
20
  console.warn("'aggregate' must be implemented by a child class of 'ScoreAggregator'");
27
21
  }
28
22
  }
29
- var _default = exports.default = ScoreAggregator;
23
+ export default ScoreAggregator;
30
24
  //# sourceMappingURL=ScoreAggregator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScoreAggregator.js","names":["ScoreAggregator","aggregate","results","console","warn","_default","exports","default"],"sources":["../../../src/scoring/scoreAggregators/ScoreAggregator.js"],"sourcesContent":["/**\n * Aggregates assessment results into a single score.\n *\n * @memberOf module:parsedPaper/assess\n *\n * @abstract\n */\nclass ScoreAggregator {\n\t/**\n\t * Aggregates the given assessment results into a single score.\n\t *\n\t * @param {AssessmentResult[]} results The assessment results.\n\t *\n\t * @returns {number} The aggregated score.\n\t *\n\t * @abstract\n\t */\n\taggregate( results ) { // eslint-disable-line no-unused-vars\n\t\tconsole.warn( \"'aggregate' must be implemented by a child class of 'ScoreAggregator'\" );\n\t}\n}\n\nexport default ScoreAggregator;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,eAAe,CAAC;EACrB;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCC,SAASA,CAAEC,OAAO,EAAG;IAAE;IACtBC,OAAO,CAACC,IAAI,CAAE,uEAAwE,CAAC;EACxF;AACD;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcP,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"ScoreAggregator.js","names":["ScoreAggregator","aggregate","results","console","warn"],"sources":["../../../src/scoring/scoreAggregators/ScoreAggregator.js"],"sourcesContent":["/**\n * Aggregates assessment results into a single score.\n *\n * @memberOf module:parsedPaper/assess\n *\n * @abstract\n */\nclass ScoreAggregator {\n\t/**\n\t * Aggregates the given assessment results into a single score.\n\t *\n\t * @param {AssessmentResult[]} results The assessment results.\n\t *\n\t * @returns {number} The aggregated score.\n\t *\n\t * @abstract\n\t */\n\taggregate( results ) { // eslint-disable-line no-unused-vars\n\t\tconsole.warn( \"'aggregate' must be implemented by a child class of 'ScoreAggregator'\" );\n\t}\n}\n\nexport default ScoreAggregator;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,eAAe,CAAC;EACrB;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCC,SAASA,CAAEC,OAAO,EAAG;IAAE;IACtBC,OAAO,CAACC,IAAI,CAAE,uEAAwE,CAAC;EACxF;AACD;AAEA,eAAeJ,eAAe","ignoreList":[]}
@@ -1,28 +1,4 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "ReadabilityScoreAggregator", {
7
- enumerable: true,
8
- get: function () {
9
- return _ReadabilityScoreAggregator.default;
10
- }
11
- });
12
- Object.defineProperty(exports, "SEOScoreAggregator", {
13
- enumerable: true,
14
- get: function () {
15
- return _SEOScoreAggregator.default;
16
- }
17
- });
18
- Object.defineProperty(exports, "ScoreAggregator", {
19
- enumerable: true,
20
- get: function () {
21
- return _ScoreAggregator.default;
22
- }
23
- });
24
- var _ReadabilityScoreAggregator = _interopRequireDefault(require("./ReadabilityScoreAggregator"));
25
- var _ScoreAggregator = _interopRequireDefault(require("./ScoreAggregator"));
26
- var _SEOScoreAggregator = _interopRequireDefault(require("./SEOScoreAggregator"));
27
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
1
+ export { default as ReadabilityScoreAggregator } from "./ReadabilityScoreAggregator";
2
+ export { default as ScoreAggregator } from "./ScoreAggregator";
3
+ export { default as SEOScoreAggregator } from "./SEOScoreAggregator";
28
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_ReadabilityScoreAggregator","_interopRequireDefault","require","_ScoreAggregator","_SEOScoreAggregator","e","__esModule","default"],"sources":["../../../src/scoring/scoreAggregators/index.js"],"sourcesContent":["export { default as ReadabilityScoreAggregator } from \"./ReadabilityScoreAggregator\";\nexport { default as ScoreAggregator } from \"./ScoreAggregator\";\nexport { default as SEOScoreAggregator } from \"./SEOScoreAggregator\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,2BAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,mBAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAqE,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["default","ReadabilityScoreAggregator","ScoreAggregator","SEOScoreAggregator"],"sources":["../../../src/scoring/scoreAggregators/index.js"],"sourcesContent":["export { default as ReadabilityScoreAggregator } from \"./ReadabilityScoreAggregator\";\nexport { default as ScoreAggregator } from \"./ScoreAggregator\";\nexport { default as SEOScoreAggregator } from \"./SEOScoreAggregator\";\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,0BAA0B;AAC9C,SAASD,OAAO,IAAIE,eAAe;AACnC,SAASF,OAAO,IAAIG,kBAAkB","ignoreList":[]}
@@ -1,12 +1,6 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _lodash = require("lodash");
8
- var _Mark = _interopRequireDefault(require("./Mark"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
1
+ import { isArray, isEmpty, isNull, isNumber, isUndefined } from 'lodash';
2
+ import Mark from "./Mark";
3
+
10
4
  /**
11
5
  * A function that only returns an empty that can be used as an empty marker
12
6
  *
@@ -28,6 +22,7 @@ class AssessmentResult {
28
22
  * @param {string} [values.title] The title for this assessment result.
29
23
  * @param {string} [values.text] The text for this assessment result. This is the text that can be used as a feedback message associated with the score.
30
24
  * @param {array} [values.marks] The marks for this assessment result.
25
+ * @param {any} [values.data] Data for this assessment result.
31
26
  * @param {object} [values.config] The config for this assessment result.
32
27
  * @param {boolean} [values._hasBetaBadge] Whether this result has a beta badge.
33
28
  * @param {boolean} [values._hasJumps] Whether this result causes a jump to a different field.
@@ -41,24 +36,24 @@ class AssessmentResult {
41
36
  this._identifier = '';
42
37
  this._hasAIFixes = false;
43
38
  this._hasMarks = false;
39
+ this._hasData = false;
44
40
  this._hasJumps = false;
45
- this._hasBody = false;
46
41
  this._hasTitle = false;
47
42
  this._hasEditFieldName = false;
48
43
  this._marker = emptyMarker;
49
44
  this._hasBetaBadge = false;
50
45
  this.score = 0;
51
46
  this.config = {};
52
- this.body = null;
47
+ this.data = undefined;
53
48
  this.status = '';
54
49
  this.title = '';
55
50
  this.text = '';
56
51
  this.marks = [];
57
52
  this.editFieldName = '';
58
- if ((0, _lodash.isUndefined)(values)) {
53
+ if (isUndefined(values)) {
59
54
  values = {};
60
55
  }
61
- if (!(0, _lodash.isUndefined)(values.score)) {
56
+ if (!isUndefined(values.score)) {
62
57
  this.setScore(values.score);
63
58
  }
64
59
  if (values.status) {
@@ -67,34 +62,34 @@ class AssessmentResult {
67
62
  if (values.config) {
68
63
  this.setConfig(values.config);
69
64
  }
70
- if (values.body) {
71
- this.setBody(values.body);
65
+ if (values.data) {
66
+ this.setData(values.data);
72
67
  }
73
68
  if (values.title) {
74
69
  this.setTitle(values.title);
75
70
  }
76
- if (!(0, _lodash.isUndefined)(values.text)) {
71
+ if (!isUndefined(values.text)) {
77
72
  this.setText(values.text);
78
73
  }
79
- if (!(0, _lodash.isUndefined)(values.status)) {
74
+ if (!isUndefined(values.status)) {
80
75
  this.setStatus(values.status);
81
76
  }
82
- if (!(0, _lodash.isUndefined)(values.body)) {
83
- this.setBody(values.body);
77
+ if (!isUndefined(values.data)) {
78
+ this.setData(values.data);
84
79
  }
85
- if (!(0, _lodash.isUndefined)(values.marks)) {
80
+ if (!isUndefined(values.marks)) {
86
81
  this.setMarks(values.marks);
87
82
  }
88
- if (!(0, _lodash.isUndefined)(values._hasBetaBadge)) {
83
+ if (!isUndefined(values._hasBetaBadge)) {
89
84
  this.setHasBetaBadge(values._hasBetaBadge);
90
85
  }
91
- if (!(0, _lodash.isUndefined)(values._hasJumps)) {
86
+ if (!isUndefined(values._hasJumps)) {
92
87
  this.setHasJumps(values._hasJumps);
93
88
  }
94
- if (!(0, _lodash.isUndefined)(values.editFieldName)) {
89
+ if (!isUndefined(values.editFieldName)) {
95
90
  this.setEditFieldName(values.editFieldName);
96
91
  }
97
- if (!(0, _lodash.isUndefined)(values._hasAIFixes)) {
92
+ if (!isUndefined(values._hasAIFixes)) {
98
93
  this.setHasAIFixes(values._hasAIFixes);
99
94
  }
100
95
  }
@@ -104,7 +99,7 @@ class AssessmentResult {
104
99
  * @returns {boolean} Whether or not a status is available.
105
100
  */
106
101
  hasStatus() {
107
- return !(0, _lodash.isEmpty)(this._hasStatus);
102
+ return !isEmpty(this._hasStatus);
108
103
  }
109
104
 
110
105
  /**
@@ -132,7 +127,7 @@ class AssessmentResult {
132
127
  * @returns {boolean} Whether or not a title is available.
133
128
  */
134
129
  hasTitle() {
135
- return !(0, _lodash.isEmpty)(this._hasTitle);
130
+ return !isEmpty(this._hasTitle);
136
131
  }
137
132
 
138
133
  /**
@@ -160,7 +155,7 @@ class AssessmentResult {
160
155
  * @returns {boolean} Whether or not a config is available.
161
156
  */
162
157
  hasConfig() {
163
- return !(0, _lodash.isEmpty)(this._hasConfig);
158
+ return !isEmpty(this._hasConfig);
164
159
  }
165
160
 
166
161
  /**
@@ -184,31 +179,12 @@ class AssessmentResult {
184
179
  }
185
180
 
186
181
  /**
187
- * Checks if a body is available.
188
- * @returns {boolean} Whether or not a body is available.
189
- */
190
- hasBody() {
191
- return !(0, _lodash.isNull)(this._hasBody);
192
- }
193
-
194
- /**
195
- * Gets the available score.
196
- * @returns {React.JSX.Element} The body associated with the AssessmentResult.
197
- */
198
- getBody() {
199
- return this.body;
200
- }
201
-
202
- /**
203
- * Sets the body for the assessment.
204
- * @returns {void}
205
- * @param element
182
+ *
183
+ * @param data
206
184
  */
207
- setBody(element) {
208
- if (element) {
209
- this.body = element;
210
- this._hasBody = true;
211
- }
185
+ setData(data) {
186
+ this.data = data;
187
+ this._hasData = true;
212
188
  }
213
189
 
214
190
  /**
@@ -233,7 +209,7 @@ class AssessmentResult {
233
209
  * @returns {void}
234
210
  */
235
211
  setScore(score) {
236
- if ((0, _lodash.isNumber)(score)) {
212
+ if (isNumber(score)) {
237
213
  this.score = score;
238
214
  this._hasScore = true;
239
215
  }
@@ -261,7 +237,7 @@ class AssessmentResult {
261
237
  * @returns {void}
262
238
  */
263
239
  setText(text) {
264
- if ((0, _lodash.isUndefined)(text)) {
240
+ if (isUndefined(text)) {
265
241
  text = '';
266
242
  }
267
243
  this.text = text;
@@ -284,7 +260,7 @@ class AssessmentResult {
284
260
  * @returns {void}
285
261
  */
286
262
  setMarks(marks) {
287
- if ((0, _lodash.isArray)(marks)) {
263
+ if (isArray(marks)) {
288
264
  this.marks = marks;
289
265
  this._hasMarks = marks.length > 0;
290
266
  }
@@ -471,7 +447,7 @@ class AssessmentResult {
471
447
  const result = new AssessmentResult({
472
448
  text: serialized.text,
473
449
  score: serialized.score,
474
- marks: serialized.marks.map(mark => _Mark.default.parse(mark)),
450
+ marks: serialized.marks.map(mark => Mark.parse(mark)),
475
451
  _hasBetaBadge: serialized._hasBetaBadge,
476
452
  _hasJumps: serialized._hasJumps,
477
453
  _hasAIFixes: serialized._hasAIFixes,
@@ -481,5 +457,5 @@ class AssessmentResult {
481
457
  return result;
482
458
  }
483
459
  }
484
- var _default = exports.default = AssessmentResult;
460
+ export default AssessmentResult;
485
461
  //# sourceMappingURL=AssessmentResult.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AssessmentResult.js","names":["_lodash","require","_Mark","_interopRequireDefault","e","__esModule","default","emptyMarker","AssessmentResult","constructor","values","_hasScore","_identifier","_hasAIFixes","_hasMarks","_hasJumps","_hasBody","_hasTitle","_hasEditFieldName","_marker","_hasBetaBadge","score","config","body","status","title","text","marks","editFieldName","isUndefined","setScore","setStatus","setConfig","setBody","setTitle","setText","setMarks","setHasBetaBadge","setHasJumps","setEditFieldName","setHasAIFixes","hasStatus","isEmpty","_hasStatus","getStatus","hasTitle","getTitle","hasConfig","_hasConfig","getConfig","hasBody","isNull","getBody","element","hasScore","getScore","isNumber","hasText","getText","getMarks","isArray","length","setIdentifier","identifier","getIdentifier","setMarker","marker","hasMarker","getMarker","setHasMarks","hasMarks","hasBetaBadge","hasJumps","hasEditFieldName","getEditFieldName","hasAIFixes","serialize","_parseClass","map","mark","parse","serialized","result","Mark","_default","exports"],"sources":["../../src/values/AssessmentResult.js"],"sourcesContent":["import {isArray, isEmpty, isNull, isNumber, isUndefined} from 'lodash';\n\nimport Mark from './Mark';\n\n/**\n * A function that only returns an empty that can be used as an empty marker\n *\n * @returns {Array} A list of empty marks.\n */\nconst emptyMarker = () => [];\n\n/**\n * Represents the assessment result.\n */\nclass AssessmentResult {\n /**\n * Constructs the AssessmentResult value object.\n *\n * @param {Object} [values] The values for this assessment result.\n * @param {number} [values.score] The score for this assessment result.\n * @param {React.JSX.Element} [values.body] The score for this assessment result.\n * @param {string} [values.status] The score for this assessment result.\n * @param {string} [values.title] The title for this assessment result.\n * @param {string} [values.text] The text for this assessment result. This is the text that can be used as a feedback message associated with the score.\n * @param {array} [values.marks] The marks for this assessment result.\n * @param {object} [values.config] The config for this assessment result.\n * @param {boolean} [values._hasBetaBadge] Whether this result has a beta badge.\n * @param {boolean} [values._hasJumps] Whether this result causes a jump to a different field.\n * @param {string} [values.editFieldName] The edit field name for this assessment result.\n * @param {boolean} [values._hasAIFixes] Whether this result has AI fixes.\n * @constructor\n * @returns {void}\n */\n constructor(values) {\n this._hasScore = false;\n this._identifier = '';\n this._hasAIFixes = false;\n this._hasMarks = false;\n this._hasJumps = false;\n this._hasBody = false;\n this._hasTitle = false;\n this._hasEditFieldName = false;\n this._marker = emptyMarker;\n this._hasBetaBadge = false;\n this.score = 0;\n this.config = {};\n this.body = null;\n this.status = '';\n this.title = '';\n this.text = '';\n this.marks = [];\n this.editFieldName = '';\n\n if (isUndefined(values)) {\n values = {};\n }\n\n if (!isUndefined(values.score)) {\n this.setScore(values.score);\n }\n\n if (values.status) {\n this.setStatus(values.status);\n }\n\n if (values.config) {\n this.setConfig(values.config);\n }\n\n if (values.body) {\n this.setBody(values.body);\n }\n\n if (values.title) {\n this.setTitle(values.title);\n }\n\n if (!isUndefined(values.text)) {\n this.setText(values.text);\n }\n\n if (!isUndefined(values.status)) {\n this.setStatus(values.status);\n }\n\n if (!isUndefined(values.body)) {\n this.setBody(values.body);\n }\n\n if (!isUndefined(values.marks)) {\n this.setMarks(values.marks);\n }\n\n if (!isUndefined(values._hasBetaBadge)) {\n this.setHasBetaBadge(values._hasBetaBadge);\n }\n\n if (!isUndefined(values._hasJumps)) {\n this.setHasJumps(values._hasJumps);\n }\n\n if (!isUndefined(values.editFieldName)) {\n this.setEditFieldName(values.editFieldName);\n }\n\n if (!isUndefined(values._hasAIFixes)) {\n this.setHasAIFixes(values._hasAIFixes);\n }\n }\n\n /**\n * Checks if a status is available.\n * @returns {boolean} Whether or not a status is available.\n */\n hasStatus() {\n return !isEmpty(this._hasStatus);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The status associated with the AssessmentResult.\n */\n getStatus() {\n return this.status;\n }\n\n /**\n * Sets the status for the assessment.\n * @returns {void}\n * @param status\n */\n setStatus(status) {\n if (status) {\n this.status = status;\n this._hasStatus = true;\n }\n }\n\n /**\n * Checks if a title is available.\n * @returns {boolean} Whether or not a title is available.\n */\n hasTitle() {\n return !isEmpty(this._hasTitle);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The title associated with the AssessmentResult.\n */\n getTitle() {\n return this.title;\n }\n\n /**\n * Sets the title for the assessment.\n * @returns {void}\n * @param title\n */\n setTitle(title) {\n if (title) {\n this.title = title;\n this._hasTitle = true;\n }\n }\n\n /**\n * Checks if a config is available.\n * @returns {boolean} Whether or not a config is available.\n */\n hasConfig() {\n return !isEmpty(this._hasConfig);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The config associated with the AssessmentResult.\n */\n getConfig() {\n return this.config;\n }\n\n /**\n * Sets the config for the assessment.\n * @returns {void}\n * @param config\n */\n setConfig(config) {\n if (config) {\n this.config = config;\n this._hasConfig = true;\n }\n }\n\n /**\n * Checks if a body is available.\n * @returns {boolean} Whether or not a body is available.\n */\n hasBody() {\n return !isNull(this._hasBody);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The body associated with the AssessmentResult.\n */\n getBody() {\n return this.body;\n }\n\n /**\n * Sets the body for the assessment.\n * @returns {void}\n * @param element\n */\n setBody(element) {\n if (element) {\n this.body = element;\n this._hasBody = true;\n }\n }\n\n /**\n * Checks if a score is available.\n * @returns {boolean} Whether or not a score is available.\n */\n hasScore() {\n return this._hasScore;\n }\n\n /**\n * Gets the available score.\n * @returns {number} The score associated with the AssessmentResult.\n */\n getScore() {\n return this.score;\n }\n\n /**\n * Sets the score for the assessment.\n * @param {number} score The score to be used for the score property.\n * @returns {void}\n */\n setScore(score) {\n if (isNumber(score)) {\n this.score = score;\n this._hasScore = true;\n }\n }\n\n /**\n * Checks if a text for the assessment result is available.\n * @returns {boolean} Whether or not a text is available.\n */\n hasText() {\n return this.text !== '';\n }\n\n /**\n * Gets the available text for the assessment result.\n * @returns {string} The text associated with the AssessmentResult.\n */\n getText() {\n return this.text;\n }\n\n /**\n * Sets the text for the assessment.\n * @param {string} text The text to be used for the text property.\n * @returns {void}\n */\n setText(text) {\n if (isUndefined(text)) {\n text = '';\n }\n\n this.text = text;\n }\n\n /**\n * Gets the available marks.\n *\n * @returns {array} The marks associated with the AssessmentResult.\n */\n getMarks() {\n return this.marks;\n }\n\n /**\n * Sets the marks for the assessment.\n *\n * @param {array} marks The marks to be used for the marks property.\n *\n * @returns {void}\n */\n setMarks(marks) {\n if (isArray(marks)) {\n this.marks = marks;\n this._hasMarks = marks.length > 0;\n }\n }\n\n /**\n * Sets the identifier.\n *\n * @param {string} identifier An alphanumeric identifier for this result.\n * @returns {void}\n */\n setIdentifier(identifier) {\n this._identifier = identifier;\n }\n\n /**\n * Gets the identifier.\n *\n * @returns {string} An alphanumeric identifier for this result.\n */\n getIdentifier() {\n return this._identifier;\n }\n\n /**\n * Sets the marker, a pure function that can return the marks for a given Paper.\n *\n * @param {Function} marker The marker to set.\n * @returns {void}\n */\n setMarker(marker) {\n this._marker = marker;\n }\n\n /**\n * Returns whether this result has a marker that can be used to mark for a given Paper.\n *\n * @returns {boolean} Whether this result has a marker.\n */\n hasMarker() {\n return this._hasMarks && this._marker !== emptyMarker;\n }\n\n /**\n * Gets the marker, a pure function that can return the marks for a given Paper.\n *\n * @returns {Function} The marker.\n */\n getMarker() {\n return this._marker;\n }\n\n /**\n * Sets the value of _hasMarks to determine if there is something to mark.\n *\n * @param {boolean} hasMarks Is there something to mark.\n * @returns {void}\n */\n setHasMarks(hasMarks) {\n this._hasMarks = hasMarks;\n }\n\n /**\n * Returns the value of _hasMarks to determine if there is something to mark.\n *\n * @returns {boolean} Is there something to mark.\n */\n hasMarks() {\n return this._hasMarks;\n }\n\n /**\n * Sets the value of _hasBetaBadge to determine if the result has a beta badge.\n *\n * @param {boolean} hasBetaBadge Whether this result has a beta badge.\n * @returns {void}\n */\n setHasBetaBadge(hasBetaBadge) {\n this._hasBetaBadge = hasBetaBadge;\n }\n\n /**\n * Returns the value of _hasBetaBadge to determine if the result has a beta badge.\n *\n * @returns {bool} Whether this result has a beta badge.\n */\n hasBetaBadge() {\n return this._hasBetaBadge;\n }\n\n /**\n * Sets the value of _hasJumps to determine whether it's needed to jump to a different field.\n *\n * @param {boolean} hasJumps Whether this result causes a jump to a different field.\n * @returns {void}\n */\n setHasJumps(hasJumps) {\n this._hasJumps = hasJumps;\n }\n\n /**\n * Returns the value of _hasJumps to determine whether it's needed to jump to a different field.\n *\n * @returns {bool} Whether this result causes a jump to a different field.\n */\n hasJumps() {\n return this._hasJumps;\n }\n\n /**\n * Check if an edit field name is available.\n * @returns {boolean} Whether or not an edit field name is available.\n */\n hasEditFieldName() {\n return this._hasEditFieldName;\n }\n\n /**\n * Gets the edit field name.\n * @returns {string} The edit field name associated with the AssessmentResult.\n */\n getEditFieldName() {\n return this.editFieldName;\n }\n\n /**\n * Sets the edit field name to be used to create the aria label for an edit button.\n * @param {string} editFieldName The string to be used for the string property\n * @returns {void}\n */\n setEditFieldName(editFieldName) {\n if (editFieldName !== '') {\n this.editFieldName = editFieldName;\n this._hasEditFieldName = true;\n }\n }\n\n /**\n * Sets the value of _hasAIFixes to determine if the result has AI fixes.\n *\n * @param {boolean} hasAIFixes Whether this result has AI fixes.\n * @returns {void}\n */\n setHasAIFixes(hasAIFixes) {\n this._hasAIFixes = hasAIFixes;\n }\n\n /**\n * Returns the value of _hasAIFixes to determine if the result has AI fixes.\n *\n * @returns {bool} Whether this result has AI fixes.\n */\n hasAIFixes() {\n return this._hasAIFixes;\n }\n\n /**\n * Serializes the AssessmentResult instance to an object.\n *\n * @returns {Object} The serialized AssessmentResult.\n */\n serialize() {\n return {\n _parseClass: 'AssessmentResult',\n identifier: this._identifier,\n score: this.score,\n text: this.text,\n marks: this.marks.map(mark => mark.serialize()),\n _hasBetaBadge: this._hasBetaBadge,\n _hasJumps: this._hasJumps,\n _hasAIFixes: this._hasAIFixes,\n editFieldName: this.editFieldName\n };\n }\n\n /**\n * Parses the object to an AssessmentResult.\n *\n * @param {Object} serialized The serialized object.\n *\n * @returns {AssessmentResult} The parsed AssessmentResult.\n */\n static parse(serialized) {\n const result = new AssessmentResult({\n text: serialized.text,\n score: serialized.score,\n marks: serialized.marks.map(mark => Mark.parse(mark)),\n _hasBetaBadge: serialized._hasBetaBadge,\n _hasJumps: serialized._hasJumps,\n _hasAIFixes: serialized._hasAIFixes,\n editFieldName: serialized.editFieldName\n });\n result.setIdentifier(serialized.identifier);\n\n return result;\n }\n}\n\nexport default AssessmentResult;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"AssessmentResult.js","names":["isArray","isEmpty","isNull","isNumber","isUndefined","Mark","emptyMarker","AssessmentResult","constructor","values","_hasScore","_identifier","_hasAIFixes","_hasMarks","_hasData","_hasJumps","_hasTitle","_hasEditFieldName","_marker","_hasBetaBadge","score","config","data","undefined","status","title","text","marks","editFieldName","setScore","setStatus","setConfig","setData","setTitle","setText","setMarks","setHasBetaBadge","setHasJumps","setEditFieldName","setHasAIFixes","hasStatus","_hasStatus","getStatus","hasTitle","getTitle","hasConfig","_hasConfig","getConfig","hasScore","getScore","hasText","getText","getMarks","length","setIdentifier","identifier","getIdentifier","setMarker","marker","hasMarker","getMarker","setHasMarks","hasMarks","hasBetaBadge","hasJumps","hasEditFieldName","getEditFieldName","hasAIFixes","serialize","_parseClass","map","mark","parse","serialized","result"],"sources":["../../src/values/AssessmentResult.js"],"sourcesContent":["import {isArray, isEmpty, isNull, isNumber, isUndefined} from 'lodash';\n\nimport Mark from './Mark';\n\n/**\n * A function that only returns an empty that can be used as an empty marker\n *\n * @returns {Array} A list of empty marks.\n */\nconst emptyMarker = () => [];\n\n/**\n * Represents the assessment result.\n */\nclass AssessmentResult {\n /**\n * Constructs the AssessmentResult value object.\n *\n * @param {Object} [values] The values for this assessment result.\n * @param {number} [values.score] The score for this assessment result.\n * @param {React.JSX.Element} [values.body] The score for this assessment result.\n * @param {string} [values.status] The score for this assessment result.\n * @param {string} [values.title] The title for this assessment result.\n * @param {string} [values.text] The text for this assessment result. This is the text that can be used as a feedback message associated with the score.\n * @param {array} [values.marks] The marks for this assessment result.\n * @param {any} [values.data] Data for this assessment result.\n * @param {object} [values.config] The config for this assessment result.\n * @param {boolean} [values._hasBetaBadge] Whether this result has a beta badge.\n * @param {boolean} [values._hasJumps] Whether this result causes a jump to a different field.\n * @param {string} [values.editFieldName] The edit field name for this assessment result.\n * @param {boolean} [values._hasAIFixes] Whether this result has AI fixes.\n * @constructor\n * @returns {void}\n */\n constructor(values) {\n this._hasScore = false;\n this._identifier = '';\n this._hasAIFixes = false;\n this._hasMarks = false;\n this._hasData = false;\n this._hasJumps = false;\n this._hasTitle = false;\n this._hasEditFieldName = false;\n this._marker = emptyMarker;\n this._hasBetaBadge = false;\n this.score = 0;\n this.config = {};\n this.data = undefined;\n this.status = '';\n this.title = '';\n this.text = '';\n this.marks = [];\n this.editFieldName = '';\n\n if (isUndefined(values)) {\n values = {};\n }\n\n if (!isUndefined(values.score)) {\n this.setScore(values.score);\n }\n\n if (values.status) {\n this.setStatus(values.status);\n }\n\n if (values.config) {\n this.setConfig(values.config);\n }\n\n if (values.data) {\n this.setData(values.data);\n }\n\n if (values.title) {\n this.setTitle(values.title);\n }\n\n if (!isUndefined(values.text)) {\n this.setText(values.text);\n }\n\n if (!isUndefined(values.status)) {\n this.setStatus(values.status);\n }\n\n if (!isUndefined(values.data)) {\n this.setData(values.data);\n }\n\n if (!isUndefined(values.marks)) {\n this.setMarks(values.marks);\n }\n\n if (!isUndefined(values._hasBetaBadge)) {\n this.setHasBetaBadge(values._hasBetaBadge);\n }\n\n if (!isUndefined(values._hasJumps)) {\n this.setHasJumps(values._hasJumps);\n }\n\n if (!isUndefined(values.editFieldName)) {\n this.setEditFieldName(values.editFieldName);\n }\n\n if (!isUndefined(values._hasAIFixes)) {\n this.setHasAIFixes(values._hasAIFixes);\n }\n }\n\n /**\n * Checks if a status is available.\n * @returns {boolean} Whether or not a status is available.\n */\n hasStatus() {\n return !isEmpty(this._hasStatus);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The status associated with the AssessmentResult.\n */\n getStatus() {\n return this.status;\n }\n\n /**\n * Sets the status for the assessment.\n * @returns {void}\n * @param status\n */\n setStatus(status) {\n if (status) {\n this.status = status;\n this._hasStatus = true;\n }\n }\n\n /**\n * Checks if a title is available.\n * @returns {boolean} Whether or not a title is available.\n */\n hasTitle() {\n return !isEmpty(this._hasTitle);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The title associated with the AssessmentResult.\n */\n getTitle() {\n return this.title;\n }\n\n /**\n * Sets the title for the assessment.\n * @returns {void}\n * @param title\n */\n setTitle(title) {\n if (title) {\n this.title = title;\n this._hasTitle = true;\n }\n }\n\n /**\n * Checks if a config is available.\n * @returns {boolean} Whether or not a config is available.\n */\n hasConfig() {\n return !isEmpty(this._hasConfig);\n }\n\n /**\n * Gets the available score.\n * @returns {React.JSX.Element} The config associated with the AssessmentResult.\n */\n getConfig() {\n return this.config;\n }\n\n /**\n * Sets the config for the assessment.\n * @returns {void}\n * @param config\n */\n setConfig(config) {\n if (config) {\n this.config = config;\n this._hasConfig = true;\n }\n }\n\n /**\n *\n * @param data\n */\n setData(data) {\n this.data = data;\n this._hasData = true;\n }\n\n /**\n * Checks if a score is available.\n * @returns {boolean} Whether or not a score is available.\n */\n hasScore() {\n return this._hasScore;\n }\n\n /**\n * Gets the available score.\n * @returns {number} The score associated with the AssessmentResult.\n */\n getScore() {\n return this.score;\n }\n\n /**\n * Sets the score for the assessment.\n * @param {number} score The score to be used for the score property.\n * @returns {void}\n */\n setScore(score) {\n if (isNumber(score)) {\n this.score = score;\n this._hasScore = true;\n }\n }\n\n /**\n * Checks if a text for the assessment result is available.\n * @returns {boolean} Whether or not a text is available.\n */\n hasText() {\n return this.text !== '';\n }\n\n /**\n * Gets the available text for the assessment result.\n * @returns {string} The text associated with the AssessmentResult.\n */\n getText() {\n return this.text;\n }\n\n /**\n * Sets the text for the assessment.\n * @param {string} text The text to be used for the text property.\n * @returns {void}\n */\n setText(text) {\n if (isUndefined(text)) {\n text = '';\n }\n\n this.text = text;\n }\n\n /**\n * Gets the available marks.\n *\n * @returns {array} The marks associated with the AssessmentResult.\n */\n getMarks() {\n return this.marks;\n }\n\n /**\n * Sets the marks for the assessment.\n *\n * @param {array} marks The marks to be used for the marks property.\n *\n * @returns {void}\n */\n setMarks(marks) {\n if (isArray(marks)) {\n this.marks = marks;\n this._hasMarks = marks.length > 0;\n }\n }\n\n /**\n * Sets the identifier.\n *\n * @param {string} identifier An alphanumeric identifier for this result.\n * @returns {void}\n */\n setIdentifier(identifier) {\n this._identifier = identifier;\n }\n\n /**\n * Gets the identifier.\n *\n * @returns {string} An alphanumeric identifier for this result.\n */\n getIdentifier() {\n return this._identifier;\n }\n\n /**\n * Sets the marker, a pure function that can return the marks for a given Paper.\n *\n * @param {Function} marker The marker to set.\n * @returns {void}\n */\n setMarker(marker) {\n this._marker = marker;\n }\n\n /**\n * Returns whether this result has a marker that can be used to mark for a given Paper.\n *\n * @returns {boolean} Whether this result has a marker.\n */\n hasMarker() {\n return this._hasMarks && this._marker !== emptyMarker;\n }\n\n /**\n * Gets the marker, a pure function that can return the marks for a given Paper.\n *\n * @returns {Function} The marker.\n */\n getMarker() {\n return this._marker;\n }\n\n /**\n * Sets the value of _hasMarks to determine if there is something to mark.\n *\n * @param {boolean} hasMarks Is there something to mark.\n * @returns {void}\n */\n setHasMarks(hasMarks) {\n this._hasMarks = hasMarks;\n }\n\n /**\n * Returns the value of _hasMarks to determine if there is something to mark.\n *\n * @returns {boolean} Is there something to mark.\n */\n hasMarks() {\n return this._hasMarks;\n }\n\n /**\n * Sets the value of _hasBetaBadge to determine if the result has a beta badge.\n *\n * @param {boolean} hasBetaBadge Whether this result has a beta badge.\n * @returns {void}\n */\n setHasBetaBadge(hasBetaBadge) {\n this._hasBetaBadge = hasBetaBadge;\n }\n\n /**\n * Returns the value of _hasBetaBadge to determine if the result has a beta badge.\n *\n * @returns {bool} Whether this result has a beta badge.\n */\n hasBetaBadge() {\n return this._hasBetaBadge;\n }\n\n /**\n * Sets the value of _hasJumps to determine whether it's needed to jump to a different field.\n *\n * @param {boolean} hasJumps Whether this result causes a jump to a different field.\n * @returns {void}\n */\n setHasJumps(hasJumps) {\n this._hasJumps = hasJumps;\n }\n\n /**\n * Returns the value of _hasJumps to determine whether it's needed to jump to a different field.\n *\n * @returns {bool} Whether this result causes a jump to a different field.\n */\n hasJumps() {\n return this._hasJumps;\n }\n\n /**\n * Check if an edit field name is available.\n * @returns {boolean} Whether or not an edit field name is available.\n */\n hasEditFieldName() {\n return this._hasEditFieldName;\n }\n\n /**\n * Gets the edit field name.\n * @returns {string} The edit field name associated with the AssessmentResult.\n */\n getEditFieldName() {\n return this.editFieldName;\n }\n\n /**\n * Sets the edit field name to be used to create the aria label for an edit button.\n * @param {string} editFieldName The string to be used for the string property\n * @returns {void}\n */\n setEditFieldName(editFieldName) {\n if (editFieldName !== '') {\n this.editFieldName = editFieldName;\n this._hasEditFieldName = true;\n }\n }\n\n /**\n * Sets the value of _hasAIFixes to determine if the result has AI fixes.\n *\n * @param {boolean} hasAIFixes Whether this result has AI fixes.\n * @returns {void}\n */\n setHasAIFixes(hasAIFixes) {\n this._hasAIFixes = hasAIFixes;\n }\n\n /**\n * Returns the value of _hasAIFixes to determine if the result has AI fixes.\n *\n * @returns {bool} Whether this result has AI fixes.\n */\n hasAIFixes() {\n return this._hasAIFixes;\n }\n\n /**\n * Serializes the AssessmentResult instance to an object.\n *\n * @returns {Object} The serialized AssessmentResult.\n */\n serialize() {\n return {\n _parseClass: 'AssessmentResult',\n identifier: this._identifier,\n score: this.score,\n text: this.text,\n marks: this.marks.map(mark => mark.serialize()),\n _hasBetaBadge: this._hasBetaBadge,\n _hasJumps: this._hasJumps,\n _hasAIFixes: this._hasAIFixes,\n editFieldName: this.editFieldName\n };\n }\n\n /**\n * Parses the object to an AssessmentResult.\n *\n * @param {Object} serialized The serialized object.\n *\n * @returns {AssessmentResult} The parsed AssessmentResult.\n */\n static parse(serialized) {\n const result = new AssessmentResult({\n text: serialized.text,\n score: serialized.score,\n marks: serialized.marks.map(mark => Mark.parse(mark)),\n _hasBetaBadge: serialized._hasBetaBadge,\n _hasJumps: serialized._hasJumps,\n _hasAIFixes: serialized._hasAIFixes,\n editFieldName: serialized.editFieldName\n });\n result.setIdentifier(serialized.identifier);\n\n return result;\n }\n}\n\nexport default AssessmentResult;\n"],"mappings":"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","ignoreList":[]}