axyseo 2.0.0-alpha.0.0.4 → 2.0.0-alpha.0.0.40

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 (1892) hide show
  1. package/build/components/RelatedKeywordsDescription.js +38 -0
  2. package/build/components/RelatedKeywordsDescription.js.map +1 -0
  3. package/build/components/RelatedKeywordsDescription.scss +34 -0
  4. package/build/config/diacritics.js +1 -7
  5. package/build/config/diacritics.js.map +1 -1
  6. package/build/config/getTransliterations.js +6 -14
  7. package/build/config/getTransliterations.js.map +1 -1
  8. package/build/config/transliterationsWPstyle.js +5 -12
  9. package/build/config/transliterationsWPstyle.js.map +1 -1
  10. package/build/config/wordBoundaries.js +1 -7
  11. package/build/config/wordBoundaries.js.map +1 -1
  12. package/build/config/wordBoundariesWithoutPunctuation.js +2 -8
  13. package/build/config/wordBoundariesWithoutPunctuation.js.map +1 -1
  14. package/build/const/analysis.js +5 -11
  15. package/build/const/analysis.js.map +1 -1
  16. package/build/errors/invalidType.js +1 -8
  17. package/build/errors/invalidType.js.map +1 -1
  18. package/build/errors/missingArgument.js +1 -8
  19. package/build/errors/missingArgument.js.map +1 -1
  20. package/build/helpers/createMeasurementElement.js +1 -8
  21. package/build/helpers/createMeasurementElement.js.map +1 -1
  22. package/build/helpers/domManipulation.js +3 -8
  23. package/build/helpers/domManipulation.js.map +1 -1
  24. package/build/helpers/errors.js +5 -10
  25. package/build/helpers/errors.js.map +1 -1
  26. package/build/helpers/factory.js +7 -13
  27. package/build/helpers/factory.js.map +1 -1
  28. package/build/helpers/formatNumber.js +1 -7
  29. package/build/helpers/formatNumber.js.map +1 -1
  30. package/build/helpers/formatString.js +4 -9
  31. package/build/helpers/formatString.js.map +1 -1
  32. package/build/helpers/getLanguagesWithWordComplexity.js +1 -7
  33. package/build/helpers/getLanguagesWithWordComplexity.js.map +1 -1
  34. package/build/helpers/getLanguagesWithWordFormSupport.js +1 -7
  35. package/build/helpers/getLanguagesWithWordFormSupport.js.map +1 -1
  36. package/build/helpers/getWordComplexityConfig.js +9 -15
  37. package/build/helpers/getWordComplexityConfig.js.map +1 -1
  38. package/build/helpers/getWordComplexityHelper.js +9 -15
  39. package/build/helpers/getWordComplexityHelper.js.map +1 -1
  40. package/build/helpers/htmlEntities.js +6 -11
  41. package/build/helpers/htmlEntities.js.map +1 -1
  42. package/build/helpers/includesAny.js +3 -8
  43. package/build/helpers/includesAny.js.map +1 -1
  44. package/build/helpers/index.js +15 -72
  45. package/build/helpers/index.js.map +1 -1
  46. package/build/helpers/shortlinker/Shortlinker.js +1 -8
  47. package/build/helpers/shortlinker/Shortlinker.js.map +1 -1
  48. package/build/helpers/shortlinker/index.js +1 -16
  49. package/build/helpers/shortlinker/index.js.map +1 -1
  50. package/build/helpers/shortlinker/singleton.js +5 -13
  51. package/build/helpers/shortlinker/singleton.js.map +1 -1
  52. package/build/helpers/types.js +2 -9
  53. package/build/helpers/types.js.map +1 -1
  54. package/build/index.js +25 -87
  55. package/build/index.js.map +1 -1
  56. package/build/languageProcessing/AbstractResearcher.js +88 -95
  57. package/build/languageProcessing/AbstractResearcher.js.map +1 -1
  58. package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +3 -10
  59. package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js.map +1 -1
  60. package/build/languageProcessing/helpers/html/getFieldsToMark.js +6 -11
  61. package/build/languageProcessing/helpers/html/getFieldsToMark.js.map +1 -1
  62. package/build/languageProcessing/helpers/html/getSubheadingTexts.js +3 -8
  63. package/build/languageProcessing/helpers/html/getSubheadingTexts.js.map +1 -1
  64. package/build/languageProcessing/helpers/html/getSubheadings.js +2 -12
  65. package/build/languageProcessing/helpers/html/getSubheadings.js.map +1 -1
  66. package/build/languageProcessing/helpers/html/html.js +9 -17
  67. package/build/languageProcessing/helpers/html/html.js.map +1 -1
  68. package/build/languageProcessing/helpers/html/htmlParser.js +3 -10
  69. package/build/languageProcessing/helpers/html/htmlParser.js.map +1 -1
  70. package/build/languageProcessing/helpers/html/matchParagraphs.js +7 -12
  71. package/build/languageProcessing/helpers/html/matchParagraphs.js.map +1 -1
  72. package/build/languageProcessing/helpers/html/normalizeHTML.js +4 -10
  73. package/build/languageProcessing/helpers/html/normalizeHTML.js.map +1 -1
  74. package/build/languageProcessing/helpers/image/getAltAttribute.js +3 -9
  75. package/build/languageProcessing/helpers/image/getAltAttribute.js.map +1 -1
  76. package/build/languageProcessing/helpers/image/getImagesInTree.js +1 -7
  77. package/build/languageProcessing/helpers/image/getImagesInTree.js.map +1 -1
  78. package/build/languageProcessing/helpers/image/imageInText.js +5 -12
  79. package/build/languageProcessing/helpers/image/imageInText.js.map +1 -1
  80. package/build/languageProcessing/helpers/index.js +5 -40
  81. package/build/languageProcessing/helpers/index.js.map +1 -1
  82. package/build/languageProcessing/helpers/language/getLanguage.js +1 -7
  83. package/build/languageProcessing/helpers/language/getLanguage.js.map +1 -1
  84. package/build/languageProcessing/helpers/link/checkNofollow.js +3 -10
  85. package/build/languageProcessing/helpers/link/checkNofollow.js.map +1 -1
  86. package/build/languageProcessing/helpers/link/getAnchorsFromText.js +1 -7
  87. package/build/languageProcessing/helpers/link/getAnchorsFromText.js.map +1 -1
  88. package/build/languageProcessing/helpers/link/getLinkType.js +7 -13
  89. package/build/languageProcessing/helpers/link/getLinkType.js.map +1 -1
  90. package/build/languageProcessing/helpers/match/findKeywordFormsInString.js +6 -13
  91. package/build/languageProcessing/helpers/match/findKeywordFormsInString.js.map +1 -1
  92. package/build/languageProcessing/helpers/match/isDoubleQuoted.js +4 -10
  93. package/build/languageProcessing/helpers/match/isDoubleQuoted.js.map +1 -1
  94. package/build/languageProcessing/helpers/match/matchTextWithArray.js +6 -12
  95. package/build/languageProcessing/helpers/match/matchTextWithArray.js.map +1 -1
  96. package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js +16 -22
  97. package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js.map +1 -1
  98. package/build/languageProcessing/helpers/match/matchTextWithWord.js +17 -23
  99. package/build/languageProcessing/helpers/match/matchTextWithWord.js.map +1 -1
  100. package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js +7 -14
  101. package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js.map +1 -1
  102. package/build/languageProcessing/helpers/match/processExactMatchRequest.js +3 -9
  103. package/build/languageProcessing/helpers/match/processExactMatchRequest.js.map +1 -1
  104. package/build/languageProcessing/helpers/morphology/baseStemmer.js +1 -7
  105. package/build/languageProcessing/helpers/morphology/baseStemmer.js.map +1 -1
  106. package/build/languageProcessing/helpers/morphology/buildFormRule.js +1 -7
  107. package/build/languageProcessing/helpers/morphology/buildFormRule.js.map +1 -1
  108. package/build/languageProcessing/helpers/morphology/buildTopicStems.js +13 -23
  109. package/build/languageProcessing/helpers/morphology/buildTopicStems.js.map +1 -1
  110. package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js +2 -9
  111. package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js.map +1 -1
  112. package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js +5 -13
  113. package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js.map +1 -1
  114. package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +1 -7
  115. package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js.map +1 -1
  116. package/build/languageProcessing/helpers/morphology/flattenSortLength.js +3 -8
  117. package/build/languageProcessing/helpers/morphology/flattenSortLength.js.map +1 -1
  118. package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +12 -18
  119. package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js.map +1 -1
  120. package/build/languageProcessing/helpers/morphology/regexHelpers.js +3 -11
  121. package/build/languageProcessing/helpers/morphology/regexHelpers.js.map +1 -1
  122. package/build/languageProcessing/helpers/morphology/stemHelpers.js +2 -9
  123. package/build/languageProcessing/helpers/morphology/stemHelpers.js.map +1 -1
  124. package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +1 -7
  125. package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js.map +1 -1
  126. package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +5 -11
  127. package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js.map +1 -1
  128. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +9 -15
  129. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js.map +1 -1
  130. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +9 -15
  131. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js.map +1 -1
  132. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +28 -34
  133. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js.map +1 -1
  134. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +1 -7
  135. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js.map +1 -1
  136. package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +3 -8
  137. package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js.map +1 -1
  138. package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +5 -11
  139. package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js.map +1 -1
  140. package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js +16 -28
  141. package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js.map +1 -1
  142. package/build/languageProcessing/helpers/regex/createRegexFromArray.js +10 -16
  143. package/build/languageProcessing/helpers/regex/createRegexFromArray.js.map +1 -1
  144. package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +4 -10
  145. package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js.map +1 -1
  146. package/build/languageProcessing/helpers/regex/createWordRegex.js +12 -18
  147. package/build/languageProcessing/helpers/regex/createWordRegex.js.map +1 -1
  148. package/build/languageProcessing/helpers/regex/matchStringWithRegex.js +1 -7
  149. package/build/languageProcessing/helpers/regex/matchStringWithRegex.js.map +1 -1
  150. package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +1 -7
  151. package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js.map +1 -1
  152. package/build/languageProcessing/helpers/sanitize/doubleQuotes.js +1 -7
  153. package/build/languageProcessing/helpers/sanitize/doubleQuotes.js.map +1 -1
  154. package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +3 -11
  155. package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js.map +1 -1
  156. package/build/languageProcessing/helpers/sanitize/mergeListItems.js +1 -7
  157. package/build/languageProcessing/helpers/sanitize/mergeListItems.js.map +1 -1
  158. package/build/languageProcessing/helpers/sanitize/parseSynonyms.js +5 -11
  159. package/build/languageProcessing/helpers/sanitize/parseSynonyms.js.map +1 -1
  160. package/build/languageProcessing/helpers/sanitize/quotes.js +4 -12
  161. package/build/languageProcessing/helpers/sanitize/quotes.js.map +1 -1
  162. package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js +1 -7
  163. package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js.map +1 -1
  164. package/build/languageProcessing/helpers/sanitize/removePunctuation.js +7 -13
  165. package/build/languageProcessing/helpers/sanitize/removePunctuation.js.map +1 -1
  166. package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +1 -7
  167. package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js.map +1 -1
  168. package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +1 -7
  169. package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js.map +1 -1
  170. package/build/languageProcessing/helpers/sanitize/removeURLs.js +1 -7
  171. package/build/languageProcessing/helpers/sanitize/removeURLs.js.map +1 -1
  172. package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +1 -7
  173. package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js.map +1 -1
  174. package/build/languageProcessing/helpers/sanitize/sanitizeString.js +5 -10
  175. package/build/languageProcessing/helpers/sanitize/sanitizeString.js.map +1 -1
  176. package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js +7 -16
  177. package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js.map +1 -1
  178. package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js +4 -10
  179. package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js.map +1 -1
  180. package/build/languageProcessing/helpers/sanitize/stripNumbers.js +4 -10
  181. package/build/languageProcessing/helpers/sanitize/stripNumbers.js.map +1 -1
  182. package/build/languageProcessing/helpers/sanitize/stripSpaces.js +1 -7
  183. package/build/languageProcessing/helpers/sanitize/stripSpaces.js.map +1 -1
  184. package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js +2 -10
  185. package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js.map +1 -1
  186. package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js +2 -11
  187. package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js.map +1 -1
  188. package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js +22 -29
  189. package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js.map +1 -1
  190. package/build/languageProcessing/helpers/sentence/countSentences.js +4 -10
  191. package/build/languageProcessing/helpers/sentence/countSentences.js.map +1 -1
  192. package/build/languageProcessing/helpers/sentence/getSentences.js +13 -20
  193. package/build/languageProcessing/helpers/sentence/getSentences.js.map +1 -1
  194. package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js +2 -9
  195. package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js.map +1 -1
  196. package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +4 -10
  197. package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js.map +1 -1
  198. package/build/languageProcessing/helpers/sentence/sentencesLength.js +7 -13
  199. package/build/languageProcessing/helpers/sentence/sentencesLength.js.map +1 -1
  200. package/build/languageProcessing/helpers/syllables/DeviationFragment.js +5 -11
  201. package/build/languageProcessing/helpers/syllables/DeviationFragment.js.map +1 -1
  202. package/build/languageProcessing/helpers/syllables/countSyllables.js +23 -30
  203. package/build/languageProcessing/helpers/syllables/countSyllables.js.map +1 -1
  204. package/build/languageProcessing/helpers/syllables/syllableCountIterator.js +7 -14
  205. package/build/languageProcessing/helpers/syllables/syllableCountIterator.js.map +1 -1
  206. package/build/languageProcessing/helpers/syllables/syllableCountStep.js +5 -12
  207. package/build/languageProcessing/helpers/syllables/syllableCountStep.js.map +1 -1
  208. package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js +1 -7
  209. package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js.map +1 -1
  210. package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js +4 -10
  211. package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js.map +1 -1
  212. package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js +12 -23
  213. package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js.map +1 -1
  214. package/build/languageProcessing/helpers/transliterate/transliterate.js +3 -9
  215. package/build/languageProcessing/helpers/transliterate/transliterate.js.map +1 -1
  216. package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js +3 -9
  217. package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js.map +1 -1
  218. package/build/languageProcessing/helpers/url/parseSlug.js +1 -7
  219. package/build/languageProcessing/helpers/url/parseSlug.js.map +1 -1
  220. package/build/languageProcessing/helpers/url/url.js +7 -13
  221. package/build/languageProcessing/helpers/url/url.js.map +1 -1
  222. package/build/languageProcessing/helpers/word/addWordboundary.js +1 -7
  223. package/build/languageProcessing/helpers/word/addWordboundary.js.map +1 -1
  224. package/build/languageProcessing/helpers/word/areWordsInSentence.js +4 -10
  225. package/build/languageProcessing/helpers/word/areWordsInSentence.js.map +1 -1
  226. package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js +1 -7
  227. package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js.map +1 -1
  228. package/build/languageProcessing/helpers/word/countWords.js +4 -10
  229. package/build/languageProcessing/helpers/word/countWords.js.map +1 -1
  230. package/build/languageProcessing/helpers/word/createPunctuationTokens.js +5 -10
  231. package/build/languageProcessing/helpers/word/createPunctuationTokens.js.map +1 -1
  232. package/build/languageProcessing/helpers/word/filterWordsFromArray.js +4 -9
  233. package/build/languageProcessing/helpers/word/filterWordsFromArray.js.map +1 -1
  234. package/build/languageProcessing/helpers/word/followsIndex.js +5 -10
  235. package/build/languageProcessing/helpers/word/followsIndex.js.map +1 -1
  236. package/build/languageProcessing/helpers/word/getAllWordsFromTree.js +7 -13
  237. package/build/languageProcessing/helpers/word/getAllWordsFromTree.js.map +1 -1
  238. package/build/languageProcessing/helpers/word/getWords.js +9 -19
  239. package/build/languageProcessing/helpers/word/getWords.js.map +1 -1
  240. package/build/languageProcessing/helpers/word/includesIndex.js +5 -10
  241. package/build/languageProcessing/helpers/word/includesIndex.js.map +1 -1
  242. package/build/languageProcessing/helpers/word/indices.js +14 -25
  243. package/build/languageProcessing/helpers/word/indices.js.map +1 -1
  244. package/build/languageProcessing/helpers/word/markWordsInSentences.js +23 -35
  245. package/build/languageProcessing/helpers/word/markWordsInSentences.js.map +1 -1
  246. package/build/languageProcessing/helpers/word/matchWordInSentence.js +8 -15
  247. package/build/languageProcessing/helpers/word/matchWordInSentence.js.map +1 -1
  248. package/build/languageProcessing/helpers/word/splitIntoTokens.js +3 -9
  249. package/build/languageProcessing/helpers/word/splitIntoTokens.js.map +1 -1
  250. package/build/languageProcessing/index.js +41 -282
  251. package/build/languageProcessing/index.js.map +1 -1
  252. package/build/languageProcessing/languages/_default/Researcher.js +5 -13
  253. package/build/languageProcessing/languages/_default/Researcher.js.map +1 -1
  254. package/build/languageProcessing/languages/_default/helpers/getStemmer.js +3 -9
  255. package/build/languageProcessing/languages/_default/helpers/getStemmer.js.map +1 -1
  256. package/build/languageProcessing/languages/ar/Researcher.js +19 -27
  257. package/build/languageProcessing/languages/ar/Researcher.js.map +1 -1
  258. package/build/languageProcessing/languages/ar/config/firstWordExceptions.js +1 -7
  259. package/build/languageProcessing/languages/ar/config/firstWordExceptions.js.map +1 -1
  260. package/build/languageProcessing/languages/ar/config/functionWords.js +7 -13
  261. package/build/languageProcessing/languages/ar/config/functionWords.js.map +1 -1
  262. package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +1 -7
  263. package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js.map +1 -1
  264. package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js +2 -8
  265. package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js.map +1 -1
  266. package/build/languageProcessing/languages/ar/config/transitionWords.js +4 -10
  267. package/build/languageProcessing/languages/ar/config/transitionWords.js.map +1 -1
  268. package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js +2 -7
  269. package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js.map +1 -1
  270. package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js +6 -11
  271. package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js.map +1 -1
  272. package/build/languageProcessing/languages/ar/helpers/getStemmer.js +8 -14
  273. package/build/languageProcessing/languages/ar/helpers/getStemmer.js.map +1 -1
  274. package/build/languageProcessing/languages/ar/helpers/internal/stem.js +1 -7
  275. package/build/languageProcessing/languages/ar/helpers/internal/stem.js.map +1 -1
  276. package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js +5 -12
  277. package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js.map +1 -1
  278. package/build/languageProcessing/languages/ca/Researcher.js +11 -19
  279. package/build/languageProcessing/languages/ca/Researcher.js.map +1 -1
  280. package/build/languageProcessing/languages/ca/config/sentenceLength.js +1 -7
  281. package/build/languageProcessing/languages/ca/config/sentenceLength.js.map +1 -1
  282. package/build/languageProcessing/languages/ca/config/transitionWords.js +4 -10
  283. package/build/languageProcessing/languages/ca/config/transitionWords.js.map +1 -1
  284. package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js +2 -7
  285. package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js.map +1 -1
  286. package/build/languageProcessing/languages/ca/helpers/getStemmer.js +3 -9
  287. package/build/languageProcessing/languages/ca/helpers/getStemmer.js.map +1 -1
  288. package/build/languageProcessing/languages/cs/Researcher.js +17 -25
  289. package/build/languageProcessing/languages/cs/Researcher.js.map +1 -1
  290. package/build/languageProcessing/languages/cs/config/firstWordExceptions.js +1 -7
  291. package/build/languageProcessing/languages/cs/config/firstWordExceptions.js.map +1 -1
  292. package/build/languageProcessing/languages/cs/config/functionWords.js +4 -10
  293. package/build/languageProcessing/languages/cs/config/functionWords.js.map +1 -1
  294. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +2 -8
  295. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  296. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +2 -8
  297. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js.map +1 -1
  298. package/build/languageProcessing/languages/cs/config/stopWords.js +1 -7
  299. package/build/languageProcessing/languages/cs/config/stopWords.js.map +1 -1
  300. package/build/languageProcessing/languages/cs/config/transitionWords.js +4 -10
  301. package/build/languageProcessing/languages/cs/config/transitionWords.js.map +1 -1
  302. package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js +2 -7
  303. package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js.map +1 -1
  304. package/build/languageProcessing/languages/cs/helpers/getClauses.js +9 -16
  305. package/build/languageProcessing/languages/cs/helpers/getClauses.js.map +1 -1
  306. package/build/languageProcessing/languages/cs/helpers/getStemmer.js +8 -14
  307. package/build/languageProcessing/languages/cs/helpers/getStemmer.js.map +1 -1
  308. package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js +6 -12
  309. package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js.map +1 -1
  310. package/build/languageProcessing/languages/cs/helpers/internal/stem.js +1 -7
  311. package/build/languageProcessing/languages/cs/helpers/internal/stem.js.map +1 -1
  312. package/build/languageProcessing/languages/cs/values/Clause.js +5 -12
  313. package/build/languageProcessing/languages/cs/values/Clause.js.map +1 -1
  314. package/build/languageProcessing/languages/de/Researcher.js +27 -35
  315. package/build/languageProcessing/languages/de/Researcher.js.map +1 -1
  316. package/build/languageProcessing/languages/de/config/firstWordExceptions.js +1 -7
  317. package/build/languageProcessing/languages/de/config/firstWordExceptions.js.map +1 -1
  318. package/build/languageProcessing/languages/de/config/functionWords.js +11 -19
  319. package/build/languageProcessing/languages/de/config/functionWords.js.map +1 -1
  320. package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +1 -7
  321. package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js.map +1 -1
  322. package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +4 -10
  323. package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  324. package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +1 -7
  325. package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js.map +1 -1
  326. package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +1 -7
  327. package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js.map +1 -1
  328. package/build/languageProcessing/languages/de/config/keyphraseLength.js +1 -7
  329. package/build/languageProcessing/languages/de/config/keyphraseLength.js.map +1 -1
  330. package/build/languageProcessing/languages/de/config/stopWords.js +1 -7
  331. package/build/languageProcessing/languages/de/config/stopWords.js.map +1 -1
  332. package/build/languageProcessing/languages/de/config/transitionWords.js +4 -10
  333. package/build/languageProcessing/languages/de/config/transitionWords.js.map +1 -1
  334. package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js +2 -7
  335. package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js.map +1 -1
  336. package/build/languageProcessing/languages/de/config/wordComplexity.js +1 -7
  337. package/build/languageProcessing/languages/de/config/wordComplexity.js.map +1 -1
  338. package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +3 -9
  339. package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js.map +1 -1
  340. package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +1 -7
  341. package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js.map +1 -1
  342. package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +3 -8
  343. package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js.map +1 -1
  344. package/build/languageProcessing/languages/de/helpers/getClauses.js +9 -16
  345. package/build/languageProcessing/languages/de/helpers/getClauses.js.map +1 -1
  346. package/build/languageProcessing/languages/de/helpers/getStemmer.js +8 -14
  347. package/build/languageProcessing/languages/de/helpers/getStemmer.js.map +1 -1
  348. package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +4 -11
  349. package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js.map +1 -1
  350. package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +4 -10
  351. package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
  352. package/build/languageProcessing/languages/de/helpers/internal/determineStem.js +10 -16
  353. package/build/languageProcessing/languages/de/helpers/internal/determineStem.js.map +1 -1
  354. package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js +9 -16
  355. package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js.map +1 -1
  356. package/build/languageProcessing/languages/de/helpers/internal/stem.js +1 -7
  357. package/build/languageProcessing/languages/de/helpers/internal/stem.js.map +1 -1
  358. package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +4 -10
  359. package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js.map +1 -1
  360. package/build/languageProcessing/languages/de/values/Clause.js +11 -18
  361. package/build/languageProcessing/languages/de/values/Clause.js.map +1 -1
  362. package/build/languageProcessing/languages/el/Researcher.js +18 -26
  363. package/build/languageProcessing/languages/el/Researcher.js.map +1 -1
  364. package/build/languageProcessing/languages/el/config/firstWordExceptions.js +1 -7
  365. package/build/languageProcessing/languages/el/config/firstWordExceptions.js.map +1 -1
  366. package/build/languageProcessing/languages/el/config/functionWords.js +4 -10
  367. package/build/languageProcessing/languages/el/config/functionWords.js.map +1 -1
  368. package/build/languageProcessing/languages/el/config/internal/auxiliaries.js +1 -7
  369. package/build/languageProcessing/languages/el/config/internal/auxiliaries.js.map +1 -1
  370. package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +1 -7
  371. package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js.map +1 -1
  372. package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +1 -7
  373. package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js.map +1 -1
  374. package/build/languageProcessing/languages/el/config/stopWords.js +1 -7
  375. package/build/languageProcessing/languages/el/config/stopWords.js.map +1 -1
  376. package/build/languageProcessing/languages/el/config/transitionWords.js +4 -10
  377. package/build/languageProcessing/languages/el/config/transitionWords.js.map +1 -1
  378. package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js +2 -7
  379. package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js.map +1 -1
  380. package/build/languageProcessing/languages/el/helpers/getClauses.js +9 -16
  381. package/build/languageProcessing/languages/el/helpers/getClauses.js.map +1 -1
  382. package/build/languageProcessing/languages/el/helpers/getStemmer.js +7 -14
  383. package/build/languageProcessing/languages/el/helpers/getStemmer.js.map +1 -1
  384. package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js +3 -9
  385. package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js.map +1 -1
  386. package/build/languageProcessing/languages/el/helpers/internal/stem.js +4 -13
  387. package/build/languageProcessing/languages/el/helpers/internal/stem.js.map +1 -1
  388. package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js +7 -14
  389. package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js.map +1 -1
  390. package/build/languageProcessing/languages/el/values/Clause.js +6 -12
  391. package/build/languageProcessing/languages/el/values/Clause.js.map +1 -1
  392. package/build/languageProcessing/languages/en/Researcher.js +21 -29
  393. package/build/languageProcessing/languages/en/Researcher.js.map +1 -1
  394. package/build/languageProcessing/languages/en/config/abbreviations.js +2 -8
  395. package/build/languageProcessing/languages/en/config/abbreviations.js.map +1 -1
  396. package/build/languageProcessing/languages/en/config/firstWordExceptions.js +1 -7
  397. package/build/languageProcessing/languages/en/config/firstWordExceptions.js.map +1 -1
  398. package/build/languageProcessing/languages/en/config/functionWords.js +11 -18
  399. package/build/languageProcessing/languages/en/config/functionWords.js.map +1 -1
  400. package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +6 -12
  401. package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  402. package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +1 -7
  403. package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js.map +1 -1
  404. package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +1 -7
  405. package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js.map +1 -1
  406. package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js +1 -7
  407. package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js.map +1 -1
  408. package/build/languageProcessing/languages/en/config/stopWords.js +1 -7
  409. package/build/languageProcessing/languages/en/config/stopWords.js.map +1 -1
  410. package/build/languageProcessing/languages/en/config/transitionWords.js +4 -10
  411. package/build/languageProcessing/languages/en/config/transitionWords.js.map +1 -1
  412. package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js +2 -7
  413. package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js.map +1 -1
  414. package/build/languageProcessing/languages/en/config/wordComplexity.js +1 -7
  415. package/build/languageProcessing/languages/en/config/wordComplexity.js.map +1 -1
  416. package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +3 -9
  417. package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js.map +1 -1
  418. package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +4 -10
  419. package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js.map +1 -1
  420. package/build/languageProcessing/languages/en/helpers/getClauses.js +15 -22
  421. package/build/languageProcessing/languages/en/helpers/getClauses.js.map +1 -1
  422. package/build/languageProcessing/languages/en/helpers/getStemmer.js +8 -14
  423. package/build/languageProcessing/languages/en/helpers/getStemmer.js.map +1 -1
  424. package/build/languageProcessing/languages/en/helpers/internal/determineStem.js +21 -32
  425. package/build/languageProcessing/languages/en/helpers/internal/determineStem.js.map +1 -1
  426. package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +6 -13
  427. package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js.map +1 -1
  428. package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js +8 -14
  429. package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js.map +1 -1
  430. package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js +6 -16
  431. package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js.map +1 -1
  432. package/build/languageProcessing/languages/en/values/Clause.js +10 -17
  433. package/build/languageProcessing/languages/en/values/Clause.js.map +1 -1
  434. package/build/languageProcessing/languages/es/Researcher.js +23 -31
  435. package/build/languageProcessing/languages/es/Researcher.js.map +1 -1
  436. package/build/languageProcessing/languages/es/config/firstWordExceptions.js +1 -7
  437. package/build/languageProcessing/languages/es/config/firstWordExceptions.js.map +1 -1
  438. package/build/languageProcessing/languages/es/config/functionWords.js +11 -17
  439. package/build/languageProcessing/languages/es/config/functionWords.js.map +1 -1
  440. package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +1 -7
  441. package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  442. package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +1 -7
  443. package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js.map +1 -1
  444. package/build/languageProcessing/languages/es/config/sentenceLength.js +1 -7
  445. package/build/languageProcessing/languages/es/config/sentenceLength.js.map +1 -1
  446. package/build/languageProcessing/languages/es/config/stopWords.js +1 -7
  447. package/build/languageProcessing/languages/es/config/stopWords.js.map +1 -1
  448. package/build/languageProcessing/languages/es/config/transitionWords.js +4 -10
  449. package/build/languageProcessing/languages/es/config/transitionWords.js.map +1 -1
  450. package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js +2 -7
  451. package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js.map +1 -1
  452. package/build/languageProcessing/languages/es/config/wordComplexity.js +1 -7
  453. package/build/languageProcessing/languages/es/config/wordComplexity.js.map +1 -1
  454. package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +3 -9
  455. package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js.map +1 -1
  456. package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +1 -7
  457. package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js.map +1 -1
  458. package/build/languageProcessing/languages/es/helpers/getClauses.js +10 -17
  459. package/build/languageProcessing/languages/es/helpers/getClauses.js.map +1 -1
  460. package/build/languageProcessing/languages/es/helpers/getStemmer.js +8 -14
  461. package/build/languageProcessing/languages/es/helpers/getStemmer.js.map +1 -1
  462. package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +7 -13
  463. package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js.map +1 -1
  464. package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js +6 -12
  465. package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js.map +1 -1
  466. package/build/languageProcessing/languages/es/helpers/internal/stem.js +5 -13
  467. package/build/languageProcessing/languages/es/helpers/internal/stem.js.map +1 -1
  468. package/build/languageProcessing/languages/es/values/Clause.js +7 -14
  469. package/build/languageProcessing/languages/es/values/Clause.js.map +1 -1
  470. package/build/languageProcessing/languages/fa/Researcher.js +19 -27
  471. package/build/languageProcessing/languages/fa/Researcher.js.map +1 -1
  472. package/build/languageProcessing/languages/fa/config/firstWordExceptions.js +1 -7
  473. package/build/languageProcessing/languages/fa/config/firstWordExceptions.js.map +1 -1
  474. package/build/languageProcessing/languages/fa/config/functionWords.js +4 -10
  475. package/build/languageProcessing/languages/fa/config/functionWords.js.map +1 -1
  476. package/build/languageProcessing/languages/fa/config/internal/participles.js +1 -7
  477. package/build/languageProcessing/languages/fa/config/internal/participles.js.map +1 -1
  478. package/build/languageProcessing/languages/fa/config/sentenceLength.js +1 -7
  479. package/build/languageProcessing/languages/fa/config/sentenceLength.js.map +1 -1
  480. package/build/languageProcessing/languages/fa/config/transitionWords.js +4 -10
  481. package/build/languageProcessing/languages/fa/config/transitionWords.js.map +1 -1
  482. package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js +2 -7
  483. package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js.map +1 -1
  484. package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js +3 -9
  485. package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js.map +1 -1
  486. package/build/languageProcessing/languages/fa/helpers/getStemmer.js +3 -9
  487. package/build/languageProcessing/languages/fa/helpers/getStemmer.js.map +1 -1
  488. package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js +6 -12
  489. package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js.map +1 -1
  490. package/build/languageProcessing/languages/fr/Researcher.js +21 -29
  491. package/build/languageProcessing/languages/fr/Researcher.js.map +1 -1
  492. package/build/languageProcessing/languages/fr/config/firstWordExceptions.js +1 -7
  493. package/build/languageProcessing/languages/fr/config/firstWordExceptions.js.map +1 -1
  494. package/build/languageProcessing/languages/fr/config/functionWords.js +11 -17
  495. package/build/languageProcessing/languages/fr/config/functionWords.js.map +1 -1
  496. package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +4 -9
  497. package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js.map +1 -1
  498. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +1 -7
  499. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  500. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +4 -9
  501. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js.map +1 -1
  502. package/build/languageProcessing/languages/fr/config/stopWords.js +1 -7
  503. package/build/languageProcessing/languages/fr/config/stopWords.js.map +1 -1
  504. package/build/languageProcessing/languages/fr/config/transitionWords.js +4 -10
  505. package/build/languageProcessing/languages/fr/config/transitionWords.js.map +1 -1
  506. package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js +2 -7
  507. package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js.map +1 -1
  508. package/build/languageProcessing/languages/fr/config/wordComplexity.js +1 -7
  509. package/build/languageProcessing/languages/fr/config/wordComplexity.js.map +1 -1
  510. package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +3 -9
  511. package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js.map +1 -1
  512. package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +3 -9
  513. package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js.map +1 -1
  514. package/build/languageProcessing/languages/fr/helpers/getClauses.js +10 -17
  515. package/build/languageProcessing/languages/fr/helpers/getClauses.js.map +1 -1
  516. package/build/languageProcessing/languages/fr/helpers/getStemmer.js +8 -14
  517. package/build/languageProcessing/languages/fr/helpers/getStemmer.js.map +1 -1
  518. package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js +11 -16
  519. package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js.map +1 -1
  520. package/build/languageProcessing/languages/fr/helpers/internal/stem.js +3 -10
  521. package/build/languageProcessing/languages/fr/helpers/internal/stem.js.map +1 -1
  522. package/build/languageProcessing/languages/fr/values/Clause.js +14 -20
  523. package/build/languageProcessing/languages/fr/values/Clause.js.map +1 -1
  524. package/build/languageProcessing/languages/he/Researcher.js +21 -29
  525. package/build/languageProcessing/languages/he/Researcher.js.map +1 -1
  526. package/build/languageProcessing/languages/he/config/firstWordExceptions.js +1 -7
  527. package/build/languageProcessing/languages/he/config/firstWordExceptions.js.map +1 -1
  528. package/build/languageProcessing/languages/he/config/functionWords.js +4 -11
  529. package/build/languageProcessing/languages/he/config/functionWords.js.map +1 -1
  530. package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js +1 -7
  531. package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js.map +1 -1
  532. package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js +1 -7
  533. package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js.map +1 -1
  534. package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js +1 -7
  535. package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js.map +1 -1
  536. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +1 -7
  537. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js.map +1 -1
  538. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +1 -7
  539. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js.map +1 -1
  540. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +1 -7
  541. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js.map +1 -1
  542. package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js +2 -8
  543. package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js.map +1 -1
  544. package/build/languageProcessing/languages/he/config/sentenceLength.js +1 -7
  545. package/build/languageProcessing/languages/he/config/sentenceLength.js.map +1 -1
  546. package/build/languageProcessing/languages/he/config/transitionWords.js +4 -10
  547. package/build/languageProcessing/languages/he/config/transitionWords.js.map +1 -1
  548. package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js +2 -7
  549. package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js.map +1 -1
  550. package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js +6 -11
  551. package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js.map +1 -1
  552. package/build/languageProcessing/languages/he/helpers/getStemmer.js +8 -14
  553. package/build/languageProcessing/languages/he/helpers/getStemmer.js.map +1 -1
  554. package/build/languageProcessing/languages/he/helpers/internal/stem.js +1 -7
  555. package/build/languageProcessing/languages/he/helpers/internal/stem.js.map +1 -1
  556. package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js +10 -16
  557. package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js.map +1 -1
  558. package/build/languageProcessing/languages/he/helpers/stem.js +1 -7
  559. package/build/languageProcessing/languages/he/helpers/stem.js.map +1 -1
  560. package/build/languageProcessing/languages/hu/Researcher.js +19 -27
  561. package/build/languageProcessing/languages/hu/Researcher.js.map +1 -1
  562. package/build/languageProcessing/languages/hu/config/firstWordExceptions.js +1 -7
  563. package/build/languageProcessing/languages/hu/config/firstWordExceptions.js.map +1 -1
  564. package/build/languageProcessing/languages/hu/config/functionWords.js +4 -10
  565. package/build/languageProcessing/languages/hu/config/functionWords.js.map +1 -1
  566. package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js +1 -7
  567. package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js.map +1 -1
  568. package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +3 -9
  569. package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js.map +1 -1
  570. package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +2 -7
  571. package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js.map +1 -1
  572. package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js +1 -7
  573. package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js.map +1 -1
  574. package/build/languageProcessing/languages/hu/config/internal/participles.js +2 -7
  575. package/build/languageProcessing/languages/hu/config/internal/participles.js.map +1 -1
  576. package/build/languageProcessing/languages/hu/config/stopWords.js +2 -7
  577. package/build/languageProcessing/languages/hu/config/stopWords.js.map +1 -1
  578. package/build/languageProcessing/languages/hu/config/transitionWords.js +4 -10
  579. package/build/languageProcessing/languages/hu/config/transitionWords.js.map +1 -1
  580. package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js +2 -7
  581. package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js.map +1 -1
  582. package/build/languageProcessing/languages/hu/helpers/getClauses.js +9 -16
  583. package/build/languageProcessing/languages/hu/helpers/getClauses.js.map +1 -1
  584. package/build/languageProcessing/languages/hu/helpers/getStemmer.js +8 -14
  585. package/build/languageProcessing/languages/hu/helpers/getStemmer.js.map +1 -1
  586. package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js +6 -12
  587. package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js.map +1 -1
  588. package/build/languageProcessing/languages/hu/helpers/internal/stem.js +1 -7
  589. package/build/languageProcessing/languages/hu/helpers/internal/stem.js.map +1 -1
  590. package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js +9 -15
  591. package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js.map +1 -1
  592. package/build/languageProcessing/languages/hu/values/Clause.js +8 -14
  593. package/build/languageProcessing/languages/hu/values/Clause.js.map +1 -1
  594. package/build/languageProcessing/languages/id/Researcher.js +17 -25
  595. package/build/languageProcessing/languages/id/Researcher.js.map +1 -1
  596. package/build/languageProcessing/languages/id/config/firstWordExceptions.js +1 -7
  597. package/build/languageProcessing/languages/id/config/firstWordExceptions.js.map +1 -1
  598. package/build/languageProcessing/languages/id/config/functionWords.js +8 -16
  599. package/build/languageProcessing/languages/id/config/functionWords.js.map +1 -1
  600. package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +1 -7
  601. package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js.map +1 -1
  602. package/build/languageProcessing/languages/id/config/transitionWords.js +4 -10
  603. package/build/languageProcessing/languages/id/config/transitionWords.js.map +1 -1
  604. package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js +2 -7
  605. package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js.map +1 -1
  606. package/build/languageProcessing/languages/id/helpers/getStemmer.js +8 -14
  607. package/build/languageProcessing/languages/id/helpers/getStemmer.js.map +1 -1
  608. package/build/languageProcessing/languages/id/helpers/internal/stem.js +29 -34
  609. package/build/languageProcessing/languages/id/helpers/internal/stem.js.map +1 -1
  610. package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js +5 -13
  611. package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js.map +1 -1
  612. package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js +5 -12
  613. package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js.map +1 -1
  614. package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +3 -9
  615. package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js.map +1 -1
  616. package/build/languageProcessing/languages/it/Researcher.js +23 -31
  617. package/build/languageProcessing/languages/it/Researcher.js.map +1 -1
  618. package/build/languageProcessing/languages/it/config/firstWordExceptions.js +1 -7
  619. package/build/languageProcessing/languages/it/config/firstWordExceptions.js.map +1 -1
  620. package/build/languageProcessing/languages/it/config/functionWords.js +11 -17
  621. package/build/languageProcessing/languages/it/config/functionWords.js.map +1 -1
  622. package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +1 -7
  623. package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  624. package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +1 -7
  625. package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js.map +1 -1
  626. package/build/languageProcessing/languages/it/config/sentenceLength.js +1 -7
  627. package/build/languageProcessing/languages/it/config/sentenceLength.js.map +1 -1
  628. package/build/languageProcessing/languages/it/config/stopWords.js +1 -7
  629. package/build/languageProcessing/languages/it/config/stopWords.js.map +1 -1
  630. package/build/languageProcessing/languages/it/config/transitionWords.js +4 -10
  631. package/build/languageProcessing/languages/it/config/transitionWords.js.map +1 -1
  632. package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js +1 -7
  633. package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js.map +1 -1
  634. package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +3 -9
  635. package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js.map +1 -1
  636. package/build/languageProcessing/languages/it/helpers/getClauses.js +10 -17
  637. package/build/languageProcessing/languages/it/helpers/getClauses.js.map +1 -1
  638. package/build/languageProcessing/languages/it/helpers/getStemmer.js +8 -14
  639. package/build/languageProcessing/languages/it/helpers/getStemmer.js.map +1 -1
  640. package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js +6 -12
  641. package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js.map +1 -1
  642. package/build/languageProcessing/languages/it/helpers/internal/stem.js +3 -9
  643. package/build/languageProcessing/languages/it/helpers/internal/stem.js.map +1 -1
  644. package/build/languageProcessing/languages/it/values/Clause.js +7 -14
  645. package/build/languageProcessing/languages/it/values/Clause.js.map +1 -1
  646. package/build/languageProcessing/languages/ja/Researcher.js +51 -59
  647. package/build/languageProcessing/languages/ja/Researcher.js.map +1 -1
  648. package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +1 -7
  649. package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js.map +1 -1
  650. package/build/languageProcessing/languages/ja/config/firstWordExceptions.js +1 -7
  651. package/build/languageProcessing/languages/ja/config/firstWordExceptions.js.map +1 -1
  652. package/build/languageProcessing/languages/ja/config/functionWords.js +1 -7
  653. package/build/languageProcessing/languages/ja/config/functionWords.js.map +1 -1
  654. package/build/languageProcessing/languages/ja/config/keyphraseLength.js +1 -7
  655. package/build/languageProcessing/languages/ja/config/keyphraseLength.js.map +1 -1
  656. package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js +1 -7
  657. package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js.map +1 -1
  658. package/build/languageProcessing/languages/ja/config/paragraphLength.js +1 -7
  659. package/build/languageProcessing/languages/ja/config/paragraphLength.js.map +1 -1
  660. package/build/languageProcessing/languages/ja/config/sentenceLength.js +1 -7
  661. package/build/languageProcessing/languages/ja/config/sentenceLength.js.map +1 -1
  662. package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js +1 -7
  663. package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js.map +1 -1
  664. package/build/languageProcessing/languages/ja/config/textLength.js +1 -7
  665. package/build/languageProcessing/languages/ja/config/textLength.js.map +1 -1
  666. package/build/languageProcessing/languages/ja/config/topicLength.js +1 -7
  667. package/build/languageProcessing/languages/ja/config/topicLength.js.map +1 -1
  668. package/build/languageProcessing/languages/ja/config/transitionWords.js +2 -7
  669. package/build/languageProcessing/languages/ja/config/transitionWords.js.map +1 -1
  670. package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +16 -22
  671. package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js.map +1 -1
  672. package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +5 -11
  673. package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js.map +1 -1
  674. package/build/languageProcessing/languages/ja/customResearches/getWordForms.js +11 -17
  675. package/build/languageProcessing/languages/ja/customResearches/getWordForms.js.map +1 -1
  676. package/build/languageProcessing/languages/ja/customResearches/textLength.js +3 -9
  677. package/build/languageProcessing/languages/ja/customResearches/textLength.js.map +1 -1
  678. package/build/languageProcessing/languages/ja/helpers/countCharacters.js +6 -12
  679. package/build/languageProcessing/languages/ja/helpers/countCharacters.js.map +1 -1
  680. package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js +8 -14
  681. package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js.map +1 -1
  682. package/build/languageProcessing/languages/ja/helpers/getContentWords.js +5 -11
  683. package/build/languageProcessing/languages/ja/helpers/getContentWords.js.map +1 -1
  684. package/build/languageProcessing/languages/ja/helpers/getWords.js +8 -15
  685. package/build/languageProcessing/languages/ja/helpers/getWords.js.map +1 -1
  686. package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +6 -13
  687. package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js.map +1 -1
  688. package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js +4 -9
  689. package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js.map +1 -1
  690. package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js +3 -9
  691. package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js.map +1 -1
  692. package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js +7 -13
  693. package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js.map +1 -1
  694. package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js +3 -9
  695. package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js.map +1 -1
  696. package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +4 -10
  697. package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js.map +1 -1
  698. package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +5 -11
  699. package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js.map +1 -1
  700. package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +1 -7
  701. package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js.map +1 -1
  702. package/build/languageProcessing/languages/nb/Researcher.js +17 -25
  703. package/build/languageProcessing/languages/nb/Researcher.js.map +1 -1
  704. package/build/languageProcessing/languages/nb/config/firstWordExceptions.js +1 -7
  705. package/build/languageProcessing/languages/nb/config/firstWordExceptions.js.map +1 -1
  706. package/build/languageProcessing/languages/nb/config/functionWords.js +5 -11
  707. package/build/languageProcessing/languages/nb/config/functionWords.js.map +1 -1
  708. package/build/languageProcessing/languages/nb/config/internal/participles.js +2 -7
  709. package/build/languageProcessing/languages/nb/config/internal/participles.js.map +1 -1
  710. package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +1 -7
  711. package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  712. package/build/languageProcessing/languages/nb/config/stopWords.js +1 -7
  713. package/build/languageProcessing/languages/nb/config/stopWords.js.map +1 -1
  714. package/build/languageProcessing/languages/nb/config/transitionWords.js +4 -10
  715. package/build/languageProcessing/languages/nb/config/transitionWords.js.map +1 -1
  716. package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js +2 -7
  717. package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js.map +1 -1
  718. package/build/languageProcessing/languages/nb/helpers/getClauses.js +11 -18
  719. package/build/languageProcessing/languages/nb/helpers/getClauses.js.map +1 -1
  720. package/build/languageProcessing/languages/nb/helpers/getStemmer.js +8 -14
  721. package/build/languageProcessing/languages/nb/helpers/getStemmer.js.map +1 -1
  722. package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js +8 -14
  723. package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js.map +1 -1
  724. package/build/languageProcessing/languages/nb/helpers/internal/stem.js +1 -7
  725. package/build/languageProcessing/languages/nb/helpers/internal/stem.js.map +1 -1
  726. package/build/languageProcessing/languages/nb/values/Clause.js +8 -14
  727. package/build/languageProcessing/languages/nb/values/Clause.js.map +1 -1
  728. package/build/languageProcessing/languages/nl/Researcher.js +23 -31
  729. package/build/languageProcessing/languages/nl/Researcher.js.map +1 -1
  730. package/build/languageProcessing/languages/nl/config/firstWordExceptions.js +1 -7
  731. package/build/languageProcessing/languages/nl/config/firstWordExceptions.js.map +1 -1
  732. package/build/languageProcessing/languages/nl/config/functionWords.js +10 -16
  733. package/build/languageProcessing/languages/nl/config/functionWords.js.map +1 -1
  734. package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js +1 -7
  735. package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js.map +1 -1
  736. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +1 -7
  737. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  738. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +1 -7
  739. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js.map +1 -1
  740. package/build/languageProcessing/languages/nl/config/keyphraseLength.js +1 -7
  741. package/build/languageProcessing/languages/nl/config/keyphraseLength.js.map +1 -1
  742. package/build/languageProcessing/languages/nl/config/stopWords.js +1 -7
  743. package/build/languageProcessing/languages/nl/config/stopWords.js.map +1 -1
  744. package/build/languageProcessing/languages/nl/config/transitionWords.js +4 -10
  745. package/build/languageProcessing/languages/nl/config/transitionWords.js.map +1 -1
  746. package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js +1 -7
  747. package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js.map +1 -1
  748. package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +3 -9
  749. package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js.map +1 -1
  750. package/build/languageProcessing/languages/nl/helpers/getClauses.js +9 -16
  751. package/build/languageProcessing/languages/nl/helpers/getClauses.js.map +1 -1
  752. package/build/languageProcessing/languages/nl/helpers/getStemmer.js +8 -14
  753. package/build/languageProcessing/languages/nl/helpers/getStemmer.js.map +1 -1
  754. package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +7 -13
  755. package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js.map +1 -1
  756. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +8 -14
  757. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
  758. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +10 -15
  759. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js.map +1 -1
  760. package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js +10 -16
  761. package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js.map +1 -1
  762. package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js +7 -13
  763. package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js.map +1 -1
  764. package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +7 -12
  765. package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js.map +1 -1
  766. package/build/languageProcessing/languages/nl/helpers/internal/stem.js +17 -23
  767. package/build/languageProcessing/languages/nl/helpers/internal/stem.js.map +1 -1
  768. package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +4 -11
  769. package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js.map +1 -1
  770. package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +8 -14
  771. package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js.map +1 -1
  772. package/build/languageProcessing/languages/nl/values/Clause.js +10 -16
  773. package/build/languageProcessing/languages/nl/values/Clause.js.map +1 -1
  774. package/build/languageProcessing/languages/pl/Researcher.js +19 -27
  775. package/build/languageProcessing/languages/pl/Researcher.js.map +1 -1
  776. package/build/languageProcessing/languages/pl/config/firstWordExceptions.js +1 -7
  777. package/build/languageProcessing/languages/pl/config/firstWordExceptions.js.map +1 -1
  778. package/build/languageProcessing/languages/pl/config/functionWords.js +9 -16
  779. package/build/languageProcessing/languages/pl/config/functionWords.js.map +1 -1
  780. package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js +1 -7
  781. package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js.map +1 -1
  782. package/build/languageProcessing/languages/pl/config/internal/participles.js +1 -7
  783. package/build/languageProcessing/languages/pl/config/internal/participles.js.map +1 -1
  784. package/build/languageProcessing/languages/pl/config/sentenceLength.js +1 -7
  785. package/build/languageProcessing/languages/pl/config/sentenceLength.js.map +1 -1
  786. package/build/languageProcessing/languages/pl/config/stopWords.js +1 -7
  787. package/build/languageProcessing/languages/pl/config/stopWords.js.map +1 -1
  788. package/build/languageProcessing/languages/pl/config/transitionWords.js +4 -10
  789. package/build/languageProcessing/languages/pl/config/transitionWords.js.map +1 -1
  790. package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js +2 -7
  791. package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js.map +1 -1
  792. package/build/languageProcessing/languages/pl/helpers/getClauses.js +9 -16
  793. package/build/languageProcessing/languages/pl/helpers/getClauses.js.map +1 -1
  794. package/build/languageProcessing/languages/pl/helpers/getStemmer.js +8 -14
  795. package/build/languageProcessing/languages/pl/helpers/getStemmer.js.map +1 -1
  796. package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js +7 -13
  797. package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js.map +1 -1
  798. package/build/languageProcessing/languages/pl/helpers/internal/stem.js +1 -7
  799. package/build/languageProcessing/languages/pl/helpers/internal/stem.js.map +1 -1
  800. package/build/languageProcessing/languages/pl/values/Clause.js +8 -14
  801. package/build/languageProcessing/languages/pl/values/Clause.js.map +1 -1
  802. package/build/languageProcessing/languages/pt/Researcher.js +23 -31
  803. package/build/languageProcessing/languages/pt/Researcher.js.map +1 -1
  804. package/build/languageProcessing/languages/pt/config/firstWordExceptions.js +1 -7
  805. package/build/languageProcessing/languages/pt/config/firstWordExceptions.js.map +1 -1
  806. package/build/languageProcessing/languages/pt/config/functionWords.js +10 -16
  807. package/build/languageProcessing/languages/pt/config/functionWords.js.map +1 -1
  808. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +1 -7
  809. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  810. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +1 -7
  811. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js.map +1 -1
  812. package/build/languageProcessing/languages/pt/config/sentenceLength.js +1 -7
  813. package/build/languageProcessing/languages/pt/config/sentenceLength.js.map +1 -1
  814. package/build/languageProcessing/languages/pt/config/stopWords.js +1 -7
  815. package/build/languageProcessing/languages/pt/config/stopWords.js.map +1 -1
  816. package/build/languageProcessing/languages/pt/config/transitionWords.js +4 -10
  817. package/build/languageProcessing/languages/pt/config/transitionWords.js.map +1 -1
  818. package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js +1 -7
  819. package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js.map +1 -1
  820. package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +3 -9
  821. package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js.map +1 -1
  822. package/build/languageProcessing/languages/pt/helpers/getClauses.js +10 -17
  823. package/build/languageProcessing/languages/pt/helpers/getClauses.js.map +1 -1
  824. package/build/languageProcessing/languages/pt/helpers/getStemmer.js +8 -14
  825. package/build/languageProcessing/languages/pt/helpers/getStemmer.js.map +1 -1
  826. package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js +6 -12
  827. package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js.map +1 -1
  828. package/build/languageProcessing/languages/pt/helpers/internal/stem.js +3 -9
  829. package/build/languageProcessing/languages/pt/helpers/internal/stem.js.map +1 -1
  830. package/build/languageProcessing/languages/pt/values/Clause.js +7 -14
  831. package/build/languageProcessing/languages/pt/values/Clause.js.map +1 -1
  832. package/build/languageProcessing/languages/ru/Researcher.js +23 -31
  833. package/build/languageProcessing/languages/ru/Researcher.js.map +1 -1
  834. package/build/languageProcessing/languages/ru/config/firstWordExceptions.js +1 -7
  835. package/build/languageProcessing/languages/ru/config/firstWordExceptions.js.map +1 -1
  836. package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +1 -7
  837. package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js.map +1 -1
  838. package/build/languageProcessing/languages/ru/config/functionWords.js +8 -14
  839. package/build/languageProcessing/languages/ru/config/functionWords.js.map +1 -1
  840. package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +2 -8
  841. package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js.map +1 -1
  842. package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +1 -7
  843. package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js.map +1 -1
  844. package/build/languageProcessing/languages/ru/config/sentenceLength.js +1 -7
  845. package/build/languageProcessing/languages/ru/config/sentenceLength.js.map +1 -1
  846. package/build/languageProcessing/languages/ru/config/transitionWords.js +4 -10
  847. package/build/languageProcessing/languages/ru/config/transitionWords.js.map +1 -1
  848. package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js +2 -7
  849. package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js.map +1 -1
  850. package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +3 -9
  851. package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js.map +1 -1
  852. package/build/languageProcessing/languages/ru/helpers/getStemmer.js +8 -14
  853. package/build/languageProcessing/languages/ru/helpers/getStemmer.js.map +1 -1
  854. package/build/languageProcessing/languages/ru/helpers/internal/stem.js +1 -7
  855. package/build/languageProcessing/languages/ru/helpers/internal/stem.js.map +1 -1
  856. package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js +6 -12
  857. package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js.map +1 -1
  858. package/build/languageProcessing/languages/sk/Researcher.js +17 -25
  859. package/build/languageProcessing/languages/sk/Researcher.js.map +1 -1
  860. package/build/languageProcessing/languages/sk/config/firstWordExceptions.js +1 -7
  861. package/build/languageProcessing/languages/sk/config/firstWordExceptions.js.map +1 -1
  862. package/build/languageProcessing/languages/sk/config/functionWords.js +5 -11
  863. package/build/languageProcessing/languages/sk/config/functionWords.js.map +1 -1
  864. package/build/languageProcessing/languages/sk/config/internal/nonPassives.js +1 -7
  865. package/build/languageProcessing/languages/sk/config/internal/nonPassives.js.map +1 -1
  866. package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +2 -8
  867. package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
  868. package/build/languageProcessing/languages/sk/config/stopWords.js +1 -7
  869. package/build/languageProcessing/languages/sk/config/stopWords.js.map +1 -1
  870. package/build/languageProcessing/languages/sk/config/transitionWords.js +4 -10
  871. package/build/languageProcessing/languages/sk/config/transitionWords.js.map +1 -1
  872. package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js +2 -7
  873. package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js.map +1 -1
  874. package/build/languageProcessing/languages/sk/helpers/getClauses.js +9 -16
  875. package/build/languageProcessing/languages/sk/helpers/getClauses.js.map +1 -1
  876. package/build/languageProcessing/languages/sk/helpers/getStemmer.js +8 -14
  877. package/build/languageProcessing/languages/sk/helpers/getStemmer.js.map +1 -1
  878. package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js +3 -9
  879. package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js.map +1 -1
  880. package/build/languageProcessing/languages/sk/helpers/internal/stem.js +1 -7
  881. package/build/languageProcessing/languages/sk/helpers/internal/stem.js.map +1 -1
  882. package/build/languageProcessing/languages/sk/values/Clause.js +8 -14
  883. package/build/languageProcessing/languages/sk/values/Clause.js.map +1 -1
  884. package/build/languageProcessing/languages/sv/Researcher.js +17 -25
  885. package/build/languageProcessing/languages/sv/Researcher.js.map +1 -1
  886. package/build/languageProcessing/languages/sv/config/firstWordExceptions.js +1 -7
  887. package/build/languageProcessing/languages/sv/config/firstWordExceptions.js.map +1 -1
  888. package/build/languageProcessing/languages/sv/config/functionWords.js +7 -13
  889. package/build/languageProcessing/languages/sv/config/functionWords.js.map +1 -1
  890. package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js +2 -7
  891. package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js.map +1 -1
  892. package/build/languageProcessing/languages/sv/config/keyphraseLength.js +1 -7
  893. package/build/languageProcessing/languages/sv/config/keyphraseLength.js.map +1 -1
  894. package/build/languageProcessing/languages/sv/config/transitionWords.js +4 -10
  895. package/build/languageProcessing/languages/sv/config/transitionWords.js.map +1 -1
  896. package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js +2 -7
  897. package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js.map +1 -1
  898. package/build/languageProcessing/languages/sv/helpers/getStemmer.js +8 -14
  899. package/build/languageProcessing/languages/sv/helpers/getStemmer.js.map +1 -1
  900. package/build/languageProcessing/languages/sv/helpers/internal/stem.js +1 -7
  901. package/build/languageProcessing/languages/sv/helpers/internal/stem.js.map +1 -1
  902. package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js +6 -12
  903. package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js.map +1 -1
  904. package/build/languageProcessing/languages/tr/Researcher.js +17 -25
  905. package/build/languageProcessing/languages/tr/Researcher.js.map +1 -1
  906. package/build/languageProcessing/languages/tr/config/firstWordExceptions.js +1 -7
  907. package/build/languageProcessing/languages/tr/config/firstWordExceptions.js.map +1 -1
  908. package/build/languageProcessing/languages/tr/config/functionWords.js +4 -10
  909. package/build/languageProcessing/languages/tr/config/functionWords.js.map +1 -1
  910. package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +3 -8
  911. package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js.map +1 -1
  912. package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js +1 -7
  913. package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js.map +1 -1
  914. package/build/languageProcessing/languages/tr/config/sentenceLength.js +1 -7
  915. package/build/languageProcessing/languages/tr/config/sentenceLength.js.map +1 -1
  916. package/build/languageProcessing/languages/tr/config/transitionWords.js +4 -10
  917. package/build/languageProcessing/languages/tr/config/transitionWords.js.map +1 -1
  918. package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js +2 -7
  919. package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js.map +1 -1
  920. package/build/languageProcessing/languages/tr/helpers/getStemmer.js +8 -14
  921. package/build/languageProcessing/languages/tr/helpers/getStemmer.js.map +1 -1
  922. package/build/languageProcessing/languages/tr/helpers/internal/stem.js +3 -9
  923. package/build/languageProcessing/languages/tr/helpers/internal/stem.js.map +1 -1
  924. package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js +9 -15
  925. package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js.map +1 -1
  926. package/build/languageProcessing/researches/altTagCount.js +10 -16
  927. package/build/languageProcessing/researches/altTagCount.js.map +1 -1
  928. package/build/languageProcessing/researches/checkRelatedKeywords.js +71 -0
  929. package/build/languageProcessing/researches/checkRelatedKeywords.js.map +1 -0
  930. package/build/languageProcessing/researches/countSentencesFromText.js +9 -15
  931. package/build/languageProcessing/researches/countSentencesFromText.js.map +1 -1
  932. package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js +19 -26
  933. package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js.map +1 -1
  934. package/build/languageProcessing/researches/findKeywordInFirstParagraph.js +12 -18
  935. package/build/languageProcessing/researches/findKeywordInFirstParagraph.js.map +1 -1
  936. package/build/languageProcessing/researches/findTransitionWords.js +16 -23
  937. package/build/languageProcessing/researches/findTransitionWords.js.map +1 -1
  938. package/build/languageProcessing/researches/functionWordsInKeyphrase.js +10 -16
  939. package/build/languageProcessing/researches/functionWordsInKeyphrase.js.map +1 -1
  940. package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js +21 -28
  941. package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js.map +1 -1
  942. package/build/languageProcessing/researches/getFleschReadingScore.js +18 -25
  943. package/build/languageProcessing/researches/getFleschReadingScore.js.map +1 -1
  944. package/build/languageProcessing/researches/getKeywordDensity.js +4 -11
  945. package/build/languageProcessing/researches/getKeywordDensity.js.map +1 -1
  946. package/build/languageProcessing/researches/getLinkStatistics.js +7 -13
  947. package/build/languageProcessing/researches/getLinkStatistics.js.map +1 -1
  948. package/build/languageProcessing/researches/getLinks.js +7 -13
  949. package/build/languageProcessing/researches/getLinks.js.map +1 -1
  950. package/build/languageProcessing/researches/getLongCenterAlignedTexts.js +1 -7
  951. package/build/languageProcessing/researches/getLongCenterAlignedTexts.js.map +1 -1
  952. package/build/languageProcessing/researches/getParagraphLength.js +15 -21
  953. package/build/languageProcessing/researches/getParagraphLength.js.map +1 -1
  954. package/build/languageProcessing/researches/getParagraphs.js +4 -9
  955. package/build/languageProcessing/researches/getParagraphs.js.map +1 -1
  956. package/build/languageProcessing/researches/getPassiveVoiceResult.js +21 -30
  957. package/build/languageProcessing/researches/getPassiveVoiceResult.js.map +1 -1
  958. package/build/languageProcessing/researches/getProminentWordsForInsights.js +12 -18
  959. package/build/languageProcessing/researches/getProminentWordsForInsights.js.map +1 -1
  960. package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js +20 -26
  961. package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js.map +1 -1
  962. package/build/languageProcessing/researches/getSentenceBeginnings.js +18 -24
  963. package/build/languageProcessing/researches/getSentenceBeginnings.js.map +1 -1
  964. package/build/languageProcessing/researches/getSubheadingTextLengths.js +12 -18
  965. package/build/languageProcessing/researches/getSubheadingTextLengths.js.map +1 -1
  966. package/build/languageProcessing/researches/getWordForms.js +13 -19
  967. package/build/languageProcessing/researches/getWordForms.js.map +1 -1
  968. package/build/languageProcessing/researches/h1s.js +1 -7
  969. package/build/languageProcessing/researches/h1s.js.map +1 -1
  970. package/build/languageProcessing/researches/imageCount.js +4 -10
  971. package/build/languageProcessing/researches/imageCount.js.map +1 -1
  972. package/build/languageProcessing/researches/index.js +4 -27
  973. package/build/languageProcessing/researches/index.js.map +1 -1
  974. package/build/languageProcessing/researches/keyphraseDistribution.js +22 -32
  975. package/build/languageProcessing/researches/keyphraseDistribution.js.map +1 -1
  976. package/build/languageProcessing/researches/keyphraseLength.js +1 -7
  977. package/build/languageProcessing/researches/keyphraseLength.js.map +1 -1
  978. package/build/languageProcessing/researches/keywordCount.js +21 -29
  979. package/build/languageProcessing/researches/keywordCount.js.map +1 -1
  980. package/build/languageProcessing/researches/keywordCountInUrl.js +8 -16
  981. package/build/languageProcessing/researches/keywordCountInUrl.js.map +1 -1
  982. package/build/languageProcessing/researches/matchKeywordInSubheadings.js +11 -17
  983. package/build/languageProcessing/researches/matchKeywordInSubheadings.js.map +1 -1
  984. package/build/languageProcessing/researches/metaDescriptionKeyword.js +6 -12
  985. package/build/languageProcessing/researches/metaDescriptionKeyword.js.map +1 -1
  986. package/build/languageProcessing/researches/metaDescriptionLength.js +3 -9
  987. package/build/languageProcessing/researches/metaDescriptionLength.js.map +1 -1
  988. package/build/languageProcessing/researches/pageTitleWidth.js +1 -7
  989. package/build/languageProcessing/researches/pageTitleWidth.js.map +1 -1
  990. package/build/languageProcessing/researches/readingTime.js +7 -13
  991. package/build/languageProcessing/researches/readingTime.js.map +1 -1
  992. package/build/languageProcessing/researches/sentences.js +7 -13
  993. package/build/languageProcessing/researches/sentences.js.map +1 -1
  994. package/build/languageProcessing/researches/videoCount.js +1 -7
  995. package/build/languageProcessing/researches/videoCount.js.map +1 -1
  996. package/build/languageProcessing/researches/wordComplexity.js +15 -21
  997. package/build/languageProcessing/researches/wordComplexity.js.map +1 -1
  998. package/build/languageProcessing/researches/wordCountInText.js +7 -13
  999. package/build/languageProcessing/researches/wordCountInText.js.map +1 -1
  1000. package/build/languageProcessing/values/Clause.js +1 -7
  1001. package/build/languageProcessing/values/Clause.js.map +1 -1
  1002. package/build/languageProcessing/values/ProminentWord.js +1 -7
  1003. package/build/languageProcessing/values/ProminentWord.js.map +1 -1
  1004. package/build/languageProcessing/values/Sentence.js +1 -7
  1005. package/build/languageProcessing/values/Sentence.js.map +1 -1
  1006. package/build/languageProcessing/values/index.js +4 -27
  1007. package/build/languageProcessing/values/index.js.map +1 -1
  1008. package/build/markers/addMark.js +1 -7
  1009. package/build/markers/addMark.js.map +1 -1
  1010. package/build/markers/addMarkSingleWord.js +7 -12
  1011. package/build/markers/addMarkSingleWord.js.map +1 -1
  1012. package/build/markers/index.js +3 -20
  1013. package/build/markers/index.js.map +1 -1
  1014. package/build/markers/removeDuplicateMarks.js +3 -8
  1015. package/build/markers/removeDuplicateMarks.js.map +1 -1
  1016. package/build/markers/removeMarks.js +1 -7
  1017. package/build/markers/removeMarks.js.map +1 -1
  1018. package/build/parse/build/build.js +17 -25
  1019. package/build/parse/build/build.js.map +1 -1
  1020. package/build/parse/build/index.js +7 -12
  1021. package/build/parse/build/index.js.map +1 -1
  1022. package/build/parse/build/private/adapt.js +15 -21
  1023. package/build/parse/build/private/adapt.js.map +1 -1
  1024. package/build/parse/build/private/adaptAttributes.js +3 -9
  1025. package/build/parse/build/private/adaptAttributes.js.map +1 -1
  1026. package/build/parse/build/private/alwaysFilterElements.js +9 -14
  1027. package/build/parse/build/private/alwaysFilterElements.js.map +1 -1
  1028. package/build/parse/build/private/combineIntoImplicitParagraphs.js +12 -18
  1029. package/build/parse/build/private/combineIntoImplicitParagraphs.js.map +1 -1
  1030. package/build/parse/build/private/filterBeforeTokenizing.js +5 -10
  1031. package/build/parse/build/private/filterBeforeTokenizing.js.map +1 -1
  1032. package/build/parse/build/private/filterHelpers.js +3 -11
  1033. package/build/parse/build/private/filterHelpers.js.map +1 -1
  1034. package/build/parse/build/private/filterTree.js +3 -8
  1035. package/build/parse/build/private/filterTree.js.map +1 -1
  1036. package/build/parse/build/private/getTextElementPositions.js +5 -10
  1037. package/build/parse/build/private/getTextElementPositions.js.map +1 -1
  1038. package/build/parse/build/private/helpers/parseClassAttribute.js +1 -7
  1039. package/build/parse/build/private/helpers/parseClassAttribute.js.map +1 -1
  1040. package/build/parse/build/private/isPhrasingContent.js +1 -7
  1041. package/build/parse/build/private/isPhrasingContent.js.map +1 -1
  1042. package/build/parse/build/private/parseBlocks.js +4 -11
  1043. package/build/parse/build/private/parseBlocks.js.map +1 -1
  1044. package/build/parse/build/private/tokenize.js +8 -14
  1045. package/build/parse/build/private/tokenize.js.map +1 -1
  1046. package/build/parse/language/LanguageProcessor.js +8 -15
  1047. package/build/parse/language/LanguageProcessor.js.map +1 -1
  1048. package/build/parse/structure/Heading.js +3 -9
  1049. package/build/parse/structure/Heading.js.map +1 -1
  1050. package/build/parse/structure/Node.js +8 -14
  1051. package/build/parse/structure/Node.js.map +1 -1
  1052. package/build/parse/structure/Paragraph.js +3 -9
  1053. package/build/parse/structure/Paragraph.js.map +1 -1
  1054. package/build/parse/structure/Sentence.js +1 -7
  1055. package/build/parse/structure/Sentence.js.map +1 -1
  1056. package/build/parse/structure/SourceCodeLocation.js +1 -7
  1057. package/build/parse/structure/SourceCodeLocation.js.map +1 -1
  1058. package/build/parse/structure/Text.js +3 -10
  1059. package/build/parse/structure/Text.js.map +1 -1
  1060. package/build/parse/structure/Token.js +3 -8
  1061. package/build/parse/structure/Token.js.map +1 -1
  1062. package/build/parse/structure/index.js +10 -33
  1063. package/build/parse/structure/index.js.map +1 -1
  1064. package/build/parse/traverse/findAllInTree.js +1 -7
  1065. package/build/parse/traverse/findAllInTree.js.map +1 -1
  1066. package/build/parse/traverse/index.js +8 -19
  1067. package/build/parse/traverse/index.js.map +1 -1
  1068. package/build/parse/traverse/innerText.js +3 -8
  1069. package/build/parse/traverse/innerText.js.map +1 -1
  1070. package/build/parsedPaper/ParsedPaper.js +1 -8
  1071. package/build/parsedPaper/ParsedPaper.js.map +1 -1
  1072. package/build/parsedPaper/assess/TreeAssessor.js +6 -12
  1073. package/build/parsedPaper/assess/TreeAssessor.js.map +1 -1
  1074. package/build/parsedPaper/assess/assessmentListFactories.js +1 -11
  1075. package/build/parsedPaper/assess/assessmentListFactories.js.map +1 -1
  1076. package/build/parsedPaper/assess/assessments/Assessment.js +15 -9
  1077. package/build/parsedPaper/assess/assessments/Assessment.js.map +1 -1
  1078. package/build/parsedPaper/assess/assessments/index.js +6 -13
  1079. package/build/parsedPaper/assess/assessments/index.js.map +1 -1
  1080. package/build/parsedPaper/assess/assessorFactories.js +16 -24
  1081. package/build/parsedPaper/assess/assessorFactories.js.map +1 -1
  1082. package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js +1 -9
  1083. package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js.map +1 -1
  1084. package/build/parsedPaper/assess/cornerstone/index.js +2 -10
  1085. package/build/parsedPaper/assess/cornerstone/index.js.map +1 -1
  1086. package/build/parsedPaper/assess/index.js +13 -29
  1087. package/build/parsedPaper/assess/index.js.map +1 -1
  1088. package/build/parsedPaper/build/PaperParser.js +5 -11
  1089. package/build/parsedPaper/build/PaperParser.js.map +1 -1
  1090. package/build/parsedPaper/build/linguisticParsing/Sentence.js +1 -7
  1091. package/build/parsedPaper/build/linguisticParsing/Sentence.js.map +1 -1
  1092. package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +16 -23
  1093. package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js.map +1 -1
  1094. package/build/parsedPaper/build/linguisticParsing/parseText.js +3 -9
  1095. package/build/parsedPaper/build/linguisticParsing/parseText.js.map +1 -1
  1096. package/build/parsedPaper/build/tree/TreeBuilder.js +3 -9
  1097. package/build/parsedPaper/build/tree/TreeBuilder.js.map +1 -1
  1098. package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js +5 -10
  1099. package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js.map +1 -1
  1100. package/build/parsedPaper/build/tree/cleanup/getElementContent.js +1 -7
  1101. package/build/parsedPaper/build/tree/cleanup/getElementContent.js.map +1 -1
  1102. package/build/parsedPaper/build/tree/cleanup/postParsing.js +5 -11
  1103. package/build/parsedPaper/build/tree/cleanup/postParsing.js.map +1 -1
  1104. package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js +21 -27
  1105. package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js.map +1 -1
  1106. package/build/parsedPaper/build/tree/html/buildTree.js +7 -13
  1107. package/build/parsedPaper/build/tree/html/buildTree.js.map +1 -1
  1108. package/build/parsedPaper/build/tree/html/htmlConstants.js +4 -9
  1109. package/build/parsedPaper/build/tree/html/htmlConstants.js.map +1 -1
  1110. package/build/parsedPaper/build/tree/index.js +3 -8
  1111. package/build/parsedPaper/build/tree/index.js.map +1 -1
  1112. package/build/parsedPaper/build/tree/metadata/buildTree.js +12 -18
  1113. package/build/parsedPaper/build/tree/metadata/buildTree.js.map +1 -1
  1114. package/build/parsedPaper/research/TreeResearcher.js +4 -9
  1115. package/build/parsedPaper/research/TreeResearcher.js.map +1 -1
  1116. package/build/parsedPaper/research/index.js +10 -12
  1117. package/build/parsedPaper/research/index.js.map +1 -1
  1118. package/build/parsedPaper/research/researches/Headings.js +5 -11
  1119. package/build/parsedPaper/research/researches/Headings.js.map +1 -1
  1120. package/build/parsedPaper/research/researches/LinkStatistics.js +6 -12
  1121. package/build/parsedPaper/research/researches/LinkStatistics.js.map +1 -1
  1122. package/build/parsedPaper/research/researches/Research.js +5 -10
  1123. package/build/parsedPaper/research/researches/Research.js.map +1 -1
  1124. package/build/parsedPaper/research/researches/index.js +1 -13
  1125. package/build/parsedPaper/research/researches/index.js.map +1 -1
  1126. package/build/parsedPaper/structure/tree/FormattingElement.js +3 -9
  1127. package/build/parsedPaper/structure/tree/FormattingElement.js.map +1 -1
  1128. package/build/parsedPaper/structure/tree/SourceCodeLocation.js +1 -7
  1129. package/build/parsedPaper/structure/tree/SourceCodeLocation.js.map +1 -1
  1130. package/build/parsedPaper/structure/tree/TextContainer.js +5 -10
  1131. package/build/parsedPaper/structure/tree/TextContainer.js.map +1 -1
  1132. package/build/parsedPaper/structure/tree/index.js +9 -74
  1133. package/build/parsedPaper/structure/tree/index.js.map +1 -1
  1134. package/build/parsedPaper/structure/tree/nodes/Heading.js +3 -9
  1135. package/build/parsedPaper/structure/tree/nodes/Heading.js.map +1 -1
  1136. package/build/parsedPaper/structure/tree/nodes/LeafNode.js +5 -12
  1137. package/build/parsedPaper/structure/tree/nodes/LeafNode.js.map +1 -1
  1138. package/build/parsedPaper/structure/tree/nodes/List.js +5 -11
  1139. package/build/parsedPaper/structure/tree/nodes/List.js.map +1 -1
  1140. package/build/parsedPaper/structure/tree/nodes/ListItem.js +3 -10
  1141. package/build/parsedPaper/structure/tree/nodes/ListItem.js.map +1 -1
  1142. package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +3 -9
  1143. package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js.map +1 -1
  1144. package/build/parsedPaper/structure/tree/nodes/MetadataText.js +3 -9
  1145. package/build/parsedPaper/structure/tree/nodes/MetadataText.js.map +1 -1
  1146. package/build/parsedPaper/structure/tree/nodes/Node.js +6 -12
  1147. package/build/parsedPaper/structure/tree/nodes/Node.js.map +1 -1
  1148. package/build/parsedPaper/structure/tree/nodes/Paragraph.js +3 -9
  1149. package/build/parsedPaper/structure/tree/nodes/Paragraph.js.map +1 -1
  1150. package/build/parsedPaper/structure/tree/nodes/StructuredNode.js +3 -10
  1151. package/build/parsedPaper/structure/tree/nodes/StructuredNode.js.map +1 -1
  1152. package/build/parsedPaper/structure/tree/nodes/index.js +10 -69
  1153. package/build/parsedPaper/structure/tree/nodes/index.js.map +1 -1
  1154. package/build/scoring/assessments/assessment.js +17 -15
  1155. package/build/scoring/assessments/assessment.js.map +1 -1
  1156. package/build/scoring/assessments/index.js +53 -56
  1157. package/build/scoring/assessments/index.js.map +1 -1
  1158. package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js +18 -21
  1159. package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js.map +1 -1
  1160. package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js +114 -0
  1161. package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js.map +1 -0
  1162. package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js +24 -27
  1163. package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js.map +1 -1
  1164. package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js +23 -26
  1165. package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js.map +1 -1
  1166. package/build/scoring/assessments/readability/TransitionWordsAssessment.js +26 -29
  1167. package/build/scoring/assessments/readability/TransitionWordsAssessment.js.map +1 -1
  1168. package/build/scoring/assessments/seo/ImageCountAssessment.js +18 -21
  1169. package/build/scoring/assessments/seo/ImageCountAssessment.js.map +1 -1
  1170. package/build/scoring/assessments/seo/InternalLinksAssessment.js +19 -21
  1171. package/build/scoring/assessments/seo/InternalLinksAssessment.js.map +1 -1
  1172. package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js +21 -23
  1173. package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js.map +1 -1
  1174. package/build/scoring/assessments/seo/KeyphraseAssessment.js +17 -19
  1175. package/build/scoring/assessments/seo/KeyphraseAssessment.js.map +1 -1
  1176. package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js +21 -23
  1177. package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js.map +1 -1
  1178. package/build/scoring/assessments/seo/KeywordDensityAssessment.js +26 -27
  1179. package/build/scoring/assessments/seo/KeywordDensityAssessment.js.map +1 -1
  1180. package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +22 -25
  1181. package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js.map +1 -1
  1182. package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +16 -19
  1183. package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js.map +1 -1
  1184. package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js +19 -22
  1185. package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js.map +1 -1
  1186. package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js +15 -17
  1187. package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js.map +1 -1
  1188. package/build/scoring/assessments/seo/OutboundLinksAssessment.js +19 -22
  1189. package/build/scoring/assessments/seo/OutboundLinksAssessment.js.map +1 -1
  1190. package/build/scoring/assessments/seo/PageTitleWidthAssessment.js +15 -17
  1191. package/build/scoring/assessments/seo/PageTitleWidthAssessment.js.map +1 -1
  1192. package/build/scoring/assessments/seo/SchemaAssessment.js +108 -0
  1193. package/build/scoring/assessments/seo/SchemaAssessment.js.map +1 -0
  1194. package/build/scoring/assessments/seo/SingleH1Assessment.js +18 -20
  1195. package/build/scoring/assessments/seo/SingleH1Assessment.js.map +1 -1
  1196. package/build/scoring/assessments/seo/SingleTitleAssessment.js +18 -20
  1197. package/build/scoring/assessments/seo/SingleTitleAssessment.js.map +1 -1
  1198. package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +17 -21
  1199. package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js.map +1 -1
  1200. package/build/scoring/assessments/seo/TextImagesAssessment.js +19 -22
  1201. package/build/scoring/assessments/seo/TextImagesAssessment.js.map +1 -1
  1202. package/build/scoring/assessments/seo/TextLengthAssessment.js +18 -21
  1203. package/build/scoring/assessments/seo/TextLengthAssessment.js.map +1 -1
  1204. package/build/scoring/assessments/seo/UrlKeywordAssessment.js +17 -19
  1205. package/build/scoring/assessments/seo/UrlKeywordAssessment.js.map +1 -1
  1206. package/build/scoring/assessments/seo/UrlLengthAssessment.js +18 -21
  1207. package/build/scoring/assessments/seo/UrlLengthAssessment.js.map +1 -1
  1208. package/build/scoring/assessors/assessor.js +62 -33
  1209. package/build/scoring/assessors/assessor.js.map +1 -1
  1210. package/build/scoring/assessors/avadaAssessor.js +37 -16
  1211. package/build/scoring/assessors/avadaAssessor.js.map +1 -1
  1212. package/build/scoring/assessors/contentAssessor.js +16 -22
  1213. package/build/scoring/assessors/contentAssessor.js.map +1 -1
  1214. package/build/scoring/assessors/index.js +4 -34
  1215. package/build/scoring/assessors/index.js.map +1 -1
  1216. package/build/scoring/assessors/seoAssessor.js +26 -32
  1217. package/build/scoring/assessors/seoAssessor.js.map +1 -1
  1218. package/build/scoring/helpers/assessments/checkForTooLongSentences.js +3 -8
  1219. package/build/scoring/helpers/assessments/checkForTooLongSentences.js.map +1 -1
  1220. package/build/scoring/helpers/assessments/inRange.js +2 -10
  1221. package/build/scoring/helpers/assessments/inRange.js.map +1 -1
  1222. package/build/scoring/helpers/assessments/keyphraseLengthFactor.js +1 -7
  1223. package/build/scoring/helpers/assessments/keyphraseLengthFactor.js.map +1 -1
  1224. package/build/scoring/helpers/assessments/recommendedKeywordCount.js +5 -11
  1225. package/build/scoring/helpers/assessments/recommendedKeywordCount.js.map +1 -1
  1226. package/build/scoring/helpers/index.js +7 -15
  1227. package/build/scoring/helpers/index.js.map +1 -1
  1228. package/build/scoring/interpreters/index.js +2 -13
  1229. package/build/scoring/interpreters/index.js.map +1 -1
  1230. package/build/scoring/interpreters/scoreToRating.js +1 -7
  1231. package/build/scoring/interpreters/scoreToRating.js.map +1 -1
  1232. package/build/scoring/renderers/AssessorPresenter.js +12 -18
  1233. package/build/scoring/renderers/AssessorPresenter.js.map +1 -1
  1234. package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js +8 -14
  1235. package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js.map +1 -1
  1236. package/build/scoring/scoreAggregators/SEOScoreAggregator.js +3 -9
  1237. package/build/scoring/scoreAggregators/SEOScoreAggregator.js.map +1 -1
  1238. package/build/scoring/scoreAggregators/ScoreAggregator.js +1 -7
  1239. package/build/scoring/scoreAggregators/ScoreAggregator.js.map +1 -1
  1240. package/build/scoring/scoreAggregators/index.js +3 -27
  1241. package/build/scoring/scoreAggregators/index.js.map +1 -1
  1242. package/build/values/AssessmentResult.js +22 -28
  1243. package/build/values/AssessmentResult.js.map +1 -1
  1244. package/build/values/Mark.js +9 -15
  1245. package/build/values/Mark.js.map +1 -1
  1246. package/build/values/Paper.js +79 -15
  1247. package/build/values/Paper.js.map +1 -1
  1248. package/build/values/index.js +4 -27
  1249. package/build/values/index.js.map +1 -1
  1250. package/build/vendor/turkishStemmer.js +1 -7
  1251. package/build/vendor/turkishStemmer.js.map +1 -1
  1252. package/package.json +14 -2
  1253. package/.browserslistrc +0 -1
  1254. package/.gitattributes +0 -1
  1255. package/babel.config.js +0 -3
  1256. package/build/bundledPlugins/index.js +0 -14
  1257. package/build/bundledPlugins/index.js.map +0 -1
  1258. package/build/bundledPlugins/previouslyUsedKeywords.js +0 -171
  1259. package/build/bundledPlugins/previouslyUsedKeywords.js.map +0 -1
  1260. package/eslint.config.mjs +0 -119
  1261. package/src/bundledPlugins/index.js +0 -5
  1262. package/src/bundledPlugins/previouslyUsedKeywords.js +0 -192
  1263. package/src/config/diacritics.js +0 -106
  1264. package/src/config/getTransliterations.js +0 -1447
  1265. package/src/config/transliterationsWPstyle.js +0 -774
  1266. package/src/config/wordBoundaries.js +0 -23
  1267. package/src/config/wordBoundariesWithoutPunctuation.js +0 -9
  1268. package/src/const/analysis.js +0 -41
  1269. package/src/errors/invalidType.js +0 -14
  1270. package/src/errors/missingArgument.js +0 -14
  1271. package/src/helpers/createMeasurementElement.js +0 -40
  1272. package/src/helpers/domManipulation.js +0 -65
  1273. package/src/helpers/errors.js +0 -26
  1274. package/src/helpers/factory.js +0 -219
  1275. package/src/helpers/formatNumber.js +0 -12
  1276. package/src/helpers/formatString.js +0 -33
  1277. package/src/helpers/getLanguagesWithWordComplexity.js +0 -8
  1278. package/src/helpers/getLanguagesWithWordFormSupport.js +0 -11
  1279. package/src/helpers/getWordComplexityConfig.js +0 -20
  1280. package/src/helpers/getWordComplexityHelper.js +0 -20
  1281. package/src/helpers/htmlEntities.js +0 -41
  1282. package/src/helpers/includesAny.js +0 -19
  1283. package/src/helpers/index.js +0 -127
  1284. package/src/helpers/shortlinker/Shortlinker.js +0 -75
  1285. package/src/helpers/shortlinker/index.js +0 -1
  1286. package/src/helpers/shortlinker/singleton.js +0 -68
  1287. package/src/helpers/types.js +0 -34
  1288. package/src/index.js +0 -60
  1289. package/src/languageProcessing/AbstractResearcher.js +0 -366
  1290. package/src/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +0 -125
  1291. package/src/languageProcessing/helpers/html/getFieldsToMark.js +0 -29
  1292. package/src/languageProcessing/helpers/html/getSubheadingTexts.js +0 -47
  1293. package/src/languageProcessing/helpers/html/getSubheadings.js +0 -95
  1294. package/src/languageProcessing/helpers/html/html.js +0 -176
  1295. package/src/languageProcessing/helpers/html/htmlParser.js +0 -145
  1296. package/src/languageProcessing/helpers/html/matchParagraphs.js +0 -62
  1297. package/src/languageProcessing/helpers/html/normalizeHTML.js +0 -16
  1298. package/src/languageProcessing/helpers/image/getAltAttribute.js +0 -20
  1299. package/src/languageProcessing/helpers/image/getImagesInTree.js +0 -16
  1300. package/src/languageProcessing/helpers/image/imageInText.js +0 -19
  1301. package/src/languageProcessing/helpers/index.js +0 -12
  1302. package/src/languageProcessing/helpers/language/getLanguage.js +0 -9
  1303. package/src/languageProcessing/helpers/link/checkNofollow.js +0 -38
  1304. package/src/languageProcessing/helpers/link/getAnchorsFromText.js +0 -32
  1305. package/src/languageProcessing/helpers/link/getLinkType.js +0 -32
  1306. package/src/languageProcessing/helpers/match/findKeywordFormsInString.js +0 -101
  1307. package/src/languageProcessing/helpers/match/isDoubleQuoted.js +0 -13
  1308. package/src/languageProcessing/helpers/match/matchTextWithArray.js +0 -36
  1309. package/src/languageProcessing/helpers/match/matchTextWithTransliteration.js +0 -58
  1310. package/src/languageProcessing/helpers/match/matchTextWithWord.js +0 -45
  1311. package/src/languageProcessing/helpers/match/matchWordFormsWithSentence.js +0 -164
  1312. package/src/languageProcessing/helpers/match/processExactMatchRequest.js +0 -20
  1313. package/src/languageProcessing/helpers/morphology/baseStemmer.js +0 -11
  1314. package/src/languageProcessing/helpers/morphology/buildFormRule.js +0 -19
  1315. package/src/languageProcessing/helpers/morphology/buildTopicStems.js +0 -169
  1316. package/src/languageProcessing/helpers/morphology/createRulesFromArrays.js +0 -45
  1317. package/src/languageProcessing/helpers/morphology/exceptionListHelpers.js +0 -65
  1318. package/src/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +0 -24
  1319. package/src/languageProcessing/helpers/morphology/flattenSortLength.js +0 -14
  1320. package/src/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +0 -39
  1321. package/src/languageProcessing/helpers/morphology/regexHelpers.js +0 -44
  1322. package/src/languageProcessing/helpers/morphology/stemHelpers.js +0 -38
  1323. package/src/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +0 -31
  1324. package/src/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +0 -36
  1325. package/src/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +0 -113
  1326. package/src/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +0 -45
  1327. package/src/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +0 -231
  1328. package/src/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +0 -20
  1329. package/src/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +0 -23
  1330. package/src/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +0 -40
  1331. package/src/languageProcessing/helpers/prominentWords/determineProminentWords.js +0 -238
  1332. package/src/languageProcessing/helpers/regex/createRegexFromArray.js +0 -35
  1333. package/src/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +0 -34
  1334. package/src/languageProcessing/helpers/regex/createWordRegex.js +0 -30
  1335. package/src/languageProcessing/helpers/regex/matchStringWithRegex.js +0 -19
  1336. package/src/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +0 -14
  1337. package/src/languageProcessing/helpers/sanitize/doubleQuotes.js +0 -12
  1338. package/src/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +0 -131
  1339. package/src/languageProcessing/helpers/sanitize/mergeListItems.js +0 -24
  1340. package/src/languageProcessing/helpers/sanitize/parseSynonyms.js +0 -20
  1341. package/src/languageProcessing/helpers/sanitize/quotes.js +0 -46
  1342. package/src/languageProcessing/helpers/sanitize/removeEmailAddresses.js +0 -12
  1343. package/src/languageProcessing/helpers/sanitize/removePunctuation.js +0 -64
  1344. package/src/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +0 -18
  1345. package/src/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +0 -13
  1346. package/src/languageProcessing/helpers/sanitize/removeURLs.js +0 -13
  1347. package/src/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +0 -11
  1348. package/src/languageProcessing/helpers/sanitize/sanitizeString.js +0 -18
  1349. package/src/languageProcessing/helpers/sanitize/stripHTMLTags.js +0 -57
  1350. package/src/languageProcessing/helpers/sanitize/stripNonTextTags.js +0 -15
  1351. package/src/languageProcessing/helpers/sanitize/stripNumbers.js +0 -21
  1352. package/src/languageProcessing/helpers/sanitize/stripSpaces.js +0 -23
  1353. package/src/languageProcessing/helpers/sanitize/stripWordBoundaries.js +0 -65
  1354. package/src/languageProcessing/helpers/sanitize/unifyWhitespace.js +0 -61
  1355. package/src/languageProcessing/helpers/sentence/SentenceTokenizer.js +0 -640
  1356. package/src/languageProcessing/helpers/sentence/countSentences.js +0 -20
  1357. package/src/languageProcessing/helpers/sentence/getSentences.js +0 -65
  1358. package/src/languageProcessing/helpers/sentence/getSentencesFromTree.js +0 -55
  1359. package/src/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +0 -28
  1360. package/src/languageProcessing/helpers/sentence/sentencesLength.js +0 -31
  1361. package/src/languageProcessing/helpers/syllables/DeviationFragment.js +0 -112
  1362. package/src/languageProcessing/helpers/syllables/countSyllables.js +0 -182
  1363. package/src/languageProcessing/helpers/syllables/syllableCountIterator.js +0 -56
  1364. package/src/languageProcessing/helpers/syllables/syllableCountStep.js +0 -68
  1365. package/src/languageProcessing/helpers/transform/transformWordsWithHyphens.js +0 -17
  1366. package/src/languageProcessing/helpers/transliterate/replaceDiacritics.js +0 -22
  1367. package/src/languageProcessing/helpers/transliterate/specialCharacterMappings.js +0 -214
  1368. package/src/languageProcessing/helpers/transliterate/transliterate.js +0 -20
  1369. package/src/languageProcessing/helpers/transliterate/transliterateWPstyle.js +0 -21
  1370. package/src/languageProcessing/helpers/url/parseSlug.js +0 -10
  1371. package/src/languageProcessing/helpers/url/url.js +0 -172
  1372. package/src/languageProcessing/helpers/word/addWordboundary.js +0 -37
  1373. package/src/languageProcessing/helpers/word/areWordsInSentence.js +0 -16
  1374. package/src/languageProcessing/helpers/word/countMetaDescriptionLength.js +0 -18
  1375. package/src/languageProcessing/helpers/word/countWords.js +0 -14
  1376. package/src/languageProcessing/helpers/word/createPunctuationTokens.js +0 -42
  1377. package/src/languageProcessing/helpers/word/filterWordsFromArray.js +0 -15
  1378. package/src/languageProcessing/helpers/word/followsIndex.js +0 -25
  1379. package/src/languageProcessing/helpers/word/getAllWordsFromTree.js +0 -23
  1380. package/src/languageProcessing/helpers/word/getWords.js +0 -43
  1381. package/src/languageProcessing/helpers/word/includesIndex.js +0 -30
  1382. package/src/languageProcessing/helpers/word/indices.js +0 -146
  1383. package/src/languageProcessing/helpers/word/markWordsInSentences.js +0 -173
  1384. package/src/languageProcessing/helpers/word/matchWordInSentence.js +0 -61
  1385. package/src/languageProcessing/helpers/word/splitIntoTokens.js +0 -46
  1386. package/src/languageProcessing/index.js +0 -91
  1387. package/src/languageProcessing/languages/_default/Researcher.js +0 -34
  1388. package/src/languageProcessing/languages/_default/helpers/getStemmer.js +0 -11
  1389. package/src/languageProcessing/languages/ar/Researcher.js +0 -46
  1390. package/src/languageProcessing/languages/ar/config/firstWordExceptions.js +0 -14
  1391. package/src/languageProcessing/languages/ar/config/functionWords.js +0 -329
  1392. package/src/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +0 -570
  1393. package/src/languageProcessing/languages/ar/config/prefixedFunctionWords.js +0 -5
  1394. package/src/languageProcessing/languages/ar/config/transitionWords.js +0 -19
  1395. package/src/languageProcessing/languages/ar/config/twoPartTransitionWords.js +0 -7
  1396. package/src/languageProcessing/languages/ar/helpers/createBasicWordForms.js +0 -32
  1397. package/src/languageProcessing/languages/ar/helpers/getStemmer.js +0 -22
  1398. package/src/languageProcessing/languages/ar/helpers/internal/stem.js +0 -632
  1399. package/src/languageProcessing/languages/ar/helpers/isPassiveSentence.js +0 -33
  1400. package/src/languageProcessing/languages/ca/Researcher.js +0 -43
  1401. package/src/languageProcessing/languages/ca/config/sentenceLength.js +0 -3
  1402. package/src/languageProcessing/languages/ca/config/transitionWords.js +0 -31
  1403. package/src/languageProcessing/languages/ca/config/twoPartTransitionWords.js +0 -7
  1404. package/src/languageProcessing/languages/ca/helpers/getStemmer.js +0 -11
  1405. package/src/languageProcessing/languages/cs/Researcher.js +0 -44
  1406. package/src/languageProcessing/languages/cs/config/firstWordExceptions.js +0 -15
  1407. package/src/languageProcessing/languages/cs/config/functionWords.js +0 -121
  1408. package/src/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +0 -38
  1409. package/src/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +0 -54
  1410. package/src/languageProcessing/languages/cs/config/stopWords.js +0 -42
  1411. package/src/languageProcessing/languages/cs/config/transitionWords.js +0 -26
  1412. package/src/languageProcessing/languages/cs/config/twoPartTransitionWords.js +0 -8
  1413. package/src/languageProcessing/languages/cs/helpers/getClauses.js +0 -26
  1414. package/src/languageProcessing/languages/cs/helpers/getStemmer.js +0 -22
  1415. package/src/languageProcessing/languages/cs/helpers/internal/getParticiples.js +0 -16
  1416. package/src/languageProcessing/languages/cs/helpers/internal/stem.js +0 -499
  1417. package/src/languageProcessing/languages/cs/values/Clause.js +0 -34
  1418. package/src/languageProcessing/languages/de/Researcher.js +0 -52
  1419. package/src/languageProcessing/languages/de/config/firstWordExceptions.js +0 -17
  1420. package/src/languageProcessing/languages/de/config/functionWords.js +0 -303
  1421. package/src/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +0 -2231
  1422. package/src/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +0 -96
  1423. package/src/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +0 -368
  1424. package/src/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +0 -72
  1425. package/src/languageProcessing/languages/de/config/keyphraseLength.js +0 -11
  1426. package/src/languageProcessing/languages/de/config/stopWords.js +0 -67
  1427. package/src/languageProcessing/languages/de/config/syllables.json +0 -460
  1428. package/src/languageProcessing/languages/de/config/transitionWords.js +0 -31
  1429. package/src/languageProcessing/languages/de/config/twoPartTransitionWords.js +0 -12
  1430. package/src/languageProcessing/languages/de/config/wordComplexity.js +0 -4
  1431. package/src/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +0 -18
  1432. package/src/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +0 -40
  1433. package/src/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +0 -15
  1434. package/src/languageProcessing/languages/de/helpers/getClauses.js +0 -25
  1435. package/src/languageProcessing/languages/de/helpers/getStemmer.js +0 -22
  1436. package/src/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +0 -31
  1437. package/src/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +0 -128
  1438. package/src/languageProcessing/languages/de/helpers/internal/determineStem.js +0 -128
  1439. package/src/languageProcessing/languages/de/helpers/internal/getParticiples.js +0 -40
  1440. package/src/languageProcessing/languages/de/helpers/internal/stem.js +0 -215
  1441. package/src/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +0 -28
  1442. package/src/languageProcessing/languages/de/values/Clause.js +0 -85
  1443. package/src/languageProcessing/languages/el/Researcher.js +0 -46
  1444. package/src/languageProcessing/languages/el/config/firstWordExceptions.js +0 -47
  1445. package/src/languageProcessing/languages/el/config/functionWords.js +0 -116
  1446. package/src/languageProcessing/languages/el/config/internal/auxiliaries.js +0 -19
  1447. package/src/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +0 -87
  1448. package/src/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +0 -138
  1449. package/src/languageProcessing/languages/el/config/stopWords.js +0 -854
  1450. package/src/languageProcessing/languages/el/config/transitionWords.js +0 -26
  1451. package/src/languageProcessing/languages/el/config/twoPartTransitionWords.js +0 -10
  1452. package/src/languageProcessing/languages/el/helpers/getClauses.js +0 -25
  1453. package/src/languageProcessing/languages/el/helpers/getStemmer.js +0 -21
  1454. package/src/languageProcessing/languages/el/helpers/internal/getParticiples.js +0 -20
  1455. package/src/languageProcessing/languages/el/helpers/internal/stem.js +0 -368
  1456. package/src/languageProcessing/languages/el/helpers/isPassiveSentence.js +0 -38
  1457. package/src/languageProcessing/languages/el/values/Clause.js +0 -37
  1458. package/src/languageProcessing/languages/en/Researcher.js +0 -46
  1459. package/src/languageProcessing/languages/en/config/abbreviations.js +0 -55
  1460. package/src/languageProcessing/languages/en/config/firstWordExceptions.js +0 -14
  1461. package/src/languageProcessing/languages/en/config/functionWords.js +0 -186
  1462. package/src/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +0 -44
  1463. package/src/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +0 -354
  1464. package/src/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +0 -3047
  1465. package/src/languageProcessing/languages/en/config/regularParticiplesRegex.js +0 -5
  1466. package/src/languageProcessing/languages/en/config/stopWords.js +0 -52
  1467. package/src/languageProcessing/languages/en/config/syllables.json +0 -86
  1468. package/src/languageProcessing/languages/en/config/transitionWords.js +0 -48
  1469. package/src/languageProcessing/languages/en/config/twoPartTransitionWords.js +0 -7
  1470. package/src/languageProcessing/languages/en/config/wordComplexity.js +0 -5
  1471. package/src/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +0 -18
  1472. package/src/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +0 -43
  1473. package/src/languageProcessing/languages/en/helpers/getClauses.js +0 -49
  1474. package/src/languageProcessing/languages/en/helpers/getStemmer.js +0 -22
  1475. package/src/languageProcessing/languages/en/helpers/internal/determineStem.js +0 -178
  1476. package/src/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +0 -162
  1477. package/src/languageProcessing/languages/en/helpers/internal/getParticiples.js +0 -25
  1478. package/src/languageProcessing/languages/en/helpers/internal/getVerbStem.js +0 -237
  1479. package/src/languageProcessing/languages/en/values/Clause.js +0 -68
  1480. package/src/languageProcessing/languages/es/Researcher.js +0 -48
  1481. package/src/languageProcessing/languages/es/config/firstWordExceptions.js +0 -16
  1482. package/src/languageProcessing/languages/es/config/functionWords.js +0 -321
  1483. package/src/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +0 -60
  1484. package/src/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +0 -7327
  1485. package/src/languageProcessing/languages/es/config/sentenceLength.js +0 -3
  1486. package/src/languageProcessing/languages/es/config/stopWords.js +0 -33
  1487. package/src/languageProcessing/languages/es/config/syllables.json +0 -176
  1488. package/src/languageProcessing/languages/es/config/transitionWords.js +0 -40
  1489. package/src/languageProcessing/languages/es/config/twoPartTransitionWords.js +0 -10
  1490. package/src/languageProcessing/languages/es/config/wordComplexity.js +0 -4
  1491. package/src/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +0 -18
  1492. package/src/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +0 -56
  1493. package/src/languageProcessing/languages/es/helpers/getClauses.js +0 -29
  1494. package/src/languageProcessing/languages/es/helpers/getStemmer.js +0 -22
  1495. package/src/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +0 -41
  1496. package/src/languageProcessing/languages/es/helpers/internal/getParticiples.js +0 -35
  1497. package/src/languageProcessing/languages/es/helpers/internal/stem.js +0 -793
  1498. package/src/languageProcessing/languages/es/values/Clause.js +0 -47
  1499. package/src/languageProcessing/languages/fa/Researcher.js +0 -47
  1500. package/src/languageProcessing/languages/fa/config/firstWordExceptions.js +0 -12
  1501. package/src/languageProcessing/languages/fa/config/functionWords.js +0 -122
  1502. package/src/languageProcessing/languages/fa/config/internal/participles.js +0 -1429
  1503. package/src/languageProcessing/languages/fa/config/sentenceLength.js +0 -3
  1504. package/src/languageProcessing/languages/fa/config/transitionWords.js +0 -20
  1505. package/src/languageProcessing/languages/fa/config/twoPartTransitionWords.js +0 -9
  1506. package/src/languageProcessing/languages/fa/helpers/createBasicWordForms.js +0 -97
  1507. package/src/languageProcessing/languages/fa/helpers/getStemmer.js +0 -13
  1508. package/src/languageProcessing/languages/fa/helpers/isPassiveSentence.js +0 -14
  1509. package/src/languageProcessing/languages/fr/Researcher.js +0 -46
  1510. package/src/languageProcessing/languages/fr/config/firstWordExceptions.js +0 -16
  1511. package/src/languageProcessing/languages/fr/config/functionWords.js +0 -281
  1512. package/src/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +0 -1510
  1513. package/src/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +0 -108
  1514. package/src/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +0 -565
  1515. package/src/languageProcessing/languages/fr/config/stopWords.js +0 -119
  1516. package/src/languageProcessing/languages/fr/config/syllables.json +0 -1426
  1517. package/src/languageProcessing/languages/fr/config/transitionWords.js +0 -59
  1518. package/src/languageProcessing/languages/fr/config/twoPartTransitionWords.js +0 -15
  1519. package/src/languageProcessing/languages/fr/config/wordComplexity.js +0 -4
  1520. package/src/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +0 -18
  1521. package/src/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +0 -67
  1522. package/src/languageProcessing/languages/fr/helpers/getClauses.js +0 -34
  1523. package/src/languageProcessing/languages/fr/helpers/getStemmer.js +0 -22
  1524. package/src/languageProcessing/languages/fr/helpers/internal/getParticiples.js +0 -72
  1525. package/src/languageProcessing/languages/fr/helpers/internal/stem.js +0 -633
  1526. package/src/languageProcessing/languages/fr/values/Clause.js +0 -96
  1527. package/src/languageProcessing/languages/he/Researcher.js +0 -50
  1528. package/src/languageProcessing/languages/he/config/firstWordExceptions.js +0 -13
  1529. package/src/languageProcessing/languages/he/config/functionWords.js +0 -564
  1530. package/src/languageProcessing/languages/he/config/internal/regularRootsHufal.js +0 -186
  1531. package/src/languageProcessing/languages/he/config/internal/regularRootsNifal.js +0 -195
  1532. package/src/languageProcessing/languages/he/config/internal/regularRootsPual.js +0 -168
  1533. package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +0 -188
  1534. package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +0 -197
  1535. package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +0 -170
  1536. package/src/languageProcessing/languages/he/config/prefixedFunctionWords.js +0 -2
  1537. package/src/languageProcessing/languages/he/config/sentenceLength.js +0 -3
  1538. package/src/languageProcessing/languages/he/config/transitionWords.js +0 -28
  1539. package/src/languageProcessing/languages/he/config/twoPartTransitionWords.js +0 -8
  1540. package/src/languageProcessing/languages/he/helpers/createBasicWordForms.js +0 -33
  1541. package/src/languageProcessing/languages/he/helpers/getStemmer.js +0 -22
  1542. package/src/languageProcessing/languages/he/helpers/internal/stem.js +0 -52
  1543. package/src/languageProcessing/languages/he/helpers/isPassiveSentence.js +0 -96
  1544. package/src/languageProcessing/languages/he/helpers/stem.js +0 -52
  1545. package/src/languageProcessing/languages/hu/Researcher.js +0 -48
  1546. package/src/languageProcessing/languages/hu/config/firstWordExceptions.js +0 -31
  1547. package/src/languageProcessing/languages/hu/config/functionWords.js +0 -284
  1548. package/src/languageProcessing/languages/hu/config/internal/auxiliaries.js +0 -97
  1549. package/src/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +0 -125
  1550. package/src/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +0 -265
  1551. package/src/languageProcessing/languages/hu/config/internal/odikVerbs.js +0 -273
  1552. package/src/languageProcessing/languages/hu/config/internal/participles.js +0 -412
  1553. package/src/languageProcessing/languages/hu/config/stopWords.js +0 -213
  1554. package/src/languageProcessing/languages/hu/config/transitionWords.js +0 -42
  1555. package/src/languageProcessing/languages/hu/config/twoPartTransitionWords.js +0 -34
  1556. package/src/languageProcessing/languages/hu/helpers/getClauses.js +0 -25
  1557. package/src/languageProcessing/languages/hu/helpers/getStemmer.js +0 -22
  1558. package/src/languageProcessing/languages/hu/helpers/internal/getParticiples.js +0 -21
  1559. package/src/languageProcessing/languages/hu/helpers/internal/stem.js +0 -389
  1560. package/src/languageProcessing/languages/hu/helpers/isPassiveSentence.js +0 -54
  1561. package/src/languageProcessing/languages/hu/values/Clause.js +0 -41
  1562. package/src/languageProcessing/languages/id/Researcher.js +0 -46
  1563. package/src/languageProcessing/languages/id/config/firstWordExceptions.js +0 -13
  1564. package/src/languageProcessing/languages/id/config/functionWords.js +0 -202
  1565. package/src/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +0 -215
  1566. package/src/languageProcessing/languages/id/config/transitionWords.js +0 -62
  1567. package/src/languageProcessing/languages/id/config/twoPartTransitionWords.js +0 -13
  1568. package/src/languageProcessing/languages/id/helpers/getStemmer.js +0 -22
  1569. package/src/languageProcessing/languages/id/helpers/internal/stem.js +0 -462
  1570. package/src/languageProcessing/languages/id/helpers/internal/stemHelpers.js +0 -78
  1571. package/src/languageProcessing/languages/id/helpers/isPassiveSentence.js +0 -39
  1572. package/src/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +0 -47
  1573. package/src/languageProcessing/languages/it/Researcher.js +0 -48
  1574. package/src/languageProcessing/languages/it/config/firstWordExceptions.js +0 -17
  1575. package/src/languageProcessing/languages/it/config/functionWords.js +0 -277
  1576. package/src/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +0 -98
  1577. package/src/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +0 -7197
  1578. package/src/languageProcessing/languages/it/config/sentenceLength.js +0 -3
  1579. package/src/languageProcessing/languages/it/config/stopWords.js +0 -57
  1580. package/src/languageProcessing/languages/it/config/syllables.json +0 -573
  1581. package/src/languageProcessing/languages/it/config/transitionWords.js +0 -104
  1582. package/src/languageProcessing/languages/it/config/twoPartTransitionWords.js +0 -9
  1583. package/src/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +0 -15
  1584. package/src/languageProcessing/languages/it/helpers/getClauses.js +0 -32
  1585. package/src/languageProcessing/languages/it/helpers/getStemmer.js +0 -22
  1586. package/src/languageProcessing/languages/it/helpers/internal/getParticiples.js +0 -34
  1587. package/src/languageProcessing/languages/it/helpers/internal/stem.js +0 -436
  1588. package/src/languageProcessing/languages/it/values/Clause.js +0 -47
  1589. package/src/languageProcessing/languages/ja/Researcher.js +0 -86
  1590. package/src/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +0 -4
  1591. package/src/languageProcessing/languages/ja/config/firstWordExceptions.js +0 -8
  1592. package/src/languageProcessing/languages/ja/config/functionWords.js +0 -563
  1593. package/src/languageProcessing/languages/ja/config/keyphraseLength.js +0 -16
  1594. package/src/languageProcessing/languages/ja/config/metaDescriptionLength.js +0 -4
  1595. package/src/languageProcessing/languages/ja/config/paragraphLength.js +0 -10
  1596. package/src/languageProcessing/languages/ja/config/sentenceLength.js +0 -4
  1597. package/src/languageProcessing/languages/ja/config/subheadingsTooLong.js +0 -18
  1598. package/src/languageProcessing/languages/ja/config/textLength.js +0 -47
  1599. package/src/languageProcessing/languages/ja/config/topicLength.js +0 -5
  1600. package/src/languageProcessing/languages/ja/config/transitionWords.js +0 -354
  1601. package/src/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +0 -98
  1602. package/src/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +0 -19
  1603. package/src/languageProcessing/languages/ja/customResearches/getWordForms.js +0 -50
  1604. package/src/languageProcessing/languages/ja/customResearches/textLength.js +0 -24
  1605. package/src/languageProcessing/languages/ja/helpers/countCharacters.js +0 -19
  1606. package/src/languageProcessing/languages/ja/helpers/customGetStemmer.js +0 -21
  1607. package/src/languageProcessing/languages/ja/helpers/getContentWords.js +0 -21
  1608. package/src/languageProcessing/languages/ja/helpers/getWords.js +0 -31
  1609. package/src/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +0 -102
  1610. package/src/languageProcessing/languages/ja/helpers/internal/createWordForms.js +0 -68
  1611. package/src/languageProcessing/languages/ja/helpers/internal/determineStem.js +0 -17
  1612. package/src/languageProcessing/languages/ja/helpers/matchTextWithWord.js +0 -53
  1613. package/src/languageProcessing/languages/ja/helpers/matchTransitionWords.js +0 -25
  1614. package/src/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +0 -28
  1615. package/src/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +0 -20
  1616. package/src/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +0 -13
  1617. package/src/languageProcessing/languages/nb/Researcher.js +0 -45
  1618. package/src/languageProcessing/languages/nb/config/firstWordExceptions.js +0 -12
  1619. package/src/languageProcessing/languages/nb/config/functionWords.js +0 -106
  1620. package/src/languageProcessing/languages/nb/config/internal/participles.js +0 -3127
  1621. package/src/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +0 -15
  1622. package/src/languageProcessing/languages/nb/config/stopWords.js +0 -39
  1623. package/src/languageProcessing/languages/nb/config/transitionWords.js +0 -21
  1624. package/src/languageProcessing/languages/nb/config/twoPartTransitionWords.js +0 -10
  1625. package/src/languageProcessing/languages/nb/helpers/getClauses.js +0 -28
  1626. package/src/languageProcessing/languages/nb/helpers/getStemmer.js +0 -22
  1627. package/src/languageProcessing/languages/nb/helpers/internal/getParticiples.js +0 -24
  1628. package/src/languageProcessing/languages/nb/helpers/internal/stem.js +0 -133
  1629. package/src/languageProcessing/languages/nb/values/Clause.js +0 -43
  1630. package/src/languageProcessing/languages/nl/Researcher.js +0 -48
  1631. package/src/languageProcessing/languages/nl/config/firstWordExceptions.js +0 -15
  1632. package/src/languageProcessing/languages/nl/config/functionWords.js +0 -233
  1633. package/src/languageProcessing/languages/nl/config/internal/nonParticiples.js +0 -2515
  1634. package/src/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +0 -13
  1635. package/src/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +0 -474
  1636. package/src/languageProcessing/languages/nl/config/keyphraseLength.js +0 -10
  1637. package/src/languageProcessing/languages/nl/config/stopWords.js +0 -35
  1638. package/src/languageProcessing/languages/nl/config/syllables.json +0 -343
  1639. package/src/languageProcessing/languages/nl/config/transitionWords.js +0 -22
  1640. package/src/languageProcessing/languages/nl/config/twoPartTransitionWords.js +0 -8
  1641. package/src/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +0 -15
  1642. package/src/languageProcessing/languages/nl/helpers/getClauses.js +0 -25
  1643. package/src/languageProcessing/languages/nl/helpers/getStemmer.js +0 -22
  1644. package/src/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +0 -128
  1645. package/src/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +0 -324
  1646. package/src/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +0 -164
  1647. package/src/languageProcessing/languages/nl/helpers/internal/determineStem.js +0 -133
  1648. package/src/languageProcessing/languages/nl/helpers/internal/getParticiples.js +0 -25
  1649. package/src/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +0 -183
  1650. package/src/languageProcessing/languages/nl/helpers/internal/stem.js +0 -146
  1651. package/src/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +0 -109
  1652. package/src/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +0 -65
  1653. package/src/languageProcessing/languages/nl/values/Clause.js +0 -62
  1654. package/src/languageProcessing/languages/pl/Researcher.js +0 -47
  1655. package/src/languageProcessing/languages/pl/config/firstWordExceptions.js +0 -12
  1656. package/src/languageProcessing/languages/pl/config/functionWords.js +0 -421
  1657. package/src/languageProcessing/languages/pl/config/internal/auxiliaries.js +0 -85
  1658. package/src/languageProcessing/languages/pl/config/internal/participles.js +0 -26433
  1659. package/src/languageProcessing/languages/pl/config/sentenceLength.js +0 -10
  1660. package/src/languageProcessing/languages/pl/config/stopWords.js +0 -36
  1661. package/src/languageProcessing/languages/pl/config/transitionWords.js +0 -42
  1662. package/src/languageProcessing/languages/pl/config/twoPartTransitionWords.js +0 -8
  1663. package/src/languageProcessing/languages/pl/helpers/getClauses.js +0 -25
  1664. package/src/languageProcessing/languages/pl/helpers/getStemmer.js +0 -22
  1665. package/src/languageProcessing/languages/pl/helpers/internal/getParticiples.js +0 -18
  1666. package/src/languageProcessing/languages/pl/helpers/internal/stem.js +0 -161
  1667. package/src/languageProcessing/languages/pl/values/Clause.js +0 -53
  1668. package/src/languageProcessing/languages/pt/Researcher.js +0 -48
  1669. package/src/languageProcessing/languages/pt/config/firstWordExceptions.js +0 -15
  1670. package/src/languageProcessing/languages/pt/config/functionWords.js +0 -226
  1671. package/src/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +0 -66
  1672. package/src/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +0 -4088
  1673. package/src/languageProcessing/languages/pt/config/sentenceLength.js +0 -3
  1674. package/src/languageProcessing/languages/pt/config/stopWords.js +0 -50
  1675. package/src/languageProcessing/languages/pt/config/syllables.json +0 -38
  1676. package/src/languageProcessing/languages/pt/config/transitionWords.js +0 -34
  1677. package/src/languageProcessing/languages/pt/config/twoPartTransitionWords.js +0 -9
  1678. package/src/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +0 -15
  1679. package/src/languageProcessing/languages/pt/helpers/getClauses.js +0 -29
  1680. package/src/languageProcessing/languages/pt/helpers/getStemmer.js +0 -22
  1681. package/src/languageProcessing/languages/pt/helpers/internal/getParticiples.js +0 -35
  1682. package/src/languageProcessing/languages/pt/helpers/internal/stem.js +0 -319
  1683. package/src/languageProcessing/languages/pt/values/Clause.js +0 -43
  1684. package/src/languageProcessing/languages/ru/Researcher.js +0 -48
  1685. package/src/languageProcessing/languages/ru/config/firstWordExceptions.js +0 -14
  1686. package/src/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +0 -20
  1687. package/src/languageProcessing/languages/ru/config/functionWords.js +0 -519
  1688. package/src/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +0 -2914
  1689. package/src/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +0 -6295
  1690. package/src/languageProcessing/languages/ru/config/sentenceLength.js +0 -3
  1691. package/src/languageProcessing/languages/ru/config/syllables.json +0 -19
  1692. package/src/languageProcessing/languages/ru/config/transitionWords.js +0 -62
  1693. package/src/languageProcessing/languages/ru/config/twoPartTransitionWords.js +0 -14
  1694. package/src/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +0 -16
  1695. package/src/languageProcessing/languages/ru/helpers/getStemmer.js +0 -22
  1696. package/src/languageProcessing/languages/ru/helpers/internal/stem.js +0 -288
  1697. package/src/languageProcessing/languages/ru/helpers/isPassiveSentence.js +0 -14
  1698. package/src/languageProcessing/languages/sk/Researcher.js +0 -46
  1699. package/src/languageProcessing/languages/sk/config/firstWordExceptions.js +0 -14
  1700. package/src/languageProcessing/languages/sk/config/functionWords.js +0 -855
  1701. package/src/languageProcessing/languages/sk/config/internal/nonPassives.js +0 -1074
  1702. package/src/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +0 -22
  1703. package/src/languageProcessing/languages/sk/config/stopWords.js +0 -34
  1704. package/src/languageProcessing/languages/sk/config/transitionWords.js +0 -23
  1705. package/src/languageProcessing/languages/sk/config/twoPartTransitionWords.js +0 -10
  1706. package/src/languageProcessing/languages/sk/helpers/getClauses.js +0 -26
  1707. package/src/languageProcessing/languages/sk/helpers/getStemmer.js +0 -22
  1708. package/src/languageProcessing/languages/sk/helpers/internal/getParticiples.js +0 -16
  1709. package/src/languageProcessing/languages/sk/helpers/internal/stem.js +0 -319
  1710. package/src/languageProcessing/languages/sk/values/Clause.js +0 -39
  1711. package/src/languageProcessing/languages/sv/Researcher.js +0 -45
  1712. package/src/languageProcessing/languages/sv/config/firstWordExceptions.js +0 -15
  1713. package/src/languageProcessing/languages/sv/config/functionWords.js +0 -176
  1714. package/src/languageProcessing/languages/sv/config/internal/passiveVerbs.js +0 -10400
  1715. package/src/languageProcessing/languages/sv/config/keyphraseLength.js +0 -11
  1716. package/src/languageProcessing/languages/sv/config/transitionWords.js +0 -35
  1717. package/src/languageProcessing/languages/sv/config/twoPartTransitionWords.js +0 -8
  1718. package/src/languageProcessing/languages/sv/helpers/getStemmer.js +0 -22
  1719. package/src/languageProcessing/languages/sv/helpers/internal/stem.js +0 -152
  1720. package/src/languageProcessing/languages/sv/helpers/isPassiveSentence.js +0 -14
  1721. package/src/languageProcessing/languages/tr/Researcher.js +0 -44
  1722. package/src/languageProcessing/languages/tr/config/firstWordExceptions.js +0 -13
  1723. package/src/languageProcessing/languages/tr/config/functionWords.js +0 -116
  1724. package/src/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +0 -574
  1725. package/src/languageProcessing/languages/tr/config/internal/passiveEndings.js +0 -151
  1726. package/src/languageProcessing/languages/tr/config/sentenceLength.js +0 -7
  1727. package/src/languageProcessing/languages/tr/config/transitionWords.js +0 -42
  1728. package/src/languageProcessing/languages/tr/config/twoPartTransitionWords.js +0 -7
  1729. package/src/languageProcessing/languages/tr/helpers/getStemmer.js +0 -22
  1730. package/src/languageProcessing/languages/tr/helpers/internal/stem.js +0 -20
  1731. package/src/languageProcessing/languages/tr/helpers/isPassiveSentence.js +0 -43
  1732. package/src/languageProcessing/researches/altTagCount.js +0 -70
  1733. package/src/languageProcessing/researches/countSentencesFromText.js +0 -19
  1734. package/src/languageProcessing/researches/findKeyphraseInSEOTitle.js +0 -257
  1735. package/src/languageProcessing/researches/findKeywordInFirstParagraph.js +0 -86
  1736. package/src/languageProcessing/researches/findTransitionWords.js +0 -123
  1737. package/src/languageProcessing/researches/functionWordsInKeyphrase.js +0 -44
  1738. package/src/languageProcessing/researches/getAnchorsWithKeyphrase.js +0 -227
  1739. package/src/languageProcessing/researches/getFleschReadingScore.js +0 -150
  1740. package/src/languageProcessing/researches/getKeywordDensity.js +0 -44
  1741. package/src/languageProcessing/researches/getLinkStatistics.js +0 -54
  1742. package/src/languageProcessing/researches/getLinks.js +0 -18
  1743. package/src/languageProcessing/researches/getLongCenterAlignedTexts.js +0 -37
  1744. package/src/languageProcessing/researches/getParagraphLength.js +0 -44
  1745. package/src/languageProcessing/researches/getParagraphs.js +0 -18
  1746. package/src/languageProcessing/researches/getPassiveVoiceResult.js +0 -129
  1747. package/src/languageProcessing/researches/getProminentWordsForInsights.js +0 -48
  1748. package/src/languageProcessing/researches/getProminentWordsForInternalLinking.js +0 -119
  1749. package/src/languageProcessing/researches/getSentenceBeginnings.js +0 -124
  1750. package/src/languageProcessing/researches/getSubheadingTextLengths.js +0 -59
  1751. package/src/languageProcessing/researches/getWordForms.js +0 -204
  1752. package/src/languageProcessing/researches/h1s.js +0 -10
  1753. package/src/languageProcessing/researches/imageCount.js +0 -16
  1754. package/src/languageProcessing/researches/index.js +0 -5
  1755. package/src/languageProcessing/researches/keyphraseDistribution.js +0 -249
  1756. package/src/languageProcessing/researches/keyphraseLength.js +0 -17
  1757. package/src/languageProcessing/researches/keywordCount.js +0 -134
  1758. package/src/languageProcessing/researches/keywordCountInUrl.js +0 -57
  1759. package/src/languageProcessing/researches/matchKeywordInSubheadings.js +0 -62
  1760. package/src/languageProcessing/researches/metaDescriptionKeyword.js +0 -85
  1761. package/src/languageProcessing/researches/metaDescriptionLength.js +0 -12
  1762. package/src/languageProcessing/researches/pageTitleWidth.js +0 -11
  1763. package/src/languageProcessing/researches/readingTime.js +0 -82
  1764. package/src/languageProcessing/researches/sentences.js +0 -20
  1765. package/src/languageProcessing/researches/videoCount.js +0 -32
  1766. package/src/languageProcessing/researches/wordComplexity.js +0 -129
  1767. package/src/languageProcessing/researches/wordCountInText.js +0 -29
  1768. package/src/languageProcessing/values/Clause.js +0 -108
  1769. package/src/languageProcessing/values/ProminentWord.js +0 -95
  1770. package/src/languageProcessing/values/Sentence.js +0 -111
  1771. package/src/languageProcessing/values/index.js +0 -9
  1772. package/src/markers/addMark.js +0 -9
  1773. package/src/markers/addMarkSingleWord.js +0 -32
  1774. package/src/markers/index.js +0 -7
  1775. package/src/markers/removeDuplicateMarks.js +0 -27
  1776. package/src/markers/removeMarks.js +0 -11
  1777. package/src/parse/build/build.js +0 -52
  1778. package/src/parse/build/index.js +0 -10
  1779. package/src/parse/build/private/adapt.js +0 -113
  1780. package/src/parse/build/private/adaptAttributes.js +0 -36
  1781. package/src/parse/build/private/alwaysFilterElements.js +0 -75
  1782. package/src/parse/build/private/combineIntoImplicitParagraphs.js +0 -130
  1783. package/src/parse/build/private/filterBeforeTokenizing.js +0 -32
  1784. package/src/parse/build/private/filterHelpers.js +0 -44
  1785. package/src/parse/build/private/filterTree.js +0 -42
  1786. package/src/parse/build/private/getTextElementPositions.js +0 -184
  1787. package/src/parse/build/private/helpers/parseClassAttribute.js +0 -9
  1788. package/src/parse/build/private/isPhrasingContent.js +0 -28
  1789. package/src/parse/build/private/parseBlocks.js +0 -151
  1790. package/src/parse/build/private/tokenize.js +0 -74
  1791. package/src/parse/language/LanguageProcessor.js +0 -74
  1792. package/src/parse/structure/Heading.js +0 -26
  1793. package/src/parse/structure/Node.js +0 -69
  1794. package/src/parse/structure/Paragraph.js +0 -48
  1795. package/src/parse/structure/Sentence.js +0 -30
  1796. package/src/parse/structure/SourceCodeLocation.js +0 -41
  1797. package/src/parse/structure/Text.js +0 -27
  1798. package/src/parse/structure/Token.js +0 -24
  1799. package/src/parse/structure/index.js +0 -16
  1800. package/src/parse/traverse/findAllInTree.js +0 -58
  1801. package/src/parse/traverse/index.js +0 -12
  1802. package/src/parse/traverse/innerText.js +0 -26
  1803. package/src/parsedPaper/ParsedPaper.js +0 -92
  1804. package/src/parsedPaper/assess/TreeAssessor.js +0 -184
  1805. package/src/parsedPaper/assess/assessmentListFactories.js +0 -73
  1806. package/src/parsedPaper/assess/assessments/Assessment.js +0 -79
  1807. package/src/parsedPaper/assess/assessments/index.js +0 -6
  1808. package/src/parsedPaper/assess/assessorFactories.js +0 -104
  1809. package/src/parsedPaper/assess/cornerstone/assessmentListFactories.js +0 -47
  1810. package/src/parsedPaper/assess/cornerstone/index.js +0 -5
  1811. package/src/parsedPaper/assess/index.js +0 -20
  1812. package/src/parsedPaper/build/PaperParser.js +0 -105
  1813. package/src/parsedPaper/build/linguisticParsing/Sentence.js +0 -89
  1814. package/src/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +0 -323
  1815. package/src/parsedPaper/build/linguisticParsing/parseText.js +0 -20
  1816. package/src/parsedPaper/build/tree/TreeBuilder.js +0 -75
  1817. package/src/parsedPaper/build/tree/cleanup/calculateTextIndices.js +0 -190
  1818. package/src/parsedPaper/build/tree/cleanup/getElementContent.js +0 -21
  1819. package/src/parsedPaper/build/tree/cleanup/postParsing.js +0 -37
  1820. package/src/parsedPaper/build/tree/html/HTMLTreeConverter.js +0 -230
  1821. package/src/parsedPaper/build/tree/html/buildTree.js +0 -31
  1822. package/src/parsedPaper/build/tree/html/htmlConstants.js +0 -37
  1823. package/src/parsedPaper/build/tree/index.js +0 -14
  1824. package/src/parsedPaper/build/tree/metadata/buildTree.js +0 -32
  1825. package/src/parsedPaper/research/TreeResearcher.js +0 -134
  1826. package/src/parsedPaper/research/index.js +0 -13
  1827. package/src/parsedPaper/research/researches/Headings.js +0 -20
  1828. package/src/parsedPaper/research/researches/LinkStatistics.js +0 -128
  1829. package/src/parsedPaper/research/researches/Research.js +0 -50
  1830. package/src/parsedPaper/research/researches/index.js +0 -1
  1831. package/src/parsedPaper/structure/tree/FormattingElement.js +0 -67
  1832. package/src/parsedPaper/structure/tree/SourceCodeLocation.js +0 -31
  1833. package/src/parsedPaper/structure/tree/TextContainer.js +0 -85
  1834. package/src/parsedPaper/structure/tree/index.js +0 -22
  1835. package/src/parsedPaper/structure/tree/nodes/Heading.js +0 -26
  1836. package/src/parsedPaper/structure/tree/nodes/LeafNode.js +0 -75
  1837. package/src/parsedPaper/structure/tree/nodes/List.js +0 -47
  1838. package/src/parsedPaper/structure/tree/nodes/ListItem.js +0 -26
  1839. package/src/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +0 -46
  1840. package/src/parsedPaper/structure/tree/nodes/MetadataText.js +0 -26
  1841. package/src/parsedPaper/structure/tree/nodes/Node.js +0 -154
  1842. package/src/parsedPaper/structure/tree/nodes/Paragraph.js +0 -24
  1843. package/src/parsedPaper/structure/tree/nodes/StructuredNode.js +0 -52
  1844. package/src/parsedPaper/structure/tree/nodes/index.js +0 -21
  1845. package/src/scoring/assessments/assessment.js +0 -63
  1846. package/src/scoring/assessments/index.js +0 -58
  1847. package/src/scoring/assessments/readability/ParagraphTooLongAssessment.js +0 -173
  1848. package/src/scoring/assessments/readability/SentenceBeginningsAssessment.js +0 -132
  1849. package/src/scoring/assessments/readability/SentenceLengthInTextAssessment.js +0 -186
  1850. package/src/scoring/assessments/readability/TransitionWordsAssessment.js +0 -168
  1851. package/src/scoring/assessments/seo/ImageCountAssessment.js +0 -112
  1852. package/src/scoring/assessments/seo/InternalLinksAssessment.js +0 -114
  1853. package/src/scoring/assessments/seo/IntroductionKeywordAssessment.js +0 -110
  1854. package/src/scoring/assessments/seo/KeyphraseAssessment.js +0 -104
  1855. package/src/scoring/assessments/seo/KeyphraseLengthAssessment.js +0 -110
  1856. package/src/scoring/assessments/seo/KeywordDensityAssessment.js +0 -116
  1857. package/src/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +0 -114
  1858. package/src/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +0 -112
  1859. package/src/scoring/assessments/seo/MetaTitleKeywordAssessment.js +0 -111
  1860. package/src/scoring/assessments/seo/NumberInMetaTitleAssessment.js +0 -107
  1861. package/src/scoring/assessments/seo/OutboundLinksAssessment.js +0 -111
  1862. package/src/scoring/assessments/seo/PageTitleWidthAssessment.js +0 -104
  1863. package/src/scoring/assessments/seo/SingleH1Assessment.js +0 -118
  1864. package/src/scoring/assessments/seo/SingleTitleAssessment.js +0 -108
  1865. package/src/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +0 -107
  1866. package/src/scoring/assessments/seo/TextImagesAssessment.js +0 -144
  1867. package/src/scoring/assessments/seo/TextLengthAssessment.js +0 -100
  1868. package/src/scoring/assessments/seo/UrlKeywordAssessment.js +0 -111
  1869. package/src/scoring/assessments/seo/UrlLengthAssessment.js +0 -103
  1870. package/src/scoring/assessors/assessor.js +0 -269
  1871. package/src/scoring/assessors/avadaAssessor.js +0 -67
  1872. package/src/scoring/assessors/contentAssessor.js +0 -159
  1873. package/src/scoring/assessors/index.js +0 -4
  1874. package/src/scoring/assessors/seoAssessor.js +0 -57
  1875. package/src/scoring/helpers/assessments/checkForTooLongSentences.js +0 -13
  1876. package/src/scoring/helpers/assessments/inRange.js +0 -49
  1877. package/src/scoring/helpers/assessments/keyphraseLengthFactor.js +0 -10
  1878. package/src/scoring/helpers/assessments/recommendedKeywordCount.js +0 -43
  1879. package/src/scoring/helpers/index.js +0 -74
  1880. package/src/scoring/interpreters/index.js +0 -5
  1881. package/src/scoring/interpreters/scoreToRating.js +0 -31
  1882. package/src/scoring/renderers/AssessorPresenter.js +0 -360
  1883. package/src/scoring/scoreAggregators/ReadabilityScoreAggregator.js +0 -203
  1884. package/src/scoring/scoreAggregators/SEOScoreAggregator.js +0 -54
  1885. package/src/scoring/scoreAggregators/ScoreAggregator.js +0 -23
  1886. package/src/scoring/scoreAggregators/index.js +0 -3
  1887. package/src/values/AssessmentResult.js +0 -496
  1888. package/src/values/Mark.js +0 -271
  1889. package/src/values/Paper.js +0 -425
  1890. package/src/values/index.js +0 -9
  1891. package/src/vendor/turkishStemmer.js +0 -3435
  1892. package/tsconfig.json +0 -15
