axyseo 2.0.0-alpha.0.0.4 → 2.0.0-alpha.0.0.41

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,16 +1,11 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = stem;
7
- var _index = require("../../../index");
8
- var _stemHelpers = require("./stemHelpers");
1
+ import { languageProcessing } from "../../../../../index.js";
9
2
  const {
10
3
  flattenSortLength,
11
4
  buildFormRule,
12
5
  createRulesFromArrays
13
- } = _index.languageProcessing;
6
+ } = languageProcessing;
7
+ import { calculateTotalNumberOfSyllables, removeEnding, checkBeginningsList } from "./stemHelpers";
8
+
14
9
  /**
15
10
  * MIT License
16
11
  *
@@ -54,14 +49,14 @@ const checkSingleSyllableWordSuffix = function (word, suffixesArray) {
54
49
  */
55
50
  const stemSingleSyllableWordsPrefixes = function (word, morphologyData) {
56
51
  // If the word gets prefix di-, stem the prefix here. E.g. dicekkanlah -> cekkanlah, dibomi -> bomi
57
- if (word.startsWith('di') && (0, _stemHelpers.checkBeginningsList)(word, 2, morphologyData.stemming.singleSyllableWords)) {
52
+ if (word.startsWith('di') && checkBeginningsList(word, 2, morphologyData.stemming.singleSyllableWords)) {
58
53
  return word.substring(2, word.length);
59
54
  }
60
55
  /*
61
56
  * If the word gets prefix menge-/penge- and is followed by one of the words in the list, stem the prefix here.
62
57
  * E.g. pengeboman -> boman
63
58
  */
64
- if (/^[mp]enge/i.test(word) && (0, _stemHelpers.checkBeginningsList)(word, 5, morphologyData.stemming.singleSyllableWords)) {
59
+ if (/^[mp]enge/i.test(word) && checkBeginningsList(word, 5, morphologyData.stemming.singleSyllableWords)) {
65
60
  return word.substring(5, word.length);
66
61
  }
67
62
  return word;
@@ -86,15 +81,15 @@ const stemSingleSyllableWords = function (word, morphologyData) {
86
81
  word = stemSingleSyllableWordsPrefixes(word, morphologyData);
87
82
 
88
83
  // Check if a word starts with one of the words in the list, has maximum 3 syllables, and ends in one of the single syllable suffixes
89
- if (singleSyllableWords.some(shortWord => word.startsWith(shortWord)) && (0, _stemHelpers.calculateTotalNumberOfSyllables)(word) <= 3 && checkSingleSyllableWordSuffix(word, suffixCombination)) {
84
+ if (singleSyllableWords.some(shortWord => word.startsWith(shortWord)) && calculateTotalNumberOfSyllables(word) <= 3 && checkSingleSyllableWordSuffix(word, suffixCombination)) {
90
85
  // If the word gets a particle suffix, stem the particle. E.g. cekkanlah -> cekkan, pelkan -> pel, vasmulah -> vasmu
91
- word = (0, _stemHelpers.removeEnding)(word, morphologyData.stemming.regexRules.removeParticle, morphologyData.stemming.doNotStemWords.doNotStemParticle, morphologyData);
86
+ word = removeEnding(word, morphologyData.stemming.regexRules.removeParticle, morphologyData.stemming.doNotStemWords.doNotStemParticle, morphologyData);
92
87
 
93
88
  // If the word gets a possessive pronoun suffix, stem the possessive pronoun. E.g. vasmu -> vas
94
- word = (0, _stemHelpers.removeEnding)(word, morphologyData.stemming.regexRules.removePronoun, morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix, morphologyData);
89
+ word = removeEnding(word, morphologyData.stemming.regexRules.removePronoun, morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix, morphologyData);
95
90
 
96
91
  // If the word ends in -kan/-an/-i suffix, stem the suffix. E.g. cekkan -> cek, bomi -> bom
97
- const wordWithoutDerivationalSuffix = (0, _stemHelpers.removeEnding)(word, morphologyData.stemming.regexRules.removeSuffixes, morphologyData.stemming.doNotStemWords.doNotStemSuffix, morphologyData);
92
+ const wordWithoutDerivationalSuffix = removeEnding(word, morphologyData.stemming.regexRules.removeSuffixes, morphologyData.stemming.doNotStemWords.doNotStemSuffix, morphologyData);
98
93
  if (singleSyllableWords.includes(wordWithoutDerivationalSuffix)) {
99
94
  word = wordWithoutDerivationalSuffix;
100
95
  }
@@ -103,7 +98,7 @@ const stemSingleSyllableWords = function (word, morphologyData) {
103
98
  * We only want to stem single syllable words here.
104
99
  * Thus, if the output word has more than one syllable, we don't stem the input word at all.
105
100
  */
106
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) > 1 || word.length === 1) {
101
+ if (calculateTotalNumberOfSyllables(word) > 1 || word.length === 1) {
107
102
  word = inputWord;
108
103
  }
109
104
  return word;
@@ -131,7 +126,7 @@ const tryStemmingKeAndTer = function (morphologyData, word) {
131
126
  return word;
132
127
  }
133
128
  // If word (without prefixes) is on the list of words beginning with -r, remove only -te instead of -ter.
134
- if ((0, _stemHelpers.checkBeginningsList)(word, 3, morphologyData.stemming.beginningModification.rBeginning)) {
129
+ if (checkBeginningsList(word, 3, morphologyData.stemming.beginningModification.rBeginning)) {
135
130
  return word.replace(/^ter/i, 'r');
136
131
  }
137
132
  // Otherwise, remove -ter.
@@ -153,17 +148,17 @@ const checkFirstOrderPrefixExceptions = function (word, morphologyData) {
153
148
 
154
149
  // If a word starts with "men" or "pen" and is present in the nBeginning exception list, the prefix should be replaced with "n".
155
150
  if (/^[mp]en/i.test(word)) {
156
- if ((0, _stemHelpers.checkBeginningsList)(word, 3, beginningModification.nBeginning)) {
151
+ if (checkBeginningsList(word, 3, beginningModification.nBeginning)) {
157
152
  return word.replace(/^[mp]en/i, 'n');
158
153
  }
159
154
  }
160
- if (/^[mp]eng/i.test(word) && (0, _stemHelpers.checkBeginningsList)(word, 4, beginningModification.kBeginning)) {
155
+ if (/^[mp]eng/i.test(word) && checkBeginningsList(word, 4, beginningModification.kBeginning)) {
161
156
  return word.replace(/^[mp]eng/i, 'k');
162
157
  }
163
158
  if (/^[mp]em/i.test(word)) {
164
- if ((0, _stemHelpers.checkBeginningsList)(word, 3, beginningModification.pBeginning)) {
159
+ if (checkBeginningsList(word, 3, beginningModification.pBeginning)) {
165
160
  return word.replace(/^(mem|pem)/i, 'p');
166
- } else if ((0, _stemHelpers.checkBeginningsList)(word, 3, beginningModification.mBeginning)) {
161
+ } else if (checkBeginningsList(word, 3, beginningModification.mBeginning)) {
167
162
  return word.replace(/^(mem|pem)/i, 'm');
168
163
  }
169
164
  }
@@ -203,11 +198,11 @@ const removeFirstOrderPrefix = function (word, morphologyData) {
203
198
  */
204
199
  const removeSecondOrderPrefix = function (word, morphologyData) {
205
200
  // If a word starts with "ber" or "per" and is present in the rBeginning exception list, the prefix should be replaced with "r".
206
- if ((word.startsWith('ber') || word.startsWith('per')) && (0, _stemHelpers.checkBeginningsList)(word, 3, morphologyData.stemming.beginningModification.rBeginning)) {
201
+ if ((word.startsWith('ber') || word.startsWith('per')) && checkBeginningsList(word, 3, morphologyData.stemming.beginningModification.rBeginning)) {
207
202
  return word.replace(/^(ber|per)/i, 'r');
208
203
  }
209
204
  // If a word starts with a first order prefix followed by peng- and is in the kBeginning exception list, then peng- should be replaced with k.
210
- if (/^peng/i.test(word) && (0, _stemHelpers.checkBeginningsList)(word, 4, morphologyData.stemming.beginningModification.kBeginning)) {
205
+ if (/^peng/i.test(word) && checkBeginningsList(word, 4, morphologyData.stemming.beginningModification.kBeginning)) {
211
206
  return word.replace(/^peng/i, 'k');
212
207
  }
213
208
  const regex = createRulesFromArrays(morphologyData.stemming.regexRules.removeSecondOrderPrefixes);
@@ -247,8 +242,8 @@ const stemDerivational = function (word, morphologyData) {
247
242
  word = removeSecondOrderPrefix(word, morphologyData);
248
243
  }
249
244
  // If the word has more than 2 syllables and ends in either -kan, -an, or -i suffixes, the suffix will be deleted here, e.g., anakan -> anak
250
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) > 2) {
251
- word = (0, _stemHelpers.removeEnding)(word, removeSuffixRules, removeSuffixExceptions, morphologyData);
245
+ if (calculateTotalNumberOfSyllables(word) > 2) {
246
+ word = removeEnding(word, removeSuffixRules, removeSuffixExceptions, morphologyData);
252
247
  }
253
248
  } else {
254
249
  // If the word previously had a first order prefix, assign wordLength to the length of the word after prefix deletion.
@@ -257,8 +252,8 @@ const stemDerivational = function (word, morphologyData) {
257
252
  * If the word after first order prefix deletion is bigger than 2 and ends in either -kan, -an, or -i suffixes,
258
253
  * the suffix will be stemmed here. e.g. penyebaran - sebar.
259
254
  */
260
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) > 2) {
261
- word = (0, _stemHelpers.removeEnding)(word, removeSuffixRules, removeSuffixExceptions, morphologyData);
255
+ if (calculateTotalNumberOfSyllables(word) > 2) {
256
+ word = removeEnding(word, removeSuffixRules, removeSuffixExceptions, morphologyData);
262
257
  }
263
258
  /*
264
259
  * If the word previously had a suffix, we check further if the word after first order prefix and suffix deletion has more than 2 syllables.
@@ -266,7 +261,7 @@ const stemDerivational = function (word, morphologyData) {
266
261
  * be stemmed here unless the word is in the exception list of words with a beginning that looks like a second order prefix.
267
262
  */
268
263
  if (wordLength !== word.length && !doNotStemSecondOrderPrefix.includes(word)) {
269
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) > 2) {
264
+ if (calculateTotalNumberOfSyllables(word) > 2) {
270
265
  word = removeSecondOrderPrefix(word, morphologyData);
271
266
  }
272
267
  }
@@ -288,7 +283,7 @@ const stemSingular = function (word, morphologyData) {
288
283
  word = singleSyllableWords;
289
284
  const doNotStemParticle = morphologyData.stemming.doNotStemWords.doNotStemParticle;
290
285
  const doNotStemPronoun = morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix;
291
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) <= 2) {
286
+ if (calculateTotalNumberOfSyllables(word) <= 2) {
292
287
  return word;
293
288
  }
294
289
 
@@ -303,16 +298,16 @@ const stemSingular = function (word, morphologyData) {
303
298
  * If the word has more than 2 syllables and ends in of the particle endings (i.e. -kah, -lah, -pun), stem the particle here.
304
299
  * e.g. bajumulah -> bajumu, bawalah -> bawa
305
300
  */
306
- word = (0, _stemHelpers.removeEnding)(word, morphologyData.stemming.regexRules.removeParticle, doNotStemParticle, morphologyData);
301
+ word = removeEnding(word, morphologyData.stemming.regexRules.removeParticle, doNotStemParticle, morphologyData);
307
302
 
308
303
  // If the word (still) has more than 2 syllables and ends in of the possessive pronoun endings (i.e. -ku, -mu, -nya), stem the ending here.
309
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) > 2) {
304
+ if (calculateTotalNumberOfSyllables(word) > 2) {
310
305
  // E.g. bajumu -> baju
311
- word = (0, _stemHelpers.removeEnding)(word, morphologyData.stemming.regexRules.removePronoun, doNotStemPronoun, morphologyData);
306
+ word = removeEnding(word, morphologyData.stemming.regexRules.removePronoun, doNotStemPronoun, morphologyData);
312
307
  }
313
308
 
314
309
  // If the word (still) has more than 2 syllables and has derivational affixes, the affix(es) will be stemmed here.
315
- if ((0, _stemHelpers.calculateTotalNumberOfSyllables)(word) > 2) {
310
+ if (calculateTotalNumberOfSyllables(word) > 2) {
316
311
  word = stemDerivational(word, morphologyData);
317
312
  }
318
313
  return word;
@@ -379,7 +374,7 @@ const stemPlural = function (word, morphologyData) {
379
374
  *
380
375
  * @returns {string} The stem of an Indonesian word.
381
376
  */
382
- function stem(word, morphologyData) {
377
+ export default function stem(word, morphologyData) {
383
378
  // Check words that shouldn't receive any stemming.
384
379
  if (morphologyData.stemming.shouldNotBeStemmed.includes(word)) {
385
380
  return word;
@@ -1 +1 @@
1
- {"version":3,"file":"stem.js","names":["_index","require","_stemHelpers","flattenSortLength","buildFormRule","createRulesFromArrays","languageProcessing","checkSingleSyllableWordSuffix","word","suffixesArray","suffix","match","stemSingleSyllableWordsPrefixes","morphologyData","startsWith","checkBeginningsList","stemming","singleSyllableWords","substring","length","test","stemSingleSyllableWords","suffixCombination","singleSyllableWordsSuffixes","inputWord","some","shortWord","calculateTotalNumberOfSyllables","removeEnding","regexRules","removeParticle","doNotStemWords","doNotStemParticle","removePronoun","doNotStemPronounSuffix","wordWithoutDerivationalSuffix","removeSuffixes","doNotStemSuffix","includes","tryStemmingKeAndTer","terException","doNotStemPrefix","doNotStemFirstOrderPrefix","doNotStemTer","wordWithTer","beginningModification","rBeginning","replace","checkFirstOrderPrefixExceptions","nBeginning","kBeginning","pBeginning","mBeginning","wordAfterKeTerCheck","removeFirstOrderPrefix","firstOrderPrefixException","regex","removeFirstOrderPrefixes","withRemovedFirstOrderPrefix","removeSecondOrderPrefix","removeSecondOrderPrefixes","withRemovedSecondOrderPrefix","stemDerivational","wordLength","removeSuffixRules","removeSuffixExceptions","doNotStemSecondOrderPrefix","wordWithPrefixLookAlike","stemSingular","doNotStemPronoun","firstDerivationalStem","stemPlural","hyphenIndex","indexOf","splitWord","split","firstPart","secondPart","firstPartBeginningTrimmed","secondPartBeginningTrimmed","nonPlurals","nonPluralReduplications","stem","shouldNotBeStemmed","stemmedPlural"],"sources":["../../../../../../src/languageProcessing/languages/id/helpers/internal/stem.js"],"sourcesContent":["import {languageProcessing} from '../../../index';\nconst {flattenSortLength, buildFormRule, createRulesFromArrays} = languageProcessing;\n\nimport {calculateTotalNumberOfSyllables, removeEnding, checkBeginningsList} from './stemHelpers';\n\n/**\n * MIT License\n *\n * Adapted from: Copyright (c) 2013 Adinda Praditya\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software\n * and associated documentation files (the \\\"Software\\\"), to deal in the Software without restriction,\n * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n * THE SOFTWARE IS PROVIDED \\\"AS IS\\\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,\n * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\"\n */\n\n/**\n * Checks if a single syllable word has one of the suffixes/suffix combination.\n *\n * @param {string} word The word to check.\n * @param {Array} suffixesArray The array of suffixes\n * @returns {boolean} Whether the word ends in one of the suffixes or not.\n */\nconst checkSingleSyllableWordSuffix = function(word, suffixesArray) {\n for (const suffix of suffixesArray) {\n if (word.match(suffix)) {\n return true;\n }\n }\n};\n\n/**\n * Stems the prefix of the single syllable words, i.e. di-/penge-/menge-\n *\n * @param {string}\tword\t\t\tThe word to check.\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n *\n * @returns {string} The stemmed word.\n */\nconst stemSingleSyllableWordsPrefixes = function(word, morphologyData) {\n // If the word gets prefix di-, stem the prefix here. E.g. dicekkanlah -> cekkanlah, dibomi -> bomi\n if (\n word.startsWith('di') &&\n checkBeginningsList(word, 2, morphologyData.stemming.singleSyllableWords)\n ) {\n return word.substring(2, word.length);\n }\n /*\n * If the word gets prefix menge-/penge- and is followed by one of the words in the list, stem the prefix here.\n * E.g. pengeboman -> boman\n */\n if (\n /^[mp]enge/i.test(word) &&\n checkBeginningsList(word, 5, morphologyData.stemming.singleSyllableWords)\n ) {\n return word.substring(5, word.length);\n }\n return word;\n};\n\n/**\n * Stems Indonesian single syllable words. This function concerns single syllable words\n * with this possible word format [di/penge/menge] + single syllable word + [kan/an/i] + [ku/mu/nya] + [kah/lah/pun], with [] being optional.\n * E.g. dipel -> pel, dipelkan -> pel, dipelkanlah -> pel, pelkan -> pel, pelmulah -> pel, pengeboman -> bom, mengesahkan -> sah\n *\n *\n * @param {string}\tword\t\t\tThe word to check.\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n *\n * @returns {string} The stemmed word.\n */\nconst stemSingleSyllableWords = function(word, morphologyData) {\n const singleSyllableWords = morphologyData.stemming.singleSyllableWords;\n const suffixCombination = morphologyData.stemming.singleSyllableWordsSuffixes;\n const inputWord = word;\n // If the word starts with prefix di-/penge-/menge-, stem the prefix here. E.g. pengeboman -> boman, dipelkan -> pelkan\n word = stemSingleSyllableWordsPrefixes(word, morphologyData);\n\n // Check if a word starts with one of the words in the list, has maximum 3 syllables, and ends in one of the single syllable suffixes\n if (\n singleSyllableWords.some(shortWord => word.startsWith(shortWord)) &&\n calculateTotalNumberOfSyllables(word) <= 3 &&\n checkSingleSyllableWordSuffix(word, suffixCombination)\n ) {\n // If the word gets a particle suffix, stem the particle. E.g. cekkanlah -> cekkan, pelkan -> pel, vasmulah -> vasmu\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removeParticle,\n morphologyData.stemming.doNotStemWords.doNotStemParticle,\n morphologyData\n );\n\n // If the word gets a possessive pronoun suffix, stem the possessive pronoun. E.g. vasmu -> vas\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removePronoun,\n morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix,\n morphologyData\n );\n\n // If the word ends in -kan/-an/-i suffix, stem the suffix. E.g. cekkan -> cek, bomi -> bom\n const wordWithoutDerivationalSuffix = removeEnding(\n word,\n morphologyData.stemming.regexRules.removeSuffixes,\n morphologyData.stemming.doNotStemWords.doNotStemSuffix,\n morphologyData\n );\n\n if (singleSyllableWords.includes(wordWithoutDerivationalSuffix)) {\n word = wordWithoutDerivationalSuffix;\n }\n }\n /*\n * We only want to stem single syllable words here.\n * Thus, if the output word has more than one syllable, we don't stem the input word at all.\n */\n if (calculateTotalNumberOfSyllables(word) > 1 || word.length === 1) {\n word = inputWord;\n }\n return word;\n};\n\n/**\n * Tries stemming prefixes ke- and ter-. Ke- is always stemmed, and ter- only if it is a prefix and not part of the stem.\n * Also if the stem of the word begins with r-, only te- is stemmed, not ter-.\n *\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n * @param {string}\tword\t\t\tThe word to check.\n *\n * @returns {string|null}\tThe stem or null if the word did not start with ter/keter.\n */\nconst tryStemmingKeAndTer = function(morphologyData, word) {\n const terException =\n morphologyData.stemming.doNotStemWords.doNotStemPrefix.doNotStemFirstOrderPrefix.doNotStemTer;\n\n // If prefix -ter is preceded by prefix -ke, remove it first.\n if (word.startsWith('keter')) {\n word = word.substring(2, word.length);\n }\n if (word.startsWith('ter')) {\n // If word is on an exception list of words where -ter should not be stemmed, do not stem -ter and return the word.\n if (terException.some(wordWithTer => word.startsWith(wordWithTer))) {\n return word;\n }\n // If word (without prefixes) is on the list of words beginning with -r, remove only -te instead of -ter.\n if (checkBeginningsList(word, 3, morphologyData.stemming.beginningModification.rBeginning)) {\n return word.replace(/^ter/i, 'r');\n }\n // Otherwise, remove -ter.\n return word.substring(3, word.length);\n }\n};\n/**\n * Checks whether a word has a first order prefix and whether it is on an exception list of words which require a stem mofification\n * after removing the prefix. Returns the stem if the prefix was found and the word was matched on an exception list.\n *\n *\n * @param {string}\tword\t\t\tThe word to check.\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n *\n * @returns {string|null}\tThe stem or null if a prefix was not found, or was found but the word was not on the exception list.\n */\nconst checkFirstOrderPrefixExceptions = function(word, morphologyData) {\n const beginningModification = morphologyData.stemming.beginningModification;\n\n // If a word starts with \"men\" or \"pen\" and is present in the nBeginning exception list, the prefix should be replaced with \"n\".\n if (/^[mp]en/i.test(word)) {\n if (checkBeginningsList(word, 3, beginningModification.nBeginning)) {\n return word.replace(/^[mp]en/i, 'n');\n }\n }\n if (/^[mp]eng/i.test(word) && checkBeginningsList(word, 4, beginningModification.kBeginning)) {\n return word.replace(/^[mp]eng/i, 'k');\n }\n\n if (/^[mp]em/i.test(word)) {\n if (checkBeginningsList(word, 3, beginningModification.pBeginning)) {\n return word.replace(/^(mem|pem)/i, 'p');\n } else if (checkBeginningsList(word, 3, beginningModification.mBeginning)) {\n return word.replace(/^(mem|pem)/i, 'm');\n }\n }\n // Stem prefix ke- if found. Stem te(r)- unless the word was found on the exception list of words with stem beginning in -ter.\n const wordAfterKeTerCheck = tryStemmingKeAndTer(morphologyData, word);\n if (wordAfterKeTerCheck) {\n return wordAfterKeTerCheck;\n }\n};\n\n/**\n * Stems the first-order prefix of a word based on regexRules. If the word is found in an exception list, implements a stem modification.\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stemmed word.\n */\nconst removeFirstOrderPrefix = function(word, morphologyData) {\n // Checks whether the word has a first order prefix and requires a stem modification.\n const firstOrderPrefixException = checkFirstOrderPrefixExceptions(word, morphologyData);\n\n if (firstOrderPrefixException) {\n return firstOrderPrefixException;\n }\n const regex = createRulesFromArrays(morphologyData.stemming.regexRules.removeFirstOrderPrefixes);\n const withRemovedFirstOrderPrefix = buildFormRule(word, regex);\n\n return withRemovedFirstOrderPrefix || word;\n};\n\n/**\n * Stems the second-order prefix of a word based on regexRules. If the word is found in an exception list, implements a stem modification.\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stemmed word.\n */\nconst removeSecondOrderPrefix = function(word, morphologyData) {\n // If a word starts with \"ber\" or \"per\" and is present in the rBeginning exception list, the prefix should be replaced with \"r\".\n if (\n (word.startsWith('ber') || word.startsWith('per')) &&\n checkBeginningsList(word, 3, morphologyData.stemming.beginningModification.rBeginning)\n ) {\n return word.replace(/^(ber|per)/i, 'r');\n }\n // If a word starts with a first order prefix followed by peng- and is in the kBeginning exception list, then peng- should be replaced with k.\n if (\n /^peng/i.test(word) &&\n checkBeginningsList(word, 4, morphologyData.stemming.beginningModification.kBeginning)\n ) {\n return word.replace(/^peng/i, 'k');\n }\n const regex = createRulesFromArrays(morphologyData.stemming.regexRules.removeSecondOrderPrefixes);\n const withRemovedSecondOrderPrefix = buildFormRule(word, regex);\n\n return withRemovedSecondOrderPrefix || word;\n};\n\n/**\n * Stems derivational affixes of Indonesian words.\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stemmed word.\n */\nconst stemDerivational = function(word, morphologyData) {\n let wordLength = word.length;\n const removeSuffixRules = morphologyData.stemming.regexRules.removeSuffixes;\n const removeSuffixExceptions = morphologyData.stemming.doNotStemWords.doNotStemSuffix;\n const doNotStemFirstOrderPrefix = flattenSortLength(\n morphologyData.stemming.doNotStemWords.doNotStemPrefix.doNotStemFirstOrderPrefix\n );\n const doNotStemSecondOrderPrefix = flattenSortLength(\n morphologyData.stemming.doNotStemWords.doNotStemPrefix.doNotStemSecondOrderPrefix\n );\n\n // If a word is in the list of words with a beginning that looks like a valid suffix, do not stem the suffix\n if (\n !doNotStemFirstOrderPrefix.some(wordWithPrefixLookAlike =>\n word.startsWith(wordWithPrefixLookAlike)\n )\n ) {\n /*\n * If the word has more than 2 syllables and starts with one of first order prefixes (i.e. meng-, meny-, men-, mem-, me-,\n * peng-, peny-, pen-, pem-, di-, ter-, ke- ), the prefix will be stemmed here. e.g. penyebaran -> sebaran, diperlebarkan -> perlebarkan\n */\n word = removeFirstOrderPrefix(word, morphologyData);\n }\n\n if (wordLength === word.length) {\n if (\n !doNotStemSecondOrderPrefix.some(wordWithPrefixLookAlike =>\n word.startsWith(wordWithPrefixLookAlike)\n )\n ) {\n /*\n * If the word does not start with one of the first order prefixes but starts with one of the second order prefixes,\n * the prefix will be stemmed here, e.g., peranakan -> anakan\n */\n word = removeSecondOrderPrefix(word, morphologyData);\n }\n // If the word has more than 2 syllables and ends in either -kan, -an, or -i suffixes, the suffix will be deleted here, e.g., anakan -> anak\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = removeEnding(word, removeSuffixRules, removeSuffixExceptions, morphologyData);\n }\n } else {\n // If the word previously had a first order prefix, assign wordLength to the length of the word after prefix deletion.\n wordLength = word.length;\n /*\n * If the word after first order prefix deletion is bigger than 2 and ends in either -kan, -an, or -i suffixes,\n * the suffix will be stemmed here. e.g. penyebaran - sebar.\n */\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = removeEnding(word, removeSuffixRules, removeSuffixExceptions, morphologyData);\n }\n /*\n * If the word previously had a suffix, we check further if the word after first order prefix and suffix deletion has more than 2 syllables.\n * If it does have more than 2 syllables and starts with one of the second order prefixes (i.e. ber-, be-, per-, pe-), the prefix will\n * be stemmed here unless the word is in the exception list of words with a beginning that looks like a second order prefix.\n */\n if (wordLength !== word.length && !doNotStemSecondOrderPrefix.includes(word)) {\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = removeSecondOrderPrefix(word, morphologyData);\n }\n }\n }\n return word;\n};\n\n/**\n * Stems Indonesian singular words.\n *\n * @param {string} word The singular word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stem of an Indonesian singular word.\n */\nconst stemSingular = function(word, morphologyData) {\n const singleSyllableWords = stemSingleSyllableWords(word, morphologyData);\n // Stem the single syllable words\n word = singleSyllableWords;\n\n const doNotStemParticle = morphologyData.stemming.doNotStemWords.doNotStemParticle;\n const doNotStemPronoun = morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix;\n\n if (calculateTotalNumberOfSyllables(word) <= 2) {\n return word;\n }\n\n // Check if a word after its derivational affixes stemmed exists in the exception list.\n const firstDerivationalStem = stemDerivational(word, morphologyData);\n if (\n doNotStemParticle.includes(firstDerivationalStem) ||\n doNotStemPronoun.includes(firstDerivationalStem)\n ) {\n // If it does exist in the exception list, the ending that looks like a particle or a pronoun suffix should not be stemmed.\n return firstDerivationalStem;\n }\n\n /*\n * If the word has more than 2 syllables and ends in of the particle endings (i.e. -kah, -lah, -pun), stem the particle here.\n * e.g. bajumulah -> bajumu, bawalah -> bawa\n */\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removeParticle,\n doNotStemParticle,\n morphologyData\n );\n\n // If the word (still) has more than 2 syllables and ends in of the possessive pronoun endings (i.e. -ku, -mu, -nya), stem the ending here.\n if (calculateTotalNumberOfSyllables(word) > 2) {\n // E.g. bajumu -> baju\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removePronoun,\n doNotStemPronoun,\n morphologyData\n );\n }\n\n // If the word (still) has more than 2 syllables and has derivational affixes, the affix(es) will be stemmed here.\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = stemDerivational(word, morphologyData);\n }\n return word;\n};\n\n/**\n * Stems Indonesian plural words.\n *\n * @param {string} word The plural word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string|null} The stem of an Indonesian plural word or null if no plural was detected.\n */\nconst stemPlural = function(word, morphologyData) {\n const hyphenIndex = word.indexOf('-');\n\n // If there is no hyphen in the word, it can't be a reduplicated plural.\n if (hyphenIndex === -1) {\n return null;\n }\n\n const splitWord = word.split('-');\n\n if (splitWord.length === 2) {\n let firstPart = splitWord[0];\n let secondPart = splitWord[1];\n\n firstPart = stemSingular(firstPart, morphologyData);\n secondPart = stemSingular(secondPart, morphologyData);\n\n /*\n * To compare the first and second part and see whether it's actually a reduplication:\n * Trim the beginning of the word since it might be variable due to stem changes caused by prefixes.\n * For example, in \"meniru-nirukan\" the singular stemmer will correctly stem the first \"niru\" to \"tiru\" because\n * of the prefix \"me\". Since the second part of the word is stemmed individually, there is no \"me\" and hence\n * \"niru\" remains \"niru\". To still be able to link these two forms to each other,\n * we compare the two parts of the word after stripping the variable first or first and second letter.\n *\n */\n const firstPartBeginningTrimmed = firstPart.substring(1);\n const secondPartBeginningTrimmed =\n secondPart.startsWith('ng') || secondPart.startsWith('ny')\n ? secondPart.substring(2)\n : secondPart.substring(1);\n\n if (firstPartBeginningTrimmed === secondPartBeginningTrimmed) {\n const nonPlurals = morphologyData.stemming.nonPluralReduplications;\n\n // Check non-plural reduplication.\n if (nonPlurals.includes(firstPart) && nonPlurals.includes(secondPart)) {\n /*\n * In words such as \"mengira-ngira\" prefix \"me\" causes a modification on both words (k->ng). This will\n * be correctly stemmed for the first word, but not the second. Therefore, the correct base form\n * \"kira-kira\" is created based on a reduplication of the correctly stemmed first part, \"kira\".\n */\n return firstPart + '-' + firstPart;\n }\n\n // Return the stemmed singular form of a reduplicated plural.\n return firstPart;\n }\n }\n\n return null;\n};\n\n/**\n * Stems Indonesian words\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stem of an Indonesian word.\n */\nexport default function stem(word, morphologyData) {\n // Check words that shouldn't receive any stemming.\n if (morphologyData.stemming.shouldNotBeStemmed.includes(word)) {\n return word;\n }\n\n const stemmedPlural = stemPlural(word, morphologyData);\n\n if (stemmedPlural) {\n return stemmedPlural;\n }\n\n word = stemSingular(word, morphologyData);\n\n return word;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"stem.js","names":["languageProcessing","flattenSortLength","buildFormRule","createRulesFromArrays","calculateTotalNumberOfSyllables","removeEnding","checkBeginningsList","checkSingleSyllableWordSuffix","word","suffixesArray","suffix","match","stemSingleSyllableWordsPrefixes","morphologyData","startsWith","stemming","singleSyllableWords","substring","length","test","stemSingleSyllableWords","suffixCombination","singleSyllableWordsSuffixes","inputWord","some","shortWord","regexRules","removeParticle","doNotStemWords","doNotStemParticle","removePronoun","doNotStemPronounSuffix","wordWithoutDerivationalSuffix","removeSuffixes","doNotStemSuffix","includes","tryStemmingKeAndTer","terException","doNotStemPrefix","doNotStemFirstOrderPrefix","doNotStemTer","wordWithTer","beginningModification","rBeginning","replace","checkFirstOrderPrefixExceptions","nBeginning","kBeginning","pBeginning","mBeginning","wordAfterKeTerCheck","removeFirstOrderPrefix","firstOrderPrefixException","regex","removeFirstOrderPrefixes","withRemovedFirstOrderPrefix","removeSecondOrderPrefix","removeSecondOrderPrefixes","withRemovedSecondOrderPrefix","stemDerivational","wordLength","removeSuffixRules","removeSuffixExceptions","doNotStemSecondOrderPrefix","wordWithPrefixLookAlike","stemSingular","doNotStemPronoun","firstDerivationalStem","stemPlural","hyphenIndex","indexOf","splitWord","split","firstPart","secondPart","firstPartBeginningTrimmed","secondPartBeginningTrimmed","nonPlurals","nonPluralReduplications","stem","shouldNotBeStemmed","stemmedPlural"],"sources":["../../../../../../src/languageProcessing/languages/id/helpers/internal/stem.js"],"sourcesContent":["import {languageProcessing} from '@axyseo/index.js';\nconst {flattenSortLength, buildFormRule, createRulesFromArrays} = languageProcessing;\n\nimport {calculateTotalNumberOfSyllables, removeEnding, checkBeginningsList} from './stemHelpers';\n\n/**\n * MIT License\n *\n * Adapted from: Copyright (c) 2013 Adinda Praditya\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software\n * and associated documentation files (the \\\"Software\\\"), to deal in the Software without restriction,\n * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n * THE SOFTWARE IS PROVIDED \\\"AS IS\\\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,\n * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\"\n */\n\n/**\n * Checks if a single syllable word has one of the suffixes/suffix combination.\n *\n * @param {string} word The word to check.\n * @param {Array} suffixesArray The array of suffixes\n * @returns {boolean} Whether the word ends in one of the suffixes or not.\n */\nconst checkSingleSyllableWordSuffix = function(word, suffixesArray) {\n for (const suffix of suffixesArray) {\n if (word.match(suffix)) {\n return true;\n }\n }\n};\n\n/**\n * Stems the prefix of the single syllable words, i.e. di-/penge-/menge-\n *\n * @param {string}\tword\t\t\tThe word to check.\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n *\n * @returns {string} The stemmed word.\n */\nconst stemSingleSyllableWordsPrefixes = function(word, morphologyData) {\n // If the word gets prefix di-, stem the prefix here. E.g. dicekkanlah -> cekkanlah, dibomi -> bomi\n if (\n word.startsWith('di') &&\n checkBeginningsList(word, 2, morphologyData.stemming.singleSyllableWords)\n ) {\n return word.substring(2, word.length);\n }\n /*\n * If the word gets prefix menge-/penge- and is followed by one of the words in the list, stem the prefix here.\n * E.g. pengeboman -> boman\n */\n if (\n /^[mp]enge/i.test(word) &&\n checkBeginningsList(word, 5, morphologyData.stemming.singleSyllableWords)\n ) {\n return word.substring(5, word.length);\n }\n return word;\n};\n\n/**\n * Stems Indonesian single syllable words. This function concerns single syllable words\n * with this possible word format [di/penge/menge] + single syllable word + [kan/an/i] + [ku/mu/nya] + [kah/lah/pun], with [] being optional.\n * E.g. dipel -> pel, dipelkan -> pel, dipelkanlah -> pel, pelkan -> pel, pelmulah -> pel, pengeboman -> bom, mengesahkan -> sah\n *\n *\n * @param {string}\tword\t\t\tThe word to check.\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n *\n * @returns {string} The stemmed word.\n */\nconst stemSingleSyllableWords = function(word, morphologyData) {\n const singleSyllableWords = morphologyData.stemming.singleSyllableWords;\n const suffixCombination = morphologyData.stemming.singleSyllableWordsSuffixes;\n const inputWord = word;\n // If the word starts with prefix di-/penge-/menge-, stem the prefix here. E.g. pengeboman -> boman, dipelkan -> pelkan\n word = stemSingleSyllableWordsPrefixes(word, morphologyData);\n\n // Check if a word starts with one of the words in the list, has maximum 3 syllables, and ends in one of the single syllable suffixes\n if (\n singleSyllableWords.some(shortWord => word.startsWith(shortWord)) &&\n calculateTotalNumberOfSyllables(word) <= 3 &&\n checkSingleSyllableWordSuffix(word, suffixCombination)\n ) {\n // If the word gets a particle suffix, stem the particle. E.g. cekkanlah -> cekkan, pelkan -> pel, vasmulah -> vasmu\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removeParticle,\n morphologyData.stemming.doNotStemWords.doNotStemParticle,\n morphologyData\n );\n\n // If the word gets a possessive pronoun suffix, stem the possessive pronoun. E.g. vasmu -> vas\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removePronoun,\n morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix,\n morphologyData\n );\n\n // If the word ends in -kan/-an/-i suffix, stem the suffix. E.g. cekkan -> cek, bomi -> bom\n const wordWithoutDerivationalSuffix = removeEnding(\n word,\n morphologyData.stemming.regexRules.removeSuffixes,\n morphologyData.stemming.doNotStemWords.doNotStemSuffix,\n morphologyData\n );\n\n if (singleSyllableWords.includes(wordWithoutDerivationalSuffix)) {\n word = wordWithoutDerivationalSuffix;\n }\n }\n /*\n * We only want to stem single syllable words here.\n * Thus, if the output word has more than one syllable, we don't stem the input word at all.\n */\n if (calculateTotalNumberOfSyllables(word) > 1 || word.length === 1) {\n word = inputWord;\n }\n return word;\n};\n\n/**\n * Tries stemming prefixes ke- and ter-. Ke- is always stemmed, and ter- only if it is a prefix and not part of the stem.\n * Also if the stem of the word begins with r-, only te- is stemmed, not ter-.\n *\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n * @param {string}\tword\t\t\tThe word to check.\n *\n * @returns {string|null}\tThe stem or null if the word did not start with ter/keter.\n */\nconst tryStemmingKeAndTer = function(morphologyData, word) {\n const terException =\n morphologyData.stemming.doNotStemWords.doNotStemPrefix.doNotStemFirstOrderPrefix.doNotStemTer;\n\n // If prefix -ter is preceded by prefix -ke, remove it first.\n if (word.startsWith('keter')) {\n word = word.substring(2, word.length);\n }\n if (word.startsWith('ter')) {\n // If word is on an exception list of words where -ter should not be stemmed, do not stem -ter and return the word.\n if (terException.some(wordWithTer => word.startsWith(wordWithTer))) {\n return word;\n }\n // If word (without prefixes) is on the list of words beginning with -r, remove only -te instead of -ter.\n if (checkBeginningsList(word, 3, morphologyData.stemming.beginningModification.rBeginning)) {\n return word.replace(/^ter/i, 'r');\n }\n // Otherwise, remove -ter.\n return word.substring(3, word.length);\n }\n};\n/**\n * Checks whether a word has a first order prefix and whether it is on an exception list of words which require a stem mofification\n * after removing the prefix. Returns the stem if the prefix was found and the word was matched on an exception list.\n *\n *\n * @param {string}\tword\t\t\tThe word to check.\n * @param {Object}\tmorphologyData\tThe Indonesian morphology data file.\n *\n * @returns {string|null}\tThe stem or null if a prefix was not found, or was found but the word was not on the exception list.\n */\nconst checkFirstOrderPrefixExceptions = function(word, morphologyData) {\n const beginningModification = morphologyData.stemming.beginningModification;\n\n // If a word starts with \"men\" or \"pen\" and is present in the nBeginning exception list, the prefix should be replaced with \"n\".\n if (/^[mp]en/i.test(word)) {\n if (checkBeginningsList(word, 3, beginningModification.nBeginning)) {\n return word.replace(/^[mp]en/i, 'n');\n }\n }\n if (/^[mp]eng/i.test(word) && checkBeginningsList(word, 4, beginningModification.kBeginning)) {\n return word.replace(/^[mp]eng/i, 'k');\n }\n\n if (/^[mp]em/i.test(word)) {\n if (checkBeginningsList(word, 3, beginningModification.pBeginning)) {\n return word.replace(/^(mem|pem)/i, 'p');\n } else if (checkBeginningsList(word, 3, beginningModification.mBeginning)) {\n return word.replace(/^(mem|pem)/i, 'm');\n }\n }\n // Stem prefix ke- if found. Stem te(r)- unless the word was found on the exception list of words with stem beginning in -ter.\n const wordAfterKeTerCheck = tryStemmingKeAndTer(morphologyData, word);\n if (wordAfterKeTerCheck) {\n return wordAfterKeTerCheck;\n }\n};\n\n/**\n * Stems the first-order prefix of a word based on regexRules. If the word is found in an exception list, implements a stem modification.\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stemmed word.\n */\nconst removeFirstOrderPrefix = function(word, morphologyData) {\n // Checks whether the word has a first order prefix and requires a stem modification.\n const firstOrderPrefixException = checkFirstOrderPrefixExceptions(word, morphologyData);\n\n if (firstOrderPrefixException) {\n return firstOrderPrefixException;\n }\n const regex = createRulesFromArrays(morphologyData.stemming.regexRules.removeFirstOrderPrefixes);\n const withRemovedFirstOrderPrefix = buildFormRule(word, regex);\n\n return withRemovedFirstOrderPrefix || word;\n};\n\n/**\n * Stems the second-order prefix of a word based on regexRules. If the word is found in an exception list, implements a stem modification.\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stemmed word.\n */\nconst removeSecondOrderPrefix = function(word, morphologyData) {\n // If a word starts with \"ber\" or \"per\" and is present in the rBeginning exception list, the prefix should be replaced with \"r\".\n if (\n (word.startsWith('ber') || word.startsWith('per')) &&\n checkBeginningsList(word, 3, morphologyData.stemming.beginningModification.rBeginning)\n ) {\n return word.replace(/^(ber|per)/i, 'r');\n }\n // If a word starts with a first order prefix followed by peng- and is in the kBeginning exception list, then peng- should be replaced with k.\n if (\n /^peng/i.test(word) &&\n checkBeginningsList(word, 4, morphologyData.stemming.beginningModification.kBeginning)\n ) {\n return word.replace(/^peng/i, 'k');\n }\n const regex = createRulesFromArrays(morphologyData.stemming.regexRules.removeSecondOrderPrefixes);\n const withRemovedSecondOrderPrefix = buildFormRule(word, regex);\n\n return withRemovedSecondOrderPrefix || word;\n};\n\n/**\n * Stems derivational affixes of Indonesian words.\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stemmed word.\n */\nconst stemDerivational = function(word, morphologyData) {\n let wordLength = word.length;\n const removeSuffixRules = morphologyData.stemming.regexRules.removeSuffixes;\n const removeSuffixExceptions = morphologyData.stemming.doNotStemWords.doNotStemSuffix;\n const doNotStemFirstOrderPrefix = flattenSortLength(\n morphologyData.stemming.doNotStemWords.doNotStemPrefix.doNotStemFirstOrderPrefix\n );\n const doNotStemSecondOrderPrefix = flattenSortLength(\n morphologyData.stemming.doNotStemWords.doNotStemPrefix.doNotStemSecondOrderPrefix\n );\n\n // If a word is in the list of words with a beginning that looks like a valid suffix, do not stem the suffix\n if (\n !doNotStemFirstOrderPrefix.some(wordWithPrefixLookAlike =>\n word.startsWith(wordWithPrefixLookAlike)\n )\n ) {\n /*\n * If the word has more than 2 syllables and starts with one of first order prefixes (i.e. meng-, meny-, men-, mem-, me-,\n * peng-, peny-, pen-, pem-, di-, ter-, ke- ), the prefix will be stemmed here. e.g. penyebaran -> sebaran, diperlebarkan -> perlebarkan\n */\n word = removeFirstOrderPrefix(word, morphologyData);\n }\n\n if (wordLength === word.length) {\n if (\n !doNotStemSecondOrderPrefix.some(wordWithPrefixLookAlike =>\n word.startsWith(wordWithPrefixLookAlike)\n )\n ) {\n /*\n * If the word does not start with one of the first order prefixes but starts with one of the second order prefixes,\n * the prefix will be stemmed here, e.g., peranakan -> anakan\n */\n word = removeSecondOrderPrefix(word, morphologyData);\n }\n // If the word has more than 2 syllables and ends in either -kan, -an, or -i suffixes, the suffix will be deleted here, e.g., anakan -> anak\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = removeEnding(word, removeSuffixRules, removeSuffixExceptions, morphologyData);\n }\n } else {\n // If the word previously had a first order prefix, assign wordLength to the length of the word after prefix deletion.\n wordLength = word.length;\n /*\n * If the word after first order prefix deletion is bigger than 2 and ends in either -kan, -an, or -i suffixes,\n * the suffix will be stemmed here. e.g. penyebaran - sebar.\n */\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = removeEnding(word, removeSuffixRules, removeSuffixExceptions, morphologyData);\n }\n /*\n * If the word previously had a suffix, we check further if the word after first order prefix and suffix deletion has more than 2 syllables.\n * If it does have more than 2 syllables and starts with one of the second order prefixes (i.e. ber-, be-, per-, pe-), the prefix will\n * be stemmed here unless the word is in the exception list of words with a beginning that looks like a second order prefix.\n */\n if (wordLength !== word.length && !doNotStemSecondOrderPrefix.includes(word)) {\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = removeSecondOrderPrefix(word, morphologyData);\n }\n }\n }\n return word;\n};\n\n/**\n * Stems Indonesian singular words.\n *\n * @param {string} word The singular word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stem of an Indonesian singular word.\n */\nconst stemSingular = function(word, morphologyData) {\n const singleSyllableWords = stemSingleSyllableWords(word, morphologyData);\n // Stem the single syllable words\n word = singleSyllableWords;\n\n const doNotStemParticle = morphologyData.stemming.doNotStemWords.doNotStemParticle;\n const doNotStemPronoun = morphologyData.stemming.doNotStemWords.doNotStemPronounSuffix;\n\n if (calculateTotalNumberOfSyllables(word) <= 2) {\n return word;\n }\n\n // Check if a word after its derivational affixes stemmed exists in the exception list.\n const firstDerivationalStem = stemDerivational(word, morphologyData);\n if (\n doNotStemParticle.includes(firstDerivationalStem) ||\n doNotStemPronoun.includes(firstDerivationalStem)\n ) {\n // If it does exist in the exception list, the ending that looks like a particle or a pronoun suffix should not be stemmed.\n return firstDerivationalStem;\n }\n\n /*\n * If the word has more than 2 syllables and ends in of the particle endings (i.e. -kah, -lah, -pun), stem the particle here.\n * e.g. bajumulah -> bajumu, bawalah -> bawa\n */\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removeParticle,\n doNotStemParticle,\n morphologyData\n );\n\n // If the word (still) has more than 2 syllables and ends in of the possessive pronoun endings (i.e. -ku, -mu, -nya), stem the ending here.\n if (calculateTotalNumberOfSyllables(word) > 2) {\n // E.g. bajumu -> baju\n word = removeEnding(\n word,\n morphologyData.stemming.regexRules.removePronoun,\n doNotStemPronoun,\n morphologyData\n );\n }\n\n // If the word (still) has more than 2 syllables and has derivational affixes, the affix(es) will be stemmed here.\n if (calculateTotalNumberOfSyllables(word) > 2) {\n word = stemDerivational(word, morphologyData);\n }\n return word;\n};\n\n/**\n * Stems Indonesian plural words.\n *\n * @param {string} word The plural word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string|null} The stem of an Indonesian plural word or null if no plural was detected.\n */\nconst stemPlural = function(word, morphologyData) {\n const hyphenIndex = word.indexOf('-');\n\n // If there is no hyphen in the word, it can't be a reduplicated plural.\n if (hyphenIndex === -1) {\n return null;\n }\n\n const splitWord = word.split('-');\n\n if (splitWord.length === 2) {\n let firstPart = splitWord[0];\n let secondPart = splitWord[1];\n\n firstPart = stemSingular(firstPart, morphologyData);\n secondPart = stemSingular(secondPart, morphologyData);\n\n /*\n * To compare the first and second part and see whether it's actually a reduplication:\n * Trim the beginning of the word since it might be variable due to stem changes caused by prefixes.\n * For example, in \"meniru-nirukan\" the singular stemmer will correctly stem the first \"niru\" to \"tiru\" because\n * of the prefix \"me\". Since the second part of the word is stemmed individually, there is no \"me\" and hence\n * \"niru\" remains \"niru\". To still be able to link these two forms to each other,\n * we compare the two parts of the word after stripping the variable first or first and second letter.\n *\n */\n const firstPartBeginningTrimmed = firstPart.substring(1);\n const secondPartBeginningTrimmed =\n secondPart.startsWith('ng') || secondPart.startsWith('ny')\n ? secondPart.substring(2)\n : secondPart.substring(1);\n\n if (firstPartBeginningTrimmed === secondPartBeginningTrimmed) {\n const nonPlurals = morphologyData.stemming.nonPluralReduplications;\n\n // Check non-plural reduplication.\n if (nonPlurals.includes(firstPart) && nonPlurals.includes(secondPart)) {\n /*\n * In words such as \"mengira-ngira\" prefix \"me\" causes a modification on both words (k->ng). This will\n * be correctly stemmed for the first word, but not the second. Therefore, the correct base form\n * \"kira-kira\" is created based on a reduplication of the correctly stemmed first part, \"kira\".\n */\n return firstPart + '-' + firstPart;\n }\n\n // Return the stemmed singular form of a reduplicated plural.\n return firstPart;\n }\n }\n\n return null;\n};\n\n/**\n * Stems Indonesian words\n *\n * @param {string} word The word to stem.\n * @param {Object} morphologyData The object that contains regex-based rules and exception lists for Indonesian stemming.\n *\n * @returns {string} The stem of an Indonesian word.\n */\nexport default function stem(word, morphologyData) {\n // Check words that shouldn't receive any stemming.\n if (morphologyData.stemming.shouldNotBeStemmed.includes(word)) {\n return word;\n }\n\n const stemmedPlural = stemPlural(word, morphologyData);\n\n if (stemmedPlural) {\n return stemmedPlural;\n }\n\n word = stemSingular(word, morphologyData);\n\n return word;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,8 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.calculateTotalNumberOfSyllables = calculateTotalNumberOfSyllables;
7
- exports.checkBeginningsList = checkBeginningsList;
8
- exports.removeEnding = removeEnding;
9
- var _index = require("../../../index");
1
+ import { languageProcessing } from "../../../../../index.js";
10
2
  const {
11
3
  buildFormRule,
12
4
  createRulesFromArrays
13
- } = _index.languageProcessing;
5
+ } = languageProcessing;
14
6
  const vowelCharacters = ['a', 'e', 'i', 'o', 'u'];
15
7
 
16
8
  /**
@@ -31,7 +23,7 @@ function isVowel(character) {
31
23
  *
32
24
  * @returns {int} The total number of syllables in the word.
33
25
  */
34
- function calculateTotalNumberOfSyllables(word) {
26
+ export function calculateTotalNumberOfSyllables(word) {
35
27
  let result = 0;
36
28
  for (let i = 0; i < word.length; i++) {
37
29
  if (isVowel(word[i])) {
@@ -51,7 +43,7 @@ function calculateTotalNumberOfSyllables(word) {
51
43
  *
52
44
  * @returns {string} The stemmed word.
53
45
  */
54
- function removeEnding(word, regexRules, exceptions, morphologyData) {
46
+ export function removeEnding(word, regexRules, exceptions, morphologyData) {
55
47
  if (exceptions.includes(word)) {
56
48
  return word;
57
49
  }
@@ -79,7 +71,7 @@ function removeEnding(word, regexRules, exceptions, morphologyData) {
79
71
  *
80
72
  * @returns {boolean} Whether the word is found in the list with beginnings.
81
73
  */
82
- function checkBeginningsList(word, prefixLength, beginnings) {
74
+ export function checkBeginningsList(word, prefixLength, beginnings) {
83
75
  const wordWithoutPrefix = word.slice(prefixLength);
84
76
  return beginnings.some(beginning => wordWithoutPrefix.startsWith(beginning));
85
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stemHelpers.js","names":["_index","require","buildFormRule","createRulesFromArrays","languageProcessing","vowelCharacters","isVowel","character","includes","calculateTotalNumberOfSyllables","word","result","i","length","removeEnding","regexRules","exceptions","morphologyData","wordsWithKEnding","stemming","doNotStemWords","doNotStemK","endsWith","wordWithoutSuffixAn","substring","removePartRegex","withRemovedPart","checkBeginningsList","prefixLength","beginnings","wordWithoutPrefix","slice","some","beginning","startsWith"],"sources":["../../../../../../src/languageProcessing/languages/id/helpers/internal/stemHelpers.js"],"sourcesContent":["import {languageProcessing} from '../../../index';\nconst {buildFormRule, createRulesFromArrays} = languageProcessing;\n\nconst vowelCharacters = ['a', 'e', 'i', 'o', 'u'];\n\n/**\n * Determines if an input character is a vowel.\n *\n * @param {string} character The character to check.\n *\n * @returns {boolean} Whether the input character is an Indonesian vowel.\n */\nfunction isVowel(character) {\n return vowelCharacters.includes(character);\n}\n\n/**\n * Calculates the total number of syllables in the input word.\n *\n * @param {string} word The word to calculate the number of syllables in.\n *\n * @returns {int} The total number of syllables in the word.\n */\nexport function calculateTotalNumberOfSyllables(word) {\n let result = 0;\n\n for (let i = 0; i < word.length; i++) {\n if (isVowel(word[i])) {\n result++;\n }\n }\n\n return result;\n}\n\n/**\n * Stems the ending of a word based on some regexRules after checking if the word is in the exception list.\n *\n * @param {string} word The word to stem.\n * @param {Array} regexRules The list of regex-based rules to apply to the word in order to stem it.\n * @param {string[]} exceptions The list of words that should not get the ending removed.\n * @param {Object} morphologyData The Indonesian morphology data file\n *\n * @returns {string} The stemmed word.\n */\nexport function removeEnding(word, regexRules, exceptions, morphologyData) {\n if (exceptions.includes(word)) {\n return word;\n }\n\n // Check words ending in -kan whether they are words whose stem ending in -k that get suffix -an or not.\n const wordsWithKEnding = morphologyData.stemming.doNotStemWords.doNotStemK;\n if (word.endsWith('kan')) {\n const wordWithoutSuffixAn = word.substring(0, word.length - 2);\n // If a word has stem ending -k and gets suffix -an, then only stem -an here.\n if (wordsWithKEnding.includes(wordWithoutSuffixAn)) {\n word = wordWithoutSuffixAn;\n }\n }\n\n const removePartRegex = createRulesFromArrays(regexRules);\n const withRemovedPart = buildFormRule(word, removePartRegex);\n return withRemovedPart || word;\n}\n\n/**\n * Checks if the beginning of the word is present in an exception list.\n *\n * @param {string} word The word to stem.\n * @param {int} prefixLength The length of the prefix to be trimmed before checking in the list.\n * @param {string[]} beginnings The list of word beginnings that should be checked.\n *\n * @returns {boolean} Whether the word is found in the list with beginnings.\n */\nexport function checkBeginningsList(word, prefixLength, beginnings) {\n const wordWithoutPrefix = word.slice(prefixLength);\n return beginnings.some(beginning => wordWithoutPrefix.startsWith(beginning));\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,MAAM;EAACC,aAAa;EAAEC;AAAqB,CAAC,GAAGC,yBAAkB;AAEjE,MAAMC,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,OAAOA,CAACC,SAAS,EAAE;EAC1B,OAAOF,eAAe,CAACG,QAAQ,CAACD,SAAS,CAAC;AAC5C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,+BAA+BA,CAACC,IAAI,EAAE;EACpD,IAAIC,MAAM,GAAG,CAAC;EAEd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,IAAI,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;IACpC,IAAIN,OAAO,CAACI,IAAI,CAACE,CAAC,CAAC,CAAC,EAAE;MACpBD,MAAM,EAAE;IACV;EACF;EAEA,OAAOA,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASG,YAAYA,CAACJ,IAAI,EAAEK,UAAU,EAAEC,UAAU,EAAEC,cAAc,EAAE;EACzE,IAAID,UAAU,CAACR,QAAQ,CAACE,IAAI,CAAC,EAAE;IAC7B,OAAOA,IAAI;EACb;;EAEA;EACA,MAAMQ,gBAAgB,GAAGD,cAAc,CAACE,QAAQ,CAACC,cAAc,CAACC,UAAU;EAC1E,IAAIX,IAAI,CAACY,QAAQ,CAAC,KAAK,CAAC,EAAE;IACxB,MAAMC,mBAAmB,GAAGb,IAAI,CAACc,SAAS,CAAC,CAAC,EAAEd,IAAI,CAACG,MAAM,GAAG,CAAC,CAAC;IAC9D;IACA,IAAIK,gBAAgB,CAACV,QAAQ,CAACe,mBAAmB,CAAC,EAAE;MAClDb,IAAI,GAAGa,mBAAmB;IAC5B;EACF;EAEA,MAAME,eAAe,GAAGtB,qBAAqB,CAACY,UAAU,CAAC;EACzD,MAAMW,eAAe,GAAGxB,aAAa,CAACQ,IAAI,EAAEe,eAAe,CAAC;EAC5D,OAAOC,eAAe,IAAIhB,IAAI;AAChC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASiB,mBAAmBA,CAACjB,IAAI,EAAEkB,YAAY,EAAEC,UAAU,EAAE;EAClE,MAAMC,iBAAiB,GAAGpB,IAAI,CAACqB,KAAK,CAACH,YAAY,CAAC;EAClD,OAAOC,UAAU,CAACG,IAAI,CAACC,SAAS,IAAIH,iBAAiB,CAACI,UAAU,CAACD,SAAS,CAAC,CAAC;AAC9E","ignoreList":[]}
1
+ {"version":3,"file":"stemHelpers.js","names":["languageProcessing","buildFormRule","createRulesFromArrays","vowelCharacters","isVowel","character","includes","calculateTotalNumberOfSyllables","word","result","i","length","removeEnding","regexRules","exceptions","morphologyData","wordsWithKEnding","stemming","doNotStemWords","doNotStemK","endsWith","wordWithoutSuffixAn","substring","removePartRegex","withRemovedPart","checkBeginningsList","prefixLength","beginnings","wordWithoutPrefix","slice","some","beginning","startsWith"],"sources":["../../../../../../src/languageProcessing/languages/id/helpers/internal/stemHelpers.js"],"sourcesContent":["import {languageProcessing} from '@axyseo/index.js';\nconst {buildFormRule, createRulesFromArrays} = languageProcessing;\n\nconst vowelCharacters = ['a', 'e', 'i', 'o', 'u'];\n\n/**\n * Determines if an input character is a vowel.\n *\n * @param {string} character The character to check.\n *\n * @returns {boolean} Whether the input character is an Indonesian vowel.\n */\nfunction isVowel(character) {\n return vowelCharacters.includes(character);\n}\n\n/**\n * Calculates the total number of syllables in the input word.\n *\n * @param {string} word The word to calculate the number of syllables in.\n *\n * @returns {int} The total number of syllables in the word.\n */\nexport function calculateTotalNumberOfSyllables(word) {\n let result = 0;\n\n for (let i = 0; i < word.length; i++) {\n if (isVowel(word[i])) {\n result++;\n }\n }\n\n return result;\n}\n\n/**\n * Stems the ending of a word based on some regexRules after checking if the word is in the exception list.\n *\n * @param {string} word The word to stem.\n * @param {Array} regexRules The list of regex-based rules to apply to the word in order to stem it.\n * @param {string[]} exceptions The list of words that should not get the ending removed.\n * @param {Object} morphologyData The Indonesian morphology data file\n *\n * @returns {string} The stemmed word.\n */\nexport function removeEnding(word, regexRules, exceptions, morphologyData) {\n if (exceptions.includes(word)) {\n return word;\n }\n\n // Check words ending in -kan whether they are words whose stem ending in -k that get suffix -an or not.\n const wordsWithKEnding = morphologyData.stemming.doNotStemWords.doNotStemK;\n if (word.endsWith('kan')) {\n const wordWithoutSuffixAn = word.substring(0, word.length - 2);\n // If a word has stem ending -k and gets suffix -an, then only stem -an here.\n if (wordsWithKEnding.includes(wordWithoutSuffixAn)) {\n word = wordWithoutSuffixAn;\n }\n }\n\n const removePartRegex = createRulesFromArrays(regexRules);\n const withRemovedPart = buildFormRule(word, removePartRegex);\n return withRemovedPart || word;\n}\n\n/**\n * Checks if the beginning of the word is present in an exception list.\n *\n * @param {string} word The word to stem.\n * @param {int} prefixLength The length of the prefix to be trimmed before checking in the list.\n * @param {string[]} beginnings The list of word beginnings that should be checked.\n *\n * @returns {boolean} Whether the word is found in the list with beginnings.\n */\nexport function checkBeginningsList(word, prefixLength, beginnings) {\n const wordWithoutPrefix = word.slice(prefixLength);\n return beginnings.some(beginning => wordWithoutPrefix.startsWith(beginning));\n}\n"],"mappings":"AAAA,SAAQA,kBAAkB;AAC1B,MAAM;EAACC,aAAa;EAAEC;AAAqB,CAAC,GAAGF,kBAAkB;AAEjE,MAAMG,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,OAAOA,CAACC,SAAS,EAAE;EAC1B,OAAOF,eAAe,CAACG,QAAQ,CAACD,SAAS,CAAC;AAC5C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,+BAA+BA,CAACC,IAAI,EAAE;EACpD,IAAIC,MAAM,GAAG,CAAC;EAEd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,IAAI,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;IACpC,IAAIN,OAAO,CAACI,IAAI,CAACE,CAAC,CAAC,CAAC,EAAE;MACpBD,MAAM,EAAE;IACV;EACF;EAEA,OAAOA,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,YAAYA,CAACJ,IAAI,EAAEK,UAAU,EAAEC,UAAU,EAAEC,cAAc,EAAE;EACzE,IAAID,UAAU,CAACR,QAAQ,CAACE,IAAI,CAAC,EAAE;IAC7B,OAAOA,IAAI;EACb;;EAEA;EACA,MAAMQ,gBAAgB,GAAGD,cAAc,CAACE,QAAQ,CAACC,cAAc,CAACC,UAAU;EAC1E,IAAIX,IAAI,CAACY,QAAQ,CAAC,KAAK,CAAC,EAAE;IACxB,MAAMC,mBAAmB,GAAGb,IAAI,CAACc,SAAS,CAAC,CAAC,EAAEd,IAAI,CAACG,MAAM,GAAG,CAAC,CAAC;IAC9D;IACA,IAAIK,gBAAgB,CAACV,QAAQ,CAACe,mBAAmB,CAAC,EAAE;MAClDb,IAAI,GAAGa,mBAAmB;IAC5B;EACF;EAEA,MAAME,eAAe,GAAGrB,qBAAqB,CAACW,UAAU,CAAC;EACzD,MAAMW,eAAe,GAAGvB,aAAa,CAACO,IAAI,EAAEe,eAAe,CAAC;EAC5D,OAAOC,eAAe,IAAIhB,IAAI;AAChC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASiB,mBAAmBA,CAACjB,IAAI,EAAEkB,YAAY,EAAEC,UAAU,EAAE;EAClE,MAAMC,iBAAiB,GAAGpB,IAAI,CAACqB,KAAK,CAACH,YAAY,CAAC;EAClD,OAAOC,UAAU,CAACG,IAAI,CAACC,SAAS,IAAIH,iBAAiB,CAACI,UAAU,CAACD,SAAS,CAAC,CAAC;AAC9E","ignoreList":[]}
@@ -1,15 +1,8 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = isPassiveSentence;
7
- var _index = require("../../../index");
8
- var _nonPassiveVerbsStartingDi = _interopRequireDefault(require("../config/internal/nonPassiveVerbsStartingDi"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
1
+ import { languageProcessing } from "../../../../index.js";
10
2
  const {
11
3
  getWords
12
- } = _index.languageProcessing;
4
+ } = languageProcessing;
5
+ import nonPassives from "../config/internal/nonPassiveVerbsStartingDi";
13
6
  const passivePrefix = 'di';
14
7
 
15
8
  /**
@@ -19,7 +12,7 @@ const passivePrefix = 'di';
19
12
  *
20
13
  * @returns {Boolean} Whether the sentence contains Indonesian passive voice.
21
14
  */
22
- function isPassiveSentence(sentence) {
15
+ export default function isPassiveSentence(sentence) {
23
16
  const words = getWords(sentence.toLowerCase());
24
17
  let matchedPassives = words.filter(word => word.length > 4);
25
18
  matchedPassives = matchedPassives.filter(word => word.startsWith(passivePrefix));
@@ -28,7 +21,7 @@ function isPassiveSentence(sentence) {
28
21
  }
29
22
 
30
23
  // Check exception list.
31
- for (const nonPassive of _nonPassiveVerbsStartingDi.default) {
24
+ for (const nonPassive of nonPassives) {
32
25
  matchedPassives = matchedPassives.filter(word => !word.startsWith(nonPassive));
33
26
  }
34
27
 
@@ -1 +1 @@
1
- {"version":3,"file":"isPassiveSentence.js","names":["_index","require","_nonPassiveVerbsStartingDi","_interopRequireDefault","e","__esModule","default","getWords","languageProcessing","passivePrefix","isPassiveSentence","sentence","words","toLowerCase","matchedPassives","filter","word","length","startsWith","nonPassive","nonPassives","matchedPassive","matchedPassivesShouldStay","passiveIndex","indexOf","wordPrecedingPassive"],"sources":["../../../../../src/languageProcessing/languages/id/helpers/isPassiveSentence.js"],"sourcesContent":["import {languageProcessing} from '../../../index';\nconst {getWords} = languageProcessing;\n\nimport nonPassives from '../config/internal/nonPassiveVerbsStartingDi';\nconst passivePrefix = 'di';\n\n/**\n * Checks the passed sentence to see if it contains Indonesian passive verb-forms.\n *\n * @param {string} sentence The sentence to match against.\n *\n * @returns {Boolean} Whether the sentence contains Indonesian passive voice.\n */\nexport default function isPassiveSentence(sentence) {\n const words = getWords(sentence.toLowerCase());\n let matchedPassives = words.filter(word => word.length > 4);\n matchedPassives = matchedPassives.filter(word => word.startsWith(passivePrefix));\n if (matchedPassives.length === 0) {\n return false;\n }\n\n // Check exception list.\n for (const nonPassive of nonPassives) {\n matchedPassives = matchedPassives.filter(word => !word.startsWith(nonPassive));\n }\n\n // Check direct precedence exceptions.\n matchedPassives = matchedPassives.filter(function(matchedPassive) {\n let matchedPassivesShouldStay = true;\n const passiveIndex = words.indexOf(matchedPassive);\n const wordPrecedingPassive = words[passiveIndex - 1];\n if (wordPrecedingPassive === 'untuk') {\n matchedPassivesShouldStay = false;\n }\n return matchedPassivesShouldStay;\n });\n\n return matchedPassives.length !== 0;\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,0BAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAuE,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAFvE,MAAM;EAACG;AAAQ,CAAC,GAAGC,yBAAkB;AAGrC,MAAMC,aAAa,GAAG,IAAI;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASC,iBAAiBA,CAACC,QAAQ,EAAE;EAClD,MAAMC,KAAK,GAAGL,QAAQ,CAACI,QAAQ,CAACE,WAAW,CAAC,CAAC,CAAC;EAC9C,IAAIC,eAAe,GAAGF,KAAK,CAACG,MAAM,CAACC,IAAI,IAAIA,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;EAC3DH,eAAe,GAAGA,eAAe,CAACC,MAAM,CAACC,IAAI,IAAIA,IAAI,CAACE,UAAU,CAACT,aAAa,CAAC,CAAC;EAChF,IAAIK,eAAe,CAACG,MAAM,KAAK,CAAC,EAAE;IAChC,OAAO,KAAK;EACd;;EAEA;EACA,KAAK,MAAME,UAAU,IAAIC,kCAAW,EAAE;IACpCN,eAAe,GAAGA,eAAe,CAACC,MAAM,CAACC,IAAI,IAAI,CAACA,IAAI,CAACE,UAAU,CAACC,UAAU,CAAC,CAAC;EAChF;;EAEA;EACAL,eAAe,GAAGA,eAAe,CAACC,MAAM,CAAC,UAASM,cAAc,EAAE;IAChE,IAAIC,yBAAyB,GAAG,IAAI;IACpC,MAAMC,YAAY,GAAGX,KAAK,CAACY,OAAO,CAACH,cAAc,CAAC;IAClD,MAAMI,oBAAoB,GAAGb,KAAK,CAACW,YAAY,GAAG,CAAC,CAAC;IACpD,IAAIE,oBAAoB,KAAK,OAAO,EAAE;MACpCH,yBAAyB,GAAG,KAAK;IACnC;IACA,OAAOA,yBAAyB;EAClC,CAAC,CAAC;EAEF,OAAOR,eAAe,CAACG,MAAM,KAAK,CAAC;AACrC","ignoreList":[]}
1
+ {"version":3,"file":"isPassiveSentence.js","names":["languageProcessing","getWords","nonPassives","passivePrefix","isPassiveSentence","sentence","words","toLowerCase","matchedPassives","filter","word","length","startsWith","nonPassive","matchedPassive","matchedPassivesShouldStay","passiveIndex","indexOf","wordPrecedingPassive"],"sources":["../../../../../src/languageProcessing/languages/id/helpers/isPassiveSentence.js"],"sourcesContent":["import {languageProcessing} from '@axyseo/index.js';\nconst {getWords} = languageProcessing;\n\nimport nonPassives from '../config/internal/nonPassiveVerbsStartingDi';\nconst passivePrefix = 'di';\n\n/**\n * Checks the passed sentence to see if it contains Indonesian passive verb-forms.\n *\n * @param {string} sentence The sentence to match against.\n *\n * @returns {Boolean} Whether the sentence contains Indonesian passive voice.\n */\nexport default function isPassiveSentence(sentence) {\n const words = getWords(sentence.toLowerCase());\n let matchedPassives = words.filter(word => word.length > 4);\n matchedPassives = matchedPassives.filter(word => word.startsWith(passivePrefix));\n if (matchedPassives.length === 0) {\n return false;\n }\n\n // Check exception list.\n for (const nonPassive of nonPassives) {\n matchedPassives = matchedPassives.filter(word => !word.startsWith(nonPassive));\n }\n\n // Check direct precedence exceptions.\n matchedPassives = matchedPassives.filter(function(matchedPassive) {\n let matchedPassivesShouldStay = true;\n const passiveIndex = words.indexOf(matchedPassive);\n const wordPrecedingPassive = words[passiveIndex - 1];\n if (wordPrecedingPassive === 'untuk') {\n matchedPassivesShouldStay = false;\n }\n return matchedPassivesShouldStay;\n });\n\n return matchedPassives.length !== 0;\n}\n"],"mappings":"AAAA,SAAQA,kBAAkB;AAC1B,MAAM;EAACC;AAAQ,CAAC,GAAGD,kBAAkB;AAErC,OAAOE,WAAW;AAClB,MAAMC,aAAa,GAAG,IAAI;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,iBAAiBA,CAACC,QAAQ,EAAE;EAClD,MAAMC,KAAK,GAAGL,QAAQ,CAACI,QAAQ,CAACE,WAAW,CAAC,CAAC,CAAC;EAC9C,IAAIC,eAAe,GAAGF,KAAK,CAACG,MAAM,CAACC,IAAI,IAAIA,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;EAC3DH,eAAe,GAAGA,eAAe,CAACC,MAAM,CAACC,IAAI,IAAIA,IAAI,CAACE,UAAU,CAACT,aAAa,CAAC,CAAC;EAChF,IAAIK,eAAe,CAACG,MAAM,KAAK,CAAC,EAAE;IAChC,OAAO,KAAK;EACd;;EAEA;EACA,KAAK,MAAME,UAAU,IAAIX,WAAW,EAAE;IACpCM,eAAe,GAAGA,eAAe,CAACC,MAAM,CAACC,IAAI,IAAI,CAACA,IAAI,CAACE,UAAU,CAACC,UAAU,CAAC,CAAC;EAChF;;EAEA;EACAL,eAAe,GAAGA,eAAe,CAACC,MAAM,CAAC,UAASK,cAAc,EAAE;IAChE,IAAIC,yBAAyB,GAAG,IAAI;IACpC,MAAMC,YAAY,GAAGV,KAAK,CAACW,OAAO,CAACH,cAAc,CAAC;IAClD,MAAMI,oBAAoB,GAAGZ,KAAK,CAACU,YAAY,GAAG,CAAC,CAAC;IACpD,IAAIE,oBAAoB,KAAK,OAAO,EAAE;MACpCH,yBAAyB,GAAG,KAAK;IACnC;IACA,OAAOA,yBAAyB;EAClC,CAAC,CAAC;EAEF,OAAOP,eAAe,CAACG,MAAM,KAAK,CAAC;AACrC","ignoreList":[]}
@@ -1,11 +1,5 @@
1
- "use strict";
1
+ import createPunctuationTokens from "../../../helpers/word/createPunctuationTokens";
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _createPunctuationTokens = _interopRequireDefault(require("../../../helpers/word/createPunctuationTokens"));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
3
  /*
10
4
  * The following regex matches a word separator. A word separator is either a whitespace, a tab, a non-breaking space,
11
5
  * an en-dash or an em-dash.
@@ -47,7 +41,7 @@ function splitIntoTokensCustom(text) {
47
41
  const rawTokens = text.split(WORD_SEPARATORS_REGEX).filter(x => x !== "");
48
42
 
49
43
  // Remove punctuation from the beginning and end of word tokens, and make them into separate tokens.
50
- return (0, _createPunctuationTokens.default)(rawTokens);
44
+ return createPunctuationTokens(rawTokens);
51
45
  }
52
- var _default = exports.default = splitIntoTokensCustom;
46
+ export default splitIntoTokensCustom;
53
47
  //# sourceMappingURL=splitIntoTokensCustom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"splitIntoTokensCustom.js","names":["_createPunctuationTokens","_interopRequireDefault","require","e","__esModule","default","WORD_SEPARATORS_REGEX","splitIntoTokensCustom","text","rawTokens","split","filter","x","createPunctuationTokens","_default","exports"],"sources":["../../../../../src/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js"],"sourcesContent":["import createPunctuationTokens from \"../../../helpers/word/createPunctuationTokens\";\n\n/*\n * The following regex matches a word separator. A word separator is either a whitespace, a tab, a non-breaking space,\n * an en-dash or an em-dash.\n * Brackets are added to deal correctly with shortcodes downstream.\n * The regex is used to split a text into tokens.\n * Do not add punctuation marks to this regex, as they are handled separately inside `createPunctuationTokens()`.\n * The word separator explicitly only contains characters that split two words and not a word and a space.\n * - A space is a word separator because it separates two words if it occurs between them. For example: \"foo bar\"\n * - A tab is a word separator because it separates two words if it occurs between them. For example: \"foo\tbar\"\n * - A non-breaking space (u00A0) is a word separator because it separates two words if it occurs between them. For example: \"foo\\u00A0bar\"\n * - An en-dash (u2013) and an em-dash (u2014) are word separators because they separate two words if they occur between them.\n * For example: \"foo–bar\".\n *\n * Hyphens are NOT word separators in Indonesian. They are most often used in a way that doesn't indicate a word boundary,\n * for example for reduplication (e.g. 'buku' meaning 'book' and 'buku-buku' meaning books).\n */\nconst WORD_SEPARATORS_REGEX = /([\\s\\t\\u00A0\\u2013\\u2014[\\]])/;\n\n/**\n * Tokenizes a text similarly to `getWords`, but in a way that's suitable for the HTML parser.\n * 1. It does not normalize whitespace.\n * This operation is too risky for the HTML parser because it may throw away characters and as a result, the token positions are corrupted.\n * 2. It does not remove punctuation marks but keeps them.\n *\n * This algorithm splits the text by word separators: tokens that are the border between two words.\n * This algorithm separates punctuation marks from words and keeps them as separate tokens.\n * It only splits them off if they appear at the start or the end of a word.\n *\n * @param {string} text The text to tokenize.\n *\n * @returns {string[]} \tAn array of tokens.\n */\nfunction splitIntoTokensCustom( text ) {\n\tif ( ! text ) {\n\t\treturn [];\n\t}\n\n\t// Split the sentence string into tokens. Those tokens are unrefined as they may contain punctuation.\n\tconst rawTokens = text.split( WORD_SEPARATORS_REGEX ).filter( x => x !== \"\" );\n\n\t// Remove punctuation from the beginning and end of word tokens, and make them into separate tokens.\n\treturn createPunctuationTokens( rawTokens );\n}\n\nexport default splitIntoTokensCustom;\n"],"mappings":";;;;;;AAAA,IAAAA,wBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoF,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,qBAAqB,GAAG,+BAA+B;;AAE7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,qBAAqBA,CAAEC,IAAI,EAAG;EACtC,IAAK,CAAEA,IAAI,EAAG;IACb,OAAO,EAAE;EACV;;EAEA;EACA,MAAMC,SAAS,GAAGD,IAAI,CAACE,KAAK,CAAEJ,qBAAsB,CAAC,CAACK,MAAM,CAAEC,CAAC,IAAIA,CAAC,KAAK,EAAG,CAAC;;EAE7E;EACA,OAAO,IAAAC,gCAAuB,EAAEJ,SAAU,CAAC;AAC5C;AAAC,IAAAK,QAAA,GAAAC,OAAA,CAAAV,OAAA,GAEcE,qBAAqB","ignoreList":[]}
1
+ {"version":3,"file":"splitIntoTokensCustom.js","names":["createPunctuationTokens","WORD_SEPARATORS_REGEX","splitIntoTokensCustom","text","rawTokens","split","filter","x"],"sources":["../../../../../src/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js"],"sourcesContent":["import createPunctuationTokens from \"../../../helpers/word/createPunctuationTokens\";\n\n/*\n * The following regex matches a word separator. A word separator is either a whitespace, a tab, a non-breaking space,\n * an en-dash or an em-dash.\n * Brackets are added to deal correctly with shortcodes downstream.\n * The regex is used to split a text into tokens.\n * Do not add punctuation marks to this regex, as they are handled separately inside `createPunctuationTokens()`.\n * The word separator explicitly only contains characters that split two words and not a word and a space.\n * - A space is a word separator because it separates two words if it occurs between them. For example: \"foo bar\"\n * - A tab is a word separator because it separates two words if it occurs between them. For example: \"foo\tbar\"\n * - A non-breaking space (u00A0) is a word separator because it separates two words if it occurs between them. For example: \"foo\\u00A0bar\"\n * - An en-dash (u2013) and an em-dash (u2014) are word separators because they separate two words if they occur between them.\n * For example: \"foo–bar\".\n *\n * Hyphens are NOT word separators in Indonesian. They are most often used in a way that doesn't indicate a word boundary,\n * for example for reduplication (e.g. 'buku' meaning 'book' and 'buku-buku' meaning books).\n */\nconst WORD_SEPARATORS_REGEX = /([\\s\\t\\u00A0\\u2013\\u2014[\\]])/;\n\n/**\n * Tokenizes a text similarly to `getWords`, but in a way that's suitable for the HTML parser.\n * 1. It does not normalize whitespace.\n * This operation is too risky for the HTML parser because it may throw away characters and as a result, the token positions are corrupted.\n * 2. It does not remove punctuation marks but keeps them.\n *\n * This algorithm splits the text by word separators: tokens that are the border between two words.\n * This algorithm separates punctuation marks from words and keeps them as separate tokens.\n * It only splits them off if they appear at the start or the end of a word.\n *\n * @param {string} text The text to tokenize.\n *\n * @returns {string[]} \tAn array of tokens.\n */\nfunction splitIntoTokensCustom( text ) {\n\tif ( ! text ) {\n\t\treturn [];\n\t}\n\n\t// Split the sentence string into tokens. Those tokens are unrefined as they may contain punctuation.\n\tconst rawTokens = text.split( WORD_SEPARATORS_REGEX ).filter( x => x !== \"\" );\n\n\t// Remove punctuation from the beginning and end of word tokens, and make them into separate tokens.\n\treturn createPunctuationTokens( rawTokens );\n}\n\nexport default splitIntoTokensCustom;\n"],"mappings":"AAAA,OAAOA,uBAAuB;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,qBAAqB,GAAG,+BAA+B;;AAE7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,qBAAqBA,CAAEC,IAAI,EAAG;EACtC,IAAK,CAAEA,IAAI,EAAG;IACb,OAAO,EAAE;EACV;;EAEA;EACA,MAAMC,SAAS,GAAGD,IAAI,CAACE,KAAK,CAAEJ,qBAAsB,CAAC,CAACK,MAAM,CAAEC,CAAC,IAAIA,CAAC,KAAK,EAAG,CAAC;;EAE7E;EACA,OAAOP,uBAAuB,CAAEI,SAAU,CAAC;AAC5C;AAEA,eAAeF,qBAAqB","ignoreList":[]}
@@ -1,33 +1,26 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _index = require("../../../index");
8
- var _firstWordExceptions = _interopRequireDefault(require("./config/firstWordExceptions"));
9
- var _functionWords = require("./config/functionWords");
10
- var _stopWords = _interopRequireDefault(require("./config/stopWords"));
11
- var _transitionWords = _interopRequireDefault(require("./config/transitionWords"));
12
- var _twoPartTransitionWords = _interopRequireDefault(require("./config/twoPartTransitionWords"));
13
- var _syllables = _interopRequireDefault(require("./config/syllables.json"));
14
- var _sentenceLength = _interopRequireDefault(require("./config/sentenceLength"));
15
- var _getClauses = _interopRequireDefault(require("./helpers/getClauses"));
16
- var _getStemmer = _interopRequireDefault(require("./helpers/getStemmer"));
17
- var _calculateFleschReadingScore = _interopRequireDefault(require("./helpers/calculateFleschReadingScore"));
18
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
1
+ import { languageProcessing } from "../../../index.js";
19
2
  const {
20
3
  AbstractResearcher
21
- } = _index.languageProcessing;
4
+ } = languageProcessing;
22
5
 
23
6
  // All config
7
+ import firstWordExceptions from "./config/firstWordExceptions";
8
+ import { all as functionWords } from "./config/functionWords";
9
+ import stopWords from "./config/stopWords";
10
+ import transitionWords from "./config/transitionWords";
11
+ import twoPartTransitionWords from "./config/twoPartTransitionWords";
12
+ import syllables from "./config/syllables.json";
13
+ import sentenceLength from "./config/sentenceLength";
24
14
 
25
15
  // All helpers
16
+ import getClauses from "./helpers/getClauses";
17
+ import getStemmer from "./helpers/getStemmer";
18
+ import fleschReadingScore from "./helpers/calculateFleschReadingScore";
26
19
 
27
20
  /**
28
21
  * The researcher contains all the researches, helpers, data, and config.
29
22
  */
30
- class Researcher extends AbstractResearcher {
23
+ export default class Researcher extends AbstractResearcher {
31
24
  /**
32
25
  * Constructor
33
26
  * @param {Paper} paper The Paper object that is needed within the researches.
@@ -38,20 +31,19 @@ class Researcher extends AbstractResearcher {
38
31
  Object.assign(this.config, {
39
32
  language: 'it',
40
33
  passiveConstructionType: 'periphrastic',
41
- firstWordExceptions: _firstWordExceptions.default,
42
- functionWords: _functionWords.all,
43
- stopWords: _stopWords.default,
44
- transitionWords: _transitionWords.default,
45
- twoPartTransitionWords: _twoPartTransitionWords.default,
46
- syllables: _syllables.default,
47
- sentenceLength: _sentenceLength.default
34
+ firstWordExceptions,
35
+ functionWords,
36
+ stopWords,
37
+ transitionWords,
38
+ twoPartTransitionWords,
39
+ syllables,
40
+ sentenceLength
48
41
  });
49
42
  Object.assign(this.helpers, {
50
- getClauses: _getClauses.default,
51
- getStemmer: _getStemmer.default,
52
- fleschReadingScore: _calculateFleschReadingScore.default
43
+ getClauses,
44
+ getStemmer,
45
+ fleschReadingScore
53
46
  });
54
47
  }
55
48
  }
56
- exports.default = Researcher;
57
49
  //# sourceMappingURL=Researcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Researcher.js","names":["_index","require","_firstWordExceptions","_interopRequireDefault","_functionWords","_stopWords","_transitionWords","_twoPartTransitionWords","_syllables","_sentenceLength","_getClauses","_getStemmer","_calculateFleschReadingScore","e","__esModule","default","AbstractResearcher","languageProcessing","Researcher","constructor","paper","Object","assign","config","language","passiveConstructionType","firstWordExceptions","functionWords","stopWords","transitionWords","twoPartTransitionWords","syllables","sentenceLength","helpers","getClauses","getStemmer","fleschReadingScore","exports"],"sources":["../../../../src/languageProcessing/languages/it/Researcher.js"],"sourcesContent":["import {languageProcessing} from '../../../index';\nconst {AbstractResearcher} = languageProcessing;\n\n// All config\nimport firstWordExceptions from './config/firstWordExceptions';\nimport {all as functionWords} from './config/functionWords';\nimport stopWords from './config/stopWords';\nimport transitionWords from './config/transitionWords';\nimport twoPartTransitionWords from './config/twoPartTransitionWords';\nimport syllables from './config/syllables.json';\nimport sentenceLength from './config/sentenceLength';\n\n// All helpers\nimport getClauses from './helpers/getClauses';\nimport getStemmer from './helpers/getStemmer';\nimport fleschReadingScore from './helpers/calculateFleschReadingScore';\n\n/**\n * The researcher contains all the researches, helpers, data, and config.\n */\nexport default class Researcher extends AbstractResearcher {\n /**\n * Constructor\n * @param {Paper} paper The Paper object that is needed within the researches.\n * @constructor\n */\n constructor(paper) {\n super(paper);\n\n Object.assign(this.config, {\n language: 'it',\n passiveConstructionType: 'periphrastic',\n firstWordExceptions,\n functionWords,\n stopWords,\n transitionWords,\n twoPartTransitionWords,\n syllables,\n sentenceLength\n });\n\n Object.assign(this.helpers, {\n getClauses,\n getStemmer,\n fleschReadingScore\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,oBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,gBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,uBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,UAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,eAAA,GAAAN,sBAAA,CAAAF,OAAA;AAGA,IAAAS,WAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,WAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,4BAAA,GAAAT,sBAAA,CAAAF,OAAA;AAAuE,SAAAE,uBAAAU,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAdvE,MAAM;EAACG;AAAkB,CAAC,GAAGC,yBAAkB;;AAE/C;;AASA;;AAKA;AACA;AACA;AACe,MAAMC,UAAU,SAASF,kBAAkB,CAAC;EACzD;AACF;AACA;AACA;AACA;EACEG,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAEZC,MAAM,CAACC,MAAM,CAAC,IAAI,CAACC,MAAM,EAAE;MACzBC,QAAQ,EAAE,IAAI;MACdC,uBAAuB,EAAE,cAAc;MACvCC,mBAAmB,EAAnBA,4BAAmB;MACnBC,aAAa,EAAbA,kBAAa;MACbC,SAAS,EAATA,kBAAS;MACTC,eAAe,EAAfA,wBAAe;MACfC,sBAAsB,EAAtBA,+BAAsB;MACtBC,SAAS,EAATA,kBAAS;MACTC,cAAc,EAAdA;IACF,CAAC,CAAC;IAEFX,MAAM,CAACC,MAAM,CAAC,IAAI,CAACW,OAAO,EAAE;MAC1BC,UAAU,EAAVA,mBAAU;MACVC,UAAU,EAAVA,mBAAU;MACVC,kBAAkB,EAAlBA;IACF,CAAC,CAAC;EACJ;AACF;AAACC,OAAA,CAAAtB,OAAA,GAAAG,UAAA","ignoreList":[]}
1
+ {"version":3,"file":"Researcher.js","names":["languageProcessing","AbstractResearcher","firstWordExceptions","all","functionWords","stopWords","transitionWords","twoPartTransitionWords","syllables","sentenceLength","getClauses","getStemmer","fleschReadingScore","Researcher","constructor","paper","Object","assign","config","language","passiveConstructionType","helpers"],"sources":["../../../../src/languageProcessing/languages/it/Researcher.js"],"sourcesContent":["import {languageProcessing} from '@axyseo/index.js';\nconst {AbstractResearcher} = languageProcessing;\n\n// All config\nimport firstWordExceptions from './config/firstWordExceptions';\nimport {all as functionWords} from './config/functionWords';\nimport stopWords from './config/stopWords';\nimport transitionWords from './config/transitionWords';\nimport twoPartTransitionWords from './config/twoPartTransitionWords';\nimport syllables from './config/syllables.json';\nimport sentenceLength from './config/sentenceLength';\n\n// All helpers\nimport getClauses from './helpers/getClauses';\nimport getStemmer from './helpers/getStemmer';\nimport fleschReadingScore from './helpers/calculateFleschReadingScore';\n\n/**\n * The researcher contains all the researches, helpers, data, and config.\n */\nexport default class Researcher extends AbstractResearcher {\n /**\n * Constructor\n * @param {Paper} paper The Paper object that is needed within the researches.\n * @constructor\n */\n constructor(paper) {\n super(paper);\n\n Object.assign(this.config, {\n language: 'it',\n passiveConstructionType: 'periphrastic',\n firstWordExceptions,\n functionWords,\n stopWords,\n transitionWords,\n twoPartTransitionWords,\n syllables,\n sentenceLength\n });\n\n Object.assign(this.helpers, {\n getClauses,\n getStemmer,\n fleschReadingScore\n });\n }\n}\n"],"mappings":"AAAA,SAAQA,kBAAkB;AAC1B,MAAM;EAACC;AAAkB,CAAC,GAAGD,kBAAkB;;AAE/C;AACA,OAAOE,mBAAmB;AAC1B,SAAQC,GAAG,IAAIC,aAAa;AAC5B,OAAOC,SAAS;AAChB,OAAOC,eAAe;AACtB,OAAOC,sBAAsB;AAC7B,OAAOC,SAAS;AAChB,OAAOC,cAAc;;AAErB;AACA,OAAOC,UAAU;AACjB,OAAOC,UAAU;AACjB,OAAOC,kBAAkB;;AAEzB;AACA;AACA;AACA,eAAe,MAAMC,UAAU,SAASZ,kBAAkB,CAAC;EACzD;AACF;AACA;AACA;AACA;EACEa,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAEZC,MAAM,CAACC,MAAM,CAAC,IAAI,CAACC,MAAM,EAAE;MACzBC,QAAQ,EAAE,IAAI;MACdC,uBAAuB,EAAE,cAAc;MACvClB,mBAAmB;MACnBE,aAAa;MACbC,SAAS;MACTC,eAAe;MACfC,sBAAsB;MACtBC,SAAS;MACTC;IACF,CAAC,CAAC;IAEFO,MAAM,CAACC,MAAM,CAAC,IAAI,CAACI,OAAO,EAAE;MAC1BX,UAAU;MACVC,UAAU;MACVC;IACF,CAAC,CAAC;EACJ;AACF","ignoreList":[]}