@@ -1,18 +1,12 @@
1
- "use strict";
1
+ import { flattenDeep, max, uniq as unique, zipWith } from "lodash";
2
+ import { findWordFormsInString } from "../helpers/match/findKeywordFormsInString";
3
+ import { markWordsInSentences } from "../helpers/word/markWordsInSentences";
4
+ import getSentences from "../helpers/sentence/getSentences";
5
+ import parseSynonyms from "../helpers/sanitize/parseSynonyms";
6
+ import { mergeListItems } from "../helpers/sanitize/mergeListItems";
7
+ import removeHtmlBlocks from "../helpers/html/htmlParser";
8
+ import { filterShortcodesFromHTML } from "../helpers/sanitize/filterShortcodesFromTree";
2
9
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.maximizeSentenceScores = exports.keyphraseDistributionResearcher = exports.getDistraction = exports.default = exports.computeScoresPerSentenceShortTopic = exports.computeScoresPerSentenceLongTopic = void 0;
7
- var _lodash = require("lodash");
8
- var _findKeywordFormsInString = require("../helpers/match/findKeywordFormsInString");
9
- var _markWordsInSentences = require("../helpers/word/markWordsInSentences");
10
- var _getSentences = _interopRequireDefault(require("../helpers/sentence/getSentences"));
11
- var _parseSynonyms = _interopRequireDefault(require("../helpers/sanitize/parseSynonyms"));
12
- var _mergeListItems = require("../helpers/sanitize/mergeListItems");
13
- var _htmlParser = _interopRequireDefault(require("../helpers/html/htmlParser"));
14
- var _filterShortcodesFromTree = require("../helpers/sanitize/filterShortcodesFromTree");
15
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
10
  /**
17
11
  * Checks whether at least half of the content words from the topic are found within the sentence.
18
12
  * Assigns a score to every sentence following the following schema:
@@ -29,7 +23,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
29
23
  const computeScoresPerSentenceLongTopic = function (topic, sentences, locale, matchWordCustomHelper) {
30
24
  const sentenceScores = Array(sentences.length);
31
25
  for (let i = 0; i < sentences.length; i++) {
32
- const foundInCurrentSentence = (0, _findKeywordFormsInString.findWordFormsInString)(topic, sentences[i], locale, matchWordCustomHelper);
26
+ const foundInCurrentSentence = findWordFormsInString(topic, sentences[i], locale, matchWordCustomHelper);
33
27
  if (foundInCurrentSentence.percentWordMatches >= 50) {
34
28
  sentenceScores[i] = 9;
35
29
  } else {
@@ -52,12 +46,11 @@ const computeScoresPerSentenceLongTopic = function (topic, sentences, locale, ma
52
46
  *
53
47
  * @returns {Array} The scores per sentence.
54
48
  */
55
- exports.computeScoresPerSentenceLongTopic = computeScoresPerSentenceLongTopic;
56
49
  const computeScoresPerSentenceShortTopic = function (topic, sentences, locale, matchWordCustomHelper) {
57
50
  const sentenceScores = Array(sentences.length);
58
51
  for (let i = 0; i < sentences.length; i++) {
59
52
  const currentSentence = sentences[i];
60
- const foundInCurrentSentence = (0, _findKeywordFormsInString.findWordFormsInString)(topic, currentSentence, locale, matchWordCustomHelper);
53
+ const foundInCurrentSentence = findWordFormsInString(topic, currentSentence, locale, matchWordCustomHelper);
61
54
  if (foundInCurrentSentence.percentWordMatches === 100) {
62
55
  sentenceScores[i] = 9;
63
56
  } else {
@@ -74,7 +67,6 @@ const computeScoresPerSentenceShortTopic = function (topic, sentences, locale, m
74
67
  *
75
68
  * @returns {Array} Maximal scores of topic relevance per sentence.
76
69
  */
77
- exports.computeScoresPerSentenceShortTopic = computeScoresPerSentenceShortTopic;
78
70
  const maximizeSentenceScores = function (sentenceScores) {
79
71
  const sentenceScoresTransposed = sentenceScores[0].map(function (col, i) {
80
72
  return sentenceScores.map(function (row) {
@@ -82,7 +74,7 @@ const maximizeSentenceScores = function (sentenceScores) {
82
74
  });
83
75
  });
84
76
  return sentenceScoresTransposed.map(function (scoresForOneSentence) {
85
- return (0, _lodash.max)(scoresForOneSentence);
77
+ return max(scoresForOneSentence);
86
78
  });
87
79
  };
88
80
 
@@ -93,7 +85,6 @@ const maximizeSentenceScores = function (sentenceScores) {
93
85
  *
94
86
  * @returns {number} The maximum number of sentences that do not include the topic.
95
87
  */
96
- exports.maximizeSentenceScores = maximizeSentenceScores;
97
88
  const getDistraction = function (sentenceScores) {
98
89
  const numberOfSentences = sentenceScores.length;
99
90
  const allTopicSentencesIndices = [];
@@ -117,7 +108,7 @@ const getDistraction = function (sentenceScores) {
117
108
  for (let i = 1; i < numberOfTopicSentences + 2; i++) {
118
109
  distances.push(allTopicSentencesIndices[i] - allTopicSentencesIndices[i - 1] - 1);
119
110
  }
120
- return (0, _lodash.max)(distances);
111
+ return max(distances);
121
112
  };
122
113
 
123
114
  /**
@@ -135,7 +126,6 @@ const getDistraction = function (sentenceScores) {
135
126
  *
136
127
  * @returns {Object} An array with maximized score per sentence and an array with all sentences that do not contain the topic.
137
128
  */
138
- exports.getDistraction = getDistraction;
139
129
  const getSentenceScores = function (sentences, topicFormsInOneArray, locale, functionWords, matchWordCustomHelper, topicLengthCriteria = 4, originalTopic, wordsCharacterCount) {
140
130
  // Compute per-sentence scores of topic-relatedness.
141
131
  const topicNumber = topicFormsInOneArray.length;
@@ -169,7 +159,7 @@ const getSentenceScores = function (sentences, topicFormsInOneArray, locale, fun
169
159
  const maximizedSentenceScores = maximizeSentenceScores(sentenceScores);
170
160
 
171
161
  // Zip an array combining each sentence with the associated maximized score.
172
- const sentencesWithMaximizedScores = (0, _lodash.zipWith)(sentences, maximizedSentenceScores, (sentence, score) => {
162
+ const sentencesWithMaximizedScores = zipWith(sentences, maximizedSentenceScores, (sentence, score) => {
173
163
  return {
174
164
  sentence,
175
165
  score
@@ -202,32 +192,32 @@ const keyphraseDistributionResearcher = function (paper, researcher) {
202
192
  // Custom topic length criteria for languages that don't use the default value to determine whether a topic is long or short.
203
193
  const topicLengthCriteria = researcher.getConfig("topicLength").lengthCriteria;
204
194
  let text = paper.getText();
205
- text = (0, _htmlParser.default)(text);
206
- text = (0, _filterShortcodesFromTree.filterShortcodesFromHTML)(text, paper._attributes && paper._attributes.shortcodes);
207
- text = (0, _mergeListItems.mergeListItems)(text);
208
- const sentences = (0, _getSentences.default)(text, memoizedTokenizer);
195
+ text = removeHtmlBlocks(text);
196
+ text = filterShortcodesFromHTML(text, paper._attributes && paper._attributes.shortcodes);
197
+ text = mergeListItems(text);
198
+ const sentences = getSentences(text, memoizedTokenizer);
209
199
  const topicForms = researcher.getResearch("morphology");
210
200
  const originalTopic = [];
211
201
  if (getContentWordsHelper) {
212
202
  originalTopic.push(getContentWordsHelper(paper.getKeyword()));
213
- (0, _parseSynonyms.default)(paper.getSynonyms()).forEach(synonym => originalTopic.push(getContentWordsHelper(synonym)));
203
+ parseSynonyms(paper.getSynonyms()).forEach(synonym => originalTopic.push(getContentWordsHelper(synonym)));
214
204
  }
215
205
  const locale = paper.getLocale();
216
206
  const topicFormsInOneArray = [topicForms.keyphraseForms];
217
207
  topicForms.synonymsForms.forEach(function (synonym) {
218
208
  topicFormsInOneArray.push(synonym);
219
209
  });
220
- const allTopicWords = (0, _lodash.uniq)((0, _lodash.flattenDeep)(topicFormsInOneArray)).sort((a, b) => b.length - a.length);
210
+ const allTopicWords = unique(flattenDeep(topicFormsInOneArray)).sort((a, b) => b.length - a.length);
221
211
 
222
212
  // Get per-sentence scores and sentences that have topic.
223
213
  const sentenceScores = getSentenceScores(sentences, topicFormsInOneArray, locale, functionWords, matchWordCustomHelper, topicLengthCriteria, originalTopic, wordsCharacterCount);
224
214
  const maximizedSentenceScores = sentenceScores.maximizedSentenceScores;
225
215
  const maxLengthDistraction = getDistraction(maximizedSentenceScores);
226
216
  return {
227
- sentencesToHighlight: (0, _markWordsInSentences.markWordsInSentences)(allTopicWords, sentenceScores.sentencesWithTopic, locale, matchWordCustomHelper),
217
+ sentencesToHighlight: markWordsInSentences(allTopicWords, sentenceScores.sentencesWithTopic, locale, matchWordCustomHelper),
228
218
  keyphraseDistributionScore: maxLengthDistraction / sentences.length * 100
229
219
  };
230
220
  };
231
- exports.keyphraseDistributionResearcher = keyphraseDistributionResearcher;
232
- var _default = exports.default = keyphraseDistributionResearcher;
221
+ export { computeScoresPerSentenceShortTopic, computeScoresPerSentenceLongTopic, maximizeSentenceScores, keyphraseDistributionResearcher, getDistraction };
222
+ export default keyphraseDistributionResearcher;
233
223
  //# sourceMappingURL=keyphraseDistribution.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyphraseDistribution.js","names":["_lodash","require","_findKeywordFormsInString","_markWordsInSentences","_getSentences","_interopRequireDefault","_parseSynonyms","_mergeListItems","_htmlParser","_filterShortcodesFromTree","e","__esModule","default","computeScoresPerSentenceLongTopic","topic","sentences","locale","matchWordCustomHelper","sentenceScores","Array","length","i","foundInCurrentSentence","findWordFormsInString","percentWordMatches","exports","computeScoresPerSentenceShortTopic","currentSentence","maximizeSentenceScores","sentenceScoresTransposed","map","col","row","scoresForOneSentence","max","getDistraction","numberOfSentences","allTopicSentencesIndices","push","numberOfTopicSentences","unshift","distances","getSentenceScores","topicFormsInOneArray","functionWords","topicLengthCriteria","originalTopic","wordsCharacterCount","topicNumber","topicLength","maximizedSentenceScores","sentencesWithMaximizedScores","zipWith","sentence","score","sentencesWithTopic","filter","sentenceObject","keyphraseDistributionResearcher","paper","researcher","getConfig","getHelper","getContentWordsHelper","getResearch","memoizedTokenizer","lengthCriteria","text","getText","removeHtmlBlocks","filterShortcodesFromHTML","_attributes","shortcodes","mergeListItems","getSentences","topicForms","getKeyword","parseSynonyms","getSynonyms","forEach","synonym","getLocale","keyphraseForms","synonymsForms","allTopicWords","unique","flattenDeep","sort","a","b","maxLengthDistraction","sentencesToHighlight","markWordsInSentences","keyphraseDistributionScore","_default"],"sources":["../../../src/languageProcessing/researches/keyphraseDistribution.js"],"sourcesContent":["import { flattenDeep, max, uniq as unique, zipWith } from \"lodash\";\nimport { findWordFormsInString } from \"../helpers/match/findKeywordFormsInString\";\nimport { markWordsInSentences } from \"../helpers/word/markWordsInSentences\";\nimport getSentences from \"../helpers/sentence/getSentences\";\nimport parseSynonyms from \"../helpers/sanitize/parseSynonyms\";\nimport { mergeListItems } from \"../helpers/sanitize/mergeListItems\";\nimport removeHtmlBlocks from \"../helpers/html/htmlParser\";\nimport { filterShortcodesFromHTML } from \"../helpers/sanitize/filterShortcodesFromTree\";\n\n/**\n * Checks whether at least half of the content words from the topic are found within the sentence.\n * Assigns a score to every sentence following the following schema:\n * 9 if at least half of the content words from the topic are in the sentence,\n * 3 otherwise.\n *\n * @param {Array} topic The word forms of all content words in a keyphrase or a synonym.\n * @param {Array} sentences An array of all sentences in the text.\n * @param {string} locale The locale of the paper to analyse.\n * @param {function} matchWordCustomHelper \tThe language-specific helper function to match word in text.\n *\n * @returns {Array} The scores per sentence.\n */\nconst computeScoresPerSentenceLongTopic = function( topic, sentences, locale, matchWordCustomHelper ) {\n\tconst sentenceScores = Array( sentences.length );\n\n\tfor ( let i = 0; i < sentences.length; i++ ) {\n\t\tconst foundInCurrentSentence = findWordFormsInString( topic, sentences[ i ], locale, matchWordCustomHelper );\n\n\t\tif ( foundInCurrentSentence.percentWordMatches >= 50 ) {\n\t\t\tsentenceScores[ i ] = 9;\n\t\t} else {\n\t\t\tsentenceScores[ i ] = 3;\n\t\t}\n\t}\n\n\treturn sentenceScores;\n};\n\n\n/**\n * Checks whether all content words from the topic are found within one sentence.\n * Assigns a score to every sentence following the following schema:\n * 9 if all content words from the topic are in the sentence,\n * 3 if not all content words from the topic were found in the sentence.\n *\n * @param {Array} topic The word forms of all content words in a keyphrase or a synonym.\n * @param {Array} sentences An array of all sentences in the text.\n * @param {string} locale The locale of the paper to analyse.\n * @param {function} matchWordCustomHelper \tThe language-specific helper function to match word in text.\n *\n * @returns {Array} The scores per sentence.\n */\nconst computeScoresPerSentenceShortTopic = function( topic, sentences, locale, matchWordCustomHelper ) {\n\tconst sentenceScores = Array( sentences.length );\n\n\tfor ( let i = 0; i < sentences.length; i++ ) {\n\t\tconst currentSentence = sentences[ i ];\n\t\tconst foundInCurrentSentence = findWordFormsInString( topic, currentSentence, locale, matchWordCustomHelper );\n\t\tif ( foundInCurrentSentence.percentWordMatches === 100 ) {\n\t\t\tsentenceScores[ i ] = 9;\n\t\t} else {\n\t\t\tsentenceScores[ i ] = 3;\n\t\t}\n\t}\n\treturn sentenceScores;\n};\n\n/**\n * Maximizes scores: Give every sentence a maximal score that it got from analysis of all topics\n *\n * @param {Array} sentenceScores The scores for every sentence, as assessed per keyphrase and every synonym.\n *\n * @returns {Array} Maximal scores of topic relevance per sentence.\n */\nconst maximizeSentenceScores = function( sentenceScores ) {\n\tconst sentenceScoresTransposed = sentenceScores[ 0 ].map( function( col, i ) {\n\t\treturn sentenceScores.map( function( row ) {\n\t\t\treturn row[ i ];\n\t\t} );\n\t} );\n\n\treturn sentenceScoresTransposed.map( function( scoresForOneSentence ) {\n\t\treturn max( scoresForOneSentence );\n\t} );\n};\n\n\n/**\n * Computes the maximally long piece of text that does not include the topic.\n *\n * @param {Array} sentenceScores The array of scores per sentence.\n *\n * @returns {number} The maximum number of sentences that do not include the topic.\n */\nconst getDistraction = function( sentenceScores ) {\n\tconst numberOfSentences = sentenceScores.length;\n\tconst allTopicSentencesIndices = [];\n\n\tfor ( let i = 0; i < numberOfSentences; i++ ) {\n\t\tif ( sentenceScores[ i ] > 3 ) {\n\t\t\tallTopicSentencesIndices.push( i );\n\t\t}\n\t}\n\n\tconst numberOfTopicSentences = allTopicSentencesIndices.length;\n\n\tif ( numberOfTopicSentences === 0 ) {\n\t\treturn numberOfSentences;\n\t}\n\n\t/**\n\t * Add fake topic sentences at the very beginning and at the very end\n\t * to account for cases when the text starts or ends with a train of distraction.\n\t */\n\tallTopicSentencesIndices.unshift( -1 );\n\tallTopicSentencesIndices.push( numberOfSentences );\n\n\tconst distances = [];\n\n\tfor ( let i = 1; i < numberOfTopicSentences + 2; i++ ) {\n\t\tdistances.push( allTopicSentencesIndices[ i ] - allTopicSentencesIndices[ i - 1 ] - 1 );\n\t}\n\n\treturn max( distances );\n};\n\n/**\n * Computes the per-sentence scores depending on the length of the topic phrase and maximizes them over all topic phrases.\n *\n * @param {Array} sentences The sentences to get scores for.\n * @param {Array} topicFormsInOneArray The topic phrases forms to search for in the sentences.\n * @param {string} locale The locale to work in.\n * @param {Array} functionWords The function words list.\n * @param {function} matchWordCustomHelper \tThe language-specific helper function to match word in text.\n * @param {int} topicLengthCriteria The topic length criteria. The default value is 4, where a topic is considered short\n * if it's less than 4 word long, and otherwise long.\n * @param {Array} originalTopic The array of the original form of the topic with function words filtered out.\n * @param {function} wordsCharacterCount The helper to calculate the characters length of all the words in the array.\n *\n * @returns {Object} An array with maximized score per sentence and an array with all sentences that do not contain the topic.\n */\nconst getSentenceScores = function( sentences, topicFormsInOneArray, locale, functionWords, matchWordCustomHelper,\n\ttopicLengthCriteria = 4, originalTopic, wordsCharacterCount ) {\n\t// Compute per-sentence scores of topic-relatedness.\n\tconst topicNumber = topicFormsInOneArray.length;\n\n\tconst sentenceScores = Array( topicNumber );\n\n\t// For languages with function words apply either full match or partial match depending on topic length\n\tif ( functionWords.length > 0 ) {\n\t\tfor ( let i = 0; i < topicNumber; i++ ) {\n\t\t\tconst topic = topicFormsInOneArray[ i ];\n\t\t\t/*\n\t\t\t * If the helper to calculate the characters length of all the words in the array is available,\n\t\t\t * we use this helper to calculate the characters length of the original topic form.\n\t\t\t * We then use the result and compare it with the topicLengthCriteria.\n\t\t\t */\n\t\t\tconst topicLength = wordsCharacterCount ? wordsCharacterCount( originalTopic[ i ] ) : topic.length;\n\t\t\tif ( topicLength < topicLengthCriteria ) {\n\t\t\t\tsentenceScores[ i ] = computeScoresPerSentenceShortTopic( topic, sentences, locale, matchWordCustomHelper );\n\t\t\t} else {\n\t\t\t\tsentenceScores[ i ] = computeScoresPerSentenceLongTopic( topic, sentences, locale, matchWordCustomHelper );\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// For languages without function words apply the full match always\n\t\tfor ( let i = 0; i < topicNumber; i++ ) {\n\t\t\tconst topic = topicFormsInOneArray[ i ];\n\t\t\tsentenceScores[ i ] = computeScoresPerSentenceShortTopic( topic, sentences, locale, matchWordCustomHelper );\n\t\t}\n\t}\n\n\t// Maximize scores: Give every sentence a maximal score that it got from analysis of all topics\n\tconst maximizedSentenceScores = maximizeSentenceScores( sentenceScores );\n\n\t// Zip an array combining each sentence with the associated maximized score.\n\tconst sentencesWithMaximizedScores = zipWith( sentences, maximizedSentenceScores, ( sentence, score ) => {\n\t\treturn { sentence, score };\n\t} );\n\n\t// Filter sentences that contain topic words for future highlights.\n\tconst sentencesWithTopic = sentencesWithMaximizedScores.filter( sentenceObject => sentenceObject.score > 3 );\n\n\treturn {\n\t\tmaximizedSentenceScores: maximizedSentenceScores,\n\t\tsentencesWithTopic: sentencesWithTopic.map( sentenceObject => sentenceObject.sentence ),\n\t};\n};\n\n\n/**\n * Determines which portions of the text did not receive a lot of content words from keyphrase and synonyms.\n *\n * @param {Paper} paper The paper to check the keyphrase distribution for.\n * @param {Researcher} researcher The researcher to use for analysis.\n *\n * @returns {Object} The scores of topic relevance per portion of text and an array of all word forms to highlight.\n */\nconst keyphraseDistributionResearcher = function( paper, researcher ) {\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\tconst matchWordCustomHelper = researcher.getHelper( \"matchWordCustomHelper\" );\n\tconst getContentWordsHelper = researcher.getHelper( \"getContentWords\" );\n\tconst wordsCharacterCount = researcher.getResearch( \"wordsCharacterCount\" );\n\tconst memoizedTokenizer = researcher.getHelper( \"memoizedTokenizer\" );\n\n\t// Custom topic length criteria for languages that don't use the default value to determine whether a topic is long or short.\n\tconst topicLengthCriteria = researcher.getConfig( \"topicLength\" ).lengthCriteria;\n\n\tlet text = paper.getText();\n\ttext = removeHtmlBlocks( text );\n\ttext = filterShortcodesFromHTML( text, paper._attributes && paper._attributes.shortcodes );\n\ttext = mergeListItems( text );\n\tconst sentences = getSentences( text, memoizedTokenizer );\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\n\tconst originalTopic = [];\n\tif ( getContentWordsHelper ) {\n\t\toriginalTopic.push( getContentWordsHelper( paper.getKeyword() ) );\n\t\tparseSynonyms( paper.getSynonyms() ).forEach( synonym => originalTopic.push( getContentWordsHelper( synonym ) ) );\n\t}\n\tconst locale = paper.getLocale();\n\tconst topicFormsInOneArray = [ topicForms.keyphraseForms ];\n\ttopicForms.synonymsForms.forEach( function( synonym ) {\n\t\ttopicFormsInOneArray.push( synonym );\n\t} );\n\n\tconst allTopicWords = unique( flattenDeep( topicFormsInOneArray ) ).sort( ( a, b ) => b.length - a.length );\n\n\t// Get per-sentence scores and sentences that have topic.\n\tconst sentenceScores = getSentenceScores( sentences, topicFormsInOneArray, locale, functionWords, matchWordCustomHelper,\n\t\ttopicLengthCriteria, originalTopic, wordsCharacterCount );\n\tconst maximizedSentenceScores = sentenceScores.maximizedSentenceScores;\n\tconst maxLengthDistraction = getDistraction( maximizedSentenceScores );\n\n\treturn {\n\t\tsentencesToHighlight: markWordsInSentences( allTopicWords, sentenceScores.sentencesWithTopic, locale, matchWordCustomHelper ),\n\t\tkeyphraseDistributionScore: maxLengthDistraction / sentences.length * 100,\n\t};\n};\n\nexport {\n\tcomputeScoresPerSentenceShortTopic,\n\tcomputeScoresPerSentenceLongTopic,\n\tmaximizeSentenceScores,\n\tkeyphraseDistributionResearcher,\n\tgetDistraction,\n};\n\nexport default keyphraseDistributionResearcher;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"keyphraseDistribution.js","names":["flattenDeep","max","uniq","unique","zipWith","findWordFormsInString","markWordsInSentences","getSentences","parseSynonyms","mergeListItems","removeHtmlBlocks","filterShortcodesFromHTML","computeScoresPerSentenceLongTopic","topic","sentences","locale","matchWordCustomHelper","sentenceScores","Array","length","i","foundInCurrentSentence","percentWordMatches","computeScoresPerSentenceShortTopic","currentSentence","maximizeSentenceScores","sentenceScoresTransposed","map","col","row","scoresForOneSentence","getDistraction","numberOfSentences","allTopicSentencesIndices","push","numberOfTopicSentences","unshift","distances","getSentenceScores","topicFormsInOneArray","functionWords","topicLengthCriteria","originalTopic","wordsCharacterCount","topicNumber","topicLength","maximizedSentenceScores","sentencesWithMaximizedScores","sentence","score","sentencesWithTopic","filter","sentenceObject","keyphraseDistributionResearcher","paper","researcher","getConfig","getHelper","getContentWordsHelper","getResearch","memoizedTokenizer","lengthCriteria","text","getText","_attributes","shortcodes","topicForms","getKeyword","getSynonyms","forEach","synonym","getLocale","keyphraseForms","synonymsForms","allTopicWords","sort","a","b","maxLengthDistraction","sentencesToHighlight","keyphraseDistributionScore"],"sources":["../../../src/languageProcessing/researches/keyphraseDistribution.js"],"sourcesContent":["import { flattenDeep, max, uniq as unique, zipWith } from \"lodash\";\nimport { findWordFormsInString } from \"../helpers/match/findKeywordFormsInString\";\nimport { markWordsInSentences } from \"../helpers/word/markWordsInSentences\";\nimport getSentences from \"../helpers/sentence/getSentences\";\nimport parseSynonyms from \"../helpers/sanitize/parseSynonyms\";\nimport { mergeListItems } from \"../helpers/sanitize/mergeListItems\";\nimport removeHtmlBlocks from \"../helpers/html/htmlParser\";\nimport { filterShortcodesFromHTML } from \"../helpers/sanitize/filterShortcodesFromTree\";\n\n/**\n * Checks whether at least half of the content words from the topic are found within the sentence.\n * Assigns a score to every sentence following the following schema:\n * 9 if at least half of the content words from the topic are in the sentence,\n * 3 otherwise.\n *\n * @param {Array} topic The word forms of all content words in a keyphrase or a synonym.\n * @param {Array} sentences An array of all sentences in the text.\n * @param {string} locale The locale of the paper to analyse.\n * @param {function} matchWordCustomHelper \tThe language-specific helper function to match word in text.\n *\n * @returns {Array} The scores per sentence.\n */\nconst computeScoresPerSentenceLongTopic = function( topic, sentences, locale, matchWordCustomHelper ) {\n\tconst sentenceScores = Array( sentences.length );\n\n\tfor ( let i = 0; i < sentences.length; i++ ) {\n\t\tconst foundInCurrentSentence = findWordFormsInString( topic, sentences[ i ], locale, matchWordCustomHelper );\n\n\t\tif ( foundInCurrentSentence.percentWordMatches >= 50 ) {\n\t\t\tsentenceScores[ i ] = 9;\n\t\t} else {\n\t\t\tsentenceScores[ i ] = 3;\n\t\t}\n\t}\n\n\treturn sentenceScores;\n};\n\n\n/**\n * Checks whether all content words from the topic are found within one sentence.\n * Assigns a score to every sentence following the following schema:\n * 9 if all content words from the topic are in the sentence,\n * 3 if not all content words from the topic were found in the sentence.\n *\n * @param {Array} topic The word forms of all content words in a keyphrase or a synonym.\n * @param {Array} sentences An array of all sentences in the text.\n * @param {string} locale The locale of the paper to analyse.\n * @param {function} matchWordCustomHelper \tThe language-specific helper function to match word in text.\n *\n * @returns {Array} The scores per sentence.\n */\nconst computeScoresPerSentenceShortTopic = function( topic, sentences, locale, matchWordCustomHelper ) {\n\tconst sentenceScores = Array( sentences.length );\n\n\tfor ( let i = 0; i < sentences.length; i++ ) {\n\t\tconst currentSentence = sentences[ i ];\n\t\tconst foundInCurrentSentence = findWordFormsInString( topic, currentSentence, locale, matchWordCustomHelper );\n\t\tif ( foundInCurrentSentence.percentWordMatches === 100 ) {\n\t\t\tsentenceScores[ i ] = 9;\n\t\t} else {\n\t\t\tsentenceScores[ i ] = 3;\n\t\t}\n\t}\n\treturn sentenceScores;\n};\n\n/**\n * Maximizes scores: Give every sentence a maximal score that it got from analysis of all topics\n *\n * @param {Array} sentenceScores The scores for every sentence, as assessed per keyphrase and every synonym.\n *\n * @returns {Array} Maximal scores of topic relevance per sentence.\n */\nconst maximizeSentenceScores = function( sentenceScores ) {\n\tconst sentenceScoresTransposed = sentenceScores[ 0 ].map( function( col, i ) {\n\t\treturn sentenceScores.map( function( row ) {\n\t\t\treturn row[ i ];\n\t\t} );\n\t} );\n\n\treturn sentenceScoresTransposed.map( function( scoresForOneSentence ) {\n\t\treturn max( scoresForOneSentence );\n\t} );\n};\n\n\n/**\n * Computes the maximally long piece of text that does not include the topic.\n *\n * @param {Array} sentenceScores The array of scores per sentence.\n *\n * @returns {number} The maximum number of sentences that do not include the topic.\n */\nconst getDistraction = function( sentenceScores ) {\n\tconst numberOfSentences = sentenceScores.length;\n\tconst allTopicSentencesIndices = [];\n\n\tfor ( let i = 0; i < numberOfSentences; i++ ) {\n\t\tif ( sentenceScores[ i ] > 3 ) {\n\t\t\tallTopicSentencesIndices.push( i );\n\t\t}\n\t}\n\n\tconst numberOfTopicSentences = allTopicSentencesIndices.length;\n\n\tif ( numberOfTopicSentences === 0 ) {\n\t\treturn numberOfSentences;\n\t}\n\n\t/**\n\t * Add fake topic sentences at the very beginning and at the very end\n\t * to account for cases when the text starts or ends with a train of distraction.\n\t */\n\tallTopicSentencesIndices.unshift( -1 );\n\tallTopicSentencesIndices.push( numberOfSentences );\n\n\tconst distances = [];\n\n\tfor ( let i = 1; i < numberOfTopicSentences + 2; i++ ) {\n\t\tdistances.push( allTopicSentencesIndices[ i ] - allTopicSentencesIndices[ i - 1 ] - 1 );\n\t}\n\n\treturn max( distances );\n};\n\n/**\n * Computes the per-sentence scores depending on the length of the topic phrase and maximizes them over all topic phrases.\n *\n * @param {Array} sentences The sentences to get scores for.\n * @param {Array} topicFormsInOneArray The topic phrases forms to search for in the sentences.\n * @param {string} locale The locale to work in.\n * @param {Array} functionWords The function words list.\n * @param {function} matchWordCustomHelper \tThe language-specific helper function to match word in text.\n * @param {int} topicLengthCriteria The topic length criteria. The default value is 4, where a topic is considered short\n * if it's less than 4 word long, and otherwise long.\n * @param {Array} originalTopic The array of the original form of the topic with function words filtered out.\n * @param {function} wordsCharacterCount The helper to calculate the characters length of all the words in the array.\n *\n * @returns {Object} An array with maximized score per sentence and an array with all sentences that do not contain the topic.\n */\nconst getSentenceScores = function( sentences, topicFormsInOneArray, locale, functionWords, matchWordCustomHelper,\n\ttopicLengthCriteria = 4, originalTopic, wordsCharacterCount ) {\n\t// Compute per-sentence scores of topic-relatedness.\n\tconst topicNumber = topicFormsInOneArray.length;\n\n\tconst sentenceScores = Array( topicNumber );\n\n\t// For languages with function words apply either full match or partial match depending on topic length\n\tif ( functionWords.length > 0 ) {\n\t\tfor ( let i = 0; i < topicNumber; i++ ) {\n\t\t\tconst topic = topicFormsInOneArray[ i ];\n\t\t\t/*\n\t\t\t * If the helper to calculate the characters length of all the words in the array is available,\n\t\t\t * we use this helper to calculate the characters length of the original topic form.\n\t\t\t * We then use the result and compare it with the topicLengthCriteria.\n\t\t\t */\n\t\t\tconst topicLength = wordsCharacterCount ? wordsCharacterCount( originalTopic[ i ] ) : topic.length;\n\t\t\tif ( topicLength < topicLengthCriteria ) {\n\t\t\t\tsentenceScores[ i ] = computeScoresPerSentenceShortTopic( topic, sentences, locale, matchWordCustomHelper );\n\t\t\t} else {\n\t\t\t\tsentenceScores[ i ] = computeScoresPerSentenceLongTopic( topic, sentences, locale, matchWordCustomHelper );\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// For languages without function words apply the full match always\n\t\tfor ( let i = 0; i < topicNumber; i++ ) {\n\t\t\tconst topic = topicFormsInOneArray[ i ];\n\t\t\tsentenceScores[ i ] = computeScoresPerSentenceShortTopic( topic, sentences, locale, matchWordCustomHelper );\n\t\t}\n\t}\n\n\t// Maximize scores: Give every sentence a maximal score that it got from analysis of all topics\n\tconst maximizedSentenceScores = maximizeSentenceScores( sentenceScores );\n\n\t// Zip an array combining each sentence with the associated maximized score.\n\tconst sentencesWithMaximizedScores = zipWith( sentences, maximizedSentenceScores, ( sentence, score ) => {\n\t\treturn { sentence, score };\n\t} );\n\n\t// Filter sentences that contain topic words for future highlights.\n\tconst sentencesWithTopic = sentencesWithMaximizedScores.filter( sentenceObject => sentenceObject.score > 3 );\n\n\treturn {\n\t\tmaximizedSentenceScores: maximizedSentenceScores,\n\t\tsentencesWithTopic: sentencesWithTopic.map( sentenceObject => sentenceObject.sentence ),\n\t};\n};\n\n\n/**\n * Determines which portions of the text did not receive a lot of content words from keyphrase and synonyms.\n *\n * @param {Paper} paper The paper to check the keyphrase distribution for.\n * @param {Researcher} researcher The researcher to use for analysis.\n *\n * @returns {Object} The scores of topic relevance per portion of text and an array of all word forms to highlight.\n */\nconst keyphraseDistributionResearcher = function( paper, researcher ) {\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\tconst matchWordCustomHelper = researcher.getHelper( \"matchWordCustomHelper\" );\n\tconst getContentWordsHelper = researcher.getHelper( \"getContentWords\" );\n\tconst wordsCharacterCount = researcher.getResearch( \"wordsCharacterCount\" );\n\tconst memoizedTokenizer = researcher.getHelper( \"memoizedTokenizer\" );\n\n\t// Custom topic length criteria for languages that don't use the default value to determine whether a topic is long or short.\n\tconst topicLengthCriteria = researcher.getConfig( \"topicLength\" ).lengthCriteria;\n\n\tlet text = paper.getText();\n\ttext = removeHtmlBlocks( text );\n\ttext = filterShortcodesFromHTML( text, paper._attributes && paper._attributes.shortcodes );\n\ttext = mergeListItems( text );\n\tconst sentences = getSentences( text, memoizedTokenizer );\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\n\tconst originalTopic = [];\n\tif ( getContentWordsHelper ) {\n\t\toriginalTopic.push( getContentWordsHelper( paper.getKeyword() ) );\n\t\tparseSynonyms( paper.getSynonyms() ).forEach( synonym => originalTopic.push( getContentWordsHelper( synonym ) ) );\n\t}\n\tconst locale = paper.getLocale();\n\tconst topicFormsInOneArray = [ topicForms.keyphraseForms ];\n\ttopicForms.synonymsForms.forEach( function( synonym ) {\n\t\ttopicFormsInOneArray.push( synonym );\n\t} );\n\n\tconst allTopicWords = unique( flattenDeep( topicFormsInOneArray ) ).sort( ( a, b ) => b.length - a.length );\n\n\t// Get per-sentence scores and sentences that have topic.\n\tconst sentenceScores = getSentenceScores( sentences, topicFormsInOneArray, locale, functionWords, matchWordCustomHelper,\n\t\ttopicLengthCriteria, originalTopic, wordsCharacterCount );\n\tconst maximizedSentenceScores = sentenceScores.maximizedSentenceScores;\n\tconst maxLengthDistraction = getDistraction( maximizedSentenceScores );\n\n\treturn {\n\t\tsentencesToHighlight: markWordsInSentences( allTopicWords, sentenceScores.sentencesWithTopic, locale, matchWordCustomHelper ),\n\t\tkeyphraseDistributionScore: maxLengthDistraction / sentences.length * 100,\n\t};\n};\n\nexport {\n\tcomputeScoresPerSentenceShortTopic,\n\tcomputeScoresPerSentenceLongTopic,\n\tmaximizeSentenceScores,\n\tkeyphraseDistributionResearcher,\n\tgetDistraction,\n};\n\nexport default keyphraseDistributionResearcher;\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = _default;
7
1
  /**
8
2
  * Determines the length in words of the keyphrase.
9
3
  *
@@ -12,7 +6,7 @@ exports.default = _default;
12
6
  *
13
7
  * @returns {Object} The length of the keyphrase and the function words list.
14
8
  */
15
- function _default(paper, researcher) {
9
+ export default function (paper, researcher) {
16
10
  const topicForms = researcher.getResearch("morphology");
17
11
  const functionWords = researcher.getConfig("functionWords");
18
12
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"keyphraseLength.js","names":["_default","paper","researcher","topicForms","getResearch","functionWords","getConfig","keyphraseLength","keyphraseForms","length"],"sources":["../../../src/languageProcessing/researches/keyphraseLength.js"],"sourcesContent":["/**\n * Determines the length in words of the keyphrase.\n *\n * @param {Paper} paper \t\t\tThe paper to research\n * @param {Researcher} researcher \tThe researcher to use for analysis\n *\n * @returns {Object} The length of the keyphrase and the function words list.\n */\nexport default function( paper, researcher ) {\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\n\treturn {\n\t\tkeyphraseLength: topicForms.keyphraseForms.length,\n\t\tfunctionWords: functionWords,\n\t};\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAAA,SAAUC,KAAK,EAAEC,UAAU,EAAG;EAC5C,MAAMC,UAAU,GAAGD,UAAU,CAACE,WAAW,CAAE,YAAa,CAAC;EACzD,MAAMC,aAAa,GAAGH,UAAU,CAACI,SAAS,CAAE,eAAgB,CAAC;EAE7D,OAAO;IACNC,eAAe,EAAEJ,UAAU,CAACK,cAAc,CAACC,MAAM;IACjDJ,aAAa,EAAEA;EAChB,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"file":"keyphraseLength.js","names":["paper","researcher","topicForms","getResearch","functionWords","getConfig","keyphraseLength","keyphraseForms","length"],"sources":["../../../src/languageProcessing/researches/keyphraseLength.js"],"sourcesContent":["/**\n * Determines the length in words of the keyphrase.\n *\n * @param {Paper} paper \t\t\tThe paper to research\n * @param {Researcher} researcher \tThe researcher to use for analysis\n *\n * @returns {Object} The length of the keyphrase and the function words list.\n */\nexport default function( paper, researcher ) {\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\n\treturn {\n\t\tkeyphraseLength: topicForms.keyphraseForms.length,\n\t\tfunctionWords: functionWords,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUA,KAAK,EAAEC,UAAU,EAAG;EAC5C,MAAMC,UAAU,GAAGD,UAAU,CAACE,WAAW,CAAE,YAAa,CAAC;EACzD,MAAMC,aAAa,GAAGH,UAAU,CAACI,SAAS,CAAE,eAAgB,CAAC;EAE7D,OAAO;IACNC,eAAe,EAAEJ,UAAU,CAACK,cAAc,CAACC,MAAM;IACjDJ,aAAa,EAAEA;EAChB,CAAC;AACF","ignoreList":[]}
@@ -1,21 +1,13 @@
1
- "use strict";
1
+ import { flatten, flattenDeep } from "lodash";
2
+ import getSentencesFromTree from "../helpers/sentence/getSentencesFromTree";
3
+ import { normalizeSingle } from "../helpers/sanitize/quotes";
4
+ import getMarkingsInSentence from "../helpers/highlighting/getMarkingsInSentence";
5
+ import matchWordFormsWithSentence from "../helpers/match/matchWordFormsWithSentence";
6
+ import isDoubleQuoted from "../helpers/match/isDoubleQuoted";
7
+ import { markWordsInASentence } from "../helpers/word/markWordsInSentences";
8
+ import getSentences from "../helpers/sentence/getSentences";
9
+ import { filterShortcodesFromHTML } from "../helpers";
2
10
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.countKeyphraseInText = countKeyphraseInText;
7
- exports.default = getKeyphraseCount;
8
- exports.keywordCount = keywordCount;
9
- var _lodash = require("lodash");
10
- var _getSentencesFromTree = _interopRequireDefault(require("../helpers/sentence/getSentencesFromTree"));
11
- var _quotes = require("../helpers/sanitize/quotes");
12
- var _getMarkingsInSentence = _interopRequireDefault(require("../helpers/highlighting/getMarkingsInSentence"));
13
- var _matchWordFormsWithSentence = _interopRequireDefault(require("../helpers/match/matchWordFormsWithSentence"));
14
- var _isDoubleQuoted = _interopRequireDefault(require("../helpers/match/isDoubleQuoted"));
15
- var _markWordsInSentences = require("../helpers/word/markWordsInSentences");
16
- var _getSentences = _interopRequireDefault(require("../helpers/sentence/getSentences"));
17
- var _helpers = require("../helpers");
18
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
11
  /**
20
12
  * Counts the occurrences of the keyphrase in the text and creates the Mark objects for the matches.
21
13
  *
@@ -28,13 +20,13 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
28
20
  *
29
21
  * @returns {{markings: Mark[], count: number}} The number of keyphrase occurrences in the text and the Mark objects of the matches.
30
22
  */
31
- function countKeyphraseInText(sentences, keyphraseForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper) {
23
+ export function countKeyphraseInText(sentences, keyphraseForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper) {
32
24
  const result = {
33
25
  count: 0,
34
26
  markings: []
35
27
  };
36
28
  sentences.forEach(sentence => {
37
- const matchesInSentence = keyphraseForms.map(wordForms => (0, _matchWordFormsWithSentence.default)(sentence, wordForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper));
29
+ const matchesInSentence = keyphraseForms.map(wordForms => matchWordFormsWithSentence(sentence, wordForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper));
38
30
 
39
31
  // A sentence has at least one full-match of the keyphrase if each word occurs at least once.
40
32
  const isEachWordFound = matchesInSentence.every(wordForms => wordForms.count > 0);
@@ -54,13 +46,13 @@ function countKeyphraseInText(sentences, keyphraseForms, locale, matchWordCustom
54
46
  * to be counted as a full-match.
55
47
  */
56
48
  const totalMatchCount = Math.min(...counts);
57
- const foundWords = (0, _lodash.flattenDeep)(matchesInSentence.map(match => match.matches));
49
+ const foundWords = flattenDeep(matchesInSentence.map(match => match.matches));
58
50
  let markings = [];
59
51
  if (matchWordCustomHelper) {
60
52
  // Currently, this check is only applicable for Japanese.
61
- markings = (0, _markWordsInSentences.markWordsInASentence)(sentence, foundWords, matchWordCustomHelper);
53
+ markings = markWordsInASentence(sentence, foundWords, matchWordCustomHelper);
62
54
  } else {
63
- markings = (0, _getMarkingsInSentence.default)(sentence, foundWords);
55
+ markings = getMarkingsInSentence(sentence, foundWords);
64
56
  }
65
57
  result.count += totalMatchCount;
66
58
  result.markings.push(markings);
@@ -77,7 +69,7 @@ function countKeyphraseInText(sentences, keyphraseForms, locale, matchWordCustom
77
69
  *
78
70
  * @returns {{count: number, markings: Mark[], keyphraseLength: number}} An object containing the keyphrase count, markings and the kephrase length.
79
71
  */
80
- function getKeyphraseCount(paper, researcher) {
72
+ export default function getKeyphraseCount(paper, researcher) {
81
73
  const result = {
82
74
  count: 0,
83
75
  markings: [],
@@ -91,7 +83,7 @@ function getKeyphraseCount(paper, researcher) {
91
83
  * Normalize single quotes so that word form with different type of single quotes can still be matched.
92
84
  * For example, "key‛word" should match "key'word".
93
85
  */
94
- keyphraseForms = keyphraseForms.map(word => word.map(form => (0, _quotes.normalizeSingle)(form)));
86
+ keyphraseForms = keyphraseForms.map(word => word.map(form => normalizeSingle(form)));
95
87
  if (keyphraseLength === 0) {
96
88
  return result;
97
89
  }
@@ -99,12 +91,12 @@ function getKeyphraseCount(paper, researcher) {
99
91
  const customSentenceTokenizer = researcher.getHelper("memoizedTokenizer");
100
92
  const customSplitIntoTokensHelper = researcher.getHelper("splitIntoTokensCustom");
101
93
  const locale = paper.getLocale();
102
- const text = matchWordCustomHelper ? (0, _helpers.filterShortcodesFromHTML)(paper.getText(), paper._attributes && paper._attributes.shortcodes) : paper.getText();
94
+ const text = matchWordCustomHelper ? filterShortcodesFromHTML(paper.getText(), paper._attributes && paper._attributes.shortcodes) : paper.getText();
103
95
 
104
96
  // When the custom helper is available, we're using the sentences retrieved from the text for the analysis.
105
- const sentences = matchWordCustomHelper ? (0, _getSentences.default)(text, customSentenceTokenizer) : (0, _getSentencesFromTree.default)(paper);
97
+ const sentences = matchWordCustomHelper ? getSentences(text, customSentenceTokenizer) : getSentencesFromTree(paper);
106
98
  // Exact matching is requested when the keyphrase is enclosed in double quotes.
107
- const isExactMatchRequested = (0, _isDoubleQuoted.default)(paper.getKeyword());
99
+ const isExactMatchRequested = isDoubleQuoted(paper.getKeyword());
108
100
 
109
101
  /*
110
102
  * Count the amount of keyphrase occurrences in the sentences.
@@ -113,7 +105,7 @@ function getKeyphraseCount(paper, researcher) {
113
105
  */
114
106
  const keyphraseFound = countKeyphraseInText(sentences, keyphraseForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper);
115
107
  result.count = keyphraseFound.count;
116
- result.markings = (0, _lodash.flatten)(keyphraseFound.markings);
108
+ result.markings = flatten(keyphraseFound.markings);
117
109
  result.keyphraseLength = keyphraseLength;
118
110
  return result;
119
111
  }
@@ -128,7 +120,7 @@ function getKeyphraseCount(paper, researcher) {
128
120
  *
129
121
  * @returns {Object} An array of all the matches, markings and the keyphrase count.
130
122
  */
131
- function keywordCount(paper, researcher) {
123
+ export function keywordCount(paper, researcher) {
132
124
  console.warn("This function is deprecated, use getKeyphraseCount instead.");
133
125
  return getKeyphraseCount(paper, researcher);
134
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"keywordCount.js","names":["_lodash","require","_getSentencesFromTree","_interopRequireDefault","_quotes","_getMarkingsInSentence","_matchWordFormsWithSentence","_isDoubleQuoted","_markWordsInSentences","_getSentences","_helpers","e","__esModule","default","countKeyphraseInText","sentences","keyphraseForms","locale","matchWordCustomHelper","isExactMatchRequested","customSplitIntoTokensHelper","result","count","markings","forEach","sentence","matchesInSentence","map","wordForms","matchWordFormsWithSentence","isEachWordFound","every","counts","match","totalMatchCount","Math","min","foundWords","flattenDeep","matches","markWordsInASentence","getMarkingsInSentence","push","getKeyphraseCount","paper","researcher","keyphraseLength","topicForms","getResearch","length","word","form","normalizeSingle","getHelper","customSentenceTokenizer","getLocale","text","filterShortcodesFromHTML","getText","_attributes","shortcodes","getSentences","getSentencesFromTree","isDoubleQuoted","getKeyword","keyphraseFound","flatten","keywordCount","console","warn"],"sources":["../../../src/languageProcessing/researches/keywordCount.js"],"sourcesContent":["import { flatten, flattenDeep } from \"lodash\";\nimport getSentencesFromTree from \"../helpers/sentence/getSentencesFromTree\";\nimport { normalizeSingle } from \"../helpers/sanitize/quotes\";\nimport getMarkingsInSentence from \"../helpers/highlighting/getMarkingsInSentence\";\nimport matchWordFormsWithSentence from \"../helpers/match/matchWordFormsWithSentence\";\nimport isDoubleQuoted from \"../helpers/match/isDoubleQuoted\";\nimport { markWordsInASentence } from \"../helpers/word/markWordsInSentences\";\nimport getSentences from \"../helpers/sentence/getSentences\";\nimport { filterShortcodesFromHTML } from \"../helpers\";\n\n/**\n * Counts the occurrences of the keyphrase in the text and creates the Mark objects for the matches.\n *\n * @param {(Sentence|string)[]}\tsentences\t\t\tThe sentences to check.\n * @param {Array}\t\tkeyphraseForms\t\t\t\tThe keyphrase forms.\n * @param {string}\t\tlocale\t\t\t\t\t\tThe locale used in the analysis.\n * @param {function}\tmatchWordCustomHelper\t\tA custom helper to match words with a text.\n * @param {boolean}\t\tisExactMatchRequested\t\tWhether the exact matching is requested.\n * @param {function}\tcustomSplitIntoTokensHelper\tA custom helper to split sentences into tokens.\n *\n * @returns {{markings: Mark[], count: number}} The number of keyphrase occurrences in the text and the Mark objects of the matches.\n */\nexport function countKeyphraseInText( sentences, keyphraseForms, locale, matchWordCustomHelper,\n\t\t\t\t\t\t\t\t\t isExactMatchRequested, customSplitIntoTokensHelper ) {\n\tconst result = { count: 0, markings: [] };\n\n\tsentences.forEach( sentence => {\n\t\tconst matchesInSentence = keyphraseForms.map( wordForms => matchWordFormsWithSentence( sentence,\n\t\t\twordForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper ) );\n\n\t\t// A sentence has at least one full-match of the keyphrase if each word occurs at least once.\n\t\tconst isEachWordFound = matchesInSentence.every( wordForms => wordForms.count > 0 );\n\n\t\tif ( isEachWordFound ) {\n\t\t\t/*\n\t\t\t * Retrieve all the occurrences' count of each word of the keyphrase and save it in an array.\n\t\t\t * matches: [ [ { matches: [\"red\"], count: 1 } ], [ { matches: [\"pandas\"], count: 2 } ] ]\n\t\t\t * counts: [ 1, 2 ]\n\t\t\t */\n\t\t\tconst counts = matchesInSentence.map( match => match.count );\n\t\t\t/*\n\t\t\t * The number of the full-match count is the lowest count of the occurrences.\n\t\t\t * counts: [ 1, 2 ]\n\t\t\t * totalMatchCount: 1\n\t\t\t *\n\t\t\t * From the example above, the full-match is 1, because one of the \"pandas\" occurrences is not accompanied by \"red\"\n\t\t\t * to be counted as a full-match.\n\t\t\t */\n\t\t\tconst totalMatchCount = Math.min( ...counts );\n\t\t\tconst foundWords = flattenDeep( matchesInSentence.map( match => match.matches ) );\n\n\t\t\tlet markings = [];\n\n\t\t\tif ( matchWordCustomHelper ) {\n\t\t\t\t// Currently, this check is only applicable for Japanese.\n\t\t\t\tmarkings = markWordsInASentence( sentence, foundWords, matchWordCustomHelper );\n\t\t\t} else {\n\t\t\t\tmarkings = getMarkingsInSentence( sentence, foundWords );\n\t\t\t}\n\n\t\t\tresult.count += totalMatchCount;\n\t\t\tresult.markings.push( markings );\n\t\t}\n\t} );\n\n\treturn result;\n}\n\n/**\n * Calculates the keyphrase count, takes morphology into account.\n *\n * @param {Paper} paper The paper containing keyphrase and text.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {{count: number, markings: Mark[], keyphraseLength: number}} An object containing the keyphrase count, markings and the kephrase length.\n */\nexport default function getKeyphraseCount( paper, researcher ) {\n\tconst result = { count: 0, markings: [], keyphraseLength: 0 };\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tlet keyphraseForms = topicForms.keyphraseForms;\n\tconst keyphraseLength = keyphraseForms.length;\n\n\t/*\n\t * Normalize single quotes so that word form with different type of single quotes can still be matched.\n\t * For example, \"key‛word\" should match \"key'word\".\n\t */\n\tkeyphraseForms = keyphraseForms.map( word => word.map( form => normalizeSingle( form ) ) );\n\n\tif ( keyphraseLength === 0 ) {\n\t\treturn result;\n\t}\n\n\tconst matchWordCustomHelper = researcher.getHelper( \"matchWordCustomHelper\" );\n\tconst customSentenceTokenizer = researcher.getHelper( \"memoizedTokenizer\" );\n\tconst customSplitIntoTokensHelper = researcher.getHelper( \"splitIntoTokensCustom\" );\n\tconst locale = paper.getLocale();\n\tconst text = matchWordCustomHelper\n\t\t? filterShortcodesFromHTML( paper.getText(), paper._attributes && paper._attributes.shortcodes )\n\t\t: paper.getText();\n\n\t// When the custom helper is available, we're using the sentences retrieved from the text for the analysis.\n\tconst sentences = matchWordCustomHelper ? getSentences( text, customSentenceTokenizer ) : getSentencesFromTree( paper );\n\t// Exact matching is requested when the keyphrase is enclosed in double quotes.\n\tconst isExactMatchRequested = isDoubleQuoted( paper.getKeyword() );\n\n\t/*\n\t* Count the amount of keyphrase occurrences in the sentences.\n\t* An occurrence is counted when all words of the keyphrase are contained within the sentence. Each sentence can contain multiple keyphrases.\n\t* (e.g. \"The apple potato is an apple and a potato.\" has two occurrences of the keyphrase \"apple potato\").\n\t*/\n\tconst keyphraseFound = countKeyphraseInText( sentences, keyphraseForms, locale, matchWordCustomHelper,\n\t\tisExactMatchRequested, customSplitIntoTokensHelper );\n\n\tresult.count = keyphraseFound.count;\n\tresult.markings = flatten( keyphraseFound.markings );\n\tresult.keyphraseLength = keyphraseLength;\n\n\treturn result;\n}\n\n/**\n * Calculates the keyphrase count, takes morphology into account.\n *\n * @deprecated Use getKeyphraseCount instead.\n *\n * @param {Paper} paper The paper containing keyphrase and text.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {Object} An array of all the matches, markings and the keyphrase count.\n */\nexport function keywordCount( paper, researcher ) {\n\tconsole.warn( \"This function is deprecated, use getKeyphraseCount instead.\" );\n\treturn getKeyphraseCount( paper, researcher );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"keywordCount.js","names":["flatten","flattenDeep","getSentencesFromTree","normalizeSingle","getMarkingsInSentence","matchWordFormsWithSentence","isDoubleQuoted","markWordsInASentence","getSentences","filterShortcodesFromHTML","countKeyphraseInText","sentences","keyphraseForms","locale","matchWordCustomHelper","isExactMatchRequested","customSplitIntoTokensHelper","result","count","markings","forEach","sentence","matchesInSentence","map","wordForms","isEachWordFound","every","counts","match","totalMatchCount","Math","min","foundWords","matches","push","getKeyphraseCount","paper","researcher","keyphraseLength","topicForms","getResearch","length","word","form","getHelper","customSentenceTokenizer","getLocale","text","getText","_attributes","shortcodes","getKeyword","keyphraseFound","keywordCount","console","warn"],"sources":["../../../src/languageProcessing/researches/keywordCount.js"],"sourcesContent":["import { flatten, flattenDeep } from \"lodash\";\nimport getSentencesFromTree from \"../helpers/sentence/getSentencesFromTree\";\nimport { normalizeSingle } from \"../helpers/sanitize/quotes\";\nimport getMarkingsInSentence from \"../helpers/highlighting/getMarkingsInSentence\";\nimport matchWordFormsWithSentence from \"../helpers/match/matchWordFormsWithSentence\";\nimport isDoubleQuoted from \"../helpers/match/isDoubleQuoted\";\nimport { markWordsInASentence } from \"../helpers/word/markWordsInSentences\";\nimport getSentences from \"../helpers/sentence/getSentences\";\nimport { filterShortcodesFromHTML } from \"../helpers\";\n\n/**\n * Counts the occurrences of the keyphrase in the text and creates the Mark objects for the matches.\n *\n * @param {(Sentence|string)[]}\tsentences\t\t\tThe sentences to check.\n * @param {Array}\t\tkeyphraseForms\t\t\t\tThe keyphrase forms.\n * @param {string}\t\tlocale\t\t\t\t\t\tThe locale used in the analysis.\n * @param {function}\tmatchWordCustomHelper\t\tA custom helper to match words with a text.\n * @param {boolean}\t\tisExactMatchRequested\t\tWhether the exact matching is requested.\n * @param {function}\tcustomSplitIntoTokensHelper\tA custom helper to split sentences into tokens.\n *\n * @returns {{markings: Mark[], count: number}} The number of keyphrase occurrences in the text and the Mark objects of the matches.\n */\nexport function countKeyphraseInText( sentences, keyphraseForms, locale, matchWordCustomHelper,\n\t\t\t\t\t\t\t\t\t isExactMatchRequested, customSplitIntoTokensHelper ) {\n\tconst result = { count: 0, markings: [] };\n\n\tsentences.forEach( sentence => {\n\t\tconst matchesInSentence = keyphraseForms.map( wordForms => matchWordFormsWithSentence( sentence,\n\t\t\twordForms, locale, matchWordCustomHelper, isExactMatchRequested, customSplitIntoTokensHelper ) );\n\n\t\t// A sentence has at least one full-match of the keyphrase if each word occurs at least once.\n\t\tconst isEachWordFound = matchesInSentence.every( wordForms => wordForms.count > 0 );\n\n\t\tif ( isEachWordFound ) {\n\t\t\t/*\n\t\t\t * Retrieve all the occurrences' count of each word of the keyphrase and save it in an array.\n\t\t\t * matches: [ [ { matches: [\"red\"], count: 1 } ], [ { matches: [\"pandas\"], count: 2 } ] ]\n\t\t\t * counts: [ 1, 2 ]\n\t\t\t */\n\t\t\tconst counts = matchesInSentence.map( match => match.count );\n\t\t\t/*\n\t\t\t * The number of the full-match count is the lowest count of the occurrences.\n\t\t\t * counts: [ 1, 2 ]\n\t\t\t * totalMatchCount: 1\n\t\t\t *\n\t\t\t * From the example above, the full-match is 1, because one of the \"pandas\" occurrences is not accompanied by \"red\"\n\t\t\t * to be counted as a full-match.\n\t\t\t */\n\t\t\tconst totalMatchCount = Math.min( ...counts );\n\t\t\tconst foundWords = flattenDeep( matchesInSentence.map( match => match.matches ) );\n\n\t\t\tlet markings = [];\n\n\t\t\tif ( matchWordCustomHelper ) {\n\t\t\t\t// Currently, this check is only applicable for Japanese.\n\t\t\t\tmarkings = markWordsInASentence( sentence, foundWords, matchWordCustomHelper );\n\t\t\t} else {\n\t\t\t\tmarkings = getMarkingsInSentence( sentence, foundWords );\n\t\t\t}\n\n\t\t\tresult.count += totalMatchCount;\n\t\t\tresult.markings.push( markings );\n\t\t}\n\t} );\n\n\treturn result;\n}\n\n/**\n * Calculates the keyphrase count, takes morphology into account.\n *\n * @param {Paper} paper The paper containing keyphrase and text.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {{count: number, markings: Mark[], keyphraseLength: number}} An object containing the keyphrase count, markings and the kephrase length.\n */\nexport default function getKeyphraseCount( paper, researcher ) {\n\tconst result = { count: 0, markings: [], keyphraseLength: 0 };\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tlet keyphraseForms = topicForms.keyphraseForms;\n\tconst keyphraseLength = keyphraseForms.length;\n\n\t/*\n\t * Normalize single quotes so that word form with different type of single quotes can still be matched.\n\t * For example, \"key‛word\" should match \"key'word\".\n\t */\n\tkeyphraseForms = keyphraseForms.map( word => word.map( form => normalizeSingle( form ) ) );\n\n\tif ( keyphraseLength === 0 ) {\n\t\treturn result;\n\t}\n\n\tconst matchWordCustomHelper = researcher.getHelper( \"matchWordCustomHelper\" );\n\tconst customSentenceTokenizer = researcher.getHelper( \"memoizedTokenizer\" );\n\tconst customSplitIntoTokensHelper = researcher.getHelper( \"splitIntoTokensCustom\" );\n\tconst locale = paper.getLocale();\n\tconst text = matchWordCustomHelper\n\t\t? filterShortcodesFromHTML( paper.getText(), paper._attributes && paper._attributes.shortcodes )\n\t\t: paper.getText();\n\n\t// When the custom helper is available, we're using the sentences retrieved from the text for the analysis.\n\tconst sentences = matchWordCustomHelper ? getSentences( text, customSentenceTokenizer ) : getSentencesFromTree( paper );\n\t// Exact matching is requested when the keyphrase is enclosed in double quotes.\n\tconst isExactMatchRequested = isDoubleQuoted( paper.getKeyword() );\n\n\t/*\n\t* Count the amount of keyphrase occurrences in the sentences.\n\t* An occurrence is counted when all words of the keyphrase are contained within the sentence. Each sentence can contain multiple keyphrases.\n\t* (e.g. \"The apple potato is an apple and a potato.\" has two occurrences of the keyphrase \"apple potato\").\n\t*/\n\tconst keyphraseFound = countKeyphraseInText( sentences, keyphraseForms, locale, matchWordCustomHelper,\n\t\tisExactMatchRequested, customSplitIntoTokensHelper );\n\n\tresult.count = keyphraseFound.count;\n\tresult.markings = flatten( keyphraseFound.markings );\n\tresult.keyphraseLength = keyphraseLength;\n\n\treturn result;\n}\n\n/**\n * Calculates the keyphrase count, takes morphology into account.\n *\n * @deprecated Use getKeyphraseCount instead.\n *\n * @param {Paper} paper The paper containing keyphrase and text.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {Object} An array of all the matches, markings and the keyphrase count.\n */\nexport function keywordCount( paper, researcher ) {\n\tconsole.warn( \"This function is deprecated, use getKeyphraseCount instead.\" );\n\treturn getKeyphraseCount( paper, researcher );\n}\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,WAAW,QAAQ,QAAQ;AAC7C,OAAOC,oBAAoB;AAC3B,SAASC,eAAe;AACxB,OAAOC,qBAAqB;AAC5B,OAAOC,0BAA0B;AACjC,OAAOC,cAAc;AACrB,SAASC,oBAAoB;AAC7B,OAAOC,YAAY;AACnB,SAASC,wBAAwB;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAAEC,SAAS,EAAEC,cAAc,EAAEC,MAAM,EAAEC,qBAAqB,EACnFC,qBAAqB,EAAEC,2BAA2B,EAAG;EAC/D,MAAMC,MAAM,GAAG;IAAEC,KAAK,EAAE,CAAC;IAAEC,QAAQ,EAAE;EAAG,CAAC;EAEzCR,SAAS,CAACS,OAAO,CAAEC,QAAQ,IAAI;IAC9B,MAAMC,iBAAiB,GAAGV,cAAc,CAACW,GAAG,CAAEC,SAAS,IAAInB,0BAA0B,CAAEgB,QAAQ,EAC9FG,SAAS,EAAEX,MAAM,EAAEC,qBAAqB,EAAEC,qBAAqB,EAAEC,2BAA4B,CAAE,CAAC;;IAEjG;IACA,MAAMS,eAAe,GAAGH,iBAAiB,CAACI,KAAK,CAAEF,SAAS,IAAIA,SAAS,CAACN,KAAK,GAAG,CAAE,CAAC;IAEnF,IAAKO,eAAe,EAAG;MACtB;AACH;AACA;AACA;AACA;MACG,MAAME,MAAM,GAAGL,iBAAiB,CAACC,GAAG,CAAEK,KAAK,IAAIA,KAAK,CAACV,KAAM,CAAC;MAC5D;AACH;AACA;AACA;AACA;AACA;AACA;AACA;MACG,MAAMW,eAAe,GAAGC,IAAI,CAACC,GAAG,CAAE,GAAGJ,MAAO,CAAC;MAC7C,MAAMK,UAAU,GAAG/B,WAAW,CAAEqB,iBAAiB,CAACC,GAAG,CAAEK,KAAK,IAAIA,KAAK,CAACK,OAAQ,CAAE,CAAC;MAEjF,IAAId,QAAQ,GAAG,EAAE;MAEjB,IAAKL,qBAAqB,EAAG;QAC5B;QACAK,QAAQ,GAAGZ,oBAAoB,CAAEc,QAAQ,EAAEW,UAAU,EAAElB,qBAAsB,CAAC;MAC/E,CAAC,MAAM;QACNK,QAAQ,GAAGf,qBAAqB,CAAEiB,QAAQ,EAAEW,UAAW,CAAC;MACzD;MAEAf,MAAM,CAACC,KAAK,IAAIW,eAAe;MAC/BZ,MAAM,CAACE,QAAQ,CAACe,IAAI,CAAEf,QAAS,CAAC;IACjC;EACD,CAAE,CAAC;EAEH,OAAOF,MAAM;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASkB,iBAAiBA,CAAEC,KAAK,EAAEC,UAAU,EAAG;EAC9D,MAAMpB,MAAM,GAAG;IAAEC,KAAK,EAAE,CAAC;IAAEC,QAAQ,EAAE,EAAE;IAAEmB,eAAe,EAAE;EAAE,CAAC;EAC7D,MAAMC,UAAU,GAAGF,UAAU,CAACG,WAAW,CAAE,YAAa,CAAC;EACzD,IAAI5B,cAAc,GAAG2B,UAAU,CAAC3B,cAAc;EAC9C,MAAM0B,eAAe,GAAG1B,cAAc,CAAC6B,MAAM;;EAE7C;AACD;AACA;AACA;EACC7B,cAAc,GAAGA,cAAc,CAACW,GAAG,CAAEmB,IAAI,IAAIA,IAAI,CAACnB,GAAG,CAAEoB,IAAI,IAAIxC,eAAe,CAAEwC,IAAK,CAAE,CAAE,CAAC;EAE1F,IAAKL,eAAe,KAAK,CAAC,EAAG;IAC5B,OAAOrB,MAAM;EACd;EAEA,MAAMH,qBAAqB,GAAGuB,UAAU,CAACO,SAAS,CAAE,uBAAwB,CAAC;EAC7E,MAAMC,uBAAuB,GAAGR,UAAU,CAACO,SAAS,CAAE,mBAAoB,CAAC;EAC3E,MAAM5B,2BAA2B,GAAGqB,UAAU,CAACO,SAAS,CAAE,uBAAwB,CAAC;EACnF,MAAM/B,MAAM,GAAGuB,KAAK,CAACU,SAAS,CAAC,CAAC;EAChC,MAAMC,IAAI,GAAGjC,qBAAqB,GAC/BL,wBAAwB,CAAE2B,KAAK,CAACY,OAAO,CAAC,CAAC,EAAEZ,KAAK,CAACa,WAAW,IAAIb,KAAK,CAACa,WAAW,CAACC,UAAW,CAAC,GAC9Fd,KAAK,CAACY,OAAO,CAAC,CAAC;;EAElB;EACA,MAAMrC,SAAS,GAAGG,qBAAqB,GAAGN,YAAY,CAAEuC,IAAI,EAAEF,uBAAwB,CAAC,GAAG3C,oBAAoB,CAAEkC,KAAM,CAAC;EACvH;EACA,MAAMrB,qBAAqB,GAAGT,cAAc,CAAE8B,KAAK,CAACe,UAAU,CAAC,CAAE,CAAC;;EAElE;AACD;AACA;AACA;AACA;EACC,MAAMC,cAAc,GAAG1C,oBAAoB,CAAEC,SAAS,EAAEC,cAAc,EAAEC,MAAM,EAAEC,qBAAqB,EACpGC,qBAAqB,EAAEC,2BAA4B,CAAC;EAErDC,MAAM,CAACC,KAAK,GAAGkC,cAAc,CAAClC,KAAK;EACnCD,MAAM,CAACE,QAAQ,GAAGnB,OAAO,CAAEoD,cAAc,CAACjC,QAAS,CAAC;EACpDF,MAAM,CAACqB,eAAe,GAAGA,eAAe;EAExC,OAAOrB,MAAM;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASoC,YAAYA,CAAEjB,KAAK,EAAEC,UAAU,EAAG;EACjDiB,OAAO,CAACC,IAAI,CAAE,6DAA8D,CAAC;EAC7E,OAAOpB,iBAAiB,CAAEC,KAAK,EAAEC,UAAW,CAAC;AAC9C","ignoreList":[]}
@@ -1,16 +1,7 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- exports.keywordCountInSlug = keywordCountInSlug;
8
- exports.keywordCountInUrl = keywordCountInUrl;
9
- var _parseSlug = _interopRequireDefault(require("../helpers/url/parseSlug"));
10
- var _findKeywordFormsInString = require("../helpers/match/findKeywordFormsInString.js");
11
- var _lodash = require("lodash");
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
1
  /** @module researches/keywordCountInSlug */
2
+ import parseSlug from "../helpers/url/parseSlug";
3
+ import { findTopicFormsInString } from "../helpers/match/findKeywordFormsInString.js";
4
+ import { cloneDeep } from "lodash";
14
5
 
15
6
  /**
16
7
  * Matches the keyword in the slug. Replaces all dashes and underscores with whitespaces and uses whitespace as word boundary.
@@ -26,12 +17,12 @@ function keywordCountInSlug(paper, researcher) {
26
17
  * languages. This is because slugs usually use hyphens (or underscores) as word boundaries. So if only the slug is
27
18
  * split on hyphens and not the keyphrase forms, some keyphrase forms won't be found in the slug.
28
19
  */
29
- const languageResearcher = (0, _lodash.cloneDeep)(researcher);
20
+ const languageResearcher = cloneDeep(researcher);
30
21
  languageResearcher.addConfig("areHyphensWordBoundaries", true);
31
22
  const topicForms = languageResearcher.getResearch("morphology");
32
- const parsedSlug = (0, _parseSlug.default)(paper.getSlug());
23
+ const parsedSlug = parseSlug(paper.getSlug());
33
24
  const locale = paper.getLocale();
34
- const keyphraseInSlug = (0, _findKeywordFormsInString.findTopicFormsInString)(topicForms, parsedSlug, false, locale, false);
25
+ const keyphraseInSlug = findTopicFormsInString(topicForms, parsedSlug, false, locale, false);
35
26
  return {
36
27
  keyphraseLength: topicForms.keyphraseForms.length,
37
28
  percentWordMatches: keyphraseInSlug.percentWordMatches
@@ -54,5 +45,6 @@ function keywordCountInUrl(paper, researcher) {
54
45
  console.warn("This function is deprecated, use keywordCountInSlug instead.");
55
46
  return keywordCountInSlug(paper, researcher);
56
47
  }
57
- var _default = exports.default = keywordCountInSlug;
48
+ export { keywordCountInSlug, keywordCountInUrl };
49
+ export default keywordCountInSlug;
58
50
  //# sourceMappingURL=keywordCountInUrl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keywordCountInUrl.js","names":["_parseSlug","_interopRequireDefault","require","_findKeywordFormsInString","_lodash","e","__esModule","default","keywordCountInSlug","paper","researcher","languageResearcher","cloneDeep","addConfig","topicForms","getResearch","parsedSlug","parseSlug","getSlug","locale","getLocale","keyphraseInSlug","findTopicFormsInString","keyphraseLength","keyphraseForms","length","percentWordMatches","keywordCountInUrl","console","warn","_default","exports"],"sources":["../../../src/languageProcessing/researches/keywordCountInUrl.js"],"sourcesContent":["/** @module researches/keywordCountInSlug */\nimport parseSlug from \"../helpers/url/parseSlug\";\nimport { findTopicFormsInString } from \"../helpers/match/findKeywordFormsInString.js\";\nimport { cloneDeep } from \"lodash\";\n\n/**\n * Matches the keyword in the slug. Replaces all dashes and underscores with whitespaces and uses whitespace as word boundary.\n *\n * @param {Paper} paper the Paper object to use in this count.\n * @param {Researcher} researcher The Researcher object containing all available researches.\n *\n * @returns {{keyphraseLength: int, percentWordMatches: int}} The length of the keyphrase and the percentage of keyphrase forms that has been found.\n */\nfunction keywordCountInSlug( paper, researcher ) {\n\t/*\n\t * We want to override the `areHyphensWordBoundaries` config value from the researcher so that it is `true` for all\n\t * languages. This is because slugs usually use hyphens (or underscores) as word boundaries. So if only the slug is\n\t * split on hyphens and not the keyphrase forms, some keyphrase forms won't be found in the slug.\n\t */\n\tconst languageResearcher = cloneDeep( researcher );\n\tlanguageResearcher.addConfig( \"areHyphensWordBoundaries\", true );\n\tconst topicForms = languageResearcher.getResearch( \"morphology\" );\n\n\tconst parsedSlug = parseSlug( paper.getSlug() );\n\tconst locale = paper.getLocale();\n\n\tconst keyphraseInSlug = findTopicFormsInString( topicForms, parsedSlug, false, locale, false );\n\n\treturn {\n\t\tkeyphraseLength: topicForms.keyphraseForms.length,\n\t\tpercentWordMatches: keyphraseInSlug.percentWordMatches,\n\t};\n}\n\n/**\n * Matches the keyword in the slug.\n * keywordCountInUrl was the previous name for keywordCountInSlug (hence the name of this file).\n * We keep (and expose) this research for backwards compatibility.\n *\n * @deprecated Since version 18.7. Use keywordCountInSlug instead.\n *\n * @param {Paper} paper the Paper object to use in this count.\n * @param {Researcher} researcher The Researcher object containing all available researches.\n *\n * @returns {{keyphraseLength: int, percentWordMatches: int}} The length of the keyphrase and the percentage of keyphrase forms that has been found.\n */\nfunction keywordCountInUrl( paper, researcher ) {\n\tconsole.warn( \"This function is deprecated, use keywordCountInSlug instead.\" );\n\treturn keywordCountInSlug( paper, researcher );\n}\n\nexport {\n\tkeywordCountInSlug,\n\tkeywordCountInUrl,\n};\n\nexport default keywordCountInSlug;\n"],"mappings":";;;;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,yBAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAAmC,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAHnC;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,kBAAkBA,CAAEC,KAAK,EAAEC,UAAU,EAAG;EAChD;AACD;AACA;AACA;AACA;EACC,MAAMC,kBAAkB,GAAG,IAAAC,iBAAS,EAAEF,UAAW,CAAC;EAClDC,kBAAkB,CAACE,SAAS,CAAE,0BAA0B,EAAE,IAAK,CAAC;EAChE,MAAMC,UAAU,GAAGH,kBAAkB,CAACI,WAAW,CAAE,YAAa,CAAC;EAEjE,MAAMC,UAAU,GAAG,IAAAC,kBAAS,EAAER,KAAK,CAACS,OAAO,CAAC,CAAE,CAAC;EAC/C,MAAMC,MAAM,GAAGV,KAAK,CAACW,SAAS,CAAC,CAAC;EAEhC,MAAMC,eAAe,GAAG,IAAAC,gDAAsB,EAAER,UAAU,EAAEE,UAAU,EAAE,KAAK,EAAEG,MAAM,EAAE,KAAM,CAAC;EAE9F,OAAO;IACNI,eAAe,EAAET,UAAU,CAACU,cAAc,CAACC,MAAM;IACjDC,kBAAkB,EAAEL,eAAe,CAACK;EACrC,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,iBAAiBA,CAAElB,KAAK,EAAEC,UAAU,EAAG;EAC/CkB,OAAO,CAACC,IAAI,CAAE,8DAA+D,CAAC;EAC9E,OAAOrB,kBAAkB,CAAEC,KAAK,EAAEC,UAAW,CAAC;AAC/C;AAAC,IAAAoB,QAAA,GAAAC,OAAA,CAAAxB,OAAA,GAOcC,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"keywordCountInUrl.js","names":["parseSlug","findTopicFormsInString","cloneDeep","keywordCountInSlug","paper","researcher","languageResearcher","addConfig","topicForms","getResearch","parsedSlug","getSlug","locale","getLocale","keyphraseInSlug","keyphraseLength","keyphraseForms","length","percentWordMatches","keywordCountInUrl","console","warn"],"sources":["../../../src/languageProcessing/researches/keywordCountInUrl.js"],"sourcesContent":["/** @module researches/keywordCountInSlug */\nimport parseSlug from \"../helpers/url/parseSlug\";\nimport { findTopicFormsInString } from \"../helpers/match/findKeywordFormsInString.js\";\nimport { cloneDeep } from \"lodash\";\n\n/**\n * Matches the keyword in the slug. Replaces all dashes and underscores with whitespaces and uses whitespace as word boundary.\n *\n * @param {Paper} paper the Paper object to use in this count.\n * @param {Researcher} researcher The Researcher object containing all available researches.\n *\n * @returns {{keyphraseLength: int, percentWordMatches: int}} The length of the keyphrase and the percentage of keyphrase forms that has been found.\n */\nfunction keywordCountInSlug( paper, researcher ) {\n\t/*\n\t * We want to override the `areHyphensWordBoundaries` config value from the researcher so that it is `true` for all\n\t * languages. This is because slugs usually use hyphens (or underscores) as word boundaries. So if only the slug is\n\t * split on hyphens and not the keyphrase forms, some keyphrase forms won't be found in the slug.\n\t */\n\tconst languageResearcher = cloneDeep( researcher );\n\tlanguageResearcher.addConfig( \"areHyphensWordBoundaries\", true );\n\tconst topicForms = languageResearcher.getResearch( \"morphology\" );\n\n\tconst parsedSlug = parseSlug( paper.getSlug() );\n\tconst locale = paper.getLocale();\n\n\tconst keyphraseInSlug = findTopicFormsInString( topicForms, parsedSlug, false, locale, false );\n\n\treturn {\n\t\tkeyphraseLength: topicForms.keyphraseForms.length,\n\t\tpercentWordMatches: keyphraseInSlug.percentWordMatches,\n\t};\n}\n\n/**\n * Matches the keyword in the slug.\n * keywordCountInUrl was the previous name for keywordCountInSlug (hence the name of this file).\n * We keep (and expose) this research for backwards compatibility.\n *\n * @deprecated Since version 18.7. Use keywordCountInSlug instead.\n *\n * @param {Paper} paper the Paper object to use in this count.\n * @param {Researcher} researcher The Researcher object containing all available researches.\n *\n * @returns {{keyphraseLength: int, percentWordMatches: int}} The length of the keyphrase and the percentage of keyphrase forms that has been found.\n */\nfunction keywordCountInUrl( paper, researcher ) {\n\tconsole.warn( \"This function is deprecated, use keywordCountInSlug instead.\" );\n\treturn keywordCountInSlug( paper, researcher );\n}\n\nexport {\n\tkeywordCountInSlug,\n\tkeywordCountInUrl,\n};\n\nexport default keywordCountInSlug;\n"],"mappings":"AAAA;AACA,OAAOA,SAAS;AAChB,SAASC,sBAAsB;AAC/B,SAASC,SAAS,QAAQ,QAAQ;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,kBAAkBA,CAAEC,KAAK,EAAEC,UAAU,EAAG;EAChD;AACD;AACA;AACA;AACA;EACC,MAAMC,kBAAkB,GAAGJ,SAAS,CAAEG,UAAW,CAAC;EAClDC,kBAAkB,CAACC,SAAS,CAAE,0BAA0B,EAAE,IAAK,CAAC;EAChE,MAAMC,UAAU,GAAGF,kBAAkB,CAACG,WAAW,CAAE,YAAa,CAAC;EAEjE,MAAMC,UAAU,GAAGV,SAAS,CAAEI,KAAK,CAACO,OAAO,CAAC,CAAE,CAAC;EAC/C,MAAMC,MAAM,GAAGR,KAAK,CAACS,SAAS,CAAC,CAAC;EAEhC,MAAMC,eAAe,GAAGb,sBAAsB,CAAEO,UAAU,EAAEE,UAAU,EAAE,KAAK,EAAEE,MAAM,EAAE,KAAM,CAAC;EAE9F,OAAO;IACNG,eAAe,EAAEP,UAAU,CAACQ,cAAc,CAACC,MAAM;IACjDC,kBAAkB,EAAEJ,eAAe,CAACI;EACrC,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,iBAAiBA,CAAEf,KAAK,EAAEC,UAAU,EAAG;EAC/Ce,OAAO,CAACC,IAAI,CAAE,8DAA+D,CAAC;EAC9E,OAAOlB,kBAAkB,CAAEC,KAAK,EAAEC,UAAW,CAAC;AAC/C;AAEA,SACCF,kBAAkB,EAClBgB,iBAAiB;AAGlB,eAAehB,kBAAkB","ignoreList":[]}
@@ -1,15 +1,9 @@
1
- "use strict";
1
+ import { getSubheadingContentsTopLevel } from "../helpers/html/getSubheadings";
2
+ import stripSomeTags from "../helpers/sanitize/stripNonTextTags";
3
+ import { findTopicFormsInString } from "../helpers/match/findKeywordFormsInString";
4
+ import removeHtmlBlocks from "../helpers/html/htmlParser";
5
+ import { filterShortcodesFromHTML } from "../helpers";
2
6
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = matchKeywordInSubheadings;
7
- var _getSubheadings = require("../helpers/html/getSubheadings");
8
- var _stripNonTextTags = _interopRequireDefault(require("../helpers/sanitize/stripNonTextTags"));
9
- var _findKeywordFormsInString = require("../helpers/match/findKeywordFormsInString");
10
- var _htmlParser = _interopRequireDefault(require("../helpers/html/htmlParser"));
11
- var _helpers = require("../helpers");
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
7
  /**
14
8
  * Computes the amount of subheadings reflecting the topic.
15
9
  *
@@ -24,7 +18,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
24
18
  */
25
19
  const numberOfSubheadingsReflectingTopic = function (topicForms, subheadings, useSynonyms, locale, functionWords, matchWordCustomHelper) {
26
20
  return subheadings.filter(subheading => {
27
- const matchedTopicForms = (0, _findKeywordFormsInString.findTopicFormsInString)(topicForms, subheading, useSynonyms, locale, matchWordCustomHelper);
21
+ const matchedTopicForms = findTopicFormsInString(topicForms, subheading, useSynonyms, locale, matchWordCustomHelper);
28
22
  if (functionWords.length === 0) {
29
23
  return matchedTopicForms.percentWordMatches === 100;
30
24
  }
@@ -40,15 +34,15 @@ const numberOfSubheadingsReflectingTopic = function (topicForms, subheadings, us
40
34
  *
41
35
  * @returns {Object} The result object.
42
36
  */
43
- function matchKeywordInSubheadings(paper, researcher) {
37
+ export default function matchKeywordInSubheadings(paper, researcher) {
44
38
  const functionWords = researcher.getConfig("functionWords");
45
39
 
46
40
  // A custom helper to match word in text.
47
41
  const matchWordCustomHelper = researcher.getHelper("matchWordCustomHelper");
48
42
  let text = paper.getText();
49
- text = (0, _htmlParser.default)(text);
50
- text = (0, _helpers.filterShortcodesFromHTML)(text, paper._attributes && paper._attributes.shortcodes);
51
- text = (0, _stripNonTextTags.default)(text);
43
+ text = removeHtmlBlocks(text);
44
+ text = filterShortcodesFromHTML(text, paper._attributes && paper._attributes.shortcodes);
45
+ text = stripSomeTags(text);
52
46
  const topicForms = researcher.getResearch("morphology");
53
47
  const locale = paper.getLocale();
54
48
  const result = {
@@ -57,7 +51,7 @@ function matchKeywordInSubheadings(paper, researcher) {
57
51
  percentReflectingTopic: 0
58
52
  };
59
53
  const useSynonyms = true;
60
- const subheadings = (0, _getSubheadings.getSubheadingContentsTopLevel)(text);
54
+ const subheadings = getSubheadingContentsTopLevel(text);
61
55
  if (subheadings.length !== 0) {
62
56
  result.count = subheadings.length;
63
57
  result.matches = numberOfSubheadingsReflectingTopic(topicForms, subheadings, useSynonyms, locale, functionWords, matchWordCustomHelper);
@@ -1 +1 @@
1
- {"version":3,"file":"matchKeywordInSubheadings.js","names":["_getSubheadings","require","_stripNonTextTags","_interopRequireDefault","_findKeywordFormsInString","_htmlParser","_helpers","e","__esModule","default","numberOfSubheadingsReflectingTopic","topicForms","subheadings","useSynonyms","locale","functionWords","matchWordCustomHelper","filter","subheading","matchedTopicForms","findTopicFormsInString","length","percentWordMatches","matchKeywordInSubheadings","paper","researcher","getConfig","getHelper","text","getText","removeHtmlBlocks","filterShortcodesFromHTML","_attributes","shortcodes","stripSomeTags","getResearch","getLocale","result","count","matches","percentReflectingTopic","getSubheadingContentsTopLevel"],"sources":["../../../src/languageProcessing/researches/matchKeywordInSubheadings.js"],"sourcesContent":["import { getSubheadingContentsTopLevel } from \"../helpers/html/getSubheadings\";\nimport stripSomeTags from \"../helpers/sanitize/stripNonTextTags\";\nimport { findTopicFormsInString } from \"../helpers/match/findKeywordFormsInString\";\nimport removeHtmlBlocks from \"../helpers/html/htmlParser\";\nimport { filterShortcodesFromHTML } from \"../helpers\";\n\n/**\n * Computes the amount of subheadings reflecting the topic.\n *\n * @param {Object} topicForms The main key phrase and its synonyms to check.\n * @param {string[]} subheadings The subheadings to check.\n * @param {boolean} useSynonyms Whether to match synonyms or only main keyphrase.\n * @param {string} locale The current locale.\n * @param {Array} functionWords\tThe function words list.\n * @param {function} matchWordCustomHelper The language-specific helper function to match word in text.\n *\n * @returns {number} The amount of subheadings reflecting the topic.\n */\nconst numberOfSubheadingsReflectingTopic = function( topicForms, subheadings, useSynonyms, locale, functionWords, matchWordCustomHelper ) {\n\treturn subheadings.filter( subheading => {\n\t\tconst matchedTopicForms = findTopicFormsInString( topicForms, subheading, useSynonyms, locale, matchWordCustomHelper );\n\n\t\tif ( functionWords.length === 0 ) {\n\t\t\treturn matchedTopicForms.percentWordMatches === 100;\n\t\t}\n\t\treturn matchedTopicForms.percentWordMatches > 50;\n\t} ).length;\n};\n\n/**\n * Checks if there are any h2 or h3 subheadings in the text and if they have the keyphrase or synonyms in them.\n *\n * @param {Object} paper The paper object containing the text and keyword.\n * @param {Researcher} researcher The researcher object.\n *\n * @returns {Object} The result object.\n */\nexport default function matchKeywordInSubheadings( paper, researcher ) {\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\n\t// A custom helper to match word in text.\n\tconst matchWordCustomHelper = researcher.getHelper( \"matchWordCustomHelper\" );\n\n\n\tlet text = paper.getText();\n\ttext = removeHtmlBlocks( text );\n\ttext = filterShortcodesFromHTML( text, paper._attributes && paper._attributes.shortcodes );\n\ttext = stripSomeTags( text );\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tconst locale = paper.getLocale();\n\tconst result = { count: 0, matches: 0, percentReflectingTopic: 0 };\n\tconst useSynonyms = true;\n\tconst subheadings = getSubheadingContentsTopLevel( text );\n\n\tif ( subheadings.length !== 0 ) {\n\t\tresult.count = subheadings.length;\n\t\tresult.matches = numberOfSubheadingsReflectingTopic( topicForms, subheadings, useSynonyms, locale, functionWords, matchWordCustomHelper );\n\t\tresult.percentReflectingTopic = result.matches / result.count * 100;\n\t}\n\n\treturn result;\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,yBAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AAAsD,SAAAE,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,kCAAkC,GAAG,SAAAA,CAAUC,UAAU,EAAEC,WAAW,EAAEC,WAAW,EAAEC,MAAM,EAAEC,aAAa,EAAEC,qBAAqB,EAAG;EACzI,OAAOJ,WAAW,CAACK,MAAM,CAAEC,UAAU,IAAI;IACxC,MAAMC,iBAAiB,GAAG,IAAAC,gDAAsB,EAAET,UAAU,EAAEO,UAAU,EAAEL,WAAW,EAAEC,MAAM,EAAEE,qBAAsB,CAAC;IAEtH,IAAKD,aAAa,CAACM,MAAM,KAAK,CAAC,EAAG;MACjC,OAAOF,iBAAiB,CAACG,kBAAkB,KAAK,GAAG;IACpD;IACA,OAAOH,iBAAiB,CAACG,kBAAkB,GAAG,EAAE;EACjD,CAAE,CAAC,CAACD,MAAM;AACX,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASE,yBAAyBA,CAAEC,KAAK,EAAEC,UAAU,EAAG;EACtE,MAAMV,aAAa,GAAGU,UAAU,CAACC,SAAS,CAAE,eAAgB,CAAC;;EAE7D;EACA,MAAMV,qBAAqB,GAAGS,UAAU,CAACE,SAAS,CAAE,uBAAwB,CAAC;EAG7E,IAAIC,IAAI,GAAGJ,KAAK,CAACK,OAAO,CAAC,CAAC;EAC1BD,IAAI,GAAG,IAAAE,mBAAgB,EAAEF,IAAK,CAAC;EAC/BA,IAAI,GAAG,IAAAG,iCAAwB,EAAEH,IAAI,EAAEJ,KAAK,CAACQ,WAAW,IAAIR,KAAK,CAACQ,WAAW,CAACC,UAAW,CAAC;EAC1FL,IAAI,GAAG,IAAAM,yBAAa,EAAEN,IAAK,CAAC;EAC5B,MAAMjB,UAAU,GAAGc,UAAU,CAACU,WAAW,CAAE,YAAa,CAAC;EACzD,MAAMrB,MAAM,GAAGU,KAAK,CAACY,SAAS,CAAC,CAAC;EAChC,MAAMC,MAAM,GAAG;IAAEC,KAAK,EAAE,CAAC;IAAEC,OAAO,EAAE,CAAC;IAAEC,sBAAsB,EAAE;EAAE,CAAC;EAClE,MAAM3B,WAAW,GAAG,IAAI;EACxB,MAAMD,WAAW,GAAG,IAAA6B,6CAA6B,EAAEb,IAAK,CAAC;EAEzD,IAAKhB,WAAW,CAACS,MAAM,KAAK,CAAC,EAAG;IAC/BgB,MAAM,CAACC,KAAK,GAAG1B,WAAW,CAACS,MAAM;IACjCgB,MAAM,CAACE,OAAO,GAAG7B,kCAAkC,CAAEC,UAAU,EAAEC,WAAW,EAAEC,WAAW,EAAEC,MAAM,EAAEC,aAAa,EAAEC,qBAAsB,CAAC;IACzIqB,MAAM,CAACG,sBAAsB,GAAGH,MAAM,CAACE,OAAO,GAAGF,MAAM,CAACC,KAAK,GAAG,GAAG;EACpE;EAEA,OAAOD,MAAM;AACd","ignoreList":[]}
1
+ {"version":3,"file":"matchKeywordInSubheadings.js","names":["getSubheadingContentsTopLevel","stripSomeTags","findTopicFormsInString","removeHtmlBlocks","filterShortcodesFromHTML","numberOfSubheadingsReflectingTopic","topicForms","subheadings","useSynonyms","locale","functionWords","matchWordCustomHelper","filter","subheading","matchedTopicForms","length","percentWordMatches","matchKeywordInSubheadings","paper","researcher","getConfig","getHelper","text","getText","_attributes","shortcodes","getResearch","getLocale","result","count","matches","percentReflectingTopic"],"sources":["../../../src/languageProcessing/researches/matchKeywordInSubheadings.js"],"sourcesContent":["import { getSubheadingContentsTopLevel } from \"../helpers/html/getSubheadings\";\nimport stripSomeTags from \"../helpers/sanitize/stripNonTextTags\";\nimport { findTopicFormsInString } from \"../helpers/match/findKeywordFormsInString\";\nimport removeHtmlBlocks from \"../helpers/html/htmlParser\";\nimport { filterShortcodesFromHTML } from \"../helpers\";\n\n/**\n * Computes the amount of subheadings reflecting the topic.\n *\n * @param {Object} topicForms The main key phrase and its synonyms to check.\n * @param {string[]} subheadings The subheadings to check.\n * @param {boolean} useSynonyms Whether to match synonyms or only main keyphrase.\n * @param {string} locale The current locale.\n * @param {Array} functionWords\tThe function words list.\n * @param {function} matchWordCustomHelper The language-specific helper function to match word in text.\n *\n * @returns {number} The amount of subheadings reflecting the topic.\n */\nconst numberOfSubheadingsReflectingTopic = function( topicForms, subheadings, useSynonyms, locale, functionWords, matchWordCustomHelper ) {\n\treturn subheadings.filter( subheading => {\n\t\tconst matchedTopicForms = findTopicFormsInString( topicForms, subheading, useSynonyms, locale, matchWordCustomHelper );\n\n\t\tif ( functionWords.length === 0 ) {\n\t\t\treturn matchedTopicForms.percentWordMatches === 100;\n\t\t}\n\t\treturn matchedTopicForms.percentWordMatches > 50;\n\t} ).length;\n};\n\n/**\n * Checks if there are any h2 or h3 subheadings in the text and if they have the keyphrase or synonyms in them.\n *\n * @param {Object} paper The paper object containing the text and keyword.\n * @param {Researcher} researcher The researcher object.\n *\n * @returns {Object} The result object.\n */\nexport default function matchKeywordInSubheadings( paper, researcher ) {\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\n\t// A custom helper to match word in text.\n\tconst matchWordCustomHelper = researcher.getHelper( \"matchWordCustomHelper\" );\n\n\n\tlet text = paper.getText();\n\ttext = removeHtmlBlocks( text );\n\ttext = filterShortcodesFromHTML( text, paper._attributes && paper._attributes.shortcodes );\n\ttext = stripSomeTags( text );\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tconst locale = paper.getLocale();\n\tconst result = { count: 0, matches: 0, percentReflectingTopic: 0 };\n\tconst useSynonyms = true;\n\tconst subheadings = getSubheadingContentsTopLevel( text );\n\n\tif ( subheadings.length !== 0 ) {\n\t\tresult.count = subheadings.length;\n\t\tresult.matches = numberOfSubheadingsReflectingTopic( topicForms, subheadings, useSynonyms, locale, functionWords, matchWordCustomHelper );\n\t\tresult.percentReflectingTopic = result.matches / result.count * 100;\n\t}\n\n\treturn result;\n}\n"],"mappings":"AAAA,SAASA,6BAA6B;AACtC,OAAOC,aAAa;AACpB,SAASC,sBAAsB;AAC/B,OAAOC,gBAAgB;AACvB,SAASC,wBAAwB;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,kCAAkC,GAAG,SAAAA,CAAUC,UAAU,EAAEC,WAAW,EAAEC,WAAW,EAAEC,MAAM,EAAEC,aAAa,EAAEC,qBAAqB,EAAG;EACzI,OAAOJ,WAAW,CAACK,MAAM,CAAEC,UAAU,IAAI;IACxC,MAAMC,iBAAiB,GAAGZ,sBAAsB,CAAEI,UAAU,EAAEO,UAAU,EAAEL,WAAW,EAAEC,MAAM,EAAEE,qBAAsB,CAAC;IAEtH,IAAKD,aAAa,CAACK,MAAM,KAAK,CAAC,EAAG;MACjC,OAAOD,iBAAiB,CAACE,kBAAkB,KAAK,GAAG;IACpD;IACA,OAAOF,iBAAiB,CAACE,kBAAkB,GAAG,EAAE;EACjD,CAAE,CAAC,CAACD,MAAM;AACX,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASE,yBAAyBA,CAAEC,KAAK,EAAEC,UAAU,EAAG;EACtE,MAAMT,aAAa,GAAGS,UAAU,CAACC,SAAS,CAAE,eAAgB,CAAC;;EAE7D;EACA,MAAMT,qBAAqB,GAAGQ,UAAU,CAACE,SAAS,CAAE,uBAAwB,CAAC;EAG7E,IAAIC,IAAI,GAAGJ,KAAK,CAACK,OAAO,CAAC,CAAC;EAC1BD,IAAI,GAAGnB,gBAAgB,CAAEmB,IAAK,CAAC;EAC/BA,IAAI,GAAGlB,wBAAwB,CAAEkB,IAAI,EAAEJ,KAAK,CAACM,WAAW,IAAIN,KAAK,CAACM,WAAW,CAACC,UAAW,CAAC;EAC1FH,IAAI,GAAGrB,aAAa,CAAEqB,IAAK,CAAC;EAC5B,MAAMhB,UAAU,GAAGa,UAAU,CAACO,WAAW,CAAE,YAAa,CAAC;EACzD,MAAMjB,MAAM,GAAGS,KAAK,CAACS,SAAS,CAAC,CAAC;EAChC,MAAMC,MAAM,GAAG;IAAEC,KAAK,EAAE,CAAC;IAAEC,OAAO,EAAE,CAAC;IAAEC,sBAAsB,EAAE;EAAE,CAAC;EAClE,MAAMvB,WAAW,GAAG,IAAI;EACxB,MAAMD,WAAW,GAAGP,6BAA6B,CAAEsB,IAAK,CAAC;EAEzD,IAAKf,WAAW,CAACQ,MAAM,KAAK,CAAC,EAAG;IAC/Ba,MAAM,CAACC,KAAK,GAAGtB,WAAW,CAACQ,MAAM;IACjCa,MAAM,CAACE,OAAO,GAAGzB,kCAAkC,CAAEC,UAAU,EAAEC,WAAW,EAAEC,WAAW,EAAEC,MAAM,EAAEC,aAAa,EAAEC,qBAAsB,CAAC;IACzIiB,MAAM,CAACG,sBAAsB,GAAGH,MAAM,CAACE,OAAO,GAAGF,MAAM,CAACC,KAAK,GAAG,GAAG;EACpE;EAEA,OAAOD,MAAM;AACd","ignoreList":[]